@charset "UTF-8";
/*------------------------------------------------------------
	Reset
------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Kiwi+Maru:wght@400;500&family=Noto+Sans+JP:wght@300;400;500;700&display=swap');

* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  box-sizing: border-box; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
  display: block; }


body {
  -webkit-text-size-adjust: 100%; }

table,
input,
textarea,
select,
option {
  line-height: 1.1; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

:focus {
  outline: 0; }

a,
ins {
  text-decoration: none; }

del {
  text-decoration: line-through; }

img {
  vertical-align: top; }

a {
  transition: 0.3s ease-in-out; }



@media (min-width: 768px) {
  .sp {
    display: none; } }

@media (min-width: 992px) {
  .tablet {
    display: none; } }

@media screen and (max-width: 767px) {
  .pc {
    display: none; } }

@media screen and (max-width: 991px) {
  .pc-tablet {
    display: none; } }

@media screen and (max-width: 1024px) {
  .pc-only {
    display: none; } }

@keyframes fade_in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes slide_y {
  0% {
    transform: translateY(1.4vw); }
  100% {
    transform: translateY(0); } }

@keyframes slide_x {
  0% {
    transform: translateX(-1.4vw); }
  100% {
    transform: translateX(0); } }

@keyframes move {
  0% {
    left: 0;
    opacity: 0; }
  35% {
    left: 41%;
    transform: rotate(0deg);
    opacity: 1; }
  65% {
    left: 59%;
    transform: rotate(0deg);
    opacity: 1; }
  100% {
    left: 100%;
    transform: rotate(-180deg);
    opacity: 0; } }

/*pc_only / sp_only
---------------------------------- */
.pc_only{
  display: block;
}
.sc_only{
  display: none;
}

@media screen and (max-width:666px) {
.pc_only{
  display: none;
}
.sc_only{
  display: block;
}
}

body.nintendo .block-top-topic--body{
  background: #fff;
}

body.nintendo .wrapper{
  background: none;
}

body.nintendo .pane-main{
  font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','Noto Sans JP', Helvetica, sans-serif;
  background: url(/valentine/img/bg_ntd.jpg);
}

section.doubutsunomori{
background-color: #fcf8ed;
padding: 0 0 50px;
}

.wrapper_nintendo {
  max-width: 1600px;
  padding: 0 15px;
  margin: 0 auto;
  position: relative;
}

.wrapper_nintendo_mini {
  max-width: 980px;
  padding: 0 15px;
  margin: 0 auto;
  position: relative;
}


body.nintendo .pane-main h1,
body.nintendo .pane-main h2,
body.nintendo .pane-main h3,
body.nintendo .pane-main h4,
body.nintendo .pane-main h5,
body.nintendo .pane-main h6 {
  font-weight: bold;
}

body.nintendo .pane-main .collection_items p{
  color: #141414;
}


@media screen and (max-width: 767px) {
    .wrapper_doubutsunomori {
      padding: 0 5px;
    }
  }

@media screen and (max-width: 374px) {
  .wrapper_doubutsunomori_mini {
  padding: 0 10px;
}

  .wrapper_doubutsunomori_sns {
  padding: 0 10px;
}

}

/*--------------------------------------------------------------
 KV
--------------------------------------------------------------*/
.kv{
  width: 100%;
}
.kv article{
  max-width: 1600px;
  margin: auto;
}

/*--------------------------------------------------------------
 lead
--------------------------------------------------------------*/
.lead{
  width: 100%;
  padding: 30px 20px 20px;
}
.lead .lead__text{
  background-color: rgba(255, 255, 255, 1);
  padding: 1rem 1rem 1rem;
  outline: solid 5px #a0d8e7;
  border: solid 5px #f6cbd2;
  outline-offset: 3px;
  margin: 0 auto;
  max-width: 694px!important;
}

.lead .lead__text h1{
  font-size: 28px;
  text-align: center;
  color: #331503;
  margin: 0 0 20px;
}

.lead .lead__text p.text{
  font-size: 14px;
  color: #331503;
  line-height: 1.6;
  text-align: center;
  padding-top: 20px;
}

.lead .lead__text p.priod{
  font-size: 14px;
  text-align: center;
  margin-top: 20px;
}

@media (max-width: 420px) {
.lead .lead__text h1{
  font-size: 18px;
}

.lead .lead__text p.text{
  font-size: 14px;
  color: #331503;
  line-height: 1.6;
  text-align: left;
  padding-top: 10px;
}

.lead .lead__text p.priod{
  font-size: 14px;
  text-align: center;
  margin-top: 10px;
}

}

@media (max-width: 390px) {
.lead .lead__text h1{
  font-size: 16px;
}

}




