@charset "UTF-8";
/*---------------------
Mixins
-----------------------*/
#osechi2027.top .category_title {
  color: #5c5c5c;
  margin-bottom: 1.5rem;
}

#osechi2027.top .category_border {
  border: 1px solid #cbcbcb;
  /*	margin: 2rem 0;*/
  border-radius: 6px;
  display: none;
}

#osechi2027.top .category {
  padding: 2rem 0.5rem;
  margin: 0 auto;
  text-align: center;
}

#osechi2027.top #category_type,
#osechi2027.top #category_type2 {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}

#osechi2027.top #note {
  background-color: #f6edeb;
}

#osechi2027.top .note-nobnr {
  padding-top: 5rem !important;
}
@media screen and (max-width: 768px) {
  #osechi2027.top .note-nobnr {
    padding-top: 15vw !important;
  }
}

@media screen and (max-width: 768px) {
  #osechi2027.top .category {
    width: 100%;
    padding: 1.5rem 0.5rem;
  }
  #osechi2027.top .category_title {
    color: #5c5c5c;
    margin-bottom: 1rem;
  }
}
#osechi2027 span.min {
  font-size: 0.8rem;
  display: block;
}

/*---------------------
予告帯
---------------------*/
#osechi2027 .pre {
  font-family: "モトヤLシーダ3等幅", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "helvetica", sans-serif !important;
  font-size: 2.6rem;
  font-weight: bold;
  color: #e60012;
  padding: 0.8rem 0;
  background-color: #ff0;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  #osechi2027 .pre {
    font-size: 7vw;
    padding: 2vw 0;
  }
}

/*---------------------
キービジュアル
---------------------*/
#osechi2027 .kv {
  position: relative;
  overflow: hidden;
}

#osechi2027 .kv_logo {
  position: absolute;
  width: 15%;
  top: 5%;
  left: 4%;
  z-index: 3;
  /*
    padding: 1.5%;
    background: rgba(255,255,255,.9);
    */
  box-sizing: border-box;
  pointer-events: none;
}

#osechi2027 .kv_logo img {
  filter: drop-shadow(0 0 10px #fff);
}

@-webkit-keyframes slideInFloat {
  0% {
    transform: translateX(-150%);
  }
  100% {
    transform: translateX(0%);
  }
}

@keyframes slideInFloat {
  0% {
    transform: translateX(-150%);
  }
  100% {
    transform: translateX(0%);
  }
}
@media screen and (max-width: 768px) {
  #osechi2027 .kv_logo {
    width: 42%;
    top: 0;
    left: 0;
    padding: 4%;
  }
}
#osechi2027 .kv_yoyaku {
  position: absolute;
  top: 5%;
  right: 2%;
  width: 12%;
  z-index: 2;
  pointer-events: none;
}

#osechi2027 .kv_yoyaku img {
  width: 100%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .kv_yoyaku {
    top: 3%;
    width: 29vw;
  }
}
#osechi2027 .kv .slick_slider {
  font-size: 0;
}

#osechi2027 #kv_net.section {
  padding: 2rem 10rem;
}

@media screen and (max-width: 768px) {
  #osechi2027 #kv_net.section {
    padding: 4% 2%;
  }
}
#osechi2027 .kv_net-text {
  background: #fff;
  border: solid 1px #c8a578;
  padding: 1rem;
  text-align: center;
  font-size: 1.25rem;
  position: relative;
  color: #ce4448;
}

@media screen and (max-width: 768px) {
  #osechi2027 .kv_net-text {
    font-size: 1rem;
  }
}
#osechi2027 .kv_net-text.red {
  color: #fff;
  background: #ce4448;
}

#osechi2027 .top-slide {
  position: relative;
}

/*フローティング*/
#osechi2027.top .link-osechitop::before {
  transform: translateY(-50%) rotate(0deg) !important;
}

/* 宅配／店頭受け取りアイコン */
#osechi2027 .rec-deli {
  position: relative;
  font-size: 1em;
}

#osechi2027 .rec-deli::before {
  content: "";
  position: absolute;
  background-image: url(/library/contents/products/osechi2027/common/image/icon_rec-store-deli.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 11%;
  height: 41%;
  z-index: 2;
  right: 3%;
  top: 3%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .rec-deli::before {
    width: 28%;
    height: 27%;
    z-index: 2;
    right: 2%;
    top: 1%;
  }
}
/* 宅配・店舗受け取りアイコン */
/* 店舗受け取りアイコン */
#osechi2027 .rec-store {
  position: relative;
  font-size: 1em;
}

