@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  word-break: break-word;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: baseline;
  background: transparent;
}

html, body {
  font-size: 62.5%;
  overflow-x: hidden;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

li {
  list-style-type: none;
}

blockquote, q {
  quotes: none;
}

blockquote::before, blockquote::after, q::before, q::after {
  content: '';
  content: none;
}

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

img {
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  border: none;
}

picture {
  max-width: 100%;
  display: block;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

input, select {
  vertical-align: middle;
}

br {
  line-height: 0;
}

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

/* safariでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}

input[type="submit"]:focus,
input[type="button"]:focus {
  outline-offset: -2px;
}

:root {
  --white: #ffffff;
  --orange: #FF7F00;
  --blue: #0049BB;
  --primary: #0084DD;
  --bg: #E6F5FF;
  --graybg: #F0F0F0;
  --text: #323232;
  --border: #949494;
  --light-gray: #E5E5E5;
  --dark-gray: #444444;
  --pcshadow-box-shadow: 0px 4px 6px -1px rgba(0, 0, 0, 0.2);
  --worriesshadow-box-shadow: 5px 10px 15px -5px rgba(10, 10, 10, 0.1);
}

/*------------------------------------------------------------
	basic
------------------------------------------------------------*/
body {
  -webkit-text-size-adjust: 100%;
  font-family: 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Helvetica, Roboto, Arial, 'Meiryo', 'メイリオ', 'Yu Gothic', 'YuGothic', '游ゴシック', sans-serif;
  font-size: min(1.25vw,16px);
  font-weight: 700;
  line-height: 1.6;
  color: var(--text);
  text-align: center;
  position: relative;
}

@media screen and (max-width: 768px) {
  body {
    font-size: 3.64583vw;
  }
}

@media (hover: hover) {
  a:not(:is([class*=--disabled], [class*=is-disabled], [disabled])):hover {
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
  a:not(:is([class*=--disabled], [class*=is-disabled], [disabled])):hover:hover {
    opacity: .75;
  }
}

header {
  width: 100%;
}

@media screen and (max-width: 768px) {
  header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

header.fixed {
  position: fixed;
  background: var(--white);
  border-bottom: 1px solid #dadada;
  z-index: 100;
}

header .inner_h {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  height: min(6.25vw,80px);
  padding: 0 min(6.25vw,80px);
}

@media screen and (max-width: 768px) {
  header .inner_h {
    height: 11.45833vw;
    padding: 0 5.20833vw;
  }
}

@media screen and (max-width: 768px) {
  header .header_logo {
    position: relative;
    z-index: 100;
  }
}

header .header_logo img {
  width: min(17.10938vw,219px);
}

@media screen and (max-width: 768px) {
  header .header_logo img {
    width: 29.94792vw;
  }
}

.nav_btn_wrap {
  display: none;
}

@media screen and (max-width: 768px) {
  .nav_btn_wrap {
    display: block;
    height: 3.90625vw;
  }
}

.nav_btn_wrap .nav_btn {
  position: relative;
  z-index: 100;
  cursor: pointer;
  width: 6.25vw;
  height: 3.90625vw;
}

.nav_btn_wrap .nav_btn span {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  width: 100%;
  height: 2px;
  margin: auto;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  background-color: var(--text);
}

.nav_btn_wrap .nav_btn::before, .nav_btn_wrap .nav_btn::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  display: block;
  width: 100%;
  height: 2px;
  margin: auto;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  background-color: var(--text);
  border-radius: 10px;
  overflow: hidden;
}

.nav_btn_wrap .nav_btn::before {
  top: 0;
}

.nav_btn_wrap .nav_btn::after {
  bottom: 0;
}

.nav_btn_wrap .nav_btn.open::before {
  bottom: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  background-color: var(--text);
}

.nav_btn_wrap .nav_btn.open::after {
  top: 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  background-color: var(--text);
}

.nav_btn_wrap .nav_btn.open span {
  opacity: 0;
  background-color: var(--text);
}

.nav_wrap {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .nav_wrap {
    display: block;
    width: 50%;
    position: fixed;
    top: 0;
    right: 0;
    margin: 11.45833vw 0 0;
    padding: 6.25vw 4.16667vw;
    z-index: 80;
    background-color: var(--white);
    -webkit-transform: translateY(-80px);
    -ms-transform: translateY(-80px);
    transform: translateY(-80px);
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.25s ease, -webkit-transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
    transition: opacity 0.25s ease, -webkit-transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
    -o-transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.25s ease;
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.25s ease;
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.25s ease, -webkit-transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  }
}

.nav_wrap.is-active {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  pointer-events: auto;
}

.nav_wrap nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: min(1.875vw,24px);
}

@media screen and (max-width: 768px) {
  .nav_wrap nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 7.8125vw;
  }
}

.nav_wrap .nav_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: min(1.875vw,24px);
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    gap: 6.25vw;
    width: 100%;
  }
}

.nav_wrap .nav_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list li {
    display: block;
  }
}