/*--------------------------------------------------------------
 ページ内リンク
--------------------------------------------------------------*/
.page_link{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: 20px auto!important;
  border-bottom: none!important;
  max-width: 1000px;
}

.page_link li{
  text-align:center;
  width:24%;
  padding: 0 10px;
}

.page_link li h2{
  font-size:20px;
  margin: 8px 0 20px;
}


@media (max-width: 540px){
  .page_link li{
  text-align:center;
  width:48%;
  padding: 0 0px;
}

  .page_link li h2{
  font-size: 4.5vw;
}
  }

  @media (max-width: 330px){

  }

/*--------------------------------------------------------------
 title
--------------------------------------------------------------*/
.doubutsunomori_title{
  text-align:center;
}

.doubutsunomori_title h2{
  background: linear-gradient(299deg, rgba(234, 196, 120, 1) 0%, rgba(251, 231, 188, 1) 50%, rgba(234, 196, 120, 1) 100%);
  margin: 0;
  padding: 30px 0;
  font-size: 32px;
}

.doubutsunomori_title h3{
  background:#cce8fb;
  font-size: 24px;
  padding: 1em 10px;
  margin:0;
  color:#023979;
}

.shop_title h2{
  background: linear-gradient(299deg, rgba(234, 196, 120, 1) 0%, rgba(251, 231, 188, 1) 50%, rgba(234, 196, 120, 1) 100%);
  margin: 0;
  padding: 30px 0;
  font-size: 32px;
}

@media screen and (max-width:539px) {
.doubutsunomori_title h2{
  font-size: 28px;
  }
}

@media screen and (max-width:414px) {
.doubutsunomori_title h2{
  font-size: 24px;
  }
}



/*取扱店舗*/
.shop_title{
  text-align:center;
}

.shop{
}

.shop_info{
  max-width:768px;
  margin: 20px auto 0;
  padding: 30px 20px 30px;
  text-align: center;
  background:#f5efe4;
}

.shop_info a{
  text-decoration: underline;
}

.shop_info ul li{
  font-size:16px;
  padding: 0 0 10px;
}

@media screen and (max-width:640px) {
  .shop_info{
  margin: 20px .5rem 0;
}
}

/*--------------------------------------------------------------
 flex_list
--------------------------------------------------------------*/
.nintendo .bnr_area {
    background-color: #faebf0;
}

.nintendo .bnr_area h2 {
    font-size: 32px;
    border-bottom: none;
    padding: 0 0 0px;
    margin: 0;
    display: inline-block;
    color: #5c2f2a !important;
    font-weight: 600;
}

/*--------------------------------------------------------------
 flex_list
--------------------------------------------------------------*/
.flex_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 1em 0;
}

.flex_list p{
  font-size: 14px;
  text-align: left;
}

.flex_list .flex_list_item_4 {
  padding: 10px;
  width: 25%;
  display: flex;
  flex-direction: column;
  text-align: center;
}

.flex_list .flex_list_item_4 .collection_img{
  border: none;
  background:  none;
  padding: 0 0;
  overflow: hidden;
  position: relative;
}


.flex_list .flex_list_item_4 h2{
  font-size: 16px;
  letter-spacing: -.01em;
}

.flex_list .flex_list_item_4 h3{
  font-size: 16px;
  margin-top: 20px
}


.flex_list .flex_list_item_4 h4{
  font-size: 14px;
  margin-top: 20px
}


.flex_list .flex_list_item_4 p.price{
  text-align: center;
  font-weight: 600;
}/**/

.flex_list  p {
  margin: 10px 0 0;
}
.flex_list .flex_list_item_btn {
  margin-top: auto;
}

.flex_list a{
  text-decoration: none;
}

.order0{
  order: 0;
}

.order1{
  order: 1;
}

.order2{
  order: 2;
}

.order3{
  order: 3;
}

@media screen and  (min-width:540px) and (max-width:912px) {
.flex_list .flex_list_item_4 {
  width: 49%;
}
}

@media screen and (max-width:539px) {
body.nintendo .flex_list {
    display: block;
}

.flex_list .flex_list_item_4 {
  padding: 0px;
  width: 98%;
  margin: auto auto 2em;
}

.flex_list .flex_list_item_4 h2 {
    font-size: 16px;
    letter-spacing: -.01em;
}

.flex_list .flex_list_item_4 h2 span{
  font-size: 99%;
  letter-spacing: -.015em;
}

.flex_list .flex_list_item_4 h3 {
    font-size: 16px;
    letter-spacing: -.01em;
}

.flex_list .flex_list_item_4 h4 {
    font-size: 14px;
    letter-spacing: -.01em;
}
.order0{
  order: 0;
}

.order1{
  order: 1;
}

.order2{
  order: 3;
}

.order3{
  order: 2;
}/**/
  }

