@charset "UTF-8";

/* FS
------------------------------ */
.fs-c-productList__message.fs-c-noResultMessage {
  display: none !important;
}

@media (min-width: 768px) {

  .wrapper_second,
  .wrapper_third,
  .wrapper_footer {
    margin-top: -30px !important;
  }
}

/* wrapper
  ------------------------------ */

/* wrap
  ------------------------------ */
.wrap_top {
  max-width: 1200px;
  margin: 0 auto;
  padding: 5% 0;
}

.wrap_coupon {
  margin: 5% auto 0;
  padding: 0;
}

.wrap_first {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2% 0;
}

.wrap_second {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2% 0;
}

.wrap_third {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2% 0;
}

/* contents
------------------------------ */
.contents_logo {
  width: 40%;
  margin: 0 auto;
  padding: 0;
}

.contents_topImg {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.contents_title {
  width: 100%;
  margin: 0 auto;
  padding: 6% 0 2%;
}

.contents_ttl {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 3%;
}

.contents_subject {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 5%;
}

.contents_lead {
  width: 100%;
  margin: 0 auto;
  padding: 5% 0 2%;
}

.contents_couponImg {
  width: 100%;
  margin: 0 auto;
  padding: 0 10%;
}

.contents_period {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 7%;
}

.contents_subttl {
  width: 100%;
  margin: 0 auto;
  padding: 3% 0;
}

.contents_info {
  width: 100%;
  margin: 0 auto;
  padding: 3% 5%;
}

.contents_header {
  width: 100%;
  margin: 0 auto;
  padding: 2% 0 1% 2%;
}

.contents_headerImg {
  width: 100%;
  margin: 0 auto;
  padding: 0 20% 2%;
}

.contents_explain {
  width: 100%;
  margin: 0 auto;
  padding: 3% 5%;
}

.contents_headline {
  width: 100%;
  margin: 0 auto;
  padding: 3% 0 0;
}

.contents_heading {
  width: 100%;
  margin: 0 auto;
  padding: 2% 0 7%;
}

.contents_slider {
  width: 100%;
  margin: 0 auto;
  padding: 5% 0 7%;
}

.contents_sentence {
  width: 100%;
  margin: 0 auto;
  padding: 4% 0;
}

.contents_button {
  width: 70%;
  margin: 0 auto;
  padding: 0 0 3%;
}

.contents_link {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 6%;
}

.contents_urge {
  width: 100%;
  margin: 0 auto;
  padding: 4% 0 3%;
}

.contents_remarks {
  width: 100%;
  margin: 0 auto;
  padding: 3% 0 0;
}

.contents_warning {
  width: 80%;
  margin: 0 auto;
  padding: 0 0 3%;
}

.contents_button {
  width: 70%;
  margin: 0 auto;
  padding: 0 0 3%;
}

/* box
  ------------------------------ */
.top_slidBox {
  width: 100%;
  margin: 0 auto .5%;
  padding: 0 .1%;
}

.sliderBox_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 .2% .2%;
  position: relative;
}

.itemBox_01 {
  width: 23.5%;
  margin: 0 auto;
  padding: 0 0 .2% .2%;
}

.linkBox_01 {
  width: 33.333%;
  margin: 0 auto;
  padding: 1% 0;
}

/* area
------------------------------ */


/* block
------------------------------ */
.block_subttl {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.imgBlock_01 {
  width: 49%;
  margin: 0 auto;
  padding: 0;
}

.textBlock_01 {
  width: 49%;
  margin: 0 auto;
  padding: 0 2%;
}

.imgBlock_02 {
  width: 39%;
  margin: 0 auto;
  padding: 0;
}

.textBlock_02 {
  width: 59%;
  margin: 0 auto;
  padding: 0 2%;
}

.imgBlock_03 {
  width: 29%;
  margin: 0 auto;
  padding: 0;
}

.textBlock_03 {
  width: 69%;
  margin: 0 auto;
  padding: 0 2%;
}

.itemBlock_01 {
  width: 49%;
  margin: 0 auto;
  padding: 0 2%;
}

.itemBlock_02 {
  width: 49%;
  margin: 0 auto;
  padding: 0;
}

/* element
------------------------------ */
.textElement_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.photoElement_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.itemElement_01 {
  width: 80%;
  margin: 0 auto;
  padding: 2% 5%;
  display: flex;
  align-items: center;
  flex-direction: column;
  flex: 1;
}


/* parts
------------------------------ */

/* inner
------------------------------ */
.titleInner_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 1%;
}

