@keyframes anim-slide-01 {
  0%, to {
    transform: translateX(0)
  }
  49.5% {
    transform: translateX(100%)
  }
  50.5% {
    transform: translateX(-100%)
  }
}
@keyframes anim-underline-01 {
  0% {
    background-position-x: 100%;
    background-size: 100% 1px
  }
  45% {
    background-position-x: 100%;
    background-size: 0 1px
  }
  55% {
    background-position-x: 0;
    background-size: 0 1px
  }
  to {
    background-position-x: 0;
    background-size: 100% 1px
  }
}
@keyframes anim-underline-02-hide {
  0% {
    background-position-x: 100%;
    background-size: 100% 1px
  }
  to {
    background-position-x: 100%;
    background-position: 100% 100%
  }
}
@keyframes anim-underline-02-show {
  0% {
    background-position-x: 0;
    background-size: 0 1px
  }
  to {
    background-position-x: 0;
    background-size: 100% 1px
  }
}
@keyframes da_anim-smooth-scroll-1 {
  0%, to {
    scroll-behavior: smooth
  }
}
@keyframes da_anim-smooth-scroll-2 {
  0%, to {
    scroll-behavior: smooth
  }
}
@keyframes smf-sending {
  0% {
    transform: rotate(0deg)
  }
  to {
    transform: rotate(1turn)
  }
}
.c-form__field .wpcf7-checkbox label input, .snow-monkey-form .smf-form .smf-checkboxes-control__control > .smf-label.smf-label label .smf-checkbox-control input, .visually-hidden {
  position: absolute;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  white-space: nowrap;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%)
}
.is-pc {
  display: none
}
@font-face {
  font-family: "Yu Gothic Medium";
  src: local("Yu Gothic Medium");
  font-weight: 400
}
@font-face {
  font-family: "Yu Gothic Medium";
  src: local("Yu Gothic Bold");
  font-weight: 700
}
*, ::after, ::before {
  margin: 0;
  padding: 0;
  box-sizing: border-box
}
:where([hidden]:not([hidden=until-found])) {
  display: none !important
}
:where(html) {
  -webkit-text-size-adjust: none
}
@supports not (min-block-size:100dvb) {
  :where(html) {
    block-size: 100%
  }
}
:where(body) {
  block-size: 100dvb;
  line-height: 1.5;
  font-family: system-ui, sans-serif;
  -webkit-font-smoothing: antialiased
}
:where(input, button, textarea, select) {
  font: inherit;
  color: inherit
}
:where(textarea) {
  resize: block
}
:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer
}
:where(:disabled), :where(label:has(>input:disabled), label:has(+input:disabled)) {
  cursor: not-allowed
}
:where(a) {
  text-underline-offset: .2ex
}
:where(ul, ol) {
  list-style: none
}
:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block
}
:where(img, picture, svg) {
  max-inline-size: 100%;
  block-size: auto
}
:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word
}
:where(h1, h2, h3) {
  line-height: calc(1em + .5rem)
}
:where(hr) {
  border: 0;
  -webkit-border-before: 1px solid;
  border-block-start: 1px solid;
  color: inherit;
  block-size: 0;
  overflow: visible
}
:where(:focus-visible) {
  outline: 2px solid var(--focus-color, Highlight);
  outline-offset: 2px
}
:where(p, h1, h2, h3, h4, h5, h6) {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit
}
:where(a) {
  text-decoration: none
}
:where(img, svg) {
  width: 100%;
  height: auto;
  vertical-align: top
}
:where(video) {
  width: 100%
}
:where(ul) {
  padding: 0;
  list-style: none
}
:where(em), :where(i) {
  font-style: normal
}
:where(button), :where(input[type=button], input[type=submit]) {
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: 0;
  cursor: pointer
}
:where(button) {
  padding: 0;
  font: inherit;
  background: 0 0;
  text-rendering: optimizeLegibility;
  letter-spacing: inherit
}
:where(input[type=button], input[type=submit]) {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  box-sizing: border-box
}
:where(table) {
  border-collapse: collapse;
  border-spacing: 0
}
:root {
  --color-base: #222;
  --color-black: #333;
  --color-accent: #1B9E60;
  --color-red: #FB0620;
  --font-family: "Hubot Sans", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", "Meiryo", sans-serif;
  --font-family-noto: "Noto Sans JP", sans-serif;
  --font-family-outfit: "Outfit", sans-serif;
  --ease: cubic-bezier(0, 0.4, 0.25, 1);
  --duration: 0.6s;
  --z-index-header: 10;
  --url-icon-arrow-right: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="%23000000"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.69565 12.7391L15 7.86957L7.69565 3V6.65218H1V9.08696H7.69565V12.7391Z"/></svg>');
  --url-icon-lightning: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="%23000000"><path d="M1 5.9244L9.38984 11.6365V8.31462L15 9.96411L6.85338 4V7.61856L1 5.9244Z"/></svg>');
  --url-icon-checked: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="%23000000"><path fill-rule="evenodd" clip-rule="evenodd" d="M2.66667 0H13.3333C14.8061 0 16 1.19391 16 2.66667V13.3333C16 14.8061 14.8061 16 13.3333 16H2.66667C1.19391 16 0 14.8061 0 13.3333V2.66667C0 1.19391 1.19391 0 2.66667 0ZM10.4992 5.37467C10.4241 5.40382 10.3555 5.44754 10.2973 5.50333H10.298C10.2923 5.50895 10.2869 5.51497 10.282 5.52133L7.44133 9.16L5.72867 7.43867C5.72166 7.43066 5.7139 7.42302 5.70623 7.41548C5.70369 7.41298 5.70116 7.41049 5.69867 7.408C5.63991 7.3528 5.5708 7.30978 5.49533 7.28142C5.41986 7.25306 5.33952 7.23993 5.25894 7.24278C5.17837 7.24563 5.09916 7.26441 5.02588 7.29803C4.95261 7.33165 4.88671 7.37945 4.832 7.43867C4.72077 7.55849 4.66148 7.71746 4.66711 7.88086C4.67273 8.04425 4.7428 8.19878 4.862 8.31067L7.026 10.4833L7.04267 10.4987C7.10151 10.5538 7.17069 10.5967 7.24621 10.625C7.32173 10.6532 7.40209 10.6662 7.48267 10.6632C7.56324 10.6603 7.64243 10.6414 7.71566 10.6076C7.78889 10.5739 7.85471 10.526 7.90933 10.4667L11.172 6.36667C11.2772 6.25122 11.3348 6.10027 11.3333 5.9441C11.3319 5.78792 11.2714 5.63809 11.164 5.52467C11.1087 5.46608 11.0423 5.41903 10.9687 5.38623C10.895 5.35342 10.8157 5.33551 10.7351 5.33353C10.6545 5.33155 10.5744 5.34553 10.4992 5.37467Z"/></svg>');
  --_margin-scale: 1;
  --_half-leading: 0.33333;
  --_global--line-height: calc(1 + var(--_half-leading)*2);
  --_space-unitless: var(--_global--line-height);
  --_ms1: calc(var(--_space-unitless)/3*3);
  --_ms-1: calc(var(--_space-unitless)/3*2);
  --_s1: calc(var(--_ms1)*1rem);
  --_s-1: calc(var(--_ms-1)*1rem);
  --_margin1: calc(var(--_s1)*var(--_margin-scale));
  --_margin-1: calc(var(--_s-1)*var(--_margin-scale));
  --_color-text: #333;
  --_light-color-gray: #ccc
}
html {
  font-size: calc(14px + 2*(100vw - 320px)/55);
  animation: da_anim-smooth-scroll-1 1s
}
html:focus-within {
  animation-name: da_anim-smooth-scroll-2;
  scroll-behavior: smooth
}
@supports not selector(::-internal-media-controls-overlay-cast-button) {
  html {
    scroll-behavior: smooth
  }
}
body {
  position: relative;
  font-family: var(--font-family);
  line-height: 1;
  letter-spacing: .04em;
  color: var(--color-base);
  font-feature-settings: "palt";
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}
a {
  color: currentColor
}
p strong {
  font-weight: 600
}
::-moz-placeholder {
  color: gray
}
::placeholder {
  color: gray
}
::-webkit-calendar-picker-indicator {
  background: url(../img/icon/calendar.svg)center/100%no-repeat
}
.smf-form .smf-item .smf-checkboxes-control__control > .smf-label {
  display: inline-block;
  margin-right: var(--_margin-1)
}
.smf-form .smf-item .smf-checkboxes-control--horizontal .smf-checkboxes-control__control > .smf-label {
  display: inline-block
}
.smf-progress-tracker {
  display: flex;
  flex-wrap: nowrap;
  list-style: none;
  margin-bottom: var(--_margin1);
  margin-left: 0;
  padding-left: 0
}
.smf-progress-tracker__item {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  position: relative;
  width: 33.33333%
}
.smf-progress-tracker__item:after, .smf-progress-tracker__item:before {
  background-color: var(--_light-color-gray);
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  top: 12px;
  left: 50%;
  right: 0
}
.smf-progress-tracker__item:before {
  left: 0;
  right: 50%
}
.smf-progress-tracker__item--complete:after, .smf-progress-tracker__item--input:before, .snow-monkey-form .smf-button-control.smf-button-control button[type=submit][data-action=back] .smf-sending, .snow-monkey-form .smf-sending[aria-hidden=true]::before, form.submitting .c-form__button::after {
  display: none
}
.smf-progress-tracker__item__number {
  align-items: center;
  background-color: var(--_light-color-gray);
  border-radius: 100%;
  color: #fff;
  display: flex;
  height: 24px;
  justify-content: center;
  letter-spacing: 0;
  overflow: hidden;
  position: relative;
  width: 24px;
  z-index: 1
}
.smf-progress-tracker__item__text {
  color: var(--_light-color-gray);
  margin-top: .5em
}
[data-screen=back] .smf-progress-tracker__item--input .smf-progress-tracker__item__number {
  background-color: var(--_color-text);
  font-weight: 700
}
[data-screen=back] .smf-progress-tracker__item--input .smf-progress-tracker__item__text {
  color: var(--_color-text);
  font-weight: 700
}
[data-screen=complete] .smf-progress-tracker__item--complete .smf-progress-tracker__item__number {
  background-color: var(--_color-text);
  font-weight: 700
}
[data-screen=complete] .smf-progress-tracker__item--complete .smf-progress-tracker__item__text {
  color: var(--_color-text);
  font-weight: 700
}
[data-screen=confirm] .smf-progress-tracker__item--confirm .smf-progress-tracker__item__number {
  background-color: var(--_color-text);
  font-weight: 700
}
[data-screen=confirm] .smf-progress-tracker__item--confirm .smf-progress-tracker__item__text {
  color: var(--_color-text);
  font-weight: 700
}
[data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__number {
  background-color: var(--_color-text);
  font-weight: 700
}
[data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__text {
  color: var(--_color-text);
  font-weight: 700
}
[data-screen=invalid] .smf-progress-tracker__item--input .smf-progress-tracker__item__number {
  background-color: var(--_color-text);
  font-weight: 700
}
[data-screen=invalid] .smf-progress-tracker__item--input .smf-progress-tracker__item__text {
  color: var(--_color-text);
  font-weight: 700
}
.smf-sending[aria-hidden=true] {
  visibility: hidden
}
.smf-sending:before {
  animation: smf-sending 2s ease-out 0s infinite;
  border: 1px solid rgba(0, 0, 0, .5019607843);
  border-radius: 100%;
  border-top-color: transparent;
  content: "";
  display: block;
  height: 10px;
  width: 10px
}
.snow-monkey-form[data-screen=back] .smf-progress-tracker__item--input .smf-progress-tracker__item__number, .snow-monkey-form[data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__number, .snow-monkey-form[data-screen=invalid] .smf-progress-tracker__item--input .smf-progress-tracker__item__number {
  background-color: transparent
}
.c-form__field .wpcf7-checkbox label, .snow-monkey-form .smf-form .smf-checkboxes-control__control > .smf-label.smf-label label, .snow-monkey-form[data-screen=back] .smf-progress-tracker__item--input .smf-progress-tracker__item__number::before, .snow-monkey-form[data-screen=complete] .smf-progress-tracker__item--complete .smf-progress-tracker__item__number::before, .snow-monkey-form[data-screen=confirm] .smf-progress-tracker__item--confirm .smf-progress-tracker__item__number::before, .snow-monkey-form[data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__number::before, .snow-monkey-form[data-screen=invalid] .smf-progress-tracker__item--input .smf-progress-tracker__item__number::before, [data-screen=back] .snow-monkey-form .smf-progress-tracker__item--confirm .smf-progress-tracker__item__number:before, [data-screen=confirm] .snow-monkey-form .smf-progress-tracker__item--confirm .smf-progress-tracker__item__number:before, [data-screen=input] .snow-monkey-form .smf-progress-tracker__item--input .smf-progress-tracker__item__number:before {
  display: block
}
.snow-monkey-form[data-screen=back] .smf-progress-tracker__item--input .smf-progress-tracker__item__text, .snow-monkey-form[data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__text, .snow-monkey-form[data-screen=invalid] .smf-progress-tracker__item--input .smf-progress-tracker__item__text {
  color: var(--color-base);
  font-weight: 400
}
.snow-monkey-form[data-screen=confirm] .smf-progress-tracker__item--confirm .smf-progress-tracker__item__number {
  background-color: transparent
}
.snow-monkey-form[data-screen=confirm] .smf-progress-tracker__item--confirm .smf-progress-tracker__item__text {
  color: var(--color-base);
  font-weight: 400
}
.c-form__field textarea, .snow-monkey-form[data-screen=confirm] .smf-placeholder {
  padding: 1.03125rem 1.25rem;
  font-size: .875rem;
  line-height: 1.6;
  background-color: #b7cfc3;
  border: 1px solid #c1d2cb;
  border-radius: .25rem
}
.snow-monkey-form[data-screen=confirm] .smf-placeholder {
  min-height: 3.5rem
}
.snow-monkey-form[data-screen=confirm] .smf-action {
  display: flex;
  flex-direction: column-reverse
}
.snow-monkey-form[data-screen=complete] .smf-progress-tracker__item--complete .smf-progress-tracker__item__number {
  background-color: transparent
}
.snow-monkey-form[data-screen=complete] .smf-progress-tracker__item--complete .smf-progress-tracker__item__text {
  color: var(--color-base);
  font-weight: 400
}
.snow-monkey-form .smf-progress-tracker {
  margin-top: 2.5rem
}
.snow-monkey-form .smf-progress-tracker__item:after, .snow-monkey-form .smf-progress-tracker__item:before {
  height: 2px;
  top: 11px;
  background-color: #aac8b7
}
.snow-monkey-form .smf-progress-tracker__item__number {
  overflow: hidden;
  position: relative;
  text-indent: 36px;
  background-color: transparent
}
.snow-monkey-form .smf-progress-tracker__item__number::after, .snow-monkey-form .smf-progress-tracker__item__number::before {
  content: "";
  position: absolute
}
.snow-monkey-form .smf-progress-tracker__item__number::before {
  display: none;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #83c5a5;
  border-radius: 50%
}
.snow-monkey-form .smf-progress-tracker__item__number::after {
  display: block;
  margin: auto;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--color-base)
}
.snow-monkey-form .smf-progress-tracker__item__text {
  display: block;
  margin-top: 1rem;
  font-size: .875rem;
  text-align: center;
  color: var(--color-base)
}
.snow-monkey-form .smf-form {
  display: grid;
  gap: 2rem 0;
  margin: 3rem 6.4%0
}
.c-form__unit.is-required .c-form__label label::after, .snow-monkey-form .smf-form .smf-item.is-required .smf-item__label__text::after {
  content: "＊";
  color: var(--color-red)
}
.snow-monkey-form .smf-form .smf-item--privacy {
  margin-top: 3.25rem
}
.snow-monkey-form .smf-form .smf-item--privacy .smf-item__col--label {
  text-align: center
}
.snow-monkey-form .smf-form .smf-item__col--label {
  font-size: .875rem
}
.snow-monkey-form .smf-form .smf-item__col--label a {
  text-decoration: underline;
  color: var(--color-accent)
}
.snow-monkey-form .smf-form .smf-item__col--controls {
  margin-top: .5rem
}
.c-form__field input[type=email], .c-form__field input[type=tel], .c-form__field input[type=text], .snow-monkey-form .smf-form .smf-text-control input, .snow-monkey-form .smf-form .smf-text-control textarea, .snow-monkey-form .smf-form .smf-textarea-control input, .snow-monkey-form .smf-form .smf-textarea-control textarea {
  width: 100%;
  padding: 1.03125rem 1.25rem;
  min-height: 3.5rem;
  font-size: .875rem;
  line-height: 1.6;
  background-color: #b7cfc3;
  border: 1px solid #c1d2cb;
  border-radius: .25rem
}
.c-form__field textarea {
  width: 100%
}
.c-form__field input[type=email].wpcf7-not-valid, .c-form__field input[type=tel].wpcf7-not-valid, .c-form__field input[type=text].wpcf7-not-valid, .c-form__field textarea.wpcf7-not-valid, .snow-monkey-form .smf-form .smf-text-control input[data-invalid="1"], .snow-monkey-form .smf-form .smf-text-control textarea[data-invalid="1"], .snow-monkey-form .smf-form .smf-textarea-control input[data-invalid="1"], .snow-monkey-form .smf-form .smf-textarea-control textarea[data-invalid="1"], .wpcf7.wpcf7 form.invalid .wpcf7-response-output {
  border-color: rgba(255, 160, 170, .4);
  background-color: #ffeff0
}
.c-form__field input[type=email]::-moz-placeholder, .c-form__field input[type=tel]::-moz-placeholder, .c-form__field input[type=text]::-moz-placeholder, .c-form__field textarea::-moz-placeholder, .snow-monkey-form .smf-form .smf-text-control input::-moz-placeholder, .snow-monkey-form .smf-form .smf-text-control textarea::-moz-placeholder, .snow-monkey-form .smf-form .smf-textarea-control input::-moz-placeholder, .snow-monkey-form .smf-form .smf-textarea-control textarea::-moz-placeholder {
  color: rgba(0, 0, 0, .5)
}
.c-form__field input[type=email]::placeholder, .c-form__field input[type=tel]::placeholder, .c-form__field input[type=text]::placeholder, .c-form__field textarea::placeholder, .snow-monkey-form .smf-form .smf-text-control input::placeholder, .snow-monkey-form .smf-form .smf-text-control textarea::placeholder, .snow-monkey-form .smf-form .smf-textarea-control input::placeholder, .snow-monkey-form .smf-form .smf-textarea-control textarea::placeholder {
  color: rgba(0, 0, 0, .5)
}
.snow-monkey-form .smf-form .smf-checkboxes-control__control {
  display: grid;
  gap: 1rem 0;
  margin-top: 1.5rem
}
.snow-monkey-form .smf-form .smf-checkboxes-control__control > .smf-label.smf-label {
  display: block;
  margin-right: 0;
  font-size: 1rem;
  line-height: 1.4285714286
}
.snow-monkey-form .smf-form .smf-checkboxes-control__control > .smf-label.smf-label label .smf-checkbox-control span {
  display: flex;
  align-items: center;
  position: relative;
  padding-left: 1.75rem;
  font-size: 1rem;
  line-height: 1.4285714286
}
.c-form__field .wpcf7-checkbox label span::before, .snow-monkey-form .smf-form .smf-checkboxes-control__control > .smf-label.smf-label label .smf-checkbox-control span::before {
  content: "";
  display: none;
  position: absolute;
  width: 1.25rem;
  height: 1.25rem;
  top: 0;
  left: 0;
  -webkit-mask-image: var(--url-icon-checked);
  mask-image: var(--url-icon-checked);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center
}
.snow-monkey-form .smf-form .smf-checkboxes-control__control > .smf-label.smf-label label .smf-checkbox-control span::after {
  content: "";
  display: block;
  position: absolute;
  width: 1.25rem;
  height: 1.25rem;
  top: 0;
  left: 0;
  background-color: #b7cfc3;
  border: 1px solid #c1d2cb;
  border-radius: .25rem;
  pointer-events: none
}
.c-form__field .wpcf7-checkbox label input:checked + span::before, .snow-monkey-form .smf-form .smf-checkboxes-control__control > .smf-label.smf-label label .smf-checkbox-control input:checked + span::before {
  display: block;
  background-color: var(--color-accent)
}
.c-form__field .wpcf7-checkbox label input:checked + span::after, .snow-monkey-form .smf-form .smf-checkboxes-control__control > .smf-label.smf-label label .smf-checkbox-control input:checked + span::after {
  display: none
}
.snow-monkey-form .smf-form .smf-error-messages {
  margin-top: .5rem;
  font-size: .875rem;
  line-height: 1.6;
  color: var(--color-red)
}
.snow-monkey-form .smf-action {
  margin-top: 2.25rem
}
.snow-monkey-form .smf-action:empty {
  display: none
}
.snow-monkey-form .smf-button-control.smf-button-control, .snow-monkey-form .smf-complete-content .wp-block-button a {
  display: flex;
  align-items: center;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  color: #fff
}
.snow-monkey-form .smf-button-control.smf-button-control + .smf-button-control {
  margin: 0 auto
}
.snow-monkey-form .smf-button-control.smf-button-control button[type=submit] {
  display: flex;
  align-items: center;
  position: relative;
  min-width: 11.4375rem;
  padding: 1.125rem 1.5rem;
  font-size: 1rem;
  font-weight: 600;
  background-color: transparent;
  text-align: left;
  color: #fff;
  background-image: none;
  background-color: var(--color-accent);
  border: 0;
  border-radius: 3.25rem
}
.snow-monkey-form .smf-button-control.smf-button-control button[type=submit][data-action=back] {
  display: block;
  min-width: auto;
  margin: 1.5rem auto 0;
  padding: 0;
  font-size: .875rem;
  font-weight: 400;
  line-height: 2;
  text-align: center;
  text-decoration: underline;
  color: var(--color-accent);
  background-color: transparent;
  border-radius: 0
}
.snow-monkey-form .smf-sending {
  margin: 0 1.25rem 0 auto
}
.snow-monkey-form .smf-sending:before {
  border: 1px solid #fff;
  border-top-color: transparent
}
.snow-monkey-form .smf-sending[aria-hidden=true] {
  visibility: visible
}
.snow-monkey-form .smf-sending[aria-hidden=true]::after {
  position: absolute;
  margin: auto 0;
  top: 0;
  right: 0;
  bottom: 0
}
.snow-monkey-form .smf-complete-content p, .snow-monkey-form .smf-system-error-content-ready {
  font-size: .875rem;
  line-height: 1.8571428571;
  text-align: center
}
.snow-monkey-form .smf-complete-content p + p {
  margin-top: 1rem
}
.snow-monkey-form .smf-complete-content .wp-block-buttons {
  justify-content: center;
  gap: 0 min(1rem, 4.2666666667vw);
  margin-top: 2.5rem
}
.snow-monkey-form .smf-complete-content .wp-block-button a {
  gap: 0 1.25rem;
  overflow: hidden;
  padding: 1.125rem 1.25rem 1.125rem 1.5rem;
  font-size: 1rem;
  font-weight: 700;
  background-color: var(--color-accent);
  border-radius: 3.25rem
}
.c-form__button::before, .snow-monkey-form .smf-complete-content .wp-block-button a::before {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
  border-radius: 3.25rem;
  background-color: #178853;
  pointer-events: none;
  opacity: 0;
  transform: translateX(-100%);
  transition: opacity var(--duration) var(--ease), transform var(--duration) var(--ease)
}
.snow-monkey-form .smf-complete-content .wp-block-button a::after, .snow-monkey-form .smf-sending[aria-hidden=true]::after {
  content: "";
  display: block;
  width: .875rem;
  height: .875rem;
  background-color: currentColor;
  -webkit-mask-image: var(--url-icon-arrow-right);
  mask-image: var(--url-icon-arrow-right);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  pointer-events: none
}
.snow-monkey-form .smf-system-error-content-ready {
  margin-top: 3rem
}
.g-header {
  position: absolute;
  z-index: var(--z-index-header);
  top: 0;
  left: 0
}
.g-header__logo {
  background-color: #fff
}
.g-header__logo a {
  display: flex;
  align-items: center;
  gap: 0 1rem;
  padding: 1.125rem 1.25rem 1.125rem 1.5rem
}
.g-footer__logo img, .g-header__logo img {
  flex: none;
  display: block;
  width: 4.5rem
}
.g-footer__logo img[src$=".png"], .g-header__logo img[src$=".png"], .p-menu-price__unit figure img[src$=".png"] {
  backface-visibility: hidden
}
.g-footer__logo span, .g-header__logo span {
  display: block;
  font-size: .75rem
}
.g-footer {
  padding: 3rem 0 1.25rem
}
.g-footer__logo a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 .875rem
}
.g-footer__logo img {
  width: 7.5rem
}
.g-footer__logo span {
  color: #454545
}
.g-footer__nav {
  margin-top: 3rem
}
.g-footer__nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.25rem
}
.g-footer__nav li {
  font-size: .625rem
}
.g-footer__copyright {
  margin-top: 3.5rem;
  text-align: center
}
.g-footer__copyright small {
  font-size: .625rem;
  color: #909090
}
.wpcf7.wpcf7 form.sent .wpcf7-response-output {
  display: none;
  border-color: #aac7b9;
  background-color: #b8d6c8
}
.wpcf7.wpcf7 form .wpcf7-response-output {
  margin-top: 3rem;
  padding: 1.03125rem 1.25rem;
  line-height: 1.5;
  border: 1px solid #ccc;
  background-color: #e0e0e0;
  border-radius: .25rem
}
.c-form__units {
  display: grid;
  gap: 2rem 0
}
.c-form__field, .c-form__label {
  font-size: .875rem
}
.c-form__label em {
  font-style: normal;
  color: var(--color-warning)
}
.c-form__field {
  margin-top: .5rem;
  line-height: 1.6
}
.c-form.-confirm .c-form__field {
  min-height: 3.5rem;
  padding: 1.03125rem 1.25rem;
  background-color: #b7cfc3;
  border: 1px solid #c1d2cb;
  border-radius: .25rem
}
.c-form__field textarea {
  min-height: 10.5rem
}
.c-form__field .wpcf7-not-valid-tip {
  display: block;
  margin-top: .25rem;
  font-size: .875rem;
  line-height: 1.5;
  color: var(--color-red)
}
.c-form__field .wpcf7-not-valid-tip:empty {
  display: none
}
.c-form__field .wpcf7-checkbox + .wpcf7-not-valid-tip {
  margin-top: 1rem
}
.c-form__field .wpcf7-checkbox {
  display: grid;
  gap: 1rem 0;
  margin-top: 1.5rem
}
.c-form__field .wpcf7-checkbox label span {
  display: block;
  position: relative;
  padding-left: 1.75rem;
  font-size: 1rem;
  line-height: 1.4285714286
}
.c-form__field .wpcf7-checkbox label span::after {
  content: "";
  display: block;
  position: absolute;
  width: 1.25rem;
  height: 1.25rem;
  top: 0;
  left: 0;
  background-color: #b7cfc3;
  border: 1px solid #dfdfed;
  border-radius: .25rem;
  pointer-events: none
}
.c-form__field .wpcf7-list-item {
  margin-left: 0
}
.c-form__privacy {
  margin-top: 3rem
}
.c-form__privacy p {
  font-size: 1rem;
  line-height: 1.6;
  text-align: center
}
.c-form__action input.wpcf7-previous, .c-form__privacy a {
  color: var(--color-accent);
  text-decoration: underline
}
.c-form__action {
  margin-top: 2.25rem
}
.c-form__action input.wpcf7-previous {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin: 1rem auto 0;
  font-size: .875rem;
  line-height: 2;
  text-align: center;
  background-color: transparent
}
.c-form__action .wpcf7-spinner {
  position: absolute;
  margin: auto 0;
  inset: 0 1rem 0 auto;
  pointer-events: none
}
.c-form__button {
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 11.4375rem;
  margin: 0 auto;
  color: #fff;
  background-color: var(--color-accent);
  border-radius: 3.25rem
}
.c-form__button::after {
  content: "";
  display: block;
  position: absolute;
  width: .875rem;
  height: .875rem;
  margin: auto 0;
  top: 0;
  right: 1.25rem;
  bottom: 0;
  background-color: currentColor;
  -webkit-mask-image: var(--url-icon-arrow-right);
  mask-image: var(--url-icon-arrow-right);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  pointer-events: none
}
.c-form__button input {
  display: block;
  position: relative;
  width: 100%;
  padding: 1.125rem 1.5rem;
  font-size: 1rem;
  font-weight: 600;
  background-color: transparent;
  text-align: left
}
.c-form__message {
  display: none;
  margin-top: 3rem;
  padding: 1.03125rem 1.25rem;
  line-height: 1.5;
  border: 1px solid #ccc;
  background-color: #e0e0e0;
  border-radius: .25rem
}
.wpcf7.wpcf7 form.sent .c-form__message.-complete {
  display: block;
  border-color: #aac7b9;
  background-color: #b8d6c8
}
.p-cover {
  position: relative;
  height: 35.4375rem;
  max-height: 100svh
}
.p-cover__img {
  position: relative;
  height: 100%
}
.p-cover__img img {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover
}
.p-cover__content {
  position: absolute;
  top: 10rem;
  left: 8%
}
.p-cover__content h1 {
  width: 15.375rem
}
.p-cover__content p {
  margin-top: 1rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: 1.8;
  color: #fff
}
.p-cover__document {
  position: absolute;
  z-index: 1;
  width: 21.5625rem;
  bottom: -6.25rem;
  right: 0;
  box-shadow: 0 .125rem .3125rem 0 rgba(0, 0, 0, .16)
}
.p-cover__document a {
  display: block;
  position: relative;
  padding: 1.5rem 0 1.5rem 1rem;
  background-color: #fff
}
.p-cover__document div:nth-child(1) span {
  display: block;
  font-weight: 600;
  color: var(--color-black)
}
.p-cover__document div:nth-child(1) span:nth-child(1), .p-trouble__title > span:nth-child(1) {
  font-size: .875rem
}
.p-cover__document div:nth-child(1) span:nth-child(2) {
  margin-top: .375rem;
  font-size: 1rem;
  line-height: 1.4375
}
.p-cover__document div:nth-child(2) {
  display: flex;
  align-items: center;
  gap: 0 .875rem;
  overflow: hidden;
  position: absolute;
  z-index: 1;
  padding: .625rem .875rem;
  right: 2.75rem;
  bottom: .75rem;
  font-size: .8125rem;
  font-weight: 600;
  color: #fff;
  background-color: var(--color-accent);
  border-radius: 4rem
}
.p-cover__document div:nth-child(2)::after {
  content: "";
  display: block;
  width: .75rem;
  height: .75rem;
  background-color: currentColor;
  -webkit-mask-image: var(--url-icon-arrow-right);
  mask-image: var(--url-icon-arrow-right);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center
}
.p-cover__document div:nth-child(2) span {
  position: relative
}
.p-cover__document img {
  position: absolute;
  width: 28.9855072464%;
  right: 1rem;
  bottom: 1.875rem;
  transition: transform var(--duration) var(--ease);
  transform-origin: bottom center
}
.p-trouble {
  position: relative;
  padding: 10rem 0 2rem;
  background: url(../img/page/trouble-bg.jpg)top center;
  background-size: cover
}
.p-trouble::before {
  content: "";
  display: block;
  position: absolute;
  width: 38.9333333333vw;
  height: 25.6vw;
  right: 0;
  bottom: 0;
  background-color: #b7cfc3;
  -webkit-clip-path: polygon(100%0, 0 100%, 100% 100%);
  clip-path: polygon(100%0, 0 100%, 100% 100%)
}
.p-trouble__title {
  font-weight: 600;
  letter-spacing: .1em;
  text-align: center
}
.p-trouble__title > span {
  display: block
}
.p-trouble__title > span:nth-child(2) {
  margin-top: .5rem;
  font-size: .875rem
}
.p-trouble__title > span:nth-child(2) span {
  font-size: 1.25rem;
  letter-spacing: .075em
}
.p-trouble__units {
  display: grid;
  gap: 1.75rem 0;
  margin-top: 2rem;
  padding: 0 8%
}
.p-trouble__unit {
  position: relative;
  aspect-ratio: 315/325;
  background-color: #f7f7f7
}
.p-trouble__unit:nth-child(1) div {
  width: 95.873015873%;
  top: 24.3076923077%;
  left: 1.9047619048%
}
.p-trouble__unit:nth-child(1) p span {
  background-color: #d5e6e7
}
.p-trouble__unit:nth-child(2) div {
  width: 106.3492063492%;
  margin: 0-3.1746031746%;
  bottom: 0;
  left: 0
}
.p-trouble__unit:nth-child(2) p span {
  background-color: #e0efdc
}
.p-trouble__unit:nth-child(3) div {
  width: 100%;
  top: 12.3076923077%;
  left: 0%
}
.p-trouble__unit:nth-child(3) p span {
  background-color: #d5e7e4
}
.p-trouble__unit div {
  position: absolute
}
.p-trouble__unit p {
  position: absolute;
  top: 4.6153846154%;
  right: 3.1746031746%;
  bottom: 4.6153846154%;
  font-size: 4.2666666667vw;
  font-weight: 600;
  line-height: 8.5333333333vw;
  writing-mode: vertical-rl;
  text-orientation: upright
}
.p-trouble__unit p span {
  padding: 2.1333333333vw .2666666667vw;
  background-color: red;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone
}
.p-menu {
  position: relative;
  padding: 2.25rem 2.6666666667% 1.75rem;
  background-color: #f5f5f5
}
.p-menu__title {
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .1em;
  text-align: center
}
.p-menu__title > span:nth-child(2) {
  font-size: 1.125rem;
  letter-spacing: .075em
}
.p-menu__units {
  display: grid;
  gap: 1.25rem 0;
  margin-top: 1.25rem;
  counter-reset: itemCounter
}
.p-menu-unit {
  position: relative;
  counter-increment: itemCounter;
  padding-top: 1.25rem;
  border-top: 1px solid #cbcbcb
}
.p-menu-unit:first-child {
  padding-top: 0;
  border-top: none
}
.p-menu-price__unit figure div, .p-menu-unit__title {
  position: relative
}
.p-menu-unit__title mark {
  display: flex;
  align-items: center;
  gap: 0 .5rem;
  background-color: transparent
}
.p-menu-unit__title mark span {
  padding: .1875rem .375rem;
  font-size: .75rem;
  font-weight: 600;
  color: #fff;
  background-color: var(--color-accent)
}
.p-menu-unit__title mark::before {
  content: "";
  display: block;
  width: 1.625rem;
  height: 1.625rem;
  background-color: #fed13a;
  -webkit-mask-image: var(--url-icon-lightning);
  mask-image: var(--url-icon-lightning);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center
}
.p-menu-unit__title mark::after {
  content: counter(itemCounter, decimal-leading-zero);
  display: block;
  position: relative;
  font-size: 3rem;
  font-family: var(--font-family-outfit);
  font-style: italic;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -.02em;
  text-align: center
}
.p-menu-unit__title > span {
  position: relative;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin: .25rem 0 0 11.8309859155%;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.4
}
.p-menu-unit__title > span::before {
  content: "";
  display: block;
  position: absolute;
  width: .875rem;
  height: 1px;
  top: .5rem;
  left: -1.1875rem;
  background-color: var(--color-base);
  transform: rotate(45deg)
}
.p-menu-unit__title > span span {
  font-size: .875rem
}
.p-menu-unit__desc {
  margin-top: 1rem
}
.p-menu-unit__desc p {
  font-size: .875rem;
  line-height: 1.7142857143
}
.p-menu-unit__desc p + p {
  margin-top: 1em
}
.p-menu-unit__desc p a {
  text-decoration: underline
}
.p-menu-price {
  padding: 1.875rem 5.6338028169%0
}
.p-menu-price__title {
  padding: .3125rem;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.7857142857;
  text-align: center;
  color: #000;
  background-color: #fff;
  border: 1px solid #cbcbcb
}
.p-menu-price__units {
  display: grid;
  gap: 2rem 0;
  margin-top: 1.5rem
}
.p-menu-price__unit:last-child figure div::before, .p-menu-price__unit:last-child figure::before {
  display: none
}
.p-menu-price__unit h5 {
  font-size: .875rem;
  line-height: 1.7142857143;
  text-align: center
}
.p-menu-price__unit figure {
  position: relative;
  margin-top: .75rem
}
.p-menu-price__unit figcaption {
  margin-top: 1rem;
  font-size: .875rem;
  line-height: 1.7142857143
}
.p-menu-price__desc {
  margin: 1.875rem -5.6338028169%0
}
.p-menu-price__desc p {
  font-size: .8125rem;
  line-height: 1.6923076923
}
.p-banner {
  display: grid
}
.p-banner__bg {
  grid-area: 1/-1;
  height: 100%
}
.p-banner__bg div {
  position: relative;
  height: 100%
}
.p-banner__bg img {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover
}
.p-banner__content {
  grid-area: 1/-1;
  position: relative;
  padding: 8rem 0 6.25rem
}
.p-banner__catch, .p-banner__lead {
  font-weight: 600;
  text-align: center;
  color: #fff;
  text-shadow: 0 .1875rem .375rem rgba(0, 0, 0, .16)
}
.p-banner__lead {
  font-size: .8125rem;
  line-height: 1.5
}
.p-banner__catch {
  margin-top: 1rem
}
.p-banner__catch > span {
  display: block
}
.p-banner__catch > span:nth-child(1) {
  font-size: 1.375rem
}
.p-banner__catch > span:nth-child(2) {
  margin-top: .5rem;
  font-size: 1.6875rem
}
.p-banner__catch > span:nth-child(2) span {
  margin-right: .125rem;
  font-size: 3rem;
  font-family: var(--font-family-outfit);
  font-weight: 500
}
.p-banner__title {
  width: -moz-fit-content;
  width: fit-content;
  margin: .5625rem auto 0;
  padding: .5rem .625rem;
  font-size: .8125rem;
  text-align: center;
  color: #000;
  background-color: rgba(187, 203, 55, .75);
  border: 1px solid rgba(255, 255, 255, .75)
}
.p-banner__button, .p-fee__unit ul {
  margin-top: 1.25rem
}
.p-banner__button a {
  display: flex;
  align-items: center;
  overflow: hidden;
  width: 10.125rem;
  margin: 0 auto;
  padding: 1.125rem 1.25rem 1.125rem 1.5625rem;
  font-size: .8125rem;
  font-weight: 600;
  color: #fff;
  background-color: var(--color-accent);
  border-radius: 4rem;
  transition: background var(--duration) var(--ease)
}
.p-banner__button a::after {
  content: "";
  display: block;
  width: .75rem;
  height: .75rem;
  margin-left: auto;
  background-color: currentColor;
  -webkit-mask-image: var(--url-icon-arrow-right);
  mask-image: var(--url-icon-arrow-right);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center
}
.p-banner__button a span {
  position: relative
}
.p-banner__document {
  position: absolute;
  width: 24.5333333333%;
  right: 3.2%;
  bottom: 1.75rem
}
.p-fee {
  padding: 2.25rem 0
}
.p-fee__title {
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: .075em;
  text-align: center
}
.p-fee__title::after, .p-request__title::after {
  content: "";
  display: block;
  width: 1.25rem;
  height: 2px;
  margin: 1.5rem auto 0;
  background-color: var(--color-accent)
}
.p-fee__lead {
  margin: 2.25rem 2.6666666667%0
}
.p-fee__lead p {
  font-size: .875rem;
  line-height: 1.7142857143
}
.p-fee__lead p + p {
  margin-top: 1rem
}
.p-fee__lead p.note, .p-fee__note p {
  font-size: .8125rem
}
.p-fee__figure {
  margin-top: 2.25rem
}
.p-fee__figure .outer {
  overflow-x: auto;
  margin-bottom: -1rem;
  padding-bottom: 1rem
}
.p-fee__figure .inner {
  width: 50.25rem;
  padding: 0 6.4vw
}
.p-fee__units {
  display: grid;
  gap: 1.75rem 0;
  margin: 2.25rem 2.6666666667%0 6.4%
}
.p-fee__unit h3, .p-fee__unit li {
  position: relative;
  font-size: .875rem
}
.p-fee__unit h3 {
  font-weight: 600;
  letter-spacing: .1em
}
.p-fee__unit h3::before, .p-fee__unit li::before {
  content: "";
  display: block;
  position: absolute;
  background-color: var(--color-accent)
}
.p-fee__unit h3::before {
  width: .875rem;
  height: 2px;
  top: .5rem;
  left: -1.1875rem;
  transform: rotate(-45deg)
}
.p-fee__unit ul {
  display: grid;
  gap: .5rem 0
}
.p-fee__unit li {
  line-height: 1.7142857143
}
.p-fee__unit li::before {
  width: .3125rem;
  height: .3125rem;
  top: .625rem;
  left: -.75rem;
  border-radius: 50%
}
.p-fee__note {
  margin: 1.25rem 2.6666666667%0 6.4%
}
.p-fee__note p {
  line-height: 1.6923076923
}
.p-fee__note p a {
  text-decoration: underline
}
.p-request {
  padding: 2.25rem 0 4rem;
  background-color: #d9e6df
}
.p-request__title {
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: .075em;
  text-align: center
}
.p-request__lead {
  margin-top: 2.25rem
}
.p-request.-complete .p-request__lead div:nth-child(1) p, .p-request__lead.-complete div:nth-child(1) p {
  font-size: 1rem
}
.p-request__lead div:nth-child(1) p {
  font-size: .875rem;
  line-height: 1.8;
  text-align: center
}
.p-request__lead div:nth-child(2) {
  margin-top: 1rem
}
.p-request__lead div:nth-child(2) p {
  font-size: .75rem;
  line-height: 1.8;
  text-align: center
}
.p-request__lead div:nth-child(2) p strong {
  color: var(--color-red)
}
.p-request__form {
  margin: 3rem 6.4%0
}
.p-request-step + .p-request__form {
  margin-top: 3rem
}
.p-request__message {
  margin: 4rem 6.4%0
}
.p-request__message p, .p-request__note p {
  font-size: .875rem;
  line-height: 1.8571428571;
  text-align: center
}
.p-request__button {
  margin-top: 2.5rem
}
.p-request__button a {
  display: flex;
  align-items: center;
  gap: 0 1.25rem;
  position: relative;
  overflow: hidden;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  padding: 1.125rem 1.25rem 1.125rem 1.5rem;
  color: #fff;
  background-color: var(--color-accent);
  border-radius: 3.25rem
}
.p-request__button a::before {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
  border-radius: 3.25rem;
  background-color: #178853;
  pointer-events: none;
  opacity: 0;
  transform: translateX(-100%);
  transition: opacity var(--duration) var(--ease), transform var(--duration) var(--ease)
}
.p-request__button a::after {
  content: "";
  display: block;
  width: .875rem;
  height: .875rem;
  background-color: currentColor;
  -webkit-mask-image: var(--url-icon-arrow-right);
  mask-image: var(--url-icon-arrow-right);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  pointer-events: none
}
.p-request__button span {
  display: block;
  position: relative;
  font-size: 1rem;
  font-weight: 700
}
.p-request__note {
  margin: 4rem 6.4%0;
  padding-top: 4rem;
  border-top: 1px solid #c1d2cb
}
.p-request__note p + p {
  margin-top: .75rem
}
.p-request-step {
  margin: 2.5rem 6.4%0
}
.p-request-step__units {
  display: flex;
  justify-content: space-between;
  position: relative
}
.p-request-step__units::before {
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  top: 11px;
  right: 14px;
  left: 14px;
  background-color: #aac8b7
}
.p-request-step__unit {
  position: relative
}
.p-request-step__unit.is-active i {
  background-color: #83c5a5
}
.p-request-step__unit i {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  margin: 0 auto;
  border-radius: 50%
}
.p-request-step__unit i span {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: currentColor
}
.p-request-step__unit > span {
  display: block;
  margin-top: 1rem;
  font-size: .875rem;
  text-align: center
}
@media screen and (min-width:425px) {
  html {
    font-size: 1rem
  }
}
@media screen and (min-width:768px) {
  .is-sp {
    display: none
  }
  .is-pc {
    display: revert
  }
  html {
    font-size: 1.3671875vw
  }
  .snow-monkey-form .smf-progress-tracker {
    margin: 3rem 7.5630252101%0
  }
  .snow-monkey-form .smf-progress-tracker__item__text, .snow-monkey-form[data-screen=confirm] .smf-placeholder {
    font-size: 1rem
  }
  .snow-monkey-form .smf-form {
    gap: 2.75rem 0;
    margin: 6rem 0 0
  }
  .snow-monkey-form .smf-form .smf-item--privacy {
    margin-top: 2.375rem
  }
  .snow-monkey-form .smf-complete-content p, .snow-monkey-form .smf-form .smf-item__col--label, .snow-monkey-form .smf-form .smf-text-control input, .snow-monkey-form .smf-form .smf-text-control textarea, .snow-monkey-form .smf-form .smf-textarea-control input, .snow-monkey-form .smf-form .smf-textarea-control textarea {
    font-size: 1rem
  }
  .snow-monkey-form .smf-form .smf-item__col--controls {
    margin-top: .625rem
  }
  .snow-monkey-form .smf-form .smf-checkboxes-control__control {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2rem
  }
  .snow-monkey-form .smf-complete-content .wp-block-buttons {
    gap: 0 min(1rem, 1.1111111111vw)
  }
  .snow-monkey-form .smf-system-error-content-ready {
    margin-top: 6rem;
    font-size: 1rem
  }
  .g-header__logo a {
    display: block;
    padding: 1.875rem 1.75rem
  }
  .g-header__logo img {
    margin: 0 auto
  }
  .g-header__logo span {
    margin-top: .5rem;
    font-size: .9375rem
  }
  .g-footer {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto;
    grid-template-areas: "logo logo""copyright nav";
    gap: 1.75rem 0;
    padding: 2rem 4.4444444444% 1.75rem
  }
  .g-footer__logo {
    grid-area: logo
  }
  .g-footer__logo a {
    justify-content: flex-start;
    gap: 0 1.125rem
  }
  .g-footer__logo img, .g-header__logo img {
    width: min(9.6875rem, 10.7638888889vw)
  }
  .g-footer__logo span {
    font-size: .9375rem
  }
  .g-footer__nav {
    grid-area: nav;
    margin-top: 0
  }
  .g-footer__nav ul {
    justify-content: flex-start;
    gap: min(1.25rem, 1.3888888889vw)
  }
  .g-footer__nav li {
    font-size: min(1rem, 1.1111111111vw)
  }
  .g-footer__copyright {
    grid-area: copyright;
    margin: 0 min(1.5rem, 1.6666666667vw)0 0;
    padding-right: min(1.5rem, 1.6666666667vw);
    text-align: left;
    border-right: 1px solid #999
  }
  .g-footer__copyright small {
    font-size: min(.875rem, .9722222222vw)
  }
  .c-form__units {
    gap: 2.75rem 0
  }
  .c-form__field input[type=email], .c-form__field input[type=tel], .c-form__field input[type=text], .c-form__field textarea, .c-form__label, .p-fee__lead p.note {
    font-size: 1rem
  }
  .c-form__field {
    margin-top: .625rem
  }
  .c-form__field .wpcf7-checkbox {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2rem
  }
  .c-form__privacy {
    margin-top: 5rem
  }
  .p-cover {
    height: 48rem
  }
  .p-cover__content {
    top: 14.625rem;
    left: 6.6666666667%
  }
  .p-cover__content h1 {
    width: min(41.875rem, 46.5277777778vw)
  }
  .p-cover__content p {
    margin-top: 1.5rem;
    font-size: 1.25rem
  }
  .p-cover__document {
    width: 53.4722222222%
  }
  .p-cover__document a {
    padding: 2.75rem 0 2rem 2.5rem
  }
  .p-cover__document div:nth-child(1) span:nth-child(1), .p-trouble__title > span:nth-child(1) {
    font-size: 1.125rem
  }
  .p-cover__document div:nth-child(1) span:nth-child(2) {
    font-size: 1.625rem
  }
  .p-cover__document div:nth-child(2) {
    display: block;
    position: relative;
    width: 14.5rem;
    margin: 0 auto;
    padding: 1.125rem;
    margin-top: 2rem;
    right: auto;
    bottom: auto;
    font-size: 1rem;
    text-align: center
  }
  .p-cover__document div:nth-child(2)::after {
    position: absolute;
    margin: auto 0;
    top: 0;
    right: 1.25rem;
    bottom: 0
  }
  .p-cover__document img {
    width: 33.7662337662%;
    right: 3.8961038961%;
    bottom: 5.625rem
  }
  .p-trouble {
    padding: 10.5rem 0 5rem;
    background-image: url(../img/page/trouble-bg@pc.jpg)
  }
  .p-trouble::before {
    width: 13.8888888889vw;
    height: 9.0277777778vw
  }
  .p-trouble__title > span:nth-child(2) {
    margin-top: .75rem;
    font-size: 1.5rem
  }
  .p-trouble__title > span:nth-child(2) span {
    font-size: 2.125rem
  }
  .p-trouble__units {
    display: flex;
    gap: 0 min(3.5rem, 3.8888888889vw);
    margin-top: 2.625rem;
    padding: 0 10%
  }
  .p-trouble__unit {
    flex: 1;
    aspect-ratio: 347/435
  }
  .p-trouble__unit:nth-child(1) {
    overflow: hidden
  }
  .p-trouble__unit:nth-child(1) div {
    width: 100.8645533141%;
    top: 28.7356321839%;
    left: 4.6109510086%
  }
  .p-trouble__unit:nth-child(2) div {
    width: 108.6455331412%;
    margin: 0-4.3227665706%
  }
  .p-trouble__unit:nth-child(3) div {
    width: 100%;
    top: 16.5517241379%;
    left: 0%
  }
  .p-trouble__unit p {
    top: 3.908045977%;
    right: 3.4582132565%;
    bottom: 3.908045977%;
    font-size: max(1.125rem, 1.25vw);
    line-height: 2
  }
  .p-trouble__unit p span {
    padding: .5555555556vw .0694444444vw
  }
  .p-menu {
    padding: 6rem 16.9444444444% 4.625rem
  }
  .p-menu__title {
    font-size: 1.625rem
  }
  .p-menu__title > span:nth-child(1), .p-request.-complete .p-request__lead div:nth-child(1) p, .p-request__lead.-complete div:nth-child(1) p {
    font-size: 1.375rem
  }
  .p-menu__title > span:nth-child(2) {
    font-size: 2.25rem
  }
  .p-menu__units {
    gap: 3rem 0;
    margin-top: 3rem
  }
  .p-menu-unit {
    padding-top: 3rem
  }
  .p-menu-unit__title {
	  margin-top:50px;
    <--padding-left: 11.875rem-->
  }
  .p-menu-unit__title mark {
    gap: 0 .8125rem;
    position: absolute;
    top: 0;
    left: -3.0625rem
  }
  .p-menu-unit__title mark span {
    padding: .375rem .5625rem;
    font-size: .9375rem
  }
  .p-menu-unit__title mark::before {
    width: 2.25rem;
    height: 2.25rem
  }
  .p-menu-unit__title mark::after {
    transform: translateX(-.25rem)
  }
  .p-menu-unit__title > span {
    flex: 1;
    margin: 0;
    padding-top: .25rem;
    font-size: 1.75rem
  }
  .p-menu-unit__title > span::before {
    width: 1.5rem;
    top: 1.25rem;
    left: -1.9375rem
  }
  .p-menu-price__unit h5, .p-menu-unit__title > span span {
    font-size: 1.125rem
  }
  .p-menu-unit__desc {
    <--margin: 1rem 0 0 11.875rem-->
  }
  .p-menu-price {
    padding: 2.625rem 3.781512605%0
  }
  .p-menu-price__title {
    padding: .625rem;
    font-size: 1rem
  }
  .p-menu-price__units {
    display: flex;
    gap: 0 min(4.125rem, 4.5833333333vw);
    margin-top: 1.5rem
  }
  .p-menu-price__unit {
    flex: 1
  }
  .p-menu-price__unit figure {
    margin-top: 1rem
  }
  .p-menu-price__unit figcaption {
    margin-top: 1rem;
    font-size: 1rem
  }
  .p-menu-price__desc {
    margin: 1.5rem 0 0
  }
  .p-menu-price__desc p {
    font-size: .875rem
  }
  .p-banner__content {
    padding: 8rem 0
  }
  .p-banner__lead {
    font-size: 1.125rem
  }
  .p-banner__catch > span:nth-child(1) {
    font-size: 2.5rem
  }
  .p-banner__catch > span:nth-child(2) {
    margin-top: .75rem;
    font-size: 3.375rem
  }
  .p-banner__catch > span:nth-child(2) span {
    font-size: 6rem
  }
  .p-banner__title {
    margin-top: 1rem;
    font-size: 1rem
  }
  .p-banner__button {
    margin-top: 2.625rem
  }
  .p-banner__button a {
    display: block;
    position: relative;
    width: 14.5rem;
    padding: 1.125rem;
    font-size: 1rem;
    text-align: center
  }
  .p-banner__button a::after {
    position: absolute;
    margin: auto 0;
    top: 0;
    right: 1.25rem;
    bottom: 0
  }
  .p-banner__document {
    width: 17.9166666667%;
    right: 8.6111111111%;
    bottom: 6.625rem
  }
  .p-fee {
    padding: 5rem 16.9444444444% 5.25rem
  }
  .p-fee__title {
    font-size: 1.25rem
  }
  .p-fee__lead {
    margin: 2.5rem 0 0
  }
  .p-fee__lead p {
    font-size: 1.125rem;
    text-align: center
  }
  .p-fee__lead p + p {
    margin-top: .75rem
  }
  .p-fee__figure {
    margin-top: 2.5rem
  }
  .p-fee__figure .outer {
    overflow-x: visible;
    margin-bottom: 0;
    padding-bottom: 0
  }
  .p-fee__figure .inner {
    width: auto;
    max-width: 50.25rem;
    padding: 0
  }
  .p-fee__units {
    gap: 2.5rem 0;
    margin: 4rem 0 0
  }
  .p-fee__unit {
    padding-left: 1.25rem
  }
  .p-fee__unit h3 {
    font-size: 1.5rem
  }
  .p-fee__unit h3::before {
    width: 1.0625rem;
    top: 1.25rem;
    left: -1.3125rem
  }
  .p-fee__unit ul {
    gap: 0;
    margin-top: 1.25rem
  }
  .p-fee__unit li {
    font-size: 1rem;
    line-height: 1.875
  }
  .p-fee__unit li::before {
    width: .375rem;
    height: .375rem;
    left: -.875rem
  }
  .p-fee__note {
    margin: 2.5rem 0 0
  }
  .p-fee__note p, .p-request-step__unit > span, .p-request__message p, .p-request__note p {
    font-size: 1rem
  }
  .p-request {
    padding: 5rem 16.9444444444%
  }
  .p-request__title {
    font-size: 1.25rem
  }
  .p-request__lead {
    margin-top: 5rem
  }
  .p-request__lead div:nth-child(1) p {
    font-size: 1rem
  }
  .p-request__lead div:nth-child(2) p {
    font-size: .9375rem
  }
  .p-request__form {
    margin: 4rem 0 0
  }
  .p-request-step + .p-request__form {
    margin-top: 6rem
  }
  .p-request__message {
    margin: 5.625rem 0 0
  }
  .p-request__note {
    margin: 5rem 0 0;
    padding-top: 5rem
  }
  .p-request-step {
    margin: 3rem 19.1176470588%0
  }
}
@media screen and (min-width:1024px) {
  html {
    font-size: calc(14px + 2*(100vw - 1024px)/416)
  }
  .g-footer__logo img, .g-header__logo img {
    width: 155px
  }
}
@media screen and (min-width:1440px) {
  html {
    font-size: calc(16px + 2*(100vw - 1440px)/480)
  }
}
@media screen and (min-width:1920px) {
  html {
    font-size: 18px
  }
}
@media (hover:hover) {
  .snow-monkey-form .smf-button-control.smf-button-control button[type=submit], .snow-monkey-form .smf-complete-content .wp-block-button a {
    transition: background var(--duration) var(--ease)
  }
  .snow-monkey-form .smf-button-control.smf-button-control button[type=submit]:hover, .snow-monkey-form .smf-complete-content .wp-block-button a:hover {
    background-color: #178853
  }
  .c-form__privacy a, .g-footer__logo a, .g-header__logo a, .snow-monkey-form .smf-button-control.smf-button-control button[type=submit][data-action=back] {
    transition: opacity var(--duration) var(--ease)
  }
  .snow-monkey-form .smf-button-control.smf-button-control button[type=submit][data-action=back]:hover {
    opacity: .6;
    background-color: transparent
  }
  .c-form__privacy a:hover, .g-footer__logo a:hover, .g-header__logo a:hover {
    opacity: .6
  }
  .c-form__button, .g-footer__nav li a, .p-fee__note p a, .p-menu-unit__desc p a {
    transition: color var(--duration) var(--ease)
  }
  .g-footer__nav li a:hover, .p-fee__note p a:hover, .p-menu-unit__desc p a:hover {
    color: var(--color-accent)
  }
  .c-form__button:hover, .c-form__button:hover input {
    color: #fff
  }
  .c-form__button:hover::before, .p-request__button a:hover::before {
    opacity: 1;
    transform: translateX(0)
  }
  .c-form__button:hover::after {
    background-color: #fff
  }
  .p-cover__document a:hover div:nth-child(2) {
    background-color: #178853
  }
  .p-cover__document a:hover img {
    transform: scale(1.05)
  }
  .p-cover__document div:nth-child(2) {
    transition: background var(--duration) var(--ease)
  }
  .p-banner__button a {
    transition: background var(--duration) var(--ease)
  }
  .p-banner__button a:hover {
    background-color: #178853
  }
  .p-request__button a, .p-request__note p a {
    transition: color var(--duration) var(--ease)
  }
  .p-request__note p a:hover {
    color: var(--color-accent)
  }
}
@media (prefers-reduced-motion:no-preference) {
  :where(html: focus-within) {
    scroll-behavior: smooth
  }
}