@charset "UTF-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');


.noto-sans-jp {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

:root {
      --easing: cubic-bezier(0.2, 1, 0.2, 1);
      --transition: 0.8s var(--easing);
      --color-base: #0c1210;
      --color-gray: #ddd;
      --color-theme: #b4e900;
      --color-theme-darken: #6e8f00;
      --box-shadow: 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.05),
        -0.8rem -0.8rem 1.2rem #fff;
      --box-shadow-hover: 1rem 1rem 1.5rem rgba(0, 0, 0, 0.08),
        -1rem -1rem 1.5rem #fff;
      --box-shadow-inset: inset 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.05),
        inset -0.8rem -0.8rem 1.2rem #fff;
      --box-shadow-dark: 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.1),
        -0.8rem -0.8rem 1.2rem rgba(#fff, 0.2);
    }
*,
*::before,
*::after {
  box-sizing: border-box;
}


/*-------------------------
	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;
}

.pane-main h1,
.pane-main h2,
.pane-main h3,
.pane-main h4,
.pane-main h5,
.pane-main h6{
  font-weight: 600;
}

.pane-main p,
.customer_title_area h3.customer_title,
.list__item_2_text h3,
.message_service h3,
.customer_voice_wrap .div3 .flex_box h3,
h3.pageSubTitle2{
  font-family: "Noto Sans JP", sans-serif;
}

.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.underline{
  text-decoration: underline;
}

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; }

a:hover{
  text-decoration-thickness: 1px;
  text-underline-offset: 8px;
}

a.underline:hover{
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

ul li{
  list-style:none;
}

ul{
  margin:0;
  padding:0;
}

.pc_only_inline{
  display: inline-block;
}
.pc_only{
  display: block;
}
.sp_only_inline{
  display: none;
}
@media (max-width: 767px){
  .pc_only_inline{
  display: none;
}
.pc_only{
  display: none;
}
.sp_only_inline{
  display: inline-block;
}
  }

.wrap {
    max-width: 1200px;
    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;
}
}

.mb_0{
  margin-bottom:0!important;
}

.birthday_cake .wrapper{
    background-color: #f5efe4;
}

/*-------------------------
  メインビジュアル
------------------------ */