.titleInner_02 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.titleInner_03 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.textInner_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 8%;
}

.textInner_02 {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 5%;
}

.textInner_03 {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 5%;
}

.photoInner_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.photoInner_02 {
  width: 100%;
  margin: 0 auto;
  padding: 0 4%;
}

.itemInner_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 2%;
}

.itemInner_02 {
  width: auto;
  margin: 0 auto;
  padding: 0 0 2%;
}

.itemInner_03 {
  flex: 1;
}

.itemInner_04 {
  width: 100%;
  margin: 0 auto;
  padding: 5% 0;
}

.buttonInner_01 {
  width: 100%;
  margin: 0 auto;
  padding: 5% 0;
}

/* parts
  ------------------------------ */


/*radius
------------------------------ */
.radius_20px {
  border-radius: 20px;
}

.radius_10px {
  border-radius: 10px;
}

/*space
------------------------------ */
.space_top {}

.space_left {
  padding: 5% 0 0 1%;
}

.space_right {
  padding-right: 0 2%;
}

/*hover
------------------------------ */
.figure_04 img {
  transition: 1s all;
}

.figure_04 img:hover {
  transform: scale(1.15, 1.15);
  transition: 1s all;
}

/* border
------------------------------ */
.frame_01 {
  border: solid 1px #111;
}

.frame_02 {
  border: solid 1px #111;
}

.topline_01 {
  border-top: solid 1px #111;
}

.underline_01 {
  border-bottom: solid 1px #999;
}

.partition_01 {
  border-right: solid 1px #111;
}

.ttlBorder_blue {
  border-left: 15px solid #1a317b;
  border-bottom: 2px solid #1a317b;
}

.ttlBorder_red {
  border-left: 15px solid #b52024;
  border-bottom: 2px solid #b52024;
}

.ttlBorder_purple {
  border-left: 15px solid #5d17ab;
  border-bottom: 2px solid #5d17ab;
}

.ttlBorder_orange {
  padding: 1rem 0 1rem 1rem;
  border-left: .6rem solid #d87337;
}

.ttlBorder_black {
  border-left: 15px solid #5e5e5e;
  border-bottom: 2px solid #5e5e5e;
}

/*background-color
------------------------------ */
.white_bk {
  background: rgba(255, 255, 255, .7);
}

.white_bk02 {
  background: rgba(255, 255, 255, .5);
}

.gray_bk {
  background: rgba(238, 238, 238, 1);
}

.beige_bk {
  background: rgba(240, 238, 228, .7);
}

.darkbeige_bk {
  background: rgba(111, 88, 44, .7);
}

.darkgray_bk {
  background: rgba(47, 47, 47, 1);
}

.pink_bk {
  background: rgba(251, 222, 218, .5);
}

.yellow_bk {
  background: rgba(229, 212, 118, .6);
}

.margarine_bk {
  background: rgba(238, 232, 170, .4);
}

.purpleBk {
  background: rgba(184, 141, 232, .2);
}

.blueBk_01 {
  background: rgba(205, 233, 236, .8);
}

.salmonpink_bk {
  background: rgba(251, 222, 218, .5);
}

.jine_bk {
  background: rgba(148, 153, 255, .3);
}

.orange_bk {
  background: rgba(255, 140, 0, 1);
}

/* リストスタイル
------------------------------ */
ul.listFlex_01 li.listText_01 {
  list-style-type: disc;
}

/* font
------------------------------ */

/* flex
------------------------------ */
.flexbox_01 {
  display: -webkit-box;
  /* old Android */
  display: -webkit-flex;
  /* Safari etc. */
  display: -ms-flexbox;
  /* IE10        */
  display: flex;
  -webkit-flex-wrap: wrap;
  /* Safari etc. */
  -ms-flex-wrap: wrap;
  /* IE10        */
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  flex-direction: row;
  column-gap: 1%;
}

