@charset "UTF-8";

/*----------MENU-------------

 Reset
 block-main
 目次
 top_runking おすすめランキング
 halloween_2026_area
 限定粒ご紹介 chocolate_area
 iziModals
 flex_list
 ギフトシーンで選ぶ　予算別
 footer_menu
 ページトップへ戻る block-page-top

 chocotto_guide

------------MENU-----------*/

/*-------------------------
	Reset
---------------------------*/
* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  box-sizing: border-box; }

article,
aside,
details,
figcaption,
figure,
hgroup,
menu,
section,
main {
  display: block; }

body {
  -webkit-text-size-adjust: 100%; }

.clearfix::after {
   content: "";
   display: block;
   clear: both;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: bold;}

h1{
  margin: 10px 0 10px;
}

.brand_title_item h1{
  margin: 0 0 0 !important;
}

table,
input,
textarea,
select,
option {
  line-height: 1.1; }

table {
  border-collapse: collapse;
}

blockquote,
q {
  quotes: none; }

*:focus {
outline: none!important;
}

a {outline:none!important;}

a {
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  cursor:pointer!important;
}

a,
ins {
  text-decoration: none; }

del {
  text-decoration: line-through; }

img {
  max-width:100%;
  vertical-align: top; }

a {
  transition: 0.3s ease-in-out; }

ul li{
  list-style:none;
}

ul{
  margin:0;
  padding:0;
}

body.halloween_2026{
  background: none;
}

body.halloween_2026 .block-top-topic--body{
  background: none;
}

body.halloween_2026 .wrapper{
  background: none;
}

body.halloween_2026 .pane-contents{
  /*font-family: 'Noto Sans JP', "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;*/
  /*letter-spacing: .11em;*/
  background: #f6f0e8;
  padding: 0px 0;
  background-size: 5%;
  color: #2a2330;
}

.pc_only_inline{
  display: inline-block;
}
.pc_only{
  display: block;
}
.sp_only_inline{
  display: none;
}
@media (max-width: 767px){
  body.halloween_2026 .pane-contents{
  background-size: 12%;
}

  .pc_only_inline{
  display: none;
}
.pc_only{
  display: none;
}
.sp_only_inline{
  display: inline-block;
}
  }

#item_02{
  padding: 30px 0 30px;
  background: url(/halloween/img/star_orange.webp), #FDF6EC;
  background-size: 4%;
}

#item_02 .staff_voice_2{
  color: #000;
}


.wrap {
    max-width: 1400px!important;
    margin: auto;
    padding: 0 0.8rem;
}

@media (max-width: 1420px) {
    #item_02 .wrap {
        margin: 0 10px 0px;
    }

    #item_02{
      padding: 10px 0 10px;
      background-size: 6%;
    }
}

.bnr_area_section .wrap {
    max-width: 1200px!important;
    margin: auto;
    padding: 0 0.8rem;
}

.wrap_1600{
  max-width: 1600px;
    margin: auto;
    padding: 0 0.8rem;
}

p.mincho{
  font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
  font-size: 14px;
}

@media (max-width: 320px){
p.mincho{
  /*letter-spacing: -.07em;*/
}
}

.mt_10{
  margin-top:10px;
}


/* ----------------------------------------------------------
concept
---------------------------------------------------------- */
.concept{
  background: #12192d;
  padding: 20px 0;
  color: #F6F1E8;
}

/* 星空の背景のスタイル */
.stars {
  position: relative;
  width: 100%; /* 星空の横幅 */
  height: 100%; /* 星空の縦幅 */
  overflow: hidden; /* 星が枠外にはみ出すのを防ぐ */
}