#osechi2027 .rec-store::before {
  content: "";
  position: absolute;
  background-image: url(/library/contents/products/osechi2027/common/image/icon_rec-store.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 12%;
  height: 21%;
  z-index: 2;
  right: 3%;
  top: 3%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .rec-store::before {
    width: 28%;
    height: 13%;
    z-index: 2;
    right: 4%;
    top: 2%;
  }
}
/* 加賀屋アイコン */
#osechi2027 .rec-kagaya {
  position: relative;
  font-size: 1em;
}

#osechi2027 .rec-kagaya::before {
  content: "";
  position: absolute;
  background-image: url(/library/contents/products/osechi2027/common/image/icon_rec-store.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 11%;
  height: 21%;
  z-index: 2;
  left: 5%;
  top: 25%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .rec-kagaya::before {
    width: 21%;
    height: 12%;
    z-index: 2;
    left: 10%;
    top: 18%;
  }
}
#kv_net .base_link {
  margin: 0 0 1rem 0;
}

#kv_net .base_link a {
  min-height: auto;
}

#osechi2027 .contents_about {
  background: #fff;
  border: solid 1px #c8a578;
  padding: 2rem;
  text-align: center;
  font-size: 1.25rem;
  position: relative;
}

@media screen and (max-width: 768px) {
  #osechi2027 .contents_about {
    font-size: 1rem;
    padding: 2rem 0;
  }
}
#osechi2027 .section_commitment::before {
  display: none;
}

#osechi2027 .section_commitment::after {
  display: none;
}

@media screen and (max-width: 768px) {
  #osechi2027 .section_commitment::after {
    bottom: max(-55vw, -6rem);
  }
}
#osechi2027 .contents_about:nth-of-type(1) {
  margin-bottom: 2rem;
}

#osechi2027 .contents_about:nth-of-type(2) {
  margin-bottom: 7rem;
}

#osechi2027 #intro.section {
  padding: 2vw 2%;
}

@media screen and (max-width: 768px) {
  #osechi2027 #intro.section {
    padding: 5vw 2%;
  }
}
#osechi2027 .takuhai-note {
  font-weight: bold;
  font-size: 0.8em;
  margin-top: 1em;
}

/*
#osechi2027 .hayawari_link {
  background: #fff;
  color: #000 !important;
}
*/
@-webkit-keyframes bg_hayawari_link {
  0% {
    background: #fff;
    opacity: 1;
  }
  100% {
    background: #f9e6e3;
    opacity: 0.7;
  }
}
@keyframes bg_hayawari_link {
  0% {
    background: #fff;
    opacity: 1;
  }
  100% {
    background: #f9e6e3;
    opacity: 0.7;
  }
}
#osechi2027 .hayawari-note {
  color: #000;
  margin-top: 3em;
  font-weight: bold;
  text-align: center;
}

#osechi2027 .contents_about .hayawari_flex {
  display: flex;
  justify-content: space-around;
  align-items: center;
  max-width: 70%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  #osechi2027 .contents_about .hayawari_flex {
    max-width: 90%;
  }
}
#osechi2027 .contents_about .hayawari_flex .hayawari_box:first-of-type {
  width: 40%;
  text-align: center;
}

#osechi2027 .contents_about .hayawari_flex .hayawari_box img {
  width: 100%;
}

#osechi2027 .contents_about .hayawari_flex .hayawari_box:last-of-type {
  width: 60%;
  text-align: center;
}

#osechi2027 .contents_about .hayawari_flex .hayawari_box:last-of-type img {
  max-width: 80%;
}

#osechi2027 .contents_about .hayawari_flex .hayawari_box .hayawari_item {
  font-size: clamp(0.6rem, 2.5vw, 1rem);
}

#osechi2027 .hayawari_text {
  width: 65%;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 768px) {
  #osechi2027 .hayawari_text {
    padding: 0 10%;
  }
}
#osechi2027 .contents_about .hayawari_title {
  font-size: 1.5rem;
  color: #ce4448;
}

@media screen and (max-width: 768px) {
  #osechi2027 .contents_about .hayawari_title {
    font-size: 1.25rem;
  }
}
#osechi2027 .contents_about .hayawari_sub {
  font-size: 1.25rem;
}

@media screen and (max-width: 768px) {
  #osechi2027 .contents_about .hayawari_sub {
    font-size: 1rem;
  }
}
#osechi2027 .contents_about .hayawari_coupon {
  font-size: 1.75rem;
}

@media screen and (max-width: 768px) {
  #osechi2027 .contents_about .hayawari_coupon {
    font-size: 1.35rem;
  }
}
#osechi2027 .contents_about .hayawari_kuwashiku {
  font-size: 1.35rem;
  color: #fff;
  display: inline-block;
  background: #ce4448;
  padding: 1% 2%;
  border-radius: 50px;
}

