@font-face {
  font-family: "Zen Kaku Gothic Antique";
  src: url("../fonts/ZenKakuGothicAntique/ZenKakuGothicAntique-Regular.woff2") format("woff2"), url("../fonts/ZenKakuGothicAntique/ZenKakuGothicAntique-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap
}

@font-face {
  font-family: "Zen Kaku Gothic Antique";
  src: url("../fonts/ZenKakuGothicAntique/ZenKakuGothicAntique-Medium.woff2") format("woff2"), url("../fonts/ZenKakuGothicAntique/ZenKakuGothicAntique-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap
}

@font-face {
  font-family: "Zen Kaku Gothic Antique";
  src: url("../fonts/ZenKakuGothicAntique/ZenKakuGothicAntique-Bold.woff2") format("woff2"), url("../fonts/ZenKakuGothicAntique/ZenKakuGothicAntique-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap
}

@font-face {
  font-family: "Zen Kaku Gothic Antique";
  src: url("../fonts/ZenKakuGothicAntique/ZenKakuGothicAntique-Black.woff2") format("woff2"), url("../fonts/ZenKakuGothicAntique/ZenKakuGothicAntique-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap
}

@font-face {
  font-family: "Noto Sans JP";
  src: url("../fonts/NotoSansJP/NotoSansJP-VF.woff2") format("woff2-variations"), url("../fonts/NotoSansJP/NotoSansJP-VF.woff") format("woff-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap
}

@font-face {
  font-family: "PublicSansEn";
  src: url("../fonts/PublicSansEn/PublicSansEn-VF.woff2") format("woff2-variations"), url("../fonts/PublicSansEn/PublicSansEn-VF.woff") format("woff-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap
}

:root {
  --kbc-c-primary: #E60012;
  --kbc-c-blk: #000;
  --kbc-c-wht: #fff;
  --kbc-c-green: #39B54A;
  --kbc-c-yellow: #FCEE21;
  --kbc-c-orange: #F7931E;
  --kbc-c-dark-red: #C1272D;
  --kbc-tc: var(--kbc-c-blk);
  --kbc-tc-md: #4d4d4d;
  --kbc-bg-mute: #F7F5F2;
  --kbc-bg-egg: #FCF297;
  --kbc-bg-sky: #29ABE2;
  --kbc-bdc: #d0d0d0;
  --kbc-bd: 1px solid var(--kbc-bdc);
  --kbc-ico-kobasanta: url(../img/home/kobasanta.webp);
  --kbc-ff: "PublicSansEn", "Noto Sans JP", "Noto Sans CJK JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;
  --kbc-ff-go: "PublicSansEn", "Zen Kaku Gothic Antique", "Noto Sans JP", "Noto Sans CJK JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;
  --kbc-ff-jp: "Zen Kaku Gothic Antique", "Noto Sans JP", "Noto Sans CJK JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;
  --kbc-headerH: 45px;
  --kbc-contentMax: 750px;
  --kbc-ico-tgl: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='66' height='66' viewBox='0 0 66 66'%3E%3Ccircle cx='33' cy='33' r='33' fill='%23e60012'/%3E%3Cpath fill='%23f2f2f2' d='M33 46.153 11.711 24.865h42.578L33 46.153z'/%3E%3C/svg%3E")
}

@media(min-width: 768px) {
  :root {
    --kbc-headerH: 75px
  }
}

:where(button) {
  all: unset
}

*,
::before,
::after {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  background: rgba(0, 0, 0, 0);
  background-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  letter-spacing: var(--kbc-ls, inherit)
}

::before,
::after {
  text-decoration: inherit;
  vertical-align: inherit
}

:where(html) {
  font-size: 62.5%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  scroll-behavior: smooth;
  scroll-padding-top: var(--kbc-headerH);
  line-height: 1.625
}

@media(min-width: 768px) {
  :where(html) {
    line-height: 1.8
  }
}

:where(main, img, svg, video, canvas, audio, iframe, embed, object, figure, summary) {
  display: block
}

:where(img, svg, figure, iframe) {
  max-inline-size: 100%;
  block-size: auto
}

:where(img, svg) {
  vertical-align: top
}

:where(h1, h2, h3, h4, h5, h6) {
  font: inherit;
  overflow-wrap: break-word
}

:where(a) {
  color: inherit;
  text-decoration: none;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word
}

:where(a):active,
:where(a):hover,
:where(a):focus {
  outline-width: 0
}

:where(ul, ol) {
  list-style: none
}

:where(dt, em, i) {
  font-weight: inherit;
  font-style: normal
}

:where(blockquote, q) {
  quotes: none
}

:where(blockquote:before, blockquote:after, q:before, q:after) {
  content: "";
  content: none
}

:where(table) {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border-color: inherit;
  text-indent: 0;
  word-break: break-all
}

:where(input, button, textarea, select, optgroup, option) {
  border-radius: 0;
  color: inherit;
  font: inherit;
  text-align: inherit;
  text-transform: inherit;
  word-spacing: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

:where(input, button, textarea, select, optgroup, option):focus {
  outline: none
}

:where(button, label[for], select, option, [role=button], [aria-controls], [role=option], [tabindex]:not([tabindex*="-"])) {
  cursor: pointer;
  touch-action: manipulation
}

:where(button, [type=button], [type=submit], [type=reset]) {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}

:where(:disabled),
[aria-disabled=true],
[disabled] {
  cursor: not-allowed;
  pointer-events: none;
  opacity: .2
}

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

:where(body) {
  position: relative;
  min-width: 320px;
  overflow-x: hidden;
  background-color: var(--kbc-c-wht);
  color: var(--kbc-tc);
  font-family: var(--kbc-ff);
  font-size: clamp(1.6rem, 1.2rem + 1.0667vw, 2rem);
  font-weight: bold
}

:where(body).is-locked {
  position: fixed;
  left: 0;
  width: 100%;
  padding-right: var(--kbc-scrollbarW, 0);
  touch-action: none;
  pointer-events: none;
  overscroll-behavior: none;
  overflow-y: hidden
}

:where(a, button) {
  text-decoration: none
}

@media(any-hover: hover) {
  :where(a, button) {
    transition: .2s ease;
    transition-property: opacity;
    will-change: opacity
  }

  :where(a, button):hover {
    opacity: .7;
    transition: .2s ease
  }
}

:where(em) {
  color: var(--kbc-tc-em, var(--kbc-tc-em))
}

:where(img) {
  width: 100%
}

.inr {
  max-width: var(--kbc-contentMax);
  margin-left: auto;
  margin-right: auto
}

@keyframes splide-loading {
  0% {
    transform: rotateZ(0)
  }

  100% {
    transform: rotateZ(360deg)
  }
}

.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}

.splide__track--fade>.splide__list>.splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0
}

.splide__track--fade>.splide__list>.splide__slide.is-active {
  opacity: 1;
  z-index: 1
}

.splide__track--ttb>.splide__list {
  display: block
}

.splide__arrows {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  top: var(--kbc-sldr-arr-y, 50%);
  right: var(--kbc-sldr-arr-x, 0);
  left: var(--kbc-sldr-arr-x, 0);
  transform: translateY(-50%);
  width: var(--kbc-sldr-arrsW, 100%);
  margin-left: auto;
  margin-right: auto;
  pointer-events: none
}

.splide:not(.is-active) .splide__arrows {
  display: none
}

.splide__arrow {
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  pointer-events: auto;
  z-index: 1;
  width: var(--kbc-sldr-arr-sz, clamp(17.92px, 5.6vw, 42px));
  transition: .2s ease;
  transition-property: opacity;
  will-change: opacity;
  background-color: var(--kbc-sldr-arr-bgc, transparent);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='42' viewBox='0 0 21 42'%3E%3Cpath fill='%23e60012' d='m0-.004 21 21-21 21Z'/%3E%3C/svg%3E");
  background-position: center;
  background-size: var(--kbc-sldr-arr-ico-sz, auto 100%);
  border-radius: 50%
}

@media(any-hover: hover) {
  .splide__arrow:hover {
    opacity: .7;
    transition: .2s ease
  }
}

.splide__arrow:disabled {
  opacity: 0;
  pointer-events: none
}

.splide__arrow--prev {
  transform: scaleX(-1)
}

.splide__container {
  box-sizing: border-box;
  position: relative
}

.splide__list {
  backface-visibility: hidden;
  display: flex;
  height: 100%
}

:where(.splide:not(.is-overflow)) .splide__list {
  justify-content: center
}

:where(.splide.is-initialized:not(.is-active)) .splide__list {
  display: block
}

.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 11px;
  position: absolute;
  bottom: var(--kbc-sldr-pgn-btm, -28px);
  right: 0;
  left: 0;
  pointer-events: none
}

.splide__pagination li {
  line-height: 1;
  pointer-events: auto
}

.splide__page {
  aspect-ratio: 1;
  display: block;
  width: var(--kbc-splide-dot-w, 13px);
  transition: .2s ease;
  transition-property: background-color, opacity;
  will-change: background-color, opacity;
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid var(--kbc-sldr-dot-bgc, currentColor);
  border-radius: 50%
}

.splide__page.is-active {
  background-color: var(--kbc-sldr-dot-bgc, currentColor);
  pointer-events: none
}

@media(any-hover: hover) {
  .splide__page:hover {
    opacity: .7;
    transition: .2s ease
  }
}

.splide:not(.is-overflow) .splide__pagination {
  display: none
}

.splide {
  position: relative;
  visibility: hidden
}

.splide.is-initialized,
.splide.is-rendered {
  visibility: visible
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative
}

.splide__slide img {
  vertical-align: bottom
}

.splide__spinner {
  animation: splide-loading 1s infinite linear;
  border: 2px solid #999;
  border-left-color: rgba(0, 0, 0, 0);
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px
}

.splide__sr {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px
}

.splide__track {
  position: relative;
  z-index: 0
}

:where(.hOfr__card--cp) .hOfr__vis>*,
.hNuz__img,
.fBnrs img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%
}

.hCTA__btn::after,
.hEst__btn::after {
  content: "";
  aspect-ratio: 112/118;
  display: block;
  position: absolute;
  background-image: url(../img/btn-pointer.svg);
  background-size: contain;
  background-position: center;
  filter: drop-shadow(clamp(2.56px, 0.8vw, 6px) clamp(1.28px, 0.4vw, 3px) 0 var(--kbc-btn-pointer-sh, #fdd83f))
}

.hWhy__ttl,
.hLoc__city {
  display: grid;
  align-items: center;
  position: relative;
  cursor: pointer
}

.hPack__tgl,
.hWhy__ttl::after,
.hLoc__city::after {
  aspect-ratio: 1;
  display: block;
  transition: .2s ease;
  transition-property: opacity, transform;
  will-change: opacity, transform;
  background-image: var(--kbc-ico-tgl);
  background-position: center;
  background-size: contain
}

.hPack.is-active .hPack__tgl,
.hWhy__item.is-active .hWhy__ttl::after,
.hLoc__block.is-active .hLoc__city::after,
.est.is-active .est big::after {
  transform: rotate(-180deg)
}

.hPack__deets,
.hWhy__pnl,
.hLoc__pnl,
.est__pnl {
  display: grid;
  grid-template-rows: 1fr;
  transition: .2s ease;
  transition-property: grid-template-rows, padding;
  will-change: grid-template-rows, padding
}

.hPack:not(.is-active) .hPack__deets,
.hWhy__item:not(.is-active) .hWhy__pnl,
.hLoc__block:not(.is-active) .hLoc__pnl,
.est:not(.is-active) .est__pnl {
  grid-template-rows: 0fr;
  padding-top: 0;
  padding-bottom: 0
}

.secTtl,
.ttl {
  font-family: var(--kbc-ff-go);
  font-weight: 900;
  text-align: center
}

.secTtl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  min-height: var(--kbc-secTtl-mih, 3.1819em);
  padding: 5px min(15px, 2%);
  background-color: var(--kbc-c-primary);
  color: var(--kbc-c-wht);
  font-size: var(--kbc-secTtl-fz, clamp(1.5689rem, 4.9027vw, 3.677rem));
  line-height: 1.3
}

.btnS {
  display: grid;
  place-items: center;
  position: relative;
  width: var(--kbc-btn-w, 100%);
  max-width: var(--kbc-btn-maw, 250px);
  min-height: var(--kbc-btn-mih, 102px);
  padding: 0 3px;
  background-color: var(--kbc-btn-bgc, var(--kbc-c-green));
  border: var(--kbc-btn-bdw, 2.5px) solid var(--kbc-c-wht);
  border-radius: 20.72px;
  box-shadow: 1.375px 1.375px 1.375px rgba(160, 160, 159, .75)
}

.btnS::before {
  content: "";
  display: block;
  position: absolute;
  top: 6px;
  right: 10px;
  bottom: 6px;
  left: 10px;
  background-image: linear-gradient(to top, rgba(229, 142, 158, 0) 45.34%, rgba(255, 255, 255, 0.32) 94%);
  border-radius: 13.65px
}

.btnS--red {
  --kbc-btn-bgc: #ED1C24
}

.btnS--orange {
  --kbc-btn-bgc: var(--kbc-c-orange)
}

.btnS__img {
  position: relative;
  max-width: var(--kbc-btn-img-maw, 136px);
  margin-left: auto;
  margin-right: auto
}

.cta {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 3.5px 0;
  z-index: 1;
  background-color: rgba(255, 255, 255, .75)
}

.cta__btns {
  --kbc-btn-mih: 80px;
  --kbc-btn-bdw: 2px;
  --kbc-btn-img-maw: 103px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 1.0933%;
  max-width: 750px
}

.modal {
  display: grid;
  place-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 30px min(60px, 5.3333%) 30px;
  background-color: rgba(255, 255, 255, .85);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: .3s opacity ease, 0s visibility .4s linear, 0s z-index .4s;
  z-index: -1;
  -webkit-overflow-scrolling: touch
}

.modal.is-open {
  transition: .3s opacity ease, 0s visibility 0s linear;
  opacity: 1;
  visibility: visible;
  overflow-y: scroll;
  pointer-events: auto;
  z-index: 10
}

.modal__wrap {
  position: relative;
  z-index: 2;
  width: 100%;
  margin: auto;
  overflow: hidden
}

.modal__close {
  aspect-ratio: 1;
  display: block;
  position: absolute;
  top: 68px;
  right: 0;
  width: 34px;
  z-index: 2;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='34' viewBox='0 0 34 34'%3E%3Cg transform='translate(-352 -91)'%3E%3Ccircle cx='16.5' cy='16.5' r='16.5' fill='%23fff' stroke='%23000' stroke-miterlimit='10' stroke-width='.75' transform='translate(352.5 91.5)'/%3E%3Cpath d='m369.902 107.688 5.52-5.54-.88-.88-5.54 5.54-5.52-5.54-.88.9 5.52 5.52-5.52 5.52.88.9 5.52-5.54 5.54 5.54.88-.9Z'/%3E%3C/g%3E%3C/svg%3E");
  background-position: center;
  background-size: contain;
  border-radius: 50%
}

.est big,
.est__t {
  align-items: center;
  position: relative;
  width: 100%;
  border-radius: inherit;
  z-index: 2
}

.est {
  position: relative;
  display: block;
  width: 100%;
  font-size: clamp(1.4435rem, 0rem + 3.8493vw, 2.887rem);
  z-index: 1
}

.est__tgl,
.est__opt,
.est__lbl {
  display: block
}

.est__tgl {
  position: relative;
  width: 100%;
  border-radius: 0.5895em
}

.est__tgl::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: inherit;
  background-color: #fff
}

.est__tgl>* {
  transition: .2s ease;
  transition-property: opacity;
  will-change: opacity
}

@media(any-hover: hover) {
  .est__tgl:hover {
    opacity: 1
  }

  .est__tgl:hover>* {
    opacity: .7;
    transition: .2s ease
  }
}

.est__t {
  display: flex;
  gap: 0.4018em;
  min-height: 3.1521em;
  padding: 5px 6.2777%;
  border-radius: inherit;
  white-space: nowrap
}

.est__tgl .est__t {
  justify-content: center;
  min-height: 4.6325em;
  box-shadow: .97px .97px 0.168em rgba(127, 127, 132, .75)
}

.est small {
  font-size: 48.4932%;
  font-weight: normal;
  white-space: normal
}

.est big {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 0.7065em;
  min-height: 3.446em;
  padding-right: 5%;
  background-color: gray;
  color: var(--kbc-c-wht);
  font-size: 134.4302%;
  font-weight: 900;
  text-align: center
}

.est big::after {
  aspect-ratio: 28/14;
  content: "";
  display: block;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: 100%;
  transition: .2s ease;
  transition-property: transform;
  will-change: transform;
  background-color: var(--kbc-c-wht)
}

.est__pnl {
  position: absolute;
  top: 0;
  right: 1px;
  left: 1px;
  padding: 5.5192em 0 0.6997em;
  transition-property: grid-template-rows, padding, box-shadow;
  will-change: grid-template-rows, padding, box-shadow;
  background-color: var(--kbc-c-wht);
  z-index: 1;
  border-radius: 0.5895em 0.5895em 0 0;
  box-shadow: 1px 1px clamp(2.1333px, 0.6667vw, 5px) rgba(127, 127, 132, .75)
}

.est:not(.is-active) .est__pnl {
  box-shadow: 0 0 0 rgba(0, 0, 0, 0)
}

.est__menu {
  background-color: var(--kbc-c-wht)
}

.est__radio {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  word-spacing: none;
  border: 0
}

.est__opt {
  display: block;
  cursor: pointer
}

@media(any-hover: hover) {
  .est__opt {
    transition: .2s ease;
    transition-property: background-color;
    will-change: background-color
  }

  .est__opt:hover {
    background-color: rgba(0, 255, 255, .15)
  }
}

.est__opt * {
  pointer-events: none
}

.estR {
  position: relative;
  width: 76.1194%;
  max-width: 510px;
  min-width: 255px;
  margin-left: auto;
  margin-right: auto
}

.estR::before {
  content: "";
  aspect-ratio: 100/68;
  display: block;
  position: relative;
  width: 100px;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
  background-image: url(../img/home/estr.svg);
  background-size: contain;
  background-position: center bottom
}

.estR__card {
  position: relative;
  margin-top: -5px;
  padding: 10px 0 16px;
  background-color: var(--kbc-c-wht);
  border: clamp(14.9333px, 4.6667vw, 17.5px) solid #e6e6e6
}

.estR__ttl {
  font-size: 1.434rem;
  line-height: 1.255
}

.estR__size {
  display: block;
  font-size: 211.9944%
}

.estR__top {
  background-color: #fff9ef
}

.estR__deets {
  margin-top: 10px;
  padding: 20px 2.7523% 6.5px;
  border: 1.1px solid currentColor;
  font-size: clamp(1.024rem, 3.2vw, 1.6rem);
  line-height: 1.25
}

.estR__dl,
.estR__items {
  display: grid
}

.estR__dl--1,
.estR__items {
  grid-template-columns: auto auto;
  justify-content: space-between
}

.estR__dl {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto
}

.estR__dl--1 {
  padding: 0 min(8px, 3.8476%) 0.8333em 3.8476%;
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: 6px 1.3px;
  background-image: linear-gradient(to left, currentColor, currentColor 4px, transparent 2px)
}

.estR__dl--2 {
  grid-template-columns: 31.262% minmax(0, 1fr);
  padding-top: 0.75em
}

.estR__dt {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  gap: 0.6333em min(5.1px, 0.425em)
}

.estR__dl--2 .estR__dt {
  justify-content: center
}

.estR__dtT {
  flex: 0 0 100%
}

.estR__num {
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  width: 1.75em;
  background-color: var(--kbc-c-blk);
  color: var(--kbc-c-wht)
}

.estR__num .estR__total {
  font-size: 1.2rem
}

.estR__items {
  gap: 1.5833em 4px;
  padding: 0.8917em 0 1.4417em 4.7684%;
  background-repeat: repeat-y;
  background-position: left top;
  background-size: 1.2px 6px;
  background-image: linear-gradient(to bottom, currentColor, currentColor 4px, transparent 2px)
}

.estR__items dd {
  text-align: right
}

.estR__total {
  padding: 14px 5.9091%;
  font-size: 1.07rem;
  line-height: 1.265
}

.estR__total dt {
  display: flex;
  align-items: center;
  gap: .4em
}

.estR__sum {
  font-size: clamp(2.1146rem, 6.608vw, 2.478rem)
}

.estR__sum big {
  font-size: 172.2357%
}

.estR__btm {
  padding: 0 3.9216%
}

.estR__notes {
  margin: 13.9px 17.8px 17.8px;
  font-size: clamp(9.5px, 0.8rem + 0.4vw, 1.1rem);
  line-height: 1.749
}

.estR__contact {
  font-size: clamp(1.434rem, 1.268rem + 0.4427vw, 1.6rem);
  line-height: 1.255
}

.estR__btns {
  width: 76.405%;
  max-width: 250px;
  min-width: 156px;
  margin: 18.5px auto 0
}

.estR__btns>*+* {
  margin-top: 12px
}

@media(min-width: 960px) {
  .swipe {
    display: none
  }
}

@media(max-width: 959.8px) {
  .swipe {
    aspect-ratio: 184/120
  }

  .swipe,
  .swipe::after {
    display: block;
    position: absolute;
    background-position: center top;
    background-size: contain
  }

  .swipe {
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    width: clamp(92px, 24.5333%, 184px);
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='184' height='42' viewBox='0 0 184 42'%3E%3Cpath fill='red' d='M158.309 25.523v14.634l25.04-20.078L158.309 0v14.634H25.691V0L.651 20.079l25.04 20.078V25.523h132.618z'/%3E%3C/svg%3E");
    transition: 1s ease;
    transition-delay: 1s;
    transition-property: opacity;
    will-change: opacity
  }

  .swipe.is-in {
    opacity: 0
  }

  .swipe::after {
    aspect-ratio: 108/120;
    content: "";
    top: 0;
    left: 14.1304%;
    width: 58.6957%;
    animation: swipe 1s infinite alternate;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='108' height='120' viewBox='0 0 108 120'%3E%3Ccircle cx='18.2' cy='20.5' r='17.5' fill='red'/%3E%3Cpath fill='%23fff' d='M16.338 16.644c-5.801 3.023-8.068 10.187-5.054 15.969l2.56 4.914c1.405.363 2.871.577 4.389.577 7.66 0 14.155-4.93 16.526-11.784l-2.433-4.669c-3.015-5.783-10.188-8.029-15.988-5.007Z'/%3E%3Cpath fill='red' fill-rule='evenodd' d='M69.851 119.3a1.76 1.76 0 0 1-1.714-.055L16.974 88.302a1.752 1.752 0 0 1-.764-.974c-.84-2.679-.003-5.051 2.184-6.19 1.227-.639 2.832-.961 4.907-.984 7.426-.081 14.416 2.063 17.922 3.349l1.381.506-27.707-53.171c-2.026-3.888-.502-8.705 3.399-10.738 3.9-2.032 8.723-.522 10.751 3.366l12.956 24.863.032.041c.066.085.124.175.173.269l9.862 18.924c.273.525.923.729 1.448.456.524-.273.729-.923.456-1.448L41.81 43.229a1.742 1.742 0 0 1 .324-2.055 7.971 7.971 0 0 1 1.911-1.389c3.9-2.033 8.721-.522 10.748 3.366l9.422 18.082a1.074 1.074 0 0 0 1.903-.992L57.35 43.415a1.742 1.742 0 0 1 .315-2.045 7.958 7.958 0 0 1 1.952-1.43c3.917-2.041 8.753-.535 10.781 3.357l6.049 11.562a1.075 1.075 0 0 0 1.905-.992l-4.991-9.578a1.758 1.758 0 0 1 .434-2.154 8.06 8.06 0 0 1 1.416-.94c3.9-2.033 8.723-.52 10.751 3.371l19.294 37.024c.154.296.22.629.192.963-.189 2.136-2.365 11.743-4.308 19.766a1.748 1.748 0 0 1-.892 1.14l-30.392 15.838Z'/%3E%3C/svg%3E")
  }
}

@keyframes swipe {
  from {
    left: 16.3043%
  }

  to {
    left: 63.0435%
  }
}

.sldr {
  --kbc-sldr-gap: clamp(13.95px, 0px + 3.72vw, 27.9px)
}

.sldr--ofr {
  --kbc-sldr-sldW: clamp(220.8939px, 69.0293vw, 517.72px);
  --kbc-sldr-gap: clamp(6.7413px, 2.1067vw, 15.8px);
  --kbc-sldr-arrsW: clamp(214.912px, 67.16vw, 503.7px);
  padding: clamp(3.4133px, 1.0667vw, 8px) 0
}

.sldr__sld {
  width: 100%;
  height: auto;
  max-width: var(--kbc-sldr-sldW, clamp(218px, 0px + 58.1333vw, 436px))
}

.sldr__sld--card {
  border-width: clamp(22.5px, 0px + 6vw, 45px) clamp(24px, 0px + 6.4vw, 48px);
  border-color: var(--kbc-c-primary)
}

.ctnr {
  box-sizing: content-box;
  max-width: var(--kbc-ctnr-maw, 650px);
  margin-left: auto;
  margin-right: auto;
  padding-right: var(--kbc-ctnr-pad, 6.6667%);
  padding-left: var(--kbc-ctnr-pad, 6.6667%)
}

@media(max-width: 767.8px) {
  .ctnr--s\@s {
    --kbc-ctnr-pad: 7.2667%
  }
}

@media(max-width: 767.8px) {
  .ctnr--m\@s {
    --kbc-ctnr-pad: 6.2133%
  }
}

@media(max-width: 767.8px) {
  .ctnr--l\@s {
    --kbc-ctnr-pad: 2.4133%
  }
}

.wrapper {
  display: grid;
  grid-template-rows: 1fr auto;
  grid-template-columns: 100%;
  position: relative;
  min-height: 100vh;
  overflow: hidden
}

.hdr {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  padding: 0 3.2267% 0 1.8267%;
  z-index: 9
}

.hdr::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--kbc-c-primary)
}

.is-locked .hdr {
  pointer-events: auto
}

.hdr__inr {
  display: flex;
  align-items: center;
  position: relative;
  max-width: 950px;
  height: var(--kbc-headerH);
  margin-left: auto;
  margin-right: auto;
  padding: 10px 0
}

.hdr__inr .is-active {
  right: calc(var(--kbc-scrollbarW)/2)
}

.hdr__logo {
  display: block;
  position: relative;
  max-width: 115px;
  z-index: 1
}

@media(min-width: 768px) {
  .hdr__logo {
    max-width: 180px
  }
}

.gnavTgl {
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  position: relative;
  width: 1.619em;
  margin-left: auto;
  cursor: pointer;
  z-index: 11;
  background-color: var(--kbc-c-wht)
}

@media(min-width: 768px) {
  .gnavTgl {
    font-size: 3.15rem
  }
}

.gnavTgl__ico {
  position: relative
}

.gnavTgl__ico,
.gnavTgl__ico::before,
.gnavTgl__ico::after {
  width: 1em;
  height: 2px;
  background-color: var(--kbc-c-primary);
  transition-property: transform;
  will-change: transform;
  border-radius: 3px
}

.gnavTgl__ico::before,
.gnavTgl__ico::after {
  content: "";
  display: block;
  position: absolute;
  transition: .2s ease
}

.gnavTgl__ico::before {
  top: 0.381em
}

.gnavTgl__ico::after {
  top: -0.381em
}

.gnavTgl.is-active .gnavTgl__ico {
  background-color: rgba(0, 0, 0, 0)
}

.gnavTgl.is-active .gnavTgl__ico::before {
  transform: rotate(45deg);
  top: 0
}

.gnavTgl.is-active .gnavTgl__ico::after {
  transform: rotate(-45deg);
  top: 0
}

.gnav {
  position: fixed;
  top: -100%;
  left: 0;
  width: 100%;
  height: calc(100% - var(--kbc-headerH));
  padding: 32px 0 101px;
  overflow-y: scroll;
  transition: .4s ease;
  transition-property: top;
  will-change: top;
  z-index: -1;
  background-color: var(--kbc-c-wht)
}

.gnav[aria-hidden=false] {
  top: var(--kbc-headerH)
}

.gnav__menu {
  font-size: clamp(1.8347rem, 5.7333vw, 2.15rem);
  line-height: 2.6279em;
  text-align: center;
  font-weight: 800
}

.gnav__link {
  display: block;
  padding: 0 10px
}

@media(any-hover: hover) {
  .gnav__link {
    transition-property: background-color;
    will-change: background-color
  }

  .gnav__link:hover {
    background-color: rgba(41, 171, 226, .36);
    opacity: 1
  }
}

.main {
  padding-top: var(--kbc-headerH)
}

.ftr {
  padding: 42px 0 130px
}

.ftr__cr {
  margin-top: clamp(28.5px, 0px + 7.6vw, 57px);
  font-size: clamp(1.1rem, 0rem + 2.9333vw, 2.2rem);
  line-height: 1.75
}

.fBnrsTtl {
  padding: 0.8481em 0 0.8741em;
  font-size: clamp(1.35rem, 0rem + 3.6vw, 2.7rem);
  line-height: 1.333;
  border-color: currentColor;
  border-width: 1px 0
}

.fBnrs {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: clamp(13.3px, 5px + 2.2133vw, 21.6px) max(6px, 1.9802%);
  max-width: 606px;
  margin: clamp(29.1px, 0px + 7.76vw, 58.2px) auto 0
}

.fBnrs>* {
  aspect-ratio: 400/328
}

.hMV {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 96.1889%, 50% 100%, 0 96.1889%);
  clip-path: polygon(0 0, 100% 0, 100% 96.1889%, 50% 100%, 0 96.1889%);
  padding-bottom: min(21px, 2.8%);
  background-color: #fbb03b
}

