@charset "UTF-8";
/* general 
-------------------------------------------- */
:root {
  --color-pink: #ef23c2;
  --color-red: #d20036;
  --color-blue: #0033a4;
  --color-purple: #967bdc;
  --color-violet: #5e90e7;
  --color-yellow: #f2e242;
  --color-iyo: #007260;
  --color-black: #333;
  --gradation: linear-gradient(135deg, #f222c3 0, #5d92ed 100%);
  --fs-small: 14px;
  --fs-medium: clamp(1.25rem, 1.068rem + 0.91vw, 1.75rem);
  --fs-large: clamp(1.5rem, 1.364rem + 0.68vw, 1.875rem);
  --ff-gothic: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  --ff-yu-go: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  --ff-yu-go-l: "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  /* --ff-rubik: "Rubik", sans-serif; */
  --shadow: 0 0 8px rgba(37,58,91, 0.3);
}
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: 16px;
  scroll-behavior: smooth;
}
body {
  font-family: var(--ff-yu-go);
  line-height: 1.75;
  color: var(--color-black);
}

h1,h2,h3,h4,h5,h6,p,a,li,figcaption,dt,dd,th,td,input,textarea,label {
  color: var(--color-black);
  margin: 0;
}

h1,h2,h3,h4,h5,h6 {
  font-weight: 700;
  font-family: var(--ff-yu-go-l);
  font-feature-settings: "palt";
}
ol,ul {
  list-style: none;
}
img {
  max-width: 100%;
}
a img {
  transition: 0.3s;
}
a:hover {
  text-decoration: none;
  opacity: 0.8;
}
:is(p, ul):last-child {
  margin-bottom: 0;
}