.flexbox_02 {
  display: -webkit-box;
  /* old Android */
  display: -webkit-flex;
  /* Safari etc. */
  display: -ms-flexbox;
  /* IE10        */
  display: flex;
  -webkit-flex-wrap: wrap;
  /* Safari etc. */
  -ms-flex-wrap: wrap;
  /* IE10        */
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  flex-direction: row-reverse;
  column-gap: 1%;
}


/* h1 text
------------------------------ */
h1.brand-header-name-jp {
  font-family: Lato, Noto Sans JP, sans-serif;
  font-size: calc(1.4rem * 1.5);
  text-align: center;
  margin: 0;
  letter-spacing: .3rem;
  line-height: calc(2.4rem * 1.5);
}

h2.series-header-name-jp {
  font-family: Lato, Noto Sans JP, sans-serif;
  font-size: calc(1.1rem * 1.5);
  text-align: center;
  margin: 0;
  letter-spacing: .1rem;
  line-height: calc(2.4rem * 1.5);
}

/* h3 text
------------------------------ */
h3.brand-header-name-eng {
  font-family: var(--font_eng);
  margin: 0;
  text-align: center;
  font-size: calc(2.7rem * 1.5);
  letter-spacing: .05em;
  line-height: calc(3.8rem * 1.5);
}

h3.title {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.8rem * 1.5);
  text-align: center;
  margin: 0;
  letter-spacing: normal;
  font-weight: bold;
}

h3.ttl {
  font-family: var(--font_eng);
  font-size: calc(3.2rem * 1.5);
  text-align: center;
  margin: 0;
  font-weight: normal;
  color: #111;
  letter-spacing: .2rem;
}

h3.subject {
  font-family: Lato, Noto Sans JP, sans-serif;
  font-size: calc(1.8rem * 1.5);
  text-align: center;
  line-height: calc(3rem * 1.5);
  margin: 0;
  padding: 0;
  font-weight: normal;
  color: #111;
  letter-spacing: .2rem;
}

/* h4 text
------------------------------ */
h4.title {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.8rem * 1.5);
  text-align: center;
  margin: 0;
  line-height: calc(2.5rem * 1.5);
}

h4.ttl {
  font-family: var(--font_eng);
  color: #3552b1;
  font-size: calc(2.5rem * 1.5);
  text-align: center;
  margin: 0;
  line-height: calc(3rem * 1.5);
}

h4.header {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.7rem * 1.5);
  text-align: left;
  margin: 0;
  line-height: calc(2.2rem * 1.5);
  word-break: keep-all;
  overflow-wrap: anywhere;
}

h4.headline {
  font-family: "Shipporimincho";
  color: #7d0000;
  margin: 0;
  font-size: calc(1.9rem * 1.5);
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

h4.headline span {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  margin: 0;
  font-size: calc(1.5rem * 1.5);
  margin-right: 6px;
}

h4.headline::after {
  align-content: center;
  content: "\00a0\00a0\00a0]";
  display: block;
  margin-left: 1rem;
}

h4.headline::before {
  align-content: center;
  content: "[\00a0\00a0\00a0";
  display: block;
  margin-right: 1rem;
}

/* h5 text
------------------------------ */
h5.title {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.3rem * 1.5);
  text-align: left;
  line-height: calc(2rem * 1.5);
  margin: 0;
  padding: 0 0 0 5%;
  font-weight: normal;
  position: relative
}

h5.title::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  background: #444;
  border-radius: 100%;
}

h5.ttl {
  margin: 0;
  font-family: Lato, Noto Sans JP, sans-serif;
  text-align: center;
  font-size: calc(1.6rem * 1.5);
  line-height: calc(2rem * 1.5);
  letter-spacing: .3rem;
  font-weight: normal;
}

h5.ttl span {
  margin: 0;
  font-family: Lato, Noto Sans JP, sans-serif;
  text-align: center;
  font-size: calc(1.3rem * 1.5);
  line-height: calc(2rem * 1.5);
  font-weight: normal;
}

h5.topics {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.3rem * 1.5);
  text-align: center;
  line-height: calc(2rem * 1.5);
  margin: 0;
  font-weight: normal;
}