.hMV__wrap {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 96.1159%, 50% 100%, 0 96.1159%);
  clip-path: polygon(0 0, 100% 0, 100% 96.1159%, 50% 100%, 0 96.1159%);
  background-image: url(../img/home/mv_bg.webp), linear-gradient(-30deg, rgb(232, 12, 23) 0%, rgb(230, 0, 17) 40.76%, rgb(240, 36, 23) 46.18%, rgb(248, 63, 28) 51.35%, rgb(252, 79, 31) 55.94%, rgb(254, 85, 32) 59.46%);
  background-position: center top, center, center;
  background-size: auto 56.6606%, cover, cover
}

.hMV__inr {
  padding-bottom: min(37px, 4.9333%)
}

.hMV__p {
  position: relative;
  width: 105.0667%;
  left: 50%;
  transform: translateX(-50%)
}

.hCTA {
  --kbc-ctnr-maw: 656px;
  --kbc-ctnr-pad: 6.2667%;
  padding-bottom: min(25.1px, 3.8262%)
}

.hCTA__btn {
  aspect-ratio: 656/144;
  display: block;
  position: relative
}

.hCTA__btn::before {
  content: "";
  display: block;
  background-size: contain;
  background-position: center;
  width: 100%;
  height: 100%;
  background-image: url(../img/btn-cta.svg);
  filter: drop-shadow(0.1037em 0.1037em 0.074em rgba(173, 173, 173, 0.75))
}

