/* おせち */
.p-inner-headline--osechi {
  background: url(../img/osechi/img.jpg) center center no-repeat;
  background-size: cover;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2) {
  .p-inner-headline--osechi {
      background: url(../img/osechi/img-1@2x.jpg) center center no-repeat;
  }
}

.p-takeout__bgwhite--pb {
  padding: 100px 0 0!important;
}

@media (max-width: 767px) {
  .p-takeout__bgwhite--pb {
    padding: 50px 0 0!important;
  }
}

/* 予約完了 */
.p-yoyaku-kanbai {
  width: 720px;
  max-width: calc( 100% - 4rem );
  margin: 0 auto 5rem;
  text-align: center;
  font-weight: 600;
  font-size: 2.6rem;
}

@media (max-width: 767px) {
  .p-yoyaku-kanbai {
    font-size: 2.0rem;
    margin: 0 auto 3rem;
  }
}

/* 完売 */
.p-kanbai-box {
  width: 5rem;
  height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #a01d1d;
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  font-family: "Hiragino Mincho ProN","Hiragino Mincho Pro","Yu Mincho",YuMincho,"游明朝","HG明朝E",serif;
}

.p-kanbai-box--full{
  width: 100%;
  height: 6rem;
  font-size: 2.4rem;
  background-color: #de4116;
}

@media (max-width: 767px) {
  .p-kanbai-box--full{
    height: 4rem;
    font-size: 1.8rem;
  }
}

/* 予約ボタン */
.p-block-yoyaku {
  width: 720px;
  max-width: calc(100% - 4rem);
  margin: 0 auto 10rem;
  border: 1px solid #a01d1d;
  background-color: #fff;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .p-block-yoyaku {
    margin-bottom: 5rem;
  }
}

