@charset "UTF-8";
.top #content #pictorialPattern {
  margin-top: -10px;
  padding-top: 20px;
 }
  .top #content #pictorialPattern .section_inner {
    padding-bottom: 0; }

.js-kvAnimeElm {
  transform: translateY(-10px); }

.pictorialPattern_lists {
  width: 67%;
  margin: 0 auto;
  margin-top: 3.7078651685%;
  display: flex;
  gap: 106px;
  position: relative;
  left: 10px;
  justify-content: center; }
  .pictorialPattern_lists .list_01 {
    width: 600px !important;}
  .pictorialPattern_lists .pictorialPattern_list {
    width: calc(205 * 100vw / 1240);
    text-align: center; }
    .pictorialPattern_lists .pictorialPattern_list img {
      width: 100%; }
    .pictorialPattern_lists .pictorialPattern_list .pictorialPattern_list__ribbon {
      width: 205px;
      display: block;
      margin: 0 auto;
      padding-bottom: 26px; }
      .pictorialPattern_lists .pictorialPattern_list .pictorialPattern_list__ribbon img {
        width: 100%; }

.lists_02 {
  gap: 130px;
  position: relative;
  left: 16px;
}
.ribbon_layout01 {
  width: 237px !important;
  margin-bottom: 26px !important;
  position: relative !important;
  left: -10px !important;
}

.ribbon_layout02 {
  position: relative !important;
  left: 21px !important;
}

.pictorialPattern_03-size {
  position: relative;
  left: -74px;
  width: 150% !important;
}

.pictorialPattern_04-size {
  width: 113% !important;
}

.pictorialPattern_lists + .pictorialPattern_lists {
  margin-top: 5.595505618%; }

.pictorialPattern_list__confectioneryMold_02 {
  margin-top: 6%; }

.pictorialPattern_list__confectioneryMold_05 {
  margin-top: 4%; }

.pictorialPattern_list__confectioneryMold_06 {
  margin-top: 5%; }

.pictorialPattern_list__confectioneryMold_07 {
  margin-top: 5%; }

.pictorialPattern__txtBox {
  display: flex;
  justify-content: center;
  margin-top: 3em;
  margin-bottom: 2em; }

.pictorialPattern__txtBox__txt {
  font-size: 9px;
  line-height: 1.5; }

.pictorialPattern_btns {
  width: 40.1123595506%;
  margin: 0 auto; }
  .pictorialPattern_btns .pictorialPattern_btn {
    margin-top: .5em; }
    .pictorialPattern_btns .pictorialPattern_btn a:hover img {
      opacity: .7; }

.product_items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 83.7078651685%;
  margin: 0 auto;
  margin-top: 3.3707865169%; }
  .product_items .product_item {
    width: 46.4429530201%;
    display: flex;
    flex-direction: column; }
    .product_items .product_item:nth-child(n + 3) {
      margin-top: 6.711409396%; }
    .product_items .product_item:last-child {
      width: 100%; }
      .product_items .product_item:last-child .product_item__thumb {
        margin-bottom: 3.7583892617%; }
      .product_items .product_item:last-child .product_item__ttl {
        margin-bottom: 2.6845637584%; }
      .product_items .product_item:last-child .product_item__txt {
        margin-bottom: 2.6845637584%; }

.product_item__thumb {
  margin-bottom: 8.0924855491%; }

.product_item__thumb--03 {
  margin-bottom: 5.7803468208%; }
  .product_item__thumb--03 img {
    margin-left: 6.6473988439%; }

.product_item__thumb--04 img {
  margin-top: 4.0462427746%;
  margin-left: 4.6242774566%; }

.product_item__thumb--05 {
  text-align: center; }

.product_item__ttl {
  margin-bottom: 6.6473988439%; }

.product_item__txt {
  margin-bottom: 5.7803468208%;
  font-size: 14px; }

.product_item__detailBtn {
  margin-top: auto; }
  .product_item__detailBtn a:hover img {
    opacity: .7; }

