@import url("https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&family=Sawarabi+Gothic&display=swap");
:root {
  --color1: #be282d;
  --color2: #a78d5e;
  --color3: #e0b479;
  --color4: #005d8b;
  --color5: #c1272d;
  --color6: #f7931e;
  --color7: #c8871a;
  --color8: #c8871a;
  --color9: #c8871a;
  --color10: #998675;
  --cw: 750px;
  --ctw: 1em; }

.cf:before,
.cf:after {
  content: " ";
  display: table; }

.cf:after {
  clear: both; }

.cf {
  *zoom: 1; }

.show-PC {
  display: block; }

.show-SP {
  display: none; }

p img.imsmall {
  max-width: 40%; }

p img.fll,
p .fll {
  float: left;
  margin: 0 0.5em 0.5em 0;
  max-width: 40%;
  text-align: center; }

p img.flr,
p .flr {
  float: right;
  margin: 0 0 0.5em 0.5em;
  max-width: 40%;
  text-align: center; }

p .fll img,
p .flr img {
  width: 100%; }

p img.sml {
  max-width: 20%; }

@media screen and (max-width: 767px) {
  .show-PC {
    display: none; }

  .show-SP {
    display: block; } }
@media screen and (min-width: 768px) {
  .show-PC {
    display: inherit; }

  .show-SP {
    display: none; } }
@media print {
  .show-PC {
    display: inherit; }

  .show-SP {
    display: none; } }
@media screen and (max-width: 767px) {
  .show-PC {
    display: none; }

  .show-SP {
    display: inherit; } }
@media screen {
  .fadein {
    opacity: 0;
    transition: all 0.5s ease-in-out 0.1s; } }

@media screen {
  .fadeinRate {
    opacity: 0;
    transition: all 2.0s ease-in-out 0.3s; } }

@media screen {
  .fadeinT {
    opacity: 0;
    transform: translate(0, -20px);
    transition: all 0.5s ease-out 0.3s; } }

@media screen {
  .fadeinL {
    opacity: 0;
    transform: translate(-20px, 0);
    transition: all 0.5s ease-in-out 0.3s; } }

@media screen {
  .fadeinB {
    opacity: 0;
    transform: translate(0, 20px);
    transition: all 0.5s ease-in-out 0.3s; } }

@media screen {
  .fadeinR {
    opacity: 0;
    transform: translate(20px, 0);
    transition: all 0.5s ease-in-out 0.3s; } }

@media screen {
  .fadeinL {
    opacity: 0;
    transform: translate(0, -100);
    transition: all 0.5s ease-in-out 0.3s; } }

@media screen {
  .fadeinR {
    opacity: 0;
    transform: translate(0, 100);
    transition: all 0.5s ease-in-out 0.3s; } }

@media screen {
  .fadeinCnt {
    opacity: 0;
    transform: translate(-20%, 0);
    transition: all 0.5s ease 0.3s; }
    .fadeinCnt:nth-child(even) {
      transform: translate(20%, 0); } }

@media screen {
  .fadein.scrollin,
  .fadeinRate.scrollin,
  .fadeinT.scrollin,
  .fadeinL.scrollin,
  .fadeinB.scrollin,
  .fadeinR.scrollin,
  .fadeinCnt.scrollin {
    opacity: 1;
    transform: translate(0, 0) scale(1); } }

#container {
  min-width: auto; }

@media print {
  .cmn-header {
    display: none; } }

.ib,
.cake__wrapper i {
  display: inline-block;
  text-decoration: none;
  font-style: normal; }

#pagetop {
  display: none;
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 68px;
  height: 68px; }
  #pagetop a {
    display: block; }
  #pagetop img {
    width: 100%;
    height: auto; }

@media screen and (max-width: 767px) {
  #pagetop {
    width: 5.7vw;
    height: auto;
    bottom: 20vw; } }
@media print {
  #pagetop {
    display: none !important; } }
[data-readmore-toggle].readMore,
[data-readmore-toggle].readMore,
[data-readmore-toggle].readLess,
[data-readmore-toggle].readLess,
[data-readmore-toggle].readMore,
[data-readmore].readMore,
[data-readmore-toggle].readLess,
[data-readmore].readLess {
  position: relative;
  padding: 0.5em 1em;
  margin: 1rem auto 0 auto;
  line-height: 1;
  text-decoration: none;
  font-size: 1em;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  text-align: center;
  color: var(--color2);
  border: 1px var(--color2) solid;
  border-radius: 2em;
  box-sizing: border-box; }

