/***
    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;
  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;
}

::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%;
}

@media (any-hover: hover) {
  a:hover {
    opacity: 0.8;
  }
}

a:not([class]) {
  color: var(--color-font);
}

b, strong {
  font-weight: bolder;
}

:root {
  --color-font: #1a1a1a;
  --color-note: #333;
  --color-primary: #2d822d;
  --color-secondary: #e6001e;
  --color-tertiary: #f02328;
  --font-NotoSansJP: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", YuGothic, sans-serif;
  --font-NotoSerifJP: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, "BiZ UDMincho", "MS Mincho", 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.2vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  body {
    font-size: 1.667vw;
  }
}
@media screen and (min-width: 1080px) {
  body {
    font-size: 18px;
    min-width: 1080px;
  }
}

.l-wrapper {
  overflow: hidden;
  width: 100%;
}

@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-header {
  background: #fff;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}

@media screen and (min-width: 1080px) {
  .l-header__outer {
    margin-inline: auto;
    max-width: 1800px;
    position: relative;
    width: 90%;
  }
}

.l-header__inner {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .l-header__inner {
    padding-inline-start: 2.133vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-header__inner {
    padding-block: 0.463vw;
  }
}
@media screen and (min-width: 1080px) {
  .l-header__inner {
    padding-block: 5px;
  }
}

.l-header__left {
  align-items: center;
  display: flex;
}

@media screen and (max-width: 768px) {
  .l-header__logo {
    width: 67.733vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-header__logo {
    width: 39.815vw;
  }
}
@media screen and (min-width: 1080px) {
  .l-header__logo {
    width: 430px;
  }
}

.l-header__right {
  align-items: center;
  display: flex;
  justify-content: flex-end;
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-header__right {
    transform: translateX(2.778vw);
  }
}
@media screen and (min-width: 1080px) {
  .l-header__right {
    position: absolute;
    right: 0;
  }
}

@media screen and (max-width: 768px) {
  .l-hamburger {
    background: #9bd13c;
    cursor: pointer;
    height: 14.667vw;
    margin-inline-start: 0.267vw;
    position: relative;
    width: 14.667vw;
  }
}

@media screen and (max-width: 768px) {
  .l-hamburger__line {
    background: #fff;
    border-radius: 100vw;
    display: block;
    height: 0.8vw;
    left: 3.867vw;
    position: absolute;
    transition: transform 0.3s ease-in;
    width: 7.067vw;
  }
  .l-hamburger__line:nth-of-type(1) {
    top: 4.8vw;
  }
  .l-hamburger__line:nth-of-type(2) {
    top: 7vw;
  }
  .l-hamburger__line:nth-of-type(3) {
    top: 9.333vw;
  }
}

@media screen and (max-width: 768px) {
  .l-hamburger.is-active .l-hamburger__line:nth-of-type(1) {
    transform: rotate(45deg) translate(1.6vw, 1.6vw);
  }
  .l-hamburger.is-active .l-hamburger__line:nth-of-type(2) {
    display: none;
  }
  .l-hamburger.is-active .l-hamburger__line:nth-of-type(3) {
    transform: rotate(-45deg) translate(1.6vw, -1.6vw);
  }
}

.l-header-tel {
  align-items: center;
  display: flex;
}
@media screen and (max-width: 768px) {
  .l-header-tel {
    display: block;
  }
}

.l-header-tel__num {
  display: block;
}
@media screen and (max-width: 768px) {
  .l-header-tel__num {
    width: 14.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-header-tel__num {
    width: 31.481vw;
  }
}
@media screen and (min-width: 1080px) {
  .l-header-tel__num {
    width: 340px;
  }
}

@media screen and (max-width: 768px) {
  .l-header-tel__guide {
    display: none;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-header-tel__guide {
    margin-inline-start: 4.722vw;
    width: 15.741vw;
  }
}
@media screen and (min-width: 1080px) {
  .l-header-tel__guide {
    margin-inline-start: 51px;
    width: 170px;
  }
}

@media screen and (max-width: 768px) {
  .l-nav {
    max-height: calc(100vh - 14.667vw);
    opacity: 0;
    overflow-y: auto;
    position: fixed;
    right: -100vw;
    top: 14.667vw;
    transition: all 0.3s linear;
    visibility: hidden;
    width: 100vw;
    z-index: 110;
  }
  .l-nav.is-active {
    opacity: 1;
    right: 0;
    visibility: visible;
  }
}

@media screen and (max-width: 768px) {
  .l-nav__inner {
    background: #9bd13c;
    color: #fff;
    padding-block-end: 0vw;
  }
}

@media screen and (max-width: 768px) {
  .l-nav__list {
    padding-inline: 13.333vw;
  }
}

@media screen and (max-width: 768px) {
  .l-nav__item {
    font-size: 3.733vw;
    letter-spacing: 0.04em;
    line-height: 2;
  }
  .l-nav__item:not(:last-child) {
    border-bottom: 1px solid #fff;
  }
}

@media screen and (max-width: 768px) {
  .l-nav__link {
    color: #fff;
    display: block;
    padding-block: 1em;
  }
}
@media screen and (max-width: 768px) and (any-hover: hover) {
  .l-nav__link:hover {
    background: rgba(255, 255, 255, 0.8);
  }
}

body.is-menu-opened::before {
  background: rgba(0, 0, 0, 0.5);
  content: "";
  cursor: pointer;
  display: block;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 90;
}

.l-footer {
  background: #333333;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .l-footer__inner {
    padding-block: 8vw 8.667vw;
    padding-inline: 6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-footer__inner {
    padding-block: 4.444vw;
  }
}
@media screen and (min-width: 1080px) {
  .l-footer__inner {
    padding-block: 48px;
  }
}

.l-footer-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em 0;
  justify-content: center;
}

@media screen and (max-width: 768px) {
  .l-footer-nav__item {
    font-size: 3.2vw;
    line-height: 6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-footer-nav__item {
    font-size: 1.296vw;
  }
}
@media screen and (min-width: 1080px) {
  .l-footer-nav__item {
    font-size: 14px;
  }
}
@media (any-hover: hover) {
  .l-footer-nav__item:hover {
    text-decoration: underline;
  }
}
.l-footer-nav__item a {
  letter-spacing: 0.04em;
  border-left: #fff solid 1px;
  padding-inline: 1.3em;
}
.l-footer-nav__item:first-of-type a {
  border: none;
}
@media screen and (max-width: 768px) {
  .l-footer-nav__item:nth-of-type(4) a {
    border: none;
  }
}

.l-copyright {
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .l-copyright {
    font-size: 2.8vw;
    margin-block-start: 4vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .l-copyright {
    font-size: 1.296vw;
    margin-block-start: 2.13vw;
  }
}
@media screen and (min-width: 1080px) {
  .l-copyright {
    font-size: 14px;
    margin-block-start: 23px;
  }
}

.c-cta {
  background: #fff5d3;
}
@media screen and (max-width: 768px) {
  .c-cta {
    padding-block-start: 6.8vw;
    padding-block-end: 6.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta {
    padding-block-start: 4.907vw;
    padding-block-end: 6.944vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta {
    padding-block-start: 53px;
    padding-block-end: 75px;
  }
}

.c-cta__title {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .c-cta__title {
    width: 86.133vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta__title {
    transform: translateX(-0.463vw);
    width: 69.722vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta__title {
    transform: translateX(-5px);
    width: 753px;
  }
}

.c-cta__box {
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-cta__box {
    background: url("../images/cta_call_sp_bg.png") no-repeat center/100%;
    filter: drop-shadow(1.333vw 1.333vw 1.333vw rgba(51, 29, 0, 0.4));
    height: 48vw;
    margin-block-start: 2.667vw;
    margin-inline-start: 0.267vw;
    padding-block-start: 4.667vw;
    text-align: center;
    width: 94.667vw;
  }
}
@media screen and (min-width: 769px) {
  .c-cta__box {
    background: url("../images/cta_call_bg.png") no-repeat center/100%;
    margin-inline: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta__box {
    filter: drop-shadow(0.926vw 0.926vw 0.926vw rgba(51, 29, 0, 0.4));
    height: 26.852vw;
    margin-block-start: -0.833vw;
    padding-block-start: 4.259vw;
    width: 79.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta__box {
    filter: drop-shadow(10px 10px 10px rgba(51, 29, 0, 0.4));
    height: 290px;
    margin-block-start: -9px;
    padding-block-start: 46px;
    width: 860px;
  }
}

.c-cta__catch {
  border-bottom: 1px solid #b3b3b3;
  font-weight: 700;
  padding-inline-start: 0.6em;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .c-cta__catch {
    border: none;
    display: inline-block;
    font-size: 3.2vw;
    line-height: 4.667vw;
    padding-inline-start: 8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta__catch {
    font-size: 2.037vw;
    padding-block-end: 0.556vw;
    margin-inline-start: 24.074vw;
    width: 54.815vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta__catch {
    font-size: 22px;
    padding-block-end: 6px;
    margin-inline-start: 260px;
    width: 592px;
  }
}
.c-cta__catch span {
  font-weight: 700;
  font-size: 120%;
}

.c-cta-tel__num {
  display: block;
}
@media screen and (max-width: 768px) {
  .c-cta-tel__num {
    margin-block-start: 2.4vw;
    margin-inline-start: 7.733vw;
    width: 82.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta-tel__num {
    margin-block-start: 1.111vw;
    margin-inline-start: 24.444vw;
    width: 52.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta-tel__num {
    margin-block-start: 12px;
    margin-inline-start: 264px;
    width: 570px;
  }
}

@media screen and (max-width: 768px) {
  .c-cta__tel_guide {
    margin-inline-start: 7.733vw;
    width: 82.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta__tel_guide {
    margin-inline-start: 24.444vw;
    width: 52.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta__tel_guide {
    margin-inline-start: 264px;
    width: 570px;
  }
}

.c-cta-tel__note {
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .c-cta-tel__note {
    font-size: 2.133vw;
    margin-block-start: 0.667vw;
    padding-inline-end: 6.667vw;
    width: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .c-cta-tel__note {
    font-size: 1.019vw;
    margin-block-start: 0.741vw;
    margin-inline-end: 4.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .c-cta-tel__note {
    font-size: 11px;
    margin-block-start: 8px;
    margin-inline-end: 50px;
  }
}

@media screen and (max-width: 768px) {
  .p-kv {
    background: url(../images/kv_bg_sp.jpg) 0 0/100% auto no-repeat;
  }
}
@media screen and (min-width: 769px) {
  .p-kv {
    background: url(../images/kv_bg.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.tatami {
    background: url(../images/kv_bg_tatami_sp.jpg) 0 0/100% auto no-repeat;
  }
}
@media screen and (min-width: 769px) {
  .p-kv.tatami {
    background: url(../images/kv_bg_tatami.jpg) 50% 0 no-repeat;
  }
}
@media screen and (max-width: 768px) {
  .p-kv.amido {
    background: url(../images/kv_bg_amido_sp.jpg) 0 0/100% auto no-repeat;
  }
}
@media screen and (min-width: 769px) {
  .p-kv.amido {
    background: url(../images/kv_bg_amido.jpg) 50% 0 no-repeat;
  }
}
@media screen and (max-width: 768px) {
  .p-kv.fusuma {
    background: url(../images/kv_bg_fusuma_sp.jpg) 0 0/100% auto no-repeat;
  }
}
@media screen and (min-width: 769px) {
  .p-kv.fusuma {
    background: url(../images/kv_bg_fusuma.jpg) 50% 0 no-repeat;
  }
}
@media screen and (max-width: 768px) {
  .p-kv.shoji {
    background: url(../images/kv_bg_shoji_sp.jpg) 0 0/100% auto no-repeat;
  }
}
@media screen and (min-width: 769px) {
  .p-kv.shoji {
    background: url(../images/kv_bg_shoji.jpg) 50% 0 no-repeat;
  }
}

.p-kv__inner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-kv__inner {
    height: 178.667vw;
    padding-block-start: 15.067vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__inner {
    height: 66.667vw;
    padding-block-start: 9.259vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__inner {
    height: 720px;
    padding-block-start: 100px;
  }
}

@media screen and (max-width: 768px) {
  .p-kv__title {
    width: 100vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__title {
    margin-inline: auto;
    width: 57.407vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__title {
    margin-inline: auto;
    width: 620px;
  }
}

.p-kv__area {
  background-color: #fff;
  display: flex;
  flex-flow: column;
  justify-content: center;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-kv__area {
    border-radius: 1.333vw;
    filter: drop-shadow(1.387vw 1.387vw 1.387vw rgba(0, 0, 0, 0.2));
    height: 13.867vw;
    left: 2.667vw;
    padding-block-start: 0vw;
    padding-inline-start: 9.067vw;
    top: 17.333vw;
    width: 34.32vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__area {
    border-radius: 0.926vw;
    filter: drop-shadow(0.963vw 0.963vw 0.963vw rgba(0, 0, 0, 0.2));
    height: 7.407vw;
    left: 11.389vw;
    padding-inline-start: 4.352vw;
    top: 11.204vw;
    width: 18.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__area {
    border-radius: 10px;
    filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.2));
    height: 80px;
    left: 123px;
    padding-inline-start: 47px;
    top: 121px;
    width: 198px;
  }
}
@media screen and (max-width: 768px) {
  .p-kv__area.all {
    height: 17.333vw;
    padding-block-start: 4vw;
    padding-inline-start: 0vw;
    text-align: center;
    top: 19.733vw;
    width: 26.667vw;
  }
  .p-kv__area.all::after {
    clip-path: polygon(0 0, 4.8vw 0, 100% 100%);
    height: 4.8vw;
    left: 10vw;
    width: 8vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .p-kv__area.all .p-kv__area-main::after {
    left: 50%;
    transform: translate(-50%, 0%);
    top: -4.4vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .p-kv__area.all .p-kv__area-sub {
    margin-inline-start: 0vw;
  }
}
.p-kv__area::after {
  background-color: #fff;
  content: "";
  position: absolute;
  top: 99%;
}
@media screen and (max-width: 768px) {
  .p-kv__area::after {
    filter: drop-shadow(1.387vw 1.387vw 1.387vw rgba(0, 0, 0, 0.2));
    clip-path: polygon(0 0, 5.733vw 0, 100% 100%);
    height: 5.733vw;
    left: 13.333vw;
    width: 9.6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__area::after {
    clip-path: polygon(0 0, 2.778vw 0, 100% 100%);
    height: 2.778vw;
    left: 7.407vw;
    width: 4.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__area::after {
    clip-path: polygon(0 0, 30px 0, 100% 100%);
    height: 30px;
    left: 80px;
    width: 50px;
  }
}
.p-kv__area-main {
  display: inline-block;
  font-weight: 900;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-kv__area-main {
    font-size: 5.12vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__area-main {
    font-size: 2.963vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__area-main {
    font-size: 32px;
    font-weight: 900;
  }
}
.p-kv__area-main::after {
  background: url("../images/kv_japan_icon.svg") no-repeat center/100%;
  content: "";
  display: block;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-kv__area-main::after {
    height: 4.227vw;
    left: -5.733vw;
    top: 0.667vw;
    width: 4.4vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__area-main::after {
    height: 2.444vw;
    left: -2.778vw;
    top: 0.37vw;
    width: 2.546vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__area-main::after {
    height: 26.4px;
    left: -30px;
    top: 4px;
    width: 27.5px;
  }
}
.p-kv__area-sub {
  color: #1a1a1a;
  font-weight: 700;
  margin-block-start: 0.14em;
}
@media screen and (max-width: 768px) {
  .p-kv__area-sub {
    font-size: 4.093vw;
    margin-inline-start: 4.093vw;
  }
}
@media screen and (min-width: 769px) {
  .p-kv__area-sub {
    margin-inline-start: 1.1em;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__area-sub {
    font-size: 2.37vw;
    width: 60.741vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__area-sub {
    font-size: 25.6px;
    font-weight: 700;
  }
}

.p-kv-feature {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-kv-feature {
    flex-wrap: wrap;
    margin-block-start: -6.667vw;
    margin-inline: auto;
    width: 57.6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv-feature {
    margin-block-start: -3.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv-feature {
    margin-block-start: -40px;
  }
}
.p-kv-feature__item {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-kv-feature__item {
    width: 28.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv-feature__item {
    width: 13.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv-feature__item {
    width: 144px;
  }
}
.p-kv-feature__item::after {
  background: #1a1a1a;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  width: 1px;
}
@media screen and (max-width: 768px) {
  .p-kv-feature__item::after {
    height: 32.667vw;
    top: 1.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv-feature__item::after {
    height: 15.741vw;
    top: 0.926vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv-feature__item::after {
    height: 170px;
    top: 10px;
  }
}
.p-kv-feature__item:nth-of-type(1)::after {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-kv-feature__item:nth-of-type(2) {
    width: 28.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv-feature__item:nth-of-type(2) {
    width: 14.722vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv-feature__item:nth-of-type(2) {
    width: 159px;
  }
}
@media screen and (max-width: 768px) {
  .p-kv-feature__item:nth-of-type(3)::after {
    display: none;
  }
}

.p-kv__lead {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-kv__lead {
    margin-block-start: 18vw;
    width: 91.6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-kv__lead {
    margin-block-start: 2.407vw;
    width: 59.815vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-kv__lead {
    margin-block-start: 26px;
    width: 646px;
  }
}

@media screen and (max-width: 768px) {
  .p-flow {
    background-image: repeating-linear-gradient(45deg, #e6f0e5 0, #e6f0e5 3px, #fff 4px, #fff 5px);
  }
}
@media screen and (min-width: 769px) {
  .p-flow {
    background-image: repeating-linear-gradient(45deg, #e6f0e5 0, #e6f0e5 8px, #fff 9px, #fff 11px);
  }
}

.p-flow__top {
  background-color: var(--color-primary);
  display: flex;
  justify-content: center;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-flow__top {
    height: 13.333vw;
    padding-block-start: 4vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__top {
    height: 7.407vw;
    padding-block-start: 1.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__top {
    height: 80px;
    padding-block-start: 20px;
  }
}

@media screen and (max-width: 768px) {
  .p-flow__title {
    width: 91.067vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__title {
    width: 57.593vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__title {
    width: 622px;
  }
}

.p-flow__contents {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-flow__contents {
    background: url("../images/flow_contents_sp.png") no-repeat center/100%;
    height: 368.533vw;
    width: 100vw;
  }
}
@media screen and (min-width: 769px) {
  .p-flow__contents {
    background: url("../images/flow_contents.png") no-repeat center/100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__contents {
    height: 108.333vw;
    width: 92.593vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__contents {
    height: 1170px;
    width: 1000px;
  }
}

.p-flow__item {
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-flow__item:nth-of-type(1) {
    left: 21.467vw;
    top: 7.467vw;
    width: 62.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__item:nth-of-type(1) {
    left: 6.944vw;
    top: 6.944vw;
    width: 33.426vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__item:nth-of-type(1) {
    left: 75px;
    top: 75px;
    width: 361px;
  }
}
@media screen and (max-width: 768px) {
  .p-flow__item:nth-of-type(2) {
    left: 29.467vw;
    top: 77.6vw;
    width: 55.867vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__item:nth-of-type(2) {
    left: 40.648vw;
    top: 7.87vw;
    width: 29.722vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__item:nth-of-type(2) {
    left: 439px;
    top: 85px;
    width: 321px;
  }
}
@media screen and (max-width: 768px) {
  .p-flow__item:nth-of-type(3) {
    left: 4.267vw;
    top: 138vw;
    width: 77.067vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__item:nth-of-type(3) {
    left: 44.444vw;
    top: 39.352vw;
    width: 41.111vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__item:nth-of-type(3) {
    left: 480px;
    top: 425px;
    width: 444px;
  }
}
@media screen and (max-width: 768px) {
  .p-flow__item:nth-of-type(4) {
    left: 20.267vw;
    top: 193.467vw;
    width: 60.533vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__item:nth-of-type(4) {
    left: 0vw;
    top: 46.204vw;
    width: 32.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__item:nth-of-type(4) {
    left: 0px;
    top: 499px;
    width: 348px;
  }
}
@media screen and (max-width: 768px) {
  .p-flow__item:nth-of-type(5) {
    left: 2.667vw;
    top: 292vw;
    width: 96.533vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-flow__item:nth-of-type(5) {
    left: 41.019vw;
    top: 67.5vw;
    width: 51.481vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-flow__item:nth-of-type(5) {
    left: 443px;
    top: 729px;
    width: 556px;
  }
}

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

.p-action__inner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-action__inner {
    height: 320.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-action__inner {
    height: 144.444vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-action__inner {
    height: 1560px;
  }
}
.p-action__inner::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
}
@media screen and (max-width: 768px) {
  .p-action__inner::after {
    background: url("../images/action_img_sp.png") no-repeat center/100%;
    bottom: 8.533vw;
    height: 124vw;
    left: 0vw;
    width: 37.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-action__inner::after {
    background: url("../images/action_img.png") no-repeat center/100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-action__inner::after {
    height: 69.63vw;
    left: 4.352vw;
    width: 25.37vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-action__inner::after {
    height: 752px;
    left: 47px;
    width: 274px;
  }
}

.p-action__top {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-action__top {
    background: url("../images/action_top_bg_sp.png") no-repeat center/100%;
    height: 178vw;
    padding-block-start: 22.667vw;
    width: 92vw;
  }
}
@media screen and (min-width: 769px) {
  .p-action__top {
    background: url("../images/action_top_bg.png") no-repeat center/100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-action__top {
    height: 76.759vw;
    padding-block-start: 14.815vw;
    width: 92.593vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-action__top {
    height: 829px;
    padding-block-start: 160px;
    width: 1000px;
  }
}
.p-action__top-title {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-action__top-title {
    width: 52.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-action__top-title {
    width: 48.426vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-action__top-title {
    width: 523px;
  }
}

.p-action__list {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-action__list {
    align-items: start;
    gap: 0vw 3.467vw;
    margin-block-start: 6.667vw;
    width: 83.467vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-action__list {
    gap: 3.611vw 1.852vw;
    margin-block-start: 3.241vw;
    width: 84.259vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-action__list {
    gap: 39px 20px;
    margin-block-start: 35px;
    width: 910px;
  }
}
.p-action__list-item {
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-action__list-item {
    margin-block-end: 5.333vw;
    width: 40vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-action__list-item {
    width: 26.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-action__list-item {
    width: 290px;
  }
}
/* Recreate the 10px offset decoration from the original 300x186 assets. */
.p-action__list-item-img--photo {
  position: relative;
  aspect-ratio: 300 / 186;
}
.p-action__list-item-img--photo::before {
  content: "";
  position: absolute;
  inset: 5.376344% 0 0 3.333333%;
  background-color: #d7edb1;
}
.p-action__list-item-img--photo img {
  position: absolute;
  top: 0;
  left: 0;
  width: 96.666667%;
  height: 94.623656%;
  object-fit: cover;
}
.p-action__list-item-text {
  display: inline-block;
  letter-spacing: 0.04em;
  margin-block-start: 0.2em;
}
@media screen and (max-width: 768px) {
  .p-action__list-item-text {
    font-size: 3.813vw;
    letter-spacing: 0;
    line-height: 5.2vw;
    margin-block-start: 0.3em;
    white-space: nowrap;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-action__list-item-text {
    font-size: 2.037vw;
    line-height: 2.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-action__list-item-text {
    font-size: 22px;
    line-height: 30px;
  }
}

.p-action__break {
  flex-basis: 100%;
  height: 0;
  margin-block-end: 0vw;
}

@media screen and (max-width: 768px) {
  .p-action__investigation {
    background: url("../images/action_investigation_sp_bg.png") no-repeat center/100%;
    height: 121.2vw;
    margin-block-start: 11.067vw;
    margin-inline-start: 19.6vw;
    padding-block-start: 8.267vw;
    width: 79.733vw;
  }
}
@media screen and (min-width: 769px) {
  .p-action__investigation {
    background: url("../images/action_investigation_bg.png") no-repeat center/100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-action__investigation {
    height: 60.556vw;
    margin-block-start: 4.352vw;
    margin-inline-start: 25.37vw;
    padding-block-start: 5.278vw;
    width: 67.407vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-action__investigation {
    height: 654px;
    margin-block-start: 47px;
    margin-inline-start: 274px;
    padding-block-start: 57px;
    width: 728px;
  }
}
@media screen and (max-width: 768px) {
  .p-action__investigation-title {
    margin-inline-start: 12vw;
    width: 56.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-action__investigation-title {
    margin-inline-start: 4.815vw;
    width: 56.944vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-action__investigation-title {
    margin-inline-start: 52px;
    width: 615px;
  }
}
.p-action__investigation-text {
  display: block;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-action__investigation-text {
    font-size: 4vw;
    line-height: 6.667vw;
    margin-block-start: 36vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-action__investigation-text {
    font-size: 2.222vw;
    line-height: 4.074vw;
    margin-block-start: 24.815vw;
    margin-inline-start: -1.667vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-action__investigation-text {
    font-size: 24px;
    line-height: 44px;
    margin-block-start: 268px;
    margin-inline-start: -18px;
  }
}

.p-about {
  background: #fff;
}
@media screen and (max-width: 768px) {
  .p-about {
    padding-block-end: 0vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-about {
    padding-block-end: 5.556vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-about {
    padding-block-end: 60px;
  }
}

.p-about__contents {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-about__contents {
    width: 100vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-about__contents {
    width: 88.981vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-about__contents {
    width: 961px;
  }
}

.p-reason {
  background: #fff;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .p-reason {
    background-image: url(../images/reason_bg_sp.jpg);
    background-position: center top;
    background-size: 100% auto;
  }
}
@media screen and (min-width: 769px) {
  .p-reason {
    background-image: url(../images/reason_bg.jpg);
    background-position: center top;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason {
    background-size: 185.185vw auto;
  }
}

@media screen and (max-width: 768px) {
  .p-reason__inner {
    padding-block: 8vw 6.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__inner {
    padding-block: 4.63vw 3.796vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__inner {
    padding-block: 50px 41px;
  }
}

@media screen and (max-width: 768px) {
  .p-reason__title {
    margin-inline: auto;
    width: 91.733vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__title {
    margin-inline-start: 8%;
    width: 53.8%;
  }
}

.p-reason__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-reason__list {
    margin-block-start: 70.933vw;
    margin-inline: auto;
    width: 89.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__list {
    margin-block-start: 10.463vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__list {
    margin-block-start: 113px;
  }
}

.p-reason__item {
  border-bottom: 1px solid #a2a2a2;
  border-left: 1px solid #a2a2a2;
}
@media screen and (max-width: 768px) {
  .p-reason__item {
    padding-block: 4.267vw 1.333vw;
    width: 44.533vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__item {
    padding-block: 0.926vw 0.833vw;
    width: 18.056vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__item {
    padding-block: 10px 9px;
    width: 195px;
  }
}
@media screen and (max-width: 768px) {
  .p-reason__item:nth-of-type(1), .p-reason__item:nth-of-type(2) {
    padding-block: 1.333vw 1.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__item:nth-of-type(1), .p-reason__item:nth-of-type(6) {
    border-left: none;
  }
}
@media screen and (max-width: 768px) {
  .p-reason__item:nth-of-type(odd) {
    border-left: none;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__item:nth-of-type(n + 6) {
    border-bottom: none;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__item:nth-of-type(n + 6) {
    padding-top: 1.667vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__item:nth-of-type(n + 6) {
    padding-top: 18px;
  }
}
.p-reason__item:nth-of-type(n + 9) {
  border-bottom: none;
}

.p-reason__num {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-reason__num {
    width: 17.733vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__num {
    width: 7.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__num {
    width: 84px;
  }
}

.p-reason__icon {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-reason__icon {
    margin-block-start: 1.333vw;
    width: 18.733vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__icon {
    margin-block-start: 1.389vw;
    width: 8.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__icon {
    margin-block-start: 15px;
    width: 90px;
  }
}

@media screen and (max-width: 768px) {
  .p-reason__content {
    height: 14.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__content {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__content {
    height: 7.5vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__content {
    height: 81px;
  }
}

.p-reason__label {
  color: var(--color-note);
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .p-reason__label {
    font-size: 4.133vw;
    line-height: 5.467vw;
    margin-block-start: 2.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__label {
    font-size: 1.852vw;
    line-height: 2.407vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__label {
    font-size: 20px;
    line-height: 26px;
  }
}
.p-reason__label strong {
  color: var(--color-primary);
}

.p-reason__note {
  color: #1a1a1a;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .p-reason__note {
    font-size: 2.533vw;
    line-height: 1.232;
    margin-block-start: 0.3em;
  }
}
@media screen and (min-width: 769px) {
  .p-reason__note {
    line-height: 1.25;
    margin-block-start: 0.5em;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason__note {
    font-size: 1.111vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason__note {
    font-size: 12px;
  }
}

.p-method {
  background-color: #f5f0d2;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .p-method {
    background-image: url(../images/method_bg_sp.jpg);
    background-position: center top;
    background-size: 100% auto;
  }
}
@media screen and (min-width: 769px) {
  .p-method {
    background-image: url(../images/method_bg.jpg);
    background-position: center top;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-method {
    background-size: 185.185vw auto;
  }
}

@media screen and (max-width: 768px) {
  .p-method__inner {
    padding-block: 0vw 15.733vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-method__inner {
    padding-block: 6.389vw 9.074vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-method__inner {
    padding-block: 69px 98px;
  }
}

.p-method__title {
  margin-inline: auto;
}
@media screen and (min-width: 769px) {
  .p-method__title {
    margin-inline-start: 7.6%;
    width: 88.5%;
  }
}

.p-method__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-method__list {
    gap: 6.133vw;
    margin-block-start: 2.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-method__list {
    gap: 2.963vw 4.444vw;
    margin-block-start: 2.5vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-method__list {
    gap: 32px 48px;
    margin-block-start: 27px;
  }
}

.p-method__item {
  background-color: #fff;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-method__item {
    border: 0.8vw solid #2d822d;
    padding-block: 24.8vw 5.333vw;
    width: 82.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-method__item {
    border: 0.37vw solid #2d822d;
    padding-block: 11.296vw 2.407vw;
    width: 39.444vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-method__item {
    border: 4px solid #2d822d;
    padding-block: 122px 26px;
    width: 426px;
  }
}

.p-method__top {
  display: flex;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-method__top {
    background: url("../images/method_list_head_sp.png") no-repeat center/100%;
    height: 21.333vw;
    left: -4.533vw;
    top: -0.8vw;
    width: 86.533vw;
  }
}
@media screen and (min-width: 769px) {
  .p-method__top {
    background: url("../images/method_list_head.png") no-repeat center/100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-method__top {
    height: 10.185vw;
    left: -2.13vw;
    top: -0.463vw;
    width: 41.204vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-method__top {
    height: 110px;
    left: -23px;
    top: -5px;
    width: 445px;
  }
}
@media screen and (max-width: 768px) {
  .p-method__top-num {
    width: 19.467vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-method__top-num {
    width: 9.259vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-method__top-num {
    width: 100px;
  }
}
.p-method__top-text {
  align-items: center;
  color: #fff;
  display: flex;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .p-method__top-text {
    font-size: 6.667vw;
    line-height: 8vw;
    margin-block-start: -1.6vw;
    padding-inline-start: 4vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-method__top-text {
    font-size: 3.056vw;
    line-height: 3.704vw;
    margin-block-start: -0.926vw;
    padding-inline-start: 1.204vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-method__top-text {
    font-size: 33px;
    line-height: 40px;
    margin-block-start: -10px;
    padding-inline-start: 13px;
  }
}

.p-method__img {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-method__img {
    width: 73.867vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-method__img {
    width: 35.185vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-method__img {
    width: 380px;
  }
}

.p-method__text {
  letter-spacing: 0.04em;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-method__text {
    font-size: 3.733vw;
    letter-spacing: 0.02em;
    line-height: 6.667vw;
    margin-block-start: 2.667vw;
    width: 72.4vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-method__text {
    font-size: 1.667vw;
    line-height: 3.148vw;
    margin-block-start: 0.926vw;
    width: 33.519vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-method__text {
    font-size: 18px;
    line-height: 34px;
    margin-block-start: 10px;
    width: 362px;
  }
}

.p-trouble {
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .p-trouble {
    background-image: url(../images/trouble_bg_sp.jpg);
    background-position: center top;
    background-size: 100% auto;
  }
}
@media screen and (min-width: 769px) {
  .p-trouble {
    background-image: url(../images/trouble_bg.jpg);
    background-position: center top;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-trouble {
    background-size: 185.185vw auto;
  }
}

@media screen and (max-width: 768px) {
  .p-trouble__inner {
    height: 172.933vw;
    padding-block-start: 4.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-trouble__inner {
    height: 56.481vw;
    padding-block-start: 1.667vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-trouble__inner {
    height: 610px;
    padding-block-start: 18px;
  }
}

@media screen and (max-width: 768px) {
  .p-trouble__title {
    margin-inline-start: 2.667vw;
    width: 75.067vw;
  }
}
@media screen and (min-width: 769px) {
  .p-trouble__title {
    margin-inline-start: 9%;
    width: 71.8%;
  }
}

.p-trouble__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-trouble__list {
    gap: 4.8vw 4.8vw;
    margin-block-start: 6.667vw;
    width: 88vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-trouble__list {
    gap: 0vw 1.204vw;
    margin-block-start: 0.37vw;
    width: 92.593vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-trouble__list {
    gap: 0 13px;
    margin-block-start: 4px;
    width: 1000px;
  }
}

@media screen and (max-width: 768px) {
  .p-trouble__item {
    width: 41.6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-trouble__item {
    width: 22.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-trouble__item {
    width: 240px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-trouble__item:nth-of-type(even) {
    margin-block-start: 5.648vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-trouble__item:nth-of-type(even) {
    margin-block-start: 61px;
  }
}

.p-trouble__label {
  color: #fff;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-trouble__label {
    font-size: 3.733vw;
    line-height: 5.2vw;
    margin-block-start: 2.133vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-trouble__label {
    font-size: 2.037vw;
    line-height: 2.778vw;
    margin-block-start: 1.481vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-trouble__label {
    font-size: 22px;
    line-height: 30px;
    margin-block-start: 16px;
  }
}

.p-price {
  background-color: #a5d650;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .p-price {
    background-image: url(../images/price_bg_sp.jpg);
    background-position: center top;
    background-size: 100% auto;
  }
}
@media screen and (min-width: 769px) {
  .p-price {
    background-image: url(../images/price_bg.jpg);
    background-position: center top;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price {
    background-size: 185.185vw auto;
  }
}
@media screen and (min-width: 1080px) {
  .p-price {
    background-size: 2000px auto;
  }
}

.p-price__inner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-price__inner {
    padding-block: 48.267vw 16vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__inner {
    padding-block: 22.222vw 8.889vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__inner {
    padding-block: 240px 96px;
  }
}

.p-price__title {
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0%);
}
@media screen and (max-width: 768px) {
  .p-price__title {
    top: -5.067vw;
    width: 100vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__title {
    top: -3.704vw;
    width: 61.296vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__title {
    top: -40px;
    width: 662px;
  }
}

@media screen and (max-width: 768px) {
  .p-price__lead {
    margin-inline-start: 39.467vw;
    width: 60.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__lead {
    margin-inline-start: 49.63vw;
    width: 42.315vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__lead {
    margin-inline-start: 536px;
    width: 457px;
  }
}

.p-price__box {
  background-color: #fff;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-price__box {
    border-radius: 0.933vw;
    padding-block-end: 10.667vw;
    padding-block-start: 7.6vw;
    margin-block-start: 2.667vw;
    width: 89.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__box {
    border-radius: 0.926vw;
    padding-block-end: 6.574vw;
    padding-block-start: 2.778vw;
    margin-block-start: -0.926vw;
    width: 88.889vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__box {
    border-radius: 10px;
    padding-block-end: 71px;
    padding-block-start: 30px;
    margin-block-start: -10px;
    width: 960px;
  }
}

@media screen and (max-width: 768px) {
  .p-price__box-title {
    margin-inline-start: -3.2vw;
    width: 85.2vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__box-title {
    margin-inline-start: -1.852vw;
    width: 86.019vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__box-title {
    margin-inline-start: -20px;
    width: 929px;
  }
}

.p-price__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-price__list {
    gap: 4vw 2.133vw;
    justify-content: space-between;
    margin-block-start: 5.333vw;
    width: 68.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__list {
    gap: 1.944vw 1.204vw;
    margin-block-start: 1.852vw;
    width: 74.074vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__list {
    gap: 21px 13px;
    margin-block-start: 20px;
    width: 800px;
  }
}

.p-price__item {
  background-color: #fff;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-price__item {
    border-radius: 1.067vw;
    padding-block-end: 3.333vw;
    width: 33.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__item {
    border-radius: 0.741vw;
    padding-block-end: 1.204vw;
    width: 17.593vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__item {
    border-radius: 8px;
    padding-block-end: 13px;
    width: 190px;
  }
}
.p-price__item img {
  display: block;
  height: auto;
  width: 100%;
}
.p-price__item::after {
  -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  background: linear-gradient(135deg, #78dc28, #00783c) border-box;
  border-radius: inherit;
  content: "";
  inset: 0;
  mask-composite: exclude;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-price__item::after {
    border: 0.8vw solid transparent;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__item::after {
    border: 0.463vw solid transparent;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__item::after {
    border: 5px solid transparent;
  }
}

.p-price__break {
  flex-basis: 100%;
  height: 0;
}

.p-price__text {
  align-items: center;
  display: flex;
  font-weight: 500;
  height: 1.8em;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-price__text {
    font-size: 3.733vw;
    line-height: 4.48vw;
    height: 2.7em;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__text {
    font-size: 1.667vw;
    line-height: 1.852vw;
    padding-block-start: 1.019vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__text {
    font-size: 18px;
    line-height: 20px;
    padding-block-start: 11px;
  }
}
.p-price__text::after {
  background: #666666;
  content: "";
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0%);
}
@media screen and (max-width: 768px) {
  .p-price__text::after {
    bottom: 0vw;
    width: 28.133vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__text::after {
    bottom: -1.204vw;
    width: 14.815vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__text::after {
    bottom: -13px;
    height: 1px;
    width: 160px;
  }
}

.p-price__price {
  color: var(--color-tertiary);
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .p-price__price {
    font-size: 6.133vw;
    line-height: 4.667vw;
    margin-block-start: 2.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__price {
    font-size: 2.778vw;
    line-height: 2.315vw;
    margin-block-start: 2.315vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__price {
    font-size: 30px;
    line-height: 25px;
    margin-block-start: 25px;
  }
}
.p-price__price .yen {
  color: var(--color-tertiary);
  font-size: 70%;
}
.p-price__price .tax {
  color: var(--color-tertiary);
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-price__price .tax {
    font-size: 3.467vw;
    line-height: 5.733vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__price .tax {
    font-size: 1.481vw;
    line-height: 2.593vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__price .tax {
    font-size: 16px;
    line-height: 28px;
  }
}

.p-price__compare-title {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-price__compare-title {
    margin-block-start: 10.933vw;
    width: 89.6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__compare-title {
    margin-block-start: 5.278vw;
    width: 52.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__compare-title {
    margin-block-start: 57px;
    width: 570px;
  }
}

@media screen and (max-width: 768px) {
  .p-price__compare-table {
    margin-block-start: 3.2vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-price__compare-table {
    margin-block-start: 2.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-price__compare-table {
    margin-block-start: 24px;
  }
}

.p-reason02 {
  background-color: #b4e696;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .p-reason02 {
    background-image: url(../images/reason02_bg_sp.jpg);
    background-position: center top;
    background-size: 100% auto;
  }
}
@media screen and (min-width: 769px) {
  .p-reason02 {
    background-image: url(../images/reason02_bg.jpg);
    background-position: center top;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason02 {
    background-size: 185.185vw auto;
  }
}

@media screen and (max-width: 768px) {
  .p-reason02__inner {
    padding-block-end: 15.067vw;
    padding-block-start: 6.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason02__inner {
    padding-block-end: 9.352vw;
    padding-block-start: 3.981vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason02__inner {
    padding-block-end: 101px;
    padding-block-start: 43px;
  }
}

.p-reason02__title {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-reason02__title {
    width: 89.333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason02__title {
    width: 67%;
  }
}

.p-reason02__list {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-reason02__list {
    margin-block-start: 5.333vw;
    width: 89.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason02__list {
    margin-block-start: 0.556vw;
    width: 83.333vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason02__list {
    margin-block-start: 6px;
    width: 900px;
  }
}

.p-reason02__item {
  position: relative;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .p-reason02__item {
    background: url("../images/reason02_list_bg_sp.png") no-repeat top center, #d2ffa5;
    background-size: 89.333vw 120vw;
    border-radius: 2.667vw;
    margin-block-start: 6.133vw;
    padding-block-end: 6vw;
    padding-block-start: 62.667vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason02__item {
    background: url("../images/reason02_list_bg.png") no-repeat center/100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason02__item {
    border-radius: 1.852vw;
    height: 20.37vw;
    margin-block-start: 7.407vw;
    padding-block-start: 2.87vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason02__item {
    border-radius: 20px;
    height: 220px;
    margin-block-start: 80px;
    padding-block-start: 31px;
  }
}
.p-reason02__item:nth-of-type(1) {
  margin-block-start: 0;
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason02__item:nth-of-type(3) .p-reason02__text {
    margin-block-start: 0.463vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason02__item:nth-of-type(3) .p-reason02__text {
    margin-block-start: 5px;
  }
}

.p-reason02__num {
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-reason02__num {
    left: -2.933vw;
    top: 60.667vw;
    width: 20.533vw;
    z-index: 5;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason02__num {
    left: 1.759vw;
    top: -1.667vw;
    width: 10.185vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason02__num {
    left: 19px;
    top: -18px;
    width: 110px;
  }
}

.p-reason02__img {
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-reason02__img {
    right: auto;
    left: 50%;
    transform: translate(-50%, 0%);
    top: 4vw;
    width: 80vw;
  }
}
@media screen and (min-width: 769px) {
  .p-reason02__img {
    top: 50%;
    transform: translate(0%, -50%);
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason02__img {
    filter: drop-shadow(0.926vw 0.926vw 0.926vw rgba(51, 29, 0, 0.3));
    right: -1.389vw;
    width: 34.722vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason02__img {
    filter: drop-shadow(10px 10px 10px rgba(51, 29, 0, 0.3));
    right: -15px;
    width: 375px;
  }
}

.p-reason02__item-title {
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .p-reason02__item-title {
    align-items: center;
    display: flex;
    font-size: 4.8vw;
    height: 2.5em;
    line-height: 5.867vw;
    margin-inline-start: 22vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason02__item-title {
    font-size: 2.407vw;
    line-height: 3.333vw;
    margin-inline-start: 11.481vw;
    width: 35.185vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason02__item-title {
    font-size: 26px;
    line-height: 36px;
    margin-inline-start: 124px;
    width: 380px;
  }
}

.p-reason02__text {
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .p-reason02__text {
    font-size: 3.733vw;
    line-height: 6.667vw;
    margin-block-start: 5.867vw;
    margin-inline: auto;
    width: 77.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-reason02__text {
    font-size: 1.481vw;
    line-height: 2.778vw;
    margin-block-start: 3.796vw;
    margin-inline-start: 3.704vw;
    width: 45.37vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-reason02__text {
    font-size: 16px;
    line-height: 30px;
    margin-block-start: 41px;
    margin-inline-start: 40px;
    width: 490px;
  }
}

.p-area {
  background-color: #fff5d3;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .p-area {
    background-image: url(../images/area_bg_sp.jpg);
    background-position: center top;
    background-size: 100% auto;
  }
}
@media screen and (min-width: 769px) {
  .p-area {
    background-image: url(../images/area_bg.jpg);
    background-position: center top;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area {
    background-size: 185.185vw auto;
  }
}

.p-area__inner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-area__inner {
    padding-block: 1.333vw 17.733vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__inner {
    padding-block: 7.222vw 9.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__inner {
    padding-block: 78px 104px;
  }
}

@media screen and (max-width: 768px) {
  .p-area__title {
    margin-inline-start: 7.333vw;
    width: 85.067vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__title {
    margin-inline-start: 4.63vw;
    width: 45.37vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__title {
    margin-inline-start: 50px;
    width: 490px;
  }
}

.p-area__comment-01 {
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-area__comment-01 {
    left: 46vw;
    top: 62.4vw;
    width: 17.733vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__comment-01 {
    left: 69.352vw;
    top: 11.296vw;
    width: 10.278vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__comment-01 {
    left: 749px;
    top: 122px;
    width: 111px;
  }
}

.p-area__comment-02 {
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-area__comment-02 {
    left: 8.933vw;
    top: 122.667vw;
    width: 62.533vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__comment-02 {
    left: 48.056vw;
    top: 46.389vw;
    width: 36.111vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__comment-02 {
    left: 519px;
    top: 501px;
    width: 390px;
  }
}

.p-area__title-note {
  letter-spacing: 0.04em;
  margin-block-start: 0.8em;
}
@media screen and (max-width: 768px) {
  .p-area__title-note {
    font-size: 2.4vw;
    margin-block-start: 1.2em;
    margin-inline: auto;
    width: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__title-note {
    font-size: 1.019vw;
    margin-inline-start: 4.63vw;
    width: 45.37vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__title-note {
    font-size: 11px;
    margin-inline-start: 50px;
    width: 490px;
  }
}

.p-area__text {
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .p-area__text {
    font-size: 3.733vw;
    line-height: 6.4vw;
    margin-block-start: 147.333vw;
    margin-inline: auto;
    width: 78.133vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__text {
    font-size: 1.667vw;
    line-height: 2.963vw;
    margin-block-start: 27.963vw;
    margin-inline-start: 39.167vw;
    width: 48.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__text {
    font-size: 18px;
    line-height: 32px;
    margin-block-start: 302px;
    margin-inline-start: 423px;
    width: 526px;
  }
}

.p-area__member-area {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-area__member-area {
    padding-block-start: 10.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__member-area {
    padding-block-start: 5.37vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__member-area {
    padding-block-start: 58px;
  }
}

.p-area__membe-text {
  display: inline-block;
  font-weight: 700;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-area__membe-text {
    font-size: 4.8vw;
    line-height: 7.28vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__membe-text {
    font-size: 2.593vw;
    line-height: 4.167vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__membe-text {
    font-size: 28px;
    line-height: 45px;
  }
}
.p-area__membe-text::after, .p-area__membe-text::before {
  background: url("../images/area_member_title_deco.png") no-repeat center/100%;
  content: "";
  display: block;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-area__membe-text::after, .p-area__membe-text::before {
    height: 12.133vw;
    left: -10.667vw;
    top: 10.133vw;
    width: 6.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__membe-text::after, .p-area__membe-text::before {
    height: 6.481vw;
    left: -5.185vw;
    top: 2.13vw;
    width: 3.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__membe-text::after, .p-area__membe-text::before {
    height: 70px;
    left: -56px;
    top: 23px;
    width: 40px;
  }
}
.p-area__membe-text::before {
  left: auto;
  transform: scale(-1, 1);
}
@media screen and (max-width: 768px) {
  .p-area__membe-text::before {
    right: -10.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__membe-text::before {
    right: -5.185vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__membe-text::before {
    right: -56px;
  }
}
.p-area__membe-text .green {
  color: var(--color-primary);
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .p-area__membe-text .green {
    font-size: 6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__membe-text .green {
    font-size: 3.148vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__membe-text .green {
    font-size: 34px;
  }
}
.p-area__membe-text .small {
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .p-area__membe-text .small {
    font-size: 4.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__membe-text .small {
    font-size: 2.519vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__membe-text .small {
    font-size: 27.2px;
  }
}
.p-area__membe-text .big {
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .p-area__membe-text .big {
    font-size: 6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__membe-text .big {
    font-size: 3.148vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__membe-text .big {
    font-size: 34px;
  }
}

@media screen and (max-width: 768px) {
  .p-area__member {
    margin-block-start: 5.333vw;
    margin-inline: auto;
    width: 85.6vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-area__member {
    margin-block-start: 2.037vw;
    width: 87.963vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-area__member {
    margin-block-start: 22px;
    width: 950px;
  }
}

@media screen and (max-width: 768px) {
  .p-consultation {
    background: url(../images/consultation_bg_sp.jpg) 0 0/100% auto no-repeat, #cce5b4;
  }
}
@media screen and (min-width: 769px) {
  .p-consultation {
    background: url(../images/consultation_bg.jpg) 50% 0 no-repeat;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation {
    background-size: 185.185vw auto;
  }
}

.p-consultation__inner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-consultation__inner {
    padding-block-end: 16.533vw;
    padding-block-start: 2.267vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__inner {
    height: 141.296vw;
    padding-block-start: 0.37vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__inner {
    height: 1526px;
    padding-block-start: 4px;
  }
}
.p-consultation__inner::after {
  background: url("../images/consultation_img.png") no-repeat center/100%;
  content: "";
  display: block;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-consultation__inner::after {
    height: 62.933vw;
    left: 50%;
    transform: translate(-50%, 0%);
    top: 40.667vw;
    width: 62.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__inner::after {
    height: 41.296vw;
    left: 2.963vw;
    top: -4.907vw;
    width: 41.296vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__inner::after {
    height: 446px;
    left: 32px;
    top: -53px;
    width: 446px;
  }
}

@media screen and (max-width: 768px) {
  .p-consultation__title {
    margin-inline: auto;
    width: 86.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__title {
    margin-inline-start: 35.556vw;
    width: 51.111vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__title {
    margin-inline-start: 384px;
    width: 552px;
  }
}

.p-consultation__box {
  background-color: #fff;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .p-consultation__box {
    margin-block-start: 46.133vw;
    margin-inline: auto;
    padding-block: 8.667vw 12vw;
    width: 85.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__box {
    margin-block-start: 0.833vw;
    padding-block: 6.944vw 4.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__box {
    margin-block-start: 9px;
    padding-block: 75px 50px;
  }
}

.p-consultation__box-title-area {
  text-align: center;
}

.p-consultation__box-title {
  display: inline-block;
  font-weight: 700;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-consultation__box-title {
    font-size: 5.893vw;
    line-height: 7.88vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__box-title {
    font-size: 3.148vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__box-title {
    font-size: 34px;
  }
}
.p-consultation__box-title .green {
  color: var(--color-primary);
  font-weight: 900;
}
.p-consultation__box-title::after, .p-consultation__box-title::before {
  background: url("../images/consultation_list_title_bg.png") no-repeat center/100%;
  content: "";
  display: block;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-consultation__box-title::after, .p-consultation__box-title::before {
    height: 3.467vw;
    left: 50%;
    transform: translate(-50%, 0%);
    bottom: -6.667vw;
    width: 19.067vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__box-title::after, .p-consultation__box-title::before {
    height: 1.852vw;
    left: -14.074vw;
    top: 0.926vw;
    width: 10.185vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__box-title::after, .p-consultation__box-title::before {
    height: 20px;
    left: -152px;
    top: 10px;
    width: 110px;
  }
}
.p-consultation__box-title::before {
  left: auto;
}
@media screen and (max-width: 768px) {
  .p-consultation__box-title::before {
    display: none;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__box-title::before {
    right: -14.074vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__box-title::before {
    right: -152px;
  }
}

.p-consultation__list {
  display: flex;
  flex-direction: column;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-consultation__list {
    gap: 11.6vw;
    margin-block-start: 12.667vw;
    width: 72vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__list {
    gap: 5.278vw;
    margin-block-start: 4.722vw;
    width: 84%;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__list {
    gap: 57px;
    margin-block-start: 51px;
    width: 84%;
  }
}

.p-consultation__item {
  align-items: start;
  display: grid;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-consultation__item {
    gap: 4vw 4.533vw;
    grid-template-columns: 38.867vw 1fr;
    grid-template-rows: auto 1fr;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__item {
    gap: 1.389vw 2.778vw;
    grid-template-columns: 24.074vw 1fr;
    grid-template-rows: auto 1fr;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__item {
    gap: 15px 30px;
    grid-template-columns: 260px 1fr;
    grid-template-rows: auto 1fr;
  }
}
.p-consultation__item::after {
  content: "";
  display: block;
  background: #ccebfa;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0%);
  height: 1px;
}
@media screen and (max-width: 768px) {
  .p-consultation__item::after {
    top: -6.667vw;
    width: 72vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__item::after {
    bottom: -2.778vw;
    width: 80.556vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__item::after {
    bottom: -30px;
    width: 870px;
  }
}
@media screen and (max-width: 768px) {
  .p-consultation__item:first-of-type::after {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .p-consultation__item:last-of-type::after {
    display: none;
  }
}

.p-consultation__img {
  grid-column: 1;
  grid-row: 1/3;
}
@media screen and (max-width: 768px) {
  .p-consultation__img {
    grid-row: 1;
    width: 38.867vw;
  }
}

.p-consultation__list-title {
  color: var(--color-note);
  font-weight: 700;
  grid-column: 2;
  grid-row: 1;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .p-consultation__list-title {
    align-items: center;
    display: flex;
    font-size: 4.8vw;
    height: 24vw;
    white-space: nowrap;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__list-title {
    font-size: 2.593vw;
    margin-block-start: 2.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__list-title {
    font-size: 28px;
    margin-block-start: 30px;
  }
}

.p-consultation__label {
  grid-column: 2;
  grid-row: 2;
  color: #4d4d4d;
}
@media screen and (max-width: 768px) {
  .p-consultation__label {
    font-size: 3.733vw;
    grid-column: 1/-1;
    line-height: 6.667vw;
    width: 72vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-consultation__label {
    font-size: 1.481vw;
    line-height: 2.593vw;
    width: 51.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-consultation__label {
    font-size: 16px;
    line-height: 28px;
    width: 560px;
  }
}

@media screen and (max-width: 768px) {
  .p-follow-item__header {
    background: 0 0/auto 100% no-repeat;
    display: flex;
    flex-direction: column;
    height: 40vw;
    justify-content: center;
    padding-block-start: 1.333vw;
    padding-inline-start: 43.333vw;
  }
}

@media screen and (max-width: 768px) {
  .p-follow-item__title {
    width: 40vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-follow-item__title {
    width: 49.074vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-follow-item__title {
    width: 530px;
  }
}

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

@media screen and (max-width: 768px) {
  .p-qa__inner {
    height: 240.267vw;
    padding-block-start: 6.933vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-qa__inner {
    height: 98.241vw;
    padding-block-start: 6.019vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-qa__inner {
    height: 1061px;
    padding-block-start: 65px;
  }
}

@media screen and (max-width: 768px) {
  .p-qa__title {
    margin-inline-start: 10.4vw;
    width: 79.867vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-qa__title {
    margin-inline-start: 20.37vw;
    width: 42.778vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-qa__title {
    margin-inline-start: 220px;
    width: 462px;
  }
}

.p-qa__list {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-qa__list {
    margin-block-start: 6.267vw;
    width: 89.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-qa__list {
    margin-block-start: -0.185vw;
    width: 90%;
  }
}
@media screen and (min-width: 1080px) {
  .p-qa__list {
    margin-block-start: -2px;
    width: 90%;
  }
}

.p-qa__item {
  background: var(--color-primary);
}
@media screen and (max-width: 768px) {
  .p-qa__item {
    margin-block-start: 5.333vw;
    padding-block-end: 0.8vw;
    padding-inline: 0.8vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-qa__item {
    margin-block-start: 2.778vw;
    padding-block-end: 0.556vw;
    padding-inline: 0.556vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-qa__item {
    margin-block-start: 30px;
    padding-block-end: 6px;
    padding-inline: 6px;
  }
}
@media screen and (max-width: 768px) {
  .p-qa__item:nth-child(1) {
    margin-block-start: 3.867vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-qa__item:nth-child(1) {
    margin-block-start: 2.685vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-qa__item:nth-child(1) {
    margin-block-start: 29px;
  }
}

.p-qa__question {
  align-items: center;
  color: #fff;
  display: flex;
  font-weight: 700;
  letter-spacing: 0.04em;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-qa__question {
    font-size: 4.267vw;
    height: 16vw;
    line-height: 5.333vw;
    padding-inline: 16vw 4vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-qa__question {
    font-size: 2.222vw;
    line-height: 2.963vw;
    padding-block: 1.759vw;
    padding-inline: 8.704vw 4.167vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-qa__question {
    font-size: 24px;
    line-height: 32px;
    padding-block: 19px;
    padding-inline: 94px 45px;
  }
}
.p-qa__question::after {
  background: url("../images/qa_icon_question.svg") no-repeat center/100%;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translate(0%, -50%);
}
@media screen and (max-width: 768px) {
  .p-qa__question::after {
    height: 9.333vw;
    left: 4vw;
    width: 9.333vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-qa__question::after {
    height: 4.63vw;
    left: 2.037vw;
    width: 4.63vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-qa__question::after {
    height: 50px;
    left: 22px;
    width: 50px;
  }
}

.p-qa__answer {
  align-items: flex-start;
  background-color: #fff;
  color: var(--color-note);
  display: flex;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .p-qa__answer {
    font-size: 3.733vw;
    line-height: 6.4vw;
    padding-block: 4.133vw 4.133vw;
    padding-inline: 4.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-qa__answer {
    font-size: 1.667vw;
    line-height: 2.963vw;
    padding-block: 1.389vw;
    padding-inline: 3.611vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-qa__answer {
    font-size: 18px;
    line-height: 32px;
    padding-block: 15px;
    padding-inline: 39px;
  }
}

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

.p-estimate__inner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-estimate__inner {
    height: 174.667vw;
    padding-block-start: 12.533vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-estimate__inner {
    height: 44.352vw;
    padding-block-start: 6.481vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-estimate__inner {
    height: 479px;
    padding-block-start: 70px;
  }
}

.p-estimate__title {
  background-image: linear-gradient(to right, #2d822d 0%, #2d822d 69%, #333 50%, #333 100%);
  background-position: bottom;
  background-repeat: no-repeat;
  display: inline-block;
  font-weight: 700;
  letter-spacing: 0.08em;
  padding-block-end: 0.4em;
}
@media screen and (max-width: 768px) {
  .p-estimate__title {
    background-size: 100% 0.533vw;
    font-size: 6.133vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-estimate__title {
    background-size: 100% 0.37vw;
    font-size: 3.148vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-estimate__title {
    background-size: 100% 4px;
    font-size: 34px;
  }
}
.p-estimate__title .green {
  color: var(--color-primary);
  font-weight: 700;
}

.p-estimate__list {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-estimate__list {
    flex-flow: column;
    margin-inline: auto;
    gap: 11.467vw 0;
    padding-block-start: 8.667vw;
    width: 80vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-estimate__list {
    gap: 0 6.019vw;
    padding-block-start: 4.907vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-estimate__list {
    gap: 0 65px;
    padding-block-start: 53px;
  }
}

.p-estimate__item {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-estimate__item {
    padding-block-start: 0.8vw;
    width: 100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-estimate__item {
    padding-block-start: 0.556vw;
    width: 26.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-estimate__item {
    padding-block-start: 6px;
    width: 290px;
  }
}
.p-estimate__item::after {
  background-color: var(--color-note);
  content: "";
  left: 0;
  position: absolute;
  top: 0;
  width: 1px;
}
@media screen and (max-width: 768px) {
  .p-estimate__item::after {
    height: 1px;
    left: 50%;
    transform: translate(-50%, 0%);
    top: -6vw;
    width: 80vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-estimate__item::after {
    height: 20.37vw;
    left: -3.056vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-estimate__item::after {
    height: 220px;
    left: -33px;
  }
}
.p-estimate__item:nth-of-type(1)::after {
  display: none;
}
.p-estimate__item-title {
  align-items: center;
  background-color: var(--color-primary);
  border-radius: 999px;
  color: #fff;
  display: flex;
  font-weight: 700;
  justify-content: center;
  letter-spacing: 0.04em;
  position: relative;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-estimate__item-title {
    font-size: 4.267vw;
    line-height: 5.333vw;
    text-align: left;
    padding-block: 2.667vw;
    width: 100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-estimate__item-title {
    font-size: 1.852vw;
    height: 7.407vw;
    line-height: 2.5vw;
    width: 26.852vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-estimate__item-title {
    font-size: 20px;
    height: 80px;
    line-height: 27px;
    width: 290px;
  }
}
.p-estimate__item-title::after {
  background-color: var(--color-primary);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  left: 50%;
  position: absolute;
  top: 99.5%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .p-estimate__item-title::after {
    height: 1.333vw;
    width: 2vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-estimate__item-title::after {
    height: 0.926vw;
    width: 1.389vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-estimate__item-title::after {
    height: 10px;
    width: 15px;
  }
}
.p-estimate__item-text {
  color: var(--color-note);
  letter-spacing: 0.04em;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-estimate__item-text {
    font-size: 3.733vw;
    line-height: 6.4vw;
    margin-block-start: 6vw;
    width: 100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-estimate__item-text {
    font-size: 1.667vw;
    line-height: 2.963vw;
    margin-block-start: 2.037vw;
    width: 25.926vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-estimate__item-text {
    font-size: 18px;
    line-height: 32px;
    margin-block-start: 22px;
    width: 280px;
  }
}

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

.p-countermeasure__inner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-countermeasure__inner {
    height: 100vw;
    padding-block-start: 21.067vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-countermeasure__inner {
    height: 57.407vw;
    padding-block-start: 17.222vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-countermeasure__inner {
    height: 620px;
    padding-block-start: 186px;
  }
}

@media screen and (max-width: 768px) {
  .p-countermeasure__title {
    margin-inline-start: 30.8vw;
    width: 65.067vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-countermeasure__title {
    margin-inline-start: 35.556vw;
    width: 45.185vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-countermeasure__title {
    margin-inline-start: 384px;
    width: 488px;
  }
}

@media screen and (max-width: 768px) {
  .p-countermeasure__text {
    font-size: 3.733vw;
    line-height: 6.4vw;
    margin-block-start: 3.6vw;
    margin-inline-start: 30.8vw;
    width: 55.467vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-countermeasure__text {
    font-size: 2.222vw;
    line-height: 4.074vw;
    margin-block-start: 1.204vw;
    margin-inline-start: 35.648vw;
    width: 48.704vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-countermeasure__text {
    font-size: 24px;
    line-height: 44px;
    margin-block-start: 13px;
    margin-inline-start: 385px;
    width: 526px;
  }
}
.p-countermeasure__text .green {
  color: var(--color-primary);
}

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

.p-coupon__inner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-coupon__inner {
    height: 67.867vw;
    padding-block-start: 10.667vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-coupon__inner {
    height: 50vw;
    padding-block-start: 5.833vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-coupon__inner {
    height: 540px;
    padding-block-start: 63px;
  }
}

.p-coupon__title {
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-coupon__title {
    width: 61.733vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-coupon__title {
    width: 49.444vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-coupon__title {
    width: 534px;
  }
}

@media screen and (max-width: 768px) {
  .p-coupon__ticket {
    margin-block-start: 0vw;
    width: 100vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p-coupon__ticket {
    margin-block-start: -0.185vw;
    width: 92.593vw;
  }
}
@media screen and (min-width: 1080px) {
  .p-coupon__ticket {
    margin-block-start: -2px;
    width: 1000px;
  }
}

@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-color-tertiary {
  color: var(--color-tertiary);
}

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

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

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

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

.u-font-notoSerif {
  font-family: var(--font-NotoSerifJP);
}

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

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

.u-fw600 {
  font-weight: 600 !important;
}

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

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

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

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