@charset "UTF-8";
/***
    The new CSS reset - version 1.11.3 (last updated 25.08.2024)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
    - The "html" element is excluded, otherwise a bug in Chrome breaks the CSS hyphens property (https://github.com/elad2412/the-new-css-reset/issues/36)
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

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

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
      text-size-adjust: none;
}

a, button {
  cursor: revert;
}

ol, ul, menu, summary {
  list-style: none;
}

ol {
  counter-reset: revert;
}

img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

table {
  border-collapse: collapse;
}

input, textarea {
  -webkit-user-select: auto;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  appearance: revert;
}

:where(pre) {
  all: revert;
  box-sizing: border-box;
}

::-webkit-input-placeholder {
  color: unset;
}

:-ms-input-placeholder {
  color: unset;
}

::-ms-input-placeholder {
  color: unset;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}

::-webkit-details-marker {
  display: none;
}

img {
  height: auto;
  max-width: inherit;
  vertical-align: bottom;
  width: 100%;
}

a:not([class]) {
  color: var(--color-font);
}
@media (any-hover: hover) {
  a:not([class]):hover {
    opacity: 0.8;
  }
}

b, strong {
  font-weight: bolder;
}

:root {
  --color-font: #333;
  --color-primary: #e25814;
  --color-secondary: #644628;
  --color-tertiary: #42bf42;
  --font-NotoSansJP: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", YuGothic, sans-serif;
}

body {
  background: #fff;
  color: var(--color-font);
  font-family: var(--font-NotoSansJP);
  font-weight: 400;
  line-height: 1;
  margin-inline: auto;
  overflow-wrap: break-word;
  width: 100%;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 3.733vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  body {
    font-size: 1.852vw;
  }
}
@media screen and (min-width: 1080px) {
  body {
    font-size: 20px;
    min-width: 1080px;
  }
}

/* =======================================
// 共通CSSのスタイルリセット
// ======================================= */
html {
  -webkit-font-feature-settings: inherit !important;
          font-feature-settings: inherit !important;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--color-font);
  line-height: 1;
}

ol, ul {
  padding-left: 0;
}