@media screen and (max-width: 768px) {
  #osechi2027 .contents_about .hayawari_kuwashiku {
    font-size: 1rem;
    padding: 0.5rem;
    width: 80%;
  }
}
#osechi2027 .hayawari_link_btn {
  text-align: center;
  margin: 3rem 0 1rem;
}

#osechi2027 .hayawari_link_btn a {
  position: relative;
  display: inline-block;
  width: 70%;
  padding: 0.5em 1.6em;
  background-color: #ffffff;
  color: #aa1b20;
  font-size: 1.5rem;
  font-weight: bold;
  text-decoration: none;
  border-radius: 999px;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
  #osechi2027 .hayawari_link_btn a {
    font-size: 1.3rem;
    width: 90%;
  }
}
#osechi2027 .hayawari_link_btn a:hover {
  background-color: #fae5a0;
}

#osechi2027 .hayawari_link_btn a::before {
  content: "";
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.1em solid;
  border-right: 0.1em solid;
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}

#osechi2027 #intro {
  margin: 0 1rem;
  background: linear-gradient(90deg, transparent 0%, #fff 10%, #fff 90%, transparent 100%);
}

#osechi2027 .intro_title {
  font-size: 1.5rem;
}

#osechi2027 #intro_receive.section {
  padding: 0 10rem;
}

@media screen and (max-width: 768px) {
  #osechi2027 #intro {
    margin: 0;
  }
  #osechi2027 .intro_title {
    font-size: 1rem;
  }
  #osechi2027 #intro_receive.section {
    padding: 0 2%;
  }
}
#osechi2027 .receive_title {
  font-size: 1.25rem;
  color: #ce4448;
}

@media screen and (max-width: 768px) {
  #osechi2027 .receive_title {
    font-size: 1rem;
  }
}
#osechi2027 .receive_text-list {
  font-size: 1rem;
}

@media screen and (max-width: 768px) {
  #osechi2027 .receive_text-list {
    font-size: 1rem;
  }
}
/*---------------------
早割 #hayawari
---------------------*/
#osechi2027 .hayawari {
  font-family: "モトヤLシーダ3等幅", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "helvetica", sans-serif !important;
  position: relative;
  padding: 2rem 0 7rem 0;
  text-align: center;
  background-color: #F3E6E3;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  #osechi2027 .hayawari {
    padding: 2rem 0 5rem 0;
  }
}
#osechi2027 .hayawari::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  background-repeat: repeat;
  z-index: 0;
  background-position: center center;
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.15) 75%), linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.15) 75%);
  background-position: 0 0, 20px 20px;
  background-size: 40px 40px;
}
#osechi2027 .hayawari_content {
  background-color: #ffffff;
  margin: 2em 10em 1em;
  padding: 2em;
  border: 3px solid #AA1A1F;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  #osechi2027 .hayawari_content {
    margin: 2em 1em;
    padding: 2em 1.5em;
  }
}
#osechi2027 .hayawari_col2 {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 1em;
  gap: 3em;
}
@media screen and (max-width: 768px) {
  #osechi2027 .hayawari_col2 {
    display: block;
  }
}
#osechi2027 .hayawari_text-subject {
  position: relative;
  color: #CF0C11;
  font-size: 2.25em;
  font-weight: bold;
  display: inline-block;
  z-index: 0;
}
#osechi2027 .hayawari_text-subject::before {
  content: "";
  position: absolute;
  display: block;
  width: 115%;
  height: 15px;
  background-color: #FFF70E;
  bottom: 5px;
  z-index: -1;
  left: -15px;
}
@media screen and (max-width: 768px) {
  #osechi2027 .hayawari_text-subject {
    font-size: 2em;
    margin-bottom: 0.5em;
  }
}
#osechi2027 .hayawari_text-yoyaku {
  color: #000000;
  font-size: 1.5em;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #osechi2027 .hayawari_text-yoyaku {
    font-size: 1.25em;
    margin-bottom: 1em;
  }
}
#osechi2027 .hayawari_text-7now {
  color: #CF0C11;
  font-size: 1.25em;
  position: relative;
}
#osechi2027 .hayawari_text-note {
  font-size: 14px;
  margin-top: 0.5em;
}
@media screen and (max-width: 768px) {
  #osechi2027 .hayawari_text-note {
    margin: 1em -2em 0.5em;
    font-size: 12px;
  }
}
#osechi2027 .hayawari_7now {
  border: 3px solid #CF0C11;
  border-radius: 20px;
  padding: 0.5em 1em;
}
@media print, (min-width: 769px) {
  #osechi2027 .hayawari_img-10percent {
    position: relative;
    width: 60%;
    top: -15px;
  }
}
@media screen and (max-width: 768px) {
  #osechi2027 .hayawari_img-10percent {
    max-width: 500px;
    margin: 0 auto;
  }
}
@media print, (min-width: 769px) {
  #osechi2027 .hayawari_img-otoku {
    width: 60%;
    margin: 0 auto;
  }
}
#osechi2027 .hayawari_link a {
  color: #CF0C11 !important;
  font-size: 20px;
}
@media print, (min-width: 769px) {
  #osechi2027 .hayawari_btn {
    width: 50%;
  }
}
#osechi2027 .hayawari_btn a {
  display: block;
  border: 3px solid #CF0C11;
  border-radius: 999px;
  padding: 1em 0;
  color: #CF0C11 !important;
  font-weight: bold;
  box-shadow: 0 6px 10px 0 #bfbfbf;
  width: 100%;
}
@media print, (min-width: 769px) {
  #osechi2027 .hayawari_btn a {
    padding: 1em 3em;
    max-width: 300px;
  }
}
#osechi2027 .hayawari_btn a:hover {
  text-decoration: none;
}