/* slider */
    .slide-media,
    .thumb-media {
      position: relative;
      overflow: hidden;
    }

    .slide-media img,
    .thumb-media img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .splide {
      z-index: 0;
    }

    /* 前へ / 次へボタン */
    .splide__arrow--prev,
    .splide__arrow--next {
      display: grid;
      place-content: center;
      width: 2rem;
      height: 2rem;
      cursor: pointer;
      transition: var(--transition);
      background-color: var(--color-theme-darken);
      border-radius: 50%;
    }

    .splide__arrow--prev::after,
    .splide__arrow--next::after {
      width: 1rem;
      height: 1rem;
      content: "";
      border: solid var(--color-gray);
      border-width: 3px 3px 0 0;
    }

    .splide__arrow--prev::after {
      margin-left: 0.4rem;
      transform: rotate(-135deg);
    }

    .splide__arrow--next::after {
      margin-right: 0.4rem;
      transform: rotate(45deg);
    }

    .splide__arrow:disabled {
      pointer-events: none;
      opacity: 0;
    }

    .splide__arrow:focus-visible {
      outline: 3px solid rgba(180, 233, 0, 0.8);
      outline-offset: 3px;
      z-index: 1;
      transition: none;
    }

    .splide__pagination {
      font-size: 0;
    }

    .splide__pagination__page:focus-visible {
      outline: 3px solid rgba(180, 233, 0, 0.8);
      outline-offset: 3px;
      z-index: 1;
      transition: none;
    }

    .splide__slide:focus-visible {
      outline: 3px solid rgba(180, 233, 0, 0.8);
      outline-offset: 3px;
      z-index: 1;
      transition: none;
    }

    .splide-wrapper {
      position: relative;
    }

    .splide__arrow>svg {
      display: none;
    }

 .gallery {
      margin-bottom: 0;
    }

    .gallery .l-inner {
      padding-bottom: 0;
    }

    .gallery .splide-wrapper {
      -webkit-transition-timing-function: linear !important;
      transition-timing-function: linear !important;
    }

    .gallery .slide {
      width: var(--slide-width);
      -webkit-transition: var(--transition);
      transition: var(--transition);
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      --slide-width: 400px;
    }

    .gallery .slide-media {
      height: var(--slide-width);
    }

    .gallery .slide-content {
      position: absolute;
      right: 0;
      bottom: 0;
      left: 0;
      padding: 3.2rem 1.6rem 1.6rem;
      -webkit-transition: var(--transition);
      transition: var(--transition);
      opacity: 0;
      color: #fff;
      background: -webkit-gradient(linear,
          left top,
          left bottom,
          from(rgba(0, 0, 0, 0)),
          color-stop(50%, rgba(0, 0, 0, 0.3)));
      background: linear-gradient(180deg,
          rgba(0, 0, 0, 0) 0%,
          rgba(0, 0, 0, 0.3) 50%);
    }

    .gallery .slide-title {
      font-size: 1rem;
      line-height: 1.4;
      display: -webkit-box;
      overflow: hidden;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
    }

    .gallery .slide:hover {
      width: calc(var(--slide-width) * 1.5);
    }

    .gallery .slide:hover .slide-content {
      opacity: 1;
    }

    @media only screen and (max-width: 1024px) {
      .l-inner {
        padding: 0 4rem;
      }
    }

    @media only screen and (max-width: 599px) {
      html {
        font-size: 50%;
      }
      .gallery {
        margin-bottom: 0rem;
      }

    }

    @media only screen and (min-width: 1025px) {
      .tab-sp {
        display: none !important;
      }

      .splide__arrow--prev::before,
      .splide__arrow--next::before {
        transition: var(--transition);
      }

      .splide__arrow--prev:hover::before,
      .splide__arrow--next:hover::before {
        transform: scale(1.2);
      }
    }
    @media only screen and (min-width: 600px) {
    }

/*-------------------------
  bg_1
---------------------------*/
.bg_1{
  background: url(/birthday_cake/img/bg_kirakira.webp) top center;
  background-repeat: no-repeat;
  background-size:cover;
}

/*-------------------------
  christmas_cake_title01
---------------------------*/
.christmas_cake_title01 {
    background-color: #fae7bc;
    padding: 10px 0px;
}

.christmas_cake_title01 h2 {
    color: #421f1b;
    padding: 2rem 0;
    margin: 0;
    text-align: center;
    position: relative;
    font-size: 26px;
    font-weight: 600;
}

.christmas_cake_title02 {
    background-color: #fae7bc;
    padding: 0px 0px 27px 0px;
}

/*-------------------------
  ゴールドボタン
------------------------ */
.onlinshop_only_btn{
  max-width: 300px;
  margin: auto auto 50px;
}

.btn_arrow_light_gold {
  display: block;
  background: #d1a82e;
  background: linear-gradient(299deg, rgba(209, 168, 46, 1) 0%, rgba(237, 242, 138, 1) 50%, rgba(209, 168, 46, 1) 100%);;
  color: #421f1b;
  padding: 1em 2em 1em 1em;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin: 10px 0 ;
  border-radius: 6px;
  position: relative;
}

.btn_arrow_light_gold::after{
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 5px);
    right: 20px;
    width: 6px;
    height: 6px;
    border: 2px solid;
    border-color: transparent transparent #421f1b #421f1b;
    transform: rotate(-135deg);
    transition: .3s;
}

.btn_arrow_light_gold:hover{
  text-decoration:none;
}

.btn_arrow_light_gold:hover::after{
    right: 10px;
}

/* チョコレートプレート */
img.icon_plate {
    position: absolute;
    top: -10%;
    right: 1%;
    width: 35% !important;
}

@media screen and (min-width:768px) and (max-width:1024px) {
}