/* 星のスタイル */
.star {
  position: absolute;
  display: block;
  background-color: #fff; /* 星の色 */
  border-radius: 50%;
  box-shadow: 0 0 4px 2px rgba(#fff, 0.2); /* 星の影 */
  opacity: 0;
  animation: twinkle 5s infinite;
}

/* 星がキラキラ光るアニメーション */
@keyframes twinkle {
  0% {
    opacity: 0;
  }

  50% {
    transform: scale(1.1);
    opacity: 1;
  }

  100% {
    opacity: 0;
    transform: scale(1);
  }
}

.concept_inner {
    max-width: 768px;
    margin: 0px auto 90px; /*margin: 0px auto 0px;*/
    padding: 0px 10px;
    height: auto;
    text-align: center;
}

.concept_inner h1{
  font-size: 50px;
  color: #E0C683;
  font-weight: 400;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .concept_inner h1{
  flex-direction: column;
}
}

.concept_inner h2{
  margin: 0px 0px 10px;
}

.concept_inner p {
  font-size: 16px;
  padding: 1rem 0;
  line-height:1.8;
}

@media screen and (min-width:768px) and (max-width:1600px) {
.concept{
  background-size: 8%;
}
}



/* concept内 */
.curve-section {
  position: relative;
  padding: 20px 0px 0px; /* padding: 20px 20px 100px; 下部にSVGの高さ分の余白を確保 */
  text-align: center;
}

/* SVGを囲むコンテナ */
.svg-divider {
  position: absolute;
  bottom: 0;
  left: -2px; /* 線の太さに合わせて少しだけ左にずらす */
  width: calc(100% + 4px); /* 右側も同様に広げて画面外へ逃がす */
  overflow: hidden;
  line-height: 0;
}

/* PC・タブレット */
.svg-divider svg {
  position: relative;
  display: block;
  width: 100%;
  height: 100px;
}

/* スマートフォンの設定 */
@media (max-width: 767px) {
  .curve-section {
  position: relative;
  padding: 20px 0 0;
  /*padding: 20px 20px 60px;  下部にSVGの高さ分の余白を確保 */
}
  .svg-divider svg {
    height: 40px; /* 高さを低くすることで、カーブを緩やかに */
  }
}

/* 下のセクションの背景色 */
.svg-divider .path-bg {
  fill: #f6f0e8;
}

/* ゴールドの線（20px設定） */
.svg-divider .path-line {
  fill: none;
  stroke: url(#gold-gradient);
  stroke-width: 20px;
  stroke-linecap: roud; /* 万が一の端の処理を丸に */
  stroke-linejoin: round;
}

.block-baloon-right_area .person, .block-baloon-left_area .person {
    width: 15%;
    height: auto;
    margin: 0;
}

@media screen and (max-width: 539px) {
    .block-baloon-top_area .person, .block-baloon-bottom_area .person, .block-baloon-right_area .person, .block-baloon-left_area .person {
        width: 18%;
        height: auto;
    }
}

/* ----------------------------------------------------------
  目次
---------------------------------------------------------- */
/*--------------------------------------------------------------
  mokuji_img
--------------------------------------------------------------*/

.Collection-Caegory{
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 550px;
  margin: auto;
}

.halloween_2026 .price_search h2 {
    font-size: 40px;
    color: #AA803E;
    margin: 10px auto 0px;
    text-align: center;
    position: relative;
    font-weight: 400;
    line-height: 1;
    /*letter-spacing: -0.005em;*/
}

p.Collection-Caegory-guide{
  font-size: 14px;
  text-align: center;
  margin: 10px auto 20px;
}

.halloween_2026 .mokuji_img {
    max-width: 1200px;
    width: 100%;
    padding: 0px 10px 0px;
    margin: auto;
}

.halloween_2026 .mokuji_img ul.page_link{
  display: flex;
  gap: 20px;
}

.halloween_2026 .mokuji_img ul.page_link li {
    width: calc((100% - 100px) / 4);
    padding: 0;
}

@media screen and (max-width:767px) {
  .halloween_2026 .mokuji_img ul.page_link{
  display: flex;
  gap: 10px;
}

  .halloween_2026 .mokuji_img ul.page_link li {
    width: calc((100% - 30px) / 2);
    padding: 0;
}

  }



/*--------------------------------------------------------------
page_link(ページ内リンク)
--------------------------------------------------------------*/
.btn_page_link {
    gap: 10px;
}

.page_link{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 20px auto 20px;
  max-width: 1200px;
}

@media (max-width: 480px){
.page_link{
  margin: 15px auto!important;
}
}


/*--------------------------------------------------------------
  halloween_2026_area
--------------------------------------------------------------*/
.halloween_2026_area{
  padding: 0px 0 0px;
}

.h2_area{
  text-align: center;
  padding: 20px 0 0px;
}

.h2_area h2.helloween_h2{
  margin: 20px auto 0;
  text-align:center;
  font-size: 28px;
  line-height: 1.2;
}

#item_02 .h2_area h2.helloween_h2{
  margin: 0px auto 0;
  padding: 5px 0;
  color: #D54B2E;/**/
}

.btn_arrow_light {
    min-width: 300px;
    max-width: 300px;
    display: inline-block;
}


/*--------------------------------------------------------------
 LABUBU swiper
--------------------------------------------------------------*/
.collection_img_{
  overflow: hidden;
}

.swiper{
  position: relative;
}


/* デフォルトの矢印アイコン（文字）を消す */
.swiper-button-next::after,
.swiper-button-prev::after {
  content: ""; 
}

/* 独自の矢印画像（SVGやPNG）を設定する場合 */
.swiper-button-next {
  background-image: url('/assets/img/labubu/arrow_R.webp');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 30px;
}

.swiper-button-prev {
  background-image: url('/assets/img/labubu/arrow_L.webp');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 30px;
}

.swiper-free-mode>.swiper-wrapper {
    display: flex !important;
    justify-content: center!important;
}

.swiper-slide{
  padding: 10px;
}

.swiper.js-swiper-thumbs .swiper-slide{
  cursor: pointer;
}


@media (max-width: 767px){
  .swiper-slide{
  padding: 5px;
}
}


/*--------------------------------------------------------------
 BlackCat
--------------------------------------------------------------*/
.BlackCat{
  padding: 0 0 50px;
}

.BlackCat h2{
  color: #2a2330;
  display: flex;
  justify-content: center;
  align-items: center;
}

img.halloween26_cat{
  width: 100px;
  display: block;
}

/*--------------------------------------------------------------
 Pompompurin
--------------------------------------------------------------*/
.Pompompurin{
  background: #fff8eb;
  padding: 0 0 50px;
}

.Pompompurin h2{
color: #70411F;
  }

/*--------------------------------------------------------------
 Kuromi
--------------------------------------------------------------*/
.Kuromi{
  background: #F8EEF6;
  padding: 0 0 50px;
}

.Kuromi h2{
color: #533B78;
  }

/*--------------------------------------------------------------
 ec_limited
--------------------------------------------------------------*/
.ec_limited{
    display: block;
    border: solid 2px;
    border-radius: 6px;
    font-size: 60%;
    padding: 3px;
    max-width: 200px;
    margin: 0 auto 5px;
}


/*--------------------------------------------------------------
 flex_list
--------------------------------------------------------------*/
.flex_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.align-items_center{
  align-items: center;
}

.flex_list p{
  font-size: 14px;
}

.flex_list .flex_list_item_2 {
  padding: 0px 28px;
  width: 50%;
  display: flex;
  flex-direction: column;
  text-align: center;
}

.wrapper_VD_mini .flex_list .flex_list_item_2 {
  padding: 10px;
  width: 50%;
  display: flex;
  flex-direction: column;
  text-align: center;
}

.flex_list .flex_list_item_3 {
  padding: 15px;
  width: 33.3%;
  display: flex;
  flex-direction: column;
  text-align: center;
}

.flex_list .flex_list_item_4 {
  padding: 10px;
  width: 25%;
  display: flex;
  flex-direction: column;
  text-align: center;
}

.flex_list .flex_list_item_2 .collection_img,
.flex_list .flex_list_item_3 .collection_img,
.flex_list .flex_list_item_4 .collection_img{
  border: none;
  background:  none;
  filter: drop-shadow(0px 5px 5px rgba(114,64,69,0.5));
  padding: 0 0;
  overflow: hidden;
  position: relative;
}

.flex_list  h3 {
  font-size: 18px;
  margin: 20px auto 10px;
}

.flex_list h3.f24{
  font-size:24px!important;
}

h2.fs_18px, h3.fs_18px, h4.fs_18px{
  font-size: 18px!important;
}

h2.fs_20px, h3.fs_20px, h4.fs_20px{
  font-size: 20px!important;
}

.chocolate_02 .flex_list_item_4 p.price{
  color:#fff;
}


.flex_list .flex_list_item_4 p.price{
  margin: 0px 0 0;
}

.flex_list  h2 {
  font-size: 18px;
}

.flex_list  p {
  margin: 0px 0 0;
}

.flex_list  p.price {
  font-weight: bold;
  font-size: 16px;
  text-align: center;
}


.flex_list  p.left {
  margin: 15px 0 0;
  text-align:left!important;
}

p.priod{
  font-weight:500;
}

.flex_list_item_btn{
  margin-top: auto;
}

.flex_list p.guide {
    margin: 15px 0 0;
    /*letter-spacing: -.001em;*/
    padding: 0 30px;
}

.flex_list p.guide_collection {
  font-size: 15px;
  margin: 15px 0;
  /*letter-spacing: -.001em;*/
  line-height:1.6;
  font-weight:400;
  text-align:left;
  padding: 0 30px;
}

.flex_list p.guide_collection_waffle {
  font-size: 14px;
  margin: 0 0 0;
  /*letter-spacing: -.001em;*/
  line-height:1.6;
  font-weight:400;
  text-align:left;
  padding: 0 30px;
}

.flex_list p.priod{
  font-size: 15px;
  margin: 10px 0;
  font-weight:500;
}

.flex_list .flex_list_item_btn {
  margin-top: auto;
}

.flex_list a{
  text-decoration: none;
}

.order0{
  order: 0;
}

.order1{
  order: 1;
}

@media screen and (min-width:768px) and (max-width:842px) {
  .flex_list .flex_list_item_4 {
    padding: 10px;
    width: 40%;
    display: flex;
    flex-direction: column;
    text-align: center;
}
  }


@media screen and (max-width:842px) {

.flex_list p.guide_collection {
    margin: 15px 0;
    /*letter-spacing: -.001em;*/
    padding: 0 10px;
}
.flex_list p.guide_collection_waffle {
  margin: 15px 0 ;
    /*letter-spacing: -.001em;*/
    padding: 0 10px;
}
.flex_list p.priod{
  padding: 0 10px;
}
  }

@media screen and (max-width:767px) {

.flex_list {
  padding: 0.5rem 0 2rem;
}

.flex_list .flex_list_item_2 {
  padding: 0px 3px;
  width: 98%;
  margin: 0 auto 0em;
}

.flex_list.sp_2retsu .flex_list_item_2 {
  padding: 0px 3px;
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -ms-flex-direction: column;
  flex-direction: column;
}


.flex_list p.guide {
    margin: 15px 0 0;
    /*letter-spacing: -.001em;*/
    padding: 0 0px;
}

.order0{
  order: 1;
}

.order1{
  order: 0;
}
  }


/*--------------------------------------------------------------
その他
--------------------------------------------------------------*/
.set_guide{
    background-color:#fff;
    padding: 20px;
    margin: 10px 10px 40px;
    display: inline-block;
  }

.set_guide_inner{
  max-width:600px;
  margin:10px auto;
}

.set_guide_inner p{
  line-height:1.6;
  font-size:14px;
}

@media (max-width: 767px) {
.set_guide{
  margin: 10px 10px 40px;
}
}

.collection_img_,
.hw_bag,
.slider_hw{
  position: relative;
}