.readMore:before,
.readLess:before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  border-right: 1px var(--color2) solid;
  border-bottom: 1px var(--color2) solid;
  position: absolute;
  top: 30%;
  bottom: 0;
  right: 10%;
  transform: rotate(45deg); }

.readLess:before {
  transform: rotate(225deg);
  top: 40%; }

.open [data-readmore-toggle].readMore,
.open [data-readmore-toggle].readMore,
.open [data-readmore-toggle].readLess,
.open [data-readmore-toggle].readLess,
.open [data-readmore-toggle].readMore,
.open [data-readmore].readMore,
.open [data-readmore-toggle].readLess,
.open [data-readmore].readLess,
.open .todetail a {
  display: none; }

@media print {
  [data-readmore-toggle].readMore,
  [data-readmore-toggle].readMore,
  [data-readmore-toggle].readLess,
  [data-readmore-toggle].readLess,
  [data-readmore-toggle].readMore,
  [data-readmore].readMore,
  [data-readmore-toggle].readLess,
  [data-readmore].readLess {
    display: none; } }
.cake__wrapper {
  background-color: #e6e6e6;
  overflow: hidden;
  padding-bottom: 4rem; }
  @media screen and (max-width: 767px) {
    .cake__wrapper {
      padding: 3vw; } }

.cake__header {
  padding: 4.5rem 0 1rem 0; }

.cake__title--wrapper {
  margin: 0 auto 0 auto;
  display: block;
  width: 100%;
  max-width: 670px;
  position: relative;
  z-index: 1; }

.cake__image .cake__image-pc {
  margin: -5rem auto 2rem;
  max-width: 986px; }
  @media screen and (max-width: 767px) {
    .cake__image .cake__image-pc {
      display: none; } }
@media screen and (min-width: 768px) {
  .cake__image .cake__image-sp {
    display: none; } }
@media print {
  .cake__image .cake__image-sp {
    display: none; } }
.cake__image img {
  width: 100%;
  height: auto; }
@media screen and (max-width: 767px) {
  .cake__image {
    margin-bottom: 5vw; } }