/*---------------------
装飾
---------------------*/
#osechi2027 .deco_top {
  position: absolute;
  display: block;
}

#osechi2027 .deco_top img {
  width: 100%;
}

#osechi2027 .deco_about-top {
  top: -15%;
  right: 2%;
  width: 10%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_about-top {
    top: -9vw;
    right: 2%;
    width: 20%;
  }
}
#osechi2027 .deco_about-top img:nth-of-type(1) {
  position: absolute;
  width: 40%;
  top: 30%;
  left: -25%;
}

#osechi2027 .deco_about-top img:nth-of-type(2) {
  width: 80%;
}

#osechi2027 .deco_about-bottom {
  bottom: -15%;
  left: -2%;
  width: 8%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_about-bottom {
    left: -5%;
    max-width: 20%;
    width: 80px;
  }
}
#osechi2027 .deco_lineup-top01 {
  top: -40px;
  left: 80px;
  width: 10%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_lineup-top01 {
    top: 0;
    left: 8%;
    width: 4rem;
  }
}
#osechi2027 .deco_lineup-top01 img:nth-of-type(1) {
  position: relative;
  width: 80%;
  top: 0;
  transform: translate(0, 0);
  z-index: 1;
}

#osechi2027 .deco_lineup-top01 img:nth-of-type(2) {
  display: block;
  width: 50%;
  z-index: 2;
  transform: translate(110%, -80%);
}

#osechi2027 .deco_lineup-top02 {
  top: -30px;
  right: 80px;
  width: 5%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_lineup-top02 {
    top: 0;
    right: 8%;
    width: 3rem;
  }
}
#osechi2027 .deco_lineup-top03 {
  top: 170px;
  right: -60px;
  width: 10%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_lineup-top03 {
    top: 7%;
    right: -5%;
    width: 3rem;
  }
}
#osechi2027 .deco_lineup-top04 {
  top: 50%;
  left: -6%;
  width: 7%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_lineup-top04 {
    top: 53%;
    left: -25px;
    width: 3rem;
  }
}
#osechi2027 .lineup-attention {
  text-align: center;
  font-size: 1.2rem;
}

#osechi2027 .deco_filter-bottom01 {
  bottom: -100px;
  right: 0;
  width: 10%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_filter-bottom01 {
    bottom: -1%;
    right: 0;
    width: 5rem;
  }
}
#osechi2027 .deco_filter-bottom01 img:nth-of-type(1) {
  position: relative;
  z-index: 1;
  width: 40%;
}

#osechi2027 .deco_filter-bottom01 img:nth-of-type(2) {
  width: 90%;
  transform: translate(40%, -90%);
}

#osechi2027 .deco_ohter-top01 {
  top: 50%;
  left: -6%;
  width: 3rem;
  height: 3rem;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_ohter-top01 {
    top: 20%;
    left: -10px;
    width: 3rem;
  }
}
#osechi2027 .deco_ohter-top02 {
  top: 8%;
  right: 30%;
  width: 6rem;
  height: 6rem;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_ohter-top02 {
    top: 40.5%;
    right: -10px;
    width: 5rem;
  }
}
#osechi2027 .deco_ohter-top03 {
  top: 54%;
  right: -5%;
  width: 5rem;
  height: 5rem;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_ohter-top03 {
    top: 59.7%;
    left: -12px;
    width: 5rem;
  }
}
#osechi2027 .deco_ohter-top04 {
  top: 80%;
  right: 25%;
  width: 8rem;
  height: 8rem;
}

