@charset "UTF-8";
.disp_pc {
  display: none;
}

.disp_sp {
  display: block;
}

@media (min-width: 600px) {
  .disp_pc {
    display: block;
  }
  .disp_sp {
    display: none;
  }
}
.m-footer {
  margin-top: 0px !important;
}

@media (max-width: 599px) {
  .__pb50 {
    padding-bottom: 50px;
  }
}
.title-wrap {
  display: flex; /* ← flex を grid に置き換え */
  grid-template-rows: auto 1fr; /* 1行目: タイトル、2行目: MV & パンくず */
  position: relative;
  width: 100%;
}

/* 1行目（タイトル帯） */
/* 2行目の同じグリッド領域に“重ねる” */
/* 重なり順と見た目の調整 */
.main-visual {
  position: relative;
  z-index: -1;
  order: 2;
  margin: 0 auto 30px;
  width: 100%;
  aspect-ratio: 1300/737;
  margin-top: -120px;
  background-color: bisque;
  background-image: url(../../images/lp01/lp_v001_02.jpg);
  background-position: center center;
  background-size: 100%;
  background-repeat: no-repeat;
}
.main-visual__txt {
  position: absolute;
  bottom: -80px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}
.main-visual__txt img {
  width: 100%;
  min-width: 700px;
  height: auto;
}
.main-visual__txt_pc01 {
  position: absolute;
  top: 100px;
  right: 10%;
}
.main-visual__txt_sp01 {
  position: absolute;
  top: 100px;
  right: 20px;
  width: 40%;
}
.main-visual__txt_sp02 {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 90%;
  transform: translate(-50%, 50%);
}

.btnList {
  margin: 50px auto;
  flex-wrap: nowrap;
}

@media (max-width: 599px) {
  .main-visual {
    position: relative;
    z-index: -1;
    order: 2;
    margin: 0 auto 30px;
    width: 100%;
    aspect-ratio: 828/976;
    margin-top: -120px;
    background-color: bisque;
    background-image: url(../../images/lp01/lp_v001_02_sp.jpg);
    background-position: center center;
    background-size: 100%;
    background-repeat: no-repeat;
  }
}
@media (min-width: 600px) {
  .btnList .wp-block-button__link {
    margin: 10px 10px;
  }
}
.wp-block-button__link {
  padding: 14px 0px 14px 10px !important;
}

.lead {
  color: #4fc4f4;
  text-align: center;
  margin-bottom: 60px;
}

.lp-column2 {
  display: flex;
  justify-content: space-between;
}

.inner-column2 {
  width: 94%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
}

.flex__left {
  width: 100%;
}

.about {
  margin-bottom: 50px;
}
.about_text {
  width: 100%;
}
.about_photo {
  width: 100%;
}
.about_photo img {
  width: 100%;
  height: auto;
}
.about_photo ol {
  display: flex;
  gap: 0 20px;
}
.about_photo li {
  width: 40%;
  margin-bottom: 15px;
}
.about_map {
  width: 40%;
}
.about_map img {
  width: 100%;
  height: auto;
}

@media (max-width: 599px) {
  .lp-column2 {
    flex-wrap: wrap;
  }
  .flex__left {
    width: 100%;
  }
  .about_map {
    width: 100%;
  }
  .about_photo ol {
    flex-wrap: wrap;
  }
  .about_photo ol li {
    width: 100%;
  }
  .inner-column2 {
    flex-wrap: wrap;
    flex-direction: column-reverse;
    width: 100%;
    margin-bottom: 20px;
  }
  .about_text {
    width: 100%;
  }
  .about_photo {
    width: 100%;
  }
  .about__area {
    margin-top: 20px;
  }
}
@media (min-width: 600px) {
  .lp01-btn .wp-block-button__link {
    min-width: 4000px;
    min-height: 60px;
    font-size: 1.7rem;
  }
}
.lp01-btn .wp-block-button__link {
  padding: 0 60px;
  min-width: 235px;
  min-height: 42px;
  background-color: #fff;
  border-color: #50d2ff;
  border-width: 2px;
  border-radius: 10px;
  font-size: 1.3rem;
  width: 50%;
}

