/*****************************  */

/* SLIDER */

/*****************************  */
.p-main-slider .bx-wrapper {
    margin-bottom: 0;
}

.p-main-slider .bx-wrapper .bx-viewport {
    left: 0;
    border: 0;
    box-shadow: none;
}

.p-main-slider .bx-wrapper img {
    width: 100%;
    height: 100%;
    margin: 0;
    object-fit: contain;
}

.p-main-slider .bx-wrapper .bx-pager {
    bottom: 45px;
    box-sizing: border-box;
    padding-top: 0;
    padding-right: 25px;
    text-align: right;
}

.p-main-slider .bx-wrapper .bx-pager.bx-default-pager a {
    margin-right: 5px;
    margin-left: 5px;
    background: #fff;
}

.p-main-slider .bx-wrapper .bx-pager.bx-default-pager a.active {
    position: relative;
    background: #000;
}

.p-main-slider .bx-wrapper .bx-pager.bx-default-pager a:hover {
    background: #333;
}

.p-main-slider .bx-wrapper .bx-pager-item {
    text-align: left;
}

.p-main-slider .bx-wrapper .bx-controls-direction a {
    z-index: 100;
}

.p-main-slider .bx-wrapper .bx-prev,
.p-main-slider .bx-wrapper .bx-next {
    width: 60px;
    height: 60px;
    margin-top: 0;
    background: rgb(255 255 255 / 70%);
}

.p-main-slider .bx-wrapper .bx-prev::before,
.p-main-slider .bx-wrapper .bx-next::before {
    position: absolute;
    top: 50%;
    left: 50%;
    box-sizing: border-box;
    display: block;
    width: 13px;
    height: 13px;
    margin-top: -6px;
    margin-left: -6px;
    content: "";
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
}

.p-main-slider .bx-wrapper .bx-prev:hover,
.p-main-slider .bx-wrapper .bx-next:hover {
    background: rgb(255 255 255 / 90%);
}

.p-main-slider .bx-wrapper .bx-prev {
    left: 0;
}

.p-main-slider .bx-wrapper .bx-prev::before {
    transform: rotate(135deg);
}

.p-main-slider .bx-wrapper .bx-next {
    right: 0;
}

.p-main-slider .bx-wrapper .bx-next::before {
    transform: rotate(-45deg);
}
@media screen and (width <= 1024px) {
  .p-main-slider {
    width: 100%;
  }
}

@media screen and (width <= 767px) {
    .p-main-slider .bx-wrapper .bx-pager {
        display: none;
    }

    .p-main-slider .bx-wrapper .bx-prev,
    .p-main-slider .bx-wrapper .bx-next {
        width: 40px;
        height: 40px;
    }

    .p-main-slider .bx-wrapper .bx-prev::before,
    .p-main-slider .bx-wrapper .bx-next::before {
        width: 10px;
        height: 10px;
        margin-top: -5px;
        margin-left: -5px;
    }
}

/*****************************  */

/* NEWS */

/*****************************  */
.p-line-informaiton {
    position: relative;
    z-index: 1;
    margin-top: -45px;
}

.p-line-information__inner {
    display: flex;
    align-items: center;
    max-width: 900px;
    min-height: 90px;
    margin: 0 0 0 auto;
    background-color: #fff;
}
.p-line-information__inner * {
    min-height: 0;
    min-width: 0;
}

.p-line-informaiton__inside {
    display: flex;
    flex: 1;
    gap: 57px;
    padding: 15px 20px 15px 40px;
  align-items: center;
}

.p-line-informaiton-list__item {
    display: flex !important;
    flex-wrap: wrap;
    overflow: hidden;
  align-items: center;
}

.p-line-informaiton-list__date {
    width: 120px;
    font-family: "Libertinus Sans", sans-serif;
    font-size: clamp(1.8rem, 1.6672rem + 0.28vw, 2rem);
  letter-spacing: 0.075em;
}

.p-line-informaiton-list__ttl {
    flex: 1;
    font-size: clamp(1.8rem, 1.6672rem + 0.28vw, 2rem);
  line-height: 1.5;
}

.p-line-informaiton-list .slick-prev,
.p-line-informaiton-list .slick-next {
    z-index: 10;
    width: 35px;
    height: 35px;
    background: transparent;
    border-radius: 0;
}

.p-line-informaiton-list .slick-prev::before,
.p-line-informaiton-list .slick-next::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    margin-top: -8px;
    transform: rotate(-45deg) translateX(-50%);
}