@media screen and (max-width: 768px) {
  #osechi2027 .deco_ohter-top04 {
    top: 80%;
    right: -6%;
    width: 8rem;
  }
}
/*---------------------
おせち一覧
---------------------*/
#osechi2027 #osechi_lineup.section {
  z-index: auto;
}

#osechi2027 #characterosechi_lineup.section {
  z-index: auto;
}

#osechi2027 #dogosechi_lineup.section {
  z-index: auto;
}

#osechi2027 #othermenu_lineup.section {
  z-index: auto;
}

#osechi_lineup,
#characterosechi_lineup,
#dogosechi_lineup,
#othermenu_lineup {
  z-index: 2;
  position: relative;
}
#osechi_lineup::before,
#characterosechi_lineup::before,
#dogosechi_lineup::before,
#othermenu_lineup::before {
  content: "";
  position: absolute;
  left: 0;
  top: -125px;
  width: 100%;
  height: 125px;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  #osechi_lineup::before,
#characterosechi_lineup::before,
#dogosechi_lineup::before,
#othermenu_lineup::before {
    top: -80px;
    height: 80px;
  }
}

#osechi_lineup {
  padding-bottom: 5rem !important;
  background-color: #F9F3E3 !important;
}
#osechi_lineup::before {
  background: #F9F3E3;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%);
  clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
}

#characterosechi_lineup {
  padding-bottom: 5rem !important;
  background-color: #F3E0E0 !important;
}
#characterosechi_lineup::before {
  background: #F3E0E0;
  -webkit-clip-path: polygon(0 0%, 100% 0, 100% 100%, 0 0%);
  clip-path: polygon(0 100%, 0% 0, 100% 100%, 0 100%);
}

#dogosechi_lineup {
  padding-bottom: 5rem !important;
  background-color: #F9F3E3 !important;
}
#dogosechi_lineup::before {
  background: #F9F3E3;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%);
  clip-path: polygon(0 100%, 100% 0, 100% 100%, 0 100%);
}

#othermenu_lineup {
  padding-bottom: 2rem !important;
  background-color: #F3E0E0 !important;
}
#othermenu_lineup::before {
  background: #F3E0E0;
  -webkit-clip-path: polygon(0 0%, 100% 0, 100% 100%, 0 0%);
  clip-path: polygon(0 100%, 0% 0, 100% 100%, 0 100%);
}
#othermenu_lineup .item_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2em;
}
@media screen and (max-width: 768px) {
  #othermenu_lineup .item_list {
    grid-template-columns: repeat(1, 1fr);
  }
}

.deco_lineup-left,
.deco_lineup-right {
  position: relative;
}
.deco_lineup-left:before,
.deco_lineup-right:before {
  content: "";
  display: block;
  position: absolute;
  background-size: contain;
  width: 600px;
  height: 600px;
  background-repeat: no-repeat;
  top: -5em;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .deco_lineup-left:before,
.deco_lineup-right:before {
    width: 400px;
    height: 400px;
    top: -3em;
  }
}

.deco_lineup-left:before {
  background-image: url(/library/contents/products/osechi2027/common/img/deco_circle-left.png) !important;
  left: -15em;
}
@media screen and (max-width: 768px) {
  .deco_lineup-left:before {
    left: -10em;
  }
}

.deco_lineup-right:before {
  background-image: url(/library/contents/products/osechi2027/common/img/deco_circle-right.png) !important;
  right: -10em;
}
@media screen and (max-width: 768px) {
  .deco_lineup-right:before {
    right: -10em;
  }
}

@media screen and (max-width: 768px) {
  #osechi2027 #osechi_lineup,
#osechi2027 #osechi_other {
    margin: 0;
  }
}
#osechi_other .links {
  display: grid;
  position: relative;
  z-index: 100;
}

#osechi_lineup .links {
  row-gap: 2rem;
}

#osechi_lineup {
  background-color: rgba(255, 255, 255, 0.5490196078);
  border-radius: 50% 50%/5% 5% 0 0;
}

@media print, (min-width: 769px) {
  #osechi_other .links {
    grid-template-columns: repeat(3, 1fr);
    gap: 2%;
  }
}
#osechi_lineup {
  border-radius: 0 0/1% 1% 0 0;
}

@media screen and (max-width: 768px) {
  #osechi_lineup {
    background-color: rgba(255, 255, 255, 0.5490196078);
    border-radius: 0 0/1% 1% 0 0;
  }
  #osechi_other .links .link:not(:last-of-type) {
    margin-bottom: 10vw;
  }
  #osechi_lineup .links {
    row-gap: 10vw;
  }
}
/*
#osechi2027 #osechi_lineup.section {
  padding: 1rem 2rem 2rem 2rem;
}

@media screen and (max-width: 768px) {
  #osechi2027 #osechi_lineup.section.adjust_sp {
    padding: 4vw 0;
  }
}
*/
#osechi2027 #osechi_other .section_inner {
  z-index: 2;
  position: relative;
}

