@charset "UTF-8";

/*P_01 マイページトップ(ログイン後)*/

.top h2 {
  text-align: center;
  padding-bottom: 0;
  padding-left: 0;
  border-bottom: none;
  font-size: 2rem;
  line-height: 1.47;
}

.top h2::before {
  content: '';
  border: none;
}

@media only screen and (max-width:768px) {
  .section {
    margin-bottom: 21.44927536231884%;
  }
  .section:nth-of-type(2) {
    margin-bottom: 18.55072463768116%;
  }
  .top h2 {
    font-size: 1.75rem;
    margin-bottom: 9.27536231884058%
  }
  .l-wrapper-main .section.for-sp {
    margin-bottom: 11.59420289855072%
  }
  .l-wrapper-main .section.for-sp .dashboardProfile {
    padding-bottom: 9.27536231884058%;
    border-bottom: 1px #ccc solid;
    margin-bottom: 0;
  }
  .l-wrapper-main .section.for-sp .dashboardRank-icon {
    max-width: 44px;
    padding-right: 2.898550724637681%
  }
  .l-wrapper-main .section.for-sp a {
    text-decoration: none
  }
  .l-wrapper-main .section.for-sp li:nth-of-type(2) a {
    color: #333
  }
  .l-wrapper-main .section.for-sp li:nth-of-type(3) a, .l-wrapper-main .section.for-sp li:nth-of-type(4) a {
    color: #333;
    font-weight: bold
  }
  .l-wrapper-main .section.for-sp li a.arrow {
    display: block;
    background: url(../img/icon_arrow_bold.svg) right center no-repeat;
  }
  .l-wrapper-main .section.for-sp li .dashboardRank {
    padding: 5.072463768115942% 0 4.927536231884058%;
    border-bottom: 1px #ccc solid;
    align-items: center
  }
  .l-wrapper-main .section.for-sp li .dashboardRank-name {
    width: 35%;
  }
  .l-wrapper-main .section.for-sp li .dashboardRank-point {
    width: 40%;
    text-align: right;
  }
  .l-wrapper-main .section.for-sp li.l-sidemenu_login a {
    padding-top: 7.826086956521739%;
    padding-right: 0;
    padding-left: 14.6667%;
    padding-bottom: 7.826086956521739%;
    border-bottom: 1px #ccc solid;
    padding-left: 0px;
    position: relative;
  }
}


/* キャンペーン・イベント */


/*タブ切り換え*/

.contentlist.is-active {
  display: block
}

.contentlist, .l-contentlist .js-changetab-campaign {
  display: none
}

.top .l-sort {
  margin-bottom: 3%
}

@media only screen and (max-width:768px) {
  .top .l-sort {
    margin-bottom: 6.956521739130435%
  }
  .top .l-sort li a {
    padding: .203125rem 0.8rem;
  }
}

.js-campaign_carousel {
  margin: 0 auto;
  max-width: 800px
}

@media only screen and (max-width:768px) {
  .js-campaign_carousel {
    margin: 0 -4.347826086956522%;
  }
}

.js-campaign_carousel .slick-prev, .js-campaign_carousel .slick-next {
  position: absolute;
  top: 17.45%;
  z-index: 2;
  width: 27px;
  height: 50px;
  background-size: 100% 100%;
}

.js-campaign_carousel .slick-prev {
  left: -3.928571428571429%;
  background: url(../img/icon_slide_prev.svg) no-repeat center 0;
}

.js-campaign_carousel .slick-next {
  right: -3.928571428571429%;
  background: url(../img/icon_slide_next.svg) no-repeat center 0;
}

@media only screen and (max-width:768px) {
  .js-campaign_carousel .slick-prev, .js-campaign_carousel .slick-next {
    position: absolute;
    top: 60px;
    z-index: 2;
    width: 40px;
    height: 40px;
    background-size: 100% 100%;
  }
  .slick-dots {
    margin-top: 0
  }
  .js-campaign_carousel .slick-prev {
    left: 1%;
    background: url(../img/icon_circle_prev.svg) no-repeat center 0;
  }
  .js-campaign_carousel .slick-next {
    right: 1%;
    background: url(../img/icon_circle_next.svg) no-repeat center 0;
  }
}

.js-campaign_carousel li.slick-slide {
  width: 33.33333333333334%;
  max-width: 266.6666666666667px;
}

.js-campaign_carousel div.slick-slide{
  width: 33.33333333333334%;
  max-width: 266.6666666666667px;
  padding: 0;
  display: list-item;
  text-align: -webkit-match-parent;
}

.js-campaign_carousel li.slick-slide a, .js-campaign_carousel div.slick-slide a{
  text-align: center;
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 240px;
  display: block;
  text-decoration: none;
  margin: 0 auto
}

.js-campaign_carousel li a img {
  position: relative;
  display: block;
  height: 160px;
}

