:root {
  --lp--black: #1e2020;
  --lp--primary: #4aaaa5;
  --lp--secondary: #dfcebf
}

.lp__wrap *,
.lp__wrap *::before,
.lp__wrap *::after {
  margin: 0;
  padding: 0;
  width: auto;
  height: auto;
  list-style: none;
  text-decoration: none;
  box-sizing: border-box;
  letter-spacing: 0;
  font-family: Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
  font-weight: normal;
  float: none;
  color: var(--lp--black);
  line-height: 100%
}

.lp__wrap *::before,
.lp__wrap *::after,
.lp__wrap *::before::before,
.lp__wrap *::before::after,
.lp__wrap *::after::before,
.lp__wrap *::after::after {
  content: "";
  display: block
}

.lp__wrap a {
  cursor: pointer
}

.lp__wrap a:hover {
  text-decoration: none
}

.lp__wrap a:hover picture,
.lp__wrap a:hover img {
  opacity: 1
}

.lp__wrap a:has(picture),
.lp__wrap a:has(img) {
  display: block
}

.lp__wrap a:has(picture) picture,
.lp__wrap a:has(picture) img,
.lp__wrap a:has(img) picture,
.lp__wrap a:has(img) img {
  transition: inherit
}

.lp__wrap button {
  cursor: pointer;
  border: 0
}

.lp__wrap picture,
.lp__wrap img {
  display: block
}

.lp__wrap iframe {
  background-color: #f0f0f0
}

.lp__wrap iframe.horizontal {
  aspect-ratio: 16/9
}

.lp__wrap iframe.vertical {
  aspect-ratio: 9/16
}

.lp__wrap summary {
  cursor: pointer
}

.wrapper,
.container {
  width: 100%;
  padding: 0
}

@media screen and (min-width: 769px) {
  .container {
    padding: 0
  }
}

@media screen and (max-width: 768px) {
  .container {
    padding: 0 15px
  }
}

.lp__wrap {
  width: min(1200px, 100%);
  margin: 0 auto
}

.lp__wrap.wide {
  width: 100%
}

.lp__wrap.wide .lp__row {
  width: min(1200px, 100%);
  margin: 0 auto
}

.lp__wrap:has(.lp__kv) {
  background-color: var(--lp--primary);
  color: #fff
}

.lp__wrap:has(.lp__kv) * {
  color: inherit
}

.lp__wrap .lp__kv picture {
  display: block;
  width: 100%
}

.lp__wrap .lp__kv picture img {
  height: 100%;
  width: 100%
}

.lp__wrap .lp__bbl {
  background-color: rgba(0, 0, 0, 0)
}

.lp__wrap .lp__lead {
  text-align: center
}

.lp__wrap .lp__lead h1 {
  font-weight: bold;
  font-feature-settings: "palt";
  letter-spacing: .06em;
  display: flex;
  flex-direction: column;
  align-items: center
}

.lp__wrap .lp__campaign-bnr {
  transition: all .3s;
}

.lp__wrap .lp__campaign-bnr:hover {
  opacity: .7;
}

.lp__wrap .lp__nav li,
.lp__wrap .lp__nav a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center
}

.lp__wrap .lp__nav a {
  background-color: #fff;
  color: var(--lp--primary);
  width: 100%;
  font-weight: bold
}

.lp__wrap .lp__nav a::after {
  content: "";
  display: block;
  border-bottom: 2px solid var(--lp--primary);
  border-right: 2px solid var(--lp--primary);
  transform: rotate(45deg)
}

.lp__wrap h2:has(picture) {
  display: flex;
  justify-content: center;
  align-items: center
}

.lp__wrap .lp__feature {
  width: min(768px, 100%);
  margin: 7% auto 0
}

.lp__wrap .lp__feature__list li {
  display: flex;
  flex-direction: column;
  align-items: center
}

.lp__wrap .lp__feature__list h2 {
  font-weight: bold;
  text-align: center
}

.lp__wrap .lp__reason {
  position: relative;
  background-color: #fff;
  color: var(--lp--black)
}

.lp__wrap .lp__reason * {
  color: inherit
}

.lp__wrap .lp__reason video {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .4
}

.lp__wrap .lp__reason>.lp__row {
  position: relative;
  z-index: 2;
  width: min(768px, 100%);
  margin: 0 auto
}

.lp__wrap .lp__voice {
  display: flex;
  flex-direction: column;
  align-items: center
}

.lp__wrap .lp__voice__swiper {
  position: relative
}

.lp__wrap .lp__voice__swiper .swiper-slide {
  background-color: #f9f9f9
}

.lp__wrap .lp__voice__swiper__btns {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  width: 100%;
  z-index: 2
}

.lp__wrap .lp__voice__swiper__btns .swiper-button {
  background-color: rgba(0, 0, 0, .4);
  left: unset;
  right: unset;
  top: unset;
  bottom: unset
}

.lp__wrap .lp__voice__swiper__btns .swiper-button::after {
  font-size: 0;
  border-top: 2px solid #fff
}

.lp__wrap .lp__voice__swiper__btns .swiper-button-prev {
  left: 0
}

.lp__wrap .lp__voice__swiper__btns .swiper-button-prev::after {
  border-left: 2px solid #fff;
  transform: rotate(-45deg)
}

.lp__wrap .lp__voice__swiper__btns .swiper-button-next {
  right: 0
}

.lp__wrap .lp__voice__swiper__btns .swiper-button-next::after {
  border-right: 2px solid #fff;
  transform: rotate(45deg)
}

.lp__wrap .lp__voice__swiper {
  overflow-x: clip;
  width: min(768px, 100%);
  margin: 0 auto
}

.lp__wrap .lp__lounge__lead {
  background-color: var(--lp--secondary)
}

.lp__wrap .lp__lounge__lead>div {
  width: min(768px, 100%);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center
}

.lp__wrap .lp__lounge__lead .lp__btn.is-filled.with-arrow {
  background-color: var(--lp--black);
  border-color: var(--lp--black);
  flex-direction: column
}

.lp__wrap .lp__lounge__lead .lp__btn.is-filled.with-arrow::after {
  right: unset;
  transform: rotate(135deg);
  border-top-color: var(--lp--black);
  border-right-color: var(--lp--black)
}

