@charset "UTF-8";
/* base
 ------------------------------ */
* {
  box-sizing: border-box;
}
a {
  opacity: 10 !important;
}

a {
  -webkit-tap-highlight-color: rgba(86, 86, 86, 0.5);
}
h3,
h4,
h5 {
  font-weight: normal;
}
ul,
ol,
li {
  list-style: none;
}
/* page
 ------------------------------ */
.page-body {
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* container
 ------------------------------ */

.container_logo {
  width: 100%;
  margin: 0 auto;
  padding: 0 15%;
}
.container_header {
  margin: 0;
  width: 100%;
  padding: 0 5%;
}
.container_title {
  width: 100%;
  margin: 0 auto;
  padding: 0 5%;
}
.container_subttl {
  width: 100%;
  margin: 0 auto;
  padding: 0 5%;
}
.container_heading {
  width: 100%;
  margin: 0 auto;
  padding: 0 20%;
}
.container_main {
  width: 100%;
  margin: 0 auto;
  padding: 0 15% 3%;
}
.container_button {
  width: 100%;
  margin: 0 auto;
  padding: 0 15% 3%;
}
.container_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0 5% 3%;
}
.container_02 {
  width: 100%;
  margin: 0 auto;
  padding: 0 15% 3%;
}
.container_03 {
  width: 100%;
  margin: 0 auto;
  padding: 0 15%;
}
.container_04 {
  width: 100%;
  margin: 0 auto;
  padding: 0 15%;
}
.container_footer {
  width: 100%;
  margin: 0 auto;
  padding: 2% 0 5%;
}

/* wrapper
 ------------------------------ */