/*
#osechi2027 #osechi_lineup .section_inner {
  padding: 5vw 0;
}
*/
/*
#osechi2027 #characterosechi_lineup .section_inner {
  @include mqsp {
    padding: 5vw 0;
  }
}

#osechi2027 #dogosechi_lineup .section_inner {
  @include mqsp {
    padding: 5vw 0;
  }
}

#osechi2027 #othermenu_lineup .section_inner {
  @include mqsp {
    padding: 5vw 0;
  }
}
*/
/*@media screen and (min-width: 769px),
print {
  #osechi2027 #osechi_lineup .section_inner {
    padding: 2rem;
  }
}*/
#osechi2027 .list-item {
  position: relative;
}
@media screen and (max-width: 768px) {
  #osechi2027 .list-item:not(:nth-last-child(1))::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #987C34;
  }
}
#osechi2027 .list-item a:hover {
  text-decoration: none;
}

#osechi2027 .list-item .tag {
  position: absolute;
  z-index: 10;
  width: 180px;
  right: 2.5em;
  bottom: 2em;
}

@media screen and (max-width: 769px), print {
  #osechi2027 .list-item .tag {
    width: 31%;
    right: 2%;
    bottom: 5%;
  }
}
#osechi2027 .link_img {
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
}

#osechi2027 .item_list a img {
  transition: transform 0.5s ease;
}

#osechi2027 .item_list a:hover img {
  transform: scale(1.05);
  opacity: 1;
}

#osechi2027 .item_list a:hover .link_text {
  color: #ba1b1a;
}

/* 人数分のアイコン */
#osechi2027 .icon-Left {
  position: relative;
}

#osechi2027 .icon-Left::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  width: 30%;
  height: 30%;
  z-index: 2;
  right: 0;
  bottom: 3%;
}

#osechi2027 .icon-Right {
  position: relative;
}

#osechi2027 .icon-Right::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-repeat: no-repeat;
  background-size: contain;
  width: 30%;
  height: 30%;
  z-index: 2;
  right: 0;
  bottom: 3%;
}

#osechi2027 .icon-wa1dan::after {
  background-image: url(/library/contents/products/osechi2027/wa1dan/img/wa1dan_j7_icon.png);
}

#osechi2027 .icon-wayo::after {
  background-image: url(/library/contents/products/osechi2027/wayo/img/wayo_j4_icon.png);
}

#osechi2027 .icon-wa2dan::after {
  background-image: url(/library/contents/products/osechi2027/wa2dan/img/wa2dan_j5_icon.png);
}

#osechi2027 .icon-wa3dan::after {
  background-image: url(/library/contents/products/osechi2027/wa3dan/img/wa3dan_j1_icon.png);
}

#osechi2027 .icon-kyokujin::after {
  background-image: url(/library/contents/products/osechi2027/kyokujin/img/kyokujin_j3_icon.png);
}

#osechi2027 .icon-kagaya::after {
  background-image: url(/library/contents/products/osechi2027/kagaya/img/kagaya_j2_icon.png);
}

#osechi2027 .icon-wayochu::after {
  background-image: url(/library/contents/products/osechi2027/wayochu/img/wayochu_j6_icon.png);
}

#osechi2027 .icon-uketori0103::before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-repeat: no-repeat;
  background-size: contain;
  width: 30%;
  height: 30%;
  z-index: 2;
  left: 2%;
  top: 2%;
  background-image: url(/library/contents/products/osechi2027/common/img/icon-uketori0103.png);
}

#osechi2027 .icon-Righttop {
  position: relative;
}

#osechi2027 .icon-Righttop::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-repeat: no-repeat;
  background-size: contain;
  width: 30%;
  height: 30%;
  z-index: 2;
  right: 0;
  top: 3%;
}

#osechi2027 .top_lineup .heading_sub {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

#osechi2027 .icon-disney::after {
  background-image: url(/library/contents/products/osechi2027/disneyosechi/img/disneyosechi_j9_icon.png);
}

#osechi2027 .icon-sanrio::after {
  background-image: url(/library/contents/products/osechi2027/sanrioosechi/img/sanrioosechi_j10_icon.png);
}

#osechi2027 .icon-dog::after {
  background-image: url(/library/contents/products/osechi2027/dogosechi/img/dogosechi_j8_icon.png);
}

#osechi2027 .lineup_vertical {
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

#osechi2027 .lineup_vertical span {
  position: relative;
  /*    writing-mode: vertical-rl;*/
  font-size: 1.5rem;
  z-index: 2;
}

