@charset "UTF-8";
/* !_common.scss */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
/* !_breakpoint.scss */
:root {
  --bp-pcCnt: 1080px;
  --bp-pcMax: 1600px;
  --bp-spMax: 750px;
}

:root {
  --min-width: 320;
  --cmp-width: 750;
  --max-width: 750;
}
@media (min-width: 751px) {
  :root {
    --min-width: 751;
    --cmp-width: calc(1080 + 0 * 2);
    --max-width: var(--cmp-width);
  }
}

:root {
  --1vw: 1vw;
  --50vw: 50vw;
  --100vw: 100vw;
}

*, *::before, *::after {
  box-sizing: border-box;
}

html {
  padding-block-end: env(safe-area-inset-bottom);
  font-size: clamp(var(--min-width) / var(--cmp-width) * 16rem / 16, 16 / var(--cmp-width) * var(--100vw), 16rem / 16);
}

body {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
}
@media (min-width: 751px) {
  body {
    margin-inline: auto;
  }
}

img, picture, video {
  display: block;
  width: 100%;
  max-width: fit-content;
  height: auto;
}

.dsp_ib {
  display: inline-block;
  font: inherit;
}

@media (min-width: 750px) and (max-width: 750px), not all and (min-width: 751px) {
  .dsp_pc {
    display: none !important;
  }
}

@media (min-width: 751px) {
  .dsp_sp {
    display: none !important;
  }
}

.video-wrap {
  width: calc(480rem / 16);
  margin-inline: auto;
  margin-block-start: calc(30rem / 16);
}
.video-wrap > iframe {
  display: block;
  aspect-ratio: 16/9;
}