.hCTA__btn::after {
  top: 43.5347%;
  right: 9.4512%;
  width: 15.7012%
}

.hEst {
  padding: 27px 0 37px;
  --kbc-ctnr-maw: 676px;
  --kbc-ctnr-pad: 4.9413%
}

.hEst__btn {
  --kbc-btn-pointer-sh: #f2c146;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
  min-height: 3.4231em;
  margin-top: 0.3249em;
  background-color: var(--kbc-c-yellow);
  border-radius: 0.4354em;
  color: #333;
  font-size: clamp(1.6678rem, 5.212vw, 3.909rem);
  text-align: center;
  line-height: 1.4
}

.hEst__btn::after {
  top: 34.3771%;
  right: 16.1243%;
  width: 2.6324em
}

.hOfr {
  padding-top: clamp(18.9867px, 5.9333vw, 44.5px);
  position: relative
}

.hOfr::before,
.hOfr::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1
}

.hOfr::before {
  aspect-ratio: 856/240;
  top: 0;
  left: 50%;
  width: clamp(365.2267px, 114.1333vw, 856px);
  transform: translateX(-50%);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='856' height='240' viewBox='0 0 856 240'%3E%3Cellipse cx='428' cy='120' rx='428' ry='120' fill='%23e60012'/%3E%3C/svg%3E");
  background-position: center top;
  background-size: contain
}