@media(hover: hover) {
  .lp__wrap .lp__lounge__lead .lp__btn.is-filled.with-arrow:hover {
    background-color: var(--lp--secondary);
    color: var(--lp--black)
  }

  .lp__wrap .lp__lounge__lead .lp__btn.is-filled.with-arrow:hover::after {
    border-top-color: var(--lp--black);
    border-right-color: var(--lp--black)
  }
}

.lp__wrap .lp__lineup__nav a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: 2px solid var(--lp--primary);
  border-radius: 50vw;
  aspect-ratio: 1/1;
  text-align: center;
  font-weight: bold;
  color: var(--lp--primary);
  position: relative
}

.lp__wrap .lp__lineup__nav a::after {
  content: "";
  display: block;
  border-bottom: 2px solid var(--lp--primary);
  border-right: 2px solid var(--lp--primary);
  transform: rotate(45deg);
  position: absolute
}

.lp__wrap .lp__lineup__media {
  position: relative
}

.lp__wrap .lp__lineup__type {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2
}

.lp__wrap .lp__lineup__swiper {
  overflow-x: clip;
  position: relative
}

.lp__wrap .lp__lineup__swiper__btns {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  width: 100%;
  z-index: 2
}

.lp__wrap .lp__lineup__swiper__btns .swiper-button {
  background-color: rgba(0, 0, 0, .4);
  left: unset;
  right: unset
}

.lp__wrap .lp__lineup__swiper__btns .swiper-button::after {
  font-size: 0;
  border-top: 2px solid #fff
}

.lp__wrap .lp__lineup__swiper__btns .swiper-button-prev {
  left: 0
}

.lp__wrap .lp__lineup__swiper__btns .swiper-button-prev::after {
  border-left: 2px solid #fff;
  transform: rotate(-45deg)
}

.lp__wrap .lp__lineup__swiper__btns .swiper-button-next {
  right: 0
}

.lp__wrap .lp__lineup__swiper__btns .swiper-button-next::after {
  border-right: 2px solid #fff;
  transform: rotate(45deg)
}

.lp__wrap .lp__lineup__details .lp__lineup__tag {
  display: flex;
  align-items: center
}

.lp__wrap .lp__lineup__details .lp__lineup__tag span {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid var(--lp--black)
}

.lp__wrap .lp__lineup__details .lp__lineup__tag span.rev {
  background-color: var(--lp--black);
  color: #fff
}

.lp__wrap .lp__lineup__details .lp__lineup__lead {
  font-weight: bold
}

.lp__wrap .lp__lineup__details h3 {
  font-weight: bold
}

.lp__wrap .lp__lineup__details .lp__lineup__colors {
  display: flex;
  align-items: center
}

.lp__wrap .lp__lineup__details .lp__lineup__colors span {
  display: block;
  border-radius: 50vw;
  aspect-ratio: 1/1
}

.lp__wrap .lp__lineup__details .lp__lineup__colors .navy {
  background-color: #435374
}

.lp__wrap .lp__lineup__details .lp__lineup__colors .black {
  background-color: #242424
}

.lp__wrap .lp__lineup__details .lp__lineup__colors .beige {
  background-color: #d7d7d7
}

.lp__wrap .lp__lineup__details .lp__lineup__colors .pink {
  background-color: #cf879d
}

.lp__wrap .lp__lineup__details .lp__lineup__colors .light-gray {
  background-color: #dedede
}

.lp__wrap .lp__lineup__details .lp__lineup__colors .brown {
  background-color: #7B3D00
}

.lp__wrap .lp__lineup__details .lp__lineup__colors .white {
  background-color: #fff;
  border: 1px solid #ccc
}

.lp__wrap .lp__lineup__details .lp__lineup__price {
  display: flex;
  align-items: baseline
}

.lp__wrap .lp__lineup__details .lp__lineup__price p {
  font-weight: bold
}

.lp__wrap .lp__lineup__details .lp__lineup__btns {
  display: flex;
  flex-direction: column
}

.lp__wrap .lp__lineup__details .lp__lineup__btns .lp__btn {
  margin-left: 0
}

.lp__wrap .lp__lineup__details .lp__lineup__btns .lp__btn.coming-soon {
  background-color: var(--lp--black);
  border-color: var(--lp--black);
  color: #fff;
  pointer-events: none;
  user-select: none
}

.lp__wrap .lp__lineup__details .lp__lineup__btns .lp__btn.coming-soon::after {
  display: none
}

.lp__wrap .lp__lineup__lounge {
  background-color: var(--lp--secondary);
  color: var(--lp--black)
}

.lp__wrap .lp__lineup__lounge hgroup {
  display: flex;
  flex-direction: column;
  align-items: center
}

.lp__wrap .lp__lineup__lounge hgroup p,
.lp__wrap .lp__lineup__lounge hgroup h2 {
  font-weight: bold
}

.lp__wrap .lp__lineup__lounge * {
  color: inherit
}

.lp__wrap .lp__lineup__lounge h3 {
  text-align: center;
  font-weight: bold
}

.lp__wrap .lp__lineup__lounge__swiper {
  overflow-x: clip
}

.lp__wrap .lp__lineup__lounge__lead {
  text-align: center
}

.lp__wrap .lp__lineup__lounge__list {
  width: min(1200px, 100%);
  margin: 0 auto
}

.lp__wrap .lp__lineup__lounge__list li {
  display: flex;
  flex-direction: column
}

.lp__wrap .lp__lineup__lounge__list__ttl {
  display: flex;
  align-items: center
}

.lp__wrap .lp__lineup__lounge__list__ttl h4 {
  font-weight: bold
}

.lp__wrap .lp__lineup__lounge__list__tag {
  display: flex;
  align-items: center
}

.lp__wrap .lp__lineup__lounge__list__tag span {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid var(--lp--black)
}

.lp__wrap .lp__lineup__lounge__list__colors {
  display: flex;
  align-items: center
}

.lp__wrap .lp__lineup__lounge__list__colors span {
  display: block;
  aspect-ratio: 1/1;
  border-radius: 50vw
}

.lp__wrap .lp__lineup__lounge__list__colors .black {
  background-color: #242424
}

.lp__wrap .lp__lineup__lounge__list__colors .gray {
  background-color: #9d948e
}