.nav_wrap .nav_list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: min(1.40625vw,18px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list li a {
    display: block;
    font-size: 4.16667vw;
    text-align: right;
  }
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list li a.nav_link::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 2em;
    width: 30px;
    height: 30px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

@media screen and (max-width: 768px) and (max-width: 768px) {
  .nav_wrap .nav_list li a.nav_link::before {
    width: 7.29167vw;
    height: 7.29167vw;
    left: 9.11458vw;
  }
}

.nav_wrap .nav_list li.common_btn {
  width: min(18.59375vw,238px);
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list li.common_btn {
    width: 100%;
  }
}

.nav_wrap .nav_list li.common_btn a {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: min(0.3125vw,4px) min(0.3125vw,4px);
  border-radius: 50vh;
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list li.common_btn a {
    padding: 1.04167vw 0;
  }
}

.nav_wrap .nav_list li.common_btn a.inquiry_link {
  background: var(--white);
  border: 2px solid var(--blue);
  color: var(--blue);
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list li.common_btn a.inquiry_link {
    background: var(--orange);
    border: 2px solid var(--orange);
    color: var(--white);
    font-size: 3.125vw;
  }
}

.nav_wrap .nav_list li.common_btn a.inquiry_link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: min(1.875vw,24px);
  width: min(0.70313vw,9px);
  height: min(0.70313vw,9px);
  border-bottom: 2px solid var(--blue);
  border-right: 2px solid var(--blue);
  -webkit-transform: translateY(-60%) rotate(-45deg);
  -ms-transform: translateY(-60%) rotate(-45deg);
  transform: translateY(-60%) rotate(-45deg);
  -webkit-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list li.common_btn a.inquiry_link::after {
    right: 3.90625vw;
    width: 1.30208vw;
    height: 1.30208vw;
    border-color: var(--white);
  }
}

.nav_wrap .nav_list li.common_btn a.inquiry_link .contacts {
  padding-right: min(0.78125vw,10px);
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list li.common_btn a.inquiry_link .contacts {
    padding-right: 1.30208vw;
  }
}

.nav_wrap .nav_list li.common_btn a.plan_link {
  background: var(--white);
  border: 2px solid var(--orange);
  color: var(--orange);
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list li.common_btn a.plan_link {
    margin-block: 7.8125vw 0;
  }
}

.nav_wrap .nav_list li.common_btn a.plan_link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: min(1.09375vw,14px);
  width: min(0.625vw,8px);
  height: min(0.625vw,8px);
  border-bottom: 2px solid var(--orange);
  border-right: 2px solid var(--orange);
  -webkit-transform: translateY(-60%) rotate(-45deg);
  -ms-transform: translateY(-60%) rotate(-45deg);
  transform: translateY(-60%) rotate(-45deg);
  -webkit-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
}

@media screen and (max-width: 768px) {
  .nav_wrap .nav_list li.common_btn a.plan_link::after {
    right: 3.90625vw;
    width: 2.60417vw;
    height: 2.60417vw;
  }
}

.section .inner {
  max-width: 1280px;
  width: 95%;
  margin-inline: auto;
  padding-block: min(5.625vw,72px);
}

@media screen and (max-width: 768px) {
  .section .inner {
    width: 90%;
    padding-block: 10.41667vw;
  }
}

.section_title {
  display: inline-block;
  font-size: min(2.03125vw,26px);
  border-top: 3px solid var(--primary);
  border-bottom: 3px solid var(--primary);
  padding-block: min(1.875vw,24px);
  padding-inline: min(3.125vw,40px);
  margin-block: 0 min(3.75vw,48px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .section_title {
    display: block;
    font-size: 4.16667vw;
    padding-block: 4.16667vw;
    padding-inline: 0;
    margin-block: 0 6.25vw;
  }
}

.section_title-small {
  display: block;
  font-size: min(1.40625vw,18px);
}

@media screen and (max-width: 768px) {
  .section_title-small {
    font-size: 3.125vw;
  }
}

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

footer .inner_f {
  padding-inline: min(9.375vw,120px) min(12.26563vw,157px);
  padding-block: min(2.5vw,32px) min(3.28125vw,42px);
  text-align: left;
}

@media screen and (max-width: 768px) {
  footer .inner_f {
    padding-inline: 10.41667vw;
    padding-block: 10.41667vw 18.22917vw;
  }
}

footer .inner_f .footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

@media screen and (max-width: 768px) {
  footer .inner_f .footer {
    display: block;
  }
}

footer .inner_f .footer_logo {
  margin-bottom: min(1.25vw,16px);
}

@media screen and (max-width: 768px) {
  footer .inner_f .footer_logo {
    margin-bottom: 4.16667vw;
  }
}

footer .inner_f .footer_logo-image {
  width: min(25vw,320px);
  margin-bottom: min(1.25vw,16px);
}

@media screen and (max-width: 768px) {
  footer .inner_f .footer_logo-image {
    width: 62.5vw;
    margin-inline: auto;
    margin-bottom: 4.16667vw;
  }
}

footer .inner_f .footer_logo-text {
  font-size: min(1.25vw,16px);
  font-weight: 300;
  line-height: 1.7;
}

@media screen and (max-width: 768px) {
  footer .inner_f .footer_logo-text {
    font-size: 3.64583vw;
  }
}

footer .inner_f .footer_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: min(3.75vw,48px);
}

@media screen and (max-width: 768px) {
  footer .inner_f .footer_nav {
    gap: 4.16667vw;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 10.41667vw;
  }
}

footer .inner_f .footer_item a {
  font-size: min(1.40625vw,18px);
  text-decoration: underline;
}

@media screen and (max-width: 768px) {
  footer .inner_f .footer_item a {
    font-size: 3.64583vw;
  }
}

footer .inner_f .copyright {
  font-size: min(0.70313vw,9px);
  font-weight: 300;
  line-height: 1.75;
}

@media screen and (max-width: 768px) {
  footer .inner_f .copyright {
    text-align: center;
    font-size: 2.34375vw;
  }
}

.bg {
  background-color: var(--bg);
}

.pc {
  display: block;
}

.pc._inline {
  display: inline;
}

.pc._inline-block {
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .sp {
    display: block;
  }
  .sp._inline {
    display: inline;
  }
  .sp._inline-block {
    display: inline-block;
  }
}

/* -----------------------------------------------------
	kv
----------------------------------------------------- */
.kv {
  margin-block: min(5.55556vw,80px) 0;
  background: url(../img/kv_bg.png) no-repeat center top/cover;
}

@media screen and (max-width: 768px) {
  .kv {
    margin-block: 11.45833vw 0;
    background: url(../img/kv_bg_sp.png) no-repeat left top/100% auto;
  }
}