.wrapper_title {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 5%;
}
.wrapper_subttl {
  width: 100%;
  margin: 0 auto;
  padding: 8% 0 5%;
}
.wrapper_slider {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 1%;
}
.wrapper_heading {
  width: 100%;
  margin: 0 auto;
  padding: 8% 0 2%;
}
.wrapper_main {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.wrapper_button {
  width: 100%;
  margin: 0 auto 5%;
  padding: 0 0 10%;
}
.wrapper_01 {
  width: 100%;
  margin: 0 auto;
  padding: 5% 0;
}
.wrapper_02 {
  width: 100%;
  margin: 0 auto;
  padding: 7% 0 5%;
}
.wrapper_03 {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 1.5%;
}

/* outer
------------------------------ */

/* area
 ------------------------------ */
.area_01 {
  width: 23.5%;
  margin: 0;
  padding: 0;
}
.area_02 {
  width: 49%;
  margin: 0;
  padding: 0;
}
.area_03 {
  width: 100%;
  margin: 0 auto 1%;
  padding: 0;
}
.area_04 {
  width: 48%;
  margin: 0 auto;
  padding: 0;
}
.area_05 {
  width: 32%;
  margin: 0 auto;
  padding: 0;
}
.area_06 {
  width: 67%;
  margin: 0 auto;
  padding: 0;
}

/* contents
------------------------------ */
.contents_logo {
  width: 50%;
  margin: 0 auto;
  padding: 5% 0 2%;
}
.contents_header {
  width: 100%;
  margin: 0 auto;
  padding: 5% 0 0;
}
.contents_title {
  width: 100%;
  margin: 0 auto;
  padding: 3% 0 0;
}
.contents_ttl {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.contents_subttl {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.contents_headImg {
  width: 100%;
  margin: 0 auto 3%;
  padding: 0;
}
.contents_headline {
  width: 100%;
  margin: 0 auto 3%;
  padding: 0;
}
.contents_explain {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.contents_heading {
  width: 100%;
  margin: 0 auto 2%;
  padding: 2% 0;
}
.contents_lead {
  width: 100%;
  margin: 0 auto;
  padding: 1% 10% 0;
}
.contents_image {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.contents_item {
  width: 30%;
  margin: 0 0 2%;
  padding: 0 0 1%;
}
.contents_button {
  width: 100%;
  margin: 0;
  padding: 0 2%;
}
.contents_text {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.contents_01 {
  width: 100%;
  margin: 0 auto 10%;
}
.contents_02 {
  width: 100%;
  margin: 0 auto;
  padding: 0 15% 3%;
}
.contents_03 {
  width: 90%;
  margin: 0 auto;
  padding: 0;
}
.contents_04 {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 5%;
}
.contents_05 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.contents_06 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.contents_07 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.contents_footer {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* section
 ------------------------------ */
.section_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.section_02 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.section_03 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.section_04 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.section_05 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.section_06 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* figure
 ------------------------------ */
.figure_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.figure_02 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.figure_03 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.figure_04 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.figure_05 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.figure_06 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.figure_07 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.figure_08 {
  width: 100%;
  margin: 0 auto 4%;
  padding: 0;
}
.figure_09 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.figure_10 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.figure_11 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.figure_12 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* outer
------------------------------ */
.outer_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  transition-property: opacity;
  transition-duration: 0.3s;
}

.outer_01:hover {
  opacity: 0.5; 
}

.outer_02 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* block
------------------------------ */

.block_heading {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.block_subttl {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.block_explain {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.block_title {
  width: 30%;
  margin: 0 0 2%;
  padding: 0 0 1%;
  clear: both;
}
.block_button {
  width: 70%;
  margin: 0 auto;
  padding: 0 0 1%;
  clear: both;
}
.block_icon {
  width: 7%;
  margin: 0 auto;
  padding: 0;
}
.block_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.block_02 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.block_03 {
  width: 100%;
  margin: 0 auto;
  padding: 0 5%;
}
.block_04 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.block_05 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* fagot
 ------------------------------ */
.fagot_01 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* button
 ------------------------------ */

/* border
 ------------------------------ */

/* element
 ------------------------------ */

/* parts
 ------------------------------ */

/* box
 ------------------------------ */
.slider_box {
  width: 100%;
  margin: 0 auto 0.5%;
  padding: 0 0.2%;
  position: relative;
}
.columnBox_01 {
  width: 100%;
  margin: 0 auto 0.5%;
  padding: 0 0.2%;
  position: relative;
}
.columnBox_02 {
  width: 100%;
  margin: 0 auto 0.5%;
  padding: 0 0.2%;
  position: relative;
}
.box_01 {
  width: 32%;
  margin: 0 auto;
  padding: 0;
}
.box_02 {
  width: 32%;
  margin: 0 auto;
  padding: 0;
}
.box_02 {
  width: 32%;
  margin: 0 auto;
  padding: 0;
}

/* layer
 ------------------------------ */
.layer_01 {
  width: 100%;
  margin: 0 auto;
  padding: 4% 0 1%;
}
.layer_02 {
  width: 100%;
  margin: 0 auto;
  padding: 1% 0 4%;
}
.layer_03 {
  width: 100%;
  margin: 0 auto;
  padding: 2% 4% 0;
}
.layer_04 {
  width: 100%;
  margin: 4% auto 0;
  padding: 0 10%;
}
.layer_05 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/*space
------------------------------ */
.space_left {
  padding: 5% 0 0 1%;
}
.space_right {
  padding-right: 0 2%;
}

/*hover
------------------------------ */

/*background-color
------------------------------ */
.white_bk {
  background: rgba(255, 255, 255, 1);
}
.gray_bk {
  background: rgba(238, 238, 238, 1);
}
.beige_bk {
  background: rgba(240, 238, 228, 1);
}
.pink_bk {
  background: rgba(251, 222, 218, 0.5);
}
.yellow_bk {
  background: rgba(229, 212, 118, 0.6);
}
.margarine_bk {
  background: rgba(238, 232, 170, 0.6);
}

/* font
------------------------------ */
@font-face {
  font-display: swap;
  font-family: "Lato,Noto Sans JP,sans-serif";
  src: url("https://lenoble.itembox.design/item/images/font/") format("eot"),
    url("https://lenoble.itembox.design/item/images/font/") format("woff"),
    url("https://lenoble.itembox.design/item/images/font/") format("opentype");
}
.contents_wrap {
  font-family: "Noto Sans JP", sans-serif;
}

/* flex
------------------------------ */

.flexarea_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;
  flex-direction: row;
  column-gap: 2%;
}
.flexarea_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;
  flex-direction: row-reverse;
}
.flexarea_03 {
  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: space-between;
  flex-direction: row;
}
.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;
  flex-direction: row;
}
.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;
  flex-direction: row;
  column-gap: 1%;
}
.flexbox_03 {
  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;
  flex-direction: row;
}
.innerflex_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;
  flex-direction: row;
  column-gap: 1.5%;
}

/* images img
------------------------------ */
.figure_01 img,
.figure_02 img,
.figure_03 img,
.figure_04 img,
.figure_05 img,
.figure_06 img,
.figure_07 img,
.figure_08 img,
.figure_09 img,
.figure_10 img,
.figure_11 img,
.figure_12 img {
  width: 100%;
  display: block;
}

/* h3 text
------------------------------ */
h3.title {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(2rem * 1.6);
  text-align: center;
  margin: 0;
  letter-spacing: calc(0.2rem * 1.6);
}
h3.ttl {
  font-family: Lato, Noto Sans JP, sans-serif;
  font-size: calc(3rem * 1.6);
  text-align: center;
  margin: 0;
  font-weight: normal;
  color: #111;
  letter-spacing: calc(1rem * 1.6);
}
h3.ttl span {
  font-family: Lato, Noto Sans JP, sans-serif;
  font-size: calc(2.8rem * 1.6);
  text-align: center;
  line-height: calc(3rem * 1.6);
  margin: 0;
  padding: 0;
  font-weight: normal;
  color: #111;
}

/* h4 text
------------------------------ */
h4.title {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(2.5rem * 1.6);
  text-align: center;
  margin: 0;
  line-height: calc(2.5rem * 1.6) !important;
}
h4.ttl {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(2rem * 1.6);
  text-align: center;
  margin: 0;
  line-height: calc(2.5rem * 1.6) !important;
}
h4.headline {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  margin: 0;
  font-size: calc(2rem * 1.6);
  text-align: center;
  align-items: center;
}
h4.headline span {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  margin: 0;
  font-size: calc(1.4rem * 1.6);
}

/* h5 text
------------------------------ */
h5.title {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.3rem * 1.6);
  text-align: left;
  line-height: calc(1.5rem * 1.6) !important;
  margin: 0;
  padding: 0 0 0 5%;
  font-weight: normal;
  position: relative;
}

h5.ttl {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.7rem * 1.6);
  text-align: center;
  line-height: calc(2rem * 1.6) !important;
  margin: 0;
  font-weight: normal;
}
h5.topics {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.6rem * 1.6);
  text-align: center;
  line-height: calc(2rem * 1.6) !important;
  margin: 0;
  font-weight: normal;
}
h5.headline {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  margin: 0;
  font-size: calc(2rem * 1.6);
  display: flex;
  text-align: center;
  align-items: center;
}
h5.headline::after {
  align-content: center;
  content: "";
  flex-grow: 1;
  margin: 0 calc(3rem * 1.6);
  height: 1px;
  background: #111;
  display: block;
}
h5.headline::before {
  align-content: center;
  content: "";
  flex-grow: 1;
  margin: 0 calc(3rem * 1.6);
  height: 1px;
  background: #111;
  display: block;
}

/* p text
------------------------------ */
p.lead {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.2rem * 1.6);
  text-align: left;
  line-height: calc(2.2rem * 1.6);
  margin: 0;
  letter-spacing: calc(0.1rem * 1.6);
}
p.text_01 {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.2rem * 1.6);
  text-align: left;
  line-height: calc(2.2rem * 1.6);
  margin: 0;
  letter-spacing: calc(0.1rem * 1.6);
}
p.text_02 {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.1rem * 1.6);
  text-align: left;
  line-height: calc(2rem * 1.6);
  margin: 0;
}
p.en {
  font-family: Lato, Noto Sans JP, sans-serif;
  color: #111;
  font-size: calc(1.3rem * 1.6);
  font-weight: normal;
  margin: 0;
  text-align: center;
}
p.see {
  font-size: calc(0.9rem * 1.6);
  text-align: right;
  margin: 0;
}
p.btntext {
  font-family: Lato, Noto Sans JP, sans-serif;
  margin: 0;
  font-size: calc(1.1rem * 1.6) !important;
  letter-spacing: calc(0.1rem * 1.6);
  text-align: left;
  text-decoration: none;
}