.hOfr::after {
  top: clamp(40.6656px, 12.708vw, 95.31px);
  right: 0;
  bottom: -1px;
  left: 0;
  background-color: var(--kbc-c-primary)
}

.hOfr__hdr {
  --kbc-ctnr-maw: 680px;
  --kbc-ctnr-pad: 5.3333%
}

.hOfr__lead {
  margin: 0.495em 0 1.1255em;
  font-size: clamp(1.2rem, 0.703rem + 1.3253vw, 1.697rem);
  line-height: 1.75
}

.hOfr__sldr {
  max-width: 1475px
}

.hOfr__card {
  transition: .2s ease;
  transition-property: box-shadow;
  will-change: box-shadow;
  background-color: var(--kbc-c-wht);
  border: clamp(3.4133px, 1.0667vw, 8px) solid #fbb03b;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0)
}

.hOfr__card--1 {
  padding: clamp(11.3067px, 3.5333vw, 26.5px) 10px clamp(14.2507px, 4.4533vw, 33.4px)
}

.hOfr__card--2 {
  padding: clamp(5.5467px, 1.7333vw, 13px) 10px clamp(7.3813px, 2.3067vw, 17.3px)
}

.hOfr__card--3 {
  --kbc-sldr-sldW: clamp(171.5285px, 53.6027vw, 402.02px);
  padding: clamp(13.5253px, 4.2267vw, 31.7px) 10px clamp(24.448px, 7.64vw, 57.3px)
}

