:root {
  --base: #fff;
  --t-blue: #5cc2cf;
  --green: #3ad26f;
  --orange: #ffa84b;
  --blue: #0070be;
  --navy: #003996;
  --text: #333;
  --spacing: 0.12em;
  --leading-trim: calc((1em - 1lh) / 2)
}
* {
  letter-spacing: var(--spacing)
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 120px
}
@media(max-width: 768px) {
  html {
    scroll-padding-top: 80px
  }
}
body {
  min-height: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  color: var(--text);
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict
}
main {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1
}
img {
  width: 100%;
  height: auto
}
@-webkit-keyframes bgextendAnimeBase {
  from {
    opacity: 0
  }
  to {
    opacity: 1
  }
}
@keyframes bgextendAnimeBase {
  from {
    opacity: 0
  }
  to {
    opacity: 1
  }
}
@-webkit-keyframes bgextendAnimeSecond {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@keyframes bgextendAnimeSecond {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes bgLRextendAnime {
  0% {
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }
  50% {
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
  }
  50.001% {
    -webkit-transform-origin: right;
    transform-origin: right
  }
  100% {
    -webkit-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }
}
@keyframes bgLRextendAnime {
  0% {
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }
  50% {
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
  }
  50.001% {
    -webkit-transform-origin: right;
    transform-origin: right
  }
  100% {
    -webkit-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }
}
.br-1100-b {
  display: none
}
@media(max-width: 1100px) {
  .br-1100-b {
    display: block
  }
}
.br-sp-b {
  display: none
}
@media(max-width: 768px) {
  .br-sp-b {
    display: block
  }
}
.br-600-b {
  display: none
}
@media(max-width: 600px) {
  .br-600-b {
    display: block
  }
}
.br-500-b {
  display: none
}
@media(max-width: 500px) {
  .br-500-b {
    display: block
  }
}
.c-title {
  font-weight: bold
}
.c-title__en {
  color: #b6b6b6;
  font-size: clamp(3.75rem, .2884615385rem + 11.5384615385vw, 7.5rem);
  text-align: center
}
.c-title__en_50 {
  font-size: clamp(3.125rem, .5rem + 8.75vw, 7.5rem)
}
@media(max-width: 768px) {
  .c-title__en_50 {
    font-size: clamp(2.875rem, 1.6091772152rem + 5.0632911392vw, 3.125rem)
  }
}
.c-title__jp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 36px
}
@media(max-width: 768px) {
  .c-title__jp {
    margin-top: 50px
  }
}
.c-title__jp::before, .c-title__jp::after {
  content: "";
  height: 2px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  position: relative;
  background-color: var(--t-blue)
}
.c-title__text {
  min-width: clamp(18.75rem, 12.9807692308rem + 19.2307692308vw, 25rem);
  height: 70px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: var(--t-blue);
  font-size: clamp(2.5rem, 1.9230769231rem + 1.9230769231vw, 3.125rem);
  line-height: 1;
  border-right: 2px solid var(--t-blue);
  border-left: 2px solid var(--t-blue);
  padding: 0 44px
}
@media(max-width: 479px) {
  .c-title__text {
    font-size: clamp(2.125rem, .2262658228rem + 7.5949367089vw, 2.5rem)
  }
}
.c-title__text_plan {
  padding: 0 clamp(.625rem, -1.3365384615rem + 6.5384615385vw, 2.75rem)
}
.drawer {
  width: 300px;
  height: 100vh;
  -webkit-transform: translateX(300px);
  -ms-transform: translateX(300px);
  transform: translateX(300px);
  -webkit-transition: .5s;
  transition: .5s;
  background-color: var(--base);
  z-index: 15;
  overflow: auto;
  overscroll-behavior-y: contain;
  visibility: hidden
}
.drawer[aria-hidden=false] {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  visibility: visible
}
.drawer_position {
  position: fixed;
  top: 0;
  right: 0
}
.drawer__inner {
  padding-bottom: 100px
}
.drawer__top {
  width: 100%;
  height: clamp(4.4375rem, 2.1066319108rem + 4.8496605238vw, 7.5625rem);
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  background-color: var(--base);
  z-index: 1
}
.drawer__item {
  border-bottom: 1px solid var(--text)
}
.drawer__item:first-of-type {
  border-top: 1px solid var(--text)
}
.drawer__link {
  height: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-weight: bold;
  letter-spacing: .06em;
  padding-right: 20px;
  padding-left: 20px
}
.drawer__link_sub {
  padding-left: 40px
}
.drawer__button-wrapper {
  max-width: 260px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  margin: 30px auto 0
}
.is-drawer-active {
  overflow: hidden
}
@media(hover: hover)and (pointer: fine) {
  .drawer__link {
    -webkit-transition: background-color .4s, color .4s;
    transition: background-color .4s, color .4s
  }
  .drawer__link:hover, .drawer__link:focus {
    background-color: rgba(245, 244, 244, .8);
    background-color: var(--t-blue);
    color: var(--base)
  }
}
.drawer-bg {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  background-color: #000;
  visibility: hidden;
  opacity: 0;
  z-index: 5
}
.is-drawer-active {
  height: 100%;
  overflow: hidden
}
.is-drawer-active .drawer-bg {
  visibility: visible;
  opacity: .8;
  -webkit-transition: .3s;
  transition: .3s
}
.footer_pos {
  margin-top: 194px
}
.footer__bg {
  background-color: #f7f8f8
}
.footer__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding: 84px 30px 152px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px
}
@media(max-width: 1100px) {
  .footer__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    row-gap: clamp(.875rem, -1.8333333333rem + 9.0277777778vw, 2.5rem)
  }
}
@media(max-width: 768px) {
  .footer__inner {
    padding: 102px 30px clamp(2.875rem, -8.1666666667rem + 36.8055555556vw, 9.5rem)
  }
}
.footer__group1 {
  max-width: 480px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-left: clamp(0rem, -46.5rem + 62vw, 3.875rem)
}
.footer__site {
  max-width: 442px;
  width: 100%;
  height: 69px;
  display: grid;
  place-items: center;
  background-color: var(--t-blue);
  color: var(--base);
  font-size: 1.875rem;
  font-weight: bold;
  margin-top: 42px
}
.footer__logo {
  max-width: 404px;
  width: 100%
}
.footer__address {
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.75;
  margin-top: clamp(1.6875rem, -0.8125rem + 8.3333333333vw, 3.1875rem)
}
.footer__address-1 {
  --spacing: 0.08em
}
@media(max-width: 768px) {
  .footer__code {
    margin-left: -24px
  }
}
.footer__code::before {
  content: "";
  min-width: 17px;
  aspect-ratio: 17/25;
  display: inline-block;
  background: url(../images/icon-map.svg) no-repeat 0 0/contain;
  vertical-align: sub
}
.footer__building {
  display: block;
  text-align: right
}
@media(max-width: 768px) {
  .footer__building {
    text-align: left
  }
}
.footer__tel {
  font-weight: bold;
  margin-top: clamp(2.3125rem, 1.0625rem + 4.1666666667vw, 3.0625rem)
}
.footer__tel-text {
  font-size: clamp(1.25rem, .8333333333rem + 1.3888888889vw, 1.5rem);
  text-align: center;
  --spacing: 0.08em
}
.footer__tel-number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 15px;
  -moz-column-gap: 15px;
  column-gap: 15px;
  font-size: clamp(2.5rem, 1.4583333333rem + 3.4722222222vw, 3.125rem);
  --spacing: 0.08em;
  margin-top: 3px
}
@media(max-width: 768px) {
  .footer__tel-number {
    font-size: clamp(2.25rem, .9841772152rem + 5.0632911392vw, 2.5rem);
    margin-top: 15px
  }
}
.footer__tel-number::before {
  content: "";
  min-width: 30px;
  aspect-ratio: 1/1;
  background: url(../images/icon-tel-b.svg) no-repeat 0 0/contain
}
.footer__group2 {
  max-width: 640px;
  width: 100%;
  margin-top: 32px
}
.footer__info {
  max-width: 620px
}
.footer__table-wrapper {
  background-color: var(--base);
  padding: 6px 7px 9px
}
@media(max-width: 600px) {
  .footer__table-wrapper {
    padding: 11px clamp(0rem, -.7291666667rem + 2.4305555556vw, .4375rem) 9px
  }
}
.footer__info-text {
  font-size: 17px;
  line-height: 1.75;
  --spacing: 0.06em;
  white-space: pre-line;
  margin-top: clamp(.625rem, .4166666667rem + .6944444444vw, .75rem);
  margin-left: clamp(0rem, -.8333333333rem + 2.7777777778vw, .5rem)
}
@media(max-width: 768px) {
  .footer__info-text {
    line-height: 1.65
  }
}
.footer__img {
  margin-top: clamp(2.0625rem, -0.4375rem + 8.3333333333vw, 3.5625rem)
}
.footer__banner-area {
  position: relative
}
.footer__banner-inner {
  max-width: 962px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding: 67px 30px 178px
}
@media(max-width: 768px) {
  .footer__banner-inner {
    padding: clamp(2.5625rem, -.1458333333rem + 9.0277777778vw, 4.1875rem) clamp(1.1875rem, .0416666667rem + 3.8194444444vw, 1.875rem) clamp(5rem, -5.2083333333rem + 34.0277777778vw, 11.125rem)
  }
}
.footer__gmap {
  width: 100%;
  height: clamp(30.875rem, 21.1875rem + 32.2916666667vw, 36.6875rem)
}
.footer__copy {
  height: 113px;
  display: grid;
  place-items: center;
  background-color: var(--t-blue);
  color: var(--base)
}
.footer-table {
  width: 100%;
  background-color: var(--base);
  font-size: clamp(.988125rem, .2391666667rem + 2.4965277778vw, 1.4375rem)
}
.footer-table__tr-top {
  border-bottom: 1px solid var(--t-blue)
}
.footer-table__tr-am {
  border-bottom: 1px solid var(--t-blue)
}
.footer-table__tr-pm {
  border-bottom: 1px solid var(--t-blue)
}
.footer-table__left {
  width: 35.1%
}
.footer-table__th {
  --spacing: 0.06em
}
.footer-table__th-top {
  padding-bottom: clamp(.8125rem, .2916666667rem + 1.7361111111vw, 1.125rem)
}
.footer-table__th-text {
  padding-left: 15px
}
.footer-table__td {
  color: var(--t-blue);
  --spacing: 0.06em
}
.footer-table__am {
  padding-top: clamp(.375rem, .1666666667rem + .6944444444vw, .5rem);
  padding-bottom: clamp(.5625rem, .0416666667rem + 1.7361111111vw, .875rem)
}
.footer-table__pm {
  padding-top: clamp(.625rem, .3125rem + 1.0416666667vw, .8125rem);
  padding-bottom: clamp(.625rem, .1041666667rem + 1.7361111111vw, .9375rem)
}
.footer-table__time {
  text-align: center
}
.footer-page-top {
  width: clamp(3.75rem, .9108649789rem + 5.9071729958vw, 6.375rem);
  aspect-ratio: 1/1;
  display: grid;
  place-items: center;
  position: absolute;
  bottom: 28px;
  right: 20px;
  z-index: 5;
  background-color: var(--t-blue);
  border-radius: 50%
}
@media(max-width: 768px) {
  .footer-page-top {
    width: 3.496875rem;
    bottom: 80px!important;
  }
}
.footer-page-top__arrow {
  width: 1.50375rem
}
.hamburger {
  width: clamp(4.401875rem, 2.0910523763rem + 4.8079534433vw, 7.5rem);
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  position: relative;
  z-index: 30;
  background-color: var(--t-blue);
  padding-bottom: clamp(.875rem, .4088263822rem + .9699321048vw, 1.5rem)
}
.hamburger[aria-expanded=true] .hamburger__line {
  background-color: rgba(0, 0, 0, 0)
}
.hamburger[aria-expanded=true] .hamburger__line::before {
  -webkit-transform: translateY(calc(clamp(0.5rem, 0.2202958293rem + 0.5819592629vw, 0.875rem) * -1)) rotate(150deg);
  -ms-transform: translateY(calc(clamp(0.5rem, 0.2202958293rem + 0.5819592629vw, 0.875rem) * -1)) rotate(150deg);
  transform: translateY(calc(clamp(0.5rem, 0.2202958293rem + 0.5819592629vw, 0.875rem) * -1)) rotate(150deg)
}
.hamburger[aria-expanded=true] .hamburger__line::after {
  -webkit-transform: translateY(clamp(0.5rem, 0.2669131911rem + 0.4849660524vw, 0.8125rem)) rotate(-150deg);
  -ms-transform: translateY(clamp(0.5rem, 0.2669131911rem + 0.4849660524vw, 0.8125rem)) rotate(-150deg);
  transform: translateY(clamp(0.5rem, 0.2669131911rem + 0.4849660524vw, 0.8125rem)) rotate(-150deg)
}
.hamburger__line {
  width: clamp(1.650625rem, .7840082444rem + 1.8031037827vw, 2.8125rem);
  height: 3px;
  display: inline-block;
  position: absolute;
  top: calc(50% - clamp(.4375rem, .1111784675rem + .6789524733vw, .875rem));
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: .5s all;
  transition: .5s all;
  background-color: var(--base)
}
.hamburger__line::before {
  content: "";
  width: 100%;
  height: 3px;
  display: inline-block;
  position: absolute;
  top: clamp(.5rem, .2202958293rem + .5819592629vw, .875rem);
  left: 0;
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
  background-color: var(--base)
}
.hamburger__line::after {
  content: "";
  width: 100%;
  height: 3px;
  display: inline-block;
  position: absolute;
  bottom: clamp(.5rem, .2202958293rem + .5819592629vw, .875rem);
  left: 0;
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
  background-color: var(--base)
}
.hamburger__menu {
  color: var(--base);
  font-size: clamp(.916875rem, .4353176528rem + 1.0019398642vw, 1.5625rem);
  font-weight: 900;
  --spacing: 0.08em
}
@media(hover: hover)and (pointer: fine) {
  .hamburger {
    -webkit-transition: background-color .5s;
    transition: background-color .5s
  }
  .hamburger:hover {
    background-color: var(--blue)
  }
}
.header {
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 10
}
.header_sticky {
  position: -webkit-sticky;
  position: sticky
}
.header_sticky .header__logo {
  display: none
}
.header_sticky .header__logo-sticky {
  width: 100%;
  visibility: visible
}
.header_sticky .header__text {
  display: none
}
.header__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  padding-left: clamp(.5rem, -.572199321rem + 2.2308438409vw, 1.9375rem)
}
.header__logo {
  max-width: clamp(10.8125rem, 5.404886033rem + 11.2512124151vw, 18.0625rem);
  margin-top: clamp(.375rem, .0020611057rem + .7759456838vw, .875rem)
}
@media(max-width: 768px) {
  .header__logo {
    max-width: 276px
  }
}
.header__logo-sticky {
  max-width: clamp(4.401875rem, 2.7903128031rem + 3.3530552861vw, 6.5625rem);
  width: 0;
  visibility: hidden;
  margin-top: clamp(.375rem, .0020611057rem + .7759456838vw, .875rem)
}
.header__group {
  max-width: clamp(30.125rem, 17.0721387003rem + 27.1580989331vw, 47.625rem);
  width: 100%
}
@media(max-width: 768px) {
  .header__group {
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content
  }
}
.header__group-top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: flex-end;
}
.header__info {
  max-width: clamp(25rem, 15.1171193016rem + 20.5625606208vw, 38.25rem);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex
}
@media(max-width: 768px) {
  .header__info {
    display: none
  }
}
.insta_icon{
	padding: 10px;
}
@media(max-width: 768px) {
  .insta_icon{
	padding: 0!important;
	width: 40%;
	margin-right: 10px;
  }
}
.header__text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5px;
  -moz-column-gap: 5px;
  column-gap: 5px;
  font-size: clamp(.9375rem, .7044131911rem + .4849660524vw, 1.25rem);
  --spacing: 0.08em;
  margin-top: clamp(.375rem, .0020611057rem + .7759456838vw, .875rem)
}
@media(max-width: 768px) {
  .header__text {
    display: none
  }
}
.header__text::before {
  content: "";
  max-width: clamp(.75rem, .5169131911rem + .4849660524vw, 1.0625rem);
  width: 100%;
  aspect-ratio: 17/25;
  background: url(../images/icon-map.svg) no-repeat 0 0/contain
}
@media(max-width: 768px) {
  .header-nav {
    display: none
  }
}
@media(hover: hover)and (pointer: fine) {
  .header-nav__link {
    -webkit-transition: opacity .5s;
    transition: opacity .5s
  }
  .header-nav__link:hover, .header-nav__link:focus {
    opacity: .7
  }
}
@media(hover: hover)and (pointer: fine) {
  .op {
    -webkit-transition: opacity .5s;
    transition: opacity .5s
  }
  .op:hover, .op:focus {
    opacity: .7
  }
}
@media(hover: hover)and (pointer: fine) {
  .op-fn {
    -webkit-transition: opacity .5s;
    transition: opacity .5s
  }
  .op-fn:hover {
    opacity: .7
  }
}
@media(hover: hover)and (pointer: fine) {
  .op-im {
    -webkit-transition: opacity .5s;
    transition: opacity .5s
  }
  .op-im:hover, .op-im:focus {
    opacity: .7 !important
  }
}
@media(hover: hover)and (pointer: fine) {
  .op-fnim {
    -webkit-transition: opacity .5s;
    transition: opacity .5s
  }
  .op-fnim:hover {
    opacity: .7 !important
  }
}
.mv {
  position: relative
}
.mv__title {
  max-width: clamp(31.25rem, 4.9578079534rem + 54.7041707081vw, 66.5rem);
  position: absolute;
  bottom: clamp(2.9375rem, 1.8958333333rem + 3.4722222222vw, 3.5625rem);
  left: 2.8%;
  z-index: 3
}
@media(max-width: 768px) {
  .mv__title {
    max-width: clamp(27.25rem, 10.1666666667rem + 56.9444444444vw, 37.5rem);
    width: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
  }
}
@media(max-width: 479px) {
  .mv__title {
    max-width: clamp(23.4375rem, 4.1337025316rem + 77.2151898734vw, 27.25rem)
  }
}
.mv__pop {
  max-width: clamp(11.25rem, .8077109602rem + 21.7264791465vw, 25.25rem);
  position: absolute;
  right: 1.2%;
  bottom: clamp(.3125rem, -1.5521944714rem + 3.879728419vw, 2.8125rem);
  z-index: 3
}
@media(max-width: 768px) {
  .mv__pop {
    max-width: 342px;
    bottom: -140px;
    right: 16.8%
  }
}
@media(max-width: 479px) {
  .mv__pop {
    right: clamp(1.875rem, -14.2642405063rem + 64.5569620253vw, 5.0625rem)
  }
}
.mv__img {
  min-height: 500px;
  -o-object-fit: cover;
  object-fit: cover
}
.consult {
  font-weight: bold
}
.consult_pos {
  margin-top: 76px
}
@media(max-width: 768px) {
  .consult_pos {
    margin-top: 178px
  }
}
.consult__top {
  position: relative
}
.consult__top::after {
  content: "";
  width: 100%;
  height: 213px;
  position: absolute;
  bottom: 0;
  background: url(../images/contact-bg.webp) no-repeat bottom center/cover;
  background-image: -webkit-image-set(url(../images/contact-bg.webp) 1x, url(../images/contact-bg@2x.webp) 2x);
  background-image: image-set(url(../images/contact-bg.webp) 1x, url(../images/contact-bg@2x.webp) 2x)
}
@media(max-width: 768px) {
  .consult__top::after {
    height: 380px;
    background: url(../images/contact-bg_sp.webp) no-repeat bottom center/cover;
    background-image: -webkit-image-set(url(../images/contact-bg_sp.webp) 1x, url(../images/contact-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/contact-bg_sp.webp) 1x, url(../images/contact-bg_sp@2x.webp) 2x)
  }
}
.consult__message {
  max-width: 1508px;
  margin-inline: auto;
  padding: 0 clamp(1rem, -.4583333333rem + 4.8611111111vw, 1.875rem)
}
.consult__top-inner {
  max-width: 1563px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  margin-top: clamp(1.875rem, -1.875rem + 12.5vw, 4.125rem)
}
.consult__body {
  position: relative;
  z-index: 1;
  background-color: #ececec;
  -webkit-box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, .47);
  box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, .47);
  padding: 58px 20px 37px
}
@media(max-width: 768px) {
  .consult__body {
    padding: clamp(2.8125rem, -3.2001582278rem + 24.0506329114vw, 4rem) 20px 55px
  }
}
.consult__body::before {
  content: "";
  width: clamp(4.6875rem, -.1093444227rem + 9.9804305284vw, 7.875rem);
  aspect-ratio: 1/1;
  position: absolute;
  top: 21px;
  left: clamp(.5625rem, -1.6526898734rem + 8.8607594937vw, 1rem);
  border-top: 1px solid var(--blue);
  border-left: 1px solid var(--blue)
}
@media(max-width: 768px) {
  .consult__body::before {
    width: clamp(3.75rem, -4.7943037975rem + 34.1772151899vw, 5.4375rem);
    top: 7px
  }
}
.consult__body::after {
  content: "";
  width: clamp(4.6875rem, -.1093444227rem + 9.9804305284vw, 7.875rem);
  aspect-ratio: 1/1;
  position: absolute;
  top: 21px;
  right: clamp(.5625rem, -1.6526898734rem + 8.8607594937vw, 1rem);
  border-top: 1px solid var(--blue);
  border-right: 1px solid var(--blue)
}
@media(max-width: 768px) {
  .consult__body::after {
    width: clamp(3.75rem, -4.7943037975rem + 34.1772151899vw, 5.4375rem);
    top: 7px
  }
}
.consult__title {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  position: absolute;
  top: -35px;
  top: calc(clamp(1.5rem, .9196624588rem + 1.2074643249vw, 2.1875rem)*-1);
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: -1;
  color: var(--base);
  font-size: clamp(5rem, 2.8896816685rem + 4.3907793633vw, 7.5rem)
}
@media(max-width: 768px) {
  .consult__title {
    top: 9px;
    font-size: clamp(3.75rem, 1.6666666667rem + 6.9444444444vw, 5rem)
  }
}
@media(max-width: 479px) {
  .consult__title {
    font-size: clamp(3.125rem, -.039556962rem + 12.6582278481vw, 3.75rem)
  }
}
.consult__subtitle {
  color: var(--blue);
  font-size: clamp(2.25rem, 2.0389681668rem + .4390779363vw, 2.5rem);
  text-align: center
}
@media(max-width: 768px) {
  .consult__subtitle {
    font-size: clamp(1.875rem, 1.25rem + 2.0833333333vw, 2.25rem);
    --spacing: 0
  }
}
@media(max-width: 479px) {
  .consult__subtitle {
    font-size: clamp(1.5625rem, -.019778481rem + 6.3291139241vw, 1.875rem)
  }
}
.consult__text {
  font-size: 24px;
  text-align: center;
  margin-top: 20px
}
.consult__items {
  max-width: 1453px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(.9375rem, -0.625rem + 5.2083333333vw, 1.875rem) clamp(1.25rem, .0365669594rem + 2.5246981339vw, 2.6875rem);
  margin-top: 30px;
  margin-inline: auto
}
@media(max-width: 768px) {
  .consult__items {
    max-width: 550px;
    grid-template-columns: 1fr;
    margin-top: 48px
  }
}
.consult__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: clamp(.625rem, -2.8042672887rem + 7.1350164654vw, 4.6875rem);
  -moz-column-gap: clamp(.625rem, -2.8042672887rem + 7.1350164654vw, 4.6875rem);
  column-gap: clamp(.625rem, -2.8042672887rem + 7.1350164654vw, 4.6875rem);
  background-color: var(--base);
  color: var(--blue);
  font-size: clamp(1.25rem, .7224204171rem + 1.0976948408vw, 1.875rem);
  line-height: 1.75;
  -webkit-box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, .47);
  box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, .47);
  padding-left: 30px;
  padding: 15px 15px 15px clamp(.9375rem, -.3814489572rem + 2.7442371021vw, 2.5rem)
}
@media(max-width: 768px) {
  .consult__item {
    -webkit-column-gap: clamp(.375rem, -4.0553797468rem + 17.7215189873vw, 1.25rem);
    -moz-column-gap: clamp(.375rem, -4.0553797468rem + 17.7215189873vw, 1.25rem);
    column-gap: clamp(.375rem, -4.0553797468rem + 17.7215189873vw, 1.25rem);
    --spacing: 0;
    padding: 18px 10px 18px 15px
  }
}
@media(max-width: 479px) {
  .consult__item {
    font-size: clamp(1rem, -.2658227848rem + 5.0632911392vw, 1.25rem)
  }
}
.consult__item::before {
  content: "";
  max-width: clamp(1.9375rem, 1.6209522503rem + .6586169045vw, 2.3125rem);
  width: 100%;
  aspect-ratio: 37/33;
  background: url(../images/icon-check-g.svg) no-repeat 0 0/contain;
  margin-top: clamp(.25rem, -.119305708rem + .7683863886vw, .6875rem)
}
@media(max-width: 479px) {
  .consult__item::before {
    max-width: clamp(1.5625rem, -.3362341772rem + 7.5949367089vw, 1.9375rem)
  }
}
.consult__bottom {
  background: url(../images/contact-bg-2.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/contact-bg-2.webp) 1x, url(../images/contact-bg-2@2x.webp) 2x);
  background-image: image-set(url(../images/contact-bg-2.webp) 1x, url(../images/contact-bg-2@2x.webp) 2x)
}
@media(max-width: 768px) {
  .consult__bottom {
    background: url(../images/contact-bg-2_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/contact-bg-2_sp.webp) 1x, url(../images/contact-bg-2_sp@2x.webp) 2x);
    background-image: image-set(url(../images/contact-bg-2_sp.webp) 1x, url(../images/contact-bg-2_sp@2x.webp) 2x)
  }
}
.consult__bottom-inner {
  max-width: 1150px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding: 54px 30px 54px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: clamp(1.25rem, -15.3655742459rem + 34.5707656613vw, 10.5625rem);
  -moz-column-gap: clamp(1.25rem, -15.3655742459rem + 34.5707656613vw, 10.5625rem);
  column-gap: clamp(1.25rem, -15.3655742459rem + 34.5707656613vw, 10.5625rem)
}
@media(max-width: 768px) {
  .consult__bottom-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    row-gap: 66px;
    padding: clamp(3rem, 2.375rem + 2.0833333333vw, 3.375rem) 30px clamp(2.4375rem, .875rem + 5.2083333333vw, 3.375rem)
  }
}
.consult__tel {
  max-width: clamp(25.875rem, 14.8351218097rem + 22.969837587vw, 32.0625rem);
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  row-gap: 1px;
  color: var(--base)
}
@media(max-width: 768px) {
  .consult__tel {
    row-gap: 12px
  }
}
.consult__tel-text {
  font-size: 30px;
  --spacing: 0.08em
}
.consult__number {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  font-size: clamp(3rem, 1.6618329466rem + 2.7842227378vw, 3.75rem);
  --spacing: 0.08em
}
@media(max-width: 479px) {
  .consult__number {
    font-size: clamp(2.4375rem, -.4106012658rem + 11.3924050633vw, 3rem)
  }
}
.consult__number::before {
  content: "";
  max-width: clamp(2.125rem, 1.12137471rem + 2.0881670534vw, 2.6875rem);
  width: 100%;
  aspect-ratio: 1/1;
  background: url(../images/icon-tel-w.svg) no-repeat 0 0/contain
}
@media(max-width: 479px) {
  .consult__number::before {
    max-width: clamp(1.75rem, -.1487341772rem + 7.5949367089vw, 2.125rem)
  }
}
.consult__mail {
  max-width: 381px
}
.trouble_pos {
  margin-top: 36px
}
@media(max-width: 768px) {
  .trouble_pos {
    margin-top: 40px
  }
}
.trouble__bottom {
  max-width: 1574px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  margin-top: clamp(1.25rem, -.2083333333rem + 4.8611111111vw, 2.125rem)
}
@media(max-width: 768px) {
  .trouble__bottom {
    padding: 0
  }
}
.trouble__bg {
  max-width: 1458px;
  min-height: 459px;
  background: url(../images/trouble-2.webp) no-repeat center center/100% 459px;
  background-image: -webkit-image-set(url(../images/trouble-2.webp) 1x, url(../images/trouble-2@2x.webp) 2x);
  background-image: image-set(url(../images/trouble-2.webp) 1x, url(../images/trouble-2@2x.webp) 2x);
  margin-left: auto;
  padding-top: 183px
}
@media(max-width: 768px) {
  .trouble__bg {
    min-height: 467px;
    background: url(../images/trouble-2_sp.webp) no-repeat center center/100% 467px;
    background-image: -webkit-image-set(url(../images/trouble-2_sp.webp) 1x, url(../images/trouble-2_sp@2x.webp) 2x);
    background-image: image-set(url(../images/trouble-2_sp.webp) 1x, url(../images/trouble-2_sp@2x.webp) 2x)
  }
}
.trouble__box {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  row-gap: clamp(1.625rem, -.1458333333rem + 5.9027777778vw, 2.6875rem);
  font-weight: bold;
  line-height: 1.75;
  text-indent: calc(clamp(0rem, -6.271804261rem + 13.0492676431vw, 6.125rem)*-1);
  margin-inline: auto
}
.trouble__text-1 {
  font-size: clamp(1.75rem, 1.3020139814rem + .9320905459vw, 2.1875rem)
}
@media(max-width: 768px) {
  .trouble__text-1 {
    font-size: clamp(1.375rem, .75rem + 2.0833333333vw, 1.75rem)
  }
}
@media(max-width: 479px) {
  .trouble__text-1 {
    font-size: clamp(1.125rem, -.1408227848rem + 5.0632911392vw, 1.375rem)
  }
}
.trouble__text-2 {
  max-width: clamp(31.4375rem, -14.5770639148rem + 95.7390146471vw, 76.375rem);
  font-size: clamp(1.875rem, 1.2350199734rem + 1.3315579228vw, 2.5rem)
}
@media(max-width: 768px) {
  .trouble__text-2 {
    max-width: clamp(20.625rem, 2.6041666667rem + 60.0694444444vw, 31.4375rem)
  }
}
.symptom {
  background: url(../images/symptom-bg.webp) no-repeat center center/cover;
  background-image: -webkit-image-set(url(../images/symptom-bg.webp) 1x, url(../images/symptom-bg@2x.webp) 2x);
  background-image: image-set(url(../images/symptom-bg.webp) 1x, url(../images/symptom-bg@2x.webp) 2x)
}
@media(max-width: 768px) {
  .symptom {
    background: url(../images/symptom-bg_sp.webp) no-repeat center center/cover;
    background-image: -webkit-image-set(url(../images/symptom-bg_sp.webp) 1x, url(../images/symptom-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/symptom-bg_sp.webp) 1x, url(../images/symptom-bg_sp@2x.webp) 2x)
  }
}
.symptom_pos {
  margin-top: clamp(4.5625rem, -1.375rem + 19.7916666667vw, 8.125rem)
}
.symptom__inner {
  max-width: 1662px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding: 97px 30px 144px
}
@media(max-width: 768px) {
  .symptom__inner {
    padding: clamp(1.8125rem, -7.0416666667rem + 29.5138888889vw, 7.125rem) clamp(.75rem, -1.125rem + 6.25vw, 1.875rem) clamp(4.9375rem, -1.8333333333rem + 22.5694444444vw, 9rem)
  }
}
.symptom__title {
  color: var(--base);
  font-size: clamp(2.875rem, 1.5582191781rem + 2.7397260274vw, 3.75rem);
  font-weight: bold;
  line-height: 1.75;
  text-align: center
}
@media(max-width: 768px) {
  .symptom__title {
    font-size: clamp(2.5rem, 1.875rem + 2.0833333333vw, 2.875rem)
  }
}
.symptom__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 40px 20px;
  margin-top: clamp(2rem, -7.5833333333rem + 31.9444444444vw, 7.75rem)
}
@media(max-width: 1680px) {
  .symptom__items {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
  }
}
@media(max-width: 768px) {
  .symptom__items {
    max-width: 460px;
    margin-inline: auto
  }
}
.symptom__item {
  max-width: 204px;
  width: 100%
}
@media(max-width: 768px) {
  .symptom__item {
    max-width: 98px
  }
}
@media(max-width: 768px) {
  .symptom__item_last {
    min-width: 116px
  }
}
.merit_pos {
  margin-top: 45px
}
@media(max-width: 768px) {
  .merit_pos {
    margin-top: 95px
  }
}
.merit__inner {
  max-width: 1634px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px
}
@media(max-width: 768px) {
  .merit__inner {
    padding: 0 clamp(1.25rem, -1.914556962rem + 12.6582278481vw, 1.875rem)
  }
}
.merit__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: bold
}
.merit__en {
  color: #e0e0e0;
  font-size: clamp(5rem, 2.1428571429rem + 9.5238095238vw, 7.5rem)
}
.merit__jp {
  font-size: clamp(1.75rem, 1.25rem + 1.6666666667vw, 2.1875rem);
  line-height: 1.75;
  text-align: center;
  white-space: pre-line;
  margin-top: -32px
}
@media(max-width: 768px) {
  .merit__jp {
    margin-top: 29px
  }
}
.merit__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 73px clamp(1.25rem, -4.95rem + 7.75vw, 3.1875rem);
  margin-top: clamp(3.375rem, -1.4107142857rem + 15.9523809524vw, 7.5625rem)
}
@media(max-width: 1280px) {
  .merit__items {
    grid-template-columns: repeat(2, 1fr)
  }
}
@media(max-width: 900px) {
  .merit__items {
    max-width: 600px;
    grid-template-columns: 1fr;
    row-gap: 94px;
    margin-inline: auto
  }
}
.merit__item-title {
  font-size: clamp(1.75rem, 1.1170886076rem + 2.5316455696vw, 1.875rem);
  line-height: 1.75;
  text-align: center;
  white-space: pre-line;
  margin-top: 21px
}
.merit__text {
  max-width: 483px;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  line-height: 2.5;
  margin-top: clamp(.6875rem, -.3839285714rem + 3.5714285714vw, 1.625rem);
  margin-inline: auto
}
.feature_pos {
  margin-top: clamp(9.125rem, 1.2839879154rem + 16.3141993958vw, 12.5rem)
}
.feature__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  row-gap: 9px;
  font-weight: bold
}
@media(max-width: 768px) {
  .feature__title {
    row-gap: 36px
  }
}
.feature__en {
  color: #e0e0e0;
  font-size: clamp(3.75rem, -4.9622356495rem + 18.1268882175vw, 7.5rem)
}
.feature__jp {
  font-size: clamp(1.625rem, .3591772152rem + 5.0632911392vw, 1.875rem);
  line-height: 1.75;
  text-align: center
}
@media(max-width: 768px) {
  .feature__jp {
    --spacing: -0.02em
  }
}
.feature__bg {
  background: url(../images/feature-bg.webp) no-repeat top 93px center/cover;
  background-image: -webkit-image-set(url(../images/feature-bg.webp) 1x, url(../images/feature-bg@2x.webp) 2x);
  background-image: image-set(url(../images/feature-bg.webp) 1x, url(../images/feature-bg@2x.webp) 2x);
  padding-top: clamp(8.5625rem, 6.03125rem + 8.4375vw, 10.25rem);
  padding-bottom: 56px
}
@media(max-width: 768px) {
  .feature__bg {
    background: url(../images/feature-bg_sp.webp) no-repeat top 29px center/100% auto;
    background-image: -webkit-image-set(url(../images/feature-bg_sp.webp) 1x, url(../images/feature-bg_sp@2x.webp) 2x);
    background-image: image-set(url(../images/feature-bg_sp.webp) 1x, url(../images/feature-bg_sp@2x.webp) 2x)
  }
}
.feature-main {
  max-width: 1920px;
  margin-inline: auto
}
.feature-main_1 {
  padding-left: 30px
}
@media(max-width: 1000px) {
  .feature-main_1 {
    padding-left: 0
  }
}
.feature-main_2 {
  margin-top: clamp(6.75rem, 1.96875rem + 15.9375vw, 9.9375rem);
  padding-right: 30px
}
@media(max-width: 1000px) {
  .feature-main_2 {
    padding-right: 0
  }
}
.feature-main_3 {
  margin-top: clamp(7.5625rem, 1.09375rem + 21.5625vw, 11.875rem);
  padding-left: 30px
}
@media(max-width: 1000px) {
  .feature-main_3 {
    padding-left: 0
  }
}
.feature-main__body {
  max-width: 1696px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  margin-left: auto
}
@media(max-width: 1000px) {
  .feature-main__body {
    max-width: 609px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    row-gap: clamp(.8125rem, -0.78125rem + 5.3125vw, 1.875rem);
    margin: 0;
    margin-inline: auto
  }
}
@media(max-width: 1000px) {
  .feature-main__body_3 {
    row-gap: 51px
  }
}
.feature-main__body2 {
  max-width: 1850px;
  position: relative;
  margin-right: auto;
  padding-top: 153px
}
@media(max-width: 1000px) {
  .feature-main__body2 {
    max-width: 609px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    row-gap: clamp(0rem, -2.8125rem + 9.375vw, 1.875rem);
    margin: 0;
    margin-inline: auto;
    padding-top: 0
  }
}
.feature-main__box-outer {
  max-width: clamp(50rem, -254.0625rem + 278vw, 58.6875rem);
  min-height: 605px;
  width: 100%;
  display: grid;
  place-items: center;
  position: relative;
  background-color: var(--base);
  -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, .47);
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, .47);
  margin-left: auto;
  padding: 0 clamp(.75rem, -0.9375rem + 5.625vw, 1.875rem)
}
@media(max-width: 1750px) {
  .feature-main__box-outer {
    max-width: clamp(40.625rem, 28.125rem + 20vw, 50rem)
  }
}
@media(max-width: 1000px) {
  .feature-main__box-outer {
    max-width: inherit;
    display: block;
    background-color: rgba(0, 0, 0, 0);
    -webkit-box-shadow: inherit;
    box-shadow: inherit
  }
}
.feature-main__box-outer::before, .feature-main__box-outer::after {
  content: "";
  width: clamp(5.625rem, 3.6764460512rem + 3.1145717464vw, 7.375rem);
  aspect-ratio: 1/1;
  position: absolute;
  z-index: 1
}
@media(max-width: 1000px) {
  .feature-main__box-outer::before, .feature-main__box-outer::after {
    width: clamp(4.6875rem, 3.8221153846rem + 2.8846153846vw, 5.625rem)
  }
}
.feature-main__box-outer::before {
  top: clamp(1.875rem, -.0735539488rem + 3.1145717464vw, 3.625rem);
  left: clamp(3.625rem, 1.5372636263rem + 3.3370411568vw, 5.5rem);
  border-top: 1px solid var(--text);
  border-left: 1px solid var(--text)
}
@media(max-width: 1000px) {
  .feature-main__box-outer::before {
    top: 14px;
    left: clamp(1.8125rem, 1.0048076923rem + 2.6923076923vw, 2.6875rem)
  }
}
.feature-main__box-outer::after {
  bottom: clamp(3rem, 1.8865406007rem + 1.7797552836vw, 4rem);
  right: clamp(1.1875rem, -1.0394187987rem + 3.5595105673vw, 3.1875rem);
  border-bottom: 1px solid var(--text);
  border-right: 1px solid var(--text)
}
@media(max-width: 1000px) {
  .feature-main__box-outer::after {
    content: none
  }
}
@media(max-width: 1000px) {
  .feature-main__sp-box {
    position: relative;
    background-color: var(--base);
    -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, .47);
    box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, .47);
    padding: 50px 20px 38px
  }
}
@media(max-width: 1000px) {
  .feature-main__sp-box::after {
    content: "";
    width: clamp(4.6875rem, 3.8221153846rem + 2.8846153846vw, 5.625rem);
    aspect-ratio: 1/1;
    position: absolute;
    bottom: 12px;
    right: 12px;
    border-bottom: 1px solid var(--text);
    border-right: 1px solid var(--text)
  }
}
.feature-main__box {
  max-width: 609px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center
}
@media(max-width: 1000px) {
  .feature-main__box {
    padding: 0 30px
  }
}
.feature-main__box2 {
  max-width: 609px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center
}
@media(max-width: 1600px) {
  .feature-main__box2 {
    padding-left: 60px
  }
}
@media(max-width: 1000px) {
  .feature-main__box2 {
    padding-left: 0
  }
}
.feature-main__number {
  max-width: 191px;
  margin-right: 90px
}
@media(max-width: 1000px) {
  .feature-main__number {
    margin-right: inherit;
    margin-inline: auto
  }
}
.feature-main__title {
  max-width: 448px;
  width: 100%;
  font-size: clamp(1.25rem, -.6487341772rem + 7.5949367089vw, 1.625rem);
  line-height: 1.75;
  text-align: justify;
  -moz-text-align-last: justify;
  text-align-last: justify;
  --spacing: 0;
  white-space: pre-line;
  margin-top: clamp(.8125rem, .0625rem + 2.5vw, 1.3125rem);
  margin-inline: auto
}
.feature-main__title_2 {
  max-width: 450px
}
.feature-main__title_3 {
  max-width: 628px;
  font-size: clamp(1.4375rem, 1.15625rem + .9375vw, 1.625rem)
}
@media(max-width: 479px) {
  .feature-main__title_3 {
    font-size: clamp(1.125rem, -.457278481rem + 6.3291139241vw, 1.4375rem)
  }
}
.feature-main__accent {
  color: var(--navy)
}
.feature-main__title3-top {
  width: 100%;
  display: inline-block;
  -moz-text-align-last: center;
  text-align-last: center
}
.feature-main__hr {
  width: 100%;
  border: 1px dashed var(--t-blue);
  margin-top: 10px
}
@media(max-width: 768px) {
  .feature-main__hr {
    margin-top: 32px
  }
}
.feature-main__text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  line-height: 2.125;
  margin-top: clamp(1.5rem, .9375rem + 1.875vw, 1.875rem)
}
.feature-main__img {
  max-width: 954px;
  width: 100%;
  position: relative
}
@media(max-width: 1000px) {
  .feature-main__img {
    padding-left: 30px
  }
}
.feature-main__img_2 {
  max-width: clamp(29.6875rem, -8.203125rem + 60.625vw, 60rem);
  position: absolute;
  top: 0;
  left: 0
}
@media(max-width: 1000px) {
  .feature-main__img_2 {
    position: static;
    max-width: inherit;
    padding-right: 30px;
    padding-left: 0
  }
}
.feature-main__pop {
  max-width: clamp(8.75rem, 1.8566176471rem + 11.0294117647vw, 13.4375rem);
  position: absolute;
  top: -43px;
  left: calc(clamp(1.875rem, -9.8897058824rem + 18.8235294118vw, 9.875rem)*-1)
}
@media(max-width: 1000px) {
  .feature-main__pop {
    max-width: clamp(7.1875rem, 4.84375rem + 7.8125vw, 8.75rem);
    top: -46px;
    left: calc(clamp(-0.75rem, -4.6875rem + 13.125vw, 1.875rem)*-1)
  }
}
.feature-main__pyramid {
  max-width: 1642px;
  margin-top: 42px;
  margin-inline: auto;
  padding-right: clamp(.625rem, -7.9464285714rem + 28.5714285714vw, 1.875rem)
}
@media(max-width: 1000px) {
  .feature-main__pyramid {
    padding-left: clamp(.625rem, -7.9464285714rem + 28.5714285714vw, 1.875rem)
  }
}
@media(max-width: 768px) {
  .feature-main__pyramid {
    max-width: 600px;
    margin-top: 51px
  }
}
.feature-main__bottom-2 {
  max-width: 1603px;
  position: relative;
  margin-top: -64px;
  margin-inline: auto;
  padding-left: 30px
}
@media(max-width: 1000px) {
  .feature-main__bottom-2 {
    max-width: 800px;
    margin-top: 24px;
    padding-right: 30px
  }
}
.feature-main__bottom-3 {
  max-width: 1595px;
  margin-top: clamp(1.6875rem, -0.1875rem + 6.25vw, 2.9375rem);
  margin-inline: auto;
  padding-right: 30px
}
@media(max-width: 1000px) {
  .feature-main__bottom-3 {
    max-width: 800px;
    padding-left: 30px
  }
}
.flow_pos {
  margin-top: clamp(6.5rem, 2.2884615385rem + 14.0384615385vw, 11.0625rem)
}
.flow__items {
  margin-top: clamp(4.1875rem, -4.3839285714rem + 28.5714285714vw, 11.6875rem)
}
.flow__item {
  position: relative;
  padding: 71px 30px clamp(2.6875rem, .9732142857rem + 5.7142857143vw, 4.1875rem)
}
@media(max-width: 768px) {
  .flow__item {
    padding-top: 83px
  }
}
.flow__item:first-of-type {
  padding-top: clamp(2.75rem, .8214285714rem + 6.4285714286vw, 4.4375rem)
}
.flow__item:nth-of-type(odd) {
  background-color: #f7f8f8
}
.flow__item:nth-of-type(odd)::after {
  background-color: #f7f8f8
}
.flow__item:not(:last-of-type)::after {
  content: "";
  width: 200px;
  height: 40px;
  position: absolute;
  bottom: -40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1;
  -webkit-clip-path: polygon(100% 0, 0 0, 50% 100%);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  background-color: var(--base)
}
.flow__item:nth-of-type(odd)::after {
  background-color: #f7f8f8
}
.flow__body {
  max-width: 1353px;
  display: grid;
  grid-template-columns: 1fr clamp(22.5rem, 13.9233466934rem + 15.2304609218vw, 27.25rem);
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  margin-inline: auto;
  padding-left: clamp(0rem, -21.7708333333rem + 31.6666666667vw, 5.9375rem)
}
@media(max-width: 900px) {
  .flow__body {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    row-gap: clamp(.8125rem, -.4017857143rem + 4.0476190476vw, 1.875rem)
  }
}
.flow__box-top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 35px;
  -moz-column-gap: 35px;
  column-gap: 35px
}
@media(max-width: 600px) {
  .flow__box-top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: clamp(1.375rem, .8035714286rem + 1.9047619048vw, 1.875rem)
  }
}
.flow__group {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  row-gap: 1px;
  font-weight: bold;
  line-height: 1
}
.flow__flow {
  font-size: 1.550625rem;
  --spacing: 0
}
.flow__number {
  font-size: 3.10125rem;
  --spacing: 0
}
.flow__box {
  max-width: 770px;
  width: 100%
}
.flow__item-title {
  font-size: 1.875rem;
  --spacing: 0
}
.flow__text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  line-height: 2.5;
  --spacing: 0;
  margin-top: clamp(1.4375rem, -.7053571429rem + 7.1428571429vw, 3.3125rem)
}
.flow__img {
  max-width: 436px;
  width: 100%
}
.plan-top_pos {
  margin-top: 130px
}
.plan-top__main {
  margin-top: 11px
}
@media(max-width: 768px) {
  .plan-top__main {
    margin-top: 131px
  }
}
.plan-top__text {
  max-width: 945px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: clamp(1rem, .8571428571rem + .4761904762vw, 1.125rem);
  line-height: 2.2222222222;
  white-space: pre-line;
  margin-top: 6px;
  margin-top: clamp(-4.625rem, -10.3392857143rem + 19.0476190476vw, .375rem);
  margin-inline: auto
}
@media(max-width: 768px) {
  .plan-top__text {
    line-height: 2.1875
  }
}
.plan-top__banner {
  margin-top: clamp(6.6875rem, -0.3125rem + 23.3333333333vw, 12.8125rem)
}
@media(max-width: 1000px) {
  .plan-top__banner {
    background-color: #bdeeff;
    text-align: center
  }
}
@media(max-width: 1000px) {
  .plan-top__banner-img {
    max-width: 780px;
    width: 100%;
    display: inline-block
  }
}
.plan_2 {
  margin-top: 105px
}
.plan__title-img {
  min-height: 400px;
  -o-object-fit: cover;
  object-fit: cover
}
.plan__bg {
  background-color: #ececec
}
.plan__inner {
  max-width: 1628px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  padding-bottom: clamp(1.4375rem, -3.4086538462rem + 16.1538461538vw, 6.6875rem)
}
.plan__col {
  position: relative
}
@media(max-width: 1000px) {
  .plan__col {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    row-gap: 75px;
    margin-top: -70px
  }
}
@media(max-width: 768px) {
  .plan__col {
    margin-top: -98px
  }
}
.plan__col-img {
  max-width: clamp(30.625rem, -5.8621134021rem + 58.3210603829vw, 55.375rem);
  position: absolute;
  top: calc(clamp(4.375rem, .8737113402rem + 5.5964653903vw, 6.75rem)*-1)
}
@media(max-width: 1000px) {
  .plan__col-img {
    max-width: 600px;
    position: static
  }
}
.plan__col-img_odd {
  left: 0
}
.plan__col-img_even {
  right: 0
}
.plan__col-box {
  max-width: clamp(33.125rem, .3234536082rem + 52.4300441826vw, 55.375rem);
  min-height: 541px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  z-index: 1;
  background-color: var(--base);
  padding: 0 20px 28px
}
@media(max-width: 1000px) {
  .plan__col-box {
    max-width: 800px;
    display: block;
    padding-top: 59px
  }
}
.plan__col-box::before, .plan__col-box::after {
  content: "";
  width: clamp(5.375rem, 2.4338235294rem + 4.7058823529vw, 7.375rem);
  aspect-ratio: 1/1;
  position: absolute
}
.plan__col-box::before {
  top: clamp(1.25rem, -3.375rem + 5vw, 1.875rem);
  left: clamp(1.25rem, -3.375rem + 5vw, 1.875rem);
  border-top: 1px solid var(--text);
  border-left: 1px solid var(--text)
}
@media(max-width: 1000px) {
  .plan__col-box::before {
    top: clamp(.9375rem, -.1028138528rem + 2.1645021645vw, 1.25rem);
    left: clamp(.75rem, -.9145021645rem + 3.4632034632vw, 1.25rem)
  }
}
.plan__col-box::after {
  right: clamp(1.25rem, -3.375rem + 5vw, 1.875rem);
  bottom: clamp(1.25rem, -3.375rem + 5vw, 1.875rem);
  border-right: 1px solid var(--text);
  border-bottom: 1px solid var(--text)
}
@media(max-width: 1000px) {
  .plan__col-box::after {
    right: clamp(.75rem, -.9145021645rem + 3.4632034632vw, 1.25rem);
    bottom: clamp(.9375rem, -.1028138528rem + 2.1645021645vw, 1.25rem)
  }
}
.plan__col-box_odd {
  margin-left: auto
}
@media(max-width: 1000px) {
  .plan__col-box_odd {
    margin-right: auto
  }
}
.plan__col-box_even {
  margin-right: auto
}
@media(max-width: 1000px) {
  .plan__col-box_even {
    margin-left: auto
  }
}
@media(max-width: 1000px) {
  .plan__col-box_1 {
    min-height: 507px
  }
}
@media(max-width: 1000px) {
  .plan__col-box_2 {
    min-height: 507px
  }
}
@media(max-width: 1000px) {
  .plan__col-box_3 {
    min-height: 469px
  }
}
@media(max-width: 1000px) {
  .plan__col-box_4 {
    min-height: 440px
  }
}
.plan__col-inner {
  max-width: 690px;
  margin-inline: auto
}
.plan__col-title {
  font-size: clamp(2.5rem, .6572164948rem + 2.9455081001vw, 3.75rem);
  text-align: center;
  --spacing: 0;
  white-space: pre-line
}
.plan__col-title_1 {
  line-height: 1.5333333333
}
@media(max-width: 768px) {
  .plan__col-title_1 {
    font-size: clamp(2.125rem, 1.5rem + 2.0833333333vw, 2.5rem);
    line-height: 1.9428571429
  }
}
@media(max-width: 479px) {
  .plan__col-title_1 {
    font-size: clamp(1.6875rem, -.5276898734rem + 8.8607594937vw, 2.125rem)
  }
}
.plan__col-title_2 {
  line-height: 1.3166666667
}
@media(max-width: 768px) {
  .plan__col-title_2 {
    font-size: clamp(2.125rem, 1.5rem + 2.0833333333vw, 2.5rem);
    line-height: 1.8
  }
}
@media(max-width: 479px) {
  .plan__col-title_2 {
    font-size: clamp(1.6875rem, -.5276898734rem + 8.8607594937vw, 2.125rem)
  }
}
.plan__col-text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  line-height: 2.5;
  --spacing: 0
}
.plan__col-text_1 {
  margin-top: clamp(.5rem, -2.625rem + 10.4166666667vw, 2.375rem)
}
.plan__col-text_2 {
  margin-top: clamp(.5rem, -2.625rem + 10.4166666667vw, 2.375rem)
}
.plan__col-text_3 {
  margin-top: clamp(2.8125rem, -.4166666667rem + 10.7638888889vw, 4.75rem)
}
.plan__col-text_4 {
  margin-top: clamp(2.8125rem, -.4166666667rem + 10.7638888889vw, 4.75rem)
}
.plan__point {
  margin-top: clamp(9.6875rem, 5.1298076923rem + 15.1923076923vw, 14.625rem);
  margin-inline: auto
}
.plan__law {
  margin-top: clamp(1.75rem, -3.6153846154rem + 17.8846153846vw, 7.5625rem)
}
@media(max-width: 1000px) {
  .plan__banner {
    background-color: #fff8a4;
    text-align: center
  }
}
@media(max-width: 1000px) {
  .plan__banner-img {
    max-width: 780px;
    width: 100%;
    display: inline-block
  }
}
.plan-point {
  max-width: 1280px;
  position: relative;
  z-index: 1;
  background-color: #f7f8f8;
  padding: 30px clamp(.9375rem, .4166666667rem + 1.7361111111vw, 1.25rem) 37px
}
.plan-point::after {
  content: "";
  width: 100%;
  height: 100%;
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
  background-color: #f1f3f3
}
.plan-point__title {
  color: #b6b6b6;
  font-size: 4.375rem;
  font-weight: bold;
  text-align: center;
  margin-top: -73px
}
.plan-point__subtitle {
  font-size: clamp(1.625rem, .3591772152rem + 5.0632911392vw, 1.875rem);
  font-weight: bold;
  text-align: center;
  margin-top: 13px
}
@media(max-width: 768px) {
  .plan-point__subtitle {
    margin-top: 23px
  }
}
.plan-point__items {
  max-width: 1052px;
  margin-top: 19px;
  margin-inline: auto
}
@media(max-width: 768px) {
  .plan-point__items {
    margin-top: 32px
  }
}
.plan-point__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: clamp(.6875rem, -1.7355769231rem + 8.0769230769vw, 3.3125rem);
  -moz-column-gap: clamp(.6875rem, -1.7355769231rem + 8.0769230769vw, 3.3125rem);
  column-gap: clamp(.6875rem, -1.7355769231rem + 8.0769230769vw, 3.3125rem);
  font-size: clamp(1.089375rem, .8216666667rem + .8923611111vw, 1.25rem);
  font-weight: bold;
  line-height: 1.75;
  border-bottom: 1px solid #b6b6b6;
  padding: 12px clamp(0rem, -3.1034482759rem + 6.4655172414vw, .9375rem) 12px clamp(0rem, -5.5862068966rem + 11.6379310345vw, 1.6875rem)
}
@media(max-width: 768px) {
  .plan-point__item {
    padding-top: 15px;
    padding-bottom: 15px
  }
}
.plan-point__item::before {
  content: "";
  min-width: 31px;
  aspect-ratio: 31/27;
  background: url(../images/icon-check-b.svg) no-repeat 0 0/contain;
  margin-top: clamp(.125rem, -0.1875rem + 1.0416666667vw, .3125rem)
}
.plan-low__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px
}
.plan-low__body {
  border: 2px solid var(--t-blue);
  padding: clamp(.9375rem, -1.3125rem + 7.5vw, 3.375rem) 20px clamp(.8125rem, -2.1875rem + 10vw, 1.5625rem)
}
.plan-low__title {
  color: var(--t-blue);
  font-size: clamp(1.625rem, .042721519rem + 6.3291139241vw, 1.9375rem);
  font-weight: 900;
  line-height: 1.4193548387;
  text-align: center;
  --spacing: 0
}
.plan-low__button {
  display: block;
  -webkit-transition: -webkit-transform .5s ease;
  transition: -webkit-transform .5s ease;
  transition: transform .5s ease;
  transition: transform .5s ease, -webkit-transform .5s ease;
  margin-top: clamp(1.125rem, -.9519230769rem + 6.9230769231vw, 3.375rem);
  margin-inline: auto
}
.plan-low__button.is-active {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg)
}
.plan-low__content {
  max-width: 1000px;
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height .5s ease, padding .5s ease;
  transition: max-height .5s ease, padding .5s ease;
  margin-inline: auto
}
.plan-low__content.is-open {
  max-height: 5000px;
  padding: 50px 0
}
.plan-low__content-title {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center
}
.plan-low__subtitle1 {
  color: var(--navy);
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 50px
}
.plan-low__subtitle2 {
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 30px
}
.plan-low__text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  line-height: 1.75;
  white-space: pre-line;
  margin-top: 30px
}
.comparison_pos {
  margin-top: clamp(8.75rem, 4.25rem + 15vw, 13.625rem)
}
.comparison__inner {
  max-width: 1498px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  margin-top: clamp(5.375rem, 3.2980769231rem + 6.9230769231vw, 7.625rem)
}
.comparison__body {
  overflow: auto
}
.comparison__img {
  min-width: 1058px
}
.price_pos {
  margin-top: clamp(10.5625rem, 4.6201923077rem + 19.8076923077vw, 17rem)
}
.price__inner {
  max-width: 1679px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  margin-top: clamp(6.1875rem, 1.3413461538rem + 16.1538461538vw, 11.4375rem)
}
@media(max-width: 900px) {
  .price__table {
    max-width: 600px;
    margin-inline: auto
  }
}
.price__dl {
  max-width: 1280px;
  display: grid;
  grid-template-columns: clamp(19.125rem, -17.0592105263rem + 52.6315789474vw, 31.625rem) 1fr;
  margin-top: 113px;
  margin-inline: auto
}
@media(max-width: 900px) {
  .price__dl {
    grid-template-columns: 1fr
  }
}
.price__dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--t-blue);
  color: var(--base);
  font-size: 1.5rem;
  --spacing: 0.1em;
  border-bottom: 1px solid var(--text);
  border-left: 1px solid var(--text);
  padding-left: clamp(1.25rem, -17.2039473684rem + 26.8421052632vw, 7.625rem)
}
@media(max-width: 900px) {
  .price__dt {
    border-right: 1px solid var(--text);
    min-height: 90px
  }
}
.price__dt:first-of-type {
  border-top: 1px solid var(--text)
}
.price__dd {
  font-size: clamp(1.125rem, .6964285714rem + 1.4285714286vw, 1.5rem);
  line-height: 1.9;
  --spacing: 0.04em;
  white-space: pre-line;
  border-right: 1px solid var(--text);
  border-bottom: 1px solid var(--text);
  padding: 18px 15px 18px clamp(1.25rem, -19.1940789474rem + 29.7368421053vw, 8.3125rem)
}
@media(max-width: 900px) {
  .price__dd {
    border-left: 1px solid var(--text)
  }
}
.price__dd:first-of-type {
  border-top: 1px solid var(--text)
}
@media(max-width: 900px) {
  .price__dd:first-of-type {
    border-top: none
  }
}
.price__dd_lh1 {
  line-height: 1.5
}
.price__dd_lh2 {
  line-height: 1.6
}
.price__small {
  font-size: clamp(1rem, .8571428571rem + .4761904762vw, 1.125rem)
}
.price__linefeed {
  display: inline-block;
  text-indent: -1.5em;
  padding-left: 1.5em
}
.price__bottom {
  max-width: 1280px;
  margin-top: 20px;
  margin-inline: auto
}
@media(max-width: 768px) {
  .price__bottom {
    margin-top: 71px
  }
}
.price__note {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: clamp(1rem, .7142857143rem + .9523809524vw, 1.25rem);
  line-height: 1.8125;
  text-indent: -1em;
  padding-left: 1em
}
.howto_pos {
  margin-top: 174px
}
.howto__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px
}
.howto__title {
  color: #d6f0f3;
  font-size: clamp(4.375rem, -.8153114187rem + 17.3010380623vw, 7.5rem);
  font-weight: bold;
  text-align: center
}
.howto__jp {
  height: 105px;
  display: grid;
  place-items: center;
  font-size: 3.125rem;
  font-weight: bold;
  line-height: 1;
  border-top: 1px solid var(--navy);
  border-bottom: 1px solid var(--navy);
  margin-top: 40px
}
@media(max-width: 768px) {
  .howto__jp {
    margin-top: 54px
  }
}
.howto__text-1 {
  font-size: clamp(1.0625rem, .9586937716rem + .3460207612vw, 1.125rem);
  font-weight: bold;
  text-align: center;
  margin-top: 38px
}
.howto__items {
  max-width: 987px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 53px clamp(1.25rem, -7.2805735931rem + 17.7489177489vw, 3.8125rem);
  margin-top: clamp(4.8125rem, .6602508651rem + 13.8408304498vw, 7.3125rem);
  margin-inline: auto
}
@media(max-width: 768px) {
  .howto__items {
    grid-template-columns: repeat(2, 1fr);
    justify-items: center
  }
}
.howto__item {
  max-width: 201px
}
.howto__box1 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  border: 1px solid var(--t-blue);
  margin-top: 79px;
  padding: 40px clamp(.9375rem, .4184688581rem + 1.7301038062vw, 1.25rem) clamp(2rem, .339100346rem + 5.5363321799vw, 3rem)
}
@media(max-width: 768px) {
  .howto__box1 {
    margin-top: 89px
  }
}
.howto__box1-title {
  font-size: 1.375rem;
  text-align: center
}
.howto__box1-text {
  max-width: 1129px;
  font-size: 1.125rem;
  line-height: 2.2222222222;
  white-space: pre-line;
  margin-top: 35px;
  margin-inline: auto
}
.howto__risk-title {
  color: var(--t-blue);
  font-size: 1.875rem;
  font-weight: 900;
  line-height: 1.3333333333;
  text-align: center;
  --spacing: 0.1em;
  margin-top: clamp(2.25rem, -2.4212802768rem + 15.5709342561vw, 5.0625rem)
}
.howto__risk-outer {
  border: 1px solid var(--t-blue);
  margin-top: clamp(.375rem, -.6630622837rem + 3.4602076125vw, 1rem);
  padding: 32px 15px 28px
}
@media(max-width: 768px) {
  .howto__risk-outer {
    padding-left: clamp(.1875rem, -1.0581747405rem + 4.1522491349vw, .9375rem)
  }
}
.howto__risk-body {
  max-width: 1185px;
  height: 241px;
  overflow-y: auto;
  margin-inline: auto;
  padding-right: clamp(1.125rem, -.1206747405rem + 4.1522491349vw, 1.875rem)
}
@media(max-width: 768px) {
  .howto__risk-body {
    height: 428px
  }
}
.howto__risk-body::-webkit-scrollbar {
  width: 5px
}
.howto__risk-body::-webkit-scrollbar-track {
  background-color: #ececec
}
.howto__risk-body::-webkit-scrollbar-thumb {
  background-color: var(--t-blue);
  border-radius: 8px
}
.howto__risk-item {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 2.2222222222;
  white-space: pre-line;
  list-style-type: decimal;
  margin-left: 30px
}
.faq_pos {
  margin-top: clamp(11.375rem, 6.7037197232rem + 15.5709342561vw, 14.1875rem)
}
.faq__main {
  position: relative
}
.faq__main::before, .faq__main::after {
  content: "";
  position: absolute;
  z-index: -1
}
.faq__main::before {
  width: clamp(8.875rem, 1.0807842047rem + 12.4582869855vw, 15.875rem);
  aspect-ratio: 254/204;
  top: -17px;
  right: 21px;
  background: url(../images/faq-bg-top.webp) no-repeat 0 0/contain;
  background-image: -webkit-image-set(url(../images/faq-bg-top.webp) 1x, url(../images/faq-bg-top@2x.webp) 2x);
  background-image: image-set(url(../images/faq-bg-top.webp) 1x, url(../images/faq-bg-top@2x.webp) 2x)
}
.faq__main::after {
  width: clamp(14.5625rem, 6.0027808676rem + 13.681868743vw, 22.25rem);
  aspect-ratio: 356/296;
  bottom: 2px;
  left: 18px;
  background: url(../images/faq-bg-bottom.webp) no-repeat 0 0/contain;
  background-image: -webkit-image-set(url(../images/faq-bg-bottom.webp) 1x, url(../images/faq-bg-bottom@2x.webp) 2x);
  background-image: image-set(url(../images/faq-bg-bottom.webp) 1x, url(../images/faq-bg-bottom@2x.webp) 2x)
}
.faq__inner {
  max-width: 1280px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding: 144px 30px 170px
}
@media(max-width: 900px) {
  .faq__inner {
    padding-top: clamp(3.6875rem, -1.2163461538rem + 16.3461538462vw, 9rem)
  }
}
.faq__body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 26px
}
.faq__details {
  line-height: 1.75
}
.faq__details[open=true] .faq__icon {
  top: 37%;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0)
}
.faq__summary {
  display: block;
  background-color: var(--t-blue);
  position: relative;
  color: var(--base);
  cursor: pointer
}
.faq__summary::-webkit-details-marker {
  display: none
}
.faq__question {
  display: inline-block;
  font-size: clamp(1.125rem, .4326923077rem + 2.3076923077vw, 1.875rem);
  font-weight: bold;
  padding: 16px clamp(2.75rem, .9615384615rem + 5.9615384615vw, 4.6875rem) 16px clamp(.75rem, -.9807692308rem + 5.7692307692vw, 2.625rem)
}
@media(max-width: 1000px) {
  .faq__question {
    text-indent: -2.7em;
    padding-top: 1.71875rem;
    padding-bottom: 1.71875rem;
    padding-left: 3.3em
  }
}
.faq__icon {
  width: clamp(1.875rem, 1.5288461538rem + 1.1538461538vw, 2.25rem);
  aspect-ratio: 36/22;
  position: absolute;
  top: 50%;
  right: clamp(.875rem, .125rem + 2.5vw, 1.6875rem);
  -webkit-transform: translateY(-50%) rotate(180deg);
  -ms-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg);
  -webkit-transition: top .5s, -webkit-transform .5s ease;
  transition: top .5s, -webkit-transform .5s ease;
  transition: transform .5s ease, top .5s;
  transition: transform .5s ease, top .5s, -webkit-transform .5s ease;
  background: url(../images/icon-faq.svg) no-repeat 0 0/contain
}
.faq__answer {
  padding: clamp(1rem, .1923076923rem + 2.6923076923vw, 1.875rem) clamp(.9375rem, -2.5240384615rem + 11.5384615385vw, 4.6875rem) clamp(.9375rem, .0721153846rem + 2.8846153846vw, 1.875rem) clamp(.9375rem, -.6201923077rem + 5.1923076923vw, 2.625rem)
}
.faq__answer-text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-size: clamp(1rem, .8846153846rem + .3846153846vw, 1.125rem)
}
.message {
  max-width: 1920px;
  margin-inline: auto
}
.message_pos {
  margin-top: clamp(4.625rem, -3.6491935484rem + 27.5806451613vw, 15.3125rem)
}
.message__top {
  display: grid;
  grid-template-columns: clamp(27.375rem, -28.0077720207rem + 80.4835924007vw, 56.5rem) 1fr;
  -webkit-column-gap: clamp(1.875rem, -3.325rem + 6.5vw, 3.5rem);
  -moz-column-gap: clamp(1.875rem, -3.325rem + 6.5vw, 3.5rem);
  column-gap: clamp(1.875rem, -3.325rem + 6.5vw, 3.5rem);
  padding-right: 30px
}
@media(max-width: 1100px) {
  .message__top {
    grid-template-columns: 1fr;
    row-gap: clamp(.5rem, -1.5322580645rem + 6.7741935484vw, 3.125rem);
    padding-right: 0
  }
}
.message__title {
  max-width: 904px
}
@media(max-width: 1100px) {
  .message__title {
    padding-right: 41px
  }
}
.message__main {
  max-width: 854px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 16px
}
@media(max-width: 1100px) {
  .message__main {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    margin-inline: auto;
    padding-right: 30px;
    padding-left: 30px
  }
}
.message__subtitle {
  color: var(--t-blue);
  font-size: 2.25rem;
  font-weight: bold;
  line-height: 2.0555555556;
  white-space: pre-line;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  margin-right: 172px
}
@media(max-width: 1100px) {
  .message__subtitle {
    margin-right: 0
  }
}
.message__t-pos {
  display: inline-block;
  margin-top: -17px
}
.message__text {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  line-height: 2.625;
  margin-top: clamp(1rem, -5.2418831169rem + 12.987012987vw, 2.875rem)
}
@media(max-width: 768px) {
  .message__text {
    line-height: 2.1875
  }
}
.message__name-area {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  font-weight: bold;
  line-height: 1;
  margin-top: clamp(2.75rem, 1.2016129032rem + 5.1612903226vw, 4.75rem);
  margin-right: 35px
}
@media(max-width: 1100px) {
  .message__name-area {
    margin-right: 0
  }
}
.message__name-1 {
  font-size: 1.25rem;
  --spacing: 0.16em
}
.message__name-bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -webkit-column-gap: 15px;
  -moz-column-gap: 15px;
  column-gap: 15px;
  margin-top: 27px
}
@media(max-width: 768px) {
  .message__name-bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    row-gap: 30px
  }
}
.message__name-2 {
  font-size: 1.75rem
}
.message__small {
  font-size: 1.25rem
}
.message__name-en {
  font-size: 1.150625rem;
  --spacing: 0.22em
}
.message__bottom {
  max-width: 1240px;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-inline: auto;
  padding-right: 30px;
  padding-left: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  margin-top: clamp(4rem, 3.2708333333rem + 2.4305555556vw, 4.4375rem)
}
@media(max-width: 900px) {
  .message__bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    row-gap: 37px
  }
}
.message__box {
  max-width: 574px;
  width: 100%;
  background-color: #d6f0f3;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  padding: 20px clamp(.9375rem, -5.3916139241rem + 25.3164556962vw, 2.1875rem) 17px
}
@media(max-width: 900px) {
  .message__box {
    min-height: 194px
  }
}
.message__box-title {
  height: 40px;
  display: grid;
  place-items: center;
  background-color: var(--base);
  font-size: 1.25rem
}
.message__box-text {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1.875;
  white-space: pre-line;
  margin-inline: auto
}
.message__box-text_1 {
  margin-top: 23px
}
@media(max-width: 900px) {
  .message__box-text_1 {
    margin-top: 33px
  }
}
.message__box-text_2 {
  margin-top: 14px
}