/* price
------------------------------ */

/* btn
------------------------------ */
a.categoryBtn {
  display: block;
  padding: 6% 2%;
  font-size: calc(1rem * 1.6) !important;
  letter-spacing: calc(0.2rem * 1.6);
  text-align: left;
  text-decoration: none;
  border: 1px solid #111;
  color: #111;
  margin: 0 0 4%;
  position: relative;
}
a.categoryBtn:hover {
  opacity: 10 !important;
  color: #fff;
  background: #505050;
}

a.categoryBtn::after {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  font-family: "fs-icon" !important;
  line-height: 1;
  color: #111;
  content: "\03e";
  font-size: calc(1.5rem * 1.6);
  transition: right 0.25s ease;
}
a.categoryBtn:hover::after {
  opacity: 10 !important;
  color: #fff;
}
.seriesBtn p {
  margin: 0 auto;
  display: block;
  padding: 3% 0;
  font-size: calc(1.1rem * 1.6);
  letter-spacing: calc(0.1rem * 1.6);
  text-align: center;
  text-decoration: none;
  border: 1px solid #505050;
  color: #505050;
}
.seriesBtn p:hover {
  opacity: 10 !important;
  color: #fff;
  background: #505050;
}

/*-----------矢印表示----------*/
a.slick-next:hover {
  opacity: 10;
}
/*表示する文字周りの設定*/