@media screen and (min-width: 769px) {
  .l-inner {
    margin-inline: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-inner {
    width: 92.593%;
  }
}
@media screen and (min-width: 1080px) {
  .l-inner {
    width: 1000px;
  }
}

.l-footer {
  background: var(--color-font);
  color: #fff;
}
@media screen and (max-width: 768px) {
  .l-footer {
    padding-block: 5.333vw 6.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-footer {
    padding-block: 2.546vw;
  }
}
@media screen and (min-width: 1080px) {
  .l-footer {
    padding-block: 27.5px;
  }
}

.l-copyright {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .l-copyright {
    font-size: 2.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-copyright {
    font-size: 1.389vw;
  }
}
@media screen and (min-width: 1080px) {
  .l-copyright {
    font-size: 15px;
  }
}

@media screen and (max-width: 768px) {
  .c-shop {
    background: url(../images/shop_bg_sp.jpg) 0 0/cover no-repeat;
  }
}
@media screen and (min-width: 769px) {
  .c-shop {
    background: url(../images/shop_bg_pc.jpg) 50% 0/auto 100% no-repeat #f4bf5c;
  }
}

@media screen and (max-width: 768px) {
  .c-shop__inner {
    height: 45.333vw;
    -webkit-padding-before: 8vw;
            padding-block-start: 8vw;
  }
}
@media screen and (min-width: 769px) {
  .c-shop__inner {
    align-items: center;
    display: flex;
    justify-content: center;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-shop__inner {
    height: 11.111vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-shop__inner {
    height: 120px;
  }
}

.c-shop__lead {
  color: #fff;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .c-shop__lead {
    font-size: 5.333vw;
    text-align: center;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-shop__lead {
    font-size: 2.87vw;
    -webkit-padding-after: 0.278vw;
            padding-block-end: 0.278vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-shop__lead {
    font-size: 31px;
    -webkit-padding-after: 3px;
            padding-block-end: 3px;
  }
}

.c-shop__lead-em {
  display: inline-block;
  position: relative;
}
.c-shop__lead-em::after {
  background: #fff;
  bottom: -0.4em;
  content: "";
  display: block;
  height: 2px;
  left: -2px;
  position: absolute;
  width: calc(100% + 2px);
}

.c-shop__logo-wrap {
  background: #fff;
}
@media screen and (max-width: 768px) {
  .c-shop__logo-wrap {
    border-radius: 0.556vw;
    -webkit-margin-before: 5.333vw;
            margin-block-start: 5.333vw;
    margin-inline: auto;
    padding-block: 1.157vw;
    padding-inline: 2.083vw;
    width: 73.6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-shop__logo-wrap {
    border-radius: 0.556vw;
    -webkit-margin-start: 2.222vw;
            margin-inline-start: 2.222vw;
    padding-block: 0.833vw;
    padding-inline: 1.481vw;
    width: 36.296vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-shop__logo-wrap {
    border-radius: 6px;
    -webkit-margin-start: 24px;
            margin-inline-start: 24px;
    padding-block: 9px;
    padding-inline: 16px;
    width: 392px;
  }
}

.c-button {
  align-items: center;
  background: var(--color-primary);
  border: 2px solid var(--color-primary);
  border-radius: 100vw;
  display: flex;
  justify-content: center;
  -webkit-padding-after: 0.2em;
          padding-block-end: 0.2em;
  position: relative;
  width: 100%;
}

.c-button__label {
  color: #fff;
}

.c-button__arrow {
  fill: #fff;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media (any-hover: hover) {
  .c-button:hover {
    background: #fff;
    opacity: 1;
  }
  .c-button:hover .c-button__label {
    color: var(--color-primary);
  }
  .c-button:hover .c-button__arrow {
    fill: var(--color-primary);
  }
}

.c-button--line {
  background: var(--color-tertiary);
  border: 2px solid var(--color-tertiary);
}
@media (any-hover: hover) {
  .c-button--line:hover .c-button__label {
    color: var(--color-tertiary);
  }
  .c-button--line:hover .c-button__arrow {
    fill: var(--color-tertiary);
  }
}

.c-cta {
  background: #fceeb4;
}

@media screen and (max-width: 768px) {
  .c-cta__inner {
    padding-block: 8.667vw 10vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta__inner {
    padding-block: 3.241vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta__inner {
    padding-block: 35px;
  }
}

.c-cta__btn-list {
  display: grid;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .c-cta__btn-list {
    gap: 4vw;
    grid-template-columns: 100%;
    width: 88vw;
  }
}
@media screen and (min-width: 769px) {
  .c-cta__btn-list {
    gap: 2%;
    grid-template-columns: repeat(2, 1fr);
    width: 94%;
  }
}

@media screen and (max-width: 768px) {
  .c-cta__btn-item .c-button {
    height: 18.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta__btn-item .c-button {
    height: 8.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta__btn-item .c-button {
    height: 90px;
  }
}
.c-cta__btn-item .c-button__label {
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .c-cta__btn-item .c-button__label {
    font-size: 6.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta__btn-item .c-button__label {
    font-size: 2.685vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta__btn-item .c-button__label {
    font-size: 29px;
  }
}
@media screen and (max-width: 768px) {
  .c-cta__btn-item .c-button__arrow {
    right: 4.533vw;
    width: 4.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta__btn-item .c-button__arrow {
    right: 2.685vw;
    width: 2.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta__btn-item .c-button__arrow {
    right: 29px;
    width: 24px;
  }
}

@media screen and (max-width: 768px) {
  .p-kv {
    background: url(../images/kv_bg_sp.jpg) 0 0/100% 100% no-repeat;
  }
}
@media screen and (min-width: 769px) {
  .p-kv {
    background: url(../images/kv_bg_pc.jpg) 50% 0 no-repeat;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv {
    background-size: 185.185vw auto;
  }
}

@media screen and (max-width: 768px) {
  .p-kv__inner {
    height: 189.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__inner {
    height: 62.037vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__inner {
    height: 670px;
  }
}

.p-kv__title {
  background: var(--color-secondary);
  color: #fff;
  letter-spacing: 0.12em;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-kv__title {
    border-bottom-left-radius: 3.067vw;
    border-bottom-right-radius: 3.067vw;
    font-size: 3.733vw;
    line-height: 2.615;
    width: 94.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-kv__title {
    line-height: 2.727;
    width: 60%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__title {
    border-bottom-left-radius: 1.852vw;
    border-bottom-right-radius: 1.852vw;
    font-size: 2.037vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__title {
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    font-size: 22px;
  }
}

.p-kv__catch {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-kv__catch {
    -webkit-margin-before: 26vw;
            margin-block-start: 26vw;
    width: 84vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__catch {
    -webkit-margin-before: 2.778vw;
            margin-block-start: 2.778vw;
    width: 51%;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__catch {
    -webkit-margin-before: 30px;
            margin-block-start: 30px;
    width: 51%;
  }
}

.p-kv__text {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-kv__text {
    line-height: 1.643;
    -webkit-margin-before: 3.333vw;
            margin-block-start: 3.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-kv__text {
    line-height: 2.063;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__text {
    font-size: 1.481vw;
    -webkit-margin-before: 2.963vw;
            margin-block-start: 2.963vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__text {
    font-size: 16px;
    -webkit-margin-before: 32px;
            margin-block-start: 32px;
  }
}

@media screen and (max-width: 768px) {
  .p-kv__text-l {
    font-size: 4.533vw;
    line-height: 1.545;
  }
}
@media screen and (min-width: 769px) {
  .p-kv__text-l {
    line-height: 1.684;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__text-l {
    font-size: 1.815vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__text-l {
    font-size: 19.6px;
  }
}

@media screen and (max-width: 768px) {
  .p-kv__text-ll {
    font-size: 5.067vw;
    line-height: 1.447;
  }
}
@media screen and (min-width: 769px) {
  .p-kv__text-ll {
    line-height: 1.31;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__text-ll {
    font-size: 2.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__text-ll {
    font-size: 25.2px;
  }
}

@media screen and (max-width: 768px) {
  .p-kv__text-s {
    display: block;
    font-size: 2.933vw;
    -webkit-margin-before: 2vw;
            margin-block-start: 2vw;
  }
}

.p-kv__list {
  display: grid;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-kv__list {
    gap: 2.667vw;
    grid-template-columns: 1fr;
    -webkit-margin-before: 8vw;
            margin-block-start: 8vw;
    width: 72.267vw;
  }
}
@media screen and (min-width: 769px) {
  .p-kv__list {
    gap: 4%;
    grid-template-columns: repeat(2, 1fr);
    width: 88%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__list {
    -webkit-margin-before: 2.315vw;
            margin-block-start: 2.315vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__list {
    -webkit-margin-before: 25px;
            margin-block-start: 25px;
  }
}

.p-kv__item {
  background: rgba(249, 222, 208, 0.65);
  display: grid;
  place-content: center;
}
@media screen and (max-width: 768px) {
  .p-kv__item {
    border: 2px solid var(--color-primary);
    border-radius: 2.702vw;
    height: 17.867vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__item {
    border: 1px solid var(--color-primary);
    border-radius: 0.926vw;
    height: 9.259vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__item {
    border: 1px solid var(--color-primary);
    border-radius: 10px;
    height: 100px;
  }
}

@media screen and (max-width: 768px) {
  .p-kv__item-label {
    line-height: 1.286;
  }
}
@media screen and (min-width: 769px) {
  .p-kv__item-label {
    line-height: 1.25;
  }
}

.p-kv__item-fz28 {
  letter-spacing: 0.12em;
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__item-fz28 {
    font-size: 1.944vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__item-fz28 {
    font-size: 21px;
  }
}

.p-kv__item-fz54 {
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .p-kv__item-fz54 {
    font-size: 7.2vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__item-fz54 {
    font-size: 3.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__item-fz54 {
    font-size: 40px;
  }
}

.p-kv__item-fz40 {
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .p-kv__item-fz40 {
    font-size: 5.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__item-fz40 {
    font-size: 2.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__item-fz40 {
    font-size: 30px;
  }
}

.p-kv__item-fz30 {
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .p-kv__item-fz30 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__item-fz30 {
    font-size: 2.13vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__item-fz30 {
    font-size: 23px;
  }
}

.p-kv__item-fz26 {
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .p-kv__item-fz26 {
    font-size: 3.467vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__item-fz26 {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__item-fz26 {
    font-size: 18px;
  }
}

.p-kv__note {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-kv__note {
    font-size: 2.933vw;
    line-height: 1.591;
    -webkit-margin-before: 1.333vw;
            margin-block-start: 1.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-kv__note {
    line-height: 2.063;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__note {
    font-size: 1.481vw;
    -webkit-margin-before: 1.111vw;
            margin-block-start: 1.111vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__note {
    font-size: 16px;
    -webkit-margin-before: 12px;
            margin-block-start: 12px;
  }
}

@media screen and (max-width: 768px) {
  .p-intro__inner {
    padding-block: 16.667vw 17.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-intro__inner {
    padding-block: 6.944vw 8.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-intro__inner {
    padding-block: 75px 90px;
  }
}

.p-intro__title {
  letter-spacing: 0.08em;
  margin-inline: auto;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-intro__title {
    font-size: 5.867vw;
    line-height: 1.545;
    padding-block: 2.4vw;
    width: 89.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-intro__title {
    line-height: 1.556;
    width: 80%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-intro__title {
    font-size: 3.333vw;
    padding-block: 0.37vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-intro__title {
    font-size: 36px;
    padding-block: 4px;
  }
}
.p-intro__title::before, .p-intro__title::after {
  border: 1px solid var(--color-font);
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
}
@media screen and (max-width: 768px) {
  .p-intro__title::before, .p-intro__title::after {
    width: 2.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-intro__title::before, .p-intro__title::after {
    width: 10px;
  }
}
@media screen and (min-width: 1080px) {
  .p-intro__title::before, .p-intro__title::after {
    width: 10px;
  }
}
.p-intro__title::before {
  border-right: 0;
  left: 0;
}
.p-intro__title::after {
  border-left: 0;
  right: 0;
}

.p-intro__text {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-intro__text {
    line-height: 1.857;
    -webkit-margin-before: 4vw;
            margin-block-start: 4vw;
  }
}
@media screen and (min-width: 769px) {
  .p-intro__text {
    line-height: 1.818;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-intro__text {
    font-size: 2.037vw;
    -webkit-margin-before: 0.926vw;
            margin-block-start: 0.926vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-intro__text {
    font-size: 22px;
    -webkit-margin-before: 10px;
            margin-block-start: 10px;
  }
}

.p-intro__list {
  display: grid;
}
@media screen and (max-width: 768px) {
  .p-intro__list {
    gap: 17.333vw;
    grid-template-columns: 1fr;
    -webkit-margin-before: 19.333vw;
            margin-block-start: 19.333vw;
    margin-inline: auto;
    width: 82.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-intro__list {
    gap: 2%;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-intro__list {
    -webkit-margin-before: 7.407vw;
            margin-block-start: 7.407vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-intro__list {
    -webkit-margin-before: 80px;
            margin-block-start: 80px;
  }
}

.p-intro__item {
  background: #f2f2f2;
  display: grid;
  place-content: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-intro__item {
    border-radius: 2.667vw;
    min-height: 42.667vw;
    padding-block: 17.333vw 10.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-intro__item {
    border-radius: 1.852vw;
    min-height: 18.519vw;
    padding-block: 4.815vw 1.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-intro__item {
    border-radius: 20px;
    min-height: 200px;
    padding-block: 52px 20px;
  }
}

.p-intro__image {
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .p-intro__image--cost {
    top: -12.533vw;
    width: 26.4vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-intro__image--cost {
    top: -4.63vw;
    width: 9.167vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-intro__image--cost {
    top: -50px;
    width: 99px;
  }
}

@media screen and (max-width: 768px) {
  .p-intro__image--sell {
    top: -10.267vw;
    width: 36.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-intro__image--sell {
    top: -4.63vw;
    width: 12.593vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-intro__image--sell {
    top: -50px;
    width: 136px;
  }
}

@media screen and (max-width: 768px) {
  .p-intro__image--large {
    top: -11.333vw;
    width: 42.4vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-intro__image--large {
    top: -4.722vw;
    width: 14.722vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-intro__image--large {
    top: -51px;
    width: 159px;
  }
}

.p-intro__item-label {
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .p-intro__item-label {
    font-size: 5.067vw;
    line-height: 1.684;
  }
}
@media screen and (min-width: 769px) {
  .p-intro__item-label {
    line-height: 1.56;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-intro__item-label {
    font-size: 2.315vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-intro__item-label {
    font-size: 25px;
  }
}

@media screen and (max-width: 768px) {
  .p-service {
    background: url(../images/service_bg_sp.png) 0 0 repeat-x;
    background-size: auto 208.133vw;
    -webkit-padding-before: 18vw;
            padding-block-start: 18vw;
  }
}
@media screen and (min-width: 769px) {
  .p-service {
    background: url(../images/service_bg_pc.png) 0 0 repeat-x;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-service {
    background-size: auto 67.315vw;
    -webkit-padding-before: 8.796vw;
            padding-block-start: 8.796vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-service {
    -webkit-padding-before: 95px;
            padding-block-start: 95px;
  }
}

.p-service__lead {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-service__lead {
    font-size: 5.067vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-service__lead {
    font-size: 3.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-service__lead {
    font-size: 36px;
  }
}

.p-service__title {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-service__title {
    -webkit-margin-before: 4vw;
            margin-block-start: 4vw;
    width: 83.2vw;
  }
}
@media screen and (min-width: 769px) {
  .p-service__title {
    width: 70%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-service__title {
    -webkit-margin-before: 1.852vw;
            margin-block-start: 1.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-service__title {
    -webkit-margin-before: 20px;
            margin-block-start: 20px;
  }
}

.p-service__text {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-service__text {
    font-size: 4vw;
    line-height: 1.733;
    -webkit-margin-before: 3.733vw;
            margin-block-start: 3.733vw;
  }
}
@media screen and (min-width: 769px) {
  .p-service__text {
    line-height: 1.818;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-service__text {
    font-size: 2.037vw;
    -webkit-margin-before: 2.778vw;
            margin-block-start: 2.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-service__text {
    font-size: 22px;
    -webkit-margin-before: 30px;
            margin-block-start: 30px;
  }
}

.p-feature {
  display: grid;
}
@media screen and (max-width: 768px) {
  .p-feature {
    gap: 16vw;
    grid-template-columns: 1fr;
    -webkit-margin-before: 18.667vw;
            margin-block-start: 18.667vw;
    margin-inline: auto;
    width: 86.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-feature {
    gap: 2%;
    grid-template-columns: repeat(3, 32%);
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-feature {
    -webkit-margin-before: 9.259vw;
            margin-block-start: 9.259vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-feature {
    -webkit-margin-before: 100px;
            margin-block-start: 100px;
  }
}

.p-feature__item {
  background: #fbe6dc;
  border: solid #f6cab4;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-feature__item {
    border-radius: 5.333vw;
    border-width: 1.6vw;
    padding-block: 25.067vw 6.933vw;
  }
}
@media screen and (min-width: 769px) {
  .p-feature__item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    place-content: center;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-feature__item {
    border-radius: 1.852vw;
    border-width: 0.556vw;
    gap: 1.389vw;
    padding-block: 8.519vw 2.5vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-feature__item {
    border-radius: 20px;
    border-width: 6px;
    gap: 15px;
    padding-block: 92px 27px;
  }
}

.p-feature__icon {
  background: linear-gradient(135deg, rgb(230, 110, 30) 0%, rgb(231, 114, 33) 16.11%, rgb(233, 127, 43) 32.79%, rgb(236, 147, 58) 49.76%, rgb(241, 176, 80) 66.91%, rgb(248, 213, 108) 84.03%, rgb(255, 255, 140) 100%);
  border-radius: 50%;
  left: 50%;
  overflow: hidden;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .p-feature__icon {
    top: -12.267vw;
    width: 32vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-feature__icon {
    top: -7.963vw;
    width: 14.815vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-feature__icon {
    top: -86px;
    width: 160px;
  }
}

.p-feature__title {
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .p-feature__title {
    font-size: 6.933vw;
    line-height: 1.385;
  }
}
@media screen and (min-width: 769px) {
  .p-feature__title {
    line-height: 1.375;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-feature__title {
    font-size: 2.963vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-feature__title {
    font-size: 32px;
  }
}

.p-feature__text {
  letter-spacing: 0.02em;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-feature__text {
    line-height: 1.786;
    -webkit-margin-before: 3.2vw;
            margin-block-start: 3.2vw;
    width: 69.067vw;
  }
}
@media screen and (min-width: 769px) {
  .p-feature__text {
    line-height: 1.6;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-feature__text {
    width: 23.148vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-feature__text {
    width: 250px;
  }
}

@media screen and (max-width: 768px) {
  .p-consult {
    -webkit-margin-before: 6.667vw;
            margin-block-start: 6.667vw;
    padding-block: 7.2vw 9.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consult {
    -webkit-margin-before: 1.852vw;
            margin-block-start: 1.852vw;
    padding-block: 1.852vw 4.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consult {
    -webkit-margin-before: 20px;
            margin-block-start: 20px;
    padding-block: 20px 50px;
  }
}

.p-consult__box {
  background: #fff;
  border: 1px solid var(--color-primary);
}
@media screen and (max-width: 768px) {
  .p-consult__box {
    margin-inline: auto;
    padding-block: 6.667vw 4vw;
    width: 86.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consult__box {
    padding-block: 2.778vw 2.315vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consult__box {
    padding-block: 30px 25px;
  }
}

@media screen and (max-width: 768px) {
  .p-consult__title {
    font-size: 5.067vw;
    letter-spacing: 0.06em;
    line-height: 1.526;
  }
}
@media screen and (min-width: 769px) {
  .p-consult__title {
    letter-spacing: 0.12em;
    line-height: 1.429;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consult__title {
    font-size: 2.593vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consult__title {
    font-size: 28px;
  }
}

.p-consult__text {
  letter-spacing: 0.02em;
}
@media screen and (max-width: 768px) {
  .p-consult__text {
    line-height: 1.857;
    -webkit-margin-before: 2.667vw;
            margin-block-start: 2.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-consult__text {
    line-height: 1.6;
    -webkit-margin-before: 0.5em;
            margin-block-start: 0.5em;
  }
}

.p-consult__note {
  letter-spacing: 0.02em;
}
@media screen and (max-width: 768px) {
  .p-consult__note {
    font-size: 2.933vw;
    line-height: 1.818;
    -webkit-margin-before: 4.267vw;
            margin-block-start: 4.267vw;
  }
}
@media screen and (min-width: 769px) {
  .p-consult__note {
    line-height: 1.875;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consult__note {
    font-size: 1.481vw;
    -webkit-margin-before: 2.407vw;
            margin-block-start: 2.407vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consult__note {
    font-size: 16px;
    -webkit-margin-before: 26px;
            margin-block-start: 26px;
  }
}

.p-consult__button {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-consult__button {
    -webkit-margin-before: 10.667vw;
            margin-block-start: 10.667vw;
    width: 88vw;
  }
}
@media screen and (min-width: 769px) {
  .p-consult__button {
    width: 70%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consult__button {
    -webkit-margin-before: 4.63vw;
            margin-block-start: 4.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consult__button {
    -webkit-margin-before: 50px;
            margin-block-start: 50px;
  }
}
@media screen and (max-width: 768px) {
  .p-consult__button .c-button {
    height: 16vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consult__button .c-button {
    height: 8.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consult__button .c-button {
    height: 90px;
  }
}
.p-consult__button .c-button__label {
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .p-consult__button .c-button__label {
    font-size: 4.533vw;
    line-height: 1.412;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consult__button .c-button__label {
    font-size: 2.685vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consult__button .c-button__label {
    font-size: 29px;
  }
}
@media screen and (max-width: 768px) {
  .p-consult__button .c-button__arrow {
    right: 4.533vw;
    width: 4.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consult__button .c-button__arrow {
    right: 2.778vw;
    width: 2.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consult__button .c-button__arrow {
    right: 30px;
    width: 24px;
  }
}

@media screen and (max-width: 768px) {
  .p-premium {
    padding-block: 9.333vw 15.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-premium {
    background: url(../images/premium_bg_pc.jpg) 50% 0 no-repeat;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-premium {
    background-size: 100% auto;
    padding-block: 4.444vw 11.574vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-premium {
    padding-block: 48px 125px;
  }
}

.p-premium__lead {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-premium__lead {
    font-size: 4.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-premium__lead {
    font-size: 3.241vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-premium__lead {
    font-size: 35px;
  }
}

@media screen and (max-width: 768px) {
  .p-premium__title {
    -webkit-margin-before: 4.8vw;
            margin-block-start: 4.8vw;
  }
}
@media screen and (min-width: 769px) {
  .p-premium__title {
    margin-inline: auto;
    width: 70%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-premium__title {
    -webkit-margin-before: 2.315vw;
            margin-block-start: 2.315vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-premium__title {
    -webkit-margin-before: 25px;
            margin-block-start: 25px;
  }
}

@media screen and (max-width: 768px) {
  .p-premium__image {
    -webkit-margin-before: 3.467vw;
            margin-block-start: 3.467vw;
  }
}

.p-premium__text {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-premium__text {
    line-height: 1.857;
    -webkit-margin-before: 6vw;
            margin-block-start: 6vw;
  }
}
@media screen and (min-width: 769px) {
  .p-premium__text {
    line-height: 1.818;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-premium__text {
    font-size: 2.037vw;
    -webkit-margin-before: 2.778vw;
            margin-block-start: 2.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-premium__text {
    font-size: 22px;
    -webkit-margin-before: 30px;
            margin-block-start: 30px;
  }
}

.p-premium__note {
  letter-spacing: 0.02em;
}
@media screen and (max-width: 768px) {
  .p-premium__note {
    font-size: 2.933vw;
    line-height: 1.818;
    -webkit-margin-before: 7.333vw;
            margin-block-start: 7.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-premium__note {
    line-height: 1.875;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-premium__note {
    font-size: 1.481vw;
    -webkit-margin-before: 2.407vw;
            margin-block-start: 2.407vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-premium__note {
    font-size: 16px;
    -webkit-margin-before: 26px;
            margin-block-start: 26px;
  }
}

@media screen and (max-width: 768px) {
  .p-reason {
    background: url(../images/reason_bg_sp.jpg) 0 0/100% auto no-repeat #ffffdc;
    padding-block: 34vw 21.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason {
    background: url(../images/reason_bg_pc.jpg) 50% 0 no-repeat #ffffdc;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason {
    background-size: 185.185vw auto;
    padding-block: 9.259vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason {
    padding-block: 100px;
  }
}

.p-reason__lead {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-reason__lead {
    font-size: 5.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__lead {
    font-size: 3.241vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__lead {
    font-size: 35px;
  }
}

.p-reason__title {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-reason__title {
    -webkit-margin-before: 5.333vw;
            margin-block-start: 5.333vw;
    width: 88vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__title {
    width: 70%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__title {
    -webkit-margin-before: 2.315vw;
            margin-block-start: 2.315vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__title {
    -webkit-margin-before: 25px;
            margin-block-start: 25px;
  }
}

.p-reason__list {
  display: grid;
}
@media screen and (max-width: 768px) {
  .p-reason__list {
    gap: 5.333vw;
    grid-template-columns: 1fr;
    -webkit-margin-before: 10.667vw;
            margin-block-start: 10.667vw;
    margin-inline: auto;
    width: 90.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__list {
    gap: 1.852vw;
    -webkit-margin-before: 4.815vw;
            margin-block-start: 4.815vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__list {
    gap: 20px;
    -webkit-margin-before: 52px;
            margin-block-start: 52px;
  }
}

.p-reason__item {
  background: #fff;
}
@media screen and (max-width: 768px) {
  .p-reason__item {
    border-bottom-right-radius: 10.667vw;
    box-shadow: 1.333vw 1.333vw 1.333vw rgba(100, 70, 40, 0.1);
    -webkit-padding-after: 8vw;
            padding-block-end: 8vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__item {
    border-bottom-right-radius: 4.63vw;
    box-shadow: 0.463vw 0.463vw 0.463vw rgba(100, 70, 40, 0.1);
    gap: 1.111vw;
    -webkit-padding-after: 2.778vw;
            padding-block-end: 2.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__item {
    border-bottom-right-radius: 50px;
    box-shadow: 5px 5px 5px rgba(100, 70, 40, 0.1);
    gap: 12px;
    -webkit-padding-after: 30px;
            padding-block-end: 30px;
  }
}

@media screen and (max-width: 768px) {
  .p-reason__num {
    width: 32vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__num {
    width: 13.889vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__num {
    width: 150px;
  }
}

.p-reason__sub-title {
  letter-spacing: 0.02em;
}
@media screen and (max-width: 768px) {
  .p-reason__sub-title {
    font-size: 6.4vw;
    line-height: 1.333;
    -webkit-margin-before: 4vw;
            margin-block-start: 4vw;
    -webkit-margin-start: 9.333vw;
            margin-inline-start: 9.333vw;
    width: 74.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__sub-title {
    line-height: 1.538;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__sub-title {
    font-size: 2.407vw;
    -webkit-margin-start: 3.704vw;
            margin-inline-start: 3.704vw;
    width: 38.611vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__sub-title {
    font-size: 26px;
    -webkit-margin-start: 40px;
            margin-inline-start: 40px;
    width: 417px;
  }
}

.p-reason__text {
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .p-reason__text {
    font-size: 4vw;
    line-height: 1.733;
    -webkit-margin-before: 2.667vw;
            margin-block-start: 2.667vw;
    -webkit-margin-start: 9.333vw;
            margin-inline-start: 9.333vw;
    width: 70.933vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__text {
    line-height: 1.6;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__text {
    -webkit-margin-start: 3.704vw;
            margin-inline-start: 3.704vw;
    width: 38.611vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__text {
    -webkit-margin-start: 40px;
            margin-inline-start: 40px;
    width: 417px;
  }
}

.p-reason__button-lead {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-reason__button-lead {
    line-height: 1.857;
    -webkit-margin-before: 6.667vw;
            margin-block-start: 6.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__button-lead {
    line-height: 1.818;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__button-lead {
    font-size: 2.037vw;
    -webkit-margin-before: 3.704vw;
            margin-block-start: 3.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__button-lead {
    font-size: 22px;
    -webkit-margin-before: 40px;
            margin-block-start: 40px;
  }
}

.p-reason__button {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-reason__button {
    -webkit-margin-before: 8vw;
            margin-block-start: 8vw;
    width: 88vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__button {
    width: 60%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__button {
    -webkit-margin-before: 4.167vw;
            margin-block-start: 4.167vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__button {
    -webkit-margin-before: 45px;
            margin-block-start: 45px;
  }
}
@media screen and (max-width: 768px) {
  .p-reason__button .c-button {
    height: 16vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__button .c-button {
    height: 8.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__button .c-button {
    height: 90px;
  }
}
.p-reason__button .c-button__label {
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .p-reason__button .c-button__label {
    font-size: 5.6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__button .c-button__label {
    font-size: 2.685vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__button .c-button__label {
    font-size: 29px;
  }
}
@media screen and (max-width: 768px) {
  .p-reason__button .c-button__arrow {
    right: 4.533vw;
    width: 4.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__button .c-button__arrow {
    right: 2.778vw;
    width: 2.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__button .c-button__arrow {
    right: 30px;
    width: 24px;
  }
}

@media screen and (max-width: 768px) {
  .p-goods {
    background: url(../images/goods_bg_sp.jpg) 0 100% repeat-x;
    background-size: auto 184vw;
  }
}
@media screen and (min-width: 769px) {
  .p-goods {
    background: url(../images/goods_bg_pc.jpg) 0 100% repeat-x;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods {
    background-size: auto 69.259vw;
  }
}

@media screen and (max-width: 768px) {
  .p-goods__inner {
    padding-block: 14vw 18.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__inner {
    padding-block: 7.407vw 9.259vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__inner {
    padding-block: 80px 100px;
  }
}

.p-goods__title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-goods__title {
    font-size: 5.467vw;
    line-height: 1.659;
  }
}
@media screen and (min-width: 769px) {
  .p-goods__title {
    line-height: 1.349;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__title {
    font-size: 3.241vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__title {
    font-size: 35px;
  }
}

@media screen and (max-width: 768px) {
  .p-goods__title-em {
    font-size: 6.533vw;
    line-height: 1.388;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__title-em {
    font-size: 3.981vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__title-em {
    font-size: 43px;
  }
}

.p-goods__text {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-goods__text {
    line-height: 1.857;
    -webkit-margin-before: 5.067vw;
            margin-block-start: 5.067vw;
  }
}
@media screen and (min-width: 769px) {
  .p-goods__text {
    line-height: 2;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__text {
    font-size: 2.037vw;
    -webkit-margin-before: 2.778vw;
            margin-block-start: 2.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__text {
    font-size: 22px;
    -webkit-margin-before: 30px;
            margin-block-start: 30px;
  }
}

.p-goods__list {
  display: grid;
}
@media screen and (max-width: 768px) {
  .p-goods__list {
    gap: 5.333vw;
    grid-template-columns: 1fr;
    -webkit-margin-before: 11.333vw;
            margin-block-start: 11.333vw;
    margin-inline: auto;
    width: 85.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-goods__list {
    grid-template-columns: repeat(2, 49%);
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__list {
    gap: 1.852vw 2%;
    -webkit-margin-before: 4.63vw;
            margin-block-start: 4.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__list {
    gap: 20px 2%;
    -webkit-margin-before: 50px;
            margin-block-start: 50px;
  }
}

.p-goods__item {
  background: var(--color-secondary);
  padding: 1px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-goods__item {
    border-radius: 2.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__item {
    border-radius: 1.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__item {
    border-radius: 20px;
  }
}

.p-goods__item-header {
  align-items: center;
  display: flex;
}
@media screen and (max-width: 768px) {
  .p-goods__item-header {
    height: 18.667vw;
    -webkit-padding-start: 6.667vw;
            padding-inline-start: 6.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__item-header {
    height: 7.407vw;
    -webkit-padding-start: 2.778vw;
            padding-inline-start: 2.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__item-header {
    height: 80px;
    -webkit-padding-start: 30px;
            padding-inline-start: 30px;
  }
}

.p-goods__name {
  color: #fff;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .p-goods__name {
    font-size: 4.8vw;
    line-height: 1.111;
  }
}
@media screen and (min-width: 769px) {
  .p-goods__name {
    line-height: 1.167;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__name {
    font-size: 2.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__name {
    font-size: 24px;
  }
}

@media screen and (max-width: 768px) {
  .p-goods__name-s {
    font-size: 3.6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__name-s {
    font-size: 1.574vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__name-s {
    font-size: 17px;
  }
}

@media screen and (max-width: 768px) {
  .p-goods__name-ss {
    font-size: 2.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__name-ss {
    font-size: 1.574vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__name-ss {
    font-size: 17px;
  }
}

.p-goods__high {
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-goods__high {
    right: 2vw;
    top: -3.2vw;
    width: 19.2vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__high {
    right: 0.833vw;
    top: -2.037vw;
    width: 8.611vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__high {
    right: 9px;
    top: -22px;
    width: 93px;
  }
}

.p-goods__item-body {
  background: #fff;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-goods__item-body {
    border-bottom-left-radius: 2.667vw;
    border-bottom-right-radius: 2.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__item-body {
    border-bottom-left-radius: 1.852vw;
    border-bottom-right-radius: 1.852vw;
    height: 10.926vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__item-body {
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    height: 118px;
  }
}
@media screen and (min-width: 769px) {
  .p-goods__item-body img {
    max-height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
    width: 100%;
  }
}

.p-goods__note {
  letter-spacing: 0.02em;
}
@media screen and (max-width: 768px) {
  .p-goods__note {
    font-size: 2.933vw;
    line-height: 1.364;
    -webkit-margin-before: 3.467vw;
            margin-block-start: 3.467vw;
    margin-inline: auto;
    width: 74.933vw;
  }
}
@media screen and (min-width: 769px) {
  .p-goods__note {
    line-height: 1.875;
    text-align: center;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__note {
    font-size: 1.481vw;
    -webkit-margin-before: 2.407vw;
            margin-block-start: 2.407vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__note {
    font-size: 16px;
    -webkit-margin-before: 26px;
            margin-block-start: 26px;
  }
}

.p-goods__button {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-goods__button {
    -webkit-margin-before: 8vw;
            margin-block-start: 8vw;
    width: 88vw;
  }
}
@media screen and (min-width: 769px) {
  .p-goods__button {
    width: 70%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__button {
    -webkit-margin-before: 3.704vw;
            margin-block-start: 3.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__button {
    -webkit-margin-before: 40px;
            margin-block-start: 40px;
  }
}
@media screen and (max-width: 768px) {
  .p-goods__button .c-button {
    height: 16vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__button .c-button {
    height: 8.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__button .c-button {
    height: 90px;
  }
}
.p-goods__button .c-button__label {
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .p-goods__button .c-button__label {
    font-size: 4.533vw;
    line-height: 1.412;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__button .c-button__label {
    font-size: 2.685vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__button .c-button__label {
    font-size: 29px;
  }
}
@media screen and (max-width: 768px) {
  .p-goods__button .c-button__arrow {
    right: 4.533vw;
    width: 4.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-goods__button .c-button__arrow {
    right: 2.778vw;
    width: 2.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-goods__button .c-button__arrow {
    right: 30px;
    width: 24px;
  }
}

@media screen and (max-width: 768px) {
  .p-flow__inner {
    padding-block: 15.333vw 18.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__inner {
    padding-block: 8.796vw 11.574vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__inner {
    padding-block: 95px 125px;
  }
}

.p-flow__title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-flow__title {
    font-size: 8.533vw;
    line-height: 1.406;
  }
}
@media screen and (min-width: 769px) {
  .p-flow__title {
    line-height: 1.45;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__title {
    font-size: 3.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__title {
    font-size: 40px;
  }
}

.p-flow__text {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-flow__text {
    line-height: 1.857;
    -webkit-margin-before: 6vw;
            margin-block-start: 6vw;
  }
}
@media screen and (min-width: 769px) {
  .p-flow__text {
    line-height: 2;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__text {
    font-size: 2.037vw;
    -webkit-margin-before: 2.315vw;
            margin-block-start: 2.315vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__text {
    font-size: 22px;
    -webkit-margin-before: 25px;
            margin-block-start: 25px;
  }
}

.p-step {
  display: grid;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-step {
    gap: 14vw;
    grid-template-columns: 1fr;
    -webkit-margin-before: 10vw;
            margin-block-start: 10vw;
    margin-inline: auto 0;
    width: 89.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-step {
    gap: 3.2%;
    grid-template-columns: repeat(4, 22.8%);
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-step {
    -webkit-margin-before: 4.167vw;
            margin-block-start: 4.167vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-step {
    -webkit-margin-before: 45px;
            margin-block-start: 45px;
  }
}
.p-step::after {
  border: dashed var(--color-secondary);
  content: "";
  display: block;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-step::after {
    border-width: 0 1px;
    height: 80%;
    left: 14.4vw;
    top: 10%;
    width: 1px;
  }
}
@media screen and (min-width: 769px) {
  .p-step::after {
    border-width: 1px 0;
    height: 1px;
    left: 15%;
    width: 70%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-step::after {
    top: 7.593vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-step::after {
    top: 82px;
  }
}

.p-step__item {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-step__item {
    display: grid;
    gap: 6.667vw;
    grid-template-columns: 29.333vw 1fr;
  }
}
@media screen and (min-width: 769px) {
  .p-step__item {
    text-align: center;
  }
}

.p-step__num {
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .p-step__num {
    left: 2.133vw;
    position: absolute;
    top: -2.667vw;
    width: 25.2vw;
  }
}
@media screen and (min-width: 769px) {
  .p-step__num {
    margin-inline: auto;
    position: relative;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-step__num {
    width: 11.111vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-step__num {
    width: 120px;
  }
}

.p-step__icon {
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 768px) {
  .p-step__icon {
    width: 29.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-step__icon {
    -webkit-margin-before: -2.222vw;
            margin-block-start: -2.222vw;
    margin-inline: auto;
    width: 12.963vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-step__icon {
    -webkit-margin-before: -24px;
            margin-block-start: -24px;
    margin-inline: auto;
    width: 140px;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-step__content {
    -webkit-margin-before: 0.926vw;
            margin-block-start: 0.926vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-step__content {
    -webkit-margin-before: 10px;
            margin-block-start: 10px;
  }
}

.p-step__title {
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .p-step__title {
    font-size: 5.067vw;
    line-height: 1.526;
  }
}
@media screen and (min-width: 769px) {
  .p-step__title {
    line-height: 1.273;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-step__title {
    font-size: 2.037vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-step__title {
    font-size: 22px;
  }
}

@media screen and (max-width: 768px) {
  .p-step__text {
    line-height: 1.714;
    -webkit-margin-before: 2vw;
            margin-block-start: 2vw;
  }
}
@media screen and (min-width: 769px) {
  .p-step__text {
    line-height: 1.684;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-step__text {
    font-size: 1.759vw;
    -webkit-margin-before: 1.481vw;
            margin-block-start: 1.481vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-step__text {
    font-size: 19px;
    -webkit-margin-before: 16px;
            margin-block-start: 16px;
  }
}

.p-flow__feature {
  display: grid;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-flow__feature {
    gap: 2.4vw;
    grid-template-columns: 1fr;
    -webkit-margin-before: 9.333vw;
            margin-block-start: 9.333vw;
    width: 84vw;
  }
}
@media screen and (min-width: 769px) {
  .p-flow__feature {
    grid-template-columns: repeat(2, 1fr);
    width: 90.4%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__feature {
    gap: 1.667vw;
    -webkit-margin-before: 4.63vw;
            margin-block-start: 4.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__feature {
    gap: 18px;
    -webkit-margin-before: 50px;
            margin-block-start: 50px;
  }
}

.p-flow__feature-item {
  border: solid var(--color-primary);
  letter-spacing: 0.08em;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-flow__feature-item {
    border-width: 3px;
    font-size: 3.467vw;
    line-height: 1.615;
    padding-block: 2.4vw;
  }
}
@media screen and (min-width: 769px) {
  .p-flow__feature-item {
    border-width: 4px;
    line-height: 2;
    padding-block: 1em;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__feature-item {
    font-size: 1.389vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__feature-item {
    font-size: 15px;
  }
}
.p-flow__feature-item::after {
  border: solid var(--color-primary);
  content: "";
  display: block;
  pointer-events: none;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-flow__feature-item::after {
    border-width: 1px;
    height: calc(100% - 2.133vw);
    left: 1.067vw;
    top: 1.067vw;
    width: calc(100% - 2.133vw);
  }
}
@media screen and (min-width: 769px) {
  .p-flow__feature-item::after {
    border-width: 2px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__feature-item::after {
    height: calc(100% - 1.111vw);
    left: 0.556vw;
    top: 0.556vw;
    width: calc(100% - 1.111vw);
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__feature-item::after {
    height: calc(100% - 12px);
    left: 6px;
    top: 6px;
    width: calc(100% - 12px);
  }
}

@media screen and (max-width: 768px) {
  .p-flow__message {
    letter-spacing: 0.08em;
    line-height: 1.857;
    -webkit-margin-before: 6vw;
            margin-block-start: 6vw;
  }
}
@media screen and (min-width: 769px) {
  .p-flow__message {
    letter-spacing: 0.02em;
    line-height: 1.364;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__message {
    font-size: 2.037vw;
    -webkit-margin-before: 2.778vw;
            margin-block-start: 2.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__message {
    font-size: 22px;
    -webkit-margin-before: 30px;
            margin-block-start: 30px;
  }
}

.p-flow__button {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-flow__button {
    -webkit-margin-before: 8vw;
            margin-block-start: 8vw;
    width: 88vw;
  }
}
@media screen and (min-width: 769px) {
  .p-flow__button {
    width: 70%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__button {
    -webkit-margin-before: 3.704vw;
            margin-block-start: 3.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__button {
    -webkit-margin-before: 40px;
            margin-block-start: 40px;
  }
}
@media screen and (max-width: 768px) {
  .p-flow__button .c-button {
    height: 16vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__button .c-button {
    height: 8.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__button .c-button {
    height: 90px;
  }
}
.p-flow__button .c-button__label {
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .p-flow__button .c-button__label {
    font-size: 4.533vw;
    line-height: 1.412;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__button .c-button__label {
    font-size: 2.685vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__button .c-button__label {
    font-size: 29px;
  }
}
@media screen and (max-width: 768px) {
  .p-flow__button .c-button__arrow {
    right: 4.533vw;
    width: 4.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__button .c-button__arrow {
    right: 2.778vw;
    width: 2.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__button .c-button__arrow {
    right: 30px;
    width: 24px;
  }
}

.p-area {
  background: #ffffc8;
}

.p-area__inner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-area__inner {
    padding-block: 14.667vw 16.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__inner {
    padding-block: 7.87vw 6.481vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__inner {
    padding-block: 85px 70px;
  }
}

.p-area__title {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-area__title {
    font-size: 7.467vw;
    line-height: 1.429;
    -webkit-margin-start: 6.933vw;
            margin-inline-start: 6.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__title {
    font-size: 3.704vw;
    -webkit-margin-start: 5.556vw;
            margin-inline-start: 5.556vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__title {
    font-size: 40px;
    -webkit-margin-start: 60px;
            margin-inline-start: 60px;
  }
}

.p-area__text {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-area__text {
    font-size: 4.8vw;
    line-height: 1.611;
    -webkit-margin-before: 3.467vw;
            margin-block-start: 3.467vw;
    -webkit-margin-start: 6.933vw;
            margin-inline-start: 6.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__text {
    font-size: 2.778vw;
    -webkit-margin-before: 2.778vw;
            margin-block-start: 2.778vw;
    -webkit-margin-start: 5.556vw;
            margin-inline-start: 5.556vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__text {
    font-size: 30px;
    -webkit-margin-before: 30px;
            margin-block-start: 30px;
    -webkit-margin-start: 60px;
            margin-inline-start: 60px;
  }
}

.p-area__message {
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-area__message {
    right: 0.667vw;
    top: -8.667vw;
    width: 50.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__message {
    right: 2.963vw;
    top: -6.944vw;
    width: 30.741vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__message {
    right: 32px;
    top: -75px;
    width: 332px;
  }
}

.p-area__list {
  background: #fff;
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 768px) {
  .p-area__list {
    border-radius: 2.88vw;
    -webkit-margin-before: 5.333vw;
            margin-block-start: 5.333vw;
    margin-inline: auto;
    padding-block: 4.667vw;
    width: 92vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__list {
    border-radius: 1.852vw;
    -webkit-margin-before: 3.241vw;
            margin-block-start: 3.241vw;
    padding-block: 2.407vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__list {
    border-radius: 20px;
    -webkit-margin-before: 35px;
            margin-block-start: 35px;
    padding-block: 26px;
  }
}

.p-area__list-text {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-area__list-text {
    line-height: 1.786;
  }
}
@media screen and (min-width: 769px) {
  .p-area__list-text {
    line-height: 2;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__list-text {
    font-size: 2.037vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__list-text {
    font-size: 22px;
  }
}

.p-area__note {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-area__note {
    font-size: 2.933vw;
    line-height: 1.364;
    -webkit-margin-before: 6vw;
            margin-block-start: 6vw;
  }
}
@media screen and (min-width: 769px) {
  .p-area__note {
    line-height: 1.875;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__note {
    font-size: 1.481vw;
    -webkit-margin-before: 1.296vw;
            margin-block-start: 1.296vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__note {
    font-size: 16px;
    -webkit-margin-before: 14px;
            margin-block-start: 14px;
  }
}

.p-area__btn-list {
  display: grid;
}
@media screen and (max-width: 768px) {
  .p-area__btn-list {
    gap: 5.333vw;
    grid-template-columns: 100%;
    -webkit-margin-before: 11.333vw;
            margin-block-start: 11.333vw;
    margin-inline: auto;
    width: 88vw;
  }
}
@media screen and (min-width: 769px) {
  .p-area__btn-list {
    gap: 4%;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__btn-list {
    -webkit-margin-before: 3.241vw;
            margin-block-start: 3.241vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__btn-list {
    -webkit-margin-before: 35px;
            margin-block-start: 35px;
  }
}

@media screen and (max-width: 768px) {
  .p-area__btn-item .c-button {
    height: 18.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__btn-item .c-button {
    height: 11.111vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__btn-item .c-button {
    height: 120px;
  }
}
.p-area__btn-item .c-button__label {
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .p-area__btn-item .c-button__label {
    font-size: 4.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__btn-item .c-button__label {
    font-size: 2.685vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__btn-item .c-button__label {
    font-size: 29px;
  }
}
@media screen and (max-width: 768px) {
  .p-area__btn-item .c-button__arrow {
    right: 4.267vw;
    width: 4.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__btn-item .c-button__arrow {
    right: 2.593vw;
    width: 2.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__btn-item .c-button__arrow {
    right: 28px;
    width: 24px;
  }
}
.p-area__btn-item .c-button--tel {
  flex-direction: column;
}
@media (any-hover: hover) {
  .p-area__btn-item .c-button--tel:hover .p-area__btn-label {
    color: var(--color-primary);
  }
  .p-area__btn-item .c-button--tel:hover .p-area__btn-tel {
    fill: var(--color-primary);
  }
}

.p-area__btn-label {
  color: #fff;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .p-area__btn-label {
    font-size: 3.733vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__btn-label {
    font-size: 2.13vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__btn-label {
    font-size: 23px;
  }
}

.p-area__btn-tel {
  fill: #fff;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-area__btn-tel {
    -webkit-margin-before: 1.333vw;
            margin-block-start: 1.333vw;
    width: 61.6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__btn-tel {
    -webkit-margin-before: 0.926vw;
            margin-block-start: 0.926vw;
    width: 29.537vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__btn-tel {
    -webkit-margin-before: 10px;
            margin-block-start: 10px;
    width: 319px;
  }
}

.p-area__btn-time {
  letter-spacing: 0.02em;
}
@media screen and (max-width: 768px) {
  .p-area__btn-time {
    font-size: 3.467vw;
    -webkit-margin-before: 2.133vw;
            margin-block-start: 2.133vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__btn-time {
    font-size: 1.481vw;
    -webkit-margin-before: 0.926vw;
            margin-block-start: 0.926vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__btn-time {
    font-size: 16px;
    -webkit-margin-before: 10px;
            margin-block-start: 10px;
  }
}

@media screen and (max-width: 768px) {
  .p-contact__inner {
    padding-block: 18vw 24vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-contact__inner {
    padding-block: 9.722vw 6.481vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-contact__inner {
    padding-block: 105px 70px;
  }
}

.p-contact__title {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-contact__title {
    font-size: 8.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-contact__title {
    font-size: 3.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-contact__title {
    font-size: 40px;
  }
}

.p-contact__text {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-contact__text {
    line-height: 1.857;
    -webkit-margin-before: 6.667vw;
            margin-block-start: 6.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-contact__text {
    line-height: 2;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-contact__text {
    font-size: 2.037vw;
    -webkit-margin-before: 2.778vw;
            margin-block-start: 2.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-contact__text {
    font-size: 22px;
    -webkit-margin-before: 30px;
            margin-block-start: 30px;
  }
}

.p-form {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-form {
    -webkit-margin-before: 13.333vw;
            margin-block-start: 13.333vw;
    width: 86.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form {
    -webkit-margin-before: 4.63vw;
            margin-block-start: 4.63vw;
    width: 96%;
  }
}
@media screen and (min-width: 1080px) {
  .p-form {
    -webkit-margin-before: 50px;
            margin-block-start: 50px;
    width: 96%;
  }
}

@media screen and (max-width: 768px) {
  .p-form__group {
    -webkit-margin-before: 8.667vw;
            margin-block-start: 8.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-form__group {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form__group {
    -webkit-margin-before: 1.852vw;
            margin-block-start: 1.852vw;
    width: 85.185vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form__group {
    -webkit-margin-before: 20px;
            margin-block-start: 20px;
    width: 920px;
  }
}

.p-form__title {
  letter-spacing: 0.02em;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-form__title {
    font-size: 4.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form__title {
    font-size: 1.481vw;
    -webkit-padding-before: 1.852vw;
            padding-block-start: 1.852vw;
    width: 23.148vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form__title {
    font-size: 16px;
    -webkit-padding-before: 20px;
            padding-block-start: 20px;
    width: 250px;
  }
}

.p-form__title-icon {
  background: var(--color-primary);
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-form__title-icon {
    border-radius: 1.333vw;
    display: inline-block;
    font-size: 3.2vw;
    letter-spacing: 0.02em;
    line-height: 1.75;
    -webkit-margin-start: 3.333vw;
            margin-inline-start: 3.333vw;
    vertical-align: middle;
    width: 10.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-form__title-icon {
    letter-spacing: 0.06em;
    line-height: 2.143;
    position: absolute;
    right: 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form__title-icon {
    border-radius: 0.463vw;
    font-size: 1.296vw;
    top: 1.296vw;
    width: 4.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form__title-icon {
    border-radius: 5px;
    font-size: 14px;
    top: 14px;
    width: 50px;
  }
}

@media screen and (max-width: 768px) {
  .p-form__data {
    -webkit-margin-before: 2.933vw;
            margin-block-start: 2.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form__data {
    width: 60.185vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form__data {
    width: 650px;
  }
}

.p-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=reset]):not([type=button]):not([type=image]),
.p-form select,
.p-form textarea {
  -webkit-appearance: none;
          appearance: none;
  background-color: #f2f2f2;
  border: 1px solid #b3b3b3;
  color: #333;
  letter-spacing: 0.02em;
  line-height: 1.6;
  height: inherit;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .p-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=reset]):not([type=button]):not([type=image]),
  .p-form select,
  .p-form textarea {
    border-radius: 1.333vw;
    font-size: 100%;
    padding-block: 2.667vw;
    padding-inline: 4.533vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=reset]):not([type=button]):not([type=image]),
  .p-form select,
  .p-form textarea {
    border-radius: 0.463vw;
    font-size: 1.389vw;
    padding-block: 1.574vw;
    padding-inline: 1.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=reset]):not([type=button]):not([type=image]),
  .p-form select,
  .p-form textarea {
    border-radius: 5px;
    font-size: 15px;
    padding-block: 17px;
    padding-inline: 20px;
  }
}
.p-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=reset]):not([type=button]):not([type=image])::-webkit-input-placeholder, .p-form select::-webkit-input-placeholder, .p-form textarea::-webkit-input-placeholder {
  color: #b3b3b3;
}
.p-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=reset]):not([type=button]):not([type=image]):-ms-input-placeholder, .p-form select:-ms-input-placeholder, .p-form textarea:-ms-input-placeholder {
  color: #b3b3b3;
}
.p-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=reset]):not([type=button]):not([type=image])::-ms-input-placeholder, .p-form select::-ms-input-placeholder, .p-form textarea::-ms-input-placeholder {
  color: #b3b3b3;
}
.p-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=reset]):not([type=button]):not([type=image])::placeholder,
.p-form select::placeholder,
.p-form textarea::placeholder {
  color: #b3b3b3;
}
.p-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=reset]):not([type=button]):not([type=image]).wpcf7-not-valid,
.p-form select.wpcf7-not-valid,
.p-form textarea.wpcf7-not-valid {
  background: #fcc;
  border-color: red;
}
.p-form select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13.91 9.02'%3E%3Cpath fill='%23000' d='M6.95 9.02 0 0h13.91z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 93% 50%;
}
@media screen and (max-width: 768px) {
  .p-form select {
    background-size: 4.667vw 2.667vw;
    width: 70.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form select {
    background-size: 1.481vw 0.926vw;
    width: 27.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form select {
    background-size: 16px 10px;
    width: 300px;
  }
}
.p-form textarea {
  field-sizing: content;
}
@media screen and (max-width: 768px) {
  .p-form textarea {
    height: 37.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form textarea {
    height: 13.889vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form textarea {
    height: 150px;
  }
}

.p-form__radio-group {
  letter-spacing: 0.02em;
}
@media screen and (max-width: 768px) {
  .p-form__radio-group {
    font-size: 4.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form__radio-group {
    font-size: 1.296vw;
    padding-block: 1.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form__radio-group {
    font-size: 14px;
    padding-block: 18px;
  }
}
.p-form__radio-group .wpcf7-radio {
  display: flex;
}
@media screen and (max-width: 768px) {
  .p-form__radio-group .wpcf7-radio {
    flex-direction: column;
    gap: 1em;
  }
}
.p-form__radio-group input[type=radio] {
  border-color: var(--color-font);
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .p-form__radio-group input[type=radio] {
    height: 5.333vw;
    width: 5.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form__radio-group input[type=radio] {
    height: 1.852vw;
    margin-right: 0.463vw;
    width: 1.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form__radio-group input[type=radio] {
    height: 20px;
    margin-right: 5px;
    width: 20px;
  }
}
.p-form__radio-group input[type=radio]::after {
  background: var(--color-font);
}
@media screen and (max-width: 768px) {
  .p-form__radio-group input[type=radio]::after {
    height: 2.667vw;
    width: 2.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form__radio-group input[type=radio]::after {
    height: 0.926vw;
    width: 0.926vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form__radio-group input[type=radio]::after {
    height: 10px;
    width: 10px;
  }
}
.p-form__radio-group label {
  cursor: pointer;
}

.p-form__privacy {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-form__privacy {
    font-size: 3.467vw;
    -webkit-margin-before: 12vw;
            margin-block-start: 12vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form__privacy {
    font-size: 1.667vw;
    -webkit-margin-before: 3.704vw;
            margin-block-start: 3.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form__privacy {
    font-size: 18px;
    -webkit-margin-before: 40px;
            margin-block-start: 40px;
  }
}
.p-form__privacy a {
  color: #666;
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-form__privacy a:hover {
    opacity: 0.8;
    text-decoration: none;
  }
}

.p-form__button-submit {
  -webkit-appearance: none;
          appearance: none;
  background-color: var(--color-primary);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%20%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M24%2012c0%206.63-5.37%2012-12%2012S0%2018.63%200%2012%205.37%200%2012%200s12%205.37%2012%2012m-7.46%200L9.81%206.09v11.83l6.73-5.91Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  border: 2px solid var(--color-primary);
  border-radius: 100vw;
  color: #fff;
  cursor: pointer;
  font-size: 100%;
  font-weight: 500;
  display: block;
  letter-spacing: 0.12em;
  margin-inline: auto;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .p-form__button-submit {
    background-position: 95% 50%;
    background-size: 4.267vw auto;
    font-size: 4.8vw;
    line-height: 3.333;
    -webkit-margin-before: 5.333vw;
            margin-block-start: 5.333vw;
    width: 88vw;
  }
}
@media screen and (min-width: 769px) {
  .p-form__button-submit {
    background-position: 95% 50%;
    line-height: 3.103;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form__button-submit {
    background-size: 2.222vw auto;
    font-size: 2.685vw;
    -webkit-margin-before: 2.315vw;
            margin-block-start: 2.315vw;
    width: 55.556vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form__button-submit {
    background-size: 24px auto;
    font-size: 29px;
    -webkit-margin-before: 25px;
            margin-block-start: 25px;
    width: 600px;
  }
}
@media (any-hover: hover) {
  .p-form__button-submit:hover {
    background-color: #fff;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%20%3Cpath%20fill%3D%22%23e25814%22%20d%3D%22M24%2012c0%206.63-5.37%2012-12%2012S0%2018.63%200%2012%205.37%200%2012%200s12%205.37%2012%2012m-7.46%200L9.81%206.09v11.83l6.73-5.91Z%22%2F%3E%3C%2Fsvg%3E");
    color: var(--color-primary);
    opacity: 1;
  }
}

.p-form .screen-reader-response {
  color: red;
  letter-spacing: 0.08em;
  line-height: 1.6;
  text-align: center;
}
.p-form .screen-reader-response ul {
  display: none !important;
}
.p-form .wpcf7-not-valid-tip {
  color: red;
  -webkit-margin-before: 0.8em;
          margin-block-start: 0.8em;
}
@media screen and (max-width: 768px) {
  .p-form .wpcf7-not-valid-tip {
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-form .wpcf7-not-valid-tip {
    font-size: 1.389vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-form .wpcf7-not-valid-tip {
    font-size: 15px;
  }
}
.p-form .wpcf7-response-output {
  color: red;
  letter-spacing: 0.08em;
  line-height: 1.6;
  -webkit-margin-before: 1.5em;
          margin-block-start: 1.5em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-thanks__inner {
    padding-block: 16vw 24vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-thanks__inner {
    padding-block: 9.722vw 24.537vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-thanks__inner {
    padding-block: 105px 265px;
  }
}

@media screen and (max-width: 768px) {
  .p-thanks__title {
    font-size: 7.733vw;
    letter-spacing: 0.04em;
    line-height: 1.621;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-thanks__title {
    font-size: 3.333vw;
    letter-spacing: 0.08em;
  }
}
@media screen and (min-width: 1080px) {
  .p-thanks__title {
    font-size: 36px;
    letter-spacing: 0.08em;
  }
}

.p-thanks__text {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .p-thanks__text {
    line-height: 1.857;
    -webkit-margin-before: 6.667vw;
            margin-block-start: 6.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-thanks__text {
    line-height: 2.2;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-thanks__text {
    font-size: 1.852vw;
    -webkit-margin-before: 2.315vw;
            margin-block-start: 2.315vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-thanks__text {
    font-size: 20px;
    -webkit-margin-before: 25px;
            margin-block-start: 25px;
  }
}

.p-thanks__button {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-thanks__button {
    -webkit-margin-before: 30vw;
            margin-block-start: 30vw;
    width: 88vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-thanks__button {
    -webkit-margin-before: 6.019vw;
            margin-block-start: 6.019vw;
    width: 60%;
  }
}
@media screen and (min-width: 1080px) {
  .p-thanks__button {
    -webkit-margin-before: 65px;
            margin-block-start: 65px;
    width: 60%;
  }
}
@media screen and (max-width: 768px) {
  .p-thanks__button .c-button {
    height: 16vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-thanks__button .c-button {
    height: 8.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-thanks__button .c-button {
    height: 90px;
  }
}
.p-thanks__button .c-button__label {
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .p-thanks__button .c-button__label {
    font-size: 4.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-thanks__button .c-button__label {
    font-size: 2.685vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-thanks__button .c-button__label {
    font-size: 29px;
  }
}
.p-thanks__button .c-button__arrow {
  -webkit-transform: scaleX(-1) translateY(-50%);
          transform: scaleX(-1) translateY(-50%);
}
@media screen and (max-width: 768px) {
  .p-thanks__button .c-button__arrow {
    left: 4.667vw;
    width: 4.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-thanks__button .c-button__arrow {
    left: 2.593vw;
    width: 2.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-thanks__button .c-button__arrow {
    left: 28px;
    width: 24px;
  }
}

@media screen and (min-width: 769px) {
  .u-only-sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .u-only-pc {
    display: none !important;
  }
}
.u-sup {
  font-size: 58.3%;
  vertical-align: super;
}

.u-color-primary {
  color: var(--color-primary);
}

.u-color-secondary {
  color: var(--color-secondary);
}

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

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

.u-visibility-hidden {
  visibility: hidden;
}

.u-fw900 {
  font-weight: 900 !important;
}

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

.u-fw500 {
  font-weight: 500 !important;
}

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

.u-fw300 {
  font-weight: 300 !important;
}

.u-fz70 {
  font-size: 0.7em;
}/*# sourceMappingURL=style.css.map */