#wrap {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}
@media screen and (min-width: 640px) {
  a[href^="tel"] {
    pointer-events: none;
  }
}
@media screen and (max-width: 640px) {
  html {
  }
}
/* parts
-------------------------------------------- */
.fs-small {
  font-size: var(--fs-small);
}
.fs-medium {
  font-size: var(--fs-medium);
}
.fs-large {
  font-size: var(--fs-large);
}
.fs-20 {
  font-size: clamp(1.125rem, 0.911rem + 0.95vw, 1.625rem);
}
.font-gothic {
  font-family: var(--ff-gothic);
}
.color-pink {
  color: var(--color-pink);
}
.color-blue {
  color: var(--color-blue2);
}
.color-red {
  color: var(--color-red);
}
.color-iyo {
  color: var(--color-iyo);
}
.color-wht {color: #fff}
.link-txt {
  text-decoration: underline;
  color: var(--color-blue);
}
.link-arrow::before {
  content: "";
  background: url('data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%226.987%22%20height%3D%2212.681%22%20viewBox%3D%220%200%206.987%2012.681%22%3E%3Cpolyline%20points%3D%22.413%20.413%206.403%206.403%20.539%2012.268%22%20fill%3D%22none%22%20stroke%3D%22%231a378c%22%20stroke-linecap%3D%22round%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%3C%2Fsvg%3E')
    no-repeat;
  background-size: contain;
  background-position: 50% 50%;
  width: 7px;
  height: 1em;
  display: inline-block;
  margin-right: 7px;
  vertical-align: middle;
}
:where(ul, ol).fineindent {
  padding-left: 15px;
  & > li {
    text-indent: -1em;
  }
}
p.fineindent {
  margin-left: 1em;
  text-indent: -1em;
}
.bg-yellow {
  background-color: var(--color-yellow);
}
.bg-wht {
  background-color: #fff;
}
.bg-red {
  background-color: var(--color-red);
}
.bg-blue {
  background-color: var(--color-blue);
}
.bg-pink {background-color: #f9e6e6}
.bg-purple { background-color: rgba(150, 122, 220, 0.1)}
.bg-gradation { background: var(--gradation);}
@media screen and (max-width: 640px) {
  :where(a, p, div, li, h3):has(> wbr) {word-break: keep-all;}
}
@media screen and (max-width: 768px) {
  li.sp-close:not(.uk-open):not(:has([aria-expanded])) .uk-accordion-content {
    display: none;
  }
}

/*アニメーション*/
.is-active{
  animation: buruburu 1s linear infinite;
  scale: 1;
}

@keyframes buruburu{
 0%{transform:translateX(0)}
 20%{transform:translateX(-5px)}
 40%{transform:translateX(5px)}
 60%{transform:translateX(-5px)}
 80%{transform:translateX(5px)}
 90%{transform:translateX(0px)}
}
.grad-text {/*グラデーション文字*/
  font-weight: 700;
  background: var(--gradation);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 30px;
}
.btn-grad {
  border-radius: 3em;
  display: inline-block;
  background: var(--gradation);
  color: #fff;
  font-family: var(--ff-yu-go-l);
  font-weight: 700;
  font-size: clamp(1rem, 0.85rem + 0.67vw, 1.25rem);
  width: 300px;
  padding: 10px;
  text-align: center;
  &:hover {
    opacity: 0.7;
    color: #fff;
  }
}
.btn-wht {
  border-radius: 3em;
  display: inline-block;
  background: #fff;
  font-family: var(--ff-yu-go-l);
  font-weight: 700;
  font-size: clamp(1rem, 0.85rem + 0.67vw, 1.25rem);
  width: 300px;
  padding: 10px;
  text-align: center;
  position: relative;
  &:hover {
    opacity: 0.7;
  }
}
.btn-wht::before{
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 50px;
	padding: 2px;
	background: var(--gradation);
	-webkit-mask: linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
}_
/* header
-------------------------------------------- */
header {
  background: #fff;
  position: relative;
  width: 100%;
  margin: 0 auto;
}
.header__iyogin {
  text-align: center;
  background: #fff;
}
.header__logo {
  padding: 20px 10px 20px;
  width: 336px;
}
.header__container {
  position: relative;
  max-width: 1340px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 960px) {
  .header__container {
    display: block;
  }
  .header__logo {
    padding: 10px 20px;
    margin: auto;
    width: auto;
  }
}
/* main
-------------------------------------------- */
main {
  display: block;
}
section {
  margin: 0;
  padding-block: 60px;
  padding-block: min(10vw,60px);
}
[class*="sec__inner"] {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
}
.sec__inner-small {
  max-width: 980px;
}
.sec__inner-x-small {
  max-width: 725px;
}
.sec__inner-xx-small {
  max-width: 680px;
}
@media screen and (max-width: 960px) {
  [class*="sec__inner"] {
    padding-left: 20px;
    padding-right: 20px;
  }
  .sec__inner,
  .sec__inner-small,
  .sec__inner-x-small {
    max-width: 100%;
  }
}
#kv__area {
  margin: 0 auto;
  padding-block: 0;
  text-align: center;
  position: relative;
  background-color: var(--color-red);
}
@media screen and (min-width: 1060px) {
  .kv__top {
    padding-block: 30px 20px;
    picture {
      position: relative;
      z-index: 1;
    }
  }
  .kv__top::before, .kv__top::after {
    content: '';
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
  }
  .kv__top::before {
    background: url(../img/kv_bg-flag.png) no-repeat;
    background-size: contain;
    aspect-ratio: 507/585;
    width: 507px;
    height: min(98%,585px);
    left: 0;
  }
  .kv__top::after {
    content: '';
    display: block;
    position: absolute;
    background: url(../img/kv_bg-str.png) no-repeat;
    background-size: contain;
    background-color: var(--color-red);
    width: 2000px;
    height: 100%;
    aspect-ratio: 2000 / 600;
    left: calc((100vw - 1200px) / 2);
    left: 0;
    z-index: 0;
  }
}

#kv__area .kv__container {
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 640px) {}
@media screen and (max-width: 1059px) {
  #kv__area .kv__container {
    background: url(../img/kv_bg_sp.png) no-repeat;
    background-size: cover;
  }
  .kv__top {
    padding: 20px 5px;
  }
}
.kv__period {
  height: 73px;
  background: url(../img/period_bg.png) repeat-x;
  background-size: contain;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 0 6px rgba(210, 0, 54, 0.3);
  position: relative;
  z-index: 1;
  color: #fff;
  font-size: clamp(1.25rem, 1.023rem + 1.14vw, 1.875rem);
  font-family: var(--ff-yu-go-l);
  font-weight: 700;
}
.kv__period span {
  font-size: clamp(1.125rem, 0.989rem + 0.68vw, 1.5rem);
  color: inherit;
}
.sec__title-main {
  margin-bottom: 40px;
  text-align: center;
  font-weight: 700;
  font-size: clamp(1.75rem, 1.477rem + 1.36vw, 2.5rem);
}
.sec__title-main::before {
  content: '';
  background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_2%22%20width%3D%2296.74%22%20height%3D%2230.6%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%202%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23d20036%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1-2%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%3E%3Cpath%20d%3D%22m48.38%200%203.79%2011.69h12.29l-9.94%207.22%203.8%2011.69-9.94-7.23-9.94%207.23%203.79-11.69-9.94-7.22h12.29zM8.69%207.78l2.05%206.31h6.64l-5.37%203.9%202.05%206.32-5.37-3.91-5.37%203.91%202.05-6.32L0%2014.09h6.64zM88.05%207.78l2.05%206.31h6.64l-5.37%203.9%202.05%206.32-5.37-3.91-5.37%203.91%202.05-6.32-5.37-3.9H86z%22%20class%3D%22cls-1%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E') no-repeat;
  width: 96px;
  height: 40px;
  display: block;
  margin: 0 auto;
}
@media screen and (min-width:640px) {
}
.lead {
  font-size: clamp(1rem, 0.85rem + 0.67vw, 1.25rem);
  font-family: var(--ff-yu-go-l);
  font-weight: 700;
  text-align: center;
}
.sec__tokuten {
  background-color: var(--color-blue);
  background: url(../img/usa-flag.svg), url(../img/bg-blu-str.png);
  background-repeat: no-repeat, repeat;
  background-position: calc(100vw - 580px) 28%, 0 0;
  background-position: calc(100vw - min(38vw,635px)) 33%, 0 0;
  background-size: min(38vw,635px), auto;
  padding-bottom: 0;
}
@media screen and (max-width: 910px) and (min-width: 640px) {
  .sec__tokuten {
    background-position-y: 36%,0;
  }
}
@media screen and (max-width:640px) {
  .sec__tokuten {
    background-position: 80vw 46%, 0 0;
    background-size: 70%, auto;
  }
}
.sec__tokuten .lead {
  width: fit-content;
  max-width: 100%;
  padding-inline: min(5vw,60px);
  margin-inline: auto;
  border-radius: 2em;
}
.clm_require {
}
.clm_require .uk-background-default {
  border-radius: 30px;
  text-align: center;
  padding: 10px 30px 10px;
  font-size: 1.5rem;
  font-family: var(--ff-yu-go-l);
  font-weight: 700;
  line-height: 1.5;
}
.clm_require .uk-background-default h3 {
  background: var(--color-blue);
  border-radius: 0 2em 2em 0;
  color: #fff;
  font-size: 1.3125rem;
  width: fit-content;
  margin: 0 auto 10px;
  padding-inline: 10px;
  position: relative;
}
.clm_require .uk-background-default h3::before {
  content: '';
  background: url(../img/quote.svg) no-repeat;
  display: inline-block;
  width: 65px;
  height: 55px;
  position: absolute;
  left: -75px;
  bottom: 0;
}
.clm_require .uk-background-default .text {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.clm_require::after {
  content: '';
  display: inline-block;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background: var(--color-yellow);
  width: 85px;
  height: 27px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  margin-block: 30px;
}
.box-tassei {
  border-radius: 30px;
  width: fit-content;
  margin-inline: auto;
  padding: min(10vw, 30px) min(5vw, 60px);
  position: relative;
  z-index: 2;
}
.box-tassei::after {
  content: '';
  background: url(../img/hanabi_r-t.svg) no-repeat;
  background-size: contain;
  display: inline-block;
  position: absolute;
  right: -75px;
  top: -75px;
  width: 184px;
  height: 184px;
}
@media screen and (max-width: 640px) {
  .box-tassei::after {
    width: 120px;
    height: 120px;
    right: -40px;
    top: -60px;
  }
}
.bg-hanabi {
  position: relative;
}
.bg-hanabi::before {
  content: '';
  background: url(../img/hanabi_l-t.svg), url(../img/hanabi_l-b.svg);
  background-size: auto, auto;
  background-repeat: no-repeat, no-repeat;
  display: inline-block;
  width: 300px;
  height: 400px;
  position: absolute;
  left: 0;
  top: -50px;
  background-position: 100% 0, 0 100%;
  z-index: 0;
}

@media screen and (max-width: 640px) {
  .clm_require {position: relative;z-index: 1;}
  .bg-hanabi::before {
    background: url(../img/hanabi_l-t.svg) no-repeat;
    background-size: contain;
    width: 150px;
    height: 150px;
    top: -110px;
    left: -45px;
  }
}
.clm_chance div img {
  filter: drop-shadow(var(--shadow));
}
.bg-round {
  background: #e7ecf7;
  position: relative;
  padding-bottom: min(30vw,60px);
}
.bg-round::before {
  content: '';
  position: absolute;
  display: block;
  width: 100%;
  height: 15vw;
  top: 0;
  left: 0;
  background: url('data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221800%22%20height%3D%22227.19%22%20viewBox%3D%220%200%201800%20227.19%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23e7ecf7%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M1800%2C227.19v-7.18S1424.69%2C0%2C898.61%2C0%2C0%2C220.01%2C0%2C220.01v7.18h1800Z%22%2F%3E%3C%2Fsvg%3E') no-repeat;
  background-size: cover;
  background-position: 50% 0;
  margin: -12.19vw auto 0;
  aspect-ratio: 1800 / 277;
  z-index: 0;
}
.sec__app {
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: 100%;
  background-color: var(--color-red);
  padding-block: 30px;
}
@media screen and (min-width:640px) {
  .sec__app {background-image: url(../img/bg_app.svg)}
}
@media screen and (max-width:640px) {
  .sec__app {
    background-image: url(../img/bg_app_sp.svg);
  }
}
.sec__app [class*="sec__inner"] {
}
.sec__merit .merit > div {
  position: relative;
}
@media screen and (max-width:640px) {
  .sec__merit .merit > div img {
    max-width: 90%;
  }
}
.sec__merit .merit > div::before, .sec__merit .merit > div::after {
  content: '';
  display: inline-block;
  position: absolute;
  width: min(23vw,96px);
  height: min(23vw,96px);
}
.sec__merit .merit > div::before {
  background: url(../img/merit01_badge.svg) no-repeat 50% 50% / contain;
  left: 20px;
  top: -30px;
}
.sec__merit .merit > div:nth-child(2)::before {
  background-image: url(../img/merit02_badge.svg);
}
.sec__merit .merit > div::after {
  background: url(../img/merit01_p.svg) no-repeat 50% 100% / contain;
  width: 80px;
  height: 132px;
  left: 0;
  bottom: 0;
}
.sec__merit .merit > div:nth-child(2)::after {
  background-image: url(../img/merit02_p.svg);
  width: min(18vw,75px);
  height: 129px;
  left: unset;
  right: -50px;
}
@media screen and (max-width:640px) {
  .sec__merit .merit > div::after {
    left: 10px;
  }
  .sec__merit .merit > div:nth-child(2)::after {
    right: -20px;
  }
}
.sec__flow {
  border-radius: 20px;
  margin-block: 60px;
  padding: 60px 30px;
}
@media screen and (max-width: 640px) {
  .sec__flow {padding: 40px 20px;}
}
/*swiperが非アクティブのときは矢印ボタンを非表示にする*/
.swiper:not(.swiper-initialized) .swiper-button-prev,
.swiper:not(.swiper-initialized) .swiper-button-next {
  display: none;
}
/*swiperが非アクティブのとき,スライドをgridレイアウトに変更*/
.swiper:not(.swiper-initialized) .swiper-wrapper {
  display: grid;
  display: flex;
  /* grid-template-columns: repeat(4, 1fr); */
  gap: 20px;
}
.swiper:not(.swiper-initialized) .swiper-wrapper .swiper-slide {
  width: calc((100% - 60px) / 4);
}
@media screen and (max-width: 766px) {
  .swiper-button-prev::after, .swiper-rtl .swiper-button-next::after { content: none;}
  .swiper-button-prev, .swiper-button-next {
    background: url(../img/arrow-left.svg) no-repeat 50% 50% / contain;
    width: 19px;
    height: 30px;
    position: absolute;
    z-index: 1;
    top: 50%;
  }
  .swiper-button-prev { left: 0;}
  .swiper-button-next {
    background-image: url(../img/arrow-right.svg);
    right: 0;
  }
}
.swiper-slide {
  height: auto;
}
.swiper-wrapper {
}
.sec__flow .swiper-slide .no {
  margin-top: 10px
}
.sec__flow .swiper-slide .thumb {
  display: grid;
  place-content: center;
}
.sec__flow .swiper-slide h3 {
  font-size: 1.125rem;
  font-size: clamp(1rem, 0.9rem + 0.15vw, 1.125rem);
  margin-bottom: 10px;
  display: grid;
  place-content: center;
  text-align: center;
}
@media screen and (min-width:640px) {
  .sec__flow .swiper-slide h3 { min-height: 2.75em};
}
.sec__flow .swiper-slide .txt {
  text-align: left;
  margin-top: 20px;
}
.sec__flow .swiper-slide .txt a {
  display: block;
  max-width: 100%;
  margin: 5px auto;
  text-align: center;
}
.features__box {
  --gap:60px;
  background: #fff;
  border-radius: 30px;
  border: 1px solid var(--color-red);
  padding: 30px;
  gap: var(--gap);
}
.features__boxItem {
  position: relative;
}
.features__boxImg {
  display: grid;
  place-content: center;
}
.features__boxTtl {
}
.features__boxText {
  text-align: center;
  margin-block: 30px;
  font-size: clamp(1.125rem, 1.08rem + 0.23vw, 1.25rem);
  font-weight: 700;
  display: grid;
  place-content: center;
}
.features__boxText .big {
  font-size: 135%;
  color: var(--color-red);
}
@media screen and (min-width:820px) {
  .features__boxItem {
    width: auto;
  }
}
@media screen and (max-width:819px) and (min-width:768px) {
  .features__boxItem {
    width: calc((100% - var(--gap)*2) / 3);
  }
}
@media screen and (min-width:768px) {
  .features__box {
    margin-top: 80px;
  }
  .features__box :nth-child(n+2 of .features__boxItem)::before {
    content: '';
    display: block;
    width: 0;
    height: 100%;
    border-right: 1px solid var(--color-red);
    position: absolute;
    left: calc(var(--gap) / 2 * -1);
    top: 0
  }
  .features__boxPoint {
    margin-top: -75px;
  }
}
@media screen and (max-width:767px) {
  .features__box :nth-child(n+2 of .features__boxItem)::before {
    content: '';
    display: block;
    width: 100%;
    height: 0;
    border-top: 1px solid var(--color-red);
    position: absolute;
    left: 0;
    top: calc(var(--gap) / 2 * -1);
  }
}

.uk-accordion-title {
  background: var(--color-red);
  color: #fff;
  font-weight: 700;
  font-size: 1.5rem;
  /* font-size: clamp(1.125rem, 0.9rem + 1vw, 1.5rem); */
  font-size: clamp(1.125rem, 0.8rem + 1vw, 1.5rem);
  padding: 15px;
  font-family: var(--ff-gothic);
  &:hover, &:focus {
    color: #fff;
  }
}
@media screen and (min-width:640px) {
  .sec__notice .uk-accordion-title {text-align: center;}
}

.uk-accordion-title::before, .uk-accordion-title::after {
  background-image: none;
  background-color: #fff;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
}
.uk-accordion-title::before {
  mask-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Crect%20fill%3D%22%230e61d7%22%20width%3D%2213%22%20height%3D%222%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%20%3Crect%20fill%3D%22%230e61d7%22%20width%3D%222%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%3C%2Fsvg%3E");
}
.uk-open .uk-accordion-title::before {
  mask-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Crect%20fill%3D%22%23d20036%22%20width%3D%2213%22%20height%3D%222%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%3C%2Fsvg%3E');
}
.uk-accordion-content {
  margin-top: 0;
  padding: 30px;
}
.sec__notice .uk-accordion-content {
  background-color: #f5f5f5;
}
.sec__faq .uk-accordion-title {
  background: none;
  border: 1px solid var(--color-red);
  color: var(--color-red);
}
.sec__faq .uk-accordion-title::before, .sec__faq .uk-accordion-title::after {
  background-color: var(--color-red);
}
.uk-accordion > :nth-child(n+2) {
  margin-top: 60px;
}
@media screen and (max-width:640px) {
  .uk-accordion > :nth-child(n+2) {
    margin-top: 30px;
  }
}
.uk-accordion-content .uk-table-responsive {
  margin-block: 0;
}
.uk-accordion-content .uk-table-responsive tr > :first-child {
  padding-left: 0;
}
.summary dl {
  padding: unset;
  overflow: hidden;
  width: 100%;
}
.summary dl > * {
  padding: 10px 20px;
  & p {color: inherit;}
}
.summary dl dt {
  background: #f7f5f5;
  color: var(--color-red);
}

@media screen and (max-width: 640px) {
}
.recom__boxText {
  margin-top: 20px;
}
@media screen and (max-width: 640px) {
  .recom__boxLink {
    display: flex;
    gap: 10px;
    align-items: flex-start;
  }
  .recom__boxImg {
    width: 100px;
  }
  .recom__boxText {
    width: calc(100% - 110px);
    margin-top: 0;
  }
}
.sec__recom .link-txt {
  color: inherit;
}
#contact {
}
#contact h3 {
  font-size: clamp(1.125rem, 0.943rem + 0.91vw, 1.625rem);
  font-family: var(--ff-yu-go-l);
  font-weight: 700;
}
#contact h3 + * {
  margin: 20px auto;
  font-size: 1.25rem;
  font-weight: 700;
}
#totop {
  transition: ease 0.3s all;
  position: fixed;
  bottom: 110px;
  right: 20px;
  z-index: 100;
}
@media screen and (min-width:769px) {
  #totop {
    bottom: 100px;
  }
}
#totop a {
  display: block;
  z-index: 100;
  width: 59px;
  height: 81px;
  background: url(../img/totop.png) center / contain;
  background-repeat: no-repeat
}

