@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@700&family=M+PLUS+1p:wght@400;500;700;800;900&family=M+PLUS+Rounded+1c:wght@400;500;700;800;900&family=Sawarabi+Gothic&display=swap');

body {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-weight: 400;
  font-style: normal;
}
body::-webkit-scrollbar {
  display: none;
}

.pc {
  display: none;
}
.l .pc {
  display: block;
}
.sp {
  display: block;
}
.l .sp {
  display: none;
}

.wrapper sub {
  font-size: 0.65em;
  line-height: 1;
  vertical-align: baseline;
  transform: translateY(0.12em);
}

.is-disabled {
  pointer-events: none;
}

.wrapper img {
  width: 100%;
}
/* デフォルト */
.meteo .cs-page {
  padding-top: 0;
}

/* PC時のナビゲーションスクロールバー非表示 */
.l .pc-nav::-webkit-scrollbar,
.l .nav-items::-webkit-scrollbar {
  display: none;
}

/* フェードイン　アニメーション */
.fadeIn {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out;
}
.fadeIn.animated {
  opacity: 1;
  transform: translateY(0);
  transition: all 0.5s ease-out;
  animation: fadeInUp 0.5s forwards;
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.wrapper {
  position: relative;
  max-width: 580px;
  margin: 0 auto;
  /* background-image: url(../img/lp/main-bg.jpg);
  background-position: top center;
  background-repeat: repeat;
  background-size: contain; */
  overflow: hidden;
  overflow-y: auto;
  scroll-behavior: smooth;
}
/* .l .wrapper {
  border-left: 10px solid #fff;
  border-right: 10px solid #fff;
  scrollbar-width: none;
  -ms-overflow-style: none;
} */
.l .wrapper::-webkit-scrollbar {
  display: none;
}
.l .pcBg {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 3;
  overflow: hidden;
  overflow-y: auto;
  scroll-behavior: smooth;
  background-image: url(../img/lp/main-bg.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: top center;
  background-attachment: fixed;
}
.l .pcBg::-webkit-scrollbar {
  display: none;
}
.header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background-color: #004315;
}
.l .header {
  width: min(100%, 580px);
  left: 50%;
  right: auto;
  transform: translateX(-50%);
}
.header__inner {
  padding: 3% 5.4% 3% 4%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: inherit;
  position: relative;
}
.l .header__inner {
  padding: 16px 24px 18px;
}
/* ヘッダーのロゴ部分 */
.header__title {
  max-width: 124px;
  width: 23.7%;
}
.header__title img {
  display: block;
  width: 100%;
  height: 100%;
}
/* ヘッダーのナビ部分 */
.header__nav {
  position: fixed;
  z-index: 1500;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  min-height: -webkit-fill-available;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  touch-action: pan-y;
  transform: translateX(100%);
  transition: ease 0.4s;
  background: #fff;
  padding-bottom: env(safe-area-inset-bottom);
}
.l .header__nav {
  display: none;
}
.pc-nav {
  display: none;
}
.l .pc-nav {
  position: fixed;
  z-index: 100;
  display: block;
  width: 25%;
  min-width: 200px;
  top: 4%;
  left: 0;
  height: 100vh;
  overflow-y: auto;
}
.nav-ttl {
  position: relative;
  z-index: 1;
  font-size: 46px;
  font-weight: 700;
  text-align: center;
  color: #f7d618;
}
.nav-items {
  position: absolute;
  top: 0;
  left: 0;
  transform: none;
  width: 100%;
  min-height: 100vh;
  min-height: 100dvh;
  height: auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 12% 6.7%;
  background-image: url(../img/lp/main-spBg.png);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.nav-items::-webkit-scrollbar {
  display: none;
}
.l .nav-items {
  height: auto;
  padding: 60px 35px 45px;
  background: none;
  overflow-wrap: break-word;
}
.l .nav-items::-webkit-scrollbar {
  display: none;
}
/* ナビのリンク */
.nav-items__item {
  width: 100%;
  list-style: none;
  font-size: 4vw;
  font-weight: 700;
}
.l .nav-items__item {
  font-size: 17px;
  font-weight: 700;
}
.nav-items__item a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #fff;
  border-bottom: 1px solid #d9d12f;
  width: 100%;
  text-decoration: none;
  padding: 20px 10px 20px 0;
  gap: 5px;
  position: relative;
}
.nav-items__item a:hover {
  cursor: pointer;
  opacity: 0.5;
  transition: 0.3s all;
}
.nav-items__item:last-child a {
  border-bottom: 0;
}
/* .nav-items__item:nth-of-type(2) a .nav-items__left,
.nav-items__item:nth-of-type(8) a .nav-items__left {
  align-items: flex-start;
} */
.nav-items-smallText {
  font-size: 3.2vw;
}
.l .nav-items-smallText {
  font-size: 12px;
}
.nav-items__left {
  display: flex;
  align-items: center;
  gap: 12px;
  text-align: left;
}
.nav-items__left img {
  width: 30px;
  flex-shrink: 0;
}
.l .nav-items__left img {
  width: 30px;
}
.nav-items__text-group {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
/* 矢印 */
.nav-items__arrow {
  position: relative;
  display: inline-block;
  width: 8.9px;
  height: 13.9px;
}
.nav-items__arrow::before,
.nav-items__arrow::after {
  content: '';
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
  width: 9px;
  height: 1.5px;
  border-radius: 9999px;
  background-color: #f7d618;
  transform-origin: calc(100% - 1px) 50%;
}
/* .l .nav-items__arrow::before,
.l .nav-items__arrow::after {
  content: '';
  position: absolute;
  bottom: 0;
  transform-origin: 50% calc(100% - 4px);
} */
.nav-items__arrow::before {
  transform: rotate(45deg);
}
.nav-items__arrow::after {
  transform: rotate(-45deg);
}
/* ハンバーガーメニュー */
.header__hamburger {
  background-color: transparent;
  border: 0;
  width: 9%;
  height: 100%;
  padding: 0;
}
.l .header__hamburger {
  display: none;
}

/* ハンバーガーメニューの線 */
.hamburger span {
  width: 100%;
  height: 2px;
  border-radius: 20px;
  margin: 0 auto;
  background-color: #fff;
  position: relative;
  transition: ease 0.4s;
  display: block;
}
.hamburger span:nth-child(1) {
  top: 0;
  background-color: #77bcce;
}
.hamburger span:nth-child(2) {
  margin: 4px auto;
  background-color: #8eb425;
}
.hamburger span:nth-child(3) {
  margin: 4px auto;
  background-color: #e0c000;
}
.hamburger span:nth-child(4) {
  top: 0;
  background-color: #c5713e;
}
/* ハンバーガーメニュークリック後のスタイル */
.header__nav._active {
  transform: translateX(0);
  z-index: 1500;
}
.header__hamburger._active {
  position: fixed;
  top: 22px;
  right: 9px;
  width: 48px;
  height: 48px;
  background-color: transparent;
  border-color: transparent;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header__hamburger._active span {
  position: absolute;
  left: 8px;
  right: 8px;
  height: 3px;
  border-radius: 20px;
  width: calc(100% - 16px);
}
.hamburger._active span:nth-child(1) {
  opacity: 0;
}
.hamburger._active span:nth-child(2) {
  top: 8%;
  transform: rotate(-45deg);
}
.hamburger._active span:nth-child(3) {
  top: 10%;
  transform: rotate(45deg);
}
.hamburger._active span:nth-child(4) {
  opacity: 0;
}

/* 共通 */
.sec-ttl {
  width: 50.7%;
  margin: 0 auto;
}
.ttl-roundFrame {
  width: fit-content;
  padding: 4px 9px 3px;
  border-radius: 7px;
  font-size: 3.2vw;
  font-weight: 500;
}
.l .ttl-roundFrame {
  padding: 5px 20px;
  border-radius: 14px;
  font-size: 30px;
}
/* mv */
.mv {
  padding: 14% 0 0;
}
.mv-content {
  position: relative;
  background-color: #004315;
  padding-bottom: 48px;
  z-index: 1;
}
.l .mv-content {
  padding-bottom: 58px;
}
.mv-imgGroup {
  position: relative;
  width: 100%;
  padding-top: 100%;
  overflow: hidden;
}
.mv-imgGroup::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/lp/mv-bg.png) no-repeat top;
  background-size: contain;
  z-index: 3;
}
.mv-img {
  position: absolute;
  top: -6%;
  transform: translateX(-50%);
  width: 26%;
  z-index: 2;
  opacity: 0;
}
.mv-img:first-child {
  left: 0%;
  animation: mvSlideLeft 0.7s cubic-bezier(0.4, 0, 0.2, 1) 0s 1 forwards;
}
.mv-img:nth-child(2) {
  width: 26.3%;
  left: 24.7%;
  animation: mvSlideLeft 0.7s cubic-bezier(0.4, 0, 0.2, 1) 0.25s 1 forwards;
  z-index: 2;
}
.mv-img:nth-child(3) {
  width: 25.4%;
  left: 49.4%;
  top: -7.4%;
  animation: mvSlideLeft 0.7s cubic-bezier(0.4, 0, 0.2, 1) 0.5s 1 forwards;
  z-index: 2;
}
.mv-img:nth-child(4) {
  width: 26.2%;
  position: absolute;
  left: 73.9%;
  top: -7.4%;
  animation: mvSlideLeft 0.7s cubic-bezier(0.4, 0, 0.2, 1) 0.75s 1 forwards;
  z-index: 2;
}
.mv-ttl {
  width: 86.7%;
  position: absolute;
  top: 0%;
  left: 7%;
  opacity: 0;
  animation: firstfadeIn 1s forwards;
  animation-delay: 0.3s;
  z-index: 3;
}
.mv-fukidashi {
  position: absolute;
  top: 5%;
  left: 2%;
  opacity: 0;
  transform: translateX(-50%);
  animation: mvSlideLeft 0.8s cubic-bezier(0.4, 0, 0.2, 1) 2.1s 1 forwards;
  width: 16%;
  z-index: 4;
}
.mv-fukidashi img {
  display: block;
  transform-origin: 50% 85%;
  animation: mvFukidashiSwing 2.2s ease-in-out 3s 1 both;
}
@keyframes mvSlideLeft {
  from {
    opacity: 0;
    transform: translateX(-50%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes mvFukidashiSwing {
  0% {
    transform: rotate(0deg);
  }
  20% {
    transform: rotate(4deg) translateY(-1%);
  }
  40% {
    transform: rotate(-3deg) translateY(0);
  }
  60% {
    transform: rotate(2deg) translateY(-1%);
  }
  80% {
    transform: rotate(-1deg) translateY(0);
  }
  100% {
    transform: rotate(0deg);
  }
}

.mv .sec-ttl {
  padding-top: 8%;
}

#sec0 {
  transform: translateY(0);
  transition: all 1s ease-out;
  animation: firstfadeIn 1s forwards;
  animation-delay: 0.3s;
  opacity: 0;
}
.mv-text {
  position: relative;
  display: block;
  width: fit-content;
  margin: 14px auto 0;
  padding: 0px 12px;
  font-size: 3.5vw;
  font-weight: 700;
  text-align: center;
  letter-spacing: 1.2px;
  color: #004315;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0;
  transition: all 1s ease-out;
  animation: firstfadeIn 1s forwards;
  animation-delay: 0.5s;
  z-index: 0;
}
.mv-text::before {
  content: '';
  position: absolute;
  inset: -2px -10px;
  display: block;
  background-color: #fff226;
  transform: skewX(-7deg);
  z-index: -1;
}
.l .mv-text {
  width: fit-content;
  margin: 20px auto 0;
  /* padding: 0px 16px 50px; */
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 1.4px;
}
.year {
  font-size: 4.2vw;
  font-weight: 800;
}

.l .year {
  font-size: 27px;
  font-weight: 700;
}
.date {
  font-size: 6vw;
  font-weight: 800;
}
.l .date {
  font-size: 38px;
  font-weight: 700;
}

/* sec01 */
.sec01 {
  position: relative;
  padding: 12% 0 0;
  margin-top: -3%;
  background-image: url(../img/lp/sec01-bg.png);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 2;
}
/* .sec01 h2.sec-ttl:first-child {
  width: 34.8%;
  padding-bottom: 4%;
  opacity: 0;
  transform: translateY(0);
  transition: all 1s ease-out;
  animation: firstfadeIn 1s forwards;
  animation-delay: 0.8s;
}
.sec01 h2.sec-ttl:nth-child(2) {
  width: 68%;
  padding-top: 9%;
} */
.sec01 h2.sec-ttl:first-child {
  width: 58%;
}
.sec01-movie iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  opacity: 0;
  transform: translateY(0);
  transition: all 1s ease-out;
  animation: firstfadeIn 1s forwards;
  animation-delay: 1s;
}
.sec01-movie iframe:hover {
  cursor: pointer;
}

@keyframes firstfadeIn {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.sec01-flex {
  padding: 6.4% 0 3.2%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
.sec01-left {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.sec01 .ttl-roundFrame {
  background-color: #0265c6;
  color: #fff;
}
.sec01-text {
  font-size: 3.73vw;
  color: #0265c6;
  font-weight: 600;
}
.l .sec01-text {
  font-size: 21px;
}
.sec01-img01 {
  width: 46.5%;
  flex-shrink: 0;
}

.sec01-info {
  font-size: 3.2vw;
  padding-bottom: 7%;
  color: #0265c6;
  font-weight: 600;
}
.l .sec01-info {
  font-size: 20px;
}

/* sec02 */

.sec02 {
  /* padding: 7.2% 0 17%; */
  position: relative;
  z-index: 1;
}
.sec02 .sec-ttl {
  width: 55.2%;
}
/* .sec02-img {
  padding-left: 3.3%;
} */
.nextApply-btn {
  position: absolute;
  width: 70%;
  top: 74%;
  left: 50%;
  transform: translateX(-50%);
}
.c-btn {
  width: 70%;
}
.l .sec03 .c-btn,
.l .nextApply-btn {
  max-width: 380px;
  width: 70%;
}
.l .x-btn {
  max-width: 380px;
  width: 51%;
}
/* sec03 */
.sec03 {
  padding: 12.8% 0 67%;
  /* background-color: #0265c6;
  border-radius: 40px 40px 0 0; */
  background: url(../img/lp/sec03-bg.png) no-repeat top center / cover;
}
.sec03-img {
  position: relative;
  padding: 4% 0 3.5%;
}
.sec03-anc {
  position: absolute;
  width: 34%;
  top: 21.8%;
  left: 45%;
  transform: translate(-50%, -50%);
}
.sec03-anc:hover {
  cursor: pointer;
  opacity: 0.8;
  transition: 0.3s all;
}
.sec03 .sec-ttl {
  width: 41%;
}

/* sec04 */
.sec04 {
  padding: 10.4% 0 8%;
  line-height: 1.2;
  background-color: #0265c6;
  border-radius: 40px 40px 0 0;
  margin-top: -40px;
  position: relative;
  z-index: 2;
}
.l .sec04 {
  padding: 10.4% 0 8%;
  border-radius: 80px 80px 0 0;
  margin-top: -70px;
}
.sec04 .sec-ttl {
  width: 32%;
}
.item {
  display: flex;
  flex-direction: column;
  gap: 5.33vw;
  padding-top: 5.5%;
}
.l .item {
  gap: 50px;
}
.item-box {
  position: relative;
  padding: 10px 15px 34px;
  /* background-color: #fff; */
  background: url(../img/lp/sec04-bg.png) no-repeat top;
  background-size: 100% 100%;
  /* border-radius: 13px; */
  /* box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); */
}
.l .item-box {
  position: relative;
  padding: 20px 30px 50px;
  /* background-color: #fff; */
  /* border-radius: 26px; */
}
.item-badge {
  position: absolute;
  width: 24%;
  top: 0%;
  left: -1%;
}
.l .item-badge {
  width: 24%;
  top: -1%;
  left: 10%;
  transform: translateX(-50%);
}
.sec04-textTtl {
  font-size: 6.93vw;
  font-weight: 800;
  color: #0265c6;
  letter-spacing: -2px;
  margin-top: 20px;
}
.l .sec04-textTtl {
  font-size: 40px;
}
.seco4-text {
  padding-top: 2%;
  font-size: 3.4vw;
  font-weight: 500;
  color: #0265c6;
}
.l .seco4-text {
  font-size: 21px;
  letter-spacing: -2px;
}
.item .item-box:first-child .item-flex {
  justify-content: space-between;
}
.item .item-box:first-child .sec04-textTtl {
  margin-top: 80px;
}
.l .item .item-box:first-child .sec04-textTtl {
  margin-top: 120px;
}
/* .item-flex {
  display: flex;
  align-items: center;
} */
.item-flex .sec04-textTtl {
  text-align: center;
}
.sec04-smallText {
  font-size: 2.6vw;
  /* font-weight: 500; */
}
.l .sec04-smallText {
  font-size: 0.75rem /* 12px (基準16px) */;
  line-height: 1.5;
  letter-spacing: 1.6px;
}
.sec04-txtLink {
  display: block;
  width: 40%;
  margin: 24px auto 0;
  cursor: pointer;
}
.l .sec04-txtLink {
  margin: 34px auto 0;
}
.item-number {
  width: 100%;
  text-align: right;
  font-size: 13.5vw;
  font-weight: 800;
  margin: auto 0;
  color: #e60012;
  letter-spacing: -1px;
}
.l .item-number {
  font-size: 80px;
}
.item .item-box:first-child .item-number {
  margin-top: -20px;
}
.l .item .item-box:first-child .item-number {
  margin-top: -30px;
}

/* safariのみ対応 */
_::-webkit-full-page-media,
_:future,
:root .item-box .item-number {
  padding-right: 0.8rem;
}

.item-number-column {
  writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  white-space: pre;
  display: inline-block;
  font-size: 5.5vw;
  font-weight: 800;
}
/* safariのみ適応 */
_::-webkit-full-page-media,
_:future,
:root .item-number-column {
  margin-left: -0.8rem;
}

.l .item-number-column {
  font-size: 30px;
}
.item-box-img01 {
  width: 57%;
  position: absolute;
  top: 8%;
  left: 40%;
}
.l .item-box-img01 {
  width: 58%;
  top: 8%;
  left: 41%;
}
.item-box-img02 {
  width: 38%;
  position: absolute;
  top: 5%;
  left: 30%;
}
.l .item-box-img02 {
  top: 4%;
  left: 33%;
}
/* .item .item-box:last-child {
  padding-bottom: 4.4%;
} */
.item .item-box:last-child .item-flex {
  gap: 3%;
}
.item .item-box:last-child .item-number {
  text-align: right;
}
.item-box-img03 {
  width: 77%;
  padding-top: 3%;
  margin: 0 auto;
}

/* sec05 */
.sec05 {
  position: relative;
  padding: 5% 0 15%;
  color: #fff;
  margin-top: -178px;
}
.l .sec05 {
  padding: 5% 0 15%;
  margin-top: -270px;
}
.sec05-bg {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.l .sec05-bg {
  top: 50%;
  left: 50%;
}
.sec05-content {
  position: relative;
  z-index: 3;
}
.sec05-img {
  padding: 4.5% 14px 30px;
  width: 87%;
  margin: 0 auto;
}
.sec05-info-text {
  width: 80.5%;
  padding: 1.3% 0 1%;
  margin: 3% auto 0;
  text-align: center;
  font-size: 3.46vw;
  font-weight: 600;
  letter-spacing: -1.2px;
  background-color: #fff226;
  color: #0265c6;
}
.l .sec05-info-text {
  font-size: 22px;
  letter-spacing: -1px;
  text-align: center;
}

.sec05-info {
  padding-top: 3.5%;
  font-size: 3.1vw;
}
.l .sec05-info {
  font-size: 17px;
}
/* sec06 */
.sec06 {
  position: relative;
  z-index: 1;
  /* margin-top: -53%; */
  padding: 10% 0 12%;
  /* background-image: url(../img/lp/sec06-bg.png);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover; */
  background-color: #dbfaff;
  border-radius: 40px 40px 0 0;
  margin-top: -12%;
  position: relative;
  z-index: 2;
}
.sec06 .sec-ttl {
  width: 60.3%;
  border-radius: 80px 80px 0 0;
}
.sec06 .ttl-roundFrame {
  position: absolute;
  top: -33%;
  left: 50%;
  transform: translateX(-50%);
  padding: 1.5% 4%;
  background-color: #0265c6;
  font-size: 4.53vw;
  color: #fff;
}
.l .sec06 .ttl-roundFrame {
  position: absolute;
  top: -43%;
  left: 50%;
  transform: translateX(-50%);
  padding: 1.5% 4%;
  background-color: #0265c6;
  font-size: 28px;
  color: #fff;
}
.sec06-ttlText {
  padding-top: 3%;
  color: #0265c6;
  text-align: center;
  font-weight: 700;
  font-size: 4.8vw;
  letter-spacing: 1.5px;
}
.l .sec06-ttlText {
  font-size: 30px;
}
.sec06-week {
  position: relative;
  margin-top: 12%;
  padding: 5.4% 3% 2.5%;
}
.sec06-week::before {
  transform: skewX(-6.5deg);
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  background-color: #fff;
}
.l .sec06-week::before {
  transform: skewX(-5.5deg);
}
.l .sec06-week {
  padding: 4.5% 2% 2.5%;
}
.sec06-week .date {
  font-size: 6vw;
}
.sec06-weekColumn {
  display: flex;
  flex-direction: column;
}
.sec06-weekGroup {
  display: flex;
  justify-content: center;
  padding-top: 4px;
}
.l .sec06-weekGroup {
  padding-top: 6px;
}
.sec06-week-text,
.sec06-weekYear {
  font-size: 3.46vw;
  font-weight: 700;
  color: #0265c6;
  line-height: 1;
  letter-spacing: -0.5px;
}
.l .sec06-week-text,
.l .sec06-weekYear {
  font-size: 20px;
}
.l .sec06-week-text .date {
  font-size: 35px;
}

/* 終了 */
.grayOut {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: rgba(194, 194, 194, 0.8);
  z-index: 998;
  line-height: 1.2;
  pointer-events: auto;
  color: #0265c6;
}
.mv .grayOut {
  top: 11%;
  height: unset;
  padding: 8% 10px;
  background: rgba(194, 194, 194, 0.9);
}
.l .mv .grayOut {
  top: 9%;
  padding: 60px 10px;
}

.grayOut p {
  padding: 0 30px;
  font-size: 32px;
  text-align: center;
  font-weight: bold;
}
.l .grayOut p {
  padding: 0 40px;
  font-size: 48px;
  text-align: center;
  font-weight: bold;
}

.mv .grayOut p {
  font-size: 14px;
  line-height: 1.5;
}
.l .mv .grayOut p {
  font-size: 22px;
}

.l .grayOut p span {
  font-size: 23px;
}
.grayOut p span {
  font-size: 15px;
}

.sec06-content01 {
  display: flex;
  flex-direction: column;
  gap: 2vw;
  padding-top: 11.8%;
}
.l .sec06-content01 {
  gap: 10px;
}
.sec06-content02 {
  position: relative;
  /* padding-top: 11.5%; */
}
.sec06-contentTtl {
  font-size: 4.53vw;
  text-align: center;
  font-weight: 800;
  color: #0265c6;
  padding-top: 4%;
}
.l .sec06-contentTtl {
  font-size: 34px;
}
.sec06-content01-img {
  width: 87%;
  margin: 0 auto;
  padding-left: 5%;
}
.x-btn {
  position: absolute;
  width: 51%;
  top: 37%;
  left: 50%;
  transform: translateX(-50%);
}
.l .x-btn {
  top: 37.8%;
}
.sec06-content02-img {
  padding-top: 4.1%;
}

.sec06-content03 {
  border: 2px dashed #0265c6;
  position: relative;
  padding: 5% 6.5% 4%;
  margin-top: 12%;
  margin-bottom: 5%;
}
.sec06-content03 .sec06-contentTtl {
  position: absolute;
  top: -0.9em;
  left: 50%;
  transform: translateX(-50%);
  background: #dbfaff;
  padding: 0 0.5em;
}

.sec06-content03-text {
  font-size: 3.46vw;
  color: #0265c6;
  font-weight: 700;
}
.l .sec06-content03-text {
  font-size: 22px;
}
.sec06-content03-smalltext {
  margin-top: 10px;
  font-size: 3vw;
  color: #333;
  font-weight: 700;
}
.l .sec06-content03-smalltext {
  font-size: 15px;
  margin-top: 10px;
}
.sec06-content04 {
  height: 200px;
  border-radius: 13px;
  margin-top: 1.5%;
  padding: 5% 3% 4% 7%;
  background-color: #fff;
}
.l .sec06-content04 {
  height: 400px;
}
.sec06-contentTtl-img {
  width: 29%;
  margin: 0 auto;
}
.sec06-content04 .sec06-contentTtl {
  background: #f3da49;
  padding: 0 0.5em;
}
.sec06-content04-text {
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  color: #333;
  padding-right: 2%;
  overflow-y: scroll;
  font-size: 3.46vw;
}
.l .sec06-content04-text {
  font-size: 22px;
}
.sec06-content04-text p {
  font-weight: 500;
}
.sec06-content04-text::-webkit-scrollbar {
  width: 4px;
}
.sec06-content04-text::-webkit-scrollbar-thumb {
  background: #ddd;
  border-radius: 4px;
}
.sec06-content04-text a {
  color: #f7d618;
}
.sec06-content04-textTtl {
  font-size: 3.46vw;
  font-weight: 500;
  padding-top: 3%;
}
.l .sec06-content04-textTtl {
  font-size: 24px;
}

/* sec07 */
.sec07 {
  margin-top: -3%;
  padding: 17% 0 10%;
  background-image: url(../img/lp/sec07-bg.png);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.sec07 .sec-ttl {
  width: 88%;
}
.sec07-subTtl {
  width: 60%;
  margin: 0 auto;
  padding: 1.875rem /* 30px (基準16px) */ 0 2.25rem /* 36px (基準16px) */;
}
.l .sec07-subTtl {
  padding: 2.5rem /* 40px (基準16px) */ 0 3.125rem /* 50px (基準16px) */;
}
.sec07-imgBox {
  display: flex;
  align-items: flex-end;
  gap: 4.5%;
  width: 80%;
  margin: 6px auto 0;
}
.l .sec07-imgBox {
  width: 84%;
}
.sec07-img {
  flex: 1 1 0;
  min-width: 0;
  display: grid;
  grid-template-rows: 1fr minmax(2.8em, auto);
  align-items: end;
}
.sec07-imgTtl {
  width: 60%;
  margin: 0 auto;
}
.sec07-item:nth-of-type(1) .sec07-imgTtl,
.sec07-item:nth-of-type(2) .sec07-imgTtl {
  width: 50%;
}
.sec07-item:nth-of-type(3) .sec07-imgTtl {
  width: 60%;
}
.sec07-item:nth-of-type(4) .sec07-imgTtl {
  width: 70%;
}
.sec07-item + .sec07-item {
  margin-top: 1.875rem; /* 30px (基準16px) */
}
.l .sec07-item + .sec07-item {
  margin-top: 3.125rem; /* 50px (基準16px) */
}
.sec07-imgLink {
  display: block;
  width: 100%;
  line-height: 0;
  cursor: pointer;
  transition: opacity 0.2s;
}
.sec07-imgLink img {
  display: block;
  width: 100%;
  height: auto;
}
.sec07-imgLink:hover {
  filter: brightness(0.5);
}
.sec07-img .recipe-title {
  font-family: 'Zen Kaku Gothic New', sans-serif;
  margin-top: 6px;
  min-height: 2.8em;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  text-align: center;
  line-height: 1.4;
  font-size: 0.688rem /* 11px (基準16px) */;
  color: #fff;
  font-weight: 700;
}
.l .sec07-img .recipe-title {
  margin-top: 12px;
  min-height: 2.8em;
  font-size: 1.125rem; /* 18px (基準16px) */
}
/* レシピ画像位置調整 */
.sec07-item:nth-of-type(1) .sec07-img:first-child .sec07-imgLink {
  margin-bottom: -10px;
}
.sec07-item:nth-of-type(1) .sec07-img:last-child .sec07-imgLink {
  margin-bottom: 10px;
}
.sec07-item:nth-of-type(2) .sec07-img:last-child .sec07-imgLink {
  margin-bottom: -10px;
}
.sec07-item:nth-of-type(2) .sec07-img:first-child .sec07-imgLink img {
  width: 90%;
  margin-left: auto;
}
.sec07-item:nth-of-type(2) .sec07-img:last-child .sec07-imgLink img {
  width: 114%;
  max-width: none;
  margin-left: -10%;
}
.sec07-item:nth-of-type(3) .sec07-img:last-child .sec07-imgLink img {
  width: 95%;
}
/* sec08 */
.sec08 {
  margin-top: -3%;
  padding: 12% 0 24%;
  background-image: url(../img/lp/sec08-bg.png);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 2;
}
.sec08 .sec-ttl {
  width: 31.1%;
}
.sec08-content {
  height: 200px;
  border-radius: 13px;
  margin-top: 5.5%;
  padding: 5% 3% 3% 8.3%;
  background-color: #fff;
}
.l .sec08-content {
  height: 400px;
}
.sec08-contentScroll {
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  color: #333;
  padding-right: 2%;
  overflow-y: scroll;
}
.sec08-content-textTtl {
  font-size: 3.46vw;
  font-weight: 500;
  padding-top: 5%;
}
.l .sec08-content-textTtl {
  font-size: 24px;
}
.sec08-content-textTtl:first-child {
  padding-top: 0;
}
.sec08-content-text {
  font-size: 3.2vw;
  font-weight: 500;
  word-break: break-all;
  overflow-wrap: break-word;
  white-space: normal;
}
.l .sec08-content-text {
  font-size: 20px;
}
.sec08-content-text a {
  color: #f7d618;
}
.sec08-contentScroll::-webkit-scrollbar {
  width: 4px;
}
.sec08-contentScroll::-webkit-scrollbar-thumb {
  background: #ddd;
  border-radius: 4px;
}

/* sec09 */
.sec09 {
  position: relative;
  background: url(../img/lp/sec09-bg.png) top center no-repeat;
  background-size: cover;
  padding: 28px 0;
}
.l .sec09 {
  padding: 44px 0;
}
.sec09-ttl {
  text-align: center;
  color: #fff;
  font-weight: 800;
  font-size: 1.25rem; /* 20px (基準16px) */
}
.l .sec09-ttl {
  font-size: 1.75rem; /* 28px (基準16px) */
}
.sec09-img {
  display: flex;
  flex-direction: column;
  gap: 1.875rem; /* 30px (基準16px) */
  margin-top: 1.375rem; /* 22px (基準16px) */
}

.l .sec09-img {
  gap: 30px;
  margin-top: 34px;
}
.sec09-anc {
  width: 70%;
  margin: 24px auto 0;
}
.sec09-anc img {
  margin-top: 14px;
}
.l .sec09-anc img {
  margin-top: 20px;
}
.sec09-deco {
  position: absolute;
}
.sec09-deco--v1 {
  width: 12%;
  bottom: 5%;
  left: 2.8%;
}
.sec09-deco--v2 {
  width: 16%;
  bottom: 1%;
  right: 3%;
}

.float-btn {
  max-width: 126px;
  width: 22%;
  position: fixed;
  z-index: 10;
  right: 0px;
  bottom: 20px;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
  opacity: 0;
  visibility: hidden;
}
.l .float-btn {
  width: 25%;
  right: 1%;
}
.float-btn._active {
  opacity: 1;
  visibility: visible;
}
.float-btn._stopped {
  position: absolute;
  bottom: auto;
}
.float-btn:hover {
  cursor: pointer;
  opacity: 0.6;
  transition: 0.3s all;
}
.end-message {
  max-width: 400px;
  width: 92%;
  position: fixed;
  z-index: 10;
  left: 50%;
  bottom: 20px;
  padding: 20px 10px;
  transform: translateX(-50%);
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
  opacity: 0;
  visibility: hidden;
  background-color: #e60012;
}
.l .end-message {
  max-width: 536px;
  padding: 30px 10px;
}

.end-message._active {
  opacity: 1;
  visibility: visible;
}

.end-message-text {
  color: #fff;
  font-size: 14px;
  text-align: center;
  font-weight: bold;
}
.l .end-message-text {
  font-size: 22px;
}

/* 賞品モーダル */
.prize-modal,
.recipe-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9000;
  align-items: center;
  justify-content: center;
}
.prize-modal._open,
.recipe-modal._open {
  display: flex;
}
.prize-modal__overlay,
.recipe-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.75);
  cursor: pointer;
}
.prize-modal__inner,
.recipe-modal__inner {
  position: relative;
  z-index: 1;
  width: 90%;
  max-width: 520px;
}

.prize-modal__close,
.recipe-modal__close {
  position: absolute;
  top: 14px;
  right: 2%;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  z-index: 2;
  width: 20px;
  line-height: 0;
}
.l .prize-modal__close,
.l .recipe-modal__close {
  top: 20px;
  width: 30px;
}
.prize-modal__close img,
.recipe-modal__close img {
  width: 100%;
  display: block;
}
.prize-modal__close:hover,
.recipe-modal__close:hover {
  opacity: 0.7;
}
.prize-modal__content {
  overflow-x: hidden;
  overflow-y: auto;
}
.prize-modal._set-sec04 .prize-modal__content {
  height: 96vw;
}
.prize-modal._set-sec04b .prize-modal__content {
  height: 140vw;
}
.l .prize-modal._set-sec04 .prize-modal__content {
  height: 550px;
}
.l .prize-modal._set-sec04b .prize-modal__content {
  height: 760px;
}
.prize-modal__slide,
.recipe-modal__slide {
  display: none;
}
.prize-modal__slide.is-active,
.recipe-modal__slide.is-active {
  display: block;
}
.prize-modal__slide[data-set='sec07'] {
  padding-left: 12px;
  box-sizing: border-box;
}
.l .prize-modal__slide[data-set='sec07'] {
  padding-left: 16px;
}
.prize-modal__img {
  width: 100%;
  object-fit: contain;
  border-radius: 12px;
  display: block;
}

/* Recipe */
.recipe-modal__inner {
  margin-right: 16px;
}
.recipe-modal__slide {
  margin-left: 16px;
}
.prize-modal__slide.is-slide-in-next,
.recipe-modal__slide.is-slide-in-next {
  animation: modal-slide-in-next 0.28s ease both;
}
.prize-modal__slide.is-slide-in-prev,
.recipe-modal__slide.is-slide-in-prev {
  animation: modal-slide-in-prev 0.28s ease both;
}

@keyframes modal-slide-in-next {
  from {
    opacity: 0;
    transform: translateX(28px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes modal-slide-in-prev {
  from {
    opacity: 0;
    transform: translateX(-28px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.recipe-card {
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-weight: 400;
  font-style: normal;
  background: #1a4535;
  border-radius: 10px;
  color: #fff;
  line-height: 1.6;
  padding: 10px;
}
.l .recipe-card {
  padding: 20px;
}
.recipe-card__tag {
  display: inline-block;
  /* background: #fff; */
  font-size: 11px;
  font-weight: 700;
  line-height: 1.6;
  background: url(../img/lp/modal-label-ribbon.png) no-repeat;
  background-size: 100% 100%;
  padding: 2px 8px 6px 16px;
  margin-left: -20px;
}
.l .recipe-card__tag {
  font-size: 16px;
  padding: 3px 14px 10px 24px;
  margin-left: -35px;
}

/* ------カラー ----- */
.recipe-card__tag--black {
  color: #000;
}
.recipe-card__tag--green {
  color: #004315;
}
.recipe-card__tag--red {
  color: #851a19;
}
/* ------------------- */

.recipe-card__title {
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  padding: 2px 12px 12px;
  margin: 0;
  line-height: 1.4;
}
.l .recipe-card__title {
  font-size: 30px;
  padding: 4px 20px 20px;
}
.recipe-card__photo {
  line-height: 0;
}
.recipe-card__photo img {
  width: 100%;
  display: block;
}
.recipe-card__desc {
  margin-top: 14px;
  font-size: 14px;
  line-height: 1.8;
  padding: 0 8px;
}
.l .recipe-card__desc {
  font-size: 21px;
  padding: 0 20px;
}
.recipe-card__desc-em {
  display: inline;
  font-style: normal;
  padding-bottom: 8px;
  background-image: url(../img/lp/sec07-line.png);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: auto 4px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.recipe-card__ingredients {
  padding: 18px 16px 8px;
}
.l .recipe-card__ingredients {
  padding: 30px 40px 16px;
}
.rc-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 14px;
}
.l .rc-group {
  gap: 20px;
  margin-bottom: 28px;
}
.recipe-card .rc-group:nth-of-type(2) {
  gap: 10px;
}
.l .rc-group:nth-of-type(2) {
  gap: 20px;
}
.rc-group__label {
  color: #fff226;
  font-weight: 700;
  font-size: 14px;
  white-space: nowrap;
  padding-top: 2px;
  min-width: 28px;
}
.l .rc-group__label {
  font-size: 18px;
}
.rc-group__list {
  list-style: none;
  padding: 0;
  margin: 0;
  flex: 1;
  font-weight: 600;
}
.rc-group__list li {
  display: flex;
  align-items: flex-end;
  font-size: 12px;
  line-height: 2;
}
.l .rc-group__list li {
  font-size: 16px;
}
/* Aラベル＋入れ子ulを持つli */
.rc-group__list li:has(> .rc-group__list-nest) {
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  margin-top: 0.625rem /* 10px (基準16px) */;
}
/* 入れ子ul */
.rc-group__list-nest {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}
.rc-group__list-nest li {
  display: flex;
  align-items: flex-end;
  font-size: 12px;
  line-height: 2;
  padding-left: 1em;
  position: relative;
}
.l .rc-group__list-nest li {
  font-size: 16px;
}
/* disc代替（::before） */
.rc-group__list-nest li .rc-item__name::before {
  content: '・';
}
.rc-item__name {
  white-space: nowrap;
  line-height: 2;
}
.rc-item__dots {
  flex: 1;
  border-bottom: 2px dotted rgba(255, 255, 255, 0.4);
  margin: 0 3px 6px;
  min-width: 6px;
}
.l .rc-item__dots {
  border-bottom: 3px dotted rgba(255, 255, 255, 0.4);
  margin: 0 5px 10px;
}
.rc-item__amount {
  white-space: nowrap;
  font-size: 12px;
  line-height: 2;
}
.l .rc-item__amount {
  font-size: 16px;
}
.recipe-card__recipe {
  position: relative;
  margin: 14px 24px 40px;
  padding: 18px 2px 10px;
  z-index: 0;
}
.l .recipe-card__recipe {
  margin: 28px 36px 60px;
  padding: 40px 8px 10px;
}
.recipe-card__recipe::before {
  content: '';
  position: absolute;
  top: 10px;
  right: -12px;
  bottom: -14px;
  left: -12px;
  border: 2px solid rgba(255, 255, 255, 0.9);
  border-radius: 8px;
  z-index: -1;
  pointer-events: none;
}
.l .recipe-card__recipe::before {
  top: 16px;
  right: -16px;
  bottom: -20px;
  left: -16px;
}
.recipe-card__recipe::after {
  content: 'recipe';
  position: absolute;
  top: -8px;
  left: 0px;
  padding: 0 10px;
  background-color: #1a4535;
  color: #fff;
  font-family: 'Caveat', cursive;
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  z-index: 1;
  pointer-events: none;
}
.l .recipe-card__recipe::after {
  top: -14px;
  left: 0px;
  padding: 0 14px;
  font-size: 50px;
}
.recipe-card__recipe-label {
  font-size: 18px;
  font-style: italic;
  font-weight: 700;
  line-height: 1;
  margin: 0 0 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.recipe-card__steps {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 8px;
}
.recipe-card__steps li {
  font-size: 12px;
  line-height: 1.6;
  margin-bottom: 8px;
  padding-left: 1.2em;
  text-indent: -1em;
}
.recipe-card__steps li:last-child {
  margin-bottom: 0;
}
.l .recipe-card__steps li {
  font-size: 18px;
  line-height: 1.8;
  margin-bottom: 12px;
  padding-left: 1em;
  text-indent: -1em;
}

.prize-modal__nav,
.recipe-modal__nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 18px;
  margin-top: 16px;
}
.recipe-modal__nav {
  margin-left: 16px;
}
.modal__indicator {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  min-width: 124px;
  padding: 12px 22px;
  border-radius: 999px;
  background-color: rgba(255, 255, 255, 0.96);
}
.modal__indicator-dot {
  width: 9px;
  min-width: 9px;
  height: 9px;
  padding: 0;
  border: none;
  flex: 0 0 auto;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  -webkit-appearance: none;
  appearance: none;
  background-color: #8d8d8d;
  cursor: pointer;
}
.modal__indicator-dot.is-active {
  background-color: #1d63b7;
}
.prize-modal__prev,
.prize-modal__next,
.recipe-modal__prev,
.recipe-modal__next {
  background: transparent;
  border: none;
  padding: 0;
  cursor: pointer;
  width: 52px;
  transition: 0.2s;
  flex-shrink: 0;
  line-height: 0;
}
.prize-modal__prev img,
.prize-modal__next img,
.recipe-modal__prev img,
.recipe-modal__next img {
  width: 100%;
  display: block;
}
@media screen and (min-width: 768px) {
  .prize-modal__nav,
  .recipe-modal__nav {
    gap: 24px;
    margin-top: 20px;
  }

  .modal__indicator {
    min-width: 170px;
    padding: 16px 30px;
    border-width: 5px;
    gap: 16px;
  }

  .modal__indicator-dot {
    width: 16px;
    min-width: 16px;
    height: 16px;
  }
}
/* .prize-modal__prev:hover,
.prize-modal__next:hover {
  opacity: 0.75;
  transform: scale(1.05);
} */

.recipe-modal__content {
  height: 140vw;
  overflow-x: hidden;
  overflow-y: auto;
}
.l .recipe-modal__content {
  height: 46vw;
}

/* sec10 */
.sec10 {
  padding: 12% 0 15%;
  background: url(../img/lp/sec10-bg.png) no-repeat top center;
  background-size: cover;
  margin-top: -13px;
  position: relative;
  z-index: 2;
}
.l .sec10 {
  margin-top: -20px;
}
.sec10-contentTtl01 {
  display: flex;
  align-items: center;
  justify-content: center;
  /* padding: 11.5% 0 3%; */
  color: #fff;
  font-size: 5.33vw;
  font-weight: 800;
}
.l .sec10-contentTtl01 {
  font-size: 34px;
}
.sec10-contentTtl01:before,
.sec10-contentTtl01:after {
  border-top: 1px solid;
  content: '';
  width: 15%;
}
.sec10-contentTtl01:before {
  margin-right: 2%;
}
.sec10-contentTtl01:after {
  margin-left: 1%;
}
.sec10-info {
  font-size: 3.1vw;
  color: #fff;
}
.l .sec10-info {
  font-size: 17px;
  color: #fff;
}
.sec10-info-smallText {
  margin-top: -3%;
  font-size: 3.1vw;
  color: #fff;
}
.l .sec10-info-smallText {
  font-size: 17px;
}
.sec10-btn-column {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4.53vw;
  padding: 5.5% 0 7.5%;
}
.l .sec10-btn-column {
  gap: 30px;
}
.sec10-btn {
  width: 70%;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.sec10-contentTtl02 {
  width: 74%;
  margin: 0 auto;
  padding-bottom: 4%;
}
.sec10-img {
  display: block;
  width: 62.1%;
  margin: 0 auto;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
.sec10-img :hover,
.sec10-btn :hover {
  cursor: pointer;
  opacity: 0.6;
  transition: 0.3s all;
}
.sec11-info {
  width: 86%;
  margin: 25px auto 0;
  padding: 14px 16px;
  border-radius: 14px;
  line-height: 1.8;
  color: #fff;
  font-weight: 400;
  font-size: 0.75rem; /* 12px (基準16px) */
  background-color: #0265c6;
  box-sizing: border-box;
}
.l .sec11-info {
  width: 90%;
  margin-top: 50px;
  padding: 24px 28px;
  border-radius: 20px;
  line-height: 1.9;
  font-size: 1.125rem; /* 18px (基準16px) */
}
.sec11-info-text {
  text-align: center;
  margin-bottom: 8px;
  font-weight: 600;
  font-size: 0.938rem; /* 15px (基準16px) */
}
.l .sec11-info-text {
  margin-bottom: 12px;
  font-size: 1.375rem; /* 22px (基準16px) */
}
.sec11-info a {
  color: #fff !important;
}
.sec11-info a:hover {
  text-decoration: underline !important;
}

@media screen and (min-width: 768px) {
  .mv-text {
    font-size: 2vw;
  }
  .year {
    font-size: 2.5vw;
  }
  .date {
    font-size: 4vw;
  }
  .sec04-textTtl {
    font-size: 4.5vw;
  }
  .seco4-text {
    font-size: 2.8vw;
  }
  .item-number {
    font-size: 9vw;
  }
  .item-number-column {
    font-size: 3vw;
  }
  .sec04-smallText {
    font-size: 2.3vw;
  }
  .sec05 {
    padding: 24% 0 17%;
  }
  .sec05-info-border {
    font-size: 2.6vw;
  }
  .sec05-info {
    font-size: 2vw;
  }
  .sec06 .ttl-roundFrame {
    font-size: 3vw;
    top: -27%;
  }
  .sec06-week .date {
    font-size: 4vw;
  }
  .sec06-week-text,
  .sec06-weekYear {
    font-size: 2.2vw;
  }
  .sec06-ttlText {
    font-size: 4vw;
  }
  .sec06-contentTtl {
    font-size: 3vw;
  }
  .sec06-content03-text {
    font-size: 3vw;
  }
  .sec06-content03-smalltext {
    font-size: 2.6vw;
  }
  .sec08-content-textTtl {
    font-size: 2.8vw;
  }
  .sec08-content-text {
    font-size: 2.5vw;
  }
  .sec01-text {
    font-size: 2.5vw;
  }
  .sec01-info {
    font-size: 2.1vw;
  }

  .item-box {
    padding: 3.3% 3.3% 2%;
  }
  .sec08-contentTtl01 {
    font-size: 3vw;
  }
  .sec08-info {
    font-size: 2.1vw;
  }
  .sec08-info-smallText {
    font-size: 2.3vw;
  }

  .mv .grayOut {
    height: unset;
    padding: 40px 10px;
    background: rgba(194, 194, 194, 0.9);
  }
  .mv .grayOut p {
    font-size: 20px;
    line-height: 1.5;
  }
}
@media screen and (min-width: 1136px) {
  .l .float-btn {
    right: calc(50% - 350px - 187px);
  }
}
@media screen and (max-width: 1360px) {
  .l .header {
    width: min(580px, calc(100% - 25%));
    left: 25%;
    transform: none;
  }
  .l .wrapper {
    margin-left: 25%;
  }
}
@media screen and (min-width: 1440px) {
  .l .pc-nav {
    width: 30%;
  }
}