@media screen and (max-width:413px) {
  .flex_list .flex_list_item_4 h4 {
    letter-spacing: -.08em;
}
}

@media screen and (max-width:280px) {
.flex_list p{
  font-size: 10px;
}
}

/*--------------------------------------------------------------
 View_more_area
--------------------------------------------------------------*/

.View_more_area{
  max-width:1020px;
  margin:20px auto;
  padding:0 10px;
}

.View_more_box{
  display:flex;
  align-items: center;
  justify-content:center;
  margin: 0 0 20px;
}

.View_more_box .img_box{

}

.View_more_box .text_box{
  border: dashed 2px #e38404;
  padding: 30px;
  width: 40%;
  text-align: center;
  background: #fff;
}

.View_more_box .text_box h3{
  margin: 10px 0 ;
}

.View_more_box .text_box p{
  font-size:16px;
  margin: 0px 0 10px;
  padding:10px;
  text-align: left;
  display: inline-block;
}




@media screen and (max-width:540px) {
  .View_more_box{
    flex-wrap:wrap;
  }
  .View_more_box .text_box{
  width: 98%;
  margin: 10px auto 20px;
}

}




/*--------------------------------------------------------------
 atsumori_chocolate_guide あつもり紹介
--------------------------------------------------------------*/
.atsumori_chocolate_guide{
  max-width:1200px;
  margin: 20px auto 20px;
  padding: 0 10px 0px;
  position:relative;
}

.atsumori_chocolate_guide_inner{
   display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px 15px;
}

.atsumori_chocolate_guide_inner .chocolat{
  width: 15%;
  text-align: center;
  cursor: pointer;
}

.atsumori_chocolate_guide_inner .chocolat > div{
  position: relative;
}

.atsumori_chocolate_guide_inner .chocolat img.hand{
  position: absolute;
  bottom: 0%;
  left: 3%;
  animation: yurayura 1.5s linear infinite;
}

.atsumori_chocolate_guide_inner .chocolat img.hand2{
  position: absolute;
  bottom: 12%;
  left: 2%;
  animation: yurayura 1.5s linear infinite;
}

@keyframes yurayura {
  0% , 100%{
      transform: rotate(10deg);
  }
  50%{
      transform: rotate(-10deg);
  }
}

.atsumori_chocolate_guide_inner .chocolat p{
  font-size: 13px;
  margin: 6px 0 0;
}

@media screen and (max-width:540px) {
  .atsumori_chocolate_guide_inner .chocolat{
  width: 45%;
}
}



/*-------------------
 iziModals
---------------------*/

/*あつもり*/
.iziModals_img_Llily,
.iziModals_img_Bouque,
.iziModals_img_Shizue-Totakeke,
.iziModals_img_Tsubu-Mame,
.iziModals_img_Tina,
.iziModals_img_Mei,
.iziModals_img_Leaf,
.iziModals_img_Black-Rose,
.iziModals_img_heart,
.iziModals_img_Pink-Rose,
.iziModals_img_GC_salt,
.iziModals_img_GC_dark,
.iziModals_img_GC_rose{
  background: #d5b04a!important;
  padding: 0px 0px 0px!important;
  border-bottom: 10px solid !important;
}

/*あつもり*/
.iziModals_img_Llily .iziModal-header,
.iziModals_img_Bouque .iziModal-header,
.iziModals_img_Shizue-Totakeke .iziModal-header,
.iziModals_img_Tsubu-Mame .iziModal-header,
.iziModals_img_Tina .iziModal-header,
.iziModals_img_Mei .iziModal-header,
.iziModals_img_Leaf .iziModal-header,
.iziModals_img_Black-Rose .iziModal-header,
.iziModals_img_heart .iziModal-header,
.iziModals_img_Pink-Rose .iziModal-header,
.iziModals_img_GC_salt .iziModal-header,
.iziModals_img_GC_dark .iziModal-header,
.iziModals_img_GC_rose .iziModal-header{
    background: !important;
    padding: 14px 18px 15px 18px;
    box-shadow: none!important;
    overflow: hidden;
    position: relative;
    z-index: 10;
}