.lp01-btn .wp-block-button__link .icon-arrow--wrap {
  width: 20px;
  height: 20px;
  background-color: #50d2ff;
  right: 10px;
}

.about__area h3 {
  margin-bottom: 20px;
  color: #50d2ff;
  font-size: 2.4rem;
  border-bottom: 1px #50d2ff solid;
}

@media (min-width: 600px) {
  .lp01__title__txt .txt-jp {
    font-size: 3.4rem;
  }
  .lp01__title__txt .txt-jp.fontsize-s {
    font-size: 3rem;
  }
}
.lp01_title__txt .txt-jp {
  order: 2;
  font-size: 2.8rem;
  line-height: 1.4;
  text-align: center;
}

@media (min-width: 600px) {
  .lp01__title__txt .txt-en {
    font-size: 1.4rem;
  }
}
.lp01__title__txt .txt-en {
  order: 3;
  margin-top: 14px;
  color: #35c0f0;
  font-family: "Montserrat", sans-serif;
  font-size: 1.2rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  line-height: 1;
}

.wp-block-button__link.--blue2 {
  min-width: 340px;
  border: 2px solid #50d2ff;
  border-radius: 10px;
}

@media (max-width: 599px) {
  .wp-block-button__link.--blue2 {
    min-width: 100%;
  }
}
.wp-block-button__link.--blue2 .icon-arrow--wrap {
  background-color: #50d2ff;
}

.lp {
  width: 100%;
  text-align: center;
}
.lp__blue_txt {
  color: #50d2ff;
  font-size: 2.4rem;
}

@media screen and (max-width: 599px) {
  .lp__blue_txt {
    font-size: 1.6rem;
  }
}
.lp01-list {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  margin-top: 3rem;
}

.lp01-list__item {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
}

@media screen and (min-width: 1000px) {
  .lp01-list__item {
    width: calc(32% - 10px);
  }
  .lp01-list__item:not(:nth-child(3n+1)) {
    margin-left: 15px;
  }
  .lp01-list__item:nth-child(n+4) {
    margin-top: 10px;
  }
}
@media screen and (max-width: 999px) {
  .lp01-list__item {
    width: calc(50% - 10px);
  }
  .lp01-list__item:nth-child(even) {
    margin-left: 20px;
  }
  .lp01-list__item:nth-child(n+3) {
    margin-top: 30px;
  }
}
@media all and (max-width: 599px) {
  .lp01-list__item {
    margin-bottom: 5px;
  }
  .lp01-list__item:not(:nth-child(3n+1)) {
    margin-left: 0px;
  }
  .lp01-list__item:nth-child(n+4) {
    margin-top: 0px;
  }
  .lp01-list__item:nth-child(even) {
    margin-left: 0px;
  }
  .lp01-list__item:nth-child(n+3) {
    margin-top: 0px;
  }
  .lp01-list__item__contents {
    width: 100% !important;
  }
}
@media all and (max-width: 599px) {
  .lp01-list__item {
    margin-left: 0 !important;
    width: 50%;
  }
  .lp01-list__item:not(:first-child) {
    margin-top: 0px;
  }
}
.lp01-list__item__icon {
  order: 1;
  margin-right: 10px;
  width: 50px;
  height: 50px;
}

@media all and (max-width: 599px) {
  .lp01-list__item__icon {
    width: 30px;
    height: 30px;
  }
}
.lp01-list__item__icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
}

.lp01-list__item__contents {
  order: 2;
  width: calc(100% - 95px);
}

.lp01-list__item__contents .txt-title {
  margin: 0;
  font-size: 1.4rem;
  font-weight: 900;
  line-height: 1.3;
}

@media all and (max-width: 599px) {
  .lp01-list__item__contents .txt-title {
    font-size: 1.5rem;
  }
}
.lp01-list__item__contents .txt-other {
  margin: 8px 0 0;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.5;
}