.hOfr__card--cp {
  padding: clamp(13.5253px, 4.2267vw, 31.7px) 10px
}

.hOfr__card.is-active {
  box-shadow: clamp(0.9972px, 0.3116vw, 2.3373px) clamp(0.9972px, 0.3116vw, 2.3373px) clamp(1.9945px, 0.6233vw, 4.6746px) rgba(0, 0, 0, .375)
}

.hOfr__link {
  display: block
}

.hOfr__ttl {
  line-height: 1.105
}

:where(.hOfr__card--1) .hOfr__ttl {
  font-size: clamp(2.6197rem, 8.1867vw, 6.14rem)
}

:where(.hOfr__card--2) .hOfr__ttl {
  font-size: clamp(2.1662rem, 6.7693vw, 5.077rem)
}

:where(.hOfr__card--3) .hOfr__ttl,
:where(.hOfr__card--cp) .hOfr__ttl {
  font-size: clamp(1.8423rem, 5.7573vw, 4.318rem);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden
}

:where(.hOfr__card--1) .hOfr__vis {
  width: clamp(159.2192px, 49.756vw, 373.17px);
  max-height: clamp(116.9067px, 36.5333vw, 274px);
  margin: clamp(6.656px, 2.08vw, 15.6px) auto clamp(9.3013px, 2.9067vw, 21.8px);
  overflow-y: auto
}

:where(.hOfr__card--2) .hOfr__vis {
  width: clamp(158.72px, 49.6vw, 372px);
  margin: clamp(7.04px, 2.2vw, 16.5px) auto clamp(13.184px, 4.12vw, 30.9px)
}

:where(.hOfr__card--3) .hOfr__vis {
  width: clamp(109.2267px, 34.1333vw, 256px);
  margin: clamp(11.0933px, 3.4667vw, 26px) auto 0
}

:where(.hOfr__card--cp) .hOfr__vis {
  aspect-ratio: 1;
  width: clamp(109.2267px, 34.1333vw, 256px);
  margin: clamp(11.0933px, 3.4667vw, 26px) auto 0
}

:where(.hOfr__card--1) .hOfr__p {
  font-size: clamp(1.1755rem, 3.6733vw, 2.755rem);
  line-height: 1.03
}

:where(.hOfr__card--2) .hOfr__p {
  font-size: clamp(1.2467rem, 3.896vw, 2.922rem);
  line-height: 1.03
}

.hPr {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - clamp(41.6538px, 13.0168vw, 97.6262px)), 50% 100%, 0 calc(100% - clamp(41.6538px, 13.0168vw, 97.6262px)));
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - clamp(41.6538px, 13.0168vw, 97.6262px)), 50% 100%, 0 calc(100% - clamp(41.6538px, 13.0168vw, 97.6262px)));
  padding: clamp(21.5467px, 6.7333vw, 50.5px) 0 clamp(56.5872px, 17.6835vw, 132.6262px)
}

.hPr__intro {
  -webkit-clip-path: polygon(0 9.1713%, 100% 0, 100% 90.8287%, 0 100%);
  clip-path: polygon(0 9.1713%, 100% 0, 100% 90.8287%, 0 100%);
  padding: min(92.3741px, 12.3165%) 0 min(148px, 19.7333%)
}

.hPr__intro::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 141.3333%;
  max-width: 1060px;
  transform: translateX(-50%);
  background-image: url(../img/home/pr_bg.svg);
  background-position: center;
  background-size: contain
}

.hPr__lead {
  --kbc-ctnr-maw: 632px;
  --kbc-ctnr-pad: 7.8667%
}

.hPr__hd {
  --kbc-ctnr-maw: 702px;
  --kbc-ctnr-pad: 3.2%;
  margin-top: max(-101px, -13.4667%)
}

.hPr__ctnr {
  margin-top: max(-57px, -7.6%)
}

.hPr__list>* {
  position: relative
}

.hPr__list>*:nth-child(n+2)::before {
  content: "";
  display: block;
  width: 100%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='650' height='30' viewBox='0 0 650 30'%3E%3Cpath fill='%23fff' d='M327.956 18.051v11.901h-5.913V18.051h-11.939V12.1h11.939V.047h5.913V12.1h11.939v5.951h-11.939Z'/%3E%3C/svg%3E");
  background-size: contain;
  background-position: center
}

.hPr__list>*:nth-child(2)::before {
  aspect-ratio: 650/57
}

