/*=====================================
初期設定
=====================================*/
html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  width: 100%;
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
    line-height: 1.8;
    letter-spacing: .05em
}
body {
  background-color: #efefef
}
body * {
  box-sizing: border-box;
  word-wrap: break-word
}
h1, h2, h3, h4, h5, h6, p, address, ul, li, dl, dt, dd, caption, img, form, blockquote, label, figure {
  padding: 0;
  margin: 0;
  border: none;
  font-size: 100%;
  font-style: normal;
  font-weight: normal;
  list-style-type: none
}
img {
  vertical-align: bottom;
  -ms-interpolation-mode: bicubic;
  -webkit-backface-visibility: hidden;
}

/*=====================================
共通
=====================================*/
a:link,
a:hover {
  color: #476fad;
    text-decoration: none!important
}
main {
    margin: 0 auto;
    width: 100%;
    max-width: 780px;
  padding-bottom: min(10%,100px);
    background: #fff
}
main img {
    width: 100%
}
.lp24111 h2, .lp2411 p {
    max-width: 100%;
}
small {
    display: block;
    font-size: 2.4vw;
    font-size: clamp(8px, 2.4vw, 13px);
    line-height: 1.4
}
.txt-r {
    text-align: right
}
.dsno {
    display: none
}

/*=====================================
コンテンツ
=====================================*/
.mv {
    position: relative
}
.mv img {
    width: 100%
}

.video{
  background-color: #fefae8;
}

.youtube {
  width: 90%;
  aspect-ratio: 16 / 9;
  margin: 0 auto;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 481px) {
  /* 481px以上に適用されるCSS（タブレット用） */
.youtube {
  
}
}
@media screen and (min-width: 960px) {
  /* 960px以上に適用されるCSS（PC用） */
.youtube {
  
}

/*CTA*/
.cta {
    padding: 12% 4.1%;
  background-color: #ddbe17
}
.cta-inner {
    padding: 0 0 5%;
    background-color: #fff;
  border-radius: min(3.8vw,30px)
}
.cta-img {
  aspect-ratio: 716/910;
  transform: translateY(-5%)
}
.cta-inner .notes {
  margin: 0 5%;
    padding: 3% 2%;
    color: #777;
  border-top: 1px solid #777;
    font-size: clamp(9px, 2.3vw, 13px)
}
.cta-inner .notes.ttl {
    padding-bottom: 1.5%;
    font-weight: 700
}
.cta-inner ul.notes li {
  padding-left: clamp(10px, 2.56vw, 13px);
  line-height: 1.5
}
.cta-inner ul.notes li::before {
  content: "・";
  margin-left: calc(clamp(10px, 2.56vw, 13px) * -1)
}
.cta-inner ul.notes li.ast::before {
  content: "※";
  margin-left: calc(clamp(10px, 2.56vw, 13px) * -1)
}

.ctaBtn {
    display: block;
    margin: 3% auto;
    width: 90%;
    -webkit-animation: btnAnime 1.5s ease infinite forwards;
    animation: btnAnime 1.5s ease infinite forwards
}
@keyframes btnAnime {
    0% {
        transform: scale(1,1)
    }
    90% {
        transform: scale(1,1)
    }
    100% {
        transform: scale(1.1,1.1)
    }
}
.mgb08 {
    margin-bottom: 8%;
}
.cmn {
    padding: 10% 0
}
.fixed_floating {
  position: fixed;
  bottom: 0;
  left: 0;
  padding: min(3%,20px) 2% calc(env(safe-area-inset-bottom) + min(4%,20px));
  width: 100%;
}
.fixed-btn {
  width: min(86%,440px);
  aspect-ratio: 640/154;
  display: block;
  margin: 0 auto;
    -webkit-animation: btnAnime 1.5s ease infinite forwards;
    animation: btnAnime 1.5s ease infinite forwards
}
.is-hidden {
    visibility: hidden;
    opacity: 0;
}