#osechi2027 .lineup_vertical::before {
  content: "";
  width: 25px;
  height: 25px;
  background: #f8e4bb;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-250%, -100%) rotate(45deg);
  z-index: 1;
  opacity: 0.5;
}

#osechi2027 .lineup_vertical::after {
  content: "";
  width: 15px;
  height: 15px;
  background: #f8e4bb;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-270%, -20%) rotate(45deg);
  z-index: 1;
  opacity: 0.5;
}

/*---------------------
一覧商品名等
---------------------*/
.item_name {
  /*    margin-bottom: 0.8rem;*/
  font-family: "Zen Old Mincho", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-weight: bold;
}

.item_name .min {
  font-size: 0.8em;
}

.item_img {
  margin-bottom: 2rem;
  flex-shrink: 0;
}

@media screen and (min-width: 769px) {
  .col2-1.large .item_img {
    margin: 0;
  }
}
#osechi2027 .item_region,
#osechi2027 .item_price {
  text-align: left;
}

#osechi2027 .item_name,
#osechi2027 .item_price {
  font-weight: bold;
}

#osechi2027 .item_copy,
#osechi2027 .item_memo {
  font-size: 0.9em;
}

#osechi2027 .item_copy-sm {
  font-size: 0.8em;
  margin: 0.5em 0 0;
}

#osechi2027 .item_name {
  font-size: 1.35em;
  line-height: 1.5;
  margin: 0.25em 0;
}
@media print, (min-width: 769px) {
  #osechi2027 .item_name {
    min-height: 45px;
    line-height: 40px;
    align-items: center;
  }
}

@media print, (min-width: 769px) {
  #osechi2027 .item_name-characteradjust {
    margin-top: calc(0.5em + 49.69px);
  }
}

#osechi2027 .item_price {
  font-size: 1.2em;
  margin-right: -0.5rem;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  #osechi2027 .item_price {
    font-size: 1.3em;
  }
}

#osechi2027 .item_price span {
  font-size: 0.8em;
}

#osechi2027 .item_region {
  /*font-size: 0.8rem;*/
  margin-top: 0.5rem;
}

/*---------------------
リンクスタイル
---------------------*/
.link a {
  text-decoration: none;
  display: flex;
  flex-direction: column;
  /*    height: 100%;*/
}

.osechi_links .link .link_img,
.osechi_links .link .link_img img {
  flex-shrink: 0;
}

.link .link_text {
  /*	background-color: #ffff00;*/
  padding: 0.5rem;
  padding: 1rem 12% 1rem 6%;
  box-sizing: border-box;
  color: #241e18;
  height: 100%;
  position: relative;
  font-size: 1em;
}

.link .link_text.link_text-min {
  display: flex;
  align-items: center;
}

.link_text-right::after {
  content: "";
  position: absolute;
  background-image: url(/library/contents/products/osechi2027/common/img/link_arrow-right.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  right: 0;
  top: 50%;
  display: block;
  width: 6%;
  height: 100%;
  transform: translate(-50%, -50%);
}

.link_img img {
  width: 100%;
}

#osechi2027.top .top_lineup .link_text {
  font-size: 115%;
  height: 100%;
}

@media screen and (max-width: 768px) {
  .link .link_text {
    font-size: max(0.8rem, min(4vw, 1rem));
  }
}
/*

#osechi2027 .column .link{
	border: 1px solid #afafaf;
	padding: 0.3rem;
	box-sizing: border-box;
}
#osechi2027 .column .link_text{
	background-color: #fff;
	padding: 0.5rem;
	box-sizing: border-box;
	color: #5c5c5c;
}

*/
/*---------------------
おせちのお受け取り方法
---------------------*/
#osechi2027 .receive dt {
  padding: 1rem;
  position: relative;
}

#osechi2027 .receive dd {
  padding: 1rem;
}

#osechi2027 .receive dt.store {
  color: #009d95;
  border-bottom: 2px solid #009d95;
  background: linear-gradient(170deg, #c1efc6 0%, #ffffff 50%, #ffffff 100%);
}

#osechi2027 .receive dt.delivery {
  color: #ff8651;
  border-bottom: 2px solid #ff8651;
  background: linear-gradient(170deg, #ffd5c3 0%, #ffffff 50%, #ffffff 100%);
}

#osechi2027 .receive dt img {
  height: 2rem;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}

#osechi2027 .bnr-wrap {
  padding-bottom: 5rem;
  width: 80%;
  margin: 0 auto;
}

#osechi2027 .bnr-wrap p {
  text-align: center;
  font-size: 1.4rem;
  background-color: #ffffff;
  padding: 0.3rem 0;
}