.lp__wrap .lp__lineup__lounge__list__colors .white {
  background-color: #fff
}

.lp__wrap .lp__lineup__lounge__list__price {
  display: flex;
  align-items: baseline
}

.lp__wrap .lp__lineup__lounge__list__price p {
  font-weight: bold
}

.lp__wrap .lp__lineup__lounge__list__btns {
  display: flex;
  flex-direction: column
}

.lp__wrap .lp__certificate {
  display: flex;
  flex-direction: column;
  align-items: center
}

.lp__wrap .lp__certificate p {
  text-align: center
}

.lp__wrap .lp__certificate a {
  line-height: 140%
}

.lp__wrap .lp__gift {
  width: min(768px, 100%);
  margin: 0 auto;
  display: flex;
  flex-direction: column
}

.lp__wrap .lp__faq {
  width: min(768px, 100%);
  margin: 0 auto;
  display: flex;
  flex-direction: column
}

.lp__wrap .lp__faq li {
  border-bottom: 1px dashed var(--lp--black)
}

.lp__wrap .lp__faq li:last-of-type {
  border-bottom: none
}

.lp__wrap .lp__faq details summary {
  position: relative
}

.lp__wrap .lp__faq details summary span {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  right: 0;
  top: 0;
  aspect-ratio: 1/1
}

.lp__wrap .lp__faq details summary span::before,
.lp__wrap .lp__faq details summary span::after {
  content: "";
  display: block
}

.lp__wrap .lp__faq details summary span::before {
  width: 100%;
  height: 2px;
  background-color: var(--lp--black)
}

.lp__wrap .lp__faq details summary span::after {
  height: 100%;
  width: 2px;
  background-color: var(--lp--black)
}

.lp__wrap .lp__faq details[open] summary span {
  transform: rotate(45deg)
}

.lp__wrap .lp__faq details a {
  text-decoration: underline
}

.lp__wrap .lp__modal__wrap {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: -1;
  opacity: 0;
  background-color: rgba(0, 0, 0, .5333);
  display: flex;
  justify-content: center;
  overscroll-behavior: contain;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.lp__wrap .lp__modal__wrap::-webkit-scrollbar {
  display: none
}

.lp__wrap .lp__modal__wrap::before {
  content: "";
  display: block;
  background-color: rgba(0, 0, 0, 0);
  width: 1px;
  height: calc(100vh + 1px)
}

.lp__wrap .lp__modal__wrap.is-open-size {
  animation: modal .4s ease forwards
}

@keyframes modal {
  0% {
    z-index: -1;
    opacity: 0
  }

  50% {
    z-index: 99;
    opacity: .5
  }

  100% {
    opacity: 1;
    z-index: 99
  }
}

.lp__wrap .lp__modal__wrap div[data-size-item] {
  display: none;
  opacity: 0;
  height: calc(100% - 80px);
  margin-top: 40px;
  margin-bottom: 40px;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.lp__wrap .lp__modal__wrap div[data-size-item]::-webkit-scrollbar {
  display: none
}

.lp__wrap .lp__modal__wrap div[data-size-item] img {
  background-color: #fff
}

.lp__wrap .lp__modal__wrap div[data-size-item].is-active {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  opacity: 1;
  overflow-y: scroll
}

.lp__wrap .lp__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: relative;
  margin: 0 auto;
  border: 2px solid var(--lp--primary);
  border-radius: 50vw;
  font-weight: bold;
  text-decoration: none;
  transition: .3s ease-in
}

.lp__wrap .lp__btn::after {
  content: "";
  display: block;
  position: absolute;
  transition: inherit
}

.lp__wrap .lp__btn.with-triangle::after {
  clip-path: polygon(0 0, 0% 100%, 100% 50%)
}

.lp__wrap .lp__btn.with-arrow::after {
  border-top-width: 2px;
  border-top-style: solid;
  border-right-width: 2px;
  border-right-style: solid;
  transform: rotate(45deg);
  aspect-ratio: 1/1
}

.lp__wrap .lp__btn.is-filled {
  background-color: var(--lp--primary);
  color: #fff
}

.lp__wrap .lp__btn.is-filled.with-triangle::after {
  background-color: #fff
}

.lp__wrap .lp__btn.is-filled.with-arrow::after {
  border-top-color: #fff;
  border-right-color: #fff
}

@media(hover: hover) {
  .lp__wrap .lp__btn.is-filled:hover {
    background-color: #fff;
    color: var(--lp--primary)
  }

  .lp__wrap .lp__btn.is-filled:hover.with-triangle::after {
    background-color: var(--lp--primary)
  }

  .lp__wrap .lp__btn.is-filled:hover.with-arrow::after {
    border-top-color: var(--lp--primary);
    border-right-color: var(--lp--primary)
  }
}

.lp__wrap .lp__btn.with-border {
  background-color: #fff;
  color: var(--lp--primary)
}

.lp__wrap .lp__btn.with-border.with-triangle::after {
  background-color: var(--lp--primary)
}

.lp__wrap .lp__btn.with-border.with-arrow::after {
  border-top-color: var(--lp--primary);
  border-right-color: var(--lp--primary)
}

@media(hover: hover) {
  .lp__wrap .lp__btn.with-border:hover {
    background-color: var(--lp--primary);
    color: #fff
  }

  .lp__wrap .lp__btn.with-border:hover.with-triangle::after {
    background-color: #fff
  }

  .lp__wrap .lp__btn.with-border:hover.with-arrow::after {
    border-top-color: #fff;
    border-right-color: #fff
  }
}

.lp__wrap .lp__btn:has(span) span {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute
}

.lp__wrap .lp__btn:has(span) span::before,
.lp__wrap .lp__btn:has(span) span::after {
  content: "";
  display: block;
  background-color: #fff
}

.lp__wrap .lp__btn:has(span) span::before {
  width: 2px;
  height: 100%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%)
}

.lp__wrap .lp__btn:has(span) span::after {
  width: 100%;
  height: 2px
}

.lp__wrap .lp__recommend {
  width: min(1200px, 100%);
  margin: 0 auto
}

.lp__wrap .lp__recommend h2 {
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center
}

.lp__wrap .lp__recommend-links {
  width: 100%;
  display: grid
}