/* !_style.scss */
header {
  display: flex;
  height: calc(56rem / 16);
  justify-content: space-between;
  align-items: center;
  padding-inline: calc(20rem / 16);
}
header .header_logo {
  width: calc(248rem / 16);
  margin-inline-end: auto;
}
header .twitterShare {
  width: calc(88rem / 16);
  height: calc(20rem / 16);
  margin-inline-end: calc(15rem / 16);
}
header .lineShare {
  display: flex;
  column-gap: calc(4rem / 16);
  align-items: center;
  position: relative;
  padding: calc(2rem / 16) calc(4rem / 16);
  border-radius: calc(5rem / 16);
  background-color: #03c755;
  color: #fff;
  font-size: clamp(10px, 12 / var(--cmp-width) * var(--100vw), 12rem / 16);
}
header .lineShare::before {
  content: "";
  display: inline-block;
  width: calc(13rem / 16);
  height: calc(13rem / 16);
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/proCommon/line-share.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.f_txt {
  width: calc(792rem / 16);
  margin: 0 auto;
  margin-top: calc(30rem / 16);
  font-size: clamp(10px, 14 / var(--cmp-width) * var(--100vw), 14rem / 16);
  line-height: 1.8;
  text-align: left;
}

footer .footer_note {
  margin-block: calc(50rem / 16) calc(80rem / 16);
  font-size: clamp(10px, 9 / var(--cmp-width) * var(--100vw), 9rem / 16);
  line-height: 1.6666666667;
}
footer .info {
  margin-top: calc(40rem / 16);
  padding: calc(20rem / 16);
  font-size: clamp(10px, 12 / var(--cmp-width) * var(--100vw), 12rem / 16);
}
footer .copy {
  padding: calc(20rem / 16) 0 calc(40rem / 16);
  font-size: clamp(10px, 12 / var(--cmp-width) * var(--100vw), 12rem / 16);
}

/**** メニューエリアの背景 ****/
.grandmenu {
  padding-inline: calc(16rem / 16);
  padding-block: calc(80rem / 16) calc(88rem / 16);
  background-size: cover;
  background-color: #b42727;
}
.grandmenu .grandmenu_heading {
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
  font-weight: bold;
  font-size: clamp(10px, 26 / var(--cmp-width) * var(--100vw), 26rem / 16);
}
.grandmenu ul.cir {
  display: grid;
  width: min(100%, 792rem / 16);
  grid-template-columns: repeat(2, 1fr);
  gap: calc(12rem / 16);
  margin-block-start: calc(44rem / 16);
}
.grandmenu ul.cir li {
  width: min(100%, 390rem / 16);
  height: calc(78rem / 16);
  margin: 0;
  border-width: calc(2rem / 16);
  border-color: #e6d076;
  background: #f0b9b9;
  transition: 0.3s;
}
.grandmenu ul.cir li u {
  margin-top: calc(2rem / 16);
}
.grandmenu ul.cir li u::before {
  background-size: cover;
  background-repeat: no-repeat;
}
.grandmenu ul.cir li i {
  color: #333;
  font-size: clamp(10px, 14 / var(--cmp-width) * var(--100vw), 14rem / 16);
}
.grandmenu ul.cir li b {
  color: #e43c00;
  font-size: clamp(10px, 18 / var(--cmp-width) * var(--100vw), 18rem / 16);
  line-height: 1.6666666667;
  letter-spacing: 0.08em;
}
.grandmenu ul.cir li:hover {
  transition: 0.3s;
}
.grandmenu ul.cir li.on, .grandmenu ul.cir li.select {
  background: #fff;
}
.grandmenu ul.cir li.on i, .grandmenu ul.cir li.select i {
  color: #333;
}
.grandmenu ul.cir li.on b, .grandmenu ul.cir li.select b {
  color: #e43c00;
}
.grandmenu ul.cir li u, .grandmenu ul.cir li.on u::before, .grandmenu ul.cir li.select u::before {
  width: calc(33rem / 16);
  height: calc(33rem / 16);
  margin-top: 0;
}
.grandmenu ul.cir li:nth-child(1) u::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon01.webp);
}
.grandmenu ul.cir li:nth-child(2) u::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon02.webp);
}
.grandmenu ul.cir li:nth-child(3) u::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon03.webp);
}
.grandmenu ul.cir li:nth-child(4) u::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon04.webp);
}
.grandmenu ul.cir li:nth-child(5) u::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon05.webp);
}
.grandmenu ul.cir li:nth-child(6) u::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon06.webp);
}
.grandmenu ul.cir li:nth-child(7) u::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon07.webp);
}
.grandmenu ul.cir li:nth-child(8) u::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon08.webp);
}

/************ 共通設定 **************/
.cont div .dbtn::after,
.grandmenu .grandmenu_heading {
  color: #000;
  font-family: "ヒラギノ明朝 Pr6N";
}

#lead {
  width: calc(800rem / 16);
  margin: 0 auto;
  padding-inline: calc(16rem / 16);
  padding-block: calc(65rem / 16) calc(60rem / 16);
}
#lead .lead_heading {
  margin: 0;
  font-weight: bold;
  font-size: clamp(10px, 22 / var(--cmp-width) * var(--100vw), 22rem / 16);
  line-height: 1.3636363636;
  letter-spacing: 0.04em;
}
#lead p.lead_kaiki {
  margin-block: calc(30rem / 16) 0;
  font-size: clamp(10px, 16 / var(--cmp-width) * var(--100vw), 16rem / 16);
  line-height: 1.5625;
}
#lead p.lead_title {
  margin-block: calc(50rem / 16) 0;
  font-weight: bold;
  font-size: clamp(10px, 16 / var(--cmp-width) * var(--100vw), 16rem / 16);
}
#lead p.lead_text {
  margin-block: calc(18rem / 16) 0;
  font-size: clamp(10px, 16 / var(--cmp-width) * var(--100vw), 16rem / 16);
  line-height: 1.6875;
}
#lead p.lead_note {
  margin-block: calc(40rem / 16) 0;
  font-size: clamp(10px, 10 / var(--cmp-width) * var(--100vw), 10rem / 16);
  line-height: 1.5;
}