/*SPフローティングボタン*/
@media(max-width: 767px) {
#sp-btn {
    position: fixed;
    bottom: 0;
    left: 50%;
    z-index: 980;
    width: 100%;
    transform: translateX(-50%);
  }
  #sp-btn ul {
    justify-content: center;
    max-width: 900px;
    padding-bottom: 0;
    margin: 0 auto;
    position: relative;
  }
  #sp-btn ul::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: #5CC2CF;
    backdrop-filter: blur(2px);
  }
  #sp-btn ul li {
    width: calc(100% / 4);
    margin: 0;
    padding: 10px 0 6px;
    text-align: center;
    line-height: 1.2;
    position: relative;
  }
  #sp-btn ul li a {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
    text-align: center;
  }
        #sp-btn ul li span {
        display: block;
        font-size: 14px;
        color: #fff;
        text-align: center;
    }
        #sp-btn ul li i {
        font-size: 26px;
        font-family: "Font Awesome 5 Free";
        display: block;
        color: #fff;
        margin-bottom: 3px;
        text-align: center;
    }
    #sp-btn .flex {
	display: flex;
    flex-direction: row;
  }
}

/*--------------------------------------------------------------------------

PC

--------------------------------------------------------------------------*/
@media only screen and (min-width: 1025px) {
  .sp-only {
    display: none !important;
  }
  .tab-only {
    display: none !important;
  }
  .pc-none {
    display: none !important;
  }
    .tab-sp-only
    {
        display: none!important;
    }
}
/*--------------------------------------------------------------------------

tablet

--------------------------------------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sp-only {
    display: none !important;
  }
  .pc-only {
    display: none !important;
  }
}
/*--------------------------------------------------------------------------

sp

--------------------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
  .pc-tab-only {
    display: none !important;
  }
  .tab-only {
    display: none !important;
  }
  .sp-none {
    display: none !important;
  }