.lp__wrap .lp__recommend-links a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  transition: .4s ease-in-out;
  aspect-ratio: 1/1
}

.lp__wrap .lp__recommend-links a img {
  width: 100%;
  height: 100%;
  display: block
}

#bottom_recommend_area .bottom_newitem {
  display: none;
}

@media(hover: hover) {
  .lp__wrap .lp__recommend-links a:hover {
    opacity: .7
  }
}

@media screen and (min-width: 769px) {
  .lp__wrap .lp__kv {
    height: 500px;
    width: min(1200px, 100%);
    margin: 0 auto
  }

  .lp__wrap .lp__kv picture,
  .lp__wrap .lp__kv img {
    height: 100%
  }

  .lp__wrap .lp__bbl {
    width: 212px;
    height: 212px;
    margin-top: -160px;
    margin-left: -60px
  }

  .lp__wrap .lp__lead {
    margin-top: 40px
  }

  .lp__wrap .lp__lead h1 {
    font-size: 32px;
    gap: 26px
  }

  .lp__wrap .lp__lead h1 span {
    font-size: 20px
  }

  .lp__wrap .lp__lead p {
    font-size: 17px;
    line-height: 170%;
    margin-top: 32px
  }

  .lp__wrap .lp__campaign-bnr {
    width: min(100%, 768px);
    margin: 64px auto 0;
  }

  .lp__wrap .lp__nav {
    margin-top: 64px
  }

  .lp__wrap .lp__nav ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px
  }

  .lp__wrap .lp__nav a {
    font-size: 26px;
    height: 104px;
    gap: 6px
  }

  .lp__wrap .lp__nav a::after {
    width: 10px;
    height: 10px
  }

  .lp__wrap .lp__feature {
    margin-top: 72px;
    padding-bottom: 72px
  }

  .lp__wrap .lp__feature__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 48px;
    gap: 60px
  }

  .lp__wrap .lp__feature__list img {
    width: 104px;
    height: 104px
  }

  .lp__wrap .lp__feature__list h2 {
    font-size: 20px;
    line-height: 130%
  }

  .lp__wrap .lp__feature__list p {
    font-size: 15px;
    line-height: 190%;
    margin-top: 16px
  }

  .lp__wrap .lp__reason {
    padding-top: 92px;
    padding-bottom: 72px
  }

  .lp__wrap .lp__reason h2 {
    margin-bottom: 32px
  }

  .lp__wrap .lp__reason p {
    font-size: 18px;
    line-height: 200%;
    margin-top: 32px
  }

  .lp__wrap .lp__reason p span {
    font-size: 16px;
    line-height: 180%;
    margin-top: 16px
  }

  .lp__wrap .lp__voice {
    margin-top: 130px
  }

  .lp__wrap .lp__voice__rate {
    margin-top: 14px
  }

  .lp__wrap .lp__voice__txt {
    margin-top: 24px
  }

  .lp__wrap .lp__voice__swiper {
    margin-top: 24px
  }

  .lp__wrap .lp__voice__swiper .swiper-slide {
    background-color: #f9f9f9
  }

  .lp__wrap .lp__voice__swiper__btns {
    height: 42px
  }

  .lp__wrap .lp__voice__swiper__btns .swiper-button {
    width: 32px;
    height: 42px
  }

  .lp__wrap .lp__voice__swiper__btns .swiper-button::after {
    width: 10px;
    height: 10px
  }

  .lp__wrap .lp__voice__one__inner {
    display: grid;
    grid-template-columns: auto 88px;
    padding: 40px 44px;
    gap: 24px
  }

  .lp__wrap .lp__voice__one__inner p {
    font-size: 16px;
    line-height: 180%
  }

  .lp__wrap .lp__lounge__lead {
    margin-top: 120px;
    padding-top: 72px;
    padding-bottom: 80px
  }

  .lp__wrap .lp__lounge__lead .lp__btn {
    margin-top: 16px;
    width: min(228px, 100%);
    height: 58px;
    font-size: 14px
  }

  .lp__wrap .lp__lounge__lead .lp__btn::after {
    margin-top: 90px
  }

  .lp__wrap .lp__lounge__lead__txt {
    margin-top: 32px
  }

  .lp__wrap .lp__lounge__lead__txt+picture {
    margin-top: 32px
  }

  .lp__wrap .lp__lineup__lounge__list {
    margin-top: 80px
  }

  .lp__wrap .lp__lineup__lounge__list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px
  }

  .lp__wrap .lp__lineup {
    margin-top: 80px
  }

  .lp__wrap .lp__lineup__nav {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-top: 40px;
    margin-bottom: 130px
  }

  .lp__wrap .lp__lineup__nav a {
    width: 128px;
    height: 128px;
    font-size: 15px;
    line-height: 140%
  }

  .lp__wrap .lp__lineup__nav a::after {
    width: 8px;
    height: 8px;
    bottom: 20px
  }

  .lp__wrap .lp__lineup__one {
    display: grid;
    grid-template-columns: 544px auto;
    gap: 56px;
    align-items: center
  }

  .lp__wrap .lp__lineup__one+.lp__lineup__one {
    margin-top: 120px
  }

  .lp__wrap .lp__lineup__type {
    right: -10px;
    top: 14px
  }

  .lp__wrap .copy {
    margin-top: 8px;
    font-size: 13px;
  }

  .lp__wrap .lp__lineup__swiper__btns .swiper-button {
    width: 32px;
    height: 42px
  }

  .lp__wrap .lp__lineup__swiper__btns .swiper-button::after {
    width: 10px;
    height: 10px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__tag {
    gap: 6px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__tag span {
    font-size: 16px;
    padding: 5px 8px 4px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__lead {
    font-size: 20px;
    margin-top: 18px
  }

  .lp__wrap .lp__lineup__details h3 {
    font-size: 32px;
    line-height: 140%;
    margin-top: 18px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__colors {
    gap: 10px;
    margin-top: 16px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__colors span {
    width: 30px;
    height: 30px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__price {
    margin-top: 18px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__price p:first-of-type {
    font-size: 26px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__price p:nth-of-type(2) {
    font-size: 16px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__txt {
    font-size: 18px;
    line-height: 200%;
    margin-top: 24px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__snoopy {
    margin-top: 18px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__imgs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-top: 30px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__btns {
    margin-top: 40px;
    gap: 16px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__btns .lp__btn {
    margin-top: 0
  }

  .lp__wrap .lp__lineup__details .lp__lineup__att {
    font-size: 14px;
    margin-top: 32px
  }

  .lp__wrap .lp__lineup__lounge {
    padding-top: 110px;
    padding-bottom: 120px
  }

  .lp__wrap .lp__lineup__lounge hgroup {
    gap: 18px;
    margin-bottom: 48px
  }

  .lp__wrap .lp__lineup__lounge hgroup p {
    font-size: 20px
  }

  .lp__wrap .lp__lineup__lounge hgroup h2 {
    font-size: 32px
  }

  .lp__wrap .lp__lineup__lounge .swiper-wrapper {
    gap: 10px
  }

  .lp__wrap .lp__lineup__lounge h3 {
    font-size: 32px;
    margin-top: 80px
  }

  .lp__wrap .lp__lineup__lounge__lead {
    font-size: 18px;
    line-height: 200%;
    margin-top: 64px
  }

  .lp__wrap .lp__lineup__subttl {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 180px;
    margin-bottom: 62px
  }

  .lp__wrap .lp__lineup__lounge__list__detail {
    padding: 32px 10px 0
  }

  .lp__wrap .lp__lineup__lounge__list__ttl {
    gap: 12px;
    margin-bottom: 16px
  }

  .lp__wrap .lp__lineup__lounge__list__tag {
    gap: 8px
  }

  .lp__wrap .lp__lineup__lounge__list__tag span {
    font-size: 13px;
    padding: 4px 8px 5px
  }

  .lp__wrap .lp__lineup__lounge__list__colors {
    gap: 10px
  }

  .lp__wrap .lp__lineup__lounge__list__colors span {
    width: 30px;
    height: 30px
  }

  .lp__wrap .lp__lineup__lounge__list__price {
    margin-top: 18px
  }

  .lp__wrap .lp__lineup__lounge__list__price p:first-of-type {
    font-size: 26px
  }

  .lp__wrap .lp__lineup__lounge__list__price p:nth-of-type(2) {
    font-size: 16px
  }

  .lp__wrap .lp__lineup__lounge__list__btns {
    gap: 14px;
    margin-top: 32px
  }

  .lp__wrap .lp__lineup__lounge__list__btns .lp__btn {
    width: 100%
  }

  .lp__wrap .lp__lineup__lounge__list__btns .lp__btn+.lp__btn {
    margin-top: 0
  }

  .lp__wrap .lp__certificate {
    margin-top: 60px
  }

  .lp__wrap .lp__certificate p {
    font-size: 14px;
    line-height: 140%
  }

  .lp__wrap .lp__certificate p:first-of-type {
    margin-bottom: 6px
  }

  .lp__wrap .lp__certificate a {
    margin-bottom: 60px
  }

  .lp__wrap .lp__gift {
    margin-top: 112px
  }

  .lp__wrap .lp__gift h2 {
    margin-bottom: 48px
  }

  .lp__wrap .lp__gift p {
    font-size: 18px;
    line-height: 200%;
    margin-top: 28px
  }

  .lp__wrap .lp__gift .lp__btn {
    margin-top: 48px
  }

  .lp__wrap .lp__faq {
    margin-top: 130px;
    gap: 58px
  }

  .lp__wrap .lp__faq li {
    padding: 0 15px
  }

  .lp__wrap .lp__faq details {
    line-height: 180%;
    padding: 24px 0 22px
  }

  .lp__wrap .lp__faq details summary {
    font-size: 18px
  }

  .lp__wrap .lp__faq details summary span {
    width: 16px;
    height: 16px
  }

  .lp__wrap .lp__faq details summary span::after {
    position: absolute;
    right: 7px
  }

  .lp__wrap .lp__faq details div {
    font-size: 16px;
    margin-top: 12px
  }

  .lp__wrap .lp__faq details * {
    line-height: inherit
  }

  .lp__wrap .lp__btn {
    width: 464px;
    height: 70px;
    font-size: 18px
  }

  .lp__wrap .lp__btn.with-triangle::after {
    right: 28px;
    width: 15px;
    height: 18px
  }

  .lp__wrap .lp__btn.with-arrow::after {
    right: 34px;
    width: 10px;
    height: 10px
  }

  .lp__wrap .lp__btn:has(span) span {
    width: 15px;
    height: 15px;
    right: 28px
  }

  .lp__wrap .lp__btn+.lp__btn {
    margin-top: 24px
  }

  .lp__wrap .lp__recommend {
    margin-top: 120px
  }

  .lp__wrap .lp__recommend h2 {
    font-size: 26px;
    margin-bottom: 46px
  }

  .lp__wrap .lp__recommend h2::before,
  .lp__wrap .lp__recommend h2::after {
    content: "";
    display: block;
    background: var(--lp--black);
    height: 2px;
    width: 120px
  }

  .lp__wrap .lp__recommend h2::before {
    margin-right: 20px
  }

  .lp__wrap .lp__recommend h2::after {
    margin-left: 20px
  }

  .lp__wrap .lp__recommend-links {
    grid-template-columns: repeat(4, 1fr);
    column-gap: 24px
  }

  .lp__wrap .show_sp {
    display: none
  }

  #bottom_recommend_area {
    padding-top: 60px !important;
  }
}

@media screen and (max-width: 768px) {
  .lp__wrap .lp__kv picture {
    height: 100vw;
    aspect-ratio: 1/1
  }

  .lp__wrap .lp__kv picture img {
    width: 100%;
    height: 100%;
    aspect-ratio: inherit
  }

  .lp__wrap .lp__bbl {
    width: 22vw;
    height: 22vw;
    margin-top: -19vw;
    margin-left: 15px
  }

  .lp__wrap .lp__lead {
    margin-top: min(8vw, 50px);
    padding: 0 15px
  }

  .lp__wrap .lp__lead h1 {
    font-size: clamp(16px, 4.44vw, 22px);
    line-height: 200%
  }

  .lp__wrap .lp__lead h1 span {
    font-size: 70%
  }

  .lp__wrap .lp__lead h1:has(br) {
    line-height: 140%
  }

  .lp__wrap .lp__lead p {
    font-size: clamp(12px, 3.33vw, 15px);
    line-height: 180%;
    margin-top: 16px;
    text-align: left
  }

  .lp__wrap .lp__campaign-bnr {
    width: 100%;
    margin: min(56px, 10vw) auto 0;
    padding: 0 15px;
  }

  .lp__wrap .lp__nav {
    padding: 0 15px;
    margin-top: min(56px, 10vw)
  }

  .lp__wrap .lp__nav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 32px 10px
  }

  .lp__wrap .lp__nav li {
    width: calc(50% - 5px)
  }

  .lp__wrap .lp__nav a {
    font-size: clamp(14px, 3.3vw, 20px);
    height: clamp(54px, 15vw, 88px);
    gap: 6px
  }

  .lp__wrap .lp__nav a::after {
    width: 8px;
    height: 8px
  }

  .lp__wrap h2.is-1-line,
  .lp__wrap h2.is-2-line {
    display: flex;
    justify-content: center;
    align-items: center
  }

  .lp__wrap h2.is-1-line picture,
  .lp__wrap h2.is-2-line picture {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%
  }

  .lp__wrap h2.is-1-line img,
  .lp__wrap h2.is-2-line img {
    height: 100%
  }

  .lp__wrap h2.is-1-line {
    height: clamp(22px, 6vw, 34px)
  }

  .lp__wrap h2.is-2-line {
    height: calc(clamp(22px, 6vw, 34px)*2.4)
  }

  .lp__wrap .lp__feature {
    padding: 0 15px
  }

  .lp__wrap .lp__feature__list {
    display: flex;
    flex-direction: column;
    gap: 4vw;
    margin-top: 8vw;
    padding-bottom: 12vw
  }

  .lp__wrap .lp__feature__list h2 {
    font-size: clamp(16px, 5vw, 22px);
    line-height: 150%
  }

  .lp__wrap .lp__feature__list p {
    font-size: clamp(13px, 3.3vw, 16px);
    line-height: 170%
  }

  .lp__wrap .lp__reason {
    padding: 10vw 15px
  }

  .lp__wrap .lp__reason h2 {
    margin-bottom: 4vw
  }

  .lp__wrap .lp__reason p {
    font-size: clamp(13px, 3.3vw, 16px);
    line-height: 200%;
    margin-top: 20px
  }

  .lp__wrap .lp__voice {
    padding: 10vw 15px
  }

  .lp__wrap .lp__voice__one__inner {
    padding: 20px 30px;
    display: flex;
    flex-direction: row-reverse;
    align-items: start;
    gap: 10px
  }

  .lp__wrap .lp__voice__one__inner img {
    width: min(60px, 20vw)
  }

  .lp__wrap .lp__voice__one__inner p {
    font-size: clamp(13px, 3.3vw, 16px);
    line-height: 150%
  }

  .lp__wrap .lp__voice__rate {
    margin-top: 4vw
  }

  .lp__wrap .lp__voice__txt {
    margin-top: 3vw
  }

  .lp__wrap .lp__voice__swiper {
    margin-top: 6vw
  }

  .lp__wrap .lp__voice__swiper__btns {
    height: 40px
  }

  .lp__wrap .lp__voice__swiper__btns .swiper-button {
    width: 24px;
    height: 40px
  }

  .lp__wrap .lp__voice__swiper__btns .swiper-button::after {
    width: 7px;
    height: 7px
  }

  .lp__wrap .lp__lounge__lead {
    padding: 10vw 15px 15vw
  }

  .lp__wrap .lp__lounge__lead .lp__btn {
    margin-top: 7vw
  }

  .lp__wrap .lp__lounge__lead .lp__btn::after {
    bottom: -20px
  }

  .lp__wrap .lp__lounge__lead__txt {
    margin-top: 5vw;
    margin-bottom: 7vw
  }

  .lp__wrap .lp__lineup {
    padding-top: 12vw
  }

  .lp__wrap .lp__lineup__nav {
    padding: 0 15px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
    margin-top: 6vw;
    margin-bottom: 10vw;
    width: min(520px, 100%);
    margin-left: auto;
    margin-right: auto
  }

  .lp__wrap .lp__lineup__nav a {
    font-size: clamp(13px, 4vw, 18px);
    line-height: 140%
  }

  .lp__wrap .lp__lineup__nav a::after {
    width: 8px;
    height: 8px;
    bottom: 14px
  }

  .lp__wrap .lp__lineup__one {
    padding: 0 15px;
    display: flex;
    flex-direction: column;
    gap: 5vw
  }

  .lp__wrap .lp__lineup__one+.lp__lineup__one {
    margin-top: 15vw
  }

  .lp__wrap .lp__lineup__media img {
    width: 100%
  }

  .lp__wrap .lp__lineup__swiper__btns {
    height: 40px
  }

  .lp__wrap .lp__lineup__swiper__btns .swiper-button {
    width: 24px;
    height: 40px
  }

  .lp__wrap .lp__lineup__swiper__btns .swiper-button::after {
    width: 7px;
    height: 7px
  }

  .lp__wrap .lp__lineup__type {
    right: -10px;
    top: -10px;
    width: 100px;
    height: 100px
  }

  .lp__wrap .copy {
    margin-top: 1%;
    font-size: clamp(10px, 3vw, 13px);
  }

  .lp__wrap .lp__lineup__details h3 {
    font-size: clamp(20px, 5.5vw, 32px);
    line-height: 140%
  }

  .lp__wrap .lp__lineup__details>p {
    font-size: clamp(13px, 3.3vw, 16px);
    line-height: 180%;
    margin-top: 10px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__btns {
    margin-top: 20px
  }

  .lp__wrap .lp__lineup__details .lp__lineup__btns .lp__btn {
    margin-left: auto
  }

  .lp__wrap .lp__lineup__tag {
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px
  }

  .lp__wrap .lp__lineup__tag span {
    font-size: clamp(13px, 3vw, 15px);
    padding: 4px 8px
  }

  .lp__wrap .lp__lineup__imgs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 4px;
    margin-top: 7vw
  }

  .lp__wrap .lp__lineup__colors {
    gap: 6px;
    margin-top: 6px;
    margin-bottom: 10px
  }

  .lp__wrap .lp__lineup__colors span {
    width: 24px;
    height: 24px
  }

  .lp__wrap .lp__lineup__price p:first-of-type {
    font-size: clamp(20px, 5.5vw, 32px)
  }

  .lp__wrap .lp__lineup__price p:nth-of-type(2) {
    font-size: calc(clamp(20px, 5.5vw, 32px)*.5)
  }

  .lp__wrap .lp__lineup__subttl {
    padding: 0 15px;
    margin-top: 20vw;
    margin-bottom: 10vw
  }

  .lp__wrap .lp__lineup__subttl img {
    width: min(540px, 100%);
    margin: 0 auto
  }

  .lp__wrap .lp__lineup__lounge {
    padding-top: 10vw;
    padding-bottom: 10vw
  }

  .lp__wrap .lp__lineup__lounge .lp__row {
    padding: 0 15px
  }

  .lp__wrap .lp__lineup__lounge hgroup:has(h2) {
    gap: 10px;
    margin-bottom: 25px
  }

  .lp__wrap .lp__lineup__lounge hgroup:has(h2) p {
    font-size: clamp(14px, 4vw, 18px)
  }

  .lp__wrap .lp__lineup__lounge hgroup:has(h2) h2 {
    font-size: clamp(18px, 5.8vw, 32px)
  }

  .lp__wrap .lp__lineup__lounge h3 {
    font-size: clamp(19px, 5.8vw, 30px);
    line-height: 150%
  }

  .lp__wrap .lp__lineup__lounge__lead {
    padding: 0 15px;
    font-size: clamp(12px, 3.3vw, 16px);
    line-height: 150%;
    margin-top: 20px;
    margin-bottom: 20px
  }

  .lp__wrap .lp__lineup__lounge__list {
    padding: 0 15px;
    margin-top: 10vw
  }

  .lp__wrap .lp__lineup__lounge__list ul {
    display: flex;
    flex-direction: column;
    gap: 15vw
  }

  .lp__wrap .lp__lineup__lounge__list li {
    display: flex;
    flex-direction: column;
    gap: 5vw
  }

  .lp__wrap .lp__lineup__lounge__list li img {
    width: 100%
  }

  .lp__wrap .lp__lineup__lounge__list__ttl {
    flex-direction: column-reverse;
    align-items: start
  }

  .lp__wrap .lp__lineup__lounge__list__ttl h4 {
    font-size: clamp(20px, 5.5vw, 32px)
  }

  .lp__wrap .lp__lineup__lounge__list__tag {
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px
  }

  .lp__wrap .lp__lineup__lounge__list__tag span {
    font-size: clamp(13px, 3vw, 15px);
    padding: 4px 8px
  }

  .lp__wrap .lp__lineup__lounge__list__price {
    margin-top: 10px
  }

  .lp__wrap .lp__lineup__lounge__list__price p:first-of-type {
    font-size: clamp(20px, 5.5vw, 32px)
  }

  .lp__wrap .lp__lineup__lounge__list__price p:nth-of-type(2) {
    font-size: calc(clamp(20px, 5.5vw, 32px)*.5)
  }

  .lp__wrap .lp__lineup__lounge__list__btns {
    margin-top: 20px
  }

  .lp__wrap .lp__certificate {
    padding: 0 15px;
    align-items: start;
    gap: 6px;
    margin-top: 8vw
  }

  .lp__wrap .lp__certificate p {
    text-align: left;
    font-size: clamp(12px, 3vw, 14px);
    line-height: 140%
  }

  .lp__wrap .lp__certificate a {
    margin-bottom: 8vw
  }

  .lp__wrap .lp__gift {
    padding: 0 15px;
    margin-top: 10vw
  }

  .lp__wrap .lp__gift h2 {
    margin-bottom: 5vw
  }

  .lp__wrap .lp__gift>p {
    font-size: clamp(13px, 3.3vw, 16px);
    line-height: 170%;
    margin-top: 15px;
    margin-bottom: 15px
  }

  .lp__wrap .lp__faq {
    padding: 0 15px;
    margin-top: 10vw
  }

  .lp__wrap .lp__faq li {
    padding: 24px 0
  }

  .lp__wrap .lp__faq details summary {
    font-size: clamp(13px, 3.3vw, 16px);
    line-height: 170%;
    padding-right: 20px
  }

  .lp__wrap .lp__faq details summary span {
    width: 12px;
    height: 12px
  }

  .lp__wrap .lp__faq details summary span:after {
    position: absolute;
    right: 5px
  }

  .lp__wrap .lp__faq details div {
    font-size: calc(clamp(13px, 3.3vw, 16px)*.9);
    line-height: 170%;
    margin-top: 6px
  }

  .lp__wrap .lp__modal__wrap {
    padding-right: 20px;
    padding-left: 20px
  }

  .lp__wrap .lp__modal__wrap div {
    overflow-x: scroll
  }

  .lp__wrap .lp__btn {
    width: clamp(400px, 80%, 464px);
    height: min(70px, 15.56vw);
    font-size: clamp(14px, 4vw, 18px)
  }

  .lp__wrap .lp__btn.with-triangle::after {
    right: min(28px, 4vw);
    height: min(16px, 3.5vw);
    width: min(14px, 3vw)
  }

  .lp__wrap .lp__btn.with-arrow:after {
    right: min(32px, 4.8vw);
    width: min(10px, 2.8vw);
    height: min(10px, 2.8vw)
  }

  .lp__wrap .lp__btn:has(span) span {
    width: min(14px, 3vw);
    height: min(14px, 3vw);
    right: min(28px, 4vw)
  }

  .lp__wrap .lp__btn+.lp__btn {
    margin-top: clamp(12px, 3.56vw, 22px)
  }

  .lp__wrap .lp__recommend {
    margin-top: clamp(40px, 16vw, 80px)
  }

  .lp__wrap .lp__recommend h2 {
    font-size: clamp(17px, 4.89vw, 26px);
    margin-bottom: 4vw
  }

  .lp__wrap .lp__recommend h2::before,
  .lp__wrap .lp__recommend h2::after {
    display: none
  }

  .lp__wrap .lp__recommend .lp__recommend-links {
    grid-template-columns: repeat(2, min(282px, 48.5%));
    grid-template-rows: repeat(2, 1fr);
    gap: max(3%, 10px) 3%;
    justify-content: center
  }

  .lp__wrap .lp__recommend .lp__recommend-links a {
    width: 100%;
    height: auto
  }

  .lp__wrap .lp__recommend .lp__recommend-links a img {
    object-fit: contain
  }

  .lp__wrap .show_pc {
    display: none
  }

  #bottom_recommend_area {
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 0 !important;
  }
}

@media screen and (max-width: 450px) {
  .lp__wrap .lp__btn {
    width: 100%
  }
}

#martha-app:has(.lp__wrap.wide) {
  max-width: none;
  width: 100%
}

#martha-app:has(.lp__wrap.wide) .container,
#martha-app:has(.lp__wrap.wide) .wrapper {
  max-width: none;
  width: 100%
}

#martha-app:has(.lp__wrap.wide) .container {
  padding: 0
}

#martha-app:has(.lp__wrap.wide) .lp__wrap.wide {
  padding: 0;
  width: 100%
}

#martha-app:has(.lp__wrap.wide) .lp__inner {
  width: min(1230px, 100%);
  padding: 0 15px;
  margin: 0 auto
}

#martha-app:has(.lp__wrap.wide) .topicModuleCredit {
  width: min(900px, 100%);
  margin: 0 auto
}

#martha-app:has(.lp__wrap.wide) .topicModuleCredit__priceItem {
  width: 100%;
  margin-right: 0
}

@media screen and (min-width: 769px) {
  #martha-app:has(.lp__wrap.wide) .topicModuleCredit__priceList {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 12px
  }

  #martha-app:has(.lp__wrap.wide) .topicModuleCredit__priceList:has(.topicModuleCredit__priceItem:nth-of-type(7)) {
    justify-content: start
  }

  #martha-app:has(.lp__wrap.wide) .topicModuleCredit__priceItem {
    width: calc(16.6666666667% - 10px)
  }
}