@media screen and (max-width:767px) {
  .concept{
  padding:1rem 0 0rem;
}

.concept p{
    text-align:left;
    padding: 0 10px;
}
}

/*--------------------------------------------------------------
  人気ランキング 
--------------------------------------------------------------*/
.series_concept {
    padding: 30px 0px 30px;
}

.series_concept h2.cake_name{
    font-size: 28px;
    line-height: 1.4;
    margin: 0px 0 0px;
}

.series_concept a h2.cake_name:hover{
  text-decoration: none;
}

.customer_voice_0L, .customer_voice_0R {
  width: 100%;
}

.birthday_cake .list__special {
    align-items: flex-start;
}

@media screen and (max-width: 767px) {
  .series_concept h2.cake_name{
    font-size: 26px;
}

    .list__special{
        display: block !important;
    }

    .list__special_img_half{
        padding: 0 0px;
        width: 100%;
        margin: 0 auto 0px;
    }
}

.list__special {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    margin: 0;
    padding: 1em 0;
}

.list__special_text_half p.price{
    margin-top: 10px;
    color: #421f1b;
    text-align: left;
}

/*--------------------------------------------------------------
  シーン別おすすめチョコレートケーキ
--------------------------------------------------------------*/
.wrap_1000 {
    max-width: 1000px;
    margin: auto;
    padding: 0 0.5rem;
}

.fukidashi_ec{
  position: absolute;
  top: -5%;
  right: -5%;
  width: 38%;
}

@media screen and (max-width:539px) {
  .fukidashi_ec{
  top: -10%;
  right: -6%;
  width: 55%;
}
}

/*--------------------------------------------------------------
  お取り寄せのご案内
--------------------------------------------------------------*/
.staff_voice{
  max-width: 760px;
  margin: 0 auto 0;
  padding: 20px 0px 0;
}

.staff_voice .block-baloon-left_area .person{
  width:24%;
  margin:0;
}

.staff_voice .block-baloon-left {
  display: table;
  padding: 1em;
  margin-bottom: 1em;
  position: relative;
  background-color: #fff;
  border: 1px solid #b7b0b0;
  border-radius: 20px;
  width: 76%;
}

@media screen and (max-width:539px) {

  .staff_voice .block-baloon-left_area{
  display:flex;
  flex-direction:column;
  margin: 10px 0 .5em;
}

.staff_voice .block-baloon-left_area .person{
  width:36%;
  order:1;
  margin: 5px auto 0;
}

.staff_voice .block-baloon-left  {
  margin-bottom: 1.5em;
  margin-left: 0;
  order:0;
  width:100%;
}

.staff_voice .block-baloon-left:before,
.staff_voice .block-baloon-left:after {
  top:100%;
  left: 50%;
  transform: translateX(-50%);
  bottom: -1.5em;
  border-top: 1.8em solid #b7b0b0;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
}

.staff_voice .block-baloon-left:after  {
  top:98%;
  bottom: 2px;/*calc( 2px - 1.5em )*/
  border-top: solid 1.76em #fff;
}

}


/*--------------------------------------------------------------
ご購入者様の声
--------------------------------------------------------------*/
.customer_voices{
  background-color: transparent;
  /*background-color: rgba(251, 231, 188, 1);*/
  padding-bottom: 40px;
}

.customer_voice_wrap .customer_voice_01,
.customer_voice_wrap .customer_voice_02 {
  display: flex;
  align-items: center;
  max-width: 980px;
  padding: 10px;
  background-color: #fff;
  position: relative;
}

/*.customer_voice_wrap .customer_voice_01:after {
  content : "";
  display : block;
  position : absolute;
  bottom : 0px;
  right  : 0px;
  width  : 0px;
  height : 0px;
  border-width : 5px 5px 5px 5px;
  border-style : solid;
  border-color : #666666 #ffffff #ffffff #666666;
}*/

.customer_voice_wrap .customer_voice_01:after,
.customer_voice_wrap .customer_voice_02:after {
    position: absolute;
    border: 1px solid #d6af4b;
    content: "";
    top: 8px;
    bottom: 8px;
    left: 8px;
    right: 8px;
}