.kv_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  max-width: 1440px;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .kv_inner {
    display: block;
  }
}

.kv_left {
  width: min(59.72222vw,860px);
  text-align: left;
  padding-block: min(6.11111vw,88px) 0;
  padding-inline: min(5.55556vw,80px) 0;
  position: relative;
}

@media screen and (max-width: 768px) {
  .kv_left {
    width: 100%;
    padding-block: 18.75vw 8.33333vw;
    padding-inline: 5.20833vw;
  }
}

.kv_plan-a::after {
  content: '';
  display: block;
  width: min(21.45833vw,309px);
  height: min(30.625vw,441px);
  background: url("../img/plan_a_img.png") no-repeat left top/contain;
  position: absolute;
  right: min(3.33333vw,48px);
  bottom: 0;
}

@media screen and (max-width: 768px) {
  .kv_plan-a::after {
    width: 46.61458vw;
    height: 50.26042vw;
    background: url("../img/plan_a_img_sp.png") no-repeat left top/contain;
    top: 33.85417vw;
    right: 3.90625vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
  .kv_plan-a::after {
    background: unset;
  }
}

.kv_plan-a .none-b {
  display: none;
}

@media screen and (max-width: 768px) {
  .kv_plan-b {
    padding-block: 14.58333vw 8.33333vw;
  }
}

.kv_plan-b::after {
  content: '';
  display: block;
  width: min(34.86111vw,502px);
  height: min(20.48611vw,295px);
  background: url("../img/plan_b_img.png") no-repeat left top/contain;
  position: absolute;
  right: min(2.43056vw,35px);
  bottom: min(3.68056vw,53px);
}

@media screen and (max-width: 768px) {
  .kv_plan-b::after {
    width: 63.80208vw;
    height: 37.76042vw;
    background: url("../img/plan_b_img_sp.png") no-repeat left top/contain;
    top: 42%;
    right: 6.51042vw;
    bottom: initial;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

.kv_plan-b .none-a {
  display: none;
}

@media screen and (max-width: 768px) {
  .kv_button {
    color: var(--white);
    text-align: center;
    background-color: var(--orange);
    border-radius: 50vh;
    font-size: 4.16667vw;
    padding: 4.16667vw;
    position: relative;
  }
  .kv_button::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 7.8125vw;
    width: 2.60417vw;
    height: 2.60417vw;
    border-bottom: 2px solid var(--white);
    border-right: 2px solid var(--white);
    -webkit-transform: translateY(-50%) rotate(-45deg);
    -ms-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(-45deg);
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
  }
  .kv_button span {
    padding-inline: 0 1.30208vw;
  }
}

.kv_right {
  width: min(40.27778vw, 450px);
  background-color: var(--bg);
  padding: min(1.80556vw, 26px) min(2.08333vw, 30px) min(1.80556vw, 26px) min(5.55556vw, 30px);
}

@media screen and (max-width: 768px) {
  .kv_right {
    width: 100%;
    padding: 10.41667vw 5.20833vw 2.60417vw;
  }
}

.kv_text--bg {
  display: inline-block;
  font-size: min(3.33333vw,48px);
  color: var(--white);
  background-color: var(--primary);
  line-height: 1;
  padding: min(0.97222vw,14px) min(1.38889vw,20px);
}

@media screen and (max-width: 768px) {
  .kv_text--bg {
    font-size: 7.8125vw;
    padding: 2.60417vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
  .kv_text--bg {
    font-size: min(6.33333vw,52px);
  }

}

.kv_text--middle {
  font-size: min(2.08333vw,30px);
}

@media screen and (max-width: 768px) {
  .kv_text--middle {
    font-size: 4.94792vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
  .kv_text--middle {
    font-size: min(2.58333vw,30px);
  }
}

.kv_text--large {
  letter-spacing: min(0.27778vw,4px);
}

.kv_text:nth-child(2) {
  margin-top: min(0.625vw,9px);
}

@media screen and (max-width: 768px) {
  .kv_text:nth-child(2) {
    margin-top: 1.5625vw;
  }
}

.kv_subtext {
  font-size: min(1.875vw,27px);
  margin-block: min(1.38889vw,20px) min(3.40278vw,49px);
}

@media screen and (max-width: 768px) {
  .kv_subtext {
    font-size: 4.6875vw;
    margin-block: 10.41667vw 19.27083vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
  .kv_subtext {
    font-size: min(2.875vw,27px);
  }

}

.kv_plan-text {
  font-size: min(3.125vw,45px);
}

@media screen and (max-width: 768px) {
  .kv_plan-text {
    font-size: 7.36979vw;
  }
}

.kv_plan-subtext {
  font-size: min(1.38889vw,20px);
  margin-block: min(1.38889vw,20px) min(2.22222vw,32px);
}

@media screen and (max-width: 768px) {
  .kv_plan-subtext {
    font-size: 4.6875vw;
    margin-block: 5.20833vw 31.25vw;
    line-height: 2;
  }
}

.kv_plan-subtext span {
  display: inline-block;
  color: var(--white);
  background-color: var(--orange);
  padding: 0 min(0.41667vw,6px);
  margin: 0 min(0.27778vw,4px);
}

@media screen and (max-width: 768px) {
  .kv_plan-subtext span {
    padding: 0 1.30208vw;
    margin: 0 0.78125vw;
    line-height: 1.6;
    letter-spacing: 0.26042vw;
  }
}

.kv_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: min(1.11111vw,16px);
}

@media screen and (max-width: 768px) {
  .kv_list {
    gap: 3.125vw;
    margin-bottom: 10.41667vw;
  }
}

.kv_list-item {
  position: relative;
  padding-left: min(1.94444vw,28px);
}

@media screen and (max-width: 768px) {
  .kv_list-item {
    padding-left: 5.46875vw;
    font-size: 3.38542vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
  .kv_list-item {
    font-size: min(2.075vw,18px);
    padding-left: min(3.94444vw, 28px);
  } 
}

.kv_list-item::before {
  content: '';
  display: block;
  width: min(1.25vw,18px);
  height: min(1.25vw,18px);
  background: url("../img/icon_check.svg") no-repeat left top/contain;
  position: absolute;
  top: min(0.27778vw,4px);
  left: 0;
}

@media screen and (max-width: 768px) {
  .kv_list-item::before {
    top: 0.91146vw;
    width: 4.16667vw;
    height: 4.16667vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
  .kv_list-item::before {
    width: min(2.5vw,18px);
    height: min(2.5vw,18px);
    top: min(1.27778vw, 6px);

  } 
}

@media screen and (max-width: 768px) {
  .kv_form {
    margin-bottom: 4.16667vw;
  }
}

.kv_form-logo {
  display: inline-block;
  width: min(12.15278vw,175px);
}

@media screen and (max-width: 768px) {
  .kv_form-logo {
    width: 45.57292vw;
  }
}

.kv_form-middle {
  font-size: min(1.11111vw,16px);
  vertical-align: bottom;
  padding-left: min(0.55556vw,8px);
}

@media screen and (max-width: 768px) {
  .kv_form-middle {
    font-size: 4.16667vw;
  }
}

.kv_form-large {
  display: block;
  font-size: min(1.38889vw,20px);
}

@media screen and (max-width: 768px) {
  .kv_form-large {
    font-size: 5.20833vw;
  }
}

.worries .inner {
  padding-block: min(9.375vw,120px) min(5.625vw,72px);
}

@media screen and (max-width: 768px) {
  .worries .inner {
    padding-block: 10.41667vw;
    padding-inline: 1.5625vw;
  }
}

.worries_head::before {
  content: '';
  display: block;
  width: min(8.67188vw,111px);
  height: min(11.875vw,152px);
  background: url("../img/worries_title.png") no-repeat left top/contain;
  position: absolute;
  left: -5.6em;
  bottom: 0;
}

@media screen and (max-width: 768px) {
  .worries_head::before {
    width: 13.02083vw;
    height: 18.22917vw;
    left: 0.52083vw;
    bottom: -0.39063vw;
  }
}

.worries_title {
  width: 100%;
  position: absolute;
  top: -1.8em;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .worries_title {
    top: -5.46875vw;
  }
}

.worries_title span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: min(5.625vw,72px);
  background-color: var(--primary);
  border-radius: min(0.85938vw,11px);
  color: var(--white);
  font-size: min(1.5625vw,20px);
  padding: 0 min(1.5625vw,20px);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

@media screen and (max-width: 768px) {
  .worries_title span {
    height: auto;
    border-radius: 2.86458vw;
    font-size: 4.16667vw;
    padding: 2.08333vw 4.16667vw;
  }
}

.worries_wrap {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  gap: min(3.125vw,40px);
  padding-block: min(2.8125vw,36px) 0;
}

@media screen and (max-width: 768px) {
  .worries_wrap {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 11.71875vw;
    padding-block: 5.46875vw 0;
  }
}

.worries_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: min(0.625vw,8px);
}

@media screen and (max-width: 768px) {
  .worries_list {
    gap: 2.08333vw;
  }
}

.worries_item {
  background-color: var(--graybg);
  border-radius: min(1.875vw,24px);
  padding: min(4.6875vw,60px) min(3.125vw,40px) min(3.125vw,40px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .worries_item {
    border-radius: 4.16667vw;
    padding: 6.51042vw 4.16667vw 4.16667vw;
  }
  .worries_item:last-of-type {
    margin-top: 6.51042vw;
  }
  .worries_item:last-of-type .worries_title {
    top: -11.71875vw;
  }
}

.worries_detail {
  text-align: left;
  padding-left: 1em;
  text-indent: -1em;
  font-weight: 400;
  line-height: 1.7;
}

.worries_detail span {
  font-weight: 700;
}

.worries_image {
  width: min(7.8125vw,100px);
  margin-inline: auto;
  margin-bottom: min(1.09375vw,14px);
}

@media screen and (max-width: 768px) {
  .worries_image {
    width: 26.04167vw;
    margin-bottom: 2.60417vw;
  }
}

.solution {
  position: relative;
}

.solution::before {
  content: '';
  display: block;
  background: var(--white);
  width: min(5.625vw,72px);
  height: min(2.96875vw,38px);
  -webkit-clip-path: polygon(50% 100%, 100% 0, 0 0);
  clip-path: polygon(50% 100%, 100% 0, 0 0);
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .solution::before {
    width: 18.75vw;
    height: 9.89583vw;
  }
}

.solution .inner {
  padding-block: min(8.125vw,104px) min(5.625vw,72px);
}

@media screen and (max-width: 768px) {
  .solution .inner {
    padding-block: 18.75vw 10.41667vw;
  }
}

.solution_head::before {
  content: '';
  display: block;
  width: min(10.9375vw,140px);
  height: min(14.0625vw,180px);
  background: url("../img/solution_title.png") no-repeat left top/contain;
  position: absolute;
  right: -6.4em;
  bottom: 0;
}

@media screen and (max-width: 768px) {
  .solution_head::before {
    width: 13.80208vw;
    height: 17.83854vw;
    right: 1.82292vw;
  }
}

.solution_title span {
  display: inline-block;
  color: var(--primary);
  font-size: min(1.5625vw,20px);
}

@media screen and (max-width: 768px) {
  .solution_title span {
    font-size: 4.6875vw;
  }
}

.solution_wrap {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  gap: min(3.125vw,40px);
}

@media screen and (max-width: 768px) {
  .solution_wrap {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 6.25vw;
  }
}

.solution_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: min(0.625vw,8px);
}

@media screen and (max-width: 768px) {
  .solution_list {
    gap: 2.08333vw;
  }
}

.solution_item {
  background-color: var(--white);
  border-radius: min(1.875vw,24px);
  padding: min(3.125vw,40px);
  -webkit-box-shadow: var(--pcshadow-box-shadow);
  box-shadow: var(--pcshadow-box-shadow);
  position: relative;
}

@media screen and (max-width: 768px) {
  .solution_item {
    border-radius: 4.16667vw;
    padding: 4.16667vw 5.20833vw;
  }
}

.solution_detail {
  text-align: left;
  font-weight: 400;
  line-height: 1.7;
}

.solution_detail span {
  font-weight: 700;
}

.solution_image {
  width: min(7.8125vw,100px);
  margin-inline: auto;
  margin-block: min(0.78125vw,10px);
}

@media screen and (max-width: 768px) {
  .solution_image {
    width: 26.04167vw;
    margin-block: 2.34375vw;
  }
}

@media screen and (max-width: 768px) {
  .function .inner {
    padding-block: 10.41667vw 4.16667vw;
  }
}

.function_wrap {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  gap: min(3.125vw,40px);
}

@media screen and (max-width: 768px) {
  .function_wrap {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 6.25vw;
  }
}

.function_detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 1px solid var(--border);
  border-radius: min(1.875vw,24px);
  padding: min(1.875vw,24px);
}

@media screen and (max-width: 768px) {
  .function_detail {
    gap: 3.90625vw;
    border-radius: 4.16667vw;
    padding: 4.16667vw 1.30208vw 4.16667vw 5.20833vw;
  }
}

.function_image {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: min(9.375vw,120px);
}

@media screen and (max-width: 768px) {
  .function_image {
    width: 18.75vw;
  }
}

.function_text {
  width: 100%;
  color: var(--primary);
  font-size: min(1.5625vw,20px);
}

@media screen and (max-width: 768px) {
  .function_text {
    font-size: 4.16667vw;
    text-align: left;
    width: auto;
  }
}

@media screen and (min-width: 769px) {
  .alignment .inner {
    padding-block: min(5.625vw,72px) min(9.375vw,120px);
  }
}

.reduction .inner {
  max-width: 880px;
}

.reduction_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--bg);
  border-radius: min(1.875vw,24px);
  padding: min(3.125vw,40px) min(4.84375vw,62px);
}

@media screen and (max-width: 768px) {
  .reduction_wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border-radius: 4.16667vw;
    padding: 4.16667vw 7.8125vw 5.20833vw;
    gap: 4.16667vw;
  }
}

.reduction_image {
  width: min(38.09524vw,320px);
}

@media screen and (max-width: 768px) {
  .reduction_image {
    width: 58.85417vw;
  }
}

.reduction_item {
  width: min(47.2619vw,397px);
  padding: min(2.85714vw,24px);
  background-color: var(--white);
  border-radius: min(1.875vw,24px);
  -webkit-box-shadow: var(--pcshadow-box-shadow);
  box-shadow: var(--pcshadow-box-shadow);
}

@media screen and (max-width: 768px) {
  .reduction_item {
    width: 100%;
    padding: 4.16667vw 5.20833vw;
    border-radius: 4.16667vw;
  }
}

.reduction_title {
  margin-bottom: min(1.875vw,24px);
  border: 1px solid var(--border);
  border-radius: min(1.25vw,16px);
  padding: min(1.875vw,24px) min(0.625vw,8px);
}

@media screen and (max-width: 768px) {
  .reduction_title {
    padding: 4.16667vw 1.30208vw;
    margin-bottom: 4.16667vw;
    border-radius: 3.125vw;
  }
}

.reduction_title-logo {
  display: inline-block;
  width: min(15.39063vw,197px);
}

@media screen and (max-width: 768px) {
  .reduction_title-logo {
    width: 35.41667vw;
  }
}

.reduction_title-middle {
  font-size: min(1.25vw,16px);
  vertical-align: bottom;
  padding-left: min(0.625vw,8px);
}

@media screen and (max-width: 768px) {
  .reduction_title-middle {
    font-size: 2.86458vw;
  }
}

.reduction_title-large {
  display: block;
  color: var(--primary);
  font-size: min(2.5vw,32px);
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .reduction_title-large {
    font-size: 5.72917vw;
  }
}

.reduction_title-time {
  display: inline-block;
  color: var(--orange);
  font-family: Helvetica, Roboto, Arial, sans-serif;
  font-size: min(3.51563vw,45px);
  font-weight: 700;
  padding-inline: min(0.3125vw,4px);
  letter-spacing: 0.02em;
}

@media screen and (max-width: 768px) {
  .reduction_title-time {
    font-size: 7.8125vw;
    padding-inline: 1.30208vw;
  }
}

.reduction_text {
  padding-block: 0 min(2.34375vw,30px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .reduction_text {
    font-size: 3.125vw;
    padding-block: 0 5.20833vw;
  }
}

.reduction_text::before {
  content: '';
  display: block;
  background: var(--primary);
  width: min(1.5625vw,20px);
  height: min(0.78125vw,10px);
  -webkit-clip-path: polygon(50% 100%, 100% 0, 0 0);
  clip-path: polygon(50% 100%, 100% 0, 0 0);
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: min(0.78125vw,10px);
}

@media screen and (max-width: 768px) {
  .reduction_text::before {
    width: 3.64583vw;
    height: 1.82292vw;
    bottom: 1.30208vw;
  }
}

.reduction_spec {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.reduction_spec-calculation {
  font-size: min(1.09375vw,14px);
  font-weight: 400;
}

@media screen and (max-width: 768px) {
  .reduction_spec-calculation {
    font-size: 3.125vw;
  }
}

.reduction_spec-total {
  color: var(--primary);
  font-size: min(1.5625vw,20px);
  padding-inline: min(0.78125vw,10px);
}

@media screen and (max-width: 768px) {
  .reduction_spec-total {
    font-size: 4.16667vw;
  }
}

.introduction_wrap {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  gap: min(3.125vw,40px);
}

@media screen and (max-width: 768px) {
  .introduction_wrap {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 5.20833vw;
  }
}

.introduction_item {
  background-color: var(--white);
  border-radius: min(1.875vw,24px);
  padding: min(2.5vw,32px) min(1.5625vw,20px);
  -webkit-box-shadow: var(--pcshadow-box-shadow);
  box-shadow: var(--pcshadow-box-shadow);
  position: relative;
}

@media screen and (max-width: 768px) {
  .introduction_item {
    border-radius: 4.16667vw;
    padding: 4.16667vw;
  }
}

.introduction_image {
  margin-bottom: min(1.40625vw,18px);
}

@media screen and (max-width: 768px) {
  .introduction_image {
    margin-bottom: 2.60417vw;
  }
}

.introduction_title {
  text-align: left;
  color: var(--primary);
  margin-bottom: min(0.78125vw,10px);
  padding-inline: min(1.95313vw,25px);
}

@media screen and (max-width: 768px) {
  .introduction_title {
    margin-bottom: 1.30208vw;
    padding-inline: 5.20833vw;
  }
}

.introduction_text {
  text-align: left;
  font-size: min(1.09375vw,14px);
  font-weight: 400;
  padding-inline: min(1.95313vw,25px);
}

@media screen and (max-width: 768px) {
  .introduction_text {
    font-size: 3.125vw;
    padding-inline: 5.20833vw;
  }
}

.introduction_detail {
  border-radius: min(1.875vw,24px);
  padding: min(2.96875vw,38px) min(1.95313vw,25px) min(1.95313vw,25px);
  margin-block: min(4.375vw,56px) 0;
  position: relative;
}

@media screen and (max-width: 768px) {
  .introduction_detail {
    border-radius: 4.16667vw;
    padding: 7.8125vw 6.38021vw 4.16667vw;
    margin-block: 7.03125vw 0;
  }
  .introduction_detail:last-of-type {
    margin-block: 13.54167vw 0;
  }
}

.introduction_detail-head {
  background-color: var(--light-gray);
}

.introduction_detail-head::after {
  content: '';
  display: block;
  background: var(--orange);
  width: min(3.28125vw,42px);
  height: min(1.64063vw,20px);
  -webkit-clip-path: polygon(50% 100%, 100% 0, 0 0);
  clip-path: polygon(50% 100%, 100% 0, 0 0);
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: -2em;
}

@media screen and (max-width: 768px) {
  .introduction_detail-head::after {
    width: 8.07292vw;
    height: 3.64583vw;
  }
}

.introduction_detail-foot {
  background-color: var(--bg);
}

.introduction_detail-text {
  text-align: left;
}

.introduction_detail-nomal {
  font-weight: 400;
}

.introduction_heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: min(2.89063vw,37px);
  border-radius: min(0.46875vw,6px);
  color: var(--white);
  position: absolute;
  top: -1em;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .introduction_heading {
    height: 9.11458vw;
    border-radius: 1.30208vw;
    top: -3.90625vw;
  }
}

.introduction_heading-assignment {
  width: min(12.1875vw,156px);
  background-color: var(--dark-gray);
}

@media screen and (max-width: 768px) {
  .introduction_heading-assignment {
    width: 40.10417vw;
  }
}

.introduction_heading-change {
  width: min(14.53125vw,186px);
  background-color: var(--primary);
}

@media screen and (max-width: 768px) {
  .introduction_heading-change {
    width: 42.1875vw;
  }
}

.introduction_heading-change span {
  display: inline-block;
  position: relative;
  padding-inline: min(2.34375vw,30px) 0;
}

@media screen and (max-width: 768px) {
  .introduction_heading-change span {
    padding-inline: 2.86458vw 0;
  }
}

.introduction_heading-change span::before {
  content: '';
  display: block;
  width: min(1.71875vw,22px);
  height: min(1.48438vw,19px);
  background: url("../img/icon-robopay.png") no-repeat left top/contain;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
  .introduction_heading-change span::before {
    width: 4.81771vw;
    height: 4.29688vw;
    left: -3.90625vw;
  }
}

.flow_wrap {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[5];
  grid-template-columns: repeat(5, 1fr);
  gap: min(1.5625vw,20px);
  position: relative;
  padding-block: min(1.40625vw,18px) 0;
}

@media screen and (max-width: 768px) {
  .flow_wrap {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 13.02083vw;
    padding-block: 3.38542vw 0;
  }
}

.flow_wrap::before {
  content: '';
  display: block;
  width: 100%;
  height: 3px;
  background-color: var(--primary);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 768px) {
  .flow_wrap::before {
    width: 3px;
    height: 100%;
  }
}

.flow_item {
  background-color: var(--bg);
  border-radius: min(1.875vw,24px);
  padding: min(3.125vw,40px) min(1.875vw,24px) min(1.875vw,24px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .flow_item {
    border-radius: 4.16667vw;
    padding: 10.41667vw 6.74479vw 6.25vw;
  }
}

.flow_title {
  color: var(--primary);
  font-size: min(1.5625vw,20px);
  margin-bottom: min(0.625vw,8px);
}

@media screen and (max-width: 768px) {
  .flow_title {
    font-size: 5.20833vw;
    margin-bottom: 2.08333vw;
  }
}

.flow_text {
  text-align: left;
  font-weight: 400;
}

.flow_text a {
  text-decoration: underline;
  text-underline-offset: 4px;
}

.flow .num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: var(--white);
  width: min(8.75vw,112px);
  height: min(2.89063vw,37px);
  font-size: min(1.40625vw,18px);
  background-color: var(--primary);
  border-radius: min(0.46875vw,6px);
  position: absolute;
  top: -1em;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .flow .num {
    width: 29.16667vw;
    height: 9.63542vw;
    font-size: 4.6875vw;
  }
}

@media screen and (max-width: 768px) {
  .flow .num {
    border-radius: 1.30208vw;
  }
}

@media screen and (min-width: 769px) {
  .faq .inner {
    max-width: min(68.75vw,880px);
  }
}

.faq_item {
  border: 1px solid var(--border);
  border-radius: min(1.875vw,24px);
}

@media screen and (max-width: 768px) {
  .faq_item {
    border-radius: 4.16667vw;
  }
}

.faq_item:nth-of-type(n+2) {
  margin-block: min(1.875vw,24px) 0;
}

@media screen and (max-width: 768px) {
  .faq_item:nth-of-type(n+2) {
    margin-block: 3.125vw 0;
  }
}

.faq_item.is-open > .faq_header::after {
  -webkit-transform: translateY(-30%) rotate(-135deg);
  -ms-transform: translateY(-30%) rotate(-135deg);
  transform: translateY(-30%) rotate(-135deg);
}

.faq_en {
  display: inline-block;
  color: var(--primary);
  font-size: min(1.875vw,24px);
  font-weight: 700;
  margin-inline: 0 min(1.25vw,16px);
  line-height: 1.2;
}

@media screen and (max-width: 768px) {
  .faq_en {
    font-size: 4.6875vw;
    margin-inline: 0 2.60417vw;
    line-height: 1.4;
  }
}

.faq_header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  cursor: pointer;
  text-align: left;
  padding: min(1.875vw,24px) min(3.75vw,48px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .faq_header {
    padding: 4.16667vw 5.20833vw;
  }
}

.faq_header-text {
  font-size: min(1.5625vw,20px);
}

@media screen and (max-width: 768px) {
  .faq_header-text {
    width: 59.89583vw;
    font-size: 4.16667vw;
  }
}

.faq_header::after {
  content: '';
  display: block;
  width: min(1.09375vw,14px);
  height: min(1.09375vw,14px);
  position: absolute;
  top: 50%;
  right: min(3.90625vw,50px);
  border-right: 3px solid var(--primary);
  border-bottom: 3px solid var(--primary);
  -webkit-transform: translateY(-70%) rotate(45deg);
  -ms-transform: translateY(-70%) rotate(45deg);
  transform: translateY(-70%) rotate(45deg);
  -webkit-transition: -webkit-transform 0.25s ease;
  transition: -webkit-transform 0.25s ease;
  -o-transition: transform 0.25s ease;
  transition: transform 0.25s ease;
  transition: transform 0.25s ease, -webkit-transform 0.25s ease;
}

@media screen and (max-width: 768px) {
  .faq_header::after {
    width: 2.34375vw;
    height: 2.34375vw;
    right: 7.8125vw;
  }
}

.faq_body {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.35s ease;
  -o-transition: max-height 0.35s ease;
  transition: max-height 0.35s ease;
  will-change: max-height;
}

.faq_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  font-weight: 400;
  padding-inline: min(3.75vw,48px);
  padding-block: 0 min(1.875vw,24px);
}

@media screen and (max-width: 768px) {
  .faq_inner {
    padding: 5.20833vw;
  }
}

.faq_text {
  display: inline-block;
  width: min(50.78125vw,650px);
  line-height: 1.7;
}

@media screen and (max-width: 768px) {
  .faq_text {
    width: 68.75vw;
  }
}

@media screen and (min-width: 769px) {
  .form .inner {
    max-width: min(68.75vw,880px);
  }
}

.form_wrap {
  background-color: var(--white);
  border: 1px solid var(--border);
  border-radius: min(1.875vw,24px);
  overflow: hidden;
  padding: min(3.125vw,40px);
}

@media screen and (max-width: 768px) {
  .form_wrap {
    border-radius: 4.16667vw;
    padding: 7.8125vw 3.90625vw;
  }
}

.form_frame {
  max-width: 500px;
  width: 100%;
  margin-inline: auto;
}

.form_title {
  margin-bottom: min(1.5625vw,20px);
}

@media screen and (max-width: 768px) {
  .form_title {
    margin-bottom: 4.16667vw;
  }
}

.form_title-logo {
  display: inline-block;
  width: min(15.39063vw,197px);
}

@media screen and (max-width: 768px) {
  .form_title-logo {
    width: 45.57292vw;
  }
}

.form_title-middle {
  font-size: min(1.40625vw,18px);
  vertical-align: bottom;
  padding-left: min(0.625vw,8px);
}

@media screen and (max-width: 768px) {
  .form_title-middle {
    font-size: 4.16667vw;
  }
}

.form_title-large {
  display: block;
  font-size: min(2.03125vw,26px);
  line-height: 2;
}

@media screen and (max-width: 768px) {
  .form_title-large {
    font-size: 5.20833vw;
  }
}

.contact {
  background-color: var(--primary);
}

.contact_inner {
  max-width: 940px;
  width: 95%;
  margin-inline: auto;
  padding-block: min(3.125vw,40px);
}

@media screen and (max-width: 768px) {
  .contact_inner {
    width: 90%;
    padding-block: 6.25vw;
  }
}

.contact_title {
  color: var(--white);
  font-size: min(2.03125vw,26px);
  padding-block: 0 min(3.125vw,40px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .contact_title {
    width: 56.51042vw;
    font-size: 3.125vw;
    margin-inline: auto 5.20833vw;
    padding-block: 0 4.16667vw;
  }
}

.contact_title::before {
  content: '';
  display: block;
  width: min(16.95313vw,217px);
  height: min(13.125vw,168px);
  background: url("../img/contact_image.png") no-repeat left top/contain;
  position: absolute;
  left: min(3.125vw,40px);
  bottom: -1px;
}

@media screen and (max-width: 768px) {
  .contact_title::before {
    width: 21.35417vw;
    height: 16.40625vw;
    left: -23.4375vw;
    bottom: initial;
  }
}

.contact_title-image {
  display: block;
  width: min(24.84375vw,318px);
  margin-inline: auto;
  margin-block: min(0.625vw,8px) 0;
}

@media screen and (max-width: 768px) {
  .contact_title-image {
    width: 100%;
    margin-block: 1.04167vw;
  }
}

.contact_column {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  gap: min(2.5vw,32px);
}

@media screen and (max-width: 768px) {
  .contact_column {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2.60417vw;
  }
}

.contact_item {
  padding: min(2.5vw,32px);
  background-color: var(--white);
  border-radius: min(1.5625vw,20px);
  -webkit-box-shadow: var(--worriesshadow-box-shadow);
  box-shadow: var(--worriesshadow-box-shadow);
}

@media screen and (max-width: 768px) {
  .contact_item {
    padding: 4.16667vw 6.51042vw;
    border-radius: 3.90625vw;
  }
}

.contact_pc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: min(2.03125vw,26px);
  margin-bottom: min(1.5625vw,20px);
}

@media screen and (max-width: 768px) {
  .contact_pc {
    gap: 4.16667vw;
    margin-bottom: 2.60417vw;
  }
}

.contact_pc-text {
  color: var(--primary);
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: min(18.98438vw,243px);
  text-align: left;
  font-size: min(1.5625vw,20px);
}

@media screen and (max-width: 768px) {
  .contact_pc-text {
    width: 54.94792vw;
    font-size: 3.64583vw;
  }
}

.contact_pc-image img {
  width: auto;
  height: min(5vw,64px);
}

@media screen and (max-width: 768px) {
  .contact_pc-image img {
    height: 11.97917vw;
  }
}

.contact_button {
  display: block;
  color: var(--white);
  font-size: min(1.71875vw,22px);
  text-align: center;
  background-color: var(--orange);
  border: 2px solid var(--orange);
  border-radius: 50vh;
  padding: min(0.9375vw,12px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .contact_button {
    font-size: 4.16667vw;
    padding: 2.60417vw;
  }
}

.contact_button::after {
  content: "";
  position: absolute;
  top: 50%;
  right: min(2.03125vw,26px);
  width: min(0.78125vw,10px);
  height: min(0.78125vw,10px);
  border-bottom: 2px solid var(--white);
  border-right: 2px solid var(--white);
  -webkit-transform: translateY(-50%) rotate(-45deg);
  -ms-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
  -webkit-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
}

@media screen and (max-width: 768px) {
  .contact_button::after {
    right: 5.46875vw;
    width: 2.08333vw;
    height: 2.08333vw;
  }
}

.contact_button-blue {
  color: var(--primary);
  background-color: var(--white);
  border-color: var(--primary);
}

.contact_button-blue::after {
  border-color: var(--primary);
}

@media screen and (max-width: 768px) {
  .contact_button span {
    padding-inline: 0 2.60417vw;
  }
}

.fixed_link {
  position: fixed;
  width: 100%;
  bottom: 0;
  left: 0;
  margin: 0 auto;
  z-index: 50;
  background: rgba(0, 132, 221, 0.8);
  display: none;
}

.fixed_link .inner {
  max-width: min(62.8125vw,804px);
  width: 100%;
  margin-inline: auto;
  position: relative;
  padding: min(1.25vw,16px) 0;
}

@media screen and (max-width: 768px) {
  .fixed_link .inner {
    max-width: 100%;
    padding: 3.125vw 4.94792vw;
  }
}

.fixed_link .inner::before {
  content: '';
  display: block;
  width: min(11.64063vw,149px);
  height: min(8.90625vw,114px);
  position: absolute;
  left: -10em;
  bottom: 0;
  background: url("../img/fixed_link_image.png") no-repeat left top/contain;
}

@media screen and (max-width: 768px) {
  .fixed_link .inner::before {
    content: none;
  }
}

.fixed_link-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: min(1.875vw,24px);
}

@media screen and (max-width: 768px) {
  .fixed_link-wrap {
    gap: 3.90625vw;
  }
}

.fixed_link-button {
  display: block;
  width: 100%;
  color: var(--white);
  font-size: min(1.5625vw,20px);
  text-align: center;
  background-color: var(--orange);
  border: 2px solid var(--orange);
  border-radius: 50vh;
  padding: min(0.78125vw,10px);
  position: relative;
}

@media screen and (max-width: 768px) {
  .fixed_link-button {
    font-size: 2.60417vw;
    padding: 2.60417vw 0;
  }
}

.fixed_link-button::after {
  content: "";
  position: absolute;
  top: 50%;
  right: min(2.03125vw,26px);
  width: min(0.78125vw,10px);
  height: min(0.78125vw,10px);
  border-bottom: 2px solid var(--white);
  border-right: 2px solid var(--white);
  -webkit-transform: translateY(-50%) rotate(-45deg);
  -ms-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
  -webkit-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
}

@media screen and (max-width: 768px) {
  .fixed_link-button::after {
    right: 3.90625vw;
    width: 1.82292vw;
    height: 1.82292vw;
  }
}

.fixed_link-button span {
  padding-inline: 0 min(0.78125vw,10px);
}

@media screen and (max-width: 768px) {
  .fixed_link-button span {
    padding-inline: 0 2.60417vw;
  }
}

.fixed_link-blue {
  color: var(--primary);
  background-color: var(--white);
  border-color: var(--primary);
}

.fixed_link-blue::after {
  border-color: var(--primary);
}