.parts_04 .pickup_slider .slick-prev:before {
  content: "\03c";
  color: #fff;
  opacity: 1;
  font-size: calc(1.5rem * 1.6);
  line-height: normal;
  display: inline-block; /* 変形するためのブロック化 */
  transform: none !important; /* 変形 横,縦 */
  align-items: center;
}
.parts_04 .pickup_slider .slick-next:before {
  content: "\03e";
  color: #fff;
  opacity: 1;
  font-size: calc(1.5rem * 1.6);
  line-height: normal;
  display: inline-block; /* 変形するためのブロック化 */
  transform: none !important; /* 変形 横,縦 */
  align-items: center;
}

/*背景や位置の調整*/
.parts_04 .pickup_slider .slick-prev {
  top: 47%;
  left: -2%;
  z-index: 1;
  width: auto;
  height: auto;
  padding: 0 0.5%;
  color: #fff;
  background-color: rgba(86, 86, 86, 0.4);
  transition: 0.4s;
}

.parts_04 .pickup_slider .slick-next {
  top: 47%;
  right: -2%;
  width: auto;
  height: auto;
  padding: 0.8% 1% 1%;
  background-color: rgba(86, 86, 86, 0.4);
  transition: 0.4s;
}
.parts_04 .pickup_slider .slick-dots li button::before {
  font-size: 20px;
  content: "\025cf";
}
.parts_04 .pickup_slider .slick-dots li {
  margin: 0 10px;
}
.parts_04 .pickup_slider .slick-arrow {
  background-color: rgba(86, 86, 86, 0.4) !important;
  padding: 0.1% 2.2% !important;
  border: solid 1px #fff;
  border-radius: 50%;
}
.parts_04 .pickup_slider .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;
}
.parts_04 .pickup_slider .slick-counter span {
  text-align: center;
  font-size: calc(1.2rem * 1.6);
  font-weight: bold;
}

.parts_09 .item_slider .slick-prev:before {
  content: "\03c";
  color: #fff;
  opacity: 1;
  font-size: 15px;
  display: inline-block; /* 変形するためのブロック化 */
  transform: scale(1, 4); /* 変形 横,縦 */
}
.parts_09 .item_slider .slick-next:before {
  content: "\03e";
  color: #fff;
  opacity: 1;
  font-size: 15px;
  display: inline-block; /* 変形するためのブロック化 */
  transform: scale(1, 4); /* 変形 横,縦 */
}

/*背景や位置の調整*/
.parts_09 .item_slider .slick-prev {
  top: 44%;
  left: -2%;
  z-index: 1;
  width: auto;
  height: auto;
  padding: 0 0.5%;
  color: #fff;
  background-color: rgba(86, 86, 86, 0.4);
  transition: 0.4s;
}