@media screen and (max-width: 768px) {
  #martha-app:has(.lp__wrap.wide) .topicModuleCredit {
    padding: 0 15px
  }

  #martha-app:has(.lp__wrap.wide) .topicModuleCredit__priceList {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px
  }
}

/*# sourceMappingURL=style_250905.css.map */
.lp__lineup__sale__price {
  margin-top: 18px;
  display: flex;
  align-items: flex-end;
}

.lp__lineup__sale__price__text {
  font-size: 20px;
  font-weight: bold;
  display: flex;
  align-items: flex-end;
  padding-left: 22px;
  position: relative;
}

.lp__lineup__sale__price__text::before {
  content: "";
  position: absolute;
  background: url("../_img/250917/price_maruji.png") top center / 100%;
  top: 1px;
  left: 0;
  width: 18px;
  height: 18px;
}

.lp__lineup__sale__price__text::after {
  position: absolute;
  content: "";
  display: inline-block;
  transform: rotate(-10deg);
  background-color: #1e2020;
  width: 100%;
  height: 1px;
  top: 42%;
  left: 0;
}

.lp__lineup__sale__price__text .lp__lineup__sale__price__text__tax {
  font-size: 12px;
  font-weight: bold;
  margin-bottom: 2px;
}

.lp__lineup__sale__price__red {
  font-size: 26px;
  font-weight: bold;
  color: #ec1d1d !important;
  display: flex;
  align-items: flex-end;
  padding-left: 30px;
  position: relative;
}