.p-block-yoyaku__title {
  background-color: #a01d1d;
  color: #fff;
  text-align: center;
  font-family: Hannari;
  font-size: 3.0rem;
  line-height: 1.2;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.p-block-yoyaku__wrap {
  width: 570px;
  max-width: calc(100% - 4rem);
  margin: 0 auto;
}

.p-block-yoyaku__text {
  font-size: 1.6rem;
  line-height: 2.25;
  text-align: center;
  margin-top: 2.5rem;

}

.u-red {
  color: #a01d1d;
}

.p-block-yoyaku-telbox {
  display: flex;
  justify-content: center;
  font-family: Hannari;
  align-items: center;
  padding-bottom: 1rem;
  border-bottom: 1px solid #636363;
  margin-top: -1rem;
}


.p-block-yoyaku-telbox__tel {
  display: flex;
  align-items: baseline;
  font-size: 3.6rem;
}

.p-block-yoyaku-telbox__num {
  font-size: 6.0rem;
  margin-left: 1rem;
}

.p-block-yoyaku-telbox__holiday {
  font-size: 1.6rem;
  margin-left: 2rem;
}

.p-block-yoyaku-data {
  padding-left: 5rem;
  padding-right: 2rem;
  display: flex;
  margin-top: 1.5rem;
  align-items: baseline;
}

.p-block-yoyaku-data__title {
  width: 100px;
  height: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #a01d1d;
  color: #fff;
  font-size: 1.6rem;
  font-family: Hannari;
  position: relative;
  top: -7px;
  margin-right: 2rem;
}

.p-block-yoyaku-data__text {
  font-family: Hannari;

}

@media (max-width: 767px) {
  .p-block-yoyaku__title {
    font-size: 2.2rem;
  }

  .p-block-yoyaku__text {
    text-align: left;
  }

  .p-block-yoyaku-telbox {
    flex-direction: column;
  }

  .p-block-yoyaku-telbox__tel {
    font-size: 2.2rem;
  }

  .p-block-yoyaku-telbox__num {
    font-size: 3.0rem;
    margin-left: 1rem;
    display: inline-block;
  }

  .p-block-yoyaku-data {
    padding-left: 0;
    padding-right: 0;
    flex-direction: column;
  }
}



.u-textcenter {
  text-align: center;
}

.u-lh225 {
  line-height: 2.25;
}

.u-fs30 {
  font-size: 3.0rem;
}

.u-fs24 {
  font-size: 2.4rem;
}

.u-fs20 {
  font-size: 2.0rem;
}

.u-fs16 {
  font-size: 1.6rem;
}

.u-fs14 {
  font-size: 1.4rem;
}

.u-flex {
  display: flex!important;
}

.u-flex-wrap {
  flex-wrap: wrap;
}

.u-align-items-center {
  align-items: center!important;
}

.u-align-items-baseline {
  align-items: baseline!important;
}

.u-justify-content-center {
  justify-content: center!important;
}

.u-mt_5 {
  margin-top: -0.5rem;
}

.u-hiragino {
  font-family: "Hiragino Mincho ProN","Hiragino Mincho Pro","Yu Mincho",YuMincho,"游明朝","HG明朝E",serif;
}

@media (max-width: 767px) {
  .u-fs22--break-md {
    font-size: 2.2rem;
  }
  .u-fs16--break-md {
    font-size: 1.6rem;
  }
  .u-fs13--break-md {
    font-size: 1.3rem;
  }
  .u-fs18--break-md {
    font-size: 1.8rem;
  }

}

.box--pb30 {
  padding-bottom: 3.0rem!important;
}

.lead--mb0 {
  margin-bottom: 0!important;
}

.p-takeout-hitorioseshi {
  background: url(../img/osechi/bg-osechi01.jpg) center center repeat;
  background-size: 120px;
  width: 100%;
  max-width: 100%;
  padding-top: 10rem;
  padding-bottom: 12rem;
  position: relative;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2) {
  .p-takeout-hitorioseshi {
      background: url(../img/osechi/bg-osechi01@2x.jpg) center center repeat;
  }
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi {
    padding-top: 6rem;
    padding-bottom: 8rem;
  }
}

.p-takeout-hitoriosechi__cloud {
  position: absolute;
  top: 50px;
  z-index: 1;
}

.p-takeout-hitoriosechi__cloud--01 {
  right: -70px;
}

.p-takeout-hitoriosechi__cloud--02 {
  left: -70px;
}

.p-takeout-hitoriosechi__cloud02 {
  position: absolute;
  bottom: 400px;

  z-index: 1;
}

.p-takeout-hitoriosechi__cloud02--01 {
  left: -110px;
}

.p-takeout-hitoriosechi__cloud03 {
  position: absolute;
  bottom: 120px;
  z-index: 1;
}

.p-takeout-hitoriosechi__cloud03--01 {
  right: -110px;
}

@media (min-width: 1024px) {
  .p-takeout-hitoriosechi__cloud {
    top: -50px;
  }
}


@media (max-width: 1023px) {
  .p-takeout-hitoriosechi__cloud--01 {
    right: 0;
  }

  .p-takeout-hitoriosechi__cloud--02 {
    left: 0;
  }

  .p-takeout-hitoriosechi__cloud-img {
    width: calc( 250 / 850 * 100vw );
  }

  .p-takeout-hitoriosechi__cloud02 {
    display: none;
  }

  .p-takeout-hitoriosechi__cloud03 {
    display: none;
  }
}

@media (max-width: 767px) {
  .p-takeout-hitoriosechi__cloud {
    top: 0;
  }

  .p-takeout-hitoriosechi__cloud-img {
    width: calc( 150 / 375 * 100vw );
  }
}

.p-takeout-hitorioseshi__wrap-top {
  width: 1280px;
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  /* overflow: hidden; */
}

.p-takeout-hitorioseshi__wrap {
  max-width: 1240px;
  width: 100%;
  padding: 0 20px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.p-takeout-hitorioseshi-head {
  margin-bottom: 1rem;
}

.p-takeout-hitorioseshi-head__title {

}

.p-takeout-hitorioseshi-head__title-sub {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-size: 1.8rem;
  line-height: 1.2;
  display: block;
  text-align: center;
  width: 170px;
  max-width: 100%;
  margin: 0 auto 0.5rem;
}

.p-takeout-hitorioseshi-head__title-main {
  font-size: 6.0rem;
  text-align: center;
  line-height: 1.2;
  font-family: Hannari;
  display: block;
}

@media (max-width: 1023px) {
  .p-takeout-hitorioseshi-head__title-main {
    font-size: 5.0rem;
  }
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-head__title-main {
    font-size: 4.0rem;
  }
}

.p-takeout-hitorioseshi__text {
  text-align: center;
  line-height: 2.25;
  font-size: 1.6rem;
  margin-bottom: 5rem;
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi__text {
    text-align: left;
    margin-bottom: 2.5rem;
  }
}

.p-takeout-hitorioseshi__grid {
  display: flex;
  justify-content: space-between;
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi__grid {
    flex-wrap: wrap;
  }
}

.p-takeout-hitorioseshi-left {
  width: 50%;
  padding-right: 2rem;
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-left {
    width: 100%;
    padding-right: 0;
    margin-bottom: 3rem;
  }
}

.p-takeout-hitorioseshi-left__grid {
  display: flex;
  justify-content: space-between;
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-left__grid {
    flex-wrap: wrap;
  }
  .p-takeout-hitorioseshi-left__data {
    width: 100%;
  }
}


.p-takeout-hitorioseshi-left__data-title {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  width: 8rem;
  height: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #000;
  margin-top: 5rem;
  font-feature-settings: "palt" 1;
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-left__data-title {
    margin-top: 2.5rem;
  }
}

.p-takeout-hitorioseshi-left__data-text {
  font-family: Hannari;
  font-size: 1.4rem;
  line-height: 1.2;
  font-feature-settings: "palt" 1;

}

.p-takeout-hitorioseshi-left__data-text--fs36 {
  font-size: 3.6rem;
}

.u-fs24 {
  font-size: 2.4rem;
}

@media (min-width: 768px) {
  .p-takeout-hitorioseshi-left__imgbox {
    position: relative;
    left: 23px;
    top: -12px;
  }
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-left__imgbox {
    width: 100%;
  }

  .p-takeout-hitorioseshi-left__imgbox-img {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-takeout-hitorioseshi-right {
  width: 50%;
  padding-left: 2rem;
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-right {
    width: 100%;
    padding-left: 0;
  }
}

.p-takeout-hitorioseshi-right__grid {
  display: flex;
  justify-content: space-between;
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-right__grid {
    flex-wrap: wrap;
  }
}

.p-takeout-hitorioseshi-right__grid-left {
  margin-top: 4.3rem;
  width: 55%;
  /* padding-right: 1rem; */
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-right__grid-left {
    width: 100%;
    margin-top: 2rem;
  }
}

.p-takeout-hitorioseshi-right__data {
  margin-bottom: 0.5rem;
}

@media (min-width: 768px) {
  .p-takeout-hitorioseshi-right__data {
    display: flex;
    align-items: center;
    /* margin-bottom: 2rem; */
  }
}

.p-takeout-hitorioseshi-right__data-title {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  width: 8rem;
  height: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #000;
  font-feature-settings: "palt" 1;

  /* margin-top: 5rem; */
}

.u-fs36 {
  font-size: 3.6rem;
}

.p-takeout-hitorioseshi-right__data-text--fs36 {
  font-size: 3.6rem;
}

.p-takeout-hitorioseshi-right__data-text {
  margin-left: 1rem;
  font-size: 1.4rem;
  font-feature-settings: "palt" 1;
  font-family: Hannari;
  line-height: 1.2;
}

.p-takeout-hitorioseshi-right__imgbox {
  width: 45%;
  position: relative;
  left: 20px;
  margin-top: 1rem;
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-right__imgbox {
    width: 100%;
    position: static;
    left: 0;
  }

  .p-takeout-hitorioseshi-right__imgbox-img {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-takeout-hitorioseshi-menu {
  background-color: rgba(255,255,255,0.7);
  width: 900px;
  max-width: calc(100% - 4rem);
  margin: 0 auto;
  padding: 4rem 2rem;
  position: relative;
  z-index: 3;
}

.p-takeout-hitorioseshi-menu__wrap {
  width: 710px;
  max-width: 100%;
  margin: 0 auto;
  display: flex;
  flex-flow: row-reverse;
}

.u-mb60 {
  margin-bottom: 6rem;
}

@media (max-width: 767px) {
  .u-mb35--break-md {
    margin-bottom: 3.5rem;
  }
}


@media (max-width: 767px) {
  .p-takeout-hitorioseshi-menu__wrap {
    width: 100%;
    flex-direction: column;
    /* align-items: center; */
  }
}

.p-takeout-hitorioseshi-menu__title {
  flex: 0 0 auto;
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-menu__title {
    margin-bottom: 3rem;
  }
  .p-takeout-hitorioseshi-menu__title-img {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 450px) {
  .p-takeout-hitorioseshi-menu__title-img {
    width: calc(120/ 350 * 100vw);
  }
}

.p-takeout-hitorioseshi-menu__list {
  display: flex;
  flex-flow: row-reverse;
  list-style-type: none;
  padding: 0;
  font-size: 1.6rem;
  flex: 1 0 auto;
  margin-right: 4rem;
}

@media (max-width: 1023px) {
  .p-takeout-hitorioseshi-menu__list {
    margin-right: 2rem;
  }
}

@media (max-width: 767px) {
  .p-takeout-hitorioseshi-menu__list {
    flex-flow: row;
    flex-wrap: wrap;
    margin-right: auto;
    margin-left: auto;
    max-width: 315px;
  }
}

.p-takeout-hitorioseshi-menu__item {
  width: 50%;
}

@media (min-width: 768px) {
  .p-takeout-hitorioseshi-menu__item {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    padding-left: 0.5rem;
    width: auto;
  }
}

.p-takeout-hitorioseshi-menu__mark {
  color: #c99500;
}

/* 5人用おせち */
.p-takeout-goninosechi {
  background-color: #101010;
  padding-top: 10rem;
  padding-bottom: 12rem;
  position: relative;
  z-index: 2;
  overflow: hidden;

}

@media (max-width: 767px) {
  .p-takeout-goninosechi {
    padding-top: 6rem;
    padding-bottom: 8rem;
  }
}

.p-takeout-goninosechi::before {
  /* content: '';
  background: url(../img/osechi/bg-osechi02@2x.png) center center no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2; */
}

.p-takeout-goninosechi::after {
  content: '';
  background: url(../img/osechi/bg-osechi03.png) center bottom no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2) {
  .p-takeout-goninosechi::after {
    background: url(../img/osechi/bg-osechi03@2x.png) center bottom no-repeat;
  }
}

@media (max-width: 1023px) {
  .p-takeout-goninosechi::after {
    background-size: contain;
    /* background-repeat: repeat; */
  }
}



.p-takeout-goninosechi__redbg {
  width: 100%;
  height: 823px;
  /* max-height: 823px; */
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
}

.p-takeout-goninosechi__redbg-img {
  width: 100%;
  height: 100%;
  /* height: calc( 853 / 1250 * 100vw ); */
}

@media (max-width: 1023px) {
  .p-takeout-goninosechi__redbg {
    height: auto;
  }

  .p-takeout-goninosechi__redbg-img {
    height: auto;
  }
}

.p-takeout-goninosechi__flowerbg {
  width: 100%;
  /* height: 100%; */
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.p-takeout-goninosechi__flowerbg-img {
  width: 100%;
}

.p-takeout-goninosechi__wrap {
  max-width: 1040px;
  width: 100%;
  padding: 0 2rem;
  margin: 0 auto;
  position: relative;
  z-index: 3;
}

.p-takeout-goninosechi-head {
  margin-bottom: 1rem;
}

.p-takeout-goninosechi-head__title {

}

.p-takeout-goninosechi-head__title-sub {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-size: 1.8rem;
  line-height: 1.2;
  display: block;
  text-align: center;
  width: 170px;
  max-width: 100%;
  margin: 0 auto 0.5rem;
  color: #fff;
}

.p-takeout-goninosechi-head__title-main {
  font-size: 6.0rem;
  text-align: center;
  line-height: 1.2;
  font-family: Hannari;
  display: block;
  color: #fff;
}

@media (max-width: 1023px) {
  .p-takeout-goninosechi-head__title-main {
    font-size: 5.0rem;
  }
}

@media (max-width: 767px) {
  .p-takeout-goninosechi-head__title-main {
    font-size: 4.0rem;
  }
}

.p-takeout-goninosechi__text {
  text-align: center;
  line-height: 2.25;
  font-size: 1.6rem;
  margin-bottom: 5.5rem;
  color: #fff;
}

@media (max-width: 767px) {
  .p-takeout-goninosechi__text {
    text-align: left;
    margin-bottom: 2.5rem;
  }
}

.p-takeout-goninosechi__data {
  margin-bottom: 3.5rem;
  color: #fff;
}

@media (min-width: 768px) {
  .p-takeout-goninosechi__data {
    display: flex;
    align-items: center;
    margin-bottom: 7rem;
    justify-content: center;
  }
}

.p-takeout-goninosechi__data-title {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  width: 8rem;
  height: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #fff;
  font-feature-settings: "palt" 1;

  /* margin-top: 5rem; */
}

.p-takeout-goninosechi__data-text {
  margin-left: 1rem;
  font-size: 1.4rem;
  font-feature-settings: "palt" 1;
  font-family: Hannari;
  line-height: 1.2;
}

.u-mb35 {
  margin-bottom: 3.5rem;
}

.p-block-imgbox {
  /* margin-bottom: 3.5rem; */
}

.p-takeout-goninosechi-menu__wrap {
  width: 560px;
  max-width: 100%;
  margin: 0 auto;
  display: flex;
  flex-flow: row-reverse;
}

@media (max-width: 767px) {
  .p-takeout-goninosechi-menu__wrap {
    width: 100%;
    flex-direction: column;
    /* align-items: center; */
  }
}

.p-takeout-goninosechi-menu__title {
  flex: 0 0 auto;
}

@media (max-width: 767px) {
  .p-takeout-goninosechi-menu__title {
    margin-bottom: 3rem;
  }
  .p-takeout-goninosechi-menu__title-img {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 450px) {
  .p-takeout-goninosechi-menu__title-img {
    width: calc( 120 / 375 * 100vw );
  }
}

.p-takeout-goninosechi-menu__list {
  display: flex;
  flex-flow: row-reverse;
  list-style-type: none;
  padding: 0;
  font-size: 1.6rem;
  flex: 1 0 auto;
  margin-right: 4rem;
}

@media (max-width: 1023px) {
  .p-takeout-goninosechi-menu__list {
    margin-right: 2rem;
  }
}

@media (max-width: 767px) {
  .p-takeout-goninosechi-menu__list {
    flex-flow: row;
    flex-wrap: wrap;
    margin-right: auto;
    margin-left: auto;
    max-width: 370px;
  }
}

.p-takeout-goninosechi-menu__item {
  color: #fff;
  width: 50%;
}

@media (min-width: 768px) {
  .p-takeout-goninosechi-menu__item {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    padding-left: 0.5rem;
    width: auto;
  }
}


/* その他CSS */
.u-ml_6 {
  margin-left: -0.6rem;
}

.u-b {
  display: block;
}

.u-overflow {
  overflow: hidden;
}

.u-mt5 {
  margin-top: 0.5rem;
}

.u-ml10 {
  margin-left: 1rem;
}

@media (min-width: 768px) {
  .M\:u-pt-60{
    padding-top: 60px;
  }
}

/* 202509おせちページアプデ分 */
.u-ib{
  display: inline-block;
}

/* margin-bottom */
.u-mb-0 { margin-bottom: 0px; }
.u-mb-5 { margin-bottom: 5px; }
.u-mb-10 { margin-bottom: 10px; }
.u-mb-15 { margin-bottom: 15px; }
.u-mb-20 { margin-bottom: 20px; }
.u-mb-25 { margin-bottom: 25px; }
.u-mb-30 { margin-bottom: 30px; }
.u-mb-35 { margin-bottom: 35px; }
.u-mb-40 { margin-bottom: 40px; }
.u-mb-45 { margin-bottom: 45px; }
.u-mb-50 { margin-bottom: 50px; }
.u-mb-55 { margin-bottom: 55px; }
.u-mb-60 { margin-bottom: 60px; }
.u-mb-65 { margin-bottom: 65px; }
.u-mb-70 { margin-bottom: 70px; }
.u-mb-75 { margin-bottom: 75px; }
.u-mb-80 { margin-bottom: 80px; }
.u-mb-85 { margin-bottom: 85px; }
.u-mb-90 { margin-bottom: 90px; }
.u-mb-95 { margin-bottom: 95px; }
.u-mb-100 { margin-bottom: 100px; }

/* margin-top */
.u-mt-0 { margin-top: 0px; }
.u-mt-5 { margin-top: 5px; }
.u-mt-10 { margin-top: 10px; }
.u-mt-15 { margin-top: 15px; }
.u-mt-20 { margin-top: 20px; }
.u-mt-25 { margin-top: 25px; }
.u-mt-30 { margin-top: 30px; }
.u-mt-35 { margin-top: 35px; }
.u-mt-40 { margin-top: 40px; }
.u-mt-45 { margin-top: 45px; }
.u-mt-50 { margin-top: 50px; }
.u-mt-55 { margin-top: 55px; }
.u-mt-60 { margin-top: 60px; }
.u-mt-65 { margin-top: 65px; }
.u-mt-70 { margin-top: 70px; }
.u-mt-75 { margin-top: 75px; }
.u-mt-80 { margin-top: 80px; }
.u-mt-85 { margin-top: 85px; }
.u-mt-90 { margin-top: 90px; }
.u-mt-95 { margin-top: 95px; }
.u-mt-100 { margin-top: 100px; }

/* margin-right */
.u-mr-0 { margin-right: 0px; }
.u-mr-5 { margin-right: 5px; }
.u-mr-10 { margin-right: 10px; }
.u-mr-15 { margin-right: 15px; }
.u-mr-20 { margin-right: 20px; }
.u-mr-25 { margin-right: 25px; }
.u-mr-30 { margin-right: 30px; }
.u-mr-35 { margin-right: 35px; }
.u-mr-40 { margin-right: 40px; }
.u-mr-45 { margin-right: 45px; }
.u-mr-50 { margin-right: 50px; }
.u-mr-55 { margin-right: 55px; }
.u-mr-60 { margin-right: 60px; }
.u-mr-65 { margin-right: 65px; }
.u-mr-70 { margin-right: 70px; }
.u-mr-75 { margin-right: 75px; }
.u-mr-80 { margin-right: 80px; }
.u-mr-85 { margin-right: 85px; }
.u-mr-90 { margin-right: 90px; }
.u-mr-95 { margin-right: 95px; }
.u-mr-100 { margin-right: 100px; }

/* margin-left */
.u-ml-0 { margin-left: 0px; }
.u-ml-5 { margin-left: 5px; }
.u-ml-10 { margin-left: 10px; }
.u-ml-15 { margin-left: 15px; }
.u-ml-20 { margin-left: 20px; }
.u-ml-25 { margin-left: 25px; }
.u-ml-30 { margin-left: 30px; }
.u-ml-35 { margin-left: 35px; }
.u-ml-40 { margin-left: 40px; }
.u-ml-45 { margin-left: 45px; }
.u-ml-50 { margin-left: 50px; }
.u-ml-55 { margin-left: 55px; }
.u-ml-60 { margin-left: 60px; }
.u-ml-65 { margin-left: 65px; }
.u-ml-70 { margin-left: 70px; }
.u-ml-75 { margin-left: 75px; }
.u-ml-80 { margin-left: 80px; }
.u-ml-85 { margin-left: 85px; }
.u-ml-90 { margin-left: 90px; }
.u-ml-95 { margin-left: 95px; }
.u-ml-100 { margin-left: 100px; }

/* padding-top */
.u-pt-0 { padding-top: 0px; }
.u-pt-5 { padding-top: 5px; }
.u-pt-10 { padding-top: 10px; }
.u-pt-15 { padding-top: 15px; }
.u-pt-20 { padding-top: 20px; }
.u-pt-25 { padding-top: 25px; }
.u-pt-30 { padding-top: 30px; }
.u-pt-35 { padding-top: 35px; }
.u-pt-40 { padding-top: 40px; }
.u-pt-45 { padding-top: 45px; }
.u-pt-50 { padding-top: 50px; }
.u-pt-55 { padding-top: 55px; }
.u-pt-60 { padding-top: 60px; }
.u-pt-65 { padding-top: 65px; }
.u-pt-70 { padding-top: 70px; }
.u-pt-75 { padding-top: 75px; }
.u-pt-80 { padding-top: 80px; }
.u-pt-85 { padding-top: 85px; }
.u-pt-90 { padding-top: 90px; }
.u-pt-95 { padding-top: 95px; }
.u-pt-100 { padding-top: 100px; }

/* padding-right */
.u-pr-0 { padding-right: 0px; }
.u-pr-5 { padding-right: 5px; }
.u-pr-10 { padding-right: 10px; }
.u-pr-15 { padding-right: 15px; }
.u-pr-20 { padding-right: 20px; }
.u-pr-25 { padding-right: 25px; }
.u-pr-30 { padding-right: 30px; }
.u-pr-35 { padding-right: 35px; }
.u-pr-40 { padding-right: 40px; }
.u-pr-45 { padding-right: 45px; }
.u-pr-50 { padding-right: 50px; }
.u-pr-55 { padding-right: 55px; }
.u-pr-60 { padding-right: 60px; }
.u-pr-65 { padding-right: 65px; }
.u-pr-70 { padding-right: 70px; }
.u-pr-75 { padding-right: 75px; }
.u-pr-80 { padding-right: 80px; }
.u-pr-85 { padding-right: 85px; }
.u-pr-90 { padding-right: 90px; }
.u-pr-95 { padding-right: 95px; }
.u-pr-100 { padding-right: 100px; }

/* padding-bottom */
.u-pb-0 { padding-bottom: 0px; }
.u-pb-5 { padding-bottom: 5px; }
.u-pb-10 { padding-bottom: 10px; }
.u-pb-15 { padding-bottom: 15px; }
.u-pb-20 { padding-bottom: 20px; }
.u-pb-25 { padding-bottom: 25px; }
.u-pb-30 { padding-bottom: 30px; }
.u-pb-35 { padding-bottom: 35px; }
.u-pb-40 { padding-bottom: 40px; }
.u-pb-45 { padding-bottom: 45px; }
.u-pb-50 { padding-bottom: 50px; }
.u-pb-55 { padding-bottom: 55px; }
.u-pb-60 { padding-bottom: 60px; }
.u-pb-65 { padding-bottom: 65px; }
.u-pb-70 { padding-bottom: 70px; }
.u-pb-75 { padding-bottom: 75px; }
.u-pb-80 { padding-bottom: 80px; }
.u-pb-85 { padding-bottom: 85px; }
.u-pb-90 { padding-bottom: 90px; }
.u-pb-95 { padding-bottom: 95px; }
.u-pb-100 { padding-bottom: 100px; }

/* padding-left */
.u-pl-0 { padding-left: 0px; }
.u-pl-5 { padding-left: 5px; }
.u-pl-10 { padding-left: 10px; }
.u-pl-15 { padding-left: 15px; }
.u-pl-20 { padding-left: 20px; }
.u-pl-25 { padding-left: 25px; }
.u-pl-30 { padding-left: 30px; }
.u-pl-35 { padding-left: 35px; }
.u-pl-40 { padding-left: 40px; }
.u-pl-45 { padding-left: 45px; }
.u-pl-50 { padding-left: 50px; }
.u-pl-55 { padding-left: 55px; }
.u-pl-60 { padding-left: 60px; }
.u-pl-65 { padding-left: 65px; }
.u-pl-70 { padding-left: 70px; }
.u-pl-75 { padding-left: 75px; }
.u-pl-80 { padding-left: 80px; }
.u-pl-85 { padding-left: 85px; }
.u-pl-90 { padding-left: 90px; }
.u-pl-95 { padding-left: 95px; }
.u-pl-100 { padding-left: 100px; }

.u-mt-auto{margin-top: auto;}
.u-mb-auto{margin-bottom: auto;}
.u-ml-auto{margin-left: auto;}
.u-mr-auto{margin-right: auto;}

.u-size-10 {font-size: 10px;}
.u-size-12 {font-size: 12px;}
.u-size-14 {font-size: 14px;}
.u-size-16 {font-size: 16px;}
.u-size-18 {font-size: 18px;}
.u-size-20 {font-size: 20px;}
.u-size-22 {font-size: 22px;}
.u-size-24 {font-size: 24px;}
.u-size-26 {font-size: 26px;}
.u-size-28 {font-size: 28px;}
.u-size-30 {font-size: 30px;}
.u-size-32 {font-size: 32px;}
.u-size-34 {font-size: 34px;}
.u-size-36 {font-size: 36px;}

.u-w-150 { width: 150px; }
.u-w-160 { width: 160px; }
.u-w-170 { width: 170px; }
.u-w-180 { width: 180px; }
.u-w-190 { width: 190px; }
.u-w-200 { width: 200px; }
.u-w-210 { width: 210px; }
.u-w-220 { width: 220px; }
.u-w-230 { width: 230px; }
.u-w-240 { width: 240px; }
.u-w-250 { width: 250px; }
.u-w-260 { width: 260px; }
.u-w-270 { width: 270px; }
.u-w-280 { width: 280px; }
.u-w-290 { width: 290px; }
.u-w-300 { width: 300px; }
.u-w-310 { width: 310px; }
.u-w-320 { width: 320px; }
.u-w-330 { width: 330px; }
.u-w-340 { width: 340px; }
.u-w-350 { width: 350px; }
.u-w-360 { width: 360px; }
.u-w-370 { width: 370px; }
.u-w-380 { width: 380px; }
.u-w-390 { width: 390px; }
.u-w-400 { width: 400px; }
.u-w-410 { width: 410px; }
.u-w-420 { width: 420px; }
.u-w-430 { width: 430px; }
.u-w-440 { width: 440px; }
.u-w-450 { width: 450px; }
.u-w-460 { width: 460px; }
.u-w-470 { width: 470px; }
.u-w-480 { width: 480px; }
.u-w-490 { width: 490px; }
.u-w-500 { width: 500px; }

.u-w-740 { width: 740px; }

.u-items-start {align-items: flex-start;}
.u-items-center {align-items: center;}
.u-items-end {align-items: flex-end;}
.u-items-baseline {align-items: baseline;}

.u-justify-start {justify-content: flex-start;}
.u-justify-center {justify-content: center;}
.u-justify-end {justify-content: flex-end;}
.u-justify-between {justify-content: space-between;}
.u-justify-around {justify-content: space-around;}

.u-100 {font-weight: 100;}
.u-200 {font-weight: 200;}
.u-300 {font-weight: 300;}
.u-400 {font-weight: 400;}
.u-500 {font-weight: 500;}
.u-600 {font-weight: 600;}
.u-700 {font-weight: 700;}
.u-800 {font-weight: 800;}
.u-900 {font-weight: 900;}


.u-w-full{
  width: 100%;
}

.u-w-fit{
  width:fit-content;
}

.u-mw-full{
  max-width: 100%;
}

.u-text-center{
  text-align: center;
}

.u-bg-ffd362{
  background-color: #ffd362;
}

.u-bg-white{
  background-color: #ffffff;
}

.u-white{
  color: #ffffff;
}

.u-a01d1d{
  color: #a01d1d;
}

.u-d1670a{
  color: #d1670a;
}

.u-wrap{
  flex-wrap: wrap;
}

.u-flex00auto{
  flex: 0 0 auto;
}

.u-gap-10{
  gap: 10px;
}

.u-gap-40{
  gap: 40px;
}

.u-list-disc{
  list-style: disc;
}

.c-link-opacity{
  opacity: 1;
  transition: opacity .3s ease-in-out;
}

.c-link-opacity:hover{
  opacity: 0.7;
  text-decoration: none;
}

.c-border-y{
  border-top: solid 1px #352828;
  border-bottom: solid 1px #352828;
}

.c-border-bottom{
  border-bottom: solid 1px #cccccc;
}

.c-border-bottom-white{
  border-bottom: solid 1px #ffffff;
}

.c-container{
  width: 1170px;
  max-width: calc(100% - 40px);
  margin-right: auto;
  margin-left: auto;
}

.c-container--just{
  width: 1000px;
}

.c-banner-border{
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 20px;
  padding-left: 20px;

  display: flex;
  justify-content: center;
  align-items: center;
  color: #a01d1d;
  border: solid 1px currentColor;
}

.c-banner-border__label{
  text-align: center;
  font-weight: 600;
  font-size: 20px;
  line-height: 1.5;
}

.c-banner-border__small{
  font-size: calc(16 / 24 * 1em);
}

@media (min-width:1024px) {
  .c-banner-border{
    padding-right: 120px;
    padding-left: 120px;
  }

  .c-banner-border__label{
    font-size: 24px;
  }
}

.c-card-reservation{
  border: solid 1px #f7d885;
  margin-right: auto;
  margin-left: auto;
  width: 720px;
  max-width: 100%;
}

.c-card-reservation__heading{
  background: #f7d885;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 10px;
  padding-bottom: 10px;

  text-align: center;
  font-weight: 400;
  line-height: 1.2;
  font-size: min(30px , calc(24 / 320 * 100vw));
}

.c-card-reservation__main{
  padding-top: 30px;
  padding-bottom: 30px;
  padding-left: 20px;
  padding-right: 20px;
  background-color: #ffffff;
}

.c-card-reservation__tel{
  font-weight: 400;
  line-height: 1;
  font-size: min(30px, calc(24 / 320 * 100vw));
  color: #333333;
}

.c-card-reservation__tel-num{
  font-size: calc(64 / 38 * 1em);
}

@media (min-width:1024px) {
  .c-card-reservation__heading{
    font-size: 36px;
  }

  .c-card-reservation__main{
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 65px;
    padding-right: 65px;
  }

  .c-card-reservation__tel{
    font-size: 38px;
  }
}

.c-heading-line{
  padding-left: 20px;
  padding-right: 20px;

  line-height: 1.5;
  font-weight: 400;
  font-size: 24px;
  border-top: solid 1px #352828;
  border-bottom: solid 1px #352828;
}

@media (min-width:1024px) {
  .c-heading-line{
    padding-left: 40px;
    padding-right: 40px;
    font-size: 36px;
  }
}

.c-card-row{
  display: flex;
  border: solid 1px #d1670a;
  width: fit-content;
}

.c-card-row__heading{
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  background-color: #d1670a;
  color: #ffffff;
  padding-left: 10px;
  padding-right: 10px;
  font-size: 18px;
  font-weight: 400;
}

.c-card-row__main{
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: 20px;
  padding-right: 10px;
  font-weight: 700;
}

.c-card-row--a01d1d{
  border: solid 1px #a01d1d;
}

.c-card-row--a01d1d > .c-card-row__heading{
  background-color: #a01d1d;
}

.c-tag{
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff ;
  background-color: #a01d1d;
  min-width: 70px;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 3px;
  padding-bottom: 3px;
}

.c-tag--004985{
  background-color: #004985;
}

.c-tag-00a0e9{
  background-color: #00a0e9;
}

.c-heading-square{
  width: 100%;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.5;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 5px;
  padding-bottom: 5px;
  background-color: #f7d885;
}

.c-heading-square--reverse{
  color: #f7d885;
  background-color: #393937;
}

.c-heading-osechi{
  font-size: 48px;
  font-weight: 700;
  line-height: 1.2;
  display: flex;
  justify-content: center;
  align-items: center;
}

.c-heading-osechi__jump{
  font-size: calc(60 / 48 * 1em);
}

.c-menu-osechi{
  padding-top: 20px;
  padding-bottom: 30px;
  padding-left: 20px;
  padding-right: 20px;
  background-color: rgba(255, 255, 255, 0.7);
}

.c-menu-osechi__lists{
  --gap-x:20px;
  --gap-y:3px;

  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-top: calc(var(--gap-y, 0px) * -1);
  margin-bottom: calc(var(--gap-y, 0px) * -1);
  margin-left: calc(var(--gap-x, 0px) * -1);
  margin-right: calc(var(--gap-x, 0px) * -1);
}

.c-menu-osechi__item{
  --gap-x:20px;
  --gap-y:3px;

  width: 50%;
  font-size: 16px;
  font-weight: 400;

  display: flex;
  flex-direction: column;
  flex: 0 1 auto;
  min-height: 1px;
  min-width: 0;
  max-width: 100%;
  padding-top: var(--gap-y, 0px);
  padding-bottom: var(--gap-y, 0px);
  padding-left: var(--gap-x, 0px);
  padding-right: var(--gap-x, 0px);
}

@media (min-width:1024px) {
  .c-menu-osechi{
    padding-top: 30px;
    padding-bottom: 40px;
    padding-left: 35px;
    padding-right: 35px;
  }

  .c-menu-osechi__lists{
    height: 360px;
    flex-direction: column;
  }

  .c-menu-osechi__item{
    width: 25%;
  }
}

.c-menu-isoshigi{
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 10px;
  padding-right: 10px;
  background-color: rgba(255, 255, 255, 0.7);

  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 20px;
}

.c-menu-isoshigi__lists{
  --gap-x:5px;
  --gap-y:3px;

  width: 100%;

  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-top: calc(var(--gap-y, 0px) * -1);
  margin-bottom: calc(var(--gap-y, 0px) * -1);
  margin-left: calc(var(--gap-x, 0px) * -1);
  margin-right: calc(var(--gap-x, 0px) * -1);
}

.c-menu-isoshigi__item{
  --gap-x:5px;
  --gap-y:3px;

  width: 50%;
  font-size: 16px;
  font-weight: 400;

  display: flex;
  flex-direction: column;
  flex: 0 1 auto;
  min-height: 1px;
  min-width: 0;
  max-width: 100%;
  padding-top: var(--gap-y, 0px);
  padding-bottom: var(--gap-y, 0px);
  padding-left: var(--gap-x, 0px);
  padding-right: var(--gap-x, 0px);
}

@media (min-width:1024px) {
  .c-menu-isoshigi{
    flex-direction: row;
    padding-left: 20px;
    padding-right: 20px;
    gap: 30px;
  }

  .c-menu-isoshigi__lists{
    --gap-x:20px;

    flex-direction: column;
    height: 105px;
  }

  .c-menu-isoshigi__lists--high{
    height: 175px;
  }

  .c-menu-isoshigi__item{
    --gap-x:20px;
    width: calc(100% / 3);
  }
}

.p-takeout-spring{
  position: relative !important;
  z-index: 0 !important;
  background-color: #fde1e1 !important;
  padding-top: 10rem !important;
  padding-bottom: 12rem !important;
  color: #333333;
  margin-bottom: 0;
}

.p-takeout-spring__sakura{
  position: absolute;
  top: 0;
  right: 0;
  z-index: 5;
  max-width: calc(100% - 60px);
}

.c-heading-plain{
  font-size: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 400;
  line-height: 1.5;
}

@media (min-width:1024px) {
  .c-heading-plain{
    font-size: 60px;
  }
}

.c-thum{
  position: relative;
  z-index: 0;
}

.c-thum__img{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 100%;
  width: 100%;
  object-fit: cover;
  z-index: -10;
}

/* add.cssからのサルベージ分 */
.p-takeout-goninosechi__flex {
  display: flex;
  flex-direction: column;
  align-items: center;
  column-gap: 5rem;
}
@media only screen and (min-width: 768px) {
  .p-takeout-goninosechi__flex {
    flex-direction: row;
    column-gap: 5rem;
  }
}

.p-takeout-goninosechi__data--2025 {
  margin-top: 2rem !important;
  margin-bottom: 0 !important;
  justify-content: start !important;
}
@media only screen and (min-width: 768px) {
  .p-takeout-goninosechi__data--2025 {
    margin-top: -1rem !important;
    margin-bottom: 0 !important;
    justify-content: start !important;
  }
}

.p-takeout-goninosechi__service {
  margin-top: 1rem;
  font-size: 2.6rem;
  color: #ffd362;
  letter-spacing: 0.04em;
}

@media only screen and (max-width: 767px) {
  .p-takeout-goninosechi__br {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .p-takeout-goninosechi__zei {
    padding-left: 7.5rem;
  }
}

@media only screen and (min-width: 1024px) {
  .p-takeout-goninosechi__br {
    display: none;
  }

  .p-takeout-goninosechi__zei {
    padding-left: 0;
  }
}

.p-takeout-hitorioseshi-menu__item {
  text-indent: -1.6rem;
  padding-left: 1.6rem;
}

.p-takeout-goninosechi-menu__item {
  text-indent: -1.6rem;
  padding-left: 1.6rem;
}

@media only screen and (min-width: 768px) {
  .p-takeout-hitorioseshi-menu__list--2025 {
    padding-top: 1rem !important;
    width: 670px !important;
  }
}

@media only screen and (min-width: 1024px) {
  .p-takeout-hitorioseshi-menu__list--2025 {
    padding-top: 0 !important;
    width: 100% I !important;
  }
}

@media only screen and (min-width: 768px) {
  .p-takeout-hitorioseshi-menu_scroll {
    overflow-x: scroll;
  }
}

@media only screen and (min-width: 1024px) {
  .p-takeout-hitorioseshi-menu_scroll {
    overflow-x: visible;
  }
}

.p-takeout-goninosechi-menu__name {
  margin-right: 4.5rem;
  margin-left: -1rem;
  font-size: 2.6rem;
  color: #ffd362;
  line-height: 0.95;
}
@media only screen and (max-width: 767px) {
  .p-takeout-goninosechi-menu__name {
    margin-bottom: 2rem;
    margin-right: 0;
    margin-left: 0;
  }
}

@media only screen and (min-width: 768px) {
  .p-takeout-goninosechi-menu--bottom {
    padding-bottom: 6rem;
  }
}

.u-shrink-0 {
  flex-shrink: 0;
}

.p-takeout-osechi {
  display: flex;
  justify-content: center;
  column-gap: 4rem;
  flex-direction: column;
  margin-bottom: 5.5rem;
}

@media only screen and (min-width: 768px) {
  .p-takeout-osechi {
    flex-direction: row;
    margin-bottom: 7.5rem;
  }
}

@media only screen and (min-width: 1024px) {
  .p-takeout-osechi {
    margin-left: 1.5rem;
    margin-bottom: 9.8rem;
  }
}

.p-takeout-osechi__title {
  text-align: center;
  font-family: Hannari;
  font-size: 4.8rem;
  position: relative;
  display: block;
}

.p-takeout-osechi__isoshigi {
  width: 21.5rem;
  height: auto;
}

.p-takeout-osechi__hakushiki {
  width: 22.8rem;
  height: auto;
}

.p-takeout-osechi__isoshigi-sp {
  width: 10.75rem;
  height: auto;
}

.p-takeout-osechi__hakushiki-sp {
  width: 11.4rem;
  height: auto;
}

@media only screen and (max-width: 767px) {
  .p-takeout-osechi__isoshigi {
    display: none;
  }
  .p-takeout-osechi__hakushiki {
    display: none;
  }
}

.p-takeout-osechi__spflex {
  display: flex;
  justify-content: center;
  column-gap: 4rem;
}

@media only screen and (min-width: 768px) {
  .p-takeout-osechi__spflex {
    display: none;
  }
}

.sp-bnr-osechi {
  margin-top: 0.75rem;
  margin-left: 1rem;
}

@media only screen and (min-width: 569px) {
  .sp-bnr-osechi {
    margin-top: 0.25rem;
  }
}

@media only screen and (min-width: 769px) {
  .sp-bnr-osechi {
    display: none;
  }
}

.p-takeout__nav--border-less {
  border: hidden;
}

.p-takeout__nav__new {
  flex-wrap: wrap;
  display: flex;
  justify-content: center;
  width: 100%;
}

.p-takeout__nav__new a {
  margin: 0 20px;
}

.p-takeout__nav a {
  display: block;
  padding-top: 10px;
  padding-bottom: 10px;
}

.p-takeout__nav__inner {
  display: flex;
  justify-content: space-between;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  font-size: 18px;
  font-size: 1.8rem;
  font-family: Hannari;
  padding: 12px 15px;
}