.product__desc {
  width: 83.7078651685%;
  border-radius: 10px;
  margin: 0 auto;
  margin-top: 5.6179775281%;
  background: url("../../img/product__desc_bg.png") no-repeat center center/100% 100%; }
  .product__desc__inner {
    padding: 4.6979865772% 5.5033557047%;
    display: flex;
    flex-wrap: nowrap; }

.product__desc__ttl {
  width: 112.8%;
  margin-bottom: 8.8%; }

.product__desc__txt {
  font-size: 14px;
  line-height: 1.3; }
  .product__desc__txt .product__desc__txt__note {
    font-size: 12px;
    line-height: 1.3;
    padding: 0.9em 0;
    display: inline-block; }

.product__desc__note {
  font-size: 12px;
  margin-top: 1em;
  line-height: 1.3; }

.l-product__desc {
  width: 39.4366197183%; }
  .l-product__desc + .l-product__desc {
    margin-left: 3.2394366197%;
    width: 56.338028169%; }

.product__desc__eyeCatch {
  width: 100%;
  margin-top: 15px; }
  .product__desc__eyeCatch img {
    width: 100%; }

/*キラキラ降りそそぐマウスストーカー*/
.shine {
  z-index: 10; }
  @media only screen and (max-width: 950px) {
    .shine {
      display: none; } }

@keyframes shine {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }
.header__kvModules {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  margin: auto; }
  .header__kvModules__inner {
    position: relative;
    width: 100%;
    height: 100%; }

.kvModule {
  position: absolute;
  top: 0;
  left: 0; }

.kvModule_01 {
  z-index: 4;
  width: 377px;
  left: -45px;
  top: 18px;
  right: 0;
  margin: auto; }

.kvModule_02 {
  left: 60px;
  top: 0px;
  z-index: 1; }

.kvModule_03 {
  right: -14px;
  left: inherit;
  z-index: 1;
  top: 0px; }

.kvModule_04 {
  position: absolute;
  top: 18px;
  left: 3px;
  z-index: 4; }

.kvModule_05 {
  top: 313px;
  left: 120px;
  z-index: 4; }

.kvModule_bg {
  width: 100%;
  z-index: 3;
  top: 272px; }
  .kvModule_bg img {
    width: 100%; }

.kvModule_bg02 {
  width: 100%;
  z-index: 0;
  top: 4px; }
  .kvModule_bg02 img {
    width: 100%; }

.effectImg-layout {
    display: none;
}

.js-kvAnimeElm_effect {
  transform: scale(0);
  opacity: 0; }

.js-kvAnimeElm_package {
  transform: translateY(-10px);
  opacity: 0; }

.js-kvAnimeElm_flag {
  opacity: 0;
  transition: opacity 2.2s ease; }
  .js-kvAnimeElm_flag.is-show {
    opacity: 1; }

.js-kvAnimeElm {
  opacity: 0; }

.u-pcBreak {
  display: block; }

.u-spBreak {
  display: none; }

body {
  overflow: hidden !important; }