h5.headline {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  margin: 0;
  font-size: calc(1.4rem * 1.5);
  display: flex;
  text-align: center;
  align-items: center;
}

h5.headline::after {
  align-content: center;
  content: "";
  flex-grow: 1;
  margin: 0 3rem;
  height: 1px;
  background: #111;
  display: block;
}

h5.headline::before {
  align-content: center;
  content: "";
  flex-grow: 1;
  margin: 0 3rem;
  height: 1px;
  background: #111;
  display: block;
}

h5.urgeFooter {
  font-family: Lato, Noto Sans JP, sans-serif;
  font-size: calc(1.6rem * 1.5);
  text-align: center;
  line-height: calc(2rem * 1.5);
  margin: 0;
  font-weight: bold;
}

/* h6 text
------------------------------ */
h6.en {
  font-family: var(--font_eng);
  color: #5e5e5e;
  font-size: calc(1.8rem * 1.5);
  line-height: calc(2rem * 1.5);
  margin: 0;
  padding-bottom: 1%;
}

h6.jp {
  font-family: "Shipporimincho";
  font-size: calc(1.1rem * 1.5);
  line-height: calc(2rem * 1.5);
  margin: 0;
}

h6.jp span {
  font-family: Lato, Noto Sans JP, sans-serif;
  font-size: calc(1rem * 1.5);
  padding-left: 2%;
}

h6.en2 {
  font-family: var(--font_eng);
  color: #3552b1;
  font-size: calc(1.5rem * 1.5);
  text-align: left;
  line-height: calc(2rem * 1.5);
  margin: 0;
  padding-bottom: 1%;
}

h6.jp2 {
  font-family: Shipporimincho;
  font-size: calc(1.8rem * 1.5);
  text-align: left;
  line-height: calc(2rem * 1.5);
  margin: 0;
}

/* p text
------------------------------ */
p.lead {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.3rem * 1.5);
  text-align: center;
  line-height: calc(2.4rem * 1.5);
  margin: 0;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

p.lead span{
  display: inline-block
}

p.urge {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.4rem * 1.5);
  text-align: center;
  line-height: calc(3rem * 1.5);
  margin: 0;
}

p.ruby {
  font-size: calc(1rem * 1.5);
  font-weight: normal;
  margin: 0;
  text-align: center;
  letter-spacing: .2rem;
}

p.info_01 {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.2rem * 1.5);
  line-height: calc(2rem * 1.5);
  text-align: left;
  letter-spacing: .2rem;
  margin: 0;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

p.info_01 span {
  display: inline-block
}

p.sentence_01 {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.2rem * 1.5);
  line-height: calc(2.6rem * 1.5);
  text-align: center;
  letter-spacing: .2rem;
  margin: 0;
}

p.comment_01 {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.1rem * 1.5);
  line-height: calc(1.8rem * 1.5);
  text-align: left;
  letter-spacing: .2rem;
  margin: 0;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

p.comment_02 {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.1rem * 1.5);
  line-height: calc(2rem * 1.5);
  text-align: left;
  letter-spacing: .2rem;
  margin: 0;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

p.comment_02 span {
  display: inline-block;
}

p.period_01 {
  font-family: Lato, Noto Sans JP, sans-serif;
  font-size: calc(1.4rem * 1.5);
  text-align: center;
  line-height: calc(2.8rem * 1.5);
  margin: 0;
}

p.period_02 {
  font-family: Lato, Noto Sans JP, sans-serif;
  font-size: calc(1.4rem * 1.5);
  text-align: center;
  line-height: calc(2.8rem * 1.5);
  margin: 0;
  font-weight: bold;
}

/* figcaption text
------------------------------ */
figcaption.matter_01 {
  font-family: Lato, Noto Sans JP, sans-serif;
  font-size: calc(1.0rem * 1.5);
  text-align: left;
  line-height: calc(1.5rem * 1.5);
  margin: 0;
  display: flex;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

figcaption.matter_01::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  /* 左の余白 */
  border-right: 5px solid transparent;
  /* 右の余白 */
  border-bottom: 8px solid #333;
  /* 三角形の色と高さ */
  margin-right: 1%;
  margin-top: 1%;
}

