@charset "utf-8";

.lp-chichibu {
  --blue: #197ddb;
  --purple: #5153d8;
  --blue-link: #238ae7;
  --season-bg: #e3f2ff;
  --sort-bg: #f6f6f6;
  --notch: #8e8e8e;

  --font-gothic: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", meiryo, sans-serif;
  --font-round: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Yu Gothic", sans-serif;
  --font-en: "Montserrat", "Helvetica Neue", arial, sans-serif;

  --w: 1000px;

  font-family: var(--font-gothic);

  font-weight: 400;
  color: #000;
  background: #fff;
  line-height: 1.75;
  padding-top: 87px;
  overflow-x: clip;
}

.lp-chichibu *,
.lp-chichibu *::before,
.lp-chichibu *::after { box-sizing: border-box; }

:where(.lp-chichibu) :where(p, h1, h2, h3, figure, ul, li) { margin: 0; padding: 0; }
:where(.lp-chichibu) :where(ul) { list-style: none; }
.lp-chichibu img { display: block; max-width: 100%; height: auto; }

:where(.lp-chichibu) a { color: inherit; text-decoration: none; }

.lp-chichibu picture { position: relative; display: block; overflow: hidden; }
.lp-chichibu picture > img { display: block; width: 100%; height: auto; object-fit: cover; }

.lp-wrapper { min-width: 0; max-width: none; }

.lp-inner {
  width: var(--w);
  max-width: calc(100% - 32px);
  margin-inline: auto;
}

.lp-mv { background: var(--blue); }
.lp-mv__photo { width: 100%; }

.lp-menu { margin-top: 23px; }
.lp-menu__list { display: flex; align-items: flex-end; height: 94px; }
.lp-menu__list > li { flex: 1 1 0; }
.lp-menu__list > li + li { margin-left: 8px; }

.lp-menu__link {
  position: relative;
  display: block;
  height: 89px;
  transition: filter .2s;
}
.lp-menu__link:hover { filter: brightness(1.1); }
.lp-menu__link.is-disabled { cursor: default; opacity: .5; }
.lp-menu__link.is-disabled:hover { filter: none; }

.lp-menu__bg {
  position: absolute;
  inset: 0;
  background: var(--blue);

  clip-path: polygon(0 47.19%, 50% 17.98%, 100% 47.19%, 100% 100%, 0 100%);
}
.lp-menu__link.is-active .lp-menu__bg { background: var(--purple); }

.lp-menu__spark { position: absolute; top: 1px; left: 0; width: 100%; }

.lp-menu__icon { position: absolute; top: 0; left: 50%; width: 0; }
.lp-menu__icon img {
  position: absolute;
  left: 50%;
  max-width: none;
  transform: translateX(-50%);
}

.lp-menu__label {
  position: absolute;
  right: 0;
  bottom: 4px;
  left: 0;
  height: 34px;
  font-family: var(--font-round);
  font-size: 18px;
  font-weight: 500;
  line-height: 34px;
  color: #fff;
  text-align: center;
  letter-spacing: 1.44px;
  text-indent: 1.44px;
}
.lp-menu__link.is-active .lp-menu__label { font-weight: 700; }

.lp-menu__bar { height: 6px; background: var(--purple); }

.lp-float {
  position: fixed;
  z-index: 9999;
  right: max(20px, calc(50% - 500px));
  bottom: 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
  width: 240px;
  height: 74px;
  padding: 0 13px 0 23px;
  border: 3.6px solid #f9671e;
  border-radius: 37.2px;
  background: #fff7d6;
  box-shadow: 0 4px 0 #f9671e;
  transition: background .2s;
}
.lp-float:hover { background: #ffec9f; }
.lp-float__text { display: flex; flex-direction: column; gap: 5px; }
.lp-float__text img { display: block; height: auto; }
.lp-float__text img:first-child { width: 139px; margin-left: 1px; }
.lp-float__text img:last-child { width: 141px; }
.lp-float__arrow { display: block; width: 44px; height: 44px; }
.lp-float .lp-float__arrow--hover,
.lp-float:hover .lp-float__arrow { display: none; }
.lp-float:hover .lp-float__arrow--hover { display: block; }

.lp-lead { margin-top: 30px; text-align: center; }
.lp-lead__title { font-size: 26px; font-weight: 400; color: var(--blue); }
.lp-lead__text  { margin-top: 9px; font-size: 16px; }

.lp-anchor { display: flex; justify-content: center; gap: 25px; margin-top: 46px; padding-bottom: 5px; }

.lp-anchor__link {
  --c: var(--blue);
  position: relative;
  display: flex;
  align-items: baseline;
  gap: 3px;
  width: 250px;
  height: 52px;
  padding: 0 16px;
  border: 1px solid var(--c);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 5px 0 var(--c);
  color: var(--c);
  transition: transform .15s, box-shadow .15s;
}
.lp-anchor__link.is-active { --c: var(--purple); }

.lp-chichibu img.lp-anchor__arrow--sp { display: none; }
.lp-anchor__link:hover { transform: translateY(2px); box-shadow: 0 3px 0 var(--c); }

.lp-anchor__name { font-size: 22px; font-weight: 500; line-height: 52px; }
.lp-anchor__sub  { font-size: 18px; font-weight: 400; }
.lp-anchor__arrow {
  position: absolute;
  top: 50%;
  right: 16px;
  width: 11px;
  margin-top: -3px;
}

.lp-areatag { display: flex; }
.lp-areatag span {
  display: grid;
  place-items: center;
  width: 29.92px;
  height: 30.03px;
  border: 1px solid var(--area);
  background: #fff;
  font-family: var(--font-round);
  font-size: 18.46px;
  font-weight: 700;
  line-height: 1;
  color: var(--area);
  letter-spacing: 4.6px;
  text-indent: 4.6px;
}
.lp-areatag span + span { margin-left: -1px; }
.lp-areatag span:nth-child(-n+2) { background: var(--tint); }
.lp-areatag span:first-child { border-radius: 6px 0 0 6px; }
.lp-areatag span:last-child  { border-radius: 0 6px 6px 0; }

.lp-area { --area: var(--blue); --tint: #eef; margin-top: 70px; }
.lp-area--chichibu  { --area: #25bad4; --tint: #e7f5f7; }
.lp-area--nagatoro  { --area: #f1b900; --tint: #fbf7e6; }
.lp-area--mitsumine { --area: #f4777f; --tint: #fbf1f2; }

.lp-area__head { display: flex; align-items: flex-start; gap: 30px; }

.lp-area__badge { display: flex; flex: none; }

.lp-area__desc { margin-top: 11px; font-size: 15px; line-height: 1.75; }

.lp-sort {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 20px;
  font-size: 14px;
}

.lp-sort--sp { display: none; }
.lp-chichibu br.u-sp { display: none; }
.lp-sort__label { line-height: 1; }
.lp-sort__list {
  display: flex;
  align-items: center;
  width: 289px;
  height: 37px;
  padding: 0 25px;
  border-radius: 6px;
  background: var(--sort-bg);
}
.lp-sort__list li { display: flex; align-items: center; height: 100%; }

.lp-sort__list li + li::before { content: "｜"; padding: 0 11px; }
.lp-sort__list a { position: relative; display: flex; align-items: center; height: 100%; }
.lp-sort__list .is-current a { font-weight: 700; color: var(--blue-link); }

.lp-sort__list .is-current a::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 4px;
  background: var(--blue);
}

.lp-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 20px;
}
.lp-cards > li { display: flex; min-width: 0; }

.lp-area--nosort .lp-cards { margin-top: 50px; }

.lp-card {
  flex: 1;
  display: flex;
  overflow: hidden;
  flex-direction: column;
  min-height: 268px;
  border-radius: 6px;
  background: var(--tint);
  transition: transform .2s, box-shadow .2s;
}
.lp-card:hover { transform: translateY(-4px); box-shadow: 0 6px 16px rgb(0 0 0 / 12%); }
.lp-card__img { width: 100%; flex: none; }
.lp-card__img img,
.lp-modal__media img { aspect-ratio: 3 / 2; }
.lp-card__bar { height: 4px; background: var(--area); }
.lp-card__body { display: flex; flex: 1; flex-direction: column; padding: 10px 15px 19px; }
.lp-card__title { display: -webkit-box; overflow: hidden; min-height: 3em; font-size: 16px; line-height: 1.5; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.lp-card__tags { display: flex; flex-wrap: wrap; overflow: hidden; gap: 5px; max-height: 30px; margin-top: auto; padding-top: 10px; }

.lp-tag {
  display: inline-flex;
  align-items: center;
  height: 20px;
  padding: 0 8px;
  border: 1px solid var(--blue);
  border-radius: 30px;
  background: #fff;
  font-size: 12px;
  line-height: 1;
  color: var(--blue);
  white-space: nowrap;
}

.lp-more { margin-top: 27px; text-align: center; }
.lp-more__label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
  color: var(--blue);
}
.lp-more__label img { width: 11px; }

.lp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 60px;
  margin-top: 10px;
  padding: 14px 40px;
  border-radius: 100px;
  background: var(--purple);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.25;
  color: #fff;
  transition: opacity .2s;
}
.lp-btn:hover { opacity: .85; }

.lp-season {
  margin-top: 100px;
  padding: 49px 0 66px;
  background: var(--season-bg);
}

.lp-season__head { text-align: center; }

.lp-season__title {
  position: relative;
  display: inline-block;

  isolation: isolate;
  padding: 0 12px;
  font-family: var(--font-round);
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  color: var(--blue);
  letter-spacing: 2.8px;
  text-indent: 2.8px;
}

.lp-season__title::before {
  content: "";
  position: absolute;
  z-index: -1;
  bottom: -5px;
  left: 50%;
  width: 220px;
  height: 10px;
  border-radius: 30px;
  background: #fff;
  transform: translateX(-50%);
}

.lp-season__title::after {
  content: "";
  position: absolute;
  z-index: -1;
  bottom: -16px;
  left: 50%;
  width: 24px;
  height: 18px;
  background: #fff;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  transform: translateX(-50%);
}

.lp-season__desc { margin-top: 33px; font-size: 16px; text-align: center; }

.lp-season__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 490px));
  justify-content: center;
  column-gap: 20px;
  row-gap: 10px;
  margin-top: 26px;
}

