@charset "UTF-8";

/*----------MENU-------------

 Reset
 block-main
 目次
 top_runking おすすめランキング
 halloween_2025_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_2025{
  background: none;
}

body.halloween_2025 .block-top-topic--body{
  background: none;
}

body.halloween_2025 .wrapper{
  background: none;
}

body.halloween_2025 .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: url(/halloween/img/star.webp), #ea521b;
  padding: 0px 0;
  background-size: 5%;
  color: #000;
}

.pc_only_inline{
  display: inline-block;
}
.pc_only{
  display: block;
}
.sp_only_inline{
  display: none;
}
@media (max-width: 767px){
  body.halloween_2025 .pane-contents{
  background-size: 12%;
}

  .pc_only_inline{
  display: none;
}
.pc_only{
  display: none;
}
.sp_only_inline{
  display: inline-block;
}
  }

.wrap {
    max-width: 1400px!important;
    margin: auto;
    padding: 0 0.8rem;
}

.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;
}

#item_01 .wrap,
#item_02 .wrap,
#item_03 .wrap,
#item_04 .wrap{
  margin: 20px auto;
}

@media (max-width: 1420px){
#item_01 .wrap,
#item_02 .wrap,
#item_03 .wrap,
#item_04 .wrap{
  margin: 0 10px 10px;
}
}

/* ----------------------------------------------------------
concept
---------------------------------------------------------- */

.concept{
  background: url(/halloween/img/star.webp), #ea521b;
  padding: 20px 0;
  background-size: 6%;
}

.bg_moon{
  background: url(/halloween/img/bg_moon.webp) no-repeat center;
  background-size: contain;
}

.concept_inner {
    max-width: 768px;
    margin: 0px auto 0px;
    padding: 0px 10px;
    height: auto;
    text-align: center;
}

.concept_inner h2{
  margin: 0px 0px 10px;
}

.concept_inner .b_cat{
  width:180px;
  margin: 0px auto 0px;
}

.concept_inner p {
  font-size: 16px;
  padding: 0 1rem;
  line-height:1.8;
}

@media screen and (min-width:768px) and (max-width:1600px) {
.concept{
  background-size: 8%;
}
}

@media screen and (max-width:767px) {
  .concept_inner .b_cat{
  width:150px;
}

.bg_moon{
  background-size: cover;
}

.concept{
  background-size: 12%;
}

}

.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
--------------------------------------------------------------*/

.halloween_2025 .price_search h2 {
    font-size: 18px;
    margin: 50px auto 20px;
    text-align: center;
    position: relative;
    width: auto;
}

.halloween_2025 .mokuji_img {
    max-width: 1400px;
    width: 100%;
    padding: 0px 10px 20px;
    margin: auto;
}

.halloween_2025 .mokuji_img .page_link{
  max-width: 100%;
}

.halloween_2025 .mokuji_img .page_link li {
    width: 16.6%;
    max-width: 180px;
    padding: 0 10px 20px;
    font-weight: 600;
}


.mokuji_01, .mokuji_03, .mokuji_05{
  width:160px;
  vertical-align:middle;
  animation: pikopiko 1s steps(2, start) infinite;
}

.mokuji_02, .mokuji_04{
  width:160px;
  vertical-align:middle;
  animation: pikopiko2 1s steps(2, start) infinite;
}

@keyframes pikopiko {
  0% {
    transform: rotate(20deg);
  }
  to {
    transform: rotate(-10deg);
  }
}

@keyframes pikopiko2 {
  0% {
    transform: rotate(-10deg);
  }
  to {
    transform: rotate(20deg);
  }
}

@media screen and (min-width:768px) and (max-width:834px) {
.halloween_2025 .mokuji_img .page_link li {
    width: 18%;
    padding: 0 0px 0px;
}
}

@media screen and (max-width:767px) {
  .halloween_2025 .mokuji_img .page_link li {
    width: 40%;
    padding: 0 0px 0px;
}
  }



/*--------------------------------------------------------------
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_2025_area
--------------------------------------------------------------*/
.halloween_2025_area{
  padding: 0px 0 0px;
}

.h2_area{
  text-align: center;
  padding: 5px 0 15px;
}

.h2_area h2.helloween_h2{
  margin: 0px auto 0;
  text-align:center;
  font-size: 60px;
  line-height: 1;
  text-shadow: 3px 3px 1px #fff;
  display: inline-block;
  background: #ea521b;
  padding: 5px 10px;
  /*color:#fff;
  background-color:#000;*/
}