.hPr__list>*:nth-child(3)::before {
  aspect-ratio: 650/118
}

.hPr__card {
  background-color: var(--kbc-c-wht)
}

.hPr__ttl {
  padding: 0 2.6154%
}

.hPr__ttl03 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 23.7013%
}

.hPr__ttl03Vis::before {
  aspect-ratio: 146/244;
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  background-image: url(../img/home/pr03b.webp);
  background-size: contain;
  background-position: center bottom
}

.hPr__packs {
  padding-bottom: 11.0769%
}

.hPr__rec {
  margin-bottom: -1.0769%
}

.hPr__pr {
  max-width: -moz-max-content;
  max-width: max-content;
  margin-left: auto;
  margin-right: auto;
  padding-left: 6.6667%
}

@media(min-width: 960px) {
  .hPr__pr {
    padding: 0 25px
  }
}

.hPr__tbl {
  overflow-x: auto
}

.hPr__tblImg {
  width: 132.1715%;
  max-width: 921.5px;
  min-width: 460.75px
}

@media(min-width: 960px) {
  .hPr__tblImg {
    width: 100%
  }
}

.hPr__btnBox {
  --kbc-ctnr-maw: 660px;
  --kbc-ctnr-pad: 6%;
  padding-top: 3.6267%
}

.hPr__btn {
  display: grid;
  justify-content: center;
  align-items: center;
  grid-template-columns: auto 2.1196em;
  gap: 0 2.4091%;
  position: relative;
  width: 100%;
  padding: 0 4.303%;
  background-color: var(--kbc-c-wht);
  border-radius: 500px;
  color: var(--kbc-c-primary);
  font-size: clamp(1.321rem, 0rem + 3.5227vw, 2.642rem);
  line-height: 1.3
}

.hPr__btn::after {
  content: "";
  position: relative;
  bottom: 9.849%;
  width: 100%;
  height: 2.3058em;
  background-image: var(--kbc-ico-kobasanta);
  background-position: left center;
  background-size: auto 100%
}

.link__btn {
  display: grid;
  justify-content: center;
  align-items: center;
/*  grid-template-columns: auto 2.1196em;*/
  gap: 0 2.4091%;
  position: relative;
  width: 100%;
  padding: 4.303%;
  background-color: #f89321;
  border-radius: 500px;
  color: var(--kbc-c-wht);
  font-size: clamp(1.7rem, 0rem + 3.5227vw, 2.642rem);
  line-height: 1.3
}

.link__btn::after {
  content: none;
}

.hPack {
  width: 91.3846%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 4.7643%
}

.hPack__ttl {
  display: grid;
  align-items: center;
  grid-template-columns: minmax(0, 1fr) 6.5292%
}

.hPack__tgl {
  width: 100%
}

.hPack__desc {
  position: relative;
  padding-bottom: 5.8923%
}

.hPack:not(.is-active) .hPack__desc {
  padding-bottom: 9.2593%
}

.hPack__pnl {
  padding: 0 3.2961% 6.2148%;
  background-color: var(--kbc-c-wht)
}

.hPack__dl {
  padding: 2.0319% 5px;
  background-color: var(--kbc-bg-egg);
  font-weight: 900
}

.hPack__dt {
  font-size: clamp(1.3rem, 0.5rem + 2.1333vw, 2.1rem);
  text-align: center;
  line-height: 1.286
}

.hPack__dd {
  margin-top: 2.6261%;
  font-size: clamp(1rem, 0.3rem + 1.8667vw, 1.7rem);
  line-height: 1.75
}

.hPack__note {
  margin-top: 3.506%;
  font-size: clamp(9px, 0.5rem + 1.0667vw, 1.3rem);
  font-weight: 400;
  line-height: 1.457
}

.hPack__more {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 46.8013%;
  margin-left: auto;
  margin-right: auto;
  transition: .2s ease;
  transition-property: opacity, visibility;
  will-change: opacity, visibility
}

.hPack.is-active .hPack__more {
  opacity: 0;
  visibility: hidden
}

.hCf {
  padding: min(40px, 5.1867%) 0 min(66px, 8.76%)
}

.hCf__ttl {
  --kbc-ctnr-maw: 556px;
  --kbc-ctnr-pad: 12.9333%
}