@media all and (max-width: 599px) {
  .lp01-list__item__contents .txt-other {
    margin-top: 4px;
  }
}
@media all and (min-width: 600px) {
  .lp01-list.--col2 .lp01-list__item {
    margin-left: 0;
    width: calc(50% - 10px);
  }
  .lp01-list.--col2 .lp01-list__item:nth-child(even) {
    margin-left: 20px;
  }
  .lp01-list.--col2 .lp01-list__item:nth-child(n+3) {
    margin-top: 30px;
  }
}
.heading-lp {
  color: #50d2ff;
  margin-top: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.3;
  text-align: left;
  gap: 0 15px;
  padding: 50px 0;
}

.heading-lp::before {
  content: "";
  display: block;
  width: 113px;
  height: 37px;
  background: url(../../images/lp01/icon-h2.png) no-repeat;
  background-size: contain;
  background-position: center center;
}

.heading-lp::after {
  content: "";
  display: block;
  width: 113px;
  height: 37px;
  background: url(../../images/lp01/icon-h2.png) no-repeat;
  background-size: contain;
  background-position: center center;
}

@media all and (max-width: 599px) {
  .heading-lp {
    margin-top: 5rem;
    font-size: 1.8rem;
  }
  .heading-lp::before {
    content: "";
    display: block;
    width: 80px;
    height: 20px;
    background: url(../../images/lp01/icon-h2.png) no-repeat;
    background-size: 100%;
  }
  .heading-lp::after {
    content: "";
    display: block;
    width: 80px;
    height: 20px;
    background: url(../../images/lp01/icon-h2.png) no-repeat;
    background-size: 100%;
  }
}
.heading-lp2 {
  text-align: center;
  margin-bottom: 3rem;
}

.heading-lp2 span {
  font-size: 2.3rem;
  font-weight: bold;
  line-height: 1.8;
  padding-bottom: 5px;
  border-bottom: 1px #50d2ff solid;
}

@media all and (max-width: 599px) {
  .heading-lp2 span {
    font-size: 1.8rem;
  }
}
.eat-cms.__noborder::before {
  display: none;
}

.item-btn.__center {
  text-align: center;
}
.item-btn.__center .wp-block-button__link {
  margin-left: auto;
  margin-right: auto;
}

.caution-box {
  background-color: #ffffff;
  padding: 50px 40px;
  margin: 50px 80px 0;
}
.caution-box h4 {
  font-size: 2rem;
}
.caution-box p {
  font-size: 1.4rem;
}
.caution-box ol {
  text-align: left;
}

@media all and (max-width: 599px) {
  .caution-box {
    padding: 30px 20px;
    margin: 50px 0px 0;
  }
}
.full-bleed {
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw; /* 画面幅ちょうど */
  /* 任意：背景色を敷きたいとき */
  /* background: #35c0f0; */
}

@media all and (max-width: 599px) {
  .full-bleed {
    padding: 0 20px;
  }
}
.swiper {
  width: 100%;
  /* 矢印が切れないようにするなら */
  overflow: visible;
}

/* 画像をきれいに収める例（任意） */
.swiper-slide__img {
  aspect-ratio: 16/9;
  overflow: hidden;
}

.swiper-slide__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

/* PCでは矢印を消す（“スマホは左右ボタン”の要件） */
.swiper {
  padding: 8px 0 24px;
}

.eat-cms::after {
  content: "";
  display: inline-block;
  background-color: #f7f6f3;
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: -1;
}

.swiper-slide__text {
  text-align: center;
}

@media (max-width: 599px) {
  .swiper {
    padding-inline: 16px;
    overflow: visible;
  } /* 外側余白＋矢印切れ防止 */
  .swiper-slide {
    width: calc(80vw - 32px);
  } /* ここで“見せ具合”調整(70–90vwなど) */
}
ol.list-no {
  list-style-type: decimal;
}
ol.list-no > li {
  margin-left: 20px;
}

.icon-blank {
  display: none !important;
}/*# sourceMappingURL=lp01.css.map */