/* li text
------------------------------ */
li.listText_01 {
  margin: 0;
  font-family: Lato, Noto Sans JP, sans-serif;
  text-align: left;
  color: #111;
  font-size: calc(1.3rem * 1.5);
  line-height: calc(2rem * 1.5);
  letter-spacing: .2rem;
  padding: 0 0 7%;
}

/* before after
------------------------------ */
.diamondIcon::before {
  content: '◆';
  font-size: 2.5rem;
  margin-right: 8px;
  display: contents;
}

.squareIcon::before {
  content: '■';
  font-size: 2rem;
  margin-right: 8px;
  display: contents;
}

/* color
------------------------------ */
.redTxt_01 {
  color: var(--c_red01) !important;
}

.fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
  color: var(--c_red01) !important;
  font-weight: bold !important;
}

.fs-c-productList__list__item .fs-c-productListItem__prices .fs-c-productPrice--selling .fs-c-productPrice__addon {
  color: var(--c_red01) !important;
  margin: 0;
  margin-left: 5px;
}

.whiteTxt {
  color: #fff !important;
}

.orangeTxt {
  color: #dd3900 !important;
}

.blueTxt {
  color: #1a317b !important;
}

.redTxt_01 {
  color: #D30003 !important;
}

/* bold
------------------------------ */
.boldTxt_01 {
  font-weight: bold;
}

/* btn
------------------------------ */
p.itemBtn {
  display: block;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  width: 100%;
  margin: 0 auto;
  padding: 1rem 4rem;
  font-weight: bold;
  border: 2px solid #555;
  color: #555;
  border-radius: 100vh;
  transition: 0.5s;
}

p.itemBtn :hover {
  opacity: 10;
  color: #fff;
  background: #555;
}

.contents_button a p.categoryBtn {
  display: block;
  padding: 2.5% 0;
  font-size: calc(1rem * 1.6);
  letter-spacing: .1rem;
  text-align: center;
  text-decoration: none;
  border: 1px solid #555;
  color: #555;
  margin: 0 auto;
}

.contents_button a p.categoryBtn:hover {
  opacity: 10;
  color: #fff;
  background: #555;
}

p.seriesBtn {
  margin: 0 auto;
  display: block;
  padding: 3.5% 0;
  font-size: 1rem;
  letter-spacing: .1rem;
  text-align: center;
  text-decoration: none;
  border: 1px solid #111;
  color: #111;
}

p.seriesBtn:hover {
  opacity: 10;
  color: #fff;
  background: #111;
}

/* carousel
  ------------------------------ */

.contents_carousel {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 5%;
}