.parts_09 .item_slider .slick-next {
  top: 44%;
  right: -2%;
  width: auto;
  height: auto;
  padding: 0.8% 1% 1%;
  background-color: rgba(86, 86, 86, 0.4);
  transition: 0.4s;
}
.parts_09 .item_slider .slick-dots li button::before {
  font-size: 20px;
  content: "\025cf";
}
.parts_09 .item_slider .slick-dots li {
  margin: 0 10px;
}
.parts_09 .item_slider .slick-arrow {
  background-color: rgba(86, 86, 86, 0.4) !important;
  padding: 20% 0.3% !important;
}

/* other------------------------------ */
.space {
  margin: 5% 0;
}
.pc_display {
  display: block !important;
}
.sp_display {
  display: none !important;
}
.br_pc {
  display: block !important;
}
.br_sp {
  display: none !important;
}
.pc_img {
  display: block !important;
}
.sp_img {
  display: none !important;
}

/* toick item------------------------------ */

/*.items {
  clear: both;
  border-bottom: #C3C3C3 1px solid;
  padding-bottom: 45px;
  margin-bottom: 30px;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  padding: 0 10%;
}*/
.event_header_christmas_banner_list {
  display: none !important;
}
/*.event_prod_list_header{
  display: none!important;
}*/

/* modal------------------------------ */

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
}

.bigimg {
  position: absolute;
  width: 80%;
  max-width: 800px;
  top: 80px;
  left: 0;
  right: 0;
  margin-right: auto;
  margin-left: auto;
}
.bigimg img {
  width: 100%;
}

.close-btn {
  color: #fff;
  font-size: 40px;
  position: absolute;
  right: 20px;
  top: 0;
}

.close-btn a {
  color: #fff;
  text-decoration: none;
}

/* --------------------------------
* モール
* -------------------------------- */
@media screen and (max-width: 840px) {
  /* container
------------------------------ */
  .container_header {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }
  .container_title {
    width: 100%;
    margin: 3% auto;
    padding: 0 10%;
  }
  .container_subttl {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .container_button {
    margin: 0 auto 12%;
    padding: 0 2%;
  }
  .container_01 {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }
  .container_02 {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }
  .container_03 {
    width: 100%;
    margin: 0 auto;
    padding: 0 1.5%;
  }

  /* contents
------------------------------ */
  .contents_header {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }
  .contents_logo {
    width: 40%;
    margin: 0 auto;
    padding: 1% 0 3%;
  }
  .contents_title {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }
  .contents_lead {
    width: 100%;
    margin: 0 auto;
    padding: 6% 0 2%;
  }
  .contents_01 {
    margin: 0 auto;
  }
  .contents_02 {
    margin: 0 auto;
  }

  .contents_04 {
    margin: 0 auto;
  }
  /* block
------------------------------ */
  .block_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .block_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    position: static;
    top: 0;
    left: 0;
    transform: translateY(0) translateX(0);
  }
  .block_03 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .block_04 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .block_05 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .block_06 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  /* parts
------------------------------ */
  .parts_02 {
    width: 100%;
    margin: 0 auto 5%;
    padding: 0 20%;
  }
  .parts_03 {
    width: 100%;
    margin: 0 auto 1%;
    padding: 0;
  }
  .parts_04 {
    width: 100%;
    margin: 0 auto 4%;
    padding: 0;
  }
  .parts_05 {
    width: 90%;
    margin: 0 auto 5%;
    padding: 0;
  }
  .parts_06 {
    width: 80%;
    margin: 0 auto;
  }

  /* layer
------------------------------ */
  .layer_04 {
    width: 100%;
    margin: 2% auto 5%;
    padding: 0;
  }

  /* inside
------------------------------ */
  .inside_01 {
    width: 100%;
    margin: 0 auto 4%;
    padding: 0;
  }
  .inside_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0 4%;
  }
  /* reduce
------------------------------ */

  /* flex
------------------------------ */
  .flexbox_02 {
    flex-direction: row-reverse;
  }
  .flexbox_03 {
    flex-direction: row;
  }

  /* h3 text
------------------------------ */
  h3.title {
    font-size: calc(1.5rem * 1.6);
    margin: 0;
    letter-spacing: calc(0.2rem * 1.6);
  }
  h3.ttl {
    font-size: calc(2rem * 1.6);
    margin: 0;
  }
  h3.ttl span {
    font-size: calc(2rem * 1.6);
    margin: 0;
  }

  /* h4 text
------------------------------ */
  h4.ttl {
    margin: 0;
    font-size: calc(2rem * 1.6);
    line-height: calc(3.2rem * 1.6);
  }
  h4.headline {
    margin: 0;
    font-size: calc(2.1rem * 1.6);
  }

  /* h5 text
------------------------------ */

  h5.title {
    font-size: calc(1.8rem * 1.6);
    text-align: center;
    line-height: calc(2rem * 1.6) !important;
    margin: 0;
    font-weight: normal;
  }
  h5.ttl {
    font-size: calc(1.5rem * 1.6);
    line-height: calc(2rem * 1.6);
    margin: 0;
  }
  h5.headline {
    margin: 0;
    font-size: calc(1.6rem * 1.6);
  }
  h5.topics {
    font-size: calc(1.2rem * 1.6);
    line-height: calc(2rem * 1.6) !important;
    margin: 0;
  }
  /* p text
------------------------------ */
  p.lead {
    font-size: calc(1.1rem * 1.6);
    line-height: calc(2rem * 1.6);
    margin: 0;
  }
  p.text_01 {
    font-size: calc(1rem * 1.6);
    margin: 0;
    line-height: calc(1.8rem * 1.6);
  }
  p.text_02 {
    font-size: calc(1rem * 1.6);
    margin: 0;
    line-height: calc(1.8rem * 1.6);
  }
  p.ruby {
    font-size: calc(0.9rem * 1.6);
    font-weight: normal;
    margin: 0;
    text-align: center;
  }

  /* h3 Btn
------------------------------ */
  a.seriesBtn {
    margin: 0 auto;
    font-size: calc(0.9rem * 1.6) !important;
    padding: calc(1rem * 1.6) 0 !important;
  }

  /* other
------------------------------ */
  .plug {
    margin: -7% 0 0;
  }
  .br_pc {
    display: none !important;
  }
  .br_sp {
    display: block !important;
  }
  .pc_img {
    display: none !important;
  }
  .sp_img {
    display: block !important;
    width: 100%;
  }
}