.cake__intro {
  text-align: center;
  max-width: 986px;
  margin: 0 auto;
  background-image: url(/base/shinjuku/christmas_cake/img//cake26_star_pc.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat; }

.cake__intro--title {
  font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-feature-settings: "palt";
  font-size: 3.6rem;
  color: var(--color1);
  margin-bottom: 2.5rem; }

.cake__intro--copy {
  font-family: "YakuHanMP", "Sawarabi Gothic", sans-serif;
  font-weight: 400;
  font-optical-sizing: auto;
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 3;
  margin-bottom: 2.5rem; }

.category__00 {
  max-width: 1020px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  padding: 9rem 3.8rem 0;
  background-color: #FFF; }
  @media screen and (max-width: 767px) {
    .category__00 {
      padding: 5vw; } }
  .category__00::before {
    content: "";
    background-image: url(/base/shinjuku/christmas_cake/img//category__01_bg.png);
    background-size: contain;
    background-position: center top;
    background-repeat: no-repeat;
    width: 100%;
    height: auto;
    aspect-ratio: 1020 / 304;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1; }

.category__01 {
  max-width: 1020px;
  margin: 0 auto;
  padding: 9rem 3.8rem 0;
  background-color: #FFF;
  position: relative;
  z-index: 1; }
  .category__01::before {
    content: "";
    background-image: url(/base/shinjuku/christmas_cake/img//cake26_line.svg);
    background-size: contain;
    background-position: center top;
    background-repeat: no-repeat;
    width: 88%;
    height: auto;
    aspect-ratio: 904 / 50;
    position: absolute;
    left: 6%;
    top: 0;
    z-index: -1; }

.category__02 {
  max-width: 1020px;
  margin: 0 auto;
  padding: 12rem 3.8rem 0;
  background-color: var(--color1);
  position: relative;
  z-index: 1; }
  .category__02::before {
    content: "";
    background-image: url(/base/shinjuku/christmas_cake/img//category__02_bg.jpg);
    background-size: 100%;
    background-position: center top;
    background-repeat: no-repeat;
    width: 100%;
    height: auto;
    aspect-ratio: 1020 / 50;
    position: absolute;
    left: 0%;
    top: 0;
    z-index: -1; }

.category__03 {
  max-width: 1020px;
  margin: 0 auto;
  padding: 12rem 3.8rem 0;
  background-color: #ffffff;
  position: relative;
  z-index: 1; }
  .category__03::before {
    content: "";
    background-image: url(/base/shinjuku/christmas_cake/img//category__03_bg.jpg);
    background-size: 100%;
    background-position: center top;
    background-repeat: no-repeat;
    width: 100%;
    height: auto;
    aspect-ratio: 1020 / 50;
    position: absolute;
    left: 0%;
    top: 0;
    z-index: -1; }

.owatashi {
  position: relative;
  z-index: 2;
  margin-bottom: 4rems; }

.owatashi__title {
  text-align: center;
  font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-feature-settings: "palt";
  font-size: 3.6rem;
  color: var(--color2); }
  @media screen and (max-width: 767px) {
    .owatashi__title {
      font-size: 4rem;
      margin-bottom: 3vw; } }

.owatashi__info {
  width: 78%;
  margin: 0 auto;
  display: flex; }
  @media screen and (max-width: 767px) {
    .owatashi__info {
      width: 100%;
      flex-direction: column; } }
  .owatashi__info dt {
    background-color: var(--color2);
    color: #FFF;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 180px;
    font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-feature-settings: "palt";
    font-size: 1.6rem;
    padding: 1em; }
    @media screen and (max-width: 767px) {
      .owatashi__info dt {
        width: 100%; } }
  .owatashi__info dd {
    border: 1px solid var(--color2);
    font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-feature-settings: "palt";
    font-size: 1.4rem;
    padding: 0.75em; }

.cake__nav {
  max-width: 880px;
  margin: 0 auto;
  padding: 4rem 0; }
  .cake__nav .cake__nav--list {
    display: flex;
    justify-content: space-between;
    gap: 30px; }
    @media screen and (max-width: 767px) {
      .cake__nav .cake__nav--list {
        flex-wrap: wrap;
        justify-content: center;
        gap: 4vw; } }
    .cake__nav .cake__nav--list li a {
      font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
      font-optical-sizing: auto;
      font-feature-settings: "palt";
      font-size: 3rem;
      padding: 0em;
      font-weight: 500;
      background-color: var(--color1);
      color: #FFF;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-decoration: none;
      line-height: 1.3;
      width: 100%;
      padding: 0.5em 1em;
      border-radius: 1em;
      box-shadow: 0 5px 0 var(--color3); }
      @media screen and (max-width: 767px) {
        .cake__nav .cake__nav--list li a {
          font-size: 2.6rem; } }
      .cake__nav .cake__nav--list li a small {
        font-size: 66.6%;
        display: inline-block; }
    @media screen and (max-width: 767px) {
      .cake__nav .cake__nav--list li {
        width: 45%; } }
    .cake__nav .cake__nav--list .cake--freezed a {
      background-color: var(--color4); }

.category__title {
  font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-feature-settings: "palt";
  font-size: 4.5rem;
  font-weight: 500;
  line-height: 1;
  height: 12rem;
  display: flex; }
  @media screen and (max-width: 767px) {
    .category__title {
      font-size: 4.0rem; } }
  .category__title .category__title--inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    line-height: 1.3; }
    @media screen and (max-width: 767px) {
      .category__title .category__title--inner {
        flex-direction: row; } }
  .category__01 .category__title, .category__03 .category__title {
    color: #FFF;
    transform: translateX(50%);
    margin: 0 auto 0;
    padding: 0em;
    background-color: var(--color1); }
    .category__01 .category__title:before, .category__03 .category__title:before {
      content: "";
      display: flex;
      width: 3rem;
      height: 100%;
      transform: translateX(-3rem);
      box-sizing: border-box;
      border-top: 6rem solid var(--color1);
      border-bottom: 6rem solid var(--color1);
      border-left: 3rem solid transparent;
      border-right: 0; }
    @media screen and (max-width: 767px) {
      .category__01 .category__title, .category__03 .category__title {
        transform: translateX(-20%);
        justify-content: flex-end; }
        .category__01 .category__title:before, .category__03 .category__title:before {
          display: none; }
        .category__01 .category__title:after, .category__03 .category__title:after {
          content: "";
          display: flex;
          width: 3rem;
          height: 100%;
          transform: translateX(3rem);
          box-sizing: border-box;
          border-top: 6rem solid var(--color1);
          border-bottom: 6rem solid var(--color1);
          border-right: 3rem solid transparent;
          border-left: 0; } }
  .category__03 .category__title {
    background-color: var(--color4); }
    .category__03 .category__title:before {
      border-top-color: var(--color4);
      border-bottom-color: var(--color4); }
      @media screen and (max-width: 767px) {
        .category__03 .category__title:before {
          display: none; } }
    @media screen and (max-width: 767px) {
      .category__03 .category__title::after {
        border-top-color: var(--color4);
        border-bottom-color: var(--color4); } }
  .category__02 .category__title {
    margin: 0 auto 6rem;
    padding: 0em;
    background-color: #FFF;
    color: var(--color1);
    transform: translateX(-50%);
    justify-content: flex-end; }
    .category__02 .category__title:after {
      content: "";
      display: flex;
      width: 3rem;
      height: 100%;
      transform: translateX(3rem);
      box-sizing: border-box;
      border-top: 6rem solid #FFF;
      border-bottom: 6rem solid #FFF;
      border-right: 3rem solid transparent;
      border-left: 0; }
    @media screen and (max-width: 767px) {
      .category__02 .category__title {
        transform: translateX(-9%);
        justify-content: flex-end; } }
  .category__title small {
    font-size: 55.5%;
    display: block;
    line-height: 1; }

.item__list {
  padding-bottom: 4rem; }
  @media screen and (min-width: 768px) {
    .item__list.items--101 {
      margin-top: -8rem; } }
  @media print {
    .item__list.items--101 {
      margin-top: -8rem; } }
  @media screen and (max-width: 767px) {
    .item__list.items--101 {
      margin-top: 4rem; } }

.item {
  display: flex;
  gap: 2rem;
  align-items: center; }
  .items--101 .item:nth-child(odd), .items--301 .item:nth-child(odd) {
    transform: translateX(-8rem);
    width: calc(100% + 8rem); }
    @media screen and (max-width: 767px) {
      .items--101 .item:nth-child(odd), .items--301 .item:nth-child(odd) {
        transform: translateX(-10vw);
        width: calc(100% + 10vw); } }
  .items--101 .item:nth-child(even), .items--301 .item:nth-child(even) {
    margin-top: -6rem;
    width: calc(100% + 8rem);
    flex-direction: row-reverse; }
  .items--102 .item, .items--202 .item, .items--302 .item {
    flex-direction: column;
    width: calc((100% - 7rem) / 3);
    gap: 1.5rem; }
    @media screen and (max-width: 767px) {
      .items--102 .item, .items--202 .item, .items--302 .item {
        width: calc((100% - 5vw) /2);
        gap: 1.5vw; } }
  .items--201 .item:nth-child(even) {
    transform: translateX(-8rem);
    width: calc(100% + 8rem); }
  .items--201 .item:nth-child(odd) {
    margin-top: -6rem;
    width: calc(100% + 13rem);
    flex-direction: row-reverse; }
    .items--201 .item:nth-child(odd) .item__image {
      transform: translateX(-2rem); }
  .items--301 .item {
    background-repeat: no-repeat;
    background-size: auto; }
    .items--301 .item:nth-child(1) {
      background-image: url(/base/shinjuku/christmas_cake/img//cake26_item301_bg.png);
      background-position: right 10% top 10%; }
      @media screen and (max-width: 767px) {
        .items--301 .item:nth-child(1) {
          background-size: 12%;
          background-position: right 5% top 5%; } }
    .items--301 .item:nth-child(2) {
      background-image: url(/base/shinjuku/christmas_cake/img//cake26_item302_bg.png);
      background-position: left 5% bottom 19%; }
      @media screen and (max-width: 767px) {
        .items--301 .item:nth-child(2) {
          background-size: 5%;
          background-position: left 0% bottom 15%; } }
    .items--301 .item:nth-child(3) {
      background-image: url(/base/shinjuku/christmas_cake/img//cake26_item303_bg.png);
      background-position: right 2% bottom 10%; }
      @media screen and (max-width: 767px) {
        .items--301 .item:nth-child(3) {
          background-size: 31%;
          background-position: right 0% bottom 10%; } }
  .items--101 .item + .item, .items--201 .item + .item, .items--301 .item + .item {
    margin-top: -6rem; }
  .items--301 .item:last-child {
    flex-direction: column;
    transform: translateX(0);
    width: 100%; }
    .items--301 .item:last-child .item__image {
      transform: translateX(-10rem); }
      @media screen and (max-width: 767px) {
        .items--301 .item:last-child .item__image {
          transform: translateX(-6vw); } }

.items--102,
.items--202,
.items--302 {
  display: flex;
  gap: 3.5rem;
  margin: 0 auto 0;
  padding: 6rem 0;
  flex-wrap: wrap; }

.items--102 .item__image, .items--202 .item__image, .items--302 .item__image {
  border-radius: 2rem;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    .items--102 .item__image, .items--202 .item__image, .items--302 .item__image {
      aspect-ratio: 1 / 1; } }
  .items--102 .item__image img, .items--202 .item__image img, .items--302 .item__image img {
    width: 100%;
    height: auto; }

.item__text {
  width: 100%; }

.item__text--brand {
  font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-feature-settings: "palt";
  font-size: 2.5rem;
  font-weight: 600;
  color: var(--color2);
  margin-bottom: 1.5rem;
  line-height: 1.3; }
  .category__02 .item__text--brand {
    color: #FFF; }
  .category__03 .item__text--brand {
    color: #000; }

.item__text--name {
  font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-feature-settings: "palt";
  font-size: 1.5rem;
  font-weight: 400;
  margin-bottom: 1.5rem; }
  .item__text--name small {
    font-size: 75%; }
  .category__02 .item__text--name {
    color: #FFF; }
  .item__text--name strong {
    font-size: 180%;
    line-height: 1.1; }

.item__text--price {
  font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-feature-settings: "palt";
  font-size: 1.9rem;
  font-weight: 400;
  display: inline-block;
  line-height: 1; }
  .item__text--price strong {
    font-size: 168%; }
  .category__02 .item__text--price {
    color: #FFF; }

.item__text--web {
  display: inline-flex;
  width: fit-content;
  padding: 0.25em 0.75em;
  border: 1px solid #F00;
  color: #F00;
  line-height: 1;
  border-radius: 2em;
  margin: 0 0.5em; }
  .category__02 .item__text--web {
    color: #FFF;
    border-color: #FFF; }

.item__text--limited {
  display: flex;
  width: fit-content;
  padding: 0.25em 0.75em;
  background-color: #998675;
  color: #FFF;
  line-height: 1;
  font-size: 80%;
  margin: 0.5em 0; }

.item__online {
  max-width: 100%; }
  .item__online a {
    font-family: "Jost", sans-serif;
    font-size: 2.6rem;
    text-decoration: none;
    color: var(--color2);
    line-height: 1;
    padding: 0.3em 2em;
    border: 1px solid var(--color2);
    border-radius: 2em;
    box-sizing: border-box;
    display: inline-block;
    max-width: 100%;
    position: relative; }
    @media screen and (max-width: 767px) {
      .item__online a {
        padding: 0.3em 1.75em;
        font-size: 2.2rem; } }
    .item__online a::after {
      content: "";
      border-top: 1px solid var(--color2);
      border-right: 1px solid var(--color2);
      width: 0.35em;
      height: 0.35em;
      position: absolute;
      top: 50%;
      right: 1.2em;
      transform: translate(0, -50%) rotate(45deg); }
      .category__02 .item__online a::after {
        border-top: 1px solid #FFF;
        border-right: 1px solid #FFF; }
    .category__02 .item__online a {
      color: #FFF;
      border-color: #FFF; }

/*# sourceMappingURL=index.css.map */