@media only screen and (max-width: 640px) {
  .header__kvModules {
    height: 0;
    padding-bottom: 165vw; }

  .kvModule {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; }
    .kvModule img {
      width: 100%; }

  .kvModule_bg {
    top: 64.5vw;
    width: calc(610 * 100vw / 640) !important;
    left: calc(15 * 100vw / 640);
    height: 20.5vw; }

  .kvModule_01 {
    width: 63.375vw;
    left: calc(-240 * 100vw / 640);
    top: calc(113 * 100vw / 640);
    right: 0;
    z-index: 6;
    margin: auto;
    margin-top: 10vw; }

  .kvModule_02 {
    display: none;
    left: 0px;
    top: calc(138 * 100vw / 640);
    z-index: 5;
    width: 30.29375vw;
  }

  .kvModule_03 {
    right: calc(-7 * 100vw / 640);
    left: inherit;
    z-index: 1;
    top: calc(22 * 100vw / 640);
    width: 59.28125vw;
   }

  .kvModule_04 {
    position: absolute;
    top: calc(0 * 100vw / 640);
    left: calc(16 * 100vw / 640);
    right: 0;
    z-index: 0;
    width: 100%; }

  .kvModule_05 {
    top: 66vw;
    left: calc(348 * 100vw / 640);
    z-index: 6;
    width: 40%; }

  .kvModule_bg {
    width: 100%;
    z-index: 5; }
    .kvModule_bg img {
      width: 100%; }

  .kvModule_bg02 {
    width: 100%;
    z-index: 0; }
    .kvModule_bg02 img {
      width: 100%; }

  .effectImg-layout {
    display: flex;
    position: relative;
    top: calc(430 * 100vw / 640);
    z-index: 6;
    width: 80%;
    left: calc(72 * 100vw / 640);
  }

  .pictorialPattern_03-size {
    width: 117% !important;
    left: calc(-35 * 100vw / 640);
  }

  .lists_02 {
    gap: calc(130 * 100vw / 640);
    position: relative;
    left: calc(16 * 100vw / 640);
  }
  .ribbon_layout01 {
    width: calc(421 * 100vw / 640) !important;
    margin-bottom: calc(35 * 100vw / 640) !important;
    left: 0 !important;
  }

  .ribbon_layout02 {
    position: relative !important;
    left: 0 !important;
  }
  .pictorialPattern_01-size {
    width: calc(480 * 100vw / 640) !important;
  }
  .pictorialPattern_02-size {
    width: calc(480 * 100vw / 640) !important;
  }

  .pictorialPattern_04-size {
    width: 100% !important;
  }

  .u-pcBreak {
    display: none; }

  .u-spBreak {
    display: block; }

  .top #content #pictorialPattern {
    margin-top: calc(120 * 100vw / 640);
    padding-top: 0; }
    .top #content #pictorialPattern .section_inner {
      padding-bottom: 0; }

  .pictorialPattern_lists {
    width: 73.4375vw;
    margin: 0 auto;
    gap: calc(30 * 100vw / 640);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    left: 0;
    margin-top: 9.375vw; }
    .pictorialPattern_lists .pictorialPattern_list {
      width: 100%; }
      .pictorialPattern_lists .pictorialPattern_list:not(:first-child) {
        margin-top: 8.75vw; }
      .pictorialPattern_lists .pictorialPattern_list .pictorialPattern_list__ribbon {
        width: 57.125vw;
        padding-bottom: 0;
        margin-bottom: 7.125vw; }

  .pictorialPattern_list__confectioneryMold_02 {
    margin-top: 0; }

  .pictorialPattern_list__confectioneryMold_05 {
    margin-top: 0; }

  .pictorialPattern_list__confectioneryMold_06 {
    margin-top: 0; }

  .pictorialPattern_list__confectioneryMold_07 {
    margin-top: 0; }

  .pictorialPattern_lists + .pictorialPattern_lists {
    margin-top: 13.75vw; }

  .pictorialPattern__txtBox {
    display: flex;
    justify-content: center;
    margin-top: calc(65 * 100vw / 640);
    margin-bottom: 2em; }

  .pictorialPattern__txtBox__txt {
    font-size: calc(18 * 100vw / 640);
    line-height: 1.5; }

  .pictorialPattern_btns {
    width: 85.9375vw;
    margin: 0 auto; }
    .pictorialPattern_btns .pictorialPattern_btn {
      margin-top: .5em; }
      .pictorialPattern_btns .pictorialPattern_btn img {
        width: 100%; }

  .product_items {
    width: 100%;
    margin: 0 auto;
    margin-top: 8.75vw; }
    .product_items .product_item {
      width: 100%; }
      .product_items .product_item:not(:first-child) {
        margin-top: 11.71875vw; }
      .product_items .product_item:nth-child(n + 3) {
        margin-top: 11.71875vw; }
      .product_items .product_item:last-child {
        width: 100%; }
        .product_items .product_item:last-child .product_item__thumb {
          width: 80.9375vw;
          margin-bottom: 6.40625vw; }
        .product_items .product_item:last-child .product_item__txt {
          margin-bottom: 4.21875vw; }

  .product_item__thumb {
    width: 68.75%;
    margin: 0 auto;
    margin-bottom: 6.40625vw; }
    .product_item__thumb img {
      width: 100%; }

  .product_item__thumb--03 {
    margin-bottom: 6.40625vw; }
    .product_item__thumb--03 img {
      margin-left: 0; }

  .product_item__thumb--04 {
    width: 85.9375vw; }
    .product_item__thumb--04 img {
      margin-top: 0;
      margin-left: 0; }

  .product_item__thumb--05 {
    text-align: center; }

  .product_item__ttl {
    margin-left: 5vw; }
    .product_item__ttl img {
      width: 100%; }

  .product_item__ttl--01 {
    width: 65.625vw; }

  .product_item__ttl--02 {
    width: 65.625vw; }

  .product_item__ttl--03 {
    width: 85.9375vw; }

  .product_item__ttl--04 {
    width: 85.9375vw; }

  .product_item__ttl--05 {
    width: 87.5vw; }

  .product_item__txt {
    width: 85.9375vw;
    margin: 0 auto;
    margin-bottom: 4.21875vw;
    font-size: 3.8vw; }

  .product_item__detailBtn {
    margin-top: auto;
    width: 85.9375vw;
    margin: 0 auto; }
    .product_item__detailBtn img {
      width: 100%; }

  .product__desc {
    width: 85.9375vw;
    margin: 0 auto;
    margin-top: 10vw;
    background: url("../../img/product__desc_bg_sp.png") no-repeat center center/100% 100%; }
    .product__desc__inner {
      padding: 6.25vw 3.90625vw 10.15625vw;
      display: flex;
      flex-wrap: wrap; }

  .product__desc__ttl {
    width: 77.5vw;
    margin: 0 auto;
    margin-bottom: 4.6875vw; }
    .product__desc__ttl img {
      width: 100%; }

  .product__desc__txt {
    font-size: 3.9vw;
    line-height: 1.3; }
    .product__desc__txt .product__desc__txt__note {
      font-size: 2.5vw;
      line-height: 1.3; }

  .product__desc__note {
    font-size: 2.5vw;
    margin-top: 1em;
    line-height: 1.3; }

  .l-product__desc {
    width: 85.9375vw;
    margin: 0 auto;
    order: 2; }
    .l-product__desc + .l-product__desc {
      margin-left: 0;
      width: 85.9375vw;
      order: 1;
      margin-bottom: 5.9375vw; }

  .product__desc__eyeCatch {
    margin-top: auto; }

  .top #history .pkg {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    .top #history .pkg .pkg__item {
      float: none;
      margin-left: 0; }
      .top #history .pkg .pkg__item:nth-child(even) {
        margin-left: 0; }
    .top #history .pkg .pkg__item--1983 img {
      width: 100%; }
    .top #history .pkg .pkg__item--1984 img {
      width: 100%; }
    .top #history .pkg .pkg__item--2002 {
      width: 45.58%; }
    .top #history .pkg .pkg__item--2013 {
      margin-top: 10.8%; }
    .top #history .pkg .pkg__item--2015 {
      width: 35.9375vw; }
    .top #history .pkg .pkg__item--2015_02 {
      width: 35.9375vw;
      margin-left: 8%; }
    .top #history .pkg .pkg__item--2018 {
      width: 35.9375vw; }
      .top #history .pkg .pkg__item--2018 img {
        width: 100%; }
    .top #history .pkg .pkg__item--2020 {
      width: 37.8125vw; }
    .top #history .pkg .pkg__item--2020_02 {
      width: 40.9375vw; }
    .top #history .pkg .pkg__item--2022 {
      width: 37.96875vw;
      margin-top: 11.4vw; } }

.bnr {
  text-align: center;
  position: relative;
  /* padding-top: 20px; */
  z-index: 5; }
@media only screen and (max-width: 640px) {
  .bnr {
    width: 96.5%;
    margin: 0 auto;
    padding-top: 14vw; }
    .bnr img {
      width: 100%; }
}