.lp__lineup__sale__price__red::before {
  position: absolute;
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid #1e2020;
  border-right: 0;
  top: 8px;
  left: 12px;
}

.lp__lineup__sale__price__red .lp__lineup__sale__price__red__tax {
  font-size: 14px;
  font-weight: bold;
  color: #ec1d1d;
  margin-bottom: 4px;
}

.lp__lineup__sale__price__red .lp__lineup__sale__price__icon {
  display: flex;
  align-items: center;
  font-size: 14px;
  background: #ec1d1d;
  color: #fff;
  padding: 0 8px;
  margin-right: 5px;
  height: 26px;
}

.lp__lineup__sale {
  width: 464px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 2.8;
  margin: 20px 0;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  color: #1e2020;
}

.lp__lineup__sale a {
  text-decoration: underline;
  transition: .3s ease-in;
  font-weight: bold;
}

.lp__lineup__sale a:hover {
  opacity: 0.7;
  text-decoration: underline;
}

.lp__lineup__sale span {
  display: flex;
  align-items: center;
  font-size: 14px;
  background: #ec1d1d;
  color: #fff;
  padding: 0 8px;
  margin-right: 6px;
  height: 20px;
}

@media screen and (max-width: 768px) {
  .lp__lineup__sale__price {
    margin-top: 10px;
  }

  .lp__lineup__sale__price__text {
    font-size: 5.33vw;
    padding-left: 5.86vw;
  }

  .lp__lineup__sale__price__text::before {
    top: 0.26vw;
    left: 0;
    width: 4.8vw;
    height: 4.8vw;
  }

  .lp__lineup__sale__price__text::after {
    width: 100%;
    height: 0.26vw;
    top: 42%;
    left: 0;
  }

  .lp__lineup__sale__price__text .lp__lineup__sale__price__text__tax {
    font-size: 3.2vw;
    margin-bottom: 0.53vw;
  }

  .lp__lineup__sale__price__red {
    font-size: 6.93vw;
    padding-left: 8vw;
  }

  .lp__lineup__sale__price__red::before {
    border-top: 1.6vw solid transparent;
    border-bottom: 1.6vw solid transparent;
    border-left: 2.66vw solid #1e2020;
    top: 2.13vw;
    left: 3.2vw;
  }

  .lp__lineup__sale__price__red .lp__lineup__sale__price__red__tax {
    font-size: 3.73vw;
    margin-bottom: 1.06vw;
  }

  .lp__lineup__sale__price__red .lp__lineup__sale__price__icon {
    font-size: 3.73vw;
    padding: 0 2.13vw;
    margin-right: 1.33vw;
    height: 6.93vw;
  }

  .lp__lineup__sale {
    width: 100%;
    margin: 5.33vw 0 !important;
    font-size: 4.8vw !important;
  }

  .lp__lineup__sale span {
    font-size: 3.73vw;
    padding: 0 2.13vw;
    margin-right: 1.6vw;
    height: 5.33vw;
  }
}