#contents {
  width: min(100%, 1080rem / 16);
  margin-inline: auto;
  padding-inline: calc(16rem / 16);
  text-align: left;
}
#contents .cont {
  padding-block: calc(50rem / 16) calc(240rem / 16);
}
#contents .cont p {
  margin: 0;
  font-size: clamp(10px, 18 / var(--cmp-width) * var(--100vw), 18rem / 16);
  line-height: 1.6818181818;
}
#contents .cont .cont_heading {
  position: relative;
  margin-top: calc(120rem / 16);
  color: #000;
  font-size: clamp(10px, 36 / var(--cmp-width) * var(--100vw), 36rem / 16);
  line-height: 1;
  text-align: center;
}
#contents .cont .cont_heading::before {
  content: "";
  width: calc(66rem / 16);
  height: calc(66rem / 16);
  top: calc(-120rem / 16);
  transform: translateX(-50%);
  margin-left: 0;
  background-size: contain;
  background-repeat: no-repeat;
}
#contents .cont:nth-child(1) .cont_heading::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon01.webp);
}
#contents .cont:nth-child(2) .cont_heading::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon02.webp);
}
#contents .cont:nth-child(3) .cont_heading::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon03.webp);
}
#contents .cont:nth-child(4) .cont_heading::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon04.webp);
}
#contents .cont:nth-child(5) .cont_heading::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon05.webp);
}
#contents .cont:nth-child(6) .cont_heading::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon06.webp);
}
#contents .cont:nth-child(7) .cont_heading::before {
  background-image: url(/nagoya/topics/5/foodie/gourmet/osechi/2509/assets/images/common/icon07.webp);
}
#contents .cont .cont_lede {
  margin-block-start: calc(40rem / 16);
  font-size: clamp(10px, 20 / var(--cmp-width) * var(--100vw), 20rem / 16);
  line-height: 1.9230769231;
  text-align: center;
}
#contents .cont .cont_list {
  display: grid;
  width: min(100%, var(--bp-pcCnt));
  grid-auto-flow: row;
  row-gap: calc(60rem / 16);
  margin-inline: auto;
  margin-block-start: calc(90rem / 16);
}
#contents .cont .cont_list .cont_list-item {
  display: grid;
  width: 100%;
  row-gap: calc(20rem / 16);
  margin: 0;
  padding: 0;
  text-align: left;
}
#contents .cont .cont_image:has(img[src*=cont1_img01]) + .cont_detail .cont_shop::before, #contents .cont .cont_image:has(img[src*=cont1_img01]) + .cont_detail .cont_shop::after, #contents .cont .cont_image:has(img[src*=cont1_img02]) + .cont_detail .cont_shop::before, #contents .cont .cont_image:has(img[src*=cont1_img02]) + .cont_detail .cont_shop::after, #contents .cont .cont_image:has(img[src*=cont1_img03]) + .cont_detail .cont_shop::before, #contents .cont .cont_image:has(img[src*=cont1_img03]) + .cont_detail .cont_shop::after, #contents .cont .cont_image:has(img[src*=cont4_img01]) + .cont_detail .cont_shop::before, #contents .cont .cont_image:has(img[src*=cont4_img01]) + .cont_detail .cont_shop::after, #contents .cont .cont_image:has(img[src*=cont4_img02]) + .cont_detail .cont_shop::before, #contents .cont .cont_image:has(img[src*=cont4_img02]) + .cont_detail .cont_shop::after, #contents .cont .cont_image:has(img[src*=cont4_img04]) + .cont_detail .cont_shop::before, #contents .cont .cont_image:has(img[src*=cont4_img04]) + .cont_detail .cont_shop::after {
  content: "";
}
#contents .cont .cont_image:has(.cont_image-link) {
  position: relative;
}
#contents .cont .cont_image .cont_image-link {
  width: 90%;
  position: absolute;
  top: calc(1620rem / 16);
  left: 50%;
  transform: translateX(-50%);
}
#contents .cont .cont_detail {
  display: grid;
  row-gap: calc(5rem / 16);
}
#contents .cont .cont_icon {
  display: flex;
  column-gap: calc(8rem / 16);
}
#contents .cont .cont_icon span {
  padding: calc(4rem / 16) calc(8rem / 16);
  font-weight: bold;
  font-size: clamp(10px, 18 / var(--cmp-width) * var(--100vw), 18rem / 16);
}
#contents .cont .cont_icon .souryou {
  border: 1px solid #b42727;
  background-color: #b42727;
  color: #fff;
}
#contents .cont .cont_icon .reizou {
  border: 1px solid #3756be;
  background-color: #3756be;
  color: #fff;
}
#contents .cont .cont_icon .reitou {
  border: 1px solid currentColor;
  color: #3897ba;
}
#contents .cont .cont_shop {
  font-weight: bold;
  font-size: clamp(10px, 20 / var(--cmp-width) * var(--100vw), 20rem / 16);
}
#contents .cont .cont_shop::before {
  content: "〈";
}
#contents .cont .cont_shop::after {
  content: "〉";
}
#contents .cont .cont_title {
  font-weight: bold;
  font-size: clamp(10px, 20 / var(--cmp-width) * var(--100vw), 20rem / 16);
}
#contents .cont .cont_title .cont_desc {
  font-weight: normal;
  font-size: clamp(10px, 22 / var(--cmp-width) * var(--100vw), 22rem / 16);
}
#contents .cont .cont_title .online {
  display: block;
  width: calc(495rem / 16);
}
#contents .cont .cont_link {
  display: flex;
  gap: calc(20rem / 16);
}
#contents .cont .cont_link .pdf {
  width: calc(448rem / 16);
}
#contents .cont .cont_link .online {
  width: calc(495rem / 16);
}