.customer_voice_wrap .customer_voice_01{
  margin: 36px auto 36px 0;
}

.customer_voice_wrap .customer_voice_02{
  margin: 36px 0 36px auto;
}

.customer_voice_wrap .customer_voice_01 .left,
.customer_voice_wrap .customer_voice_02 .right{
  display: flex;
  flex-direction: column;
  width: 30%;
  padding: 20px;
}

.customer_voice_wrap .div1{
  text-align: center;
  position: relative;
  z-index:2;
}

.customer_voice_wrap .div1 p{
  margin-top: 15px;
  font-size:15px;
}

.customer_voice_wrap .div1 p:nth-child(3){
  margin-top: 5px;
}

.customer_voice_wrap .div2{
  position: relative;
  z-index:2;
}

.customer_voice_wrap .div3{
  width: 70%;
  padding: 10px 20px;
  position: relative;
  z-index:2;
}

.customer_voice_wrap .div3 .flex_box{
  display: flex;
  align-items: center;
}

.customer_voice_wrap .div3 .flex_box h3{
  padding: 0 0 0 20px;
  font-size: 16px;
}

.customer_voice_wrap .div3 .flex_box h3 img{
  display: block;
  width: 100px;
  margin-top: 5px;
}

.customer_voice_wrap .div3 p{
  margin: 15px 0 0;
  font-size: 15px;
}


@media screen and (max-width: 750px){
  .customer_voices{
  padding-bottom: 20px;
}

  .customer_voice_wrap .customer_voice_01,
  .customer_voice_wrap .customer_voice_02{
    flex-direction: column;
  }

  .customer_voice_wrap .customer_voice_01 .left,
  .customer_voice_wrap .customer_voice_02 .right{
    display: contents;
  }

  .customer_voice_wrap .customer_voice_01{
  margin: 30px auto 0px;
}

.customer_voice_wrap .customer_voice_02{
  margin: 30px auto 0px;
}

  .customer_voice_wrap .div1{
  order: 1;
  width: 100%;
  width: 98%;
  margin-top: 1%;
  }

  .customer_voice_wrap .div2{
  order: 3;
  width: 90%;
  margin: 0 auto 20px;
  }

  .customer_voice_wrap .div3{
  order: 2;
  width: 100%;
  }
}

/*--------------------------------------------------------------
  お取り寄せのご案内
--------------------------------------------------------------*/

.message_service{
  position: relative;
  max-width: 800px;
  margin: 0px auto 20px;
  border: solid 1px #867615;
  padding: 10px 20px 20px;
}

.message_service h3{
  font-size: 20px;
}

.message_1{
  display: flex;
  justify-content:center;
  gap: 10px 10px;
}

.message_1 img{
  width: 50%;
}

.message_2{
  text-align: center;
}

.message_2 p{
  text-align: left;
  display: inline-block;
  font-size: 16px;
  margin: 20px auto 0px;
}

@media screen and (max-width:640px) {
  .message_1{
  flex-direction:column;
}

.message_1 img{
  width: 100%;
}

}

.delivery_guide_cool{
  background-color: rgba(255, 255, 255, 0.8);
  border: dashed 1px #bfbaae;
  max-width: 800px;
}

.delivery_guide_cool p{
  font-size: 15px;
}

/*--------------------------------------------------------------
  目次 mokuji
--------------------------------------------------------------*/
.mokuji_img {
    max-width: 1080px;
    padding: 20px 0px 20px;
    margin: auto;
}

.mokuji_img .page_link{
  max-width: 100%;
  gap:20px 20px;
}

.mokuji_img .page_link li {
    width: 24%;
    max-width: 190px;
    padding: 0 10px 10px;
}

.mokuji_img .page_link li img{
  filter: drop-shadow(1px 8px 8px rgba(0, 0, 0, 0.2));
}

.mokuji_img .page_link li img:hover{
  opacity: 0.8;
  filter:  drop-shadow(1px 8px 8px rgba(0, 0, 0, 0.1));;
}