.p-line-informaiton-list .slick-prev:hover,
.p-line-informaiton-list .slick-next:hover {
    background: #f5f5f5;
}

.p-line-informaiton-list .slick-prev {
    right: 35px;
    left: auto;
}

.p-line-informaiton-list .slick-prev::before {
    border-top: 2px solid #000;
    border-left: 2px solid #000;
}

.p-line-informaiton-list .slick-next {
    right: 0;
}

.p-line-informaiton-list .slick-next::before {
    margin-left: -3px;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
}

.js-news-slider {
    display: none;
}

.js-news-slider.slick-initialized {
    display: block;
  flex: 1;
}

.js-news-slider .slick-track {
  display: flex;
  align-items: center;
}

.news-arrow {
  margin-right: 23px;
}

@media screen and (width <= 1023px) {
  .p-line-information__inner {
    height: auto;
    padding: 20px 0;
    max-width: initial;
    margin: 0;
  }
  .p-line-informaiton__inside {
    gap: 30px;
    padding: 0 0 0 30px;
  }
}

@media screen and (width <= 767px) {
  .p-line-informaiton {
    margin-top: -4.4vw;
  }
    .p-line-informaiton__wrap {
        padding-right: 50px;
        padding-left: 50px;
        margin-right: 0;
        margin-left: 0;
    }

    .p-line-informaiton-list__item {
        display: block !important;
        overflow: visible;
    }

    .p-line-informaiton-list__date {
        width: auto;
    }

    .p-line-informaiton-list__ttl {
        padding-right: 0;
    }

    .p-line-informaiton-list .slick-prev,
    .p-line-informaiton-list .slick-next {
        width: 45px;
        height: 45px;
    }

    .p-line-informaiton-list .slick-prev {
        right: auto;
        left: -50px;
    }

    .p-line-informaiton-list .slick-next {
        right: -50px;
    }
}
@media screen and (width <= 600px) {
  .p-line-informaiton__inside {
    display: block;
    padding: 0 30px;
  }
  .p-line-information__inner {
    display: block;
    position: relative;
  }
  .p-line-informaiton .c-ttl-main {
    margin-bottom: 10px;
  }
  .news-arrow {
    margin-right: 0;
    position: absolute;
    top: 20px;
    right: 30px;
  }
  .js-news-slider .slick-track {
    align-items: initial;
  }
}
@media screen and (width <= 480px) {
  .p-line-informaiton {
    margin-top: 0;
    width: 100%;
  }
}

/*****************************  */

/* CONCEPT */

/*****************************  */
.p-concept {
    display: flex;
    flex-flow: row-reverse;
    flex-wrap: wrap;
    overflow: hidden;
}