@media screen and (max-width: 768px) {
  #osechi2027 .bnr-wrap {
    width: 100%;
  }
  #osechi2027 .bnr-wrap p {
    font-size: 1.2rem;
  }
  #osechi2027 .bnr-wrap p:hover {
    text-decoration: none;
    color: #000;
  }
  #osechi2027 .bnr-wrap a {
    color: #000;
  }
}
/*---------------------
スライダー
---------------------*/
#osechi2027 .slick-dotted.slick-slider {
  margin-bottom: 0;
}

#osechi2027 .slick-dots {
  bottom: 5px;
}

@media screen {
  .slick_slider img.prtct-print,
.link_img img.prtct-print {
    display: none;
  }
  .slick_slider img.prtct-actual,
.link_img img.prtct-actual {
    display: inline;
  }
}
@media print {
  .slick_slider img.prtct-print,
.link_img img.prtct-print {
    display: inline;
  }
  .slick_slider img.prtct-actual,
.link_img img.prtct-actual {
    display: none;
  }
}
/*---------------------------
itemZoom
---------------------------*/
#osechi2027 .slider-nav {
  display: none;
}

#osechi2027 .slider-nav .slick-prev,
#osechi2027 .slider-nav .slick-next {
  display: none !important;
}

#osechi2027 .slider-for .slick-slide {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: auto;
}

#osechi2027 .slider-for .slick-slide a {
  position: relative;
  height: 100%;
}

#osechi2027 .slider-for .slick-slide p {
  display: block;
  font-size: 0.8rem;
  line-height: 1.5;
  padding: 0.5rem 0;
  transform: rotate(0.03deg);
}

#osechi2027 .slider-for .slick-slide img {
  -o-object-fit: cover;
     object-fit: cover;
}

#osechi2027 .slick-slide img {
  image-rendering: -webkit-optimize-contrast;
  width: 100%;
}

#osechi2027 .slider-nav.slick-slider .slick-list {
  padding: 0 !important;
  margin: 0 -0.5%;
}

#osechi2027 .slider-nav {
  overflow: hidden;
}

#osechi2027 .slider-nav .slick-track {
  width: 100% !important;
  display: flex;
  flex-wrap: wrap;
  transform: none !important;
}

#osechi2027 .slider-nav .slick-slide {
  height: auto;
  width: calc(19% - 0.5px) !important;
  cursor: pointer;
  border: 0.5px solid #cbcbcb;
  box-sizing: border-box;
  margin: 0.5%;
  padding: 0.1rem;
}

#osechi2027 .slider-nav .slick-slide img {
  -o-object-fit: cover;
     object-fit: cover;
}

#osechi2027 .slick-track:before,
#osechi2027 .slick-track:after {
  display: none;
}

#osechi2027 .slick-prev,
#osechi2027 .slick-next {
  z-index: 100;
}

#osechi2027 .slick-prev.slick-disabled,
#osechi2027 .slick-next.slick-disabled {
  opacity: 0;
  visibility: hidden;
}

#top_carousell .slick-prev:before,
#top_carousell .slick-next:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(/library/contents/products/osechi2027/common/img/slider_arrow.svg) no-repeat center/cover;
  filter: drop-shadow(0 0 2px #fff) drop-shadow(0 0 4px #fff);
}

.slick-prev:before {
  transform: scaleX(-1);
}

#top_carousell .slick-prev,
#top_carousell .slick-next {
  height: 30px;
  width: 30px;
}

#top_carousell .slick-prev {
  left: 1%;
}

#top_carousell .slick-next {
  right: 1%;
}

@media screen and (max-width: 768px) {
  #osechi2027 .slick-track:before,
#osechi2027 .slick-track:after {
    display: block;
  }
  #osechi2027 .slick-prev,
#osechi2027 .slick-next {
    width: min(5vw, 2rem);
    height: min(5vw, 2rem);
  }
  #osechi2027 .slick-next {
    right: max(-7.5vw, -3rem);
  }
  #osechi2027 .slick-prev {
    left: max(-7.5vw, -3rem);
  }
  .slick-prev:before,
.slick-next:before {
    width: 100%;
    height: 100%;
  }
}
/*---------------------------
絞り込みカラム調整
---------------------------*/
#control .control_drop {
  grid-template-columns: repeat(3, 1fr);
}

#control .control_flex ul {
  grid-template-columns: auto;
}

#control .control_drop .control_flex ul {
  transform: translate(0);
  visibility: visible;
  opacity: 1;
}

@media screen and (max-width: 768px) {
  #control .control_flex ul li a {
    font-size: min(5vw, 1.3rem);
    padding: 0.5rem 1rem;
  }
}
/*# sourceMappingURL=top.css.map */