.hCf__content {
  --kbc-ctnr-maw: 656px;
  --kbc-ctnr-pad: 6.2667%;
  background-image: linear-gradient(to bottom, #fff 0%, rgb(253, 253, 231) 3.31%, rgb(252, 251, 209) 7.41%, rgb(250, 249, 192) 12.25%, rgb(250, 248, 181) 18.25%, rgb(249, 247, 174) 26.65%, rgb(249, 247, 172) 50%, rgb(249, 247, 177) 60.23%, rgb(250, 249, 190) 71.66%, rgb(252, 251, 212) 83.67%, rgb(254, 254, 243) 96%, #fff 99.95%)
}

.hCf__p {
  padding: 0.7103em 0 0.7328em;
  font-size: clamp(1.3rem, 0.826rem + 1.264vw, 1.774rem);
  line-height: 1.24
}

.hCf__note {
  font-size: clamp(9px, 0.5rem + 1.0667vw, 1.3rem);
  line-height: 1.457
}

.hCf__note--1 {
  padding: 1.6615em 0 5.1846em
}

.hCf__note--2 {
  margin-top: -1.1077em
}

.hWhy {
  padding: min(100px, 13.3333%) 0 min(97.1px, 12.9467%)
}

.hWhy__hd {
  margin-bottom: clamp(23px, 0px + 6.1333vw, 46px);
  background-image: linear-gradient(to bottom, var(--kbc-c-primary));
  background-size: 100% 66.9421%;
  background-position: center bottom
}

.hWhy__ctnr {
  --kbc-ctnr-maw: 641px;
  padding: 0 min(49px, 6.5333%) 0 min(60px, 8%)
}

.hWhy__list {
  counter-reset: whyIndex 0
}

.hWhy__list--2 {
  counter-reset: whyIndex 4
}

.hWhy__list>*:nth-child(n+2) {
  margin-top: clamp(22px, 0px + 5.8667vw, 44px)
}

.hWhy__item {
  background-color: var(--kbc-c-wht);
  box-shadow: 0 clamp(1.3824px, 0.432vw, 3.24px) clamp(2.304px, 0.72vw, 5.4px) rgba(96, 4, 4, .75)
}

.hWhy__ttl,
.hWhy__pnl {
  padding: 0 3.1201%
}

.hWhy__ttl {
  grid-template-columns: minmax(0, 1fr) 4.9126%
}

.hWhy__ttl::after {
  content: ""
}

.hWhy__index {
  --kbc-why-f: 1.3303em;
  --kbc-why-r: 0.9012em;
  counter-increment: whyIndex;
  -webkit-clip-path: polygon(100% 0, 0 0, 0 calc(100% - var(--kbc-why-f) * 0.5), var(--kbc-why-f) 100%, var(--kbc-why-f) calc(100% - var(--kbc-why-f) * 0.5), 100% calc(100% - var(--kbc-why-f) * 0.5), calc(100% - var(--kbc-why-r)) calc(50% - var(--kbc-why-f) * 0.5 / 2));
  clip-path: polygon(100% 0, 0 0, 0 calc(100% - var(--kbc-why-f) * 0.5), var(--kbc-why-f) 100%, var(--kbc-why-f) calc(100% - var(--kbc-why-f) * 0.5), 100% calc(100% - var(--kbc-why-f) * 0.5), calc(100% - var(--kbc-why-r)) calc(50% - var(--kbc-why-f) * 0.5 / 2));
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .15em;
  position: absolute;
  top: calc(50% + var(--kbc-why-f)*.25);
  bottom: 0;
  left: calc(-1*var(--kbc-why-f));
  width: 24.6318%;
  height: 2.9612em;
  padding-right: 5px;
  transform: translateY(-50%);
  background-color: var(--kbc-c-primary);
  border-right: var(--kbc-why-r) solid rgba(0, 0, 0, 0);
  border-bottom: calc(var(--kbc-why-f)*.5) solid #a30000;
  color: var(--kbc-c-wht);
  font-family: var(--kbc-ff-go);
  font-size: clamp(1.2309rem, 3.8467vw, 2.885rem);
  font-weight: 900;
  line-height: 1
}

.hWhy__index::before {
  content: "その"
}

.hWhy__index::after {
  content: counter(whyIndex);
  margin-top: -0.2em;
  font-size: 173.3102%
}

.hWhy__pnl {
  padding-bottom: 6.0732%
}

.hWhy__desc {
  display: grid;
  grid-template-columns: 48.4193% minmax(0, 1fr);
  gap: 3.3278%;
  transition: .2s ease;
  transition-property: padding;
  will-change: padding;
  overflow: hidden
}

.hWhy__desc+* {
  margin-top: 1em
}

.hWhy__body {
  font-size: clamp(1.2rem, 0.4rem + 2.1333vw, 2rem);
  line-height: 1.7
}

.hWhy__body small {
  font-size: clamp(9px, 0.6rem + 0.8vw, 1.2rem);
  font-weight: 400;
  line-height: 1.208
}

.hWhy__body>*+* {
  margin-top: 1em
}

.hWhy__body~* {
  grid-column: 1/3
}

.hWhy__note {
  font-size: clamp(1rem, 0.6rem + 1.0667vw, 1.4rem);
  font-weight: 200;
  line-height: 1.75
}

.hWhy__review {
  margin: clamp(22px, 0px + 5.8667vw, 44px) 0;
  background-image: url(../img/home/rev_bg.webp);
  background-position: center;
  background-repeat: repeat-x;
  background-size: auto 100%
}

.hVo,
.hNuz {
  padding-top: clamp(45px, 0px + 12vw, 90px)
}

.hVo__hd,
.hNuz__hd {
  margin-bottom: max(24.5px, 3.2667%)
}

.hVo__sldr,
.hNuz__sldr {
  max-width: 1392px
}

.hVo__card {
  padding: clamp(18.432px, 5.76vw, 43.2px) clamp(8.5333px, 2.6667vw, 20px) clamp(21px, 0px + 5.6vw, 42px)
}

.hVo__card::before {
  content: "";
  display: block;
  aspect-ratio: 1;
  width: clamp(65px, 0px + 17.3333vw, 130px);
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  background-color: #cfcfcf;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='130' height='130' viewBox='0 0 130 130'%3E%3Cpath fill='%234d4d4d' d='M118.527 130H11.473a3.62 3.62 0 0 1-1.104-2.615c0-22.966 14.306-42.617 34.479-50.644a32.582 32.582 0 0 0 20.151 7.002 32.633 32.633 0 0 0 20.159-7.002c20.17 8.027 34.472 27.678 34.472 50.644a3.62 3.62 0 0 1-1.104 2.615ZM65 21.967c-16.047 0-29.115 13.044-29.115 29.063S48.953 80.122 65 80.122 94.144 67.048 94.144 51.03 81.051 21.967 65 21.967Z'/%3E%3C/svg%3E");
  background-position: center;
  background-size: contain;
  border-radius: 50%
}

.hVo__rate {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: -moz-max-content;
  max-width: max-content;
  margin: clamp(14.464px, 4.52vw, 33.9px) auto
}

.hVo__star {
  aspect-ratio: 1;
  width: clamp(21px, 0px + 5.6vw, 42px);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 42 42'%3E%3Cpath fill='%23fa0' d='m36.185 16.088-3.557-.457-3.561-.456-2.607-.339-2.838-5.53-1.638-3.193c-.661-1.284-1.708-1.268-2.33.037l-1.536 3.244-2.658 5.617-2.594.422-3.545.569-3.543.57c-1.422.23-1.733 1.234-.682 2.226l2.607 2.463 2.61 2.462 1.911 1.8-1.5 9.69c-.222 1.426.634 2.027 1.9 1.336l3.15-1.719 5.454-2.98 5.546 2.8 3.2 1.618c1.292.65 2.124.022 1.859-1.4l-1.808-9.638 1.85-1.864 2.529-2.543 2.529-2.545c1.024-1.013.687-2.006-.748-2.19Z'/%3E%3C/svg%3E");
  background-position: center;
  background-size: contain
}

.hVo__p {
  font-size: clamp(1.3rem, 1rem + 0.8vw, 1.6rem);
  font-weight: normal;
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden
}

.hNuz__card {
  display: block;
  padding: clamp(14.9333px, 4.6667vw, 35px) clamp(8.5333px, 2.6667vw, 20px)
}

.hNuz__vis {
  aspect-ratio: 1;
  width: 80%;
  max-width: 150px;
  margin-left: auto;
  margin-right: auto
}

.hNuz__date {
  padding: 1.4286em 0 0.3571em;
  font-size: clamp(1rem, 0.6rem + 1.0667vw, 1.4rem);
  font-weight: normal
}

.hNuz__ttl {
  font-size: clamp(1.3653rem, 4.2667vw, 2.6rem);
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden
}

.hProc {
  padding-top: clamp(75px, 0px + 20vw, 150px)
}

.hProc__hd {
  --kbc-secTtl-mih: 2.2914em;
  --kbc-secTtl-fz: clamp(2.793rem, 0rem + 7.448vw, 5.586rem)
}

.hLoc {
  margin-bottom: clamp(42.6667px, 13.3333vw, 100px);
  padding: clamp(87.8933px, 27.4667vw, 206px) 0 clamp(120.32px, 37.6vw, 282px);
  background-image: linear-gradient(to bottom, transparent clamp(66.56px, 20.8vw, 156px), var(--kbc-c-primary) clamp(66.56px, 20.8vw, 156px), var(--kbc-c-primary) calc(100% - clamp(66.56px, 20.8vw, 156px)), transparent calc(100% - clamp(66.56px, 20.8vw, 156px)))
}

.hLoc::before,
.hLoc::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  z-index: -1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2291' height='156' viewBox='0 0 2291 156'%3E%3Cpath fill='%23e60012' d='M1527.59.369c-95.097-6.603-192.32 77.13-285.166 108.14-95.987 32.059-196.819 8.46-291.122-33.053C890.068 48.5 826.195 13.673 763.966 35.118v.135C679.134 61 626.134 87 584.134 95c0 0-73 24-169.309 25.509C287.935 122.497 135.475 13.308 21 .427H0V156h2291V.427c-63.255 1.995-125.035 48.373-185.588 75.029-94.303 41.513-195.135 65.112-291.122 33.053C1721.444 77.499 1625.133 8 1529.124.369'/%3E%3C/svg%3E");
  height: clamp(66.56px, 20.8vw, 156px);
  background-position: center top;
  background-repeat: repeat-x;
  background-size: auto 100%
}

.hLoc::before {
  top: 0
}

.hLoc::after {
  bottom: 0;
  transform: rotate(180deg)
}

.hLoc__ctnr {
  --kbc-ctnr-maw: 680px;
  --kbc-ctnr-pad: 5.3333%
}

.hLoc__hd {
  font-size: clamp(2.6829rem, 8.384vw, 6.288rem);
  line-height: 1.256
}

.hLoc__lblDesc {
  display: flex;
  flex-wrap: wrap;
  gap: 1.0643em 0.4719em;
  margin: 1.9629em 0 1.506em;
  font-size: clamp(1.2rem, 0.408rem + 2.112vw, 1.992rem)
}

.hLoc__lbls {
/*  display: grid;*/
  display: flex;
	flex-wrap: wrap;
/*
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1.0643em 0.4719em
*/
}