@media screen and (max-width:541px) {
.h2_area h2.helloween_h2{
  font-size: 50px;
  line-height: 1;
  margin: 0px auto 10px;
  padding: 0 10px 15px;
}
}


.btn_arrow_light {
    min-width: 300px;
    max-width: 300px;
    display: inline-block;
}

/*--------------------------------------------------------------
------------------------------------------------------------*/
.collection_section {
  margin-bottom: 0;
}


hr.halloween_2025_hr {
    border: 0;
    border-bottom: 3px dotted #ea521b;
}

/* sales_location */
.sales_location{
  background-color: rgba(255, 218, 0, .3);
  padding:10px 30px;
  margin:10px 0 !important;
}

@media screen and (max-width:540px) {

}

/* \ラインを使った見出し/ */
.line_midashi {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  text-align: center;
  margin: 20px 20px 10px;
}

.line_midashi::before,
.line_midashi::after {
  content: '';
  width: 3px;
  height: 40px;
  background-color: #231815;
}

.line_midashi::before {
  margin-right: 30px;
  transform: rotate(-35deg)
}
.line_midashi::after {
  margin-left: 30px;
  transform: rotate(35deg)
}


/*--------------------------------------------------------------
 flex_list
--------------------------------------------------------------*/
.flex_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 3em 0;
}

.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 ;
}

.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;
}
  }


/*--------------------------------------------------------------
 cssアニメーション
--------------------------------------------------------------*/

.dokidoki{
    animation-name:dokidoki;  /* アニメーション名の指定 */
    animation-delay:0s;   /* アニメーションの開始時間指定 */
    animation-duration: 3s; /* アニメーション動作時間の指定 */
    animation-timing-function: ease-in-out;
    /* アニメーションの動き（徐々に早く徐々に遅く）*/
    animation-iteration-count: infinite; /* アニメーションをループさせる */
}

@keyframes dokidoki {
    0% {
        transform: scale(1);
    }
    40% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
    60% {
        transform: scale(1);
    }
    100% {
        transform: scale(1);
    }
}

.dokidoki2{
    animation-name:dokidoki;  /* アニメーション名の指定 */
    animation-delay:0s;   /* アニメーションの開始時間指定 */
    animation-duration: 4s; /* アニメーション動作時間の指定 */
    animation-timing-function: ease-in-out;
    /* アニメーションの動き（徐々に早く徐々に遅く）*/
    animation-iteration-count: infinite; /* アニメーションをループさせる */
}

@keyframes dokidoki2 {
    0% {
        transform: scale(1);
    }
    35% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
    65% {
        transform: scale(1);
    }
    100% {
        transform: scale(1);
    }
}

.dokidoki3{
    animation-name:dokidoki;  /* アニメーション名の指定 */
    animation-delay:0s;   /* アニメーションの開始時間指定 */
    animation-duration: 2s; /* アニメーション動作時間の指定 */
    animation-timing-function: ease-in-out;
    /* アニメーションの動き（徐々に早く徐々に遅く）*/
    animation-iteration-count: infinite; /* アニメーションをループさせる */
}

@keyframes dokidoki3 {
    0% {
        transform: scale(1);
    }
    33% {
        transform: scale(1.05);
    }
    66% {
        transform: scale(1);
    }
    100% {
        transform: scale(1);
    }
}

@keyframes pulseMotion {
  0% {
    transform: translate(-50%, -50%) scale(1, 1);
    background-color: rgba(255, 255, 255, 0.4)
  }
  100% {
    transform: translate(-50%, -50%) scale(3, 3);
    background-color: rgba(255, 255, 255, 0)
  }
}

.sustainability_area{
  padding: 20px 0 20px;
}

.sustainability_area h2{
  background-color:#fff;
  padding:10px 0;
  color: #683d10;
}


  .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;
}

img.icon_cat1_25{
  position: absolute;
  bottom: -5%;
  right: -3%;
  width: 25%;
  z-index: 10;
}

img.icon_cat2_25{
  position: absolute;
  bottom: -5%;
  left: -8%;
  width: 25%;
  z-index: 10;
}

img.cat_face{
  display:block;
  width: 80px;
  margin: auto;
}

img.cat_kei{
  display:block;
  width: 280px;
  margin: auto;
}