.carouselImg {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.carouselBox {
  width: 100%;
  margin: 0 auto 0.5%;
  padding: 0 0.1%;
}

/*-----------矢印表示----------*/
a.slick-next:hover {
  opacity: 10;
}

/*表示する文字周りの設定*/

.contents_carousel .carouse .slick-prev:before {
  content: "";
  display: inline-block;
  width: 30px;
  /* スマホで見た時の幅 */
  height: 30px;
  /* スマホで見た時の高さ */
  background: url("https://lenoble.itembox.design/item/images/category/common/slick-prev.webp") no-repeat;
  background-size: contain;
  margin-right: 3px;
}

.contents_carousel .carouse .slick-next:before {
  content: "";
  display: inline-block;
  width: 30px;
  /* スマホで見た時の幅 */
  height: 30px;
  /* スマホで見た時の高さ */
  background: url("https://lenoble.itembox.design/item/images/category/common/slick-next.webp") no-repeat;
  background-size: contain;
  margin-right: 3px;
}

/*背景や位置の調整*/
.contents_carousel .carouse .slick-prev {
  top: 100%;
  left: 23%;
  z-index: 1;
}

.contents_carousel .carouse .slick-next {
  top: 100%;
  right: 23.2%;
  z-index: 2;
}

.contents_carousel .carouse .slick-dots li button::before {
  font-size: 20px;
  content: "\025cf";
}

.contents_carousel .carouse .slick-dots li {
  margin: 0 3px;
}

.contents_carousel .carouse .slick-counter {
  width: 30%;
  text-align: center;
  font-size: calc(1rem * 1.6);
  background-color: rgba(86, 86, 86, 0.4);
  padding: 2% 0;
  margin: 0 auto;
  color: #fff;
}

.contents_carousel .carouse .slick-counter span {
  text-align: center;
  font-size: calc(1.2rem * 1.6);
  font-weight: bold;
}

.contents_carousel .carouse .slick-dots {
  bottom: -30px;
}

/* other------------------------------ */
img.headPik {
  width: 100%;
}

/* --------------------------------
* yahoo
* -------------------------------- */
@media screen and (max-width: 1090px) {

  /* wrapper
  ------------------------------ */

}


/* --------------------------------
* rakuten
* -------------------------------- */
@media screen and (max-width: 840px) {


  /* wrapper
  ------------------------------ */

}

/* --------------------------------
* SP
* -------------------------------- */
@media screen and (max-width:639px) {


  /* wrapper
------------------------------ */

  /* wrap
------------------------------ */
  .wrap_coupon {
    margin: 12% auto 8%;
    padding: 0 0 10%;
  }

  .wrap_first {
    margin: 0 auto;
    padding: 3% 0 5%;
  }

  .wrap_second {
    margin: 0 auto;
    padding: 0 0 5%;
  }

  .wrap_third {
    margin: 0 auto;
    padding: 0 0 5%;
  }

  .wrap_fourth {
    width: 100%;
    margin: 0 auto;
    padding: 10% 0 8%;
  }

  /* contents
------------------------------ */
  .contents_logo {
    width: 70%;
    margin: 0 auto;
    padding: 5% 0 0;
  }

  .contents_title {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 4%;
  }

  .contents_ttl {
    width: 100%;
    margin: 0 auto;
    padding: 3% 0 6%;
  }

  .contents_urge {
    width: 100%;
    margin: 0 auto;
    padding: 8% 0 5%;
  }

  .contents_subject {
    width: 90%;
    margin: 0 auto;
    padding: 0 0 8%;
  }

  .contents_lead {
    width: 100%;
    margin: 0 auto;
    padding: 8% 5% 3%;
  }

  .contents_couponImg {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .contents_header {
    width: 100%;
    margin: 0 auto;
    padding: 0% 0 2% 2%;
  }

  .contents_heading {
    width: 100%;
    margin: 0 auto;
    padding: 8% 5%;
  }

  .contents_headerImg {
    width: 100%;
    margin: 0 auto;
    padding: 2% 3% 5%;
  }

  .contents_headline {
    width: 100%;
    margin: 0 auto;
    padding: 3% 5% 7%;
  }

  .contents_info {
    width: 90%;
    margin: 0 auto;
    padding: 0 2% 7%;
  }

  .contents_period {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 2%;
  }

  .contents_shopLink {
    width: 100%;
    margin: 0 auto;
    padding: 1% 0;
  }

  .contents_explain {
    width: 96%;
    margin: 0 auto 8%;
    padding: 3% 0 2%;
  }

  .contents_sentence {
    width: 90%;
    margin: 0 auto;
    padding: 5% 0 10%;
  }

  .contents_button {
    width: 100%;
    margin: 0 auto;
    padding: 3% 5%;
  }

  .contents_remarks {
    width: 100%;
    margin: 0 auto;
    padding: 8% 0 0;
  }

  /* box
------------------------------ */
  .btnBox_01 {
    width: 90%;
    margin: 5% auto;
    padding: 0;
  }

  .linkBox_01 {
    width: 90%;
    margin: 0 auto;
    padding: 4% 0;
  }

  /* block
------------------------------ */
  .block_subttl {
    width: 100%;
    margin: 0 auto;
    padding: 0 8%;
  }

  .imgBlock_01,
  .imgBlock_02,
  .imgBlock_03,
  .textBlock_01,
  .textBlock_02,
  .textBlock_03 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .itemBlock_01,
  .itemBlock_02 {
    width: 100%;
    margin: 0 auto;
    padding: 3% 0;
  }


  /* area
------------------------------ */

  /* outer
------------------------------ */

  /* button
------------------------------ */

  /* border
------------------------------ */
  .partition_01 {
    border-right: none;
    border-bottom: 1px solid #111;
  }

  .ttlBorder_blue {
    border-left: 15px solid #1a317b;
    border-bottom: 2px solid #1a317b;
  }

  .ttlBorder_red {
    border-left: 15px solid #b52024;
    border-bottom: 2px solid #b52024;
  }

  .ttlBorder_purple {
    border-left: 15px solid #5d17ab;
    border-bottom: 2px solid #5d17ab;
  }

  .ttlBorder_orange {
    padding: 1rem 0 1rem 1rem;
    border-left: .6rem solid #d87337;
  }

  /* Piece
------------------------------ */

  /*space
------------------------------ */

  /* element
------------------------------ */
  .photoElement_01 {
    width: 100%;
    margin: 0 auto;
    padding: 7% 0 3%;
  }


  .itemElement_01 {
    width: 100%;
  }

  /* inner
------------------------------ */
  .titleInner_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .buttonInner_01 {
    width: 100%;
    margin: 0 auto;
    padding: 2% 10%;
  }

  /* flex
------------------------------ */
  .flexBlock_01 {
    flex-direction: column-reverse;
  }

  /* h1_text
------------------------------ */
  h1.brand-header-name-jp {
    margin: 0;
    text-align: center;
    font-size: calc(1rem * 1.5);
    letter-spacing: .1em;
  }

  /* h3_text
------------------------------ */
  h3.brand-header-name-eng {
    margin: 0;
    font-size: calc(2rem * 1.5);
    line-height: calc(2rem * 1.5);
    letter-spacing: .05em;
    padding: 0;
  }

  h3.title {
    margin: 0;
    font-size: calc(1.2rem * 1.5);
    letter-spacing: 0;
    line-height: calc(1.8rem * 1.5);
    font-weight: bold;
  }

  h3.ttl {
    margin: 0;
    font-size: calc(1.7rem * 1.5);
    letter-spacing: .2rem;
    line-height: calc(2.5rem * 1.5);
  }

  h3.subject {
    margin: 0;
    font-size: calc(1.3rem * 1.5);
    line-height: calc(2.2rem * 1.5);
    letter-spacing: .2rem;
  }

  /* h4 text
------------------------------ */
  h4.title {
    margin: 0;
    font-size: calc(1.5rem * 1.5);
    line-height: calc(2.2rem * 1.5);
    letter-spacing: normal;
  }

  h4.ttl {
    margin: 0;
    font-size: calc(1.4rem * 1.5);
    line-height: calc(2rem * 1.5);
  }

  h4.header {
    margin: 0;
    font-size: calc(1.3rem * 1.5);
    line-height: calc(1.9rem * 1.5);
  }

  h4.headline {
    margin: 0;
    font-size: calc(1.5rem * 1.5);
    text-align: center;
  }

  h4.headline span {
    margin: 0;
    font-size: calc(2rem * 1.5);
  }

  h4.headline::before {
    content: "[";
  }

  h4.headline::after {
    content: "]";
  }

  /* h5 text
------------------------------ */
  h5.title {
    font-size: calc(1.2rem * 1.5);
    line-height: calc(2rem * 1.5);
    margin: 0;
    font-weight: normal;
    text-align: left;
  }

  h5.ttl {
    font-size: calc(1.4rem * 1.5);
    line-height: normal;
    margin: 0;
    letter-spacing: .3rem;
  }

  h5.topics {
    margin: 0;
    font-size: calc(1.2rem * 1.5);
    line-height: calc(1.6rem * 1.5);
    font-weight: normal;
  }

  h5.ttl span {
    font-size: calc(1.3rem * 1.5);
    line-height: normal;
    margin: 0;
  }

  h5.headline {
    margin: 0;
    font-size: calc(1.3rem * 1.5);
    display: block;
    text-align: center;
    align-items: center;
  }

  h5.headline::before {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 0 0 7px;
    height: 1px;
    display: block;
  }

  h5.headline::after {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 8px 0 0;
    height: 1px;
    display: block;
  }

  h5.urgeFooter {
    font-size: calc(1.2rem * 1.5);
    text-align: center;
    line-height: calc(1.8rem * 1.5);
    margin: 0;
    font-weight: bold;
  }

  /* p text
------------------------------ */
  p.lead {
    margin: 0;
    font-size: calc(1.05rem * 1.5);
    line-height: calc(1.8rem * 1.5);
  }

  p.urge {
    margin: 0;
    font-size: calc(1.2rem * 1.5);
    line-height: calc(2rem * 1.5);
  }

  p.info_01 {
    margin: 0;
    font-size: calc(1.05rem * 1.5);
    line-height: calc(1.7rem * 1.5);
    letter-spacing: .1rem;
  }

  p.text_01 {
    margin: 0;
    font-size: calc(1rem * 1.5);
    line-height: calc(1.7rem * 1.5);
    letter-spacing: normal;
    padding: 0;
  }

  p.sentence_01 {
    font-size: calc(1.05rem * 1.5);
    line-height: calc(2rem * 1.5);
    text-align: left;
    letter-spacing: normal;
    margin: 0;
  }

  p.period_01 {
    font-size: calc(1.2rem * 1.5);
    text-align: center;
    line-height: calc(2.2rem * 1.5);
    margin: 0;
  }

  p.period_02 {
    margin: 0;
    font-size: calc(1.3rem * 1.5);
    line-height: calc(2.2rem * 1.5);
    font-weight: bold;
  }

  p.comment_02 {
    font-size: calc(1.0rem * 1.5);
    line-height: calc(1.5rem * 1.5);
  }

  /* figcaption text
------------------------------ */
  li.listText_01 {
    margin: 0;
    font-size: calc(1.1rem * 1.5);
    line-height: calc(1.6rem * 1.5);
    text-align: left;
    letter-spacing: .1rem;
    padding: 0 0 6%;
  }

  /* figcaption text
------------------------------ */

  /* btn
------------------------------ */
  .contents_button a p.categoryBtn {
    padding: 4% 0;
    font-size: calc(0.9rem * 1.6);
  }

  p.itemBtn {
    font-size: calc(0.9rem * 1.6);
    width: 100%;
    margin: 0 auto;
    padding: 2% 0;
  }

  /* item_name
------------------------------ */

  /* carousel
  ------------------------------ */

  .carouselBox {
    width: 100%;
    margin: 0 auto 0.5%;
    padding: 0;
  }

  a.slick-next:hover {
    opacity: 10;
  }

  /*表示する文字周りの設定2段用*/
  .contents_carousel .carouse .slick-prev:before {
    content: "";
    display: inline-block;
    width: 25px;
    /* スマホで見た時の幅 */
    height: 25px;
    /* スマホで見た時の高さ */
    background: url("https://lenoble.itembox.design/item/images/category/common/slick-prev.webp") no-repeat;
    background-size: contain;
    margin-right: 3px;
  }

  .contents_carousel .carouse .slick-next:before {
    content: "";
    display: inline-block;
    width: 25px;
    /* スマホで見た時の幅 */
    height: 25px;
    /* スマホで見た時の高さ */
    background: url("https://lenoble.itembox.design/item/images/category/common/slick-next.webp") no-repeat;
    background-size: contain;
    margin-right: 3px;
  }

  /*背景や位置の調整*/
  .contents_carousel .carouse .slick-prev {
    top: 103%;
    left: 1.2%;
    z-index: 1;
  }

  .contents_carousel .carouse .slick-next {
    top: 103%;
    right: 2.7%;
    z-index: 2;
  }

  .contents_carousel .carouse .slick-dots li button::before {
    font-size: 15px;
    content: "\025cf";
  }

  .contents_carousel .carouse .slick-dots li {
    margin: 0 2px;
  }

  .contents_carousel .carouse .slick-counter {
    width: 30%;
    text-align: center;
    font-size: calc(1rem * 1.6);
    background-color: rgba(86, 86, 86, 0.4);
    padding: 2% 0;
    margin: 0 auto;
    color: #fff;
  }

  .contents_carousel .carouse .slick-counter span {
    text-align: center;
    font-size: calc(1.2rem * 1.6);
    font-weight: bold;
  }

  .contents_carousel .carouse .slick-dots {
    bottom: -25px;
  }
}