.hLoc__lblDesc .hLoc__lbl {
  display: grid;
  gap: 0 0.6024em;
  line-height: 1;
  grid-template-columns: 2.0181em auto;
  align-items: center
}

.hLoc__lbl::before {
  aspect-ratio: 1;
/*  content: "";*/
  content: none;
  display: block;
  width: 100%;
  background-position: center;
  background-size: contain;
  box-shadow: clamp(1px, 0.18px + 0.2187vw, 1.82px) clamp(1px, 0.18px + 0.2187vw, 1.82px) clamp(1px, 0.18px + 0.2187vw, 1.82px) rgba(71, 2, 2, .75)
}

/*
.hLoc__lbl.is-shaken::before {
  background-image: url(../img/home/ico-shaken.svg)
}

.hLoc__lbl.is-bankin::before {
  background-image: url(../img/home/ico-bankin.svg)
}

.hLoc__lbl.is-hanbai::before {
  background-image: url(../img/home/ico-hanbai.svg)
}

.hLoc__lbl.is-kaitori::before {
  background-image: url(../img/home/ico-kaitori.svg)
}

.hLoc__lbl.is-lease::before {
  background-image: url(../img/home/ico-lease.svg)
}

.hLoc__lbl.is-rental::before {
  background-image: url(../img/home/ico-rental.svg)
}

.hLoc__lbl.is-biyou::before {
  background-image: url(../img/home/ico-biyou.svg)
}
*/

.hLoc__block {
  padding: 0 7.3077%
}

.hLoc__block+.hLoc__block {
  margin-top: clamp(33.024px, 10.32vw, 77.4px)
}

.hLoc__city {
  grid-template-columns: auto 1.429em;
  justify-content: center;
  gap: 0.6147em;
  min-height: 3.3742em;
  font-size: clamp(2.3265rem, 0rem + 6.204vw, 4.653rem);
  line-height: 1.268
}

.hLoc__city::after {
  content: ""
}

.hLoc__pnl {
  padding-bottom: clamp(30.72px, 9.6vw, 72px)
}

.hLoc__sto {
  padding: clamp(13.6533px, 4.2667vw, 32px) 4.1441%;
  background-color: var(--kbc-bg-egg);
  border-radius: clamp(23.1467px, 7.2333vw, 54.25px)
}

.hLoc__sto:nth-child(n+2) {
  margin-top: clamp(15px, 0px + 4vw, 30px)
}

.hLoc__name {
  color: #4d4d4d;
  font-size: clamp(1.3781rem, 4.3067vw, 3.23rem);
  line-height: 1.269;
  text-align: center
}

.hLoc__img {
  max-width: 490px;
  margin: clamp(10.6667px, 3.3333vw, 25px) auto clamp(20.9067px, 6.5333vw, 49px)
}

.hLoc__svc {
  padding: 0 6.2275% clamp(16.768px, 5.24vw, 39.3px);
  background-color: var(--kbc-c-wht);
  border: clamp(1px, 0px + 0.2667vw, 2px) solid currentColor;
  font-size: clamp(1.4605rem, 4.564vw, 3.423rem)
}

.hLoc__svcTtl {
  display: block;
  margin: -0.7771em 0 clamp(9.984px, 3.12vw, 23.4px);
  font-size: clamp(1.4605rem, 4.564vw, 3.423rem);
  line-height: 1.285;
}

.hLoc__info {
  margin: 11px 0 clamp(21.3333px, 6.6667vw, 50px);
  font-size: clamp(1.157rem, 0rem + 3.0853vw, 2.314rem);
  line-height: 1.75
}

.hLoc__links {
  display: grid;
  align-items: center;
  justify-content: center;
  grid-template-columns: repeat(auto-fit, minmax(clamp(50.7733px, 15.8667vw, 119px), max-content));
  gap: clamp(4.6933px, 1.4667vw, 11px)
}

.hLoc__links>* {
  aspect-ratio: 1;
  width: 100%;
  background-position: center;
  background-size: contain
}

.hLoc__tel {
  background-image: url(../img/home/ico_tel.svg)
}

.hLoc__ig {
  background-image: url(../img/home/ico_ig.svg)
}

.hLoc__line {
  background-image: url(../img/home/ico_line.svg)
}

.hFaq {
  padding-top: clamp(25.25px, 0px + 6.7333vw, 50.5px)
}

.hFaq__ttl {
  font-size: clamp(1.891rem, 0rem + 5.0427vw, 3.782rem);
  line-height: 1.269
}

.hFaq__inr {
  margin-top: clamp(31.4px, 0px + 8.3733vw, 62.8px);
  padding: clamp(22.5px, 0px + 6vw, 45px) 0 clamp(44.8px, 0px + 11.9467vw, 89.6px)
}

.hFaq__pnl {
  max-width: 585px;
  padding: clamp(27.35px, 0px + 7.2933vw, 54.7px) 7.094% clamp(34.45px, 0px + 9.1867vw, 68.9px)
}

.hFaq__qa {
  overflow: hidden;
  border: 1px solid var(--kbc-c-dark-red);
  border-radius: clamp(6.355px, 0px + 1.6947vw, 12.71px);
  font-size: clamp(1.3rem, 1.1rem + 0.5333vw, 1.5rem);
  --kbc-ls: 0.06em
}

.hFaq__qa:nth-child(n+2) {
  margin-top: 3.1667em
}

.hFaq__q {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: baseline;
  gap: 2.4104%;
  padding: 0.4688em 3.7849%;
  background-color: rgba(237, 28, 36, .4);
  font-size: clamp(1.4rem, 1.2rem + 0.5333vw, 1.6rem);
  font-weight: bold;
  line-height: 1.438
}

.hFaq__q::before {
  content: "Q";
  display: grid;
  place-items: center;
  width: 1.7717em;
  height: 1.7717em;
  padding: 0 0 0.0824em 0.0824em;
  background-color: var(--kbc-c-dark-red);
  border-radius: 50%;
  color: var(--kbc-c-wht);
  font-family: var(--kbc-ff-jp);
  font-size: 151.6875%;
  font-weight: 900;
  line-height: 1
}

.hFaq__a {
  padding: 1.7667em 3.7849%;
  font-weight: 300;
  line-height: 2.267
}

.d-b {
  display: block
}

.d-ib,
.wbr {
  display: inline-block
}

.pos-r {
  position: relative
}

.al-c,
.mc-c {
  margin-left: auto;
  margin-right: auto
}

.mc-c {
  max-width: -moz-max-content;
  max-width: max-content
}

.ov-h {
  overflow: hidden
}

.bg-wht {
  background-color: var(--kbc-c-wht)
}

.bg-primary {
  background-color: var(--kbc-c-primary)
}

.bg-green {
  background-color: var(--kbc-c-green)
}

.bg-sky {
  background-color: var(--kbc-bg-sky)
}

.tc {
  color: var(--kbc-tc)
}

.tc-wht {
  color: var(--kbc-c-wht)
}

.tc-primary {
  color: var(--kbc-c-primary)
}

.tc-md {
  color: var(--kbc-tc-md)
}

.ff {
  font-family: var(--kbc-ff)
}

.ff-go {
  font-family: var(--kbc-ff-go)
}

.fwEL {
  font-weight: 200
}

.fwN {
  font-weight: 400
}

.fwM {
  font-weight: 500
}

.fwB {
  font-weight: 700
}

.fwBlk {
  font-weight: 900
}

.ta-c {
  text-align: center
}

.ta-r {
  text-align: right
}

.ls0 {
  letter-spacing: 0
}

.visuallyhidden,
.vh {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  word-spacing: none;
  border: 0
}

@media(min-width: 768px) {

  .-s,
  .show\@s {
    display: none
  }
}

@media(max-width: 767.8px) {

  .m-,
  .hide\@s {
    display: none
  }
}