/*あつもり*/
.iziModals_img_Llily .iziModal-content,
.iziModals_img_Bouque .iziModal-content,
.iziModals_img_Shizue-Totakeke .iziModal-content,
.iziModals_img_Tsubu-Mame .iziModal-content,
.iziModals_img_Tina .iziModal-content,
.iziModals_img_Mei .iziModal-content,
.iziModals_img_Leaf .iziModal-content,
.iziModals_img_Black-Rose .iziModal-content,
.iziModals_img_heart .iziModal-content,
.iziModals_img_Pink-Rose .iziModal-content,
.iziModals_img_GC_salt .iziModal-content,
.iziModals_img_GC_dark .iziModal-content,
.iziModals_img_GC_rose .iziModal-content{
    zoom: 1;
    width: 100%;
    padding: 0px 10px 10px!important;
    background: #d5b04a!important;
}


/*--------------------------------------------------------------
 chocolate_box
--------------------------------------------------------------*/
.chocolate_box_atsumori{
  margin: 20px auto 20px;
  padding-bottom: 20px;
}

.chocolate_box_atsumori h4,
.chocolate_box_atsumori h4{
  text-align: center!important;
  padding: 20px 0;
  font-size: 18px;
  border-bottom: none!important;
  background: none!important;
  margin: 0;
  overflow: hidden;
}

.chocolate_box_atsumori h4 span {
  position: relative;
  display: inline-block;
  margin: 0 2.5em;
  padding: 0 1em;
  text-align: left;
}

.chocolate_box_atsumori h4 span::before,
.chocolate_box_atsumori h4 span::after{
  position: absolute;
  top: 50%;
  content: '';
  width: 100%;
  height: 3px;
  background-color: #6bb48c;
}



.chocolate_box_atsumori h4 span::before {
  right: 100%;
}

.chocolate_box_atsumori h4 span::after{
  left: 100%;
}

.chocolate_box_flex{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 10px;
}

.chocolate_box_flex .chocolat{
  padding: 5px 5px;
  width: calc((100% - 10px) / 9);
  text-align: center;
}

.chocolate_box_flex .chocolat img{
  margin-bottom:7px;
}

@media screen and (max-width:912px) {
  .chocolate_box_flex{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 10px;
  flex-wrap: wrap;
}

.chocolate_box_flex .chocolat{
  padding: 5px 5px;
  width: calc((100% - 10px) / 5);
}

}

@media screen and (max-width:540px) {
  .chocolate_box_flex{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0px 10px 20px;
  flex-wrap: wrap;
}

.chocolate_box_flex .chocolat{
  padding: 5px 5px;
  width: calc((100% - 10px) / 3);
}

}

@media screen and (max-width:420px) {
  .chocolate_box_flex{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0px 10px 20px;
  flex-wrap: wrap;
}

.chocolate_box_flex .chocolat{
  padding: 5px 5px;
  width: calc((100% - 10px) / 2);
}

}

.anime_1 {
  animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}

.anime_2 {
animation: poyopoyo 3s ease-out infinite;
  opacity: 1;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}

.anime_3 {
animation: poyopoyo 2.5s ease-out infinite;
  opacity: 1;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}

.anime_4 {
animation: poyopoyo 3.5s ease-out infinite;
  opacity: 1;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}



/*--------------------------------------------------------------
 アコーディオン
--------------------------------------------------------------*/
/*規約独立*/
.campaign_about_kiyaku{
  padding: 20px 20px 20px;
  border: solid 6px #fff;
}

/*アコーディオン*/
 .accordion-area{
    list-style: none;
    width: 96%;
    max-width: 900px;
    margin:0 auto;
    background-color: #fff;
}

.accordion-area li{
    margin: 10px 0;
}

.accordion-area section {
  border: 1px solid #ccc;
}

/*アコーディオンタイトル*/
.title_kiyaku {
    position: relative;
    cursor: pointer;
    font-size:1rem;
    font-weight: normal;
    padding: 3% 3% 3% 50px;
    transition: all .5s ease;
    text-align: center;
}

/*アイコンの＋と×*/
.title_kiyaku::before,
.title_kiyaku::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #333;
    
}
.title_kiyaku::before{
    top:48%;
    left: 15px;
    transform: rotate(0deg);
    
}
.title_kiyaku::after{    
    top:48%;
    left: 15px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/
.title_kiyaku.close::before{
  transform: rotate(45deg);
}

.title_kiyaku.close::after{
  transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.kiyaku_box {
    display: none;/*はじめは非表示*/
    /*background: #f3f3f3;*/
    margin:0 3% 3% 3%;
    padding: 3%;
}

.kiyaku_box h3{
  text-align: center;
  }

.kiyaku_box a{
  text-decoration: underline;
  word-break: break-all;
  }

p.block{
padding: 10px 5px!important;
}

p.pb-0{
padding: 10px 5px 0!important;
}

p.plb-0{
padding: 0px 5px 0px!important;
}

ul.kiyaku_ul li{
  margin: 0 0 0 15px!important;
}