@media screen and (min-width:768px) and (max-width:834px) {
.mokuji_img .page_link li {
    width: 20%;
    padding: 0 0px 0px;
}
}

@media screen and (max-width:767px) {
  .mokuji_img .page_link li {
    width: 40%;
    padding: 0 0px 0px;
}
  }

.mokuji_recommend{
  margin: 30px auto 0px;;
}

.mokuji_recommend h2, .price_search h2, .mokuji_img h2{
  font-size: 18px;
  margin: 30px 0 30px;
  text-align: center;
  position: relative;
}

.mokuji_recommend h2:after,
.price_search h2:after,
.mokuji_img h2:after {
    content: "";
    width: 130px;
    height: 3px;
    background: #CB3B60;
    position: absolute;
    bottom: -8px;
    left: 0;
    right: 0;
    margin: auto;
}

.mokuji_recommend .btn_page_link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 20px;
}

.mokuji_recommend .btn_page_link li {
    min-width: 160px;
    min-height: 60px;
    text-align: center;
    position: relative;
    background: #fff;
    border: none;
    border-radius: 60px;
    color: #000;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.05em;
    padding: 5px 10px 5px 0;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 0 20px;
    filter: drop-shadow(1px 8px 8px rgba(0, 0, 0, 0.2));
}

.mokuji_recommend .btn_page_link li a{
  color:#000;
}

.mokuji_recommend .btn_page_link li:after {
    content: "";
    width: 8px;
    height: 8px;
    border-left: 2px solid #411e1b;
    border-bottom: 2px solid #411e1b;
    position: absolute;
    right: 10px;
    top: -1px;
    bottom: 0px;
    margin: auto;
    -webkit-transform: rotate(-315deg);
    transform: rotate(315deg);
}

.p_link:before {
    content: "";
    display: block;
    width: 97px;
    height: 29px;
    background-image: url(/spring/img/icon_btn.webp);
    background-position: center;
    background-size: contain;
    position: absolute;
    top: -15px;
    z-index: 2;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

@media (max-width: 767px){
.mokuji_recommend .btn_page_link li {
    font-size: 14px;
}
}


/*-----------------
タイプ別もくじ mokuji_type 丸
-----------------*/
.mokuji_type {
    margin: 30px auto 30px;
    max-width: 1124px;
}

.mokuji_type .btn_page_link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 10px;
}

.mokuji_type .btn_page_link a:hover{
    text-decoration:none;
}

.mokuji_type .btn_page_link li {
    filter: drop-shadow(0px 6px 6px rgba(0, 0, 0, 0.3));
    width: calc((100% - 100px) / 4);
    min-width: 156px;
    display: flex;
    align-items: center;
    position: relative;
    justify-content: center;
    flex-direction: column;
    border-radius: 50%;
    min-height: 156px;
    padding: 0;
}

.mokuji_type .btn_page_link li img{
    width: 48%;
    padding-bottom:8px;
}