/* 独立バナー */
#contents:has(+ .bnr) .cont {
  padding-block-end: calc(120rem / 16);
}

.bnr {
  width: fit-content;
  margin-inline: auto;
  margin-block-end: calc(120rem / 16);
  padding-inline: calc(16rem / 16);
}

/* リンク非活性 */
.btn-inactive {
  pointer-events: none;
  filter: brightness(70%) grayscale(90%);
}

/* SP おせち用スタイル */
@media screen and (max-width: 750px) {
  .f_txt {
    width: 90%;
    font-size: clamp(10px, 24 / var(--cmp-width) * var(--100vw), 24rem / 16);
  }
  footer .footer_note {
    margin-block: calc(50rem / 16) calc(80rem / 16);
    font-size: clamp(10px, 16 / var(--cmp-width) * var(--100vw), 16rem / 16);
    line-height: 1.25;
  }
  footer .info {
    display: flex;
    flex-direction: column;
    row-gap: calc(15rem / 16);
    padding: calc(20rem / 16);
    font-size: clamp(10px, 20 / var(--cmp-width) * var(--100vw), 20rem / 16);
  }
  footer .info > * {
    margin: 0;
  }
  footer .copy {
    padding-block: calc(20rem / 16) calc(40rem / 16);
    font-size: clamp(10px, 20 / var(--cmp-width) * var(--100vw), 20rem / 16);
  }
  .grandmenu {
    padding-inline: calc(16rem / 16);
    padding-block: calc(45rem / 16) calc(60rem / 16);
  }
  .grandmenu .grandmenu_heading {
    font-size: clamp(10px, 26 / var(--cmp-width) * var(--100vw), 26rem / 16);
  }
  .grandmenu ul.cir {
    margin-block-start: calc(44rem / 16);
  }
  .grandmenu ul.cir li {
    display: flex;
    height: auto;
    flex-direction: column;
    justify-content: center;
    padding-block: calc(40rem / 16) calc(16rem / 16);
    border-radius: calc(100rem / 16);
  }
  .grandmenu ul.cir li u {
    position: absolute;
    top: calc(-24rem / 16);
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    margin-inline-start: 0;
  }
  .grandmenu ul.cir li u::before {
    width: calc(48rem / 16);
    height: calc(48rem / 16);
    margin-top: calc(-48rem / 16);
  }
  .grandmenu ul.cir li i {
    padding: 0;
    font-size: clamp(10px, 16 / var(--cmp-width) * var(--100vw), 16rem / 16);
  }
  .grandmenu ul.cir li b {
    margin: 0;
    padding-inline: calc(10rem / 16);
    font-size: clamp(10px, 26 / var(--cmp-width) * var(--100vw), 26rem / 16);
    line-height: 1.3846153846;
  }
  .grandmenu ul.cir li.on u, .grandmenu ul.cir li.select u {
    margin: 0;
  }
  .grandmenu ul.cir li u, .grandmenu ul.cir li.on u::before, .grandmenu ul.cir li.select u::before {
    width: calc(44rem / 16);
    height: calc(44rem / 16);
    top: 0;
  }
  #lead {
    margin: 0 auto;
    padding-inline: 0;
    padding-block: calc(50rem / 16) calc(60rem / 16);
  }
  #lead .lead_heading {
    font-size: clamp(10px, 36 / var(--cmp-width) * var(--100vw), 36rem / 16);
    line-height: 1.4444444444;
  }
  #lead p.lead_kaiki {
    font-size: clamp(10px, 20 / var(--cmp-width) * var(--100vw), 20rem / 16);
    line-height: 1.9;
  }
  #lead p.lead_title {
    margin-block: calc(60rem / 16) 0;
    font-size: clamp(10px, 28 / var(--cmp-width) * var(--100vw), 28rem / 16);
  }
  #lead p.lead_text {
    margin-block: calc(30rem / 16) 0;
    font-size: clamp(10px, 28 / var(--cmp-width) * var(--100vw), 28rem / 16);
    line-height: 1.7142857143;
  }
  #lead p.lead_note {
    margin-block: calc(30rem / 16) 0;
    font-size: clamp(10px, 14 / var(--cmp-width) * var(--100vw), 14rem / 16);
    line-height: 1.5714285714;
  }
  #contents .cont {
    padding-block: calc(50rem / 16) calc(80rem / 16);
  }
  #contents .cont p {
    padding: 0;
    font-size: clamp(10px, 22 / var(--cmp-width) * var(--100vw), 22rem / 16);
  }
  #contents .cont .cont_heading {
    margin-top: calc(150rem / 16);
    font-size: clamp(10px, 49 / var(--cmp-width) * var(--100vw), 49rem / 16);
  }
  #contents .cont .cont_lede {
    font-size: clamp(10px, 26 / var(--cmp-width) * var(--100vw), 26rem / 16);
  }
  #contents .cont .cont_list {
    padding: 0;
  }
  #contents .cont .cont_list .cont_list-item {
    row-gap: calc(40rem / 16);
  }
  #contents .cont .cont_image .cont_image-link {
    top: calc(1110rem / 16);
  }
  #contents .cont .cont_detail {
    row-gap: calc(16rem / 16);
  }
  #contents .cont .cont_icon span {
    padding: calc(8rem / 16) calc(8rem / 16);
    font-size: clamp(10px, 22 / var(--cmp-width) * var(--100vw), 22rem / 16);
  }
  #contents .cont .cont_shop {
    font-size: clamp(10px, 26 / var(--cmp-width) * var(--100vw), 26rem / 16);
  }
  #contents .cont .cont_title {
    font-size: clamp(10px, 26 / var(--cmp-width) * var(--100vw), 26rem / 16);
  }
  #contents .cont .cont_link {
    flex-direction: column;
  }
  #contents:has(+ .bnr) .cont {
    padding-block-end: calc(80rem / 16);
  }
  .bnr {
    margin-block-end: calc(80rem / 16);
    padding-inline: calc(60rem / 16);
  }
  #totop::before {
    width: calc(110rem / 16);
    height: calc(110rem / 16);
  }
}/*# sourceMappingURL=style.css.map */