.lp-season__card {
  --flag: #fff;
  --flag-fold: #8e8e8e;
  --flag-text: var(--blue);

  position: relative;
  padding-top: 10px;
}
.lp-season__card--spring { --flag: #ff6b81; --flag-fold: #b94255; --flag-text: #fff; }
.lp-season__card--summer { --flag: #16b2ff; --flag-fold: #0e77ae; --flag-text: #fff; }
.lp-season__card--autumn { --flag: #fe7409; --flag-fold: #bc5100; --flag-text: #fff; }
.lp-season__card--winter { --flag: #fff;     --flag-fold: #8e8e8e; --flag-text: var(--blue); }
.lp-season__inner {
  position: relative;
  display: flex;
  height: 163px;
  transition: transform .2s, box-shadow .2s;
}
.lp-season__card:hover .lp-season__inner { transform: translateY(-4px); box-shadow: 0 6px 16px rgb(0 0 0 / 12%); }

.lp-season__img {
  width: 245px;
  flex: none;
  border-radius: 6px 0 0 6px;
}

.lp-season__img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgb(81 83 216 / 20%);
  opacity: 0;
  transition: opacity .2s;
}
.lp-season__inner:hover .lp-season__img::after { opacity: 1; }

.lp-season__inner .lp-season__arrow--active { opacity: 0; }
.lp-season__inner:hover .lp-season__arrow--active { opacity: 1; }
.lp-season__text {
  position: relative;
  flex: 1;
  padding: 15px 20px 0;
  border-radius: 0 6px 6px 0;
  background: #fff;
}
.lp-season__name {
  width: 175px;
  font-size: 16.68px;
  font-weight: 700;
  line-height: 1.5;
}
.lp-season__tags {
  position: absolute;
  bottom: 21px;
  left: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.lp-season__arrow {
  position: absolute;
  top: 50%;
  right: 0;
  width: 34px;
  height: 34px;
  margin-top: -11px;
  transition: opacity .2s;
}

.lp-season__flag {
  position: absolute;
  top: 0;
  left: 10px;
  width: 40px;
  height: 70px;
  background: var(--flag);
  font-family: var(--font-round);
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  color: var(--flag-text);
  text-align: center;
}
.lp-season__flag span {
  display: block;
  padding-top: 35px;
  letter-spacing: 7px;
  text-indent: 7px;
}

.lp-season__flag::after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  width: 6px;
  height: 10px;
  background: var(--flag-fold);
  clip-path: polygon(0 0, 100% 100%, 0 100%);
}

@media (max-width: 1040px) {
  .lp-chichibu { padding-top: 40px; }

  .lp-menu__list > li { min-width: 0; }

  .lp-area__head { flex-direction: column; gap: 16px; }
  .lp-sort { flex-wrap: wrap; justify-content: flex-start; }
  .lp-cards { grid-template-columns: repeat(2, 1fr); }

  .lp-season__grid { grid-template-columns: min(490px, 100%); }
}

@media (max-width: 1040px) {
  .lp-anchor { flex-wrap: wrap; gap: 12px; }
  .lp-anchor__link { width: 100%; }

  .lp-menu__label {
    height: auto;
    bottom: 9px;
    font-size: 13px;
    line-height: 1.3;
    letter-spacing: 0;
    text-indent: 0;
  }

  .lp-cards { grid-template-columns: 1fr; }
  .lp-card { min-height: 0; }

  .lp-season__inner { flex-direction: column; height: auto; }
  .lp-season__img { width: 100%; border-radius: 6px 6px 0 0; }
  .lp-season__text { padding-bottom: 60px; border-radius: 0 0 6px 6px; }
  .lp-season__arrow { top: auto; right: 16px; bottom: 16px; margin-top: 0; }
  .lp-btn { padding: 14px 24px; font-size: 18px; }

  .lp-float {
    right: 15px;
    bottom: 20px;
    width: 201px;
    height: 62px;
    padding: 0 11px 0 19px;
    border-width: 3px;
    border-radius: 31px;
    box-shadow: 0 5px 0 #f9671e;
  }
  .lp-float__text { gap: 4px; }
  .lp-float__text img:first-child { width: 115px; margin-left: 0; }
  .lp-float__text img:last-child { width: 117px; }
  .lp-float__arrow { width: 36px; height: 36px; }
}


.lp-chichibu {
  --font-hand: "Zen Kurenaido", "Yu Gothic", sans-serif;
}

.lp-course,
.lp-course--chichibu  { --area: #25bad4; --tint: #e7f5f7; }
.lp-course--nagatoro  { --area: #f1b900; --tint: #fbf7e6; }
.lp-course--mitsumine { --area: #f4777f; --tint: #fbf1f2; }

.lp-chichibu--sub { padding-top: 57px; }

.lp-course__heading { display: flex; justify-content: center; margin-top: 50px; }
.lp-course__heading span {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border: 1px solid var(--blue);
  background: #fff;
  font-family: var(--font-round);
  font-size: 30px;
  font-weight: 500;
  line-height: 1;
  color: var(--blue);
  letter-spacing: 7.5px;
  text-indent: 7.5px;
}
.lp-course__heading span + span { margin-left: -1px; }
.lp-course__heading span:first-child { border-radius: 8px 0 0 8px; }
.lp-course__heading span:last-child  { border-radius: 0 8px 8px 0; }

.lp-course__intro {
  position: relative;
  margin-top: 55px;
  padding: 30px 20px 29px;
  border: 2px solid var(--area);
  border-radius: 10px;
  text-align: center;
}

.lp-course__intro > .lp-areatag {
  position: absolute;
  top: -17px;
  left: 50%;
  padding: 0 7px;
  background: #fff;
  transform: translateX(-50%);
}

.lp-course__no {
  font-family: var(--font-hand);
  font-size: 22px;
  line-height: 1;
  color: var(--area);
}
.lp-course__no b { font-size: 34px; font-weight: 400; }

.lp-course__title {
  margin-top: 12px;
  font-size: 38px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--area);
}
.lp-course__desc { margin-top: 10px; font-size: 16px; line-height: 1.75; }

.lp-course__flow { position: relative; margin-top: 38px; }

.lp-course__start {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-family: var(--font-hand);
  font-size: 36px;
  line-height: 1;
  color: var(--area);
}
.lp-course__start img { width: 23.6px; height: 32.6px; }

.lp-course__start img.lp-course__start__img { width: 195px; height: 33px; }

.lp-course__station { margin-top: 9px; text-align: center; }
.lp-course__station img { width: 436px; margin: 0 auto; }
.lp-course__stationName { margin-top: 6px; font-weight: 400; font-size: 30px; line-height: 1; color: #000; }

.lp-course__station + .lp-course__dist { margin-top: 26px; }

.lp-course__dist {
  position: relative;

  z-index: 1;
  height: 125px;
  margin: 40px auto 0;
  text-align: center;
}
.lp-course__dist__line {
  position: absolute;
  top: 0;
  left: 50%;
  width: 5px;
  height: 125px;
  margin-left: -2px;
}
.lp-course__dist__arrow {
  position: absolute;
  top: 113px;
  left: 50%;
  width: 25.76px;
  height: 14.78px;
  margin-left: -13px;
}
.lp-course__dist b {
  position: absolute;
  top: 44px;
  left: 50%;
  padding: 6px 12px;
  border: 2px solid var(--purple);
  border-radius: 6px;
  background: var(--purple);
  font-family: var(--font-hand);
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  color: #fff;
  white-space: nowrap;
  transform: translateX(-50%);
}

img.lp-course__dist__illust { position: absolute; max-width: none; }

img.lp-course__dist__badge { position: absolute; max-width: none; }

.lp-spot {
  display: flex;
  margin-top: 40px;
  align-items: flex-start;
  gap: 50px;
  position: relative;
}
.lp-spot__media { width: 480px; min-width: 0; flex: 0 1 480px; margin-top: 3px; }
.lp-spot__body  { width: 470px; min-width: 0; flex: 0 1 470px; }
.lp-spot--right .lp-spot__media { order: 2; }

.lp-spot--badge { margin-top: 34px; }

.lp-spot--band { isolation: isolate; }
.lp-spot--band::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -119px;
  left: 50%;
  width: 100vw;
  height: 645px;
  background: var(--tint);
  -webkit-mask: url("/chichibu/assets/svg/course/wave.svg?v=2") center / 100% 100% no-repeat;
  mask: url("/chichibu/assets/svg/course/wave.svg?v=2") center / 100% 100% no-repeat;
  transform: translateX(-50%);
}

.lp-spot__main { position: relative; border-radius: 10px; }
.lp-spot__main picture { border-radius: 10px; }

.lp-spot__badge { position: absolute; z-index: 1; top: -18px; left: -18px; width: 119px; }

.lp-spot__thumbs { display: flex; gap: 12px; margin-top: 15px; }
.lp-spot__thumbs button {
  position: relative;
  width: 111px;
  padding: 0;
  border: 0;
  border-radius: 4px;
  background: none;
  cursor: pointer;
  overflow: hidden;
}
.lp-spot__thumbs picture { border-radius: 4px; }
.lp-spot__thumbs button::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 4px solid var(--purple);
  border-radius: 4px;
  background: rgb(81 83 216 / 30%);
  opacity: 0;
  transition: opacity .15s;
}
.lp-spot__thumbs button[aria-current="true"]::after { opacity: 1; }

.lp-spot__no {
  display: flex;
  align-items: center;
  gap: 9px;
  height: 38px;
  font-family: var(--font-hand);
  font-size: 26.4px;
  line-height: 1;
  color: var(--area);
}
.lp-spot__no img { width: 26px; height: 35px; }
.lp-spot__no b { font-size: 38.4px; font-weight: 400; }

.lp-spot__name { margin-top: 33px; font-size: 30px; font-weight: 400; line-height: 1; }

.lp-spot__text { min-height: 90px; margin-top: 25px; font-size: 18px; line-height: 1.75; }

.lp-spot__more {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 288px;
  height: 59px;
  margin-top: 19px;
  border-radius: 100px;
  background: var(--area);
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  transition: opacity .2s;
}
.lp-spot__more:hover { opacity: .85; }
.lp-spot__more { gap: 15px; }
.lp-spot__more img { width: 15px; height: 14px; }

.lp-spot--band + .lp-map { margin-top: 198px; }
.lp-map {
  margin-top: 100px;
  padding: 51px 50px 50px;
  border-radius: 10px;
  background: var(--tint);
}
.lp-map__head {
  display: flex;
  height: 32px;
  align-items: center;
  justify-content: center;
  gap: 14px;
  font-family: var(--font-round);
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  color: var(--blue);
  letter-spacing: 2.56px;
  text-indent: 2.56px;
}
.lp-map__head img { width: 28.1px; height: 31.2px; }
.lp-map__head .lp-map__slash { width: 23.24px; height: 35.75px; }
.lp-map__frame {
  margin-top: 41px;
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}
.lp-map__frame iframe { display: block; width: 100%; height: 500px; border: 0; }

.lp-others { margin-top: 80px; }
.lp-others__head {
  display: flex;
  height: 48px;
  align-items: center;
  justify-content: center;
  gap: 14px;
  font-family: var(--font-round);
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  color: var(--blue);
  letter-spacing: 2.8px;
  text-indent: 2.8px;
}
.lp-others__head img { width: 23.24px; height: 35.75px; }

.lp-others__head::before,
.lp-others__head::after {
  content: "";
  flex: 0 1 300px;
  height: 1px;
  background: var(--blue);
}
.lp-others__head::before { margin-right: auto; }
.lp-others__head::after  { margin-left: auto; }

.lp-others__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 480px));
  justify-content: center;
  gap: 40px;
  margin-top: 50px;
}

.lp-ocard {
  position: relative;
  display: block;

  padding: 18px 18px 26px;
  border: 2px solid var(--area);
  border-radius: 10px;
  background: #fff;
  transition: transform .2s, box-shadow .2s;
}
.lp-ocard:hover { transform: translateY(-4px); box-shadow: 0 6px 16px rgb(0 0 0 / 12%); }

.lp-ocard > .lp-areatag { position: absolute; z-index: 1; top: -1px; left: -1px; }
.lp-ocard > .lp-areatag span:first-child { border-radius: 10px 0 0; }
.lp-ocard > .lp-areatag span:last-child  { border-radius: 0 6px 6px 0; }
.lp-ocard__img { margin-top: 0; border-radius: 6px; }
.lp-ocard__no {
  margin-top: 16px;
  font-family: var(--font-hand);
  font-size: 16px;
  line-height: 1;
  color: var(--area);
}
.lp-ocard__no b { font-size: 24px; font-weight: 400; }
.lp-ocard__title { margin-top: 11px; font-size: 26px; font-weight: 500; line-height: 1.4; color: var(--area); }
.lp-ocard__text { min-height: 47.6px; margin-top: 9px; font-size: 14px; line-height: 1.7; }

.lp-ocard__arrow {
  position: absolute;
  right: -2px;
  bottom: -2px;
  width: 40px;
  height: 40px;
  border-radius: 10px 0 10px 0;
  background: var(--area);
}

@media (max-width: 1040px) {
  .lp-course__title { font-size: 30px; }

  .lp-spot { flex-direction: column; gap: 24px; }
  .lp-spot__media,
  .lp-spot__body { width: 100%; }
  .lp-spot--right .lp-spot__media { order: 0; }
  .lp-spot__thumbs button { width: calc((100% - 36px) / 4); }
  .lp-spot--band::before { height: 100%; top: -60px; padding-bottom: 120px; background-size: 100% 100%; }

  .lp-spot__badge { top: -12px; left: -12px; }

  img.lp-course__dist__illust { display: none; }

  .lp-others__list { grid-template-columns: min(480px, 100%); }
  .lp-map { padding: 40px 20px; }
}

@media (max-width: 1040px) {
  .lp-course__heading span { width: 44px; height: 44px; font-size: 26px; }
  .lp-course__intro { padding: 26px 14px 20px; }
  .lp-course__title { font-size: 24px; }
  .lp-course__station img { width: 100%; }
  .lp-spot__name { font-size: 24px; }
  .lp-spot__text { font-size: 16px; }
  .lp-spot__more { width: 100%; }
  .lp-map__head { font-size: 22px; letter-spacing: 1px; text-indent: 1px; }
  .lp-map__frame iframe { height: 320px; }
  .lp-others__head { font-size: 22px; }
}

.lp-modal {
  position: fixed;

  z-index: 10000000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 20px;
  border: 0;
  background: rgb(3 66 125 / 60%);
  opacity: 0;
  visibility: hidden;
  transition: opacity .2s, visibility .2s;
}
.lp-modal.is-open { opacity: 1; visibility: visible; }

.lp-modal { --area: var(--blue); --tint: #eef; }
.lp-modal.lp-course--chichibu  { --area: #25bad4; --tint: #e7f5f7; }
.lp-modal.lp-course--nagatoro  { --area: #f1b900; --tint: #fbf7e6; }
.lp-modal.lp-course--mitsumine { --area: #f4777f; --tint: #fbf1f2; }

.lp-modal__inner { position: relative; width: min(940px, 100%); }

.lp-modal__panel {
  display: flex;
  max-height: calc(100vh - 100px);
  background: #fff;
  overflow: auto;
  overscroll-behavior: contain;
}

.lp-modal__close {
  position: absolute;
  top: -60px;
  right: 0;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
}
.lp-modal__close img { width: 40px; height: 40px; }

.lp-modal__media { width: 600px; min-width: 0; flex: none; }
.lp-modal__media picture { width: 600px; }
@media (min-width: 1041px) {
  .lp-modal__media { display: flex; flex-direction: column; }
  .lp-modal__access { flex: 1; height: auto; min-height: 100px; padding-bottom: 25px; }
}

.lp-modal__access {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 20px;
  height: 100px;
  padding: 25px 20px 0 0;
  background: #eee;
}
.lp-modal__access dt {
  display: grid;
  place-items: center;
  width: 100px;
  height: 40px;
  flex: none;
  margin-top: 5px;
  border-radius: 0 4px 4px 0;
  background: var(--blue);
  font-family: var(--font-round);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  color: #fff;
  letter-spacing: 1.28px;
  text-indent: 1.28px;
}
.lp-modal__access dd { display: flex; align-items: center; min-height: 40px; margin-top: 5px; font-size: 14px; line-height: 1.75; }

.lp-modal__body {
  width: 340px;
  min-width: 0;
  flex: none;
  display: flex;
  flex-direction: column;
  padding: 30px 30px 30px 30px;
}
.lp-modal__body .lp-areatag { align-self: flex-start; }
.lp-modal__body .lp-areatag img { display: block; width: 126px; height: 26px; }
.lp-modal__body .lp-areatag span {
  width: 26px;
  height: 26px;
  font-size: 16px;
  letter-spacing: 4px;
  text-indent: 4px;
}
.lp-modal__body .lp-areatag span:first-child { border-radius: 4px 0 0 4px; }
.lp-modal__body .lp-areatag span:last-child  { border-radius: 0 4px 4px 0; }

.lp-modal__title { margin-top: 14px; font-size: 24px; font-weight: 700; line-height: 1.3; }
.lp-modal__text  { margin-top: 11px; font-size: 14px; line-height: 1.75; }

.lp-modal__cta { margin-top: auto; padding-top: 24px; text-align: center; }
.lp-modal__lead {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.25;
  color: var(--blue);
}
.lp-modal__lead img { width: 10.24px; height: 13.25px; }

.lp-modal__more {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 280px;
  height: 52px;
  margin-top: 10px;
  border-radius: 100px;
  background: var(--blue);
  font-family: var(--font-round);
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  transition: opacity .2s;
}
.lp-modal__more:hover { opacity: .85; }
.lp-modal__more img { position: absolute; right: 17px; width: 15px; height: 14px; }

@media (max-width: 980px) {
  .lp-modal__inner { width: min(600px, 100%); }
  .lp-modal__panel { flex-direction: column; }
  .lp-modal__media,
  .lp-modal__media picture { width: 100%; }
  .lp-modal__body { width: 100%; padding: 24px 20px 28px; }
  .lp-modal__close { top: -52px; }
  .lp-modal__cta { padding-top: 20px; }
}

@media (max-width: 1040px) {
  .lp-modal { padding: 12px; }
  .lp-modal__panel { max-height: calc(100vh - 76px); }
  .lp-modal__access { height: auto; padding: 16px 16px 16px 0; }
  .lp-modal__access dt { width: 84px; }
  .lp-modal__title { font-size: 20px; }
  .lp-modal__more { width: 100%; }
}

@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400&family=Zen+Kaku+Gothic+Antique:wght@400;500&family=Zen+Old+Mincho&display=swap');

.cbCm{background:#fff100;color:#000;font-weight:400;
  font-family:"Zen Kaku Gothic Antique","Noto Sans JP","Hiragino Sans","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;}
.cbCm *{box-sizing:border-box;}

.cbCm__inner{container-type:inline-size;--u:0.078125cqw;--t:var(--u);
  width:1000px;max-width:calc(100% - 32px);margin-inline:auto;padding:0 0 64px;}

.cbCm__heroTitle{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;
  clip-path:inset(50%);white-space:nowrap;}
.cbCm__hero{padding-top:40px;}
.cbCm__heroImage{position:relative;aspect-ratio:358/300;border-radius:6px;overflow:hidden;}

.cbCm .cbCm__heroImage picture img{width:100%!important;height:100%!important;aspect-ratio:auto;object-fit:cover;display:block;}
.cbCm__heroText{position:absolute;z-index:1;margin:0;width:14.2458%;top:7%;left:6.14525%;
  aspect-ratio:89/170;}
.cbCm .cbCm__heroText img{width:100%!important;height:auto!important;aspect-ratio:auto;object-fit:contain;}

.cbCm__chart{max-width:500px;margin-inline:auto;padding-block:40px 45px;
  display:grid;grid-template-columns:1fr;justify-items:stretch;}
.cbCm__laview,.cbCm__nanako,.cbCm__friend{display:flex;flex-direction:column;
  align-items:center;text-align:center;}
.cbCm__thumbWrap{position:relative;display:flex;flex-direction:column;align-items:center;}
.cbCm__thumb{position:relative;aspect-ratio:1;}
.cbCm .cbCm__thumb img{width:100%!important;height:100%!important;aspect-ratio:auto;object-fit:cover;border-radius:50%;display:block;}
.cbCm__thumb--sm{width:120px;}
.cbCm__thumb--lg{width:176px;}

.cbCm__laviewTitle{margin:0 0 6px;font-family:Fraunces,"Zen Old Mincho","Noto Serif JP",serif;
  font-weight:400;font-optical-sizing:auto;font-variation-settings:"opsz" 72;
  letter-spacing:.075em;font-size:clamp(27px,8.20513vw,37px);line-height:1.25;}
.cbCm__charName{margin:12px 0 0;letter-spacing:.05em;font-size:clamp(12px,4.10256vw,20px);
  font-weight:700;line-height:1.25;}
.cbCm__nanakoName{margin:0 0 8px;letter-spacing:0;font-weight:500;line-height:1.25;
  font-size:clamp(20px,6.15385vw,28px);}
.cbCm__nanakoKana{margin:0 0 4px;letter-spacing:.05em;line-height:1.25;font-size:clamp(7px,2.82051vw,15px);}

.cbCm__brPc{display:none;}
.cbCm__brSp{display:inline;}
.cbCm__charDesc{margin:12px 0 0;}

.cbCm__p{display:inline;letter-spacing:.05em;line-height:1.75;
  font-size:clamp(12px,3.58974vw,16px);
  background:linear-gradient(#fff,#fff) 0 50%/100% 1em no-repeat;padding:0 2px;-webkit-box-decoration-break:clone;box-decoration-break:clone;}
.cbCm__role{display:inline-flex;align-items:center;justify-content:center;margin:0 0 20px;
  padding:4px 15px 5px;background:#000;color:#fff;border-radius:8px;white-space:nowrap;
  font-size:clamp(7px,2.82051vw,15px);font-weight:700;}
.cbCm__role--laview{margin:12px 0 0;}
.cbCm__friends{display:flex;flex-direction:row-reverse;justify-content:center;gap:16px;}
.cbCm__friend{flex:1 1 0;max-width:170px;position:relative;}

.cbCm__link{position:relative;width:100%;height:36px;}
.cbCm__link::before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:2px dashed #000;}
.cbCm__linkLine,.cbCm__linkTop,.cbCm__linkBottom{display:none;}

.cbCm__section{padding-block:56px;}
.cbCm__section+.cbCm__section,.cbCm__chartWrap+.cbCm__section{border-top:1px solid #000;}

.cbCm__title{margin:0;text-align:center;text-transform:uppercase;letter-spacing:.05em;
  font-family:Fraunces,"Zen Old Mincho","Noto Serif JP",serif;font-weight:400;font-size:2.5rem;
  font-optical-sizing:auto;font-variation-settings:"opsz" 72;line-height:1.2;}
.cbCm__body{margin-top:40px;}

.cbCm__movies{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;row-gap:30px;}
.cbCm__movies + .cbCm__movies{margin-top:30px;}
.cbCm__movie{display:grid;row-gap:16px;}
.cbCm__movieThumb{position:relative;}
.cbCm__play{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;
  aspect-ratio:16/9;border-radius:6px;overflow:hidden;position:relative;}
.cbCm .cbCm__play img{width:100%!important;height:100%!important;aspect-ratio:auto;object-fit:cover;display:block;
  transition:scale .3s cubic-bezier(.22,1,.36,1);}
.cbCm .cbCm__play:hover img{scale:1.1;}

.cbCm__playIcon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:12.3077vw;height:8.71795vw;pointer-events:none;
  background:no-repeat 50%/contain
    url('data:image/svg+xml;charset=utf8,<svg width="64" height="44" viewBox="0 0 64 44" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="0" width="64" height="44" rx="12" fill="%23FF0000"/><path d="M25.6 31.4L42.2 22L25.6 12.6V31.4Z" fill="white"/></svg>');}
.cbCm__movieTitle{margin:0;text-align:center;letter-spacing:.05em;font-size:.875rem;
  font-weight:400;line-height:1.5;}
.cbCm__movieTitle span{display:inline-block;}
.cbCm__num{font-family:"Barlow Semi Condensed",sans-serif;}

.cbCm__profile{display:grid;grid-template-columns:1fr;
  grid-template-areas:"title" "image" "body";}
.cbCm__profileTitle{grid-area:title;margin:0;text-transform:uppercase;letter-spacing:.05em;
  font-family:Fraunces,"Zen Old Mincho","Noto Serif JP",serif;font-weight:400;font-size:.9375rem;
  font-optical-sizing:auto;font-variation-settings:"opsz" 72;}
.cbCm__profileImage{grid-area:image;aspect-ratio:400/267;overflow:hidden;border-radius:6px;margin-top:30px;}
.cbCm .cbCm__profileImage img{width:100%!important;height:100%!important;aspect-ratio:auto;object-fit:cover;display:block;}
.cbCm__profileBody{grid-area:body;margin-top:16px;}
.cbCm__profileName{margin:0;display:flex;flex-wrap:wrap;align-items:flex-end;column-gap:16px;}
.cbCm__profileNameJa{letter-spacing:.05em;font-size:2rem;font-weight:400;line-height:1.5;}
.cbCm__profileNameEn{letter-spacing:0;padding-bottom:6px;font-size:.75rem;font-weight:400;
  font-family:Fraunces,"Zen Old Mincho","Noto Serif JP",serif;
  font-optical-sizing:auto;font-variation-settings:"opsz" 72;}
.cbCm__profileDesc{margin:12px 0 0;letter-spacing:.05em;font-size:.9375rem;line-height:1.75;}

.cbCm__modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;
  justify-content:center;padding:16px;}
.cbCm__modal[hidden]{display:none;}
.cbCm__modalBack{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;
  background:rgba(0,0,0,.8);cursor:pointer;}
.cbCm__modalBox{position:relative;width:100%;max-width:960px;}
.cbCm__modalVideo{aspect-ratio:16/9;background:#000;}
.cbCm__modalVideo iframe{width:100%;height:100%;border:0;display:block;}
.cbCm__modalClose{position:absolute;top:-40px;right:0;border:0;background:none;color:#fff;
  font-size:28px;line-height:1;cursor:pointer;padding:0 4px;}

@media (min-width:1041px){
  .cbCm__hero{padding-top:calc(56 * var(--u));}
  .cbCm__heroImage{aspect-ratio:1280/700;border-radius:8px;}
  .cbCm__heroText{width:6.95312%;top:10.4286%;left:20.2344%;}
  .cbCm__section{padding-block:calc(80 * var(--u));}
  .cbCm__title{font-size:48px;}
  .cbCm__body{margin-top:calc(56 * var(--u));}
  .cbCm__movies{grid-template-columns:repeat(4,1fr);column-gap:calc(30 * var(--u));}
  .cbCm__movie{row-gap:calc(20 * var(--u));}
  .cbCm__play{border-radius:8px;}
  .cbCm__playIcon{width:calc(64 * var(--u));height:calc(44 * var(--u));}
  .cbCm__movieTitle{font-size:14px;line-height:1.75;letter-spacing:.02em;}

  .cbCm__profile{grid-template-columns:31.25% 1fr;column-gap:6.25%;align-items:start;
    grid-template-areas:"image title" "image body";}
  .cbCm__profileTitle{font-size:16px;}
  .cbCm__profileImage{border-radius:8px;margin-top:0;}
  .cbCm__profileNameJa{font-size:40px;}
  .cbCm__profileNameEn{padding-bottom:10px;font-size:14px;}
  .cbCm__profileBody{margin-top:16px;}
  .cbCm__profileName{column-gap:24px;}
  .cbCm__profileDesc{margin-top:24px;font-size:15px;line-height:1.75;}
}

@media (min-width:1041px){
  .cbCm__chart .cbCm__charDesc{white-space:nowrap;}
  .cbCm__laview{position:relative;top:calc(23.6 * var(--u));}
  .cbCm__charDesc{margin-top:calc(12 * var(--u));}
  .cbCm__nanako .cbCm__charDesc{margin-top:calc(16 * var(--u));}
  .cbCm__friends,.cbCm__link{position:relative;top:calc(3.9 * var(--u));}
  .cbCm__chartWrap{container-type:inline-size;width:128.394%;margin-inline:-12.291% -16.103%;}
  .cbCm__chart{max-width:calc(1160 * var(--u));padding-block:calc(65 * var(--u)) calc(80 * var(--u));align-items:center;
    grid-template-columns:calc(320 * var(--u)) calc(60 * var(--u)) calc(280 * var(--u)) calc(60 * var(--u)) calc(440 * var(--u));}

  .cbCm__laviewTitle{position:relative;z-index:1;margin-bottom:calc(-18 * var(--u));font-size:calc(40 * var(--t));line-height:1;letter-spacing:0;}
  .cbCm__nanakoName{font-size:calc(24 * var(--t));margin-bottom:calc(16 * var(--u));}
  .cbCm__nanakoKana{font-size:calc(11 * var(--t));margin-bottom:calc(12 * var(--u));}
  .cbCm__charName{font-size:calc(16 * var(--t));margin-top:calc(16 * var(--u));}
  .cbCm__nanako .cbCm__p{font-size:calc(16 * var(--t));}
  .cbCm__laview .cbCm__p,.cbCm__friend .cbCm__p{font-size:calc(14 * var(--t));}
  .cbCm__role{font-size:calc(14 * var(--t));}

  .cbCm__thumb--sm{width:calc(120 * var(--u));}
  .cbCm__thumb--lg{width:calc(176 * var(--u));}
  .cbCm__brPc{display:inline;}
  .cbCm__brSp{display:none;}

  .cbCm__link{height:auto;align-self:stretch;}
  .cbCm__link::before{display:none;}
  .cbCm__linkLine,.cbCm__linkTop,.cbCm__linkBottom{display:block;position:absolute;}

  .cbCm__laview .cbCm__thumb::after{content:"";position:absolute;top:50%;left:100%;
    width:calc(212 * var(--u));height:3px;margin-top:-1px;
    background:linear-gradient(#000,#000) 0 1px/100% 1px no-repeat,
      repeating-linear-gradient(90deg,#000 0 1px,#0000 1px calc(8 * var(--u))) calc(9 * var(--u)) 0/calc(100% - 18 * var(--u)) 100% no-repeat;}
  .cbCm__role--laview{position:absolute;top:50%;left:calc(100% + 106 * var(--u));
    transform:translate(-50%,-50%);margin:0;z-index:2;}

  .cbCm__nanako .cbCm__thumb::after{content:"";position:absolute;top:50%;left:100%;
    width:calc(62 * var(--u));border-top:1px solid #000;}

  .cbCm__linkTop{left:calc(10 * var(--u));right:calc(-160 * var(--u));top:calc(60 * var(--u));height:calc(112 * var(--u));
    border-left:1px solid #000;border-top:1px solid #000;border-radius:8px 0 0 0;}
  .cbCm__linkBottom{left:calc(10 * var(--u));right:calc(-160 * var(--u));top:calc(172 * var(--u));height:calc(106 * var(--u));
    border-left:1px solid #000;border-bottom:1px solid #000;border-radius:0 0 0 8px;}

  .cbCm__friends{display:grid;grid-auto-rows:calc(190 * var(--u));row-gap:calc(28 * var(--u));gap:calc(28 * var(--u)) 0;justify-items:center;}
  .cbCm__friend{max-width:none;width:100%;}

  .cbCm__role--friend{position:absolute;top:calc(60 * var(--u));left:calc(50% - 165 * var(--u));
    transform:translate(-50%,-50%);margin:0;z-index:2;}
}

@media (max-width:1040px){
  .cbCm__chartWrap+.cbCm__section{padding-top:44px;}
  .cbCm__section+.cbCm__section{padding-top:54px;padding-bottom:0;}
  .cbCm__body{margin-top:36px;}
  .cbCm__movies{row-gap:32px;}
  .cbCm__movies + .cbCm__movies{margin-top:32px;}
  .cbCm__profileImage{aspect-ratio:358/238;}
}

@media (max-width:1040px){
  .cbCm__chartWrap{--s:min(1px,0.27933cqw);}
  .cbCm__chart{position:relative;display:block;width:calc(358 * var(--s));max-width:none;height:calc(554 * var(--s));
    margin:calc(48 * var(--s)) auto;padding:0;}
  .cbCm__laview,.cbCm__nanako,.cbCm__friends,.cbCm__friend,.cbCm__thumbWrap{display:contents;}
  .cbCm__chart .cbCm__thumb,.cbCm__laviewTitle,.cbCm__charName,.cbCm__chart .cbCm__charDesc,
  .cbCm__nanakoKana,.cbCm__nanakoName,.cbCm__chart .cbCm__role{position:absolute;margin:0;}
  .cbCm__chart .cbCm__role{z-index:2;height:calc(24 * var(--s));padding:0;border-radius:calc(6 * var(--s));
    font-size:calc(11 * var(--s));letter-spacing:.05em;line-height:1;transform:none;}
  .cbCm__chart .cbCm__p{font-size:calc(12 * var(--s));}

  .cbCm__laview .cbCm__thumb{left:0;top:0;width:calc(100 * var(--s));}
  .cbCm__laviewTitle{left:calc(120 * var(--s));top:0;font-size:calc(32 * var(--s));line-height:1;letter-spacing:0;}
  .cbCm__charName{left:calc(120 * var(--s));top:calc(44 * var(--s));font-size:calc(14 * var(--s));
    line-height:1.25;letter-spacing:.05em;text-align:left;}
  .cbCm__laview .cbCm__charDesc{left:calc(120 * var(--s));top:calc(70 * var(--s));width:calc(238 * var(--s) + 4px);text-align:left;}
  .cbCm__role--laview{left:calc(140 * var(--s));top:calc(132 * var(--s));width:calc(78 * var(--s));}

  .cbCm__nanakoKana{left:0;top:calc(176 * var(--s));font-size:calc(10 * var(--s));}
  .cbCm__nanakoName{left:0;top:calc(193 * var(--s));font-size:calc(20 * var(--s));white-space:nowrap;}
  .cbCm__nanako .cbCm__thumb{left:calc(230 * var(--s));top:calc(184 * var(--s));width:calc(128 * var(--s));}
  .cbCm__nanako .cbCm__charDesc{left:0;top:calc(230 * var(--s));width:calc(210 * var(--s));text-align:left;}
  .cbCm__nanako .cbCm__p{font-size:calc(13 * var(--s));}

  .cbCm__friend:nth-child(1) .cbCm__role{left:calc(267 * var(--s));top:calc(367 * var(--s));width:calc(55 * var(--s));}
  .cbCm__friend:nth-child(2) .cbCm__role{left:0;top:calc(367 * var(--s));width:calc(124 * var(--s));}
  .cbCm__friend .cbCm__thumb{top:calc(411 * var(--s));width:calc(96 * var(--s));}
  .cbCm__friend:nth-child(1) .cbCm__thumb{left:calc(246 * var(--s));}
  .cbCm__friend:nth-child(2) .cbCm__thumb{left:calc(14 * var(--s));}
  .cbCm__friend .cbCm__charDesc{top:calc(491 * var(--s));transform:translateX(-50%);text-align:center;white-space:nowrap;}
  .cbCm__friend:nth-child(1) .cbCm__charDesc{left:calc(294 * var(--s));}
  .cbCm__friend:nth-child(2) .cbCm__charDesc{left:calc(62.5 * var(--s));}

  .cbCm__link{position:absolute;width:auto;height:auto;}
  .cbCm__link::before{display:none;}
  .cbCm__link--laview{left:calc(50 * var(--s));top:calc(100 * var(--s));width:calc(236 * var(--s));height:calc(44 * var(--s));
    box-sizing:border-box;border-left:1px solid #000;border-bottom:1px solid #000;border-bottom-left-radius:calc(8 * var(--s));}
  .cbCm__link--laview::after{content:"";position:absolute;left:100%;top:calc(100% - 1px);box-sizing:border-box;
    width:calc(8 * var(--s));height:calc(41 * var(--s));border-top:1px solid #000;border-right:1px solid #000;
    border-top-right-radius:calc(8 * var(--s));}
  .cbCm__link--friends{left:calc(62 * var(--s));top:calc(346 * var(--s));width:calc(232 * var(--s));height:calc(65 * var(--s));
    box-sizing:border-box;border-top:1px solid #000;border-left:1px solid #000;border-top-left-radius:calc(8 * var(--s));}
  .cbCm__link--friends .cbCm__linkLine{display:block;position:absolute;right:-1px;top:calc(-34 * var(--s) - 1px);
    height:calc(99 * var(--s));border-left:1px solid #000;}
}

.lp-access {
  --free: #49a2de;
  --free-tint: #e4f4ff;
  --manyu: #9fdab4;
  --manyu-tint: #e8f8e4;
  --yellow: #fff200;
}

.lp-access .is-narrow,
.lp-access .is-sp,
.lp-access .lp-br-sp { display: none; }

.lp-access__vh {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.lp-access img.lp-atext { max-width: none; width: calc(var(--w) * 1px); height: calc(var(--h) * 1px); }

.lp-access__heading { margin-top: 50px; }
.lp-access__heading img.lp-atext { margin-inline: auto; }

.lp-access__catch {
  margin-top: 32px;
  font-size: 26px;
  line-height: 1.75;
  color: var(--blue);
  text-align: center;
}
.lp-access__intro { margin-top: 9px; font-size: 16px; line-height: 1.75; text-align: center; }

.lp-access__map { margin-top: 56px; }

.lp-access__sec { margin-top: 81px; }
.lp-access__sec--free  { --tc: var(--free);  --tint: var(--free-tint); }
.lp-access__sec--manyu { --tc: var(--manyu); --tint: var(--manyu-tint); margin-top: 78px; }

.lp-access__head { position: relative; height: 36px; }
.lp-access__head::before,
.lp-access__head::after {
  content: "";
  position: absolute;
  top: 17px;
  width: min(300px, calc(50% - 200px));
  height: 1px;
  background: var(--blue);
}
.lp-access__head::before { left: 0; }
.lp-access__head::after  { right: 0; }
.lp-access img.lp-access__slash { position: absolute; top: 1px; width: 22.23px; height: 35.24px; }
.lp-access img.lp-access__slash--l { left: calc(50% - 176px); }
.lp-access img.lp-access__slash--r { right: calc(50% - 177px); }
.lp-access img.lp-access__title { margin-inline: auto; }

.lp-laview__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 480px));
  justify-content: space-between;
  column-gap: 40px;
  margin-top: 41px;
}
.lp-laview__img { border-radius: 10px; }
.lp-laview__text { margin-top: 19px; font-size: 16px; line-height: 1.75; }

.lp-laview__more { display: flex; justify-content: center; margin-top: 35px; }
.lp-laview__btn {
  display: inline-flex;
  align-items: center;
  height: 50px;
  padding: 0 20px;
  border: 1px solid var(--blue);
  border-radius: 6px;
  background: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  color: var(--blue);
  transition: background .2s;
}
.lp-laview__btn:hover { background: var(--season-bg); }

.lp-access__cta {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 470px;
  max-width: 100%;
  min-height: 78px;
  margin: 40px auto 0;
  padding: 8px 50px;
  border-radius: 100px;
  background: var(--blue);
  font-weight: 700;
  line-height: 1.7;
  color: #fff;
  text-align: center;
  transition: opacity .2s;
}
.lp-access__cta:hover { opacity: .85; }
.lp-access__cta-main { font-size: 22px; }
.lp-access__cta-sub  { font-size: 16px; }
.lp-access .lp-access__cta img { position: absolute; top: 50%; right: 31.5px; width: 15px; height: 14px; margin-top: -7px; }

.lp-ticket__desc { margin-top: 27px; font-size: 16px; line-height: 1.75; text-align: center; }

.lp-ticket { margin-top: 36px; }

.lp-ticket__top {
  height: 250px;
  padding: 25px 30px 0;
  border-radius: 10px 10px 0 0;
  background: var(--tc);
}
.lp-access__sec--manyu .lp-ticket__top { padding-top: 21px; }

.lp-ticket__perks { display: flex; align-items: center; gap: 6px; }

.lp-ticket__plus {
  display: grid;
  flex: none;
  place-items: center;
  width: 20px;
  height: 20px;
  font-family: var(--font-en);
  font-size: 38px;
  font-weight: 500;
  line-height: 1;
  color: var(--yellow);
}

.lp-perk-col { display: flex; flex: none; flex-direction: column; gap: 10px; width: 236px; }

.lp-perk { position: relative; flex: none; width: 320px; height: 200px; }
.lp-perk--narrow { width: 236px; }
.lp-perk--small  { width: 236px; height: 99.75px; }

.lp-perk__box {
  position: absolute;
  inset: 20px 0 0;
  border: 1px solid var(--blue);
  border-radius: 10px;
  background: linear-gradient(to top, var(--tint) 83px, #fff 0);
}
.lp-perk--small .lp-perk__box { top: 14.75px; background: linear-gradient(to top, var(--tint) 40px, #fff 0); }

.lp-perk__label { position: absolute; z-index: 1; top: 0; left: 0; display: flex; height: 40.76px; }
.lp-perk__otoku {
  display: grid;
  place-items: center;
  width: 72.62px;
  height: 100%;
  border: 1px solid var(--blue);
  background: #fff;
}
.lp-access .lp-perk__otoku img { width: 50.62px; height: 15.89px; }
.lp-perk__no {
  display: grid;
  place-items: center;
  width: 41px;
  height: 41px;
  margin-left: -.62px;
  padding: 0 1px 1px 0;
  border: 1px solid var(--blue);
  background: var(--yellow);
  font-family: var(--font-en);
  font-size: 28px;
  font-weight: 500;
  line-height: 1;
  color: var(--blue);
}
.lp-access img.lp-perk__fold { position: absolute; top: 0; left: 113px; width: 8px; height: 20.38px; }

.lp-perk--small .lp-perk__label { height: 29.82px; }
.lp-perk--small .lp-perk__no { height: 30px; font-size: 24px; }
.lp-access .lp-perk--small img.lp-perk__fold { height: 14.91px; }

.lp-access img.lp-perk__g {
  position: absolute;
  z-index: 1;
  top: calc(var(--y) * 1px);
  left: calc(var(--x) * 1px);
  width: calc(var(--w) * 1px);
  height: calc(var(--h) * 1px);
  max-width: none;
}

.lp-ticket__bottom {
  height: 250px;
  padding: 28px 0 0 27px;
  border: 3px solid var(--tc);
  border-top: 0;
  border-radius: 0 0 10px 10px;
  background: #fff;
}
.lp-access__sec--manyu .lp-ticket__bottom { padding: 23px 0 0; }
.lp-access img.lp-ticket__diagram {
  width: calc(var(--w) * 1px);
  height: calc(var(--h) * 1px);
  max-width: none;
  margin-inline: auto;
}
.lp-access__sec--free .lp-ticket__bottom img.lp-ticket__diagram { margin-inline: 0; }

.lp-related { margin-top: 48px; }
.lp-access__sec--manyu .lp-related { margin-top: 50px; }
.lp-related__head {
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  color: var(--blue);
}
.lp-related__head::after { content: ""; flex: 1; height: 1px; margin-right: 2px; background: var(--blue); }

.lp-related__list { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 30px; }

.lp-article {
  position: relative;
  display: grid;
  grid-template-columns: 245px 245px;
  width: 490px;
  max-width: 100%;
  min-height: 163px;
  border-radius: 6px;
  background: var(--tint);
  transition: transform .2s, box-shadow .2s;
}
.lp-article:hover { transform: translateY(-4px); box-shadow: 0 6px 16px rgb(0 0 0 / 12%); }
.lp-article__img { border-radius: 6px 0 0 6px; }
.lp-article__title {
  padding: 15px 50px 15px 20px;
  font-size: 16.68px;
  font-weight: 700;
  line-height: 1.5;
}
.lp-access img.lp-article__arrow { position: absolute; top: 50%; right: 0; width: 34px; height: 34px; margin-top: -17px; }

.lp-ticket__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  width: 470px;
  max-width: 100%;
  height: 60px;
  margin: 50px auto 0;
  border-radius: 100px;
  background: var(--blue);
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  white-space: nowrap;
  transition: opacity .2s;
}
.lp-ticket__cta:hover { opacity: .85; }
.lp-access .lp-ticket__cta img { width: 15px; height: 14px; }

.lp-ticket__note { margin-top: 20px; font-size: 14px; line-height: 1.75; text-align: center; }

@media (max-width: 1040px) {
  .lp-access .is-wide { display: none; }
  .lp-access .is-narrow { display: block; }

  .lp-ticket {
    --u: calc(100cqw / 360);
    container-type: inline-size;
    max-width: 560px;
    margin-inline: auto;
  }

  .lp-ticket__top,
  .lp-access__sec--manyu .lp-ticket__top {
    height: calc(262 * var(--u));
    padding: calc(13 * var(--u)) calc(15 * var(--u)) 0;
  }
  .lp-ticket__perks { position: relative; display: block; }
  .lp-perk-col { display: contents; }

  .lp-perk,
  .lp-perk--narrow,
  .lp-perk--small {
    position: absolute;
    top: calc(var(--st) * var(--u));
    left: calc(var(--sl) * var(--u));
    width: calc(var(--sw) * var(--u));
    height: calc(69 * var(--u));
  }
  .lp-perk__box,
  .lp-perk--small .lp-perk__box {
    top: calc(9 * var(--u));
    border-width: .5px;
    border-radius: 6px;
    background: linear-gradient(to left, var(--tint) calc(var(--tw) * var(--u)), #fff 0);
  }

  .lp-perk__label,
  .lp-perk--small .lp-perk__label { height: calc(20 * var(--u)); }
  .lp-perk__otoku { width: calc(36 * var(--u)); border-width: .5px; }
  .lp-access .lp-perk__otoku img { width: calc(23.69 * var(--u)); height: calc(7.44 * var(--u)); }
  .lp-perk__no,
  .lp-perk--small .lp-perk__no {
    width: calc(20 * var(--u));
    height: calc(20 * var(--u));
    margin-left: calc(-1 * var(--u));
    padding: 0;
    border-width: .5px;
    font-size: calc(13.1 * var(--u));
  }
  .lp-access img.lp-perk__fold,
  .lp-access .lp-perk--small img.lp-perk__fold {
    left: calc(55 * var(--u));
    width: calc(3.74 * var(--u));
    height: calc(9.54 * var(--u));
  }
  .lp-access img.lp-perk__g {
    top: calc(var(--y) * var(--u));
    left: calc(var(--x) * var(--u));
    width: calc(var(--w) * var(--u));
    height: calc(var(--h) * var(--u));
  }

  .lp-ticket__plus {
    position: absolute;
    top: calc(var(--pt) * var(--u));
    left: calc(165 * var(--u));
    width: auto;
    height: calc(23 * var(--u));
    font-size: calc(23 * var(--u));
    transform: translateX(-50%);
  }

  .lp-ticket__bottom,
  .lp-access__sec--manyu .lp-ticket__bottom {
    height: calc(209 * var(--u));
    padding: calc(21 * var(--u)) 0 0 calc(14 * var(--u));
    border-width: 1px;
  }
  .lp-access__sec--manyu .lp-ticket__bottom { height: calc(142 * var(--u)); padding: calc(20 * var(--u)) 0 0; }
  .lp-access img.lp-ticket__diagram {
    width: calc(var(--w) * var(--u));
    height: calc(var(--h) * var(--u));
  }
}

@media (max-width: 1040px) {
  .lp-access .is-pc { display: none; }
  .lp-access .is-sp { display: block; }
  .lp-access .lp-br-sp { display: inline; }

  .lp-access__heading { margin-top: 40px; }
  .lp-access .lp-access__heading img.lp-atext { width: 100%; height: auto; }

  .lp-access__catch { margin-top: 20px; font-size: 22px; line-height: 1.5; }
  .lp-access__intro { margin-top: 10px; font-size: 15px; }
  .lp-access__map { margin-top: 40px; }

  .lp-access__sec,
  .lp-access__sec--manyu { margin-top: 40px; }

  .lp-access__head { height: 24px; }
  .lp-access__head::before,
  .lp-access__head::after { top: 11.25px; width: 44px; }
  .lp-access img.lp-access__slash { top: 0; width: 15px; height: 23.79px; }
  .lp-access img.lp-access__slash--l { left: calc(50% - 119.3px); }
  .lp-access img.lp-access__slash--r { right: calc(50% - 119px); }
  .lp-access img.lp-access__title { width: calc(var(--w) * .6563px); height: calc(var(--h) * .6563px); }

  .lp-laview__list { grid-template-columns: 1fr; row-gap: 20px; margin-top: 20px; }
  .lp-laview__text { margin-top: 10px; font-size: 15px; }
  .lp-laview__more { margin-top: 20px; }
  .lp-laview__btn { height: 42px; padding: 0 16.5px; font-size: 15px; }
  .lp-access__cta { width: 100%; min-height: 61px; margin-top: 20px; padding: 7px 40px; line-height: 1.6; }
  .lp-access__cta-main { font-size: 17px; }
  .lp-access__cta-sub  { font-size: 13px; }
  .lp-access .lp-access__cta img { right: 26.5px; width: 11px; height: 10px; margin-top: -5px; }

  .lp-ticket__desc { margin-top: 20px; font-size: 15px; text-align: left; }
  .lp-ticket { margin-top: 20px; }

  .lp-related,
  .lp-access__sec--manyu .lp-related { margin-top: 20px; }
  .lp-related__head { flex-direction: column; gap: 12px; font-size: 17px; line-height: 1.4; text-align: center; }
  .lp-related__head::after { flex: none; width: 100%; margin-right: 0; }
  .lp-related__list { flex-direction: column; gap: 15px; margin-top: 20px; }

  .lp-article { grid-template-columns: 1fr 1fr; width: 100%; min-height: 0; }
  .lp-article__title { padding: 9.7px 35px 9px 10px; font-size: 13px; line-height: 1.4; }
  .lp-access img.lp-article__arrow { width: 24px; height: 24px; margin-top: -12px; }

  .lp-ticket__cta { gap: 10px; width: 100%; height: 50px; margin-top: 30px; font-size: 17px; }
  .lp-access .lp-ticket__cta img { width: 11px; height: 10px; }
  .lp-ticket__note { font-size: 13px; line-height: 1.6; text-align: left; }
}

.lp-area__badge img{display:block!important;width:306px!important;height:80px!important;max-width:100%!important;}
@media (max-width:1040px){.lp-area__badge img{width:100%!important;height:auto!important;}}

.lp-otext{display:block!important;width:auto!important;height:auto!important;max-width:100%!important;}
.lp-menu__label{display:flex;align-items:center;justify-content:center;padding:0 8px;}
@media (max-width:1040px){ .lp-menu__label{padding:0 6px;} }

.lp-course__no .lp-otext,.lp-season__title .lp-otext{margin-left:auto;margin-right:auto;}

.lp-course__dist b{padding:4px 10px;}

.lp-season__head{line-height:0;}
.lp-season__desc{margin-top:23px;}
.lp-course__title{margin-top:15px;}
.lp-course__desc{margin-top:12px;}
.lp-course__flow{margin-top:41px;}
.lp-course__station{margin-top:10px;}
.lp-ocard__title{margin-top:12px;}

.lp-ocard{padding-top:11px;}
.lp-ocard__no{margin-top:27px;}

@media (min-width:1041px){
  .lp-course__intro{padding-top:34px;padding-bottom:30px;}
}
.lp-course__heading{align-items:center;}
.lp-course__heading .lp-otext{display:block!important;width:50px!important;height:50px!important;}
.lp-course__heading .lp-otext + .lp-otext{margin-left:-1px;}
.lp-course__intro > .lp-areatag{box-sizing:content-box;width:145px;height:30px;}
.lp-season__flag{width:46px;background:none;}
.lp-season__flag::after{display:none;}
.lp-season__flag .lp-otext{width:46px!important;height:70px!important;}
.lp-season__title{padding:0;}
.lp-season__title::before,.lp-season__title::after{display:none;}
.lp-ocard > .lp-areatag{width:145px;height:30px;border-radius:10px 0 0 0;}
.lp-spot__no .lp-otext{width:auto!important;height:35px!important;}

.lp-course__dist b.is-pill{padding:0;border:0;background:none;}
.lp-course__dist b.is-pill .lp-otext{display:block!important;}

img.lp-course__dist__badge,img.lp-course__dist__illust{max-width:none!important;}
.lp-course__start img.lp-course__start__img{width:195px!important;height:33px!important;}
.lp-spot__badge{width:119px!important;height:119px!important;}

.lp-chichibu .lp-menu__label img.lp-otext.lp-menu__sp{display:none!important;}
@media (max-width:1040px){
  .lp-chichibu .lp-menu__label img.lp-otext.lp-menu__pc{display:none!important;}
  .lp-chichibu .lp-menu__label img.lp-otext.lp-menu__sp{display:block!important;max-width:none!important;height:auto!important;margin:0 auto!important;}
  .lp-chichibu .lp-menu__list > li:first-child .lp-menu__label{padding:0!important;}
  .lp-chichibu .lp-menu__label img.lp-menu__sp[src*="sp-spot"]{width:46px!important;}
  .lp-chichibu .lp-menu__label img.lp-menu__sp[src*="sp-course"]{width:69px!important;}
  .lp-chichibu .lp-menu__label img.lp-menu__sp[src*="sp-access"]{width:64px!important;}
  .lp-chichibu .lp-menu__label img.lp-menu__sp[src*="sp-cm"]{width:44px!important;}
}
@media (max-width:1040px){
  .lp-course__heading .lp-otext{width:44px!important;height:44px!important;}
}

@media (max-width: 1040px) {
  .lp-chichibu { padding-top: 0; }

  .lp-chichibu .lp-inner { max-width: calc(100% - 30px); }

  .lp-chichibu .lp-mv { width: 100%; max-width: none; }

  .lp-chichibu .lp-menu { margin-top: 24px; }
  .lp-chichibu .lp-menu__list { flex-wrap: nowrap; gap: 8px; height: 52px; }
  .lp-chichibu .lp-menu__list > li + li { margin-left: 0; }
  .lp-chichibu .lp-menu__list > li { flex: 1 1 0; min-width: 0; }
  .lp-chichibu .lp-menu__link { height: 52px; }

  .lp-chichibu .lp-menu__bg { clip-path: polygon(0 26.9%, 50% 11.5%, 100% 26.9%, 100% 100%, 0 100%); }
  .lp-chichibu .lp-menu__spark { top: -1px; }

  .lp-chichibu .lp-menu__icon img {
    transform: translateX(-50%) scale(.4);
    transform-origin: 50% 0;
  }

  .lp-chichibu .lp-menu__label {
    top: 35px;
    bottom: auto;
    display: block;
    height: auto;
    padding: 0;
    transform: translateY(-50%);
    font-size: 11px;
    line-height: 1.15;
    letter-spacing: 0;
    text-indent: 0;
  }

  .lp-chichibu .lp-menu__list > li:first-child .lp-menu__label { padding: 0 19px; }

  .lp-chichibu .lp-menu__label .lp-otext { width: auto !important; height: auto !important; max-width: 76px !important; }

  .lp-chichibu .lp-menu__bar { height: 4px; }

  .lp-chichibu .lp-lead { margin-top: 21px; }
  .lp-chichibu .lp-lead__title { font-size: 22px; line-height: 1.75; }
  .lp-chichibu .lp-lead__text { margin-top: 14px; font-size: 15px; line-height: 26px; }
  .lp-chichibu > .lp-lead .lp-lead__text { margin-top: 10.5px; }

  .lp-chichibu .lp-anchor { flex-wrap: nowrap; gap: 15px; margin-top: 30px; padding-bottom: 4px; }
  .lp-chichibu .lp-anchor__link {
    justify-content: center;
    gap: 1px;
    width: 110px;
    height: 50px;
    padding: 6px 0 0;
    border-radius: 5px;
    box-shadow: 0 4px 0 var(--c);
  }
  .lp-chichibu .lp-anchor__link:hover { box-shadow: 0 2px 0 var(--c); }
  .lp-chichibu .lp-anchor__name { font-size: 19px; line-height: 1.25; }
  .lp-chichibu .lp-anchor__sub  { font-size: 13px; line-height: 1.25; }

  .lp-chichibu .lp-anchor__arrow { top: 35px; right: auto; left: 50%; width: 9px; margin: 0 0 0 -4.5px; }

  .lp-chichibu .lp-anchor__link.is-active { --c: var(--blue); }
  .lp-chichibu img.lp-anchor__arrow--pc { display: none; }
  .lp-chichibu img.lp-anchor__arrow--sp { display: block; }

  .lp-chichibu .lp-area { margin-top: 50px; }
  .lp-chichibu .lp-anchor + .lp-area { margin-top: 40px; }
  .lp-chichibu .lp-area__head { gap: 20px; }

  .lp-chichibu .lp-area__badge img { width: 200px !important; height: auto !important; }

  .lp-chichibu .lp-area__desc { margin-top: 0; font-size: 15px; line-height: 1.75; }

  .lp-chichibu .lp-sort {
    flex-wrap: nowrap;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 20px;
    font-size: 11px;
  }
  .lp-chichibu .lp-sort__list { width: 227px; height: 29px; padding: 0 20px; border-radius: 5px; }
  .lp-chichibu .lp-sort__list li + li::before { padding: 0 8px; }
  .lp-chichibu .lp-sort__list .is-current a::after { height: 3px; }

  .lp-chichibu .lp-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 20px; }

  .lp-chichibu .lp-area--nosort .lp-cards { margin-top: 20px; }
  .lp-chichibu .lp-card { min-height: 200px; border-radius: 5px; }
  .lp-chichibu .lp-card__bar { height: 3px; }
  .lp-chichibu .lp-card__body { padding: 10px 10px 11px; }
  .lp-chichibu .lp-card__title { min-height: 2.8em; font-size: 13px; line-height: 1.4; }
  .lp-chichibu .lp-card__tags { gap: 4px; max-height: 23px; padding-top: 8px; }
  .lp-chichibu .lp-card .lp-tag,
  .lp-chichibu .lp-season__tags .lp-tag { height: 15px; padding: 0 6px; font-size: 10px; }

  .lp-chichibu .lp-more { margin-top: 20px; }
  .lp-chichibu .lp-more__label { gap: 8px; font-size: 13px; }
  .lp-chichibu .lp-more__label img { width: 8px; }
  .lp-chichibu .lp-btn {
    width: 300px;
    min-height: 50px;
    margin-top: 9px;
    padding: 10px 20px;
    background: var(--blue);
    font-size: 13px;
    line-height: 1.25;
  }

  .lp-chichibu .lp-season { margin-top: 50px; padding: 31px 0; }

  .lp-chichibu .lp-season__head { line-height: 0; }
  .lp-chichibu .lp-season__title { padding: 0 8px; font-size: 20px; line-height: 23px; letter-spacing: 2px; text-indent: 2px; }
  .lp-chichibu .lp-season__title::before { bottom: -3px; width: 154px; height: 7px; }
  .lp-chichibu .lp-season__title::after { bottom: -11px; width: 17px; height: 12.6px; }

  .lp-chichibu .lp-season__title .lp-otext { width: 154px !important; height: auto !important; }

  .lp-chichibu .lp-season__desc { margin-top: 12px; font-size: 15px; line-height: 1.75; }

  .lp-chichibu .lp-season__grid { grid-template-columns: minmax(0, 1fr); row-gap: 5px; margin-top: 20px; }

  .lp-chichibu .lp-season__card { padding: 7px 0 10px; }
  .lp-chichibu .lp-season__inner { flex-direction: row; height: 120px; }
  .lp-chichibu .lp-season__img { width: 50%; border-radius: 6px 0 0 6px; }
  .lp-chichibu .lp-season__text { flex: 1; padding: 10px 35px 0 10px; border-radius: 0 6px 6px 0; }
  .lp-chichibu .lp-season__name { width: auto; font-size: 13px; line-height: 1.4; }
  .lp-chichibu .lp-season__tags { bottom: 10px; left: 11px; gap: 4px; }
  .lp-chichibu .lp-season__arrow {
    top: 50%;
    right: 0;
    bottom: auto;
    width: 24px;
    height: 24px;
    margin-top: -12px;
  }

  .lp-chichibu .lp-season__flag { left: 7px; width: 29.4px; height: 51.4px; font-size: 20px; }
  .lp-chichibu .lp-season__flag span { padding-top: 25px; letter-spacing: 0; text-indent: 0; }
  .lp-chichibu .lp-season__flag::after { width: 4.4px; height: 7.3px; }

  .lp-chichibu .lp-season__flag { width: auto; }
  .lp-chichibu .lp-season__flag .lp-otext { width: 33.8px !important; height: 51.4px !important; }

  .lp-chichibu .lp-course__heading { margin-top: 40px; }
  .lp-chichibu .lp-course__heading span {
    width: 33.5px;
    height: 33px;
    font-size: 20px;
    letter-spacing: 5px;
    text-indent: 5px;
  }
  .lp-chichibu .lp-course__heading span:first-child { border-radius: 5px 0 0 5px; }
  .lp-chichibu .lp-course__heading span:last-child  { border-radius: 0 5px 5px 0; }
  .lp-chichibu .lp-course__heading .lp-otext { width: 33.5px !important; height: 33px !important; }

  .lp-chichibu .lp-course .lp-lead { margin-top: 21px; padding: 0 15px; }
  .lp-chichibu .lp-course .lp-lead__title { line-height: 33px; }

  .lp-chichibu .lp-others__list { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .lp-chichibu .lp-courselist { margin-top: 40px; }
  .lp-chichibu .lp-ocard {
    min-height: 420px;
    padding: 13.5px 13.5px 40px;
    border-width: 1.5px;
    border-radius: 7.5px;
  }
  .lp-chichibu .lp-ocard__img { border-radius: 0; }

  .lp-chichibu .lp-ocard > .lp-areatag { top: -1.5px; left: -1.5px; }
  .lp-chichibu .lp-ocard > .lp-areatag span {
    width: 22.5px;
    height: 22.5px;
    font-size: 13.8px;
    letter-spacing: 3.45px;
    text-indent: 3.45px;
  }
  .lp-chichibu .lp-ocard > .lp-areatag span:first-child { border-radius: 7.5px 0 0; }
  .lp-chichibu .lp-ocard > .lp-areatag span:last-child  { border-radius: 0 5px 5px 0; }
  .lp-chichibu .lp-ocard > img.lp-areatag { width: 108.75px !important; height: 22.5px !important; }

  .lp-chichibu .lp-ocard__no { margin-top: 15px; font-size: 12px; }
  .lp-chichibu .lp-ocard__no b { font-size: 18px; }
  .lp-chichibu .lp-ocard__no .lp-otext { width: auto !important; height: 12.9px !important; }
  .lp-chichibu .lp-ocard__no .lp-otext[src*="mc-02"] { height: 11.9px !important; }
  .lp-chichibu .lp-ocard__no .lp-otext[src*="mc-03"] { height: 12.1px !important; }
  .lp-chichibu .lp-ocard__title { margin-top: 9px; font-size: 20px; line-height: 1.4; }

  .lp-chichibu .lp-ocard__text { min-height: 44.2px; margin-top: 7px; font-size: 13px; line-height: 1.7; }
  .lp-chichibu .lp-ocard__text br { display: none; }
  .lp-chichibu .lp-ocard__arrow { right: -1.5px; bottom: -1.5px; width: 30px; height: 30px; border-radius: 7.5px 0 7.5px 0; }
  .lp-chichibu .lp-ocard__arrow img { width: 30px; height: 30px; }

  .lp-chichibu .lp-course__intro { margin-top: 44px; padding: 23px 20px 30px; }

  .lp-chichibu .lp-course__intro > .lp-areatag { top: -13px; padding: 0 6px; }
  .lp-chichibu .lp-course__intro > .lp-areatag span {
    width: 24px;
    height: 24px;
    font-size: 14.8px;
    letter-spacing: 3.7px;
    text-indent: 3.7px;
  }
  .lp-chichibu .lp-course__intro > .lp-areatag span:first-child { border-radius: 5px 0 0 5px; }
  .lp-chichibu .lp-course__intro > .lp-areatag span:last-child  { border-radius: 0 5px 5px 0; }
  .lp-chichibu .lp-course__intro > img.lp-areatag { width: 116px !important; height: 24px !important; }

  .lp-chichibu .lp-course__no { font-size: 15px; line-height: 16.5px; }
  .lp-chichibu .lp-course__no b { font-size: 23px; }
  .lp-chichibu .lp-course__no .lp-otext { width: auto !important; height: 16.5px !important; }

  .lp-chichibu .lp-course__title { margin-top: 6px; line-height: 36px; }

  .lp-chichibu .lp-course__desc { max-width: 225px; margin: 6px auto 0; font-size: 15px; line-height: 1.75; }

  .lp-chichibu .lp-course__flow { margin-top: 31px; }

  .lp-chichibu .lp-course__start { gap: 5px; font-size: 18px; }
  .lp-chichibu .lp-course__start img { width: 11.6px; height: 16px; }
  .lp-chichibu .lp-course__start img.lp-otext { width: auto !important; height: 15px !important; }

  .lp-chichibu .lp-course__station { margin-top: 6px; }
  .lp-chichibu .lp-course__station img { width: 218px; }
  .lp-chichibu .lp-course__stationName { margin-top: 3px; font-size: 15px; }

  .lp-chichibu .lp-course__dist,
  .lp-chichibu .lp-course__station + .lp-course__dist { height: 75px; margin-top: 20px; }
  .lp-chichibu .lp-course__dist__line { width: 3px; height: 75px; margin-left: -1.5px; }
  .lp-chichibu .lp-course__dist__arrow { top: 67.5px; width: 15px; height: 7.5px; margin-left: -7.5px; }
  .lp-chichibu .lp-course__dist b {
    top: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 72px;
    height: 22px;
    padding: 0 9px;
    border-radius: 4.5px;
    font-size: 12px;
  }
  .lp-chichibu .lp-course__dist b .lp-otext { width: auto !important; height: 12px !important; }

  .lp-chichibu .lp-course__dist b.is-pill { min-width: 0; height: auto; padding: 0; border: 0; background: none; }
  .lp-chichibu .lp-course__dist b.is-pill .lp-otext { height: 22px !important; }

  .lp-chichibu img.lp-course__dist__illust {
    display: block;
    top: 0 !important;
    width: auto !important;
    height: auto !important;

    max-height: 78px !important;
    max-width: calc(50vw - 15px - 75px) !important;
  }
  .lp-chichibu img.lp-course__dist__illust[src*="illust-people2"] { max-height: 76.5px !important; }
  .lp-chichibu img.lp-course__dist__illust[src*="illust-people3"] { max-height: 66px !important; }
  .lp-chichibu .lp-course__dist:nth-of-type(odd) img.lp-course__dist__illust { right: 15px; left: auto !important; }
  .lp-chichibu .lp-course__dist:nth-of-type(even) img.lp-course__dist__illust { left: 20px !important; }
  .lp-chichibu .lp-course__dist:has(.lp-course__dist__badge) img.lp-course__dist__illust { left: 20px !important; right: auto; }

  .lp-chichibu img.lp-course__dist__illust[src*="illust-people4"] { display: none; }

  .lp-chichibu img.lp-course__dist__badge {
    top: 2px !important;
    width: auto !important;
    height: 70px !important;
    max-width: none !important;
  }
  .lp-chichibu .lp-course__dist img.lp-course__dist__badge { right: auto; left: calc(50% + var(--lw, 60px) / 2 + 8px) !important; }
  .lp-chichibu .lp-course__dist--long img.lp-course__dist__badge { top: 8px !important; height: 56px !important; }
  .lp-chichibu .lp-course__dist:has(img[src*="dist-n-1"]) { --lw: 168px; }
  .lp-chichibu .lp-course__dist:has(img[src*="dist-n2-1"]) { --lw: 162px; }
  .lp-chichibu .lp-course__dist:has(img[src*="dist-m-1"]) { --lw: 106px; }

  .lp-chichibu .lp-spot {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    margin-top: 20px;
  }
  .lp-chichibu .lp-spot--badge { margin-top: 20px; }
  .lp-chichibu .lp-spot__media,
  .lp-chichibu .lp-spot__body { display: contents; }

  .lp-chichibu .lp-spot__no     { order: 1; }
  .lp-chichibu .lp-spot__name   { order: 2; }
  .lp-chichibu .lp-spot__text   { order: 3; }
  .lp-chichibu .lp-spot__main   { order: 4; }
  .lp-chichibu .lp-spot__thumbs { order: 5; }
  .lp-chichibu .lp-spot__more   { order: 6; }

  .lp-chichibu .lp-spot__no { justify-content: center; gap: 7px; height: 27px; font-size: 20px; }
  .lp-chichibu .lp-spot__no img { width: 20px; height: 27px; }
  .lp-chichibu .lp-spot__no b { font-size: 29.5px; }
  .lp-chichibu .lp-spot__no .lp-otext { width: auto !important; height: 27px !important; }

  .lp-chichibu .lp-spot__name { margin-top: 20px; font-size: 24px; font-weight: 400; line-height: 1; text-align: center; }
  .lp-chichibu .lp-spot__text { min-height: 0; margin-top: 13px; font-size: 15px; line-height: 1.75; }

  .lp-chichibu .lp-spot__main { margin-top: 20px; border-radius: 10px; }

  .lp-chichibu .lp-spot__badge { top: 7px; left: 7px; width: 81px; height: auto; }

  .lp-chichibu .lp-spot__thumbs { gap: 10px; margin-top: 11px; }
  .lp-chichibu .lp-spot__thumbs button { width: calc((100% - 30px) / 4); border-radius: 3px; }
  .lp-chichibu .lp-spot__thumbs picture { border-radius: 3px; }
  .lp-chichibu .lp-spot__thumbs button::after { border-width: 2px; border-radius: 3px; }

  .lp-chichibu .lp-spot__more {
    justify-self: center;
    gap: 10px;
    width: 260px;
    height: 50px;
    margin-top: 30px;
    font-size: 17px;
  }
  .lp-chichibu .lp-spot__more img { position: static; width: 11px; height: 10px; }

  .lp-chichibu .lp-spot--band::before {
    top: -61px;
    height: calc(100% + 123px);
    padding-bottom: 0;

    -webkit-mask: url("/chichibu/assets/svg/course/wave-sp.svg") center / 100% 100% no-repeat;
    mask: url("/chichibu/assets/svg/course/wave-sp.svg") center / 100% 100% no-repeat;
  }

  .lp-chichibu .lp-map { margin-top: 52px; padding: 20px 15px 15px; border-radius: 10px; }
  .lp-chichibu .lp-spot--band + .lp-map { margin-top: 102px; }

  .lp-chichibu .lp-map__head { gap: 6px; height: 20px; font-size: 17px; letter-spacing: 1.4px; text-indent: 1.4px; }
  .lp-chichibu .lp-map__head img { width: 17px; height: 19px; }
  .lp-chichibu .lp-map__head .lp-map__slash { width: 13px; height: 20px; }
  .lp-chichibu .lp-map__head .lp-otext { width: 217px !important; height: auto !important; }
  .lp-chichibu .lp-map__frame { margin-top: 15px; border-radius: 0; }
  .lp-chichibu .lp-map__frame iframe { height: 200px; }

  .lp-chichibu .lp-others { margin-top: 50px; }
  .lp-chichibu .lp-others__head { gap: 12px; height: 28px; font-size: 20px; letter-spacing: 2px; text-indent: 2px; }
  .lp-chichibu .lp-others__head img { width: 18px; height: 27.7px; }
  .lp-chichibu .lp-others__head .lp-otext { width: auto !important; height: 20px !important; }
  .lp-chichibu .lp-others__head::before,
  .lp-chichibu .lp-others__head::after {
    content: "";
    flex: none;
    width: 44px;
    height: 1px;
    background: var(--blue);
  }
  .lp-chichibu .lp-others__head::before { margin-right: 4px; }
  .lp-chichibu .lp-others__head::after  { margin-left: 4px; }
  .lp-chichibu .lp-others .lp-others__list { margin-top: 20px; }

  .lp-modal { display: block; padding: 132px 15px 0; }
  .lp-modal .lp-modal__inner { width: auto; }
  .lp-modal .lp-modal__panel {
    flex-direction: column;
    gap: 14px;
    max-height: calc(100vh - 132px);
    max-height: calc(100dvh - 132px);
    padding: 15px 15px 20px;
  }
  .lp-modal .lp-modal__media,
  .lp-modal .lp-modal__body { display: contents; }

  .lp-modal .lp-modal__panel > * > * { flex: none; }

  .lp-modal .lp-modal__body .lp-areatag { order: 1; }
  .lp-modal .lp-modal__title  { order: 2; margin-top: 0; font-size: 20px; line-height: 1.3; }
  .lp-modal .lp-modal__media picture { order: 3; width: auto; margin: 0 -15px; }

  .lp-modal .lp-modal__text   { order: 4; margin-top: 0; font-size: 13px; line-height: 1.75; }
  .lp-modal .lp-modal__access { order: 5; }
  .lp-modal .lp-modal__cta    { order: 6; margin-top: 0; padding-top: 0; }

  .lp-modal .lp-modal__close { top: -45px; width: 30px; height: 30px; }
  .lp-modal .lp-modal__close img { width: 30px; height: 30px; }

  .lp-modal .lp-modal__access {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    height: auto;
    padding: 0;
  }
  .lp-modal .lp-modal__access dt {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: auto;
    height: 24px;
    margin-top: 0;
    padding-left: 11px;
    border-radius: 0;
    font-size: 13px;
    letter-spacing: 1.04px;
    text-indent: 0;
  }
  .lp-modal .lp-modal__access dd { display: block; min-height: 0; margin: 0; padding: 10px 10px 12px; font-size: 13px; line-height: 1.75; }

  .lp-modal .lp-modal__lead { gap: 8px; font-size: 13px; }
  .lp-modal .lp-modal__lead img { width: 7.8px; height: 10px; }
  .lp-modal .lp-modal__more { width: 280px; height: 50px; margin-top: 12px; font-size: 17px; }
  .lp-modal .lp-modal__more img { right: 18px; width: 16px; height: 15px; }

  .lp-chichibu .lp-sort.lp-sort--sp { display: flex; }
  .lp-chichibu br.u-sp { display: inline; }

  .lp-chichibu .lp-course__start img.lp-course__start__img { width: 108px !important; height: 18px !important; }

  .lp-chichibu .lp-spot__main .lp-spot__badge { top: 7px !important; left: 7px !important; width: 81px !important; height: 81px !important; }

  .lp-chichibu .lp-course__dist--long img.lp-course__dist__illust { display: none !important; }

  .lp-chichibu .lp-course__title { font-size: min(26px, calc((100vw - 76px) / var(--chars, 13))); }

  .lp-chichibu .lp-access__sec--free { margin-top: 47px; }
}

@media (min-width: 601px) and (max-width: 1040px) {
  .lp-chichibu { padding-inline: calc((100% - 600px) / 2); }
  .cbCm__inner { max-width: 570px; }
  .lp-chichibu .lp-season { box-shadow: 0 0 0 100vmax var(--season-bg); clip-path: inset(0 -100vmax); }
}

@media (max-width: 374px) {
  .lp-chichibu .lp-course__dist img.lp-course__dist__badge { height: 48px !important; }
  .lp-chichibu .lp-course__dist:has(img[src*="dist-n-1"]) { --lw: 146px; }
  .lp-chichibu .lp-course__dist:has(img[src*="dist-n2-1"]) { --lw: 141px; }
}

.lp-modal__access dt,
.lp-modal__more { font-family: var(--font-gothic); }

.lp-modal__access[hidden],
.lp-modal .lp-areatag[hidden] { display: none; }

@media (max-width: 1040px) {
  .lp-chichibu.lp-chichibu--sub { padding-top: 5px; }
}

.lp-more[hidden],
.lp-cards > li[hidden] { display: none; }

.lp-access__head { display: flex; align-items: center; justify-content: center; gap: 16px; height: auto; }
.lp-access__head::before,
.lp-access__head::after { position: static; flex: 1; width: auto; }
.lp-access__head::before { margin-right: 14px; }
.lp-access__head::after  { margin-left: 14px; }
.lp-access img.lp-access__slash { position: static; flex: none; }
.lp-access img.lp-access__title { flex: none; margin-inline: 0; width: calc(var(--w) * 1.3px); height: calc(var(--h) * 1.3px); }
@media (max-width: 1040px) {
  .lp-access__head { gap: 8px; }
  .lp-access__head::before { margin-right: 6px; }
  .lp-access__head::after  { margin-left: 6px; }
  .lp-access img.lp-access__title { width: calc(var(--w) * .82px); height: calc(var(--h) * .82px); }
}