/* --------------------------------
* SP
* -------------------------------- */
@media screen and (max-width: 639px) {
  /* base */

  /* page
------------------------------ */
  .page-body {
    padding: 0;
  }

  /* container
 ------------------------------ */

  .container_logo {
    margin: 0 auto;
    padding: 0;
  }
  .container_header {
    margin: 0 auto;
    padding: 0;
  }
  .container_title {
    margin: 0 auto;
    padding: 0;
  }
  .container_subttl {
    margin: 0 auto;
    padding: 0;
  }
  .container_heading {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .container_main {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  /* wrapper
 ------------------------------ */
  .wrapper_top {
    margin: 0 auto 4%;
    padding: 0;
  }
  .wrapper_title {
    width: 100%;
    margin: 0 auto;
    padding: 7% 0;
  }
  .wrapper_subttl {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 5%;
  }
  .wrapper_heading {
    width: 100%;
    margin: 0 auto;
    padding: 11% 0 2%;
  }
  .wrapper_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .wrapper_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .wrapper_03 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .wrapper_04 {
    width: 100%;
    margin: 0 auto 5%;
    padding: 0.5% 0 7%;
  }

  /* area
------------------------------ */
  .area_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .area_02 {
    width: 100%;
    margin: 0 auto;
    padding: 6% 0;
  }
  .area_03 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .area_04 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .area_05 {
    width: 70%;
    margin: 0 auto;
    padding: 5% 0 3%;
  }
  .area_06 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  /* outer
------------------------------ */

  /* contents
------------------------------ */
  .contents_logo {
    width: 80%;
    margin: 0 auto;
    padding: 7% 0 8%;
  }
  .contents_lead {
    width: 100%;
    margin: 0 auto;
    padding: 0 5%;
  }
  .contents_headImg {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .contents_headline {
    width: 100%;
    margin: 0 auto;
    padding: 4% 2% 7%;
  }
  .contents_explain {
    width: 100%;
    margin: 0 auto;
    padding: 0 4%;
  }
  .contents_heading {
    width: 100%;
    margin: 0 auto;
    padding: 2% 0 1%;
  }
  .contents_subttl {
    width: 100%;
    margin: 0 auto;
    padding: 4% 5% 2%;
  }
  .contents_button {
    width: 100%;
    margin: 0 auto;
    padding: 0 6%;
  }
  .contents_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 5%;
  }
  .contents_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0 5% 4%;
  }
  .contents_04 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 5%;
  }

  /* figure
------------------------------ */
  .figure_04 {
    width: 80%;
    margin: 0 auto;
    padding: 0;
  }
  /* box
------------------------------ */

  .box_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 4%;
  }
  .box_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 4%;
  }
  .box_03 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  /* block
------------------------------ */
  .block_title {
    width: 100%;
    margin: 0;
    padding: 0;
    clear: both;
  }
  .block_button {
    width: 100%;
    margin: 0;
    padding: 0 0 3%;
    clear: both;
  }
  .block_01 {
    margin: 0 auto;
    padding: 0;
  }
  .block_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 4%;
  }
  .block_03 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  .block_04 {
    margin: 5% auto 0;
    padding: 0;
  }
  .block_05 {
    width: 100%;
    margin: 5% auto 8%;
    padding: 0;
  }
  .block_06 {
    width: 80%;
    margin: 0 auto;
    padding: 2% 0;
  }
  .block_07 {
    width: 100%;
    margin: 0 auto;
    padding: 0 2% 4%;
  }

  /* parts
------------------------------ */
  .parts_01 {
    margin: 0 auto;
    padding: 0;
  }
  .parts_02 {
    margin: 0 auto;
    padding: 3% 15% 0;
  }
  .parts_03 {
    margin: 0 auto 1%;
    padding: 0;
  }
  .parts_04 {
    width: 100%;
    margin: 0 auto 3%;
    padding: 0;
  }
  .parts_05 {
    width: 80%;
    margin: 0 auto 5%;
    padding: 0;
  }
  .parts_06 {
    margin: 0 auto;
  }
  .parts_07 {
    width: 90%;
    margin: 5% auto;
    padding: 0;
  }

  /* layer
------------------------------ */
  .layer_03 {
    width: 100%;
    margin: 0 auto;
    padding: 6% 4%;
  }
  .layer_04 {
    width: 100%;
    margin: 0 auto 5%;
    padding: 0 8%;
  }

  /* flex
------------------------------ */
  .flexarea_01 {
    flex-direction: column;
  }
  .flexbox_01 {
    flex-direction: column;
  }
  .flexbox_02 {
    flex-direction: column;
  }

  /* h3_text
------------------------------ */
  h3.title {
    font-size: calc(1.5rem * 1.6);
    margin: 0;
    letter-spacing: 0;
    line-height: calc(1.8rem * 1.6);
  }
  h3.ttl {
    font-size: calc(2rem * 1.6);
    margin: 0;
    letter-spacing: calc(0.2rem * 1.6);
  }

  /* h4 text
------------------------------ */
  h4.title {
    font-size: calc(1.7rem * 1.6);
    margin: 0;
    line-height: calc(2rem * 1.6) !important;
    letter-spacing: normal;
  }
  h4.ttl {
    font-size: calc(1.4rem * 1.6);
    margin: 0;
    line-height: calc(2rem * 1.6);
  }
  h4.headline {
    margin: 0;
    font-size: calc(1.8rem * 1.6);
    display: block;
    text-align: center;
  }
  h4.headline span {
    margin: 0;
    font-size: calc(1.2rem * 1.6);
  }

  /* h5 text
------------------------------ */
  h5.title {
    font-size: calc(1.2rem * 1.6);
    line-height: calc(2rem * 1.6) !important;
    margin: 0;
    font-weight: normal;
    text-align: left;
  }
  h5.ttl {
    font-size: calc(1.6rem * 1.6);
    line-height: normal;
    margin: 0;
    letter-spacing: calc(-0.1rem * 1.6);
  }
  h5.headline {
    margin: 0;
    font-size: calc(1.4rem * 1.6);
    display: block;
    text-align: center;
    align-items: center;
  }
  h5.headline::after {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 0 calc(3rem * 1.6);
    height: 1px;
    display: block;
  }
  h5.headline::before {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 0 calc(3rem * 1.6);
    height: 1px;
    display: block;
  }
  h5.catch {
    font-size: calc(1.1rem * 1.6);
    text-align: center;
    line-height: calc(2rem * 1.6) !important;
    margin: 0;
    font-weight: normal;
  }

  /* p text
------------------------------ */
  p.lead {
    font-size: calc(1rem * 1.6);
    margin: 0;
    line-height: calc(1.6rem * 1.6);
  }
  p.text_01 {
    font-size: calc(0.95rem * 1.6);
    line-height: calc(1.4rem * 1.6);
    margin: 0;
    padding: 0;
  }
  p.text_02 {
    font-size: calc(0.95rem * 1.6);
    line-height: calc(1.4rem * 1.6);
    margin: 0;
    padding: 0;
  }
  p.text_03 {
    font-size: calc(0.95rem * 1.6);
    line-height: calc(1.4rem * 1.6);
    margin: 0;
    padding: 0;
  }

  /*矢印表示
--------------------------------*/
  a.slick-next:hover {
    opacity: 10;
  }
  /*表示する文字周りの設定2段用*/
  .parts_04 .pickup_slider .slick-prev:before {
    content: "\03c";
    color: #fff;
    opacity: 1;
    font-size: calc(1rem * 1.6);
    line-height: normal;
    display: inline-block; /* 変形するためのブロック化 */
    transform: none !important; /* 変形 横,縦 */
    align-items: center;
  }
  .parts_04 .pickup_slider .slick-next:before {
    content: "\03e";
    color: #fff;
    opacity: 1;
    font-size: calc(1rem * 1.6);
    line-height: normal;
    display: inline-block; /* 変形するためのブロック化 */
    transform: none !important; /* 変形 横,縦 */
    align-items: center;
  }

  /*背景や位置の調整*/
  .parts_04 .pickup_slider .slick-prev {
    top: 47%;
    left: -0.8%;
    z-index: 1;
    width: auto;
    height: auto;
    padding: 0 0.5%;
    color: #fff;
    background-color: rgba(86, 86, 86, 0.4);
    transition: 0.4s;
  }

  .parts_04 .pickup_slider .slick-next {
    top: 47%;
    right: -0.8%;
    width: auto;
    height: auto;
    padding: 0.8% 1% 1%;
    background-color: rgba(86, 86, 86, 0.4);
    transition: 0.4s;
  }
  .parts_04 .pickup_slider .slick-dots li button::before {
    font-size: 20px;
    content: "\025cf";
  }
  .parts_04 .pickup_slider .slick-dots li {
    margin: 0 10px;
  }
  .parts_04 .pickup_slider .slick-arrow {
    background-color: rgba(86, 86, 86, 0.4) !important;
    padding: 0.8% 2.5% !important;
    border: solid 1px #fff;
    border-radius: 50%;
  }
  .parts_04 .pickup_slider .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;
  }
  .parts_04 .pickup_slider .slick-counter span {
    text-align: center;
    font-size: calc(1.2rem * 1.6);
    font-weight: bold;
  }

  /* btn
------------------------------ */
  .seriesBtn p {
    padding: 1.5% 0;
    font-size: calc(1rem * 1.6);
    letter-spacing: normal;
  }

  /* item_name
------------------------------ */
  .item_ttl_name {
    font-size: calc(0.8rem * 1.6) !important;
    text-align: left;
    line-height: calc(0.8rem * 1.6) !important;
    margin: 0 !important;
  }
  .price_box {
    margin: 12% 0 0 !important;
  }

  /* other
------------------------------ */
  .pc_display {
    display: none !important;
  }
  .sp_display {
    display: block !important;
  }
  .br_pc {
    display: none !important;
  }
  .br_sp {
    display: block !important;
  }
  .pc_img {
    display: none !important;
  }
  .sp_img {
    display: block !important;
    width: 100%;
  }
}