.mokuji_type .btn_page_link li {
    text-align: center;
    border: 1px solid currentColor;
    color: #fff;
    background: #422223;
    font-size: 15px;
    letter-spacing: 0.05em;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

@media screen and (max-width: 767px){
    .mokuji_type .btn_page_link {
    gap: 10px 5px;
}

.mokuji_type .btn_page_link li {
    
}
.mokuji_type .btn_page_link li img{
    padding-bottom:4px;
}
}


/*--------------------------------------------------------------
  見出し
--------------------------------------------------------------*/
.h2_ev-jp h2{
    margin:0 0;
    text-align:center;
}

.h2_ev-jp h2 span:nth-child(1){
    font-size:26px;
    display:block;
}

.h2_ev-jp h2 span:nth-child(2){
    font-size:18px;
    display:block;
}

h2.title {
    background: #EAC478;
    background: linear-gradient(299deg, rgba(234, 196, 120, 1) 0%, rgba(251, 231, 188, 1) 50%, rgba(234, 196, 120, 1) 100%);
    color: #421f1b;
    padding: 2rem 0;
    margin: 0;
    text-align: center;
    position: relative;
    font-size:26px;
    font-family: "Noto Sans JP", sans-serif;
  }

h2.title_2 {
  background-color:#000;
  color: #fff;
  font-size: 24px;
  margin: 0;
  padding: 2rem 0;
  text-align: center;
  letter-spacing: -.001em;
  line-height: 1.4;
  border-bottom: none;
  font-family: "Noto Sans JP", sans-serif;
}

h3.title{
    background-color:rgba(251, 231, 188, 1);
    color: #421f1b;
    font-size: 24px;
    margin: 0 0 0.5rem;
    padding: 1.5rem 0;
    text-align: center;
    letter-spacing: -.001em;
    line-height: 1.4;
    border-bottom: none;
    font-family: "Noto Sans JP", sans-serif;
    display: flex;
    justify-content: center;
    align-items: center;
}

h3.title img{
  vertical-align: middle;
  margin-right:10px;
  width: 60px;
  height: 48px
}

@media screen and (max-width:541px) {

}

/* --------------------------------
 商品詳細 collection_concept
---------------------------------- */
.collection_concept {
  padding: 0;
  margin: 0;
}

.collection_concept .list__special {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    padding: 1em 0;
}

.collection_concept .list__special .list__special_img_half {
    margin: 0 auto;
    padding: 0;
    position: relative;
    max-width: 50%;
    width: 100%;
}

.collection_concept .list__special .list__special_img_half img {
    margin: auto;
    border-radius: 0 60px 60px 0;
    overflow: hidden;
    width: 100%;
}

.collection_concept .list__special .list__special_img_half.second img {
    margin: auto;
    border-radius: 60px 0 0 60px;
    overflow: hidden;
    width: 100%;
}

.collection_concept .list__special .list__special_text_half{
    text-align: center;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 50px;
    padding: 20px;
    width: 50%;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 40px;
}

.collection_concept .list__special_text_half h3.jpn{
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0.01em;
    text-align: center;
    margin: 10px 0 10px;
    line-height: 1.6;
}

.collection_concept .list__special_text_half p.guide_collection{
  font-size: 15px;
  text-align: center;
}

p.guide_product {
    padding-top: 0px;
    display: inline-block;
    text-align: left;
    font-size: 16px;
}

@media only screen and (min-width: 769px) and (max-width: 1199px) {
  .collection_concept .list__special {
    align-items: flex-start;
}
  .collection_concept .list__special .list__special_img_half {
    max-width: 50%;
}
  .collection_concept .list__special .list__special_text_half {
    margin: 0 20px;
    padding: 20px;
    width: 50%;
  }
}


@media (max-width: 768px) {
  .collection_concept .list__special {
    display: block;
}

.collection_concept .list__special .list__special_img_half {
        max-width: 98%;
        width: 100%;
        margin: 0px auto 0 0;
    }

.collection_concept .list__special .list__special_img_half.second {
        max-width: 98%;
        width: 100%;
        margin: 0px 0 0 auto;
    }

.collection_concept .list__special .list__special_text_half {
    padding: 20px 15px 30px 25px;
    width: 98%;
    margin: 10px 0 auto auto;
    border-radius: 60px 0 0 60px;
}

.collection_concept .list__special .list__special_text_half.second {
    padding: 20px 25px 30px 15px;
    width: 98%;
    margin: 10px auto auto 0;
    border-radius: 0 60px 60px 0;
}

}

@media (max-width: 767px) {
p.guide_product {
    padding-top: 20px;
}

}


/* --------------------------------
  faq よくあるご質問
---------------------------------- */
.faq_area{
    padding: 0px 10px 50px;
}

.faq{
  max-width: 980px;
  margin: 20px auto 50px;
  padding: 0px 20px 20px;
  text-align: center;
  background-color:#fff;
}

@media screen and (max-width: 980px) {
  .faq_area{
    padding: 0px 12px 50px;
}

  .faq{
  margin: 20px 0px 30px;
  padding: 0 0 30px;
}
}

 .pageSubTitle2 {
    font-size: 16px;
    line-height: 1.7;
    font-style: normal;
    color: #411e1b;
    text-align: left;
    margin: 0 0px 0 0;
  }

  .contentText {
    font-size: 16px;
    line-height: 1.7;
    font-style: normal;
    color: #000;
    text-align: left;
  }

  .qa {
    padding-top: 180px;
    padding-bottom: 278px;
  }

  .qa__box {
    max-width: 1100px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 10;
  }

  .qa__box > dl > dt {
    background-color: #fff;
    display: flex;
    align-items: center;
    padding: 10px 10px;
    position: relative;
    border-top: 1px solid #c3c3c3;
    border-bottom: 1px solid #c3c3c3;
    /*cursor: pointer;*/
  }

  .qa__box:first-child > dl > dt{
    border-top: none;
  }

  .qa__box > dl > dt .crossBar {
    width: 21px;
    height: 21px;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
  }

  .qa__box > dl > dt .crossBar::before {
    content: "";
    display: inline-block;
    width: 1.6px;
    height: 100%;
    background-color: #4D4D4D;
    position: absolute;
    top: 0;
    left: 50%;
    transform-origin: center center;
    transform: translateX(-50%) rotate(0deg);
    transition: transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
  }

  .qa__box > dl > dt .crossBar::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 1.6px;
    background-color: #4D4D4D;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }

  .qa__box > dl > dt > span {
    font-size: 28px;
    line-height: 1.75;
    font-weight: 500;
    font-style: normal;
    color: #d5af4a;
    margin-right: 10px;
  }

  .qa__box > dl > dd {
    margin: 0;
    background-color: #fff;
    display: flex;
    margin: 15px 0 25px;
    padding: 0px 10px;
    /*max-height: 0;
    overflow: hidden;*/
    transition: all 0.8s cubic-bezier(0.19, 1, 0.22, 1);
  }

  .qa__box > dl > dd > span {
    font-size: 28px;
    font-weight: 500;
    font-style: normal;
    color: #d5af4a;
    margin-right: 10px;
  }

  /* アニメーション後のスタイル */
  .qa__box > dl > dd.is-open {
    max-height: 300px;
    padding: 30px 10px;
  }
  /* ＋ボタンのアニメーション */
  .qa__box > dl > dt.is-open .crossBar::before {
    transform: translateX(-50%) rotate(90deg);
  }

/* ボタン */
.ice_shoplist .btn_area{
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 768px;
    margin: 10px auto;
    padding: 0 10px;
    gap: 10px 10px;
}

.ice_shoplist .btn_area .btn_arrow_light{
    margin: 0!important;
    width: 280px;
}

@media (max-width: 539px) {
    .ice_shoplist .btn_area{
    flex-direction:column;
}
}


/* --------------------------------
 ブロック
---------------------------------- */
.product_02.Patisserie{
background-color:hsla(50,92%,91%,1);
background-image:
radial-gradient(at 33% 78%, hsla(57,100%,87%,1) 0px, transparent 50%),
radial-gradient(at 25% 39%, hsla(50,92%,91%,1) 0px, transparent 50%),
radial-gradient(at 25% 10%, hsla(56,92%,83%,1) 0px, transparent 50%),
radial-gradient(at 52% 6%, hsla(30,100%,91%,1) 0px, transparent 50%),
radial-gradient(at 86% 87%, hsla(72,100%,82%,1) 0px, transparent 50%);
}

.product_01, .product_02{
  margin-bottom: 0;
}

/* product_02 PC時に表示順を入替 */
.product_02 .list__special .list__special_img_half { order: 2; }
.product_02 .list__special .list__special_text_half { order: 1; }


/* サムネイルスライダー */
.thumbnail-slider{
  display: flex;
  justify-content: center;
  padding: 10px 0;
}

.splide__track--nav>.splide__list>.splide__slide.is-active {
    border: 1px solid #000;
}