.footer {
  padding: 60px 0;
  color: #fff;
}
.footer * {
  color: inherit;
}
.footer .tel {
  background: #fff;
  display: inline-block;
  padding: 10px;
  border-radius: 10px;
}
@media screen and (min-width: 640px) {
  footer {
    background: url(../img/bg_footer.svg) no-repeat;
    background-size: cover;
    background-position: 50% 50%;
  }
}
@media screen and (max-width: 810px) {
  .footer { padding-bottom: 110px;}
}
@media screen and (max-width: 640px) {
  .footer {
    background-image: url(../img/bg_footer_sp.svg);
    background-size: cover;
  }
}

.footer .time {font-size: clamp(0.75rem, 0.6rem + 0.67vw, 1rem);}
.footer__copyright {font-size: 0.85rem;margin-top: 60px;}
@media screen and (max-width: 640px) {
  .footer .contact {
    padding-bottom: 30px;
  }
  .footer .contact::before,.footer .contact::after {
    mask-size:cover;
    mask-position: 46% 100%;
  }
  #totop {display: none !important;}
  .footer small {font-size: min(3vw, 12px);}
  .footer__copyright {margin-top: 20px;}
}
.footer__bnr {
  opacity: 0;
}
@media screen and (min-width:811px) {
}
.footer__bnr .btn-grad {
  width: 500px;
  max-width: 100%;
}
.footer__bnr .btn-wht {
  position: relative;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
.footer__bnr .btn-wht::after {
  content: '';
  background: url(../img/icn_download.svg) no-repeat;
  background-position: 50% 50%;
  background-size: contain;
  width: 22px;
  height: 1em;
  display: inline-block;
  margin-left: 5px;
}
.footer__bnr.is-show {
  text-align: center;
  display: block;
  position: fixed;
  left: 0;
  bottom: 0;
  padding: 20px 10px;
  width: 100%;
  height: auto;
  z-index: 99;
  opacity: 1;
  transition: opacity 0.7s;
  box-shadow: 0 0 10px rgba(0,0,0,0.2)
}
@media screen and (min-width: 640px) {
  .footer__bnr {
    background: url(../img/bg_float.png) no-repeat;
    background-position: 50% 50%;
    background-size: cover;
  }
}
@media screen and (max-width: 640px) {
  .footer__bnr {
    background: url(../img/bg_float_sp.svg) no-repeat;
    background-position: 50% 50%;
    background-size: cover;
  }
}
/*padding-top縮める*/
.pt_small {
  padding-top: min(2vw,20px);
}