.js-campaign_carousel li a img.object-fit {
  object-fit: cover;
  object-position: center center;
  font-family: 'object-fit: cover;object-position: center center';
}

.js-campaign_carousel dl {
  text-align: left;
  margin-top: 7.083333333333333%;
}

.js-campaign_carousel dt {
  font-size: 0.75rem;
  color: #555555;
  margin-bottom: 5.833333333333333%;
  display: flex;
  justify-content: flex-start;
  line-height: 1.545454545454545;
}

.js-campaign_carousel dt .brandIcon {
  background-color: #f7f4ec;
  font-weight: bold;
  color: #000;
  padding-top: 2px;
  padding-left: 8px;
  padding-bottom: 2px;
  margin-right: 0.5rem;
  padding-right: 8px;
  margin-top: -2px;
}

.js-campaign_carousel dd {
  color: #333;
}

.js-campaign_carousel a dd {
  color: #333;
}

.js-campaign_carousel dd h5 {
  font-size: 1rem;
  line-height: 2;
  margin-bottom: 2.916666666666667%;
  height: 25%;
}

.js-campaign_carousel a dd .date {
  font-size: 0.75rem;
  line-height: 2;
  color: #777777;
}

@media only screen and (min-width:769px) {
  .js-campaign_carousel li img {
    margin: 0 0 0.5499%
  }
}

@media only screen and (max-width:768px) {
  .js-campaign_carousel dt .brandIcon {
    display: none;
  }
  .js-campaign_carousel dt .brandIcon-sp {
    font-weight: bold;
    border: 1px #787878 solid;
    padding: 0 0.5rem;
    margin-right: 0.5rem;
  }
}


/* ポイントを使う・ためる */

.use_points>p {
  text-align: center;
  margin-top: calc((1 - 1.5) * .5em);
  margin-bottom: calc(6% - (((1em * 1.5) - 1em) / 2));
  line-height: 1.5;
}

.l-anchorLink {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin: 0 auto;
}

.l-anchorLink li {
  width: 30%;
  text-align: center;
}

.l-anchorLink li h4 {
  margin-bottom: 3.333333333333333%;
  font-size: 1.25rem;
  line-height: 1;
}

.l-anchorLink li img {
  margin: 0 auto;
}

.l-anchorLink li p {
  font-size: 0.75rem;
  line-height: 1.5;
  margin-top: calc(5% - (1 - 1.5) * .5em);
  margin-bottom: calc(10% - (((1em * 1.5) - 1em) / 2));
}

.l-anchorLink .col1 {
  flex-direction: column;
  margin-bottom: 0;
}

.l-anchorLink .btn {
  padding: 5.3125% 0;
  font-size: 0.9375rem;
  width: 100%
}

.l-anchorLink .btn.btn--black {
  background: url(../img/btn_arrow_wht_col3.svg) #333 no-repeat right 50%;
  margin-bottom: 3.333333333333333%;
}

.l-anchorLink .btn.btn--black:hover {
  background: url(../img/btn_arrow_wht_col3.svg) #707070 no-repeat right 50%;
}

.l-anchorLink .btn.btn--white {
  background: url(../img/btn_arrow_blk_col3.svg) #fff no-repeat right 50%;
}

.l-anchorLink .btn.btn--white:hover {
  background: url(../img/btn_arrow_wht_col3.svg) #C0C0C0 no-repeat right 50%;
}

.l-anchorLink .link.small {
  line-height: 1;
  margin: 4.166666666666667% 0 0;
}

@media only screen and (max-width:768px) {
  .l-anchorLink {
    display: block;
    margin-top: 7.536231884057971%;
  }
  .l-anchorLink li {
    width: 100%;
    margin-bottom: 16.23188405797101%;
  }
  .l-anchorLink li img {
    width: 49.27536231884058%;
  }
  .l-anchorLink li p {
    font-size: 0.9375rem;
  }
  .l-anchorLink .btn.btn--black {
    background: url(../img/btn_arrow_wht_col1.svg) #333 no-repeat right 50%;
  }
  .l-anchorLink .btn.btn--black:hover {
    background: url(../img/btn_arrow_wht_col1.svg) #707070 no-repeat right 50%;
  }
  .l-anchorLink .btn.btn--white {
    background: url(../img/btn_arrow_blk_col1.svg) #fff no-repeat right 50%;
  }
  .l-anchorLink .btn.btn--white:hover {
    background: url(../img/btn_arrow_wht_col1.svg) #C0C0C0 no-repeat right 50%;
  }
}


/* お知らせ */

.top .l-notice {
  margin-bottom: 0
}


/* banner */

.top .section.banner_area {
  margin-top: -5.25%
}

.top .section.banner_area a {
  opacity: 0.7
}

@media only screen and (max-width:768px) {
  .top .section.banner_area {
    margin-top: -12.17391304347826%
  }
}