.p-concept__img {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50%;
    min-height: 600px;
    background-image: url(https://img.shop-pro.jp/tmpl_img/87/bg.gif);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.p-concept__txt {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 50%;
    padding: 70px 56px 37px;
}

.p-concept__ttl {
    margin-top: 0;
    margin-bottom: 25px;
    font-size: clamp(2.2rem, 1.8rem + 0.83vw, 2.8rem);
    font-weight: normal;
}

.p-concept__body {
    line-height: 2;
}

.p-concept__body .ttl-vertical {
    height: 354px;
    margin: 0 auto 68px;
    font-family: "Zen Old Mincho", serif;
    font-size: clamp(3rem, 2rem + 2.08vw, 4.5rem);
    font-weight: 100;
    line-height: 1.5;
    letter-spacing: 0.2em;
    writing-mode: vertical-rl;
}

.ttl-vertical .first {
    display: block;
}

.ttl-vertical .last {
    display: block;
    text-align: right;
}

.p-concept__body p {
    font-size: clamp(1.7rem, 1.6336rem + 0.14vw, 1.8rem);
    line-height: 2.5;
    letter-spacing: 0.075em;
  margin: 0;
}

@media screen and (width <= 1023px) {
  .p-concept {
    flex-flow: column-reverse;
  }
    .p-concept__txt {
    width: 100%;
        padding: 30px 0 40px;
    }
  .p-concept__img {
    width: 100%;
    min-height: initial;
    aspect-ratio: 2 / 1;
  }
  .p-concept__body .ttl-vertical {
    writing-mode: initial;
    height: initial;
    margin: 0 0 40px;
    display: flex;
    justify-content: center;
    letter-spacing: 0.25em;
  }
  .ttl-vertical .first,
  .ttl-vertical .last {
    display: contents;
  }
}

@media screen and (width <= 767px) {
    .p-concept {
        display: block;
    }

    .p-concept__img {
        width: auto;
    }

    .p-concept__txt {
        width: auto;
        padding: 45px 0 0;
    }

    .p-concept__ttl {
        margin-bottom: 15px;
        font-size: clamp(1.9rem, 1.7008rem + 0.42vw, 2.2rem);
    }
  .p-concept__body .ttl-vertical {
    letter-spacing: 0;
  }
  .p-concept__body p {
    line-height: 1.7;
  }
}

/*****************************  */

/* RECOMMEND ITEMS */

/*****************************  */
.p-recommend {
    overflow: hidden;
}

.p-recommend-item-list {
    display: flex;
    flex-wrap: wrap;
}

.p-recommend-item-list__item {
    position: relative;
    box-sizing: border-box;
    width: 33.33333%;
    word-break: break-all;
}

.p-recommend-item-list__item.is-hidden {
    display: none;
}

.p-recommend-item-list__item:hover .c-item-list__txt {
    opacity: 1;
}

.p-recommend-bg img {
    width: 100%;
}

@media screen and (width <= 1023px) {
    .p-recommend-bg img {
        height: 270px;
        object-fit: cover;
    }

    .p-recommend-item-list__item {
        width: 33.3333%;
        margin-bottom: 20px;
    }
}

@media screen and (width <= 767px) {
    .p-recommend {
        margin-top: 60px;
    }

    .p-recommend-list {
        margin-right: 0;
        margin-left: 0;
    }

    .p-recommend-item-list__item {
        width: 50%;
    }
}

/*****************************  */

/* TOP RANKING */

/*****************************  */
.p-ranking {
    overflow: hidden;
}

.p-ranking-list {
    box-sizing: border-box;
}

.p-ranking-list__item {
    position: relative;
    box-sizing: border-box;
    word-break: break-all;
}

.p-ranking-list__item.is-hidden {
    display: none;
}

.p-ranking-list__item:hover .c-item-list__txt {
    opacity: 1;
}

.p-ranking-list__num {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    box-sizing: border-box;
    min-width: 45px;
    padding-top: 2px;
    font-size: clamp(1.8rem, 1.6672rem + 0.28vw, 2rem);
    line-height: 43px;
    color: #2d2d2d;
    text-align: center;
    background: #fff;
    transition: all ease 0.1s;
  font-family: "Libertinus Sans", sans-serif;
}

.p-ranking-list__num.is-1 {
    color: #fff;
    background: #dbc131;
}

.p-ranking-list__num.is-2 {
    color: #fff;
    background: #bababa;
}

.p-ranking-list__num.is-3 {
    color: #fff;
    background: #c09257;
}
.p-ranking-list__item.slick-slide {
    margin: 0 10px;
}
.p-ranking-list .slick-list {
    margin-left: -10px;
    margin-right: -10px;
    padding: 0 5% 0 0 !important;
}

@keyframes rankingfadein {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@media screen and (width <= 1023px) {
    .p-ranking-list__num {
        top: 20px;
        left: 20px;
        min-width: 45px;
        padding-top: 3px;
        font-size: clamp(1.85rem, 1.6832rem + 0.35vw, 2.1rem);
        line-height: 42px;
    }
}

@media screen and (width <= 767px) {
    .p-ranking {
        margin-top: 90px;
        margin-bottom: 60px;
    }

    .p-ranking-list__num {
        top: 10px;
        left: 10px;
        min-width: 30px;
        padding-top: 3px;
        font-size: clamp(1.6rem, 1.5328rem + 0.14vw, 1.7rem);
        line-height: 27px;
    }
  .p-ranking-list .slick-list {
      padding: 0 10% 0 0 !important;
  }
}
@media screen and (width <= 480px) {
  .p-ranking-list__num {
    top: 0;
    left: 0;
  }
.p-ranking-list__item.slick-slide {
    margin: 0 2.5px;
}
  .p-ranking-list .slick-list {
    margin-left: -2.5px;
    margin-right: -2.5px;
  }
}

/*****************************  */

/* CATEGOLY */

/*****************************  */
.p-category-list {
    overflow: hidden;
}
.p-category-list .list-cat a {
	position: relative;
  color: #fff;
}
.p-category-list .list-cat a:hover {
  text-decoration: none;
}
.p-category-list .list-cat a:hover img {
  opacity: 0.8;
}
.p-category-list .list-cat .text {
  position: absolute;
  left: 40px;
  bottom: 20px;
}
.p-category-list .list-cat .cat-ttl {
  font-size: clamp(3.5rem, 2.1664rem + 2.78vw, 5.5rem);
  line-height: 1.2;
  letter-spacing: 0.2em;
}
.p-category-list .list-cat .cat-ttl small {
  font-size: clamp(2.8rem, 2rem + 1.67vw, 4rem);
}
.p-category-list .list-cat .cat-ttl-en {
  font-size: clamp(1.4rem, 1.3328rem + 0.14vw, 1.5rem);
  line-height: 1.2;
  letter-spacing: 0.2em;
}
.list-cat.column-2 li {
  width: calc(25% - 45px);
}
.p-category-list .only-sp {
  display: block;
}
@media screen and (width <= 2140px) {
  .list-cat.column-2 li {
    width: calc(50% - 30px);
  }
  .p-category-list .only-sp {
    display: none;
  }
}
@media screen and (width <= 1440px) {
  .p-category-list .only-sp {
    display: block;
  }
}
@media screen and (width <= 1024px) {
  .p-category-list .list-cat .text {
    left: 20px;
    bottom: 10px;
  }
  .p-category-list .list-cat .cat-ttl {
    font-size: clamp(3.3rem, 2.1664rem + 2.36vw, 5rem);
  }
  .p-category-list .list-cat .cat-ttl small {
    font-size: clamp(2.5rem, 1.8336rem + 1.39vw, 3.5rem);
  }
  .p-category-list .list-cat .cat-ttl-en {
    font-size: 1.3rem;
  }
  .list-cat.column-2 li {
    width: calc(50% - 15px);
  }
}
@media screen and (width <= 991px) {
  .list-cat.column-2 li {
    width: 100%;
  }
}

/*****************************  */

/* ²Á³Ê¤ÇÁª¤Ö */

/*****************************  */
.p-price-select-area {
    overflow: hidden;
}
.p-price-select-area .list-price {
  display: flex;
  flex-wrap: wrap;
  gap: 18px 30px;
}
.p-price-select-area .list-price li {
  width: calc(20% - 24px);
}
.p-price-select-area .list-price li a {
  display: flex;
  height: 85px;
  font-size: clamp(1.7rem, 1.6336rem + 0.14vw, 1.8rem);
  align-items: center;
  padding-left: 35px;
  position: relative;
  color: #333;
  background-color: #fff;
}
.p-price-select-area .list-price li a::before {
  content: "";
  display: block;
  width: 15px;
  height: 1px;
  background-color: #333;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.p-price-select-area .list-price li a:hover {
  text-decoration: none;
}
@media screen and (width <= 2140px) {
.p-price-select-area .list-price li {
  width: calc(25% - 22.5px);
}
}
@media screen and (width <= 1500px) {
.p-price-select-area .list-price li {
  width: calc(33.333% - 20px);
}
}
@media screen and (width <= 1024px) {
.p-price-select-area .list-price {
    gap: 18px 20px;
}
  .p-price-select-area .list-price li {
    width: calc(50% - 10px);
  }
}
@media screen and (width <= 600px) {
  .p-price-select-area .list-price li {
    width: 100%;
  }
}
@media screen and (width <= 480px) {
.p-price-select-area .list-price {
    gap: 5px;
}

/*****************************  */

/* TOP Å¹ÊÞ¾Ò²ð */

/*****************************  */
.p-shop {
    margin-top: 120px;
    margin-bottom: 120px;
}

.p-shop__img {
    margin-bottom: 30px;
    text-align: center;
}

.p-shop__txt {
    text-align: center;
}

.p-shop__ttl {
    margin-top: 0;
    margin-bottom: 15px;
    font-size: clamp(1.9rem, 1.7008rem + 0.42vw, 2.2rem);
    font-weight: bold;
    letter-spacing: 0.1em;
}

.p-shop__body {
    font-size: 1.4rem;
    line-height: 2;
}

.p-shop__url {
    margin-top: 15px;
}

.p-shop__url a {
    color: #2d2d2d;
}

.p-free {
    margin-top: 120px;
    overflow: hidden;
}

.p-free img {
    display: block;
    width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
}

@media screen and (width <= 1023px) {
    .p-free img {
        height: 270px;
        object-fit: cover;
    }
}

@media screen and (width <= 767px) {
    .p-shop {
        display: block;
        margin: 75px 0 60px;
    }

    .p-shop__img {
        margin-right: -20px;
        margin-left: -20px;
    }

    .p-shop__ttl {
        margin-bottom: 15px;
        font-size: clamp(1.8rem, 1.6672rem + 0.28vw, 2rem);
    }

    .p-shop__body {
        font-size: 1.3rem;
    }

    .p-free {
        margin-top: 60px;
    }
}
