/* variant */
:root {
  --vw: 1vw;
  --mediaSp: 750;
  --color_site_bg: #2eacb9;
  --color_bg: #ffffff;
  --color_fashion: #ea4b62;
  --color_goods: #484b9b;
  --color_life: #cac63f;
  --color_beauty: #569c7f;
  --color_food: #f5ad38;
  --color_fuku: #e62f28;
}
/* variant */

/* font */
.akshar {
  font-family: "Akshar", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}
.notosans {
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans","Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-weight: 400;
  font-weight: 700;
  font-style: normal;
}
/* font */

body {
  position: relative;
  background-color: var(--color_site_bg);
}
.bg-layer {
  overflow: hidden;
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  background: url(../img/bg_obj_pc.svg) no-repeat top center/ 2082px;
}
@media screen and (min-width:1281px) and (max-width:1800px) {
  .bg-layer {
    /* background: url(../img/bg_obj_sp.png) no-repeat center top/cover; */
    background: 
      url(../img/bg_obj_tb.svg) top center / 1800px auto no-repeat;
  }
}
@media screen and (min-width:751px) and (max-width:1280px) {
  .bg-layer {
    /* background: url(../img/bg_obj_sp.png) no-repeat center top/cover; */
    background: 
      url(../img/bg_obj_tb_1200.svg) top center / 100% auto no-repeat;
  }
}
@media screen and (max-width:750px) {
  .bg-layer {
    /* background: url(../img/bg_obj_sp.png) no-repeat center top/cover; */
    background: 
      url(../img/bg_obj_head_sp.svg) top center / 100% auto no-repeat;
  }
  .bg-layer::before{
    content: "";
    position: absolute;
    top: 76vw;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    width: 100%;
    aspect-ratio: 1 / 11.25866;
    background: url(../img/bg_obj_repeat_sp.svg) top center / 100% auto repeat-y;
  }
  .bg-layer::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -11.6vw;
    display: block;
    width: 100%;
    aspect-ratio: 1 / 0.52;
    background: url(../img/bg_obj_foot_sp.svg) top center / 100% auto no-repeat;
  }
}

/* base */
.container {
  display: grid;
}
@media (min-width:751px) {
  .container {
    grid-template-columns: minmax(20px, 1fr) minmax(711px, 1000px)  minmax(20px, 1fr);
  }
}
@media (max-width: 750px) {
  .container {
    grid-template-columns: 1fr calc((( 670 / var(--mediaSp)) * 100) * var(--vw)) 1fr;
  }
}

/* header */
#header {
  grid-column: 2 / 3;
}
#header hgroup {
  text-align: center;
}
.head_ttl {
  user-select: none;
}
.head_txt {
  margin-inline: auto;
  text-align: center;
  user-select: none;
}
@media (min-width: 1281px) {
  .head_ttl-wrap {
    width: min(80.63%, 806px);
    margin-inline: auto;
    padding-block: 130px 46px;
  }
  .head_ttl {
    margin: 0;
  }
  .head_txt {
    margin-block-start: 60px;
    width: min(663px, 82.258%);
  }
}
@media (min-width: 751px) and (max-width: 1280px) {
  .head_ttl-wrap {
    width: min(62.969vw, 806px);
    margin-inline: auto;
    padding-block: 10.156vw 3.593vw;
  }
  .head_ttl {
    margin: 0;
  }
  .head_txt {
    margin-block-start: 4.6875vw;
    width: min(663px, 51.797vw);
  }
}
@media screen and (max-width: 750px) {
  .head_ttl-wrap {
    padding-block: calc((172 / var(--mediaSp)) * 100vw) calc((88 / var(--mediaSp)) * 100vw);
    width: 100%;
  }
  .head_ttl {
    margin: 0 auto;
    width: 97.541%;
  }
  .head_txt {
    margin-block-start: calc((58 / var(--mediaSp)) * 100vw);
    width: 71.6vw;
  }
}
/* header */

/* nav */
#nav {
  margin-block-end: 20px;
  padding-block: 26px 39px;
  background-color: var(--color_bg);
  grid-column: 2 / 3;
  z-index: 100;
}
.nav_ttl-wrap {
  margin-block-end: 24px;
}
.nav_ttl {
  font-size: 17px;
  font-weight: 400;
  letter-spacing: 0.12em;
  text-align: center;
}
.nav {
  padding-inline: 65px;
}
/* .nav_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.nav_list-item {
  width: min(280px, 32.183%);
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
} */
.nav_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  align-items: start;
  justify-content: space-between;
  gap: 14px;
}
.nav_list-item {
  width: min(280px, 100%);
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}
.nav_list-item a {
  display: inline-block;
  padding-block: 11.5px;
  width: 100%;
}
.nav_list-item.nav-fashion a {
  background-color: var(--color_fashion);
}
.nav_list-item.nav-goods a {
  background-color: var(--color_goods);
}
.nav_list-item.nav-life a {
  background-color: var(--color_life);
}
.nav_list-item.nav-beauty a {
  background-color: var(--color_beauty);
}
.nav_list-item.nav-food a {
  background-color: var(--color_food);
}
.nav_list-item.nav-fuku a {
  background-color: var(--color_fuku);
}
@media (min-width:1001px) {
  /* .nav_list {
    row-gap: 14px;
  } */
  .nav_list-item {
    letter-spacing: 0.12em;
  }
}
@media screen and (max-width: 1000px) {
  #nav {
    margin-block-end: 1.111vw;
    padding-block: 1.444vw 2.167vw;
  }
  .nav_ttl-wrap {
    margin-block-end: 1.333vw;
  }
  .nav_ttl {
    font-size: 1.7vw;
  }
  .nav {
    padding-inline: 3.611vw;
  }
  .nav_list {
    gap: 1.346vw;
  }
  .nav_list-item {
    /* width: 32.183%; */
    color: #fff;
  }
  .nav_list-item a {
    display: inline-block;
    padding-block: 1.105vw;
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  #nav {
    position: sticky;
    top: 0;
    margin-block-end: calc((30 / var(--mediaSp)) * 100vw);
    padding-block: calc((23 / var(--mediaSp)) * 100vw)
      calc((29 / var(--mediaSp)) * 100vw);
  }
  .nav_ttl-wrap {
    margin-block-end: calc((24 / var(--mediaSp)) * 100vw);
  }
  .nav_ttl {
    font-size: calc((20 / var(--mediaSp)) * 100vw);
  }
  .nav {
    padding-inline: calc((30 / var(--mediaSp)) * 100vw);
  }
  .nav_list-item {
    /* width: 32.295%; */
    font-size: calc((( 20 / var(--mediaSp)) * 100) * var(--vw));
    letter-spacing: 0.12em;
  }
  .nav_list-item a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    padding-block: calc((7 / var(--mediaSp)) * 100vw);
  }
  .nav_list-item.nav-beauty a span {
    /* position: absolute; */
    /* inset: 0; */
    margin: auto;
    display: block;
    width: 110%;
    height: 100%;
    transform: scaleX(0.9);
    transform-origin: left;
    letter-spacing: 0.05em;
    /* white-space: nowrap; */
  }
}
/* nav */

#main {
  grid-column: 2 / 3;
}
.section {
  position: relative;
}
.sec_ttl {
  color: #fff;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.12em;
}
.list-wrap ul {
  width: 100%;
  display: grid;
  list-style: none;
  box-sizing: border-box;
  border-top: 1px solid;
}
.list-item > a {
  display: grid;
  align-items: stretch;
  width: 100%;
  height: 100%;
}
.list_thum-wrap {
  grid-column: 1 / 2;
  background-color: #fff;
  box-sizing: border-box;
  border-left: 1px solid;
  border-bottom: 1px solid;
  aspect-ratio: 1 / 1;  
  display: grid;
  place-items: center;
  overflow: hidden;
  height: 100%;
}
.list_txt-wrap {
  grid-column: 2 / 3;
  border-left: 1px solid;
  border-bottom: 1px solid;
  box-sizing: border-box;
}
.list_ttl {
  font-weight: 300;
  letter-spacing: 0.07em;
}
.list_ttl.fw400 {
  font-weight: 400;
  letter-spacing: 0.06em;
}
.list_ttl:has(.long) {
  white-space: nowrap;
}
.list_ttl .long {
  display: inline-block;
  width: 88%;
  transform: scaleX(0.9);
  transform-origin: left;
}
.list_price {
  color: #e3332b;
  font-family: "Akshar", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  letter-spacing: 0.015em;
}
.list_price .small {
  font-size: 0.65em;
  letter-spacing: 0.05em;
}
.list_price .desc {
  display: inline-block;
  color: #000;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: 400;
  letter-spacing: 0.06em;
  vertical-align: middle;
}
.list_price .desc .date {
  display: inline-block;
  color: #000;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: 400;
  letter-spacing: 0.06em;
}
.list_price .exception {
  margin-left: 0.5em;
  display: inline-block;
  color: #000;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: 400;
  letter-spacing: 0.06em;
}
.list_price .sale {
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: bold;
  letter-spacing: 0.06em;
}
.grid-inner .list_price {
  display: flex;
  justify-content: space-between;
}
.list_price-excp .exception {
  margin-left: 0.5em;
  display: inline-block;
  color: #000;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: 400;
  letter-spacing: 0.06em;
}
.list_notes {
  display: inline-block;
  color: #e2332b;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media (min-width:1001px) {
  .section {
    margin-bottom: 40px;
  }
  .sec-inner {
    padding: 30px;
  }
  .sec_ttl-wrap {
    margin-block-end: 14px;
    padding-block: 12.5px;
  }
  .sec_ttl {
    font-size: 23px;
  }
  .list-wrap ul {
    grid-template-columns: repeat(2, 1fr);
  }
  .list-item > a {
    grid-template-columns: 1fr 3.7fr;
  }
  .list_thum-wrap {
    max-width: 100px;
  }
  .list_txt-wrap {
    position: relative;
  }
  .list-wrap ul > .list-item:nth-child(even) .list_txt-wrap {
    border-right: 1px solid;
  }
  .list-item:nth-child(odd).list-item:last-child .list_txt-wrap::before {
    content: "";
    position: absolute;
    z-index: 0;
    width: 369px;
    height: 100px;
    border-right: 1px solid var(--color_beauty);
    user-select: none;
  }
  .list_ttl-wrap {
    padding-block: 12px 9px;
    border-bottom: 1px solid #cbc9ca;
    max-width: 368px;
  }
  .list_ttl {
    margin-left: 0.8em;
    font-size: 13px;
    line-height: 1;
  }
  .list_price-wrap {
    padding-block: 10px 8px;
  }
  .list_price {
    margin-left: 10px;
    font-size: 40px;
  }
  .list_price .small-small {
    font-size: 10px;
  }
  .list_price .desc {
    margin-right: 4px;
    font-size: 12px;
    line-height: 1;
  }
  .list_price .desc .date {
    font-size: 13px;
    line-height: 1.461;
  }
  .list_price .sale {
    font-size: 27px;
  }
  .grid-inner .list_price {
    margin-left: 13px;
  }
  .grid-inner .list_price-wrap {
    padding-block: 14px;
  }
  .list_price .exception {
    font-size: 10px;
    line-height: 1;
  }
  .list_price-excp .exception {
    font-size: 10px;
    line-height: 1;
  }
  .list_notes {
    margin-left: 10px;
    font-size: 15px;
    line-height: 1.466;
  }
}
@media (min-width:751px) and (max-width:1000px) {
  .section {
    margin-bottom: 2.885vw;
  }
  .sec-inner {
    padding: 2.885vw;
  }
  .sec_ttl-wrap {
    margin-block-end: 1.346vw;
    padding-block: 1.202vw;
  }
  .sec_ttl {
    font-size: 2.212vw;
  }
  .list-wrap ul {
    grid-template-columns: repeat(2, 50%);
  }
  .list-item > a {
    grid-template-columns: 21.276% 78.724%;
  }
  .list_thum-wrap {
    max-width: calc( 9.61538 * var(--vw));
  }
  .list_txt-wrap {
    position: relative;
  }
  .list-wrap ul > .list-item:nth-child(even) .list_txt-wrap {
    border-right: 1px solid;
  }
  .list-item:nth-child(odd).list-item:last-child .list_txt-wrap::before {
    content: "";
    position: absolute;
    /* width: calc(100% + 1px); */
    width: 100%;
    height: calc(100% + 1px);
    border-right: 1px solid;
  }
  .list_ttl-wrap {
    padding-block: 1.058vw 0.673vw;
    border-bottom: 1px solid #cbc9ca;
  }
  .list_ttl {
    margin-left: 0.8em;
    font-size: 1.25vw;
  }
  .list_price-wrap {
    padding-block: 0.962vw 0.481vw;
  }
  .list_price {
    margin-left: 0.962vw;
    font-size: 3.846vw;
  }
  .list_price .small-small {
    font-size: 0.962vw;
  }
  .list_price .desc {
    font-size: 1.2vw;
    line-height: 1.375;
  }
  .list_price .desc .date {
    font-size: 1.25vw;
    line-height: 1.461;
  }
  .list_price .sale {
    font-size: 2.596vw;
  }
  .grid-inner .list_price {
    margin-left: 1.25vw;
  }
  .list_price .exception {
    font-size: 0.962vw;
    line-height: 1;
  }
  .list_price-excp .exception {
    font-size: 0.962vw;
    line-height: 1;
  }
  .list_notes {
    margin-left: 0.8em;
    font-size: 1.5vw;
    line-height: 1.466;
  }
}
@media (max-width:750px) {
  .section {
    margin-bottom: 20px;
  }
  .sec-inner {
    padding: calc((40 / var(--mediaSp)) * 100vw) calc((30 / var(--mediaSp)) * 100vw) calc((35 / var(--mediaSp)) * 100vw);
  }
  .sec_ttl-wrap {
    padding-block: calc((( 18 / var(--mediaSp)) * 100) * var(--vw));
  }
  .sec_ttl {
    font-size: calc((( 30 / var(--mediaSp)) * 100) * var(--vw));
  }
  .list-wrap {
    margin-top: calc((( 15 / var(--mediaSp)) * 100) * var(--vw));
  }
  .list-item > a {
    grid-template-columns: 21.311% 78.689%;
  }
  .list_thum-wrap {
    max-width: 100%;
    border-left: 1px solid;
  }
  .list_txt-wrap {
    max-width: 100%;
    border-right: 1px solid;
  }
  .list_ttl-wrap {
    padding-block: calc((( 15 / var(--mediaSp)) * 100) * var(--vw)) calc((( 10 / var(--mediaSp)) * 100) * var(--vw));
    border-bottom: 1px solid #cbc9ca;
  }
  .list_ttl {
    margin-left: calc((12 / var(--mediaSp)) * 100vw);
    /* font-size: max(10px, calc((16.8727 / var(--mediaSp)) * 100vw)); */
    font-size: calc((16.8727 / var(--mediaSp)) * 100vw);
  }
  .list_price-wrap {
    padding-block: calc((14 / var(--mediaSp)) * 100vw) calc((5 / var(--mediaSp)) * 100vw);
  }
  .list_price {
    margin-left: calc((12 / var(--mediaSp)) * 100vw);
    font-size: calc((51 / var(--mediaSp)) * 100vw);
  }
  .list_price .small-small {
    font-size: calc((13 / var(--mediaSp)) * 100vw);
  }
  .list_price .desc {
    margin-top: calc((-8 / var(--mediaSp)) * 100vw);
    margin-right: calc((4 / var(--mediaSp)) * 100vw);
    font-size: calc((15.587 / var(--mediaSp)) * 100vw);
    letter-spacing: 0.12em;
  }
  .list_price .desc .date {
    font-size: calc((( 16.9 / var(--mediaSp)) * 100vw));
    line-height: 1.461;
  }
  .list_price .exception,
  .list_price-excp .exception {
    font-size: calc((( 13 / var(--mediaSp)) * 100) * var(--vw));
  }
  .list_price .sale {
    font-size: calc((( 35.1 / var(--mediaSp)) * 100) * var(--vw));
  }
  .grid-inner .list_price {
    margin-left: 1.25vw;
  }
  .list_notes {
    margin-left: 0.6em;
    font-size: calc((( 19.477/ var(--mediaSp)) * 100) * var(--vw));
    line-height: 1.466;
  }
}

/* fashion */
.fashion-inner {
  background-color: var(--color_bg);
}
.fashion .sec_ttl-wrap {
  background-color: var(--color_fashion);
  opacity: 1;
}
.fashion .list-wrap ul {
  border-color: var(--color_fashion)!important;
}
.fashion_list-item {
  background-color: #f7eef2;
}
.fashion .list_thum-wrap {
  border-color: var(--color_fashion)!important;
}
.fashion .list_txt-wrap {
  border-color: var(--color_fashion)!important;
}
.fashion .list-item:nth-child(odd) .fashion_list_thum-wrap {
  border-left: 1px solid var(--color_fashion);
}
.fashion .list-item:last-child .list_txt-wrap::before {
  border-color: var(--color_fashion)!important;
}
.fashion .list_price .small.zenpin {
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: 900;
  margin-right: 0.5em;
}
@media (min-width:1001px) {
  .fashion_list-inner .grid-inner-row-1-1 {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
  }
  .fashion_list-inner .grid-inner-row-1-2 {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
  }
  .fashion_list-item.grid-inner-row-2 {
    grid-column: 2 / 3;
    grid-row: 3 / 4;
  }
  .fashion_list-item.grid-inner-row-2 .list_price {
    width: 272px;
    margin-top: -6px;
  }
  /* .fashion_list-item.grid-inner-row-2 .list_price-wrap > * + * {
    margin-top: -12px;
  } */
  .fashion_list-item.grid-inner-row-2 .list_price-excp {
    margin-top: -6px;
    margin-left: 14px;
  }
  .fashion_list-item.grid-inner-row-2 .list_price .desc-inner {
    position: relative;
    /* left: -12px; */
    left: -110px;
    padding-top: 22px;
  }
  .fashion .list_price .small.zenpin {
    font-size: 21px;
  }
}
@media (min-width: 751px) and (max-width: 1000px) {
  .fashion_list-inner .grid-inner-row-1-1 {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
  }
  .fashion_list-inner .grid-inner-row-1-2 {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
  }
  .fashion_list-item.grid-inner-row-2 {
    grid-column: 2 / 3;
    grid-row: 3 / 4;
  }
  .fashion_list-item.grid-inner-row-2 .list_price {
    width: 28.333vw;
    margin-top: -0.625vw;
  }
  /* .fashion_list-item.grid-inner-row-2 .list_price-wrap > * + * {
    margin-top: -1.25vw;
  } */
  .fashion_list-item.grid-inner-row-2 .list_price-excp {
    margin-top: -0.625vw;
    margin-left: 1.458vw;
  }
  .fashion_list-item.grid-inner-row-2 .list_price .desc-inner {
    position: relative;
    /* left: -1.153vw; */
    left: -12.307vw;
    padding-top: 2.292vw;
  }
  .fashion .list_price .small.zenpin {
    font-size: 2.019vw;
  }
}
@media  (max-width: 750px) {
  .fashion_list-item.grid-inner-row-2 .list_price {
    width: calc((( 364 / var(--mediaSp)) * 100) * var(--vw));
    /* margin-top: calc((( -7.8 / var(--mediaSp)) * 100) * var(--vw)); */
    margin-left: calc((( 17 / var(--mediaSp)) * 100) * var(--vw));
  }
  .fashion_list-item.grid-inner-row-2 .list_price:first-child {
    margin-top: calc((( -10 / var(--mediaSp)) * 100) * var(--vw));
  }
  .fashion_list-item.grid-inner-row-2 .list_price-wrap > * + * {
    margin-top: calc((( 10 / var(--mediaSp)) * 100) * var(--vw));
  }
  .fashion_list-item.grid-inner-row-2 .list_price-wrap {
    padding-block: calc((( 31 / var(--mediaSp)) * 100) * var(--vw)) calc((( 20 / var(--mediaSp)) * 100) * var(--vw));
  }
  .fashion_list-item.grid-inner-row-2 .list_price-excp {
    margin-top: calc((( -3 / var(--mediaSp)) * 100) * var(--vw));
    margin-left: calc((( 14 / var(--mediaSp)) * 100) * var(--vw));
  }
  .fashion_list-item.grid-inner-row-2 .list_price .desc-inner {
    position: relative;
    /* left: calc((( -14 / var(--mediaSp)) * 100) * var(--vw)); */
    left: calc((( -158 / var(--mediaSp)) * 100) * var(--vw));
    padding-top: calc((( 15 / var(--mediaSp)) * 100) * var(--vw));
  }
  .fashion .list_price .small.zenpin {
    font-size: calc((( 27.3 / var(--mediaSp)) * 100) * var(--vw));
  }
}
/* fashion */

/* goods */
.goods-inner {
  background-color: var(--color_bg);
}
.goods .sec_ttl-wrap {
  background-color: var(--color_goods);
}
.goods .list-item {
  background-color: #eff1f5;
}
.goods .list-wrap ul {
  border-color: var(--color_goods)!important;
}
.goods .list_thum-wrap,
.goods .list_txt-wrap {
  border-color: var(--color_goods)!important;
}
.goods .list-item:nth-child(odd).list-item:last-child .list_txt-wrap::before {
  border-color: var(--color_goods)!important;
}
@media screen and (max-width: 750px) {
  .goods_ttl-wrap {
    margin-block-end: calc((14 / var(--mediaSp)) * 100vw);
    padding-block: calc((18 / var(--mediaSp)) * 100vw);
  }
  .goods_ttl {
    font-size: calc((30 / var(--mediaSp)) * 100vw);
  }
  .goods_list-wrap ul {
    grid-template-columns: 1fr;
  }
  .goods_list_thum-wrap {
    height: calc((130 / var(--mediaSp)) * 100vw);
    border-right: 1px solid var(--color_goods);
    border-bottom: 1px solid var(--color_goods);
    border-left: 1px solid var(--color_goods);
    box-sizing: border-box;
  }
  .goods_list_thum-wrap img {
    width: calc((108 / var(--mediaSp)) * 100vw);
    height: auto;
  }
  .goods_list_txt-wrap {
    height: calc((130 / var(--mediaSp)) * 100vw);
    grid-column: 2 / 3;
    border-right: 1px solid var(--color_goods);
    border-bottom: 1px solid var(--color_goods);
    box-sizing: border-box;
  }
  .goods_list-item:nth-child(0) .goods_list_txt-wrap,
  .goods_list-item:nth-child(0) .goods_list_thum-wrap {
    border-top: 1px solid var(--color_goods);
  }
  .goods_list-item:nth-child(2) .goods_list_txt-wrap,
  .goods_list-item:nth-child(2) .goods_list_thum-wrap {
    border-top: none;
  }
  .goods_list_price-wrap {
    padding-block: calc((14 / var(--mediaSp)) * 100vw)
      calc((5 / var(--mediaSp)) * 100vw);
  }
  .goods_list_price {
    margin-left: calc((14 / var(--mediaSp)) * 100vw);
    font-size: calc((51 / var(--mediaSp)) * 100vw);
  }
  .goods_list_price-small-small {
    font-size: calc((13 / var(--mediaSp)) * 100vw);
  }
  .goods_list_price-desc {
    margin-top: calc((-14 / var(--mediaSp)) * 100vw);
    margin-right: calc((10 / var(--mediaSp)) * 100vw);
    vertical-align: middle;
    font-size: calc((20 / var(--mediaSp)) * 100vw);
  }
}
/* goods */

/* life */
.life-inner {
  background-color: var(--color_bg);
}
.life .sec_ttl-wrap {
  background-color: var(--color_life);
}
.life_list-wrap ul {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 470px);
  list-style: none;
}
.life .list-wrap ul {
  border-color: var(--color_life)!important;
}
.life .list_thum-wrap,
.life .list_txt-wrap {
  border-color: var(--color_life)!important;
}
.life .list_txt-wrap {
  background-color: #fafaf3;
}
.life_list-item:nth-child(3) .life_list_price-desc {
  margin-right: 0;
}

/* shop channel style */
.list-item.list-item-row3 {
  max-height: fit-content;
}
.life_list_price-inner {
  padding-block: 0;
  display: flex;
  justify-content: space-between;
}
.life .list-item:last-child .list_txt-wrap::before {
  border-color: var(--color_life)!important;
}
@media (min-width:1001px) {
  .life_list-wrap ul {
    grid-template-columns: repeat(2, 470px);
  }
  .list-item.list-item-row3 .list_thum-wrap {
    width: 100px;
    display: grid;
    place-content: center;
  }
  .life_list-item.grid-inner-row-3 {
    max-height: fit-content;
    grid-column: 1 / 2;
    grid-row: 1 / 4;
  }
  .life_list-item.grid-inner-row-3 .list_price {
    width: 333px;
  }
  .life_list-item.grid-inner-row-3 .list_price .desc-inner {
    padding-top: 2px;
  }
  .life_list-item.grid-inner-row-3 .list_price-wrap > * + * {
    margin-top: 10px;
  }
  .life_list-item.grid-inner-row-3 .list_price-excp {
    margin-top: -8px;
    margin-right: 23px;
    text-align: right;
  }
  .life_list-inner.flex-wrap {
    grid-column: 2 / 3;
    grid-row: 1 / 4;
    border-right: 1px solid var(--color_life);
  }
  .list-item.list-item-row3:nth-child(odd).list-item:last-child .list_txt-wrap::before {
    border-color: var(--color_life);
  }
  .life_list-inner.flex-wrap .list_txt-wrap {
    border-right: 1px solid var(--color_life);
  }
  .life_list-inner.flex-wrap .list-item:nth-child(odd).list-item:last-child .list_txt-wrap::before {
    border-right: none;
  }
}
@media (min-width:751px) and (max-width: 1000px) {
  .list-item.list-item-row3 .list_thum-wrap {
    width: 9.615vw;
    display: grid;
    place-content: center;
  }
  .life_list-item.grid-inner-row-3 {
    max-height: fit-content;
    grid-column: 1 / 2;
    grid-row: 1 / 4;
  }
  .life_list-item.grid-inner-row-3 .list_price {
    width: 32.019vw;
  }
  .life_list-item.grid-inner-row-3 .list_price .desc-inner {
    padding-top: 0.192vw;
  }
  .life_list-item.grid-inner-row-3 .list_price-wrap > * + * {
    margin-top: 0.962vw;
  }
  .life_list-item.grid-inner-row-3 .list_price-excp {
    margin-top: -0.769vw;
    margin-right: 2.212vw;
    text-align: right;
  }
  .life_list-inner.flex-wrap {
    grid-column: 2 / 3;
    grid-row: 1 / 4;
    border-right: 1px solid var(--color_life);
  }
  .list-item.list-item-row3:nth-child(odd).list-item:last-child .list_txt-wrap::before {
    border-color: var(--color_life);
  }
  .life_list-inner.flex-wrap .list_txt-wrap {
    border-right: 1px solid var(--color_life);
  }
  .life_list-inner.flex-wrap .list-item:nth-child(odd).list-item:last-child .list_txt-wrap::before {
    border-right: none;
  }
}
@media (max-width:750px) {
  .life_list-item.grid-inner-row-3 .list_price-wrap {
    padding-block: calc((( 28 / var(--mediaSp)) * 100) * var(--vw)) calc((( 25 / var(--mediaSp)) * 100) * var(--vw));
  }
  .life_list-item.grid-inner-row-3 .list_price-wrap > * + * {
    margin-top: calc((( 21 / var(--mediaSp)) * 100) * var(--vw));
  }
  .life_list-item.grid-inner-row-3 .list_price {
    width: calc((( 432 / var(--mediaSp)) * 100) * var(--vw));
    margin-left: calc((( 17 / var(--mediaSp)) * 100) * var(--vw));
  }
  .life_list-item.grid-inner-row-3 .list_price .desc-inner {
    margin-top: calc((( -5 / var(--mediaSp)) * 100) * var(--vw));
  }
  .life_list-item.grid-inner-row-3 .list_price-excp {
    margin-top: calc((( -6 / var(--mediaSp)) * 100) * var(--vw));
    margin-right: calc((( 29 / var(--mediaSp)) * 100) * var(--vw));
    text-align: right;
  }
}
/* shop channel style */

/* life */

/* beauty */
.beauty-inner {
  background-color: var(--color_bg);
}
.beauty .sec_ttl-wrap {
  background-color: var(--color_beauty);
}
.beauty .list-wrap ul {
  border-color: var(--color_beauty)!important;
}
.beauty .list_thum-wrap,
.beauty .list_txt-wrap {
  border-color: var(--color_beauty)!important;
}
.beauty .list_txt-wrap {
  background-color: #eef5f0;
}

.beauty .list-item:nth-child(odd).list-item:last-child .list_txt-wrap::before {
  border: none;
}
@media (min-width:1001px) {
  .beauty .list_price .desc-inner {
    display: inline-block;
    margin-left: 5px;
  }
  .beauty .list-wrap ul {
    border: none;
  }
  .beauty .list-item {
    grid-column: 1 / 2;
    border-top: 1px solid var(--color_beauty);
    border-right: 1px solid var(--color_beauty);
  }
}
@media (min-width:751px) and (max-width: 1000px) {
  .beauty .list_price .desc-inner {
    display: inline-block;
    margin-left: 0.481vw;
  }
  .beauty .list-wrap ul {
    border: none;
  }
  .beauty .list-item {
    grid-column: 1 / 2;
    border-top: 1px solid var(--color_beauty);
    border-right: 1px solid var(--color_beauty);
  }
}

@media screen and (max-width: 750px) {
  .beauty .list_price .desc-inner {
    display: inline-block;
    margin-left: calc((( 5 / var(--mediaSp)) * 100) * var(--vw));
  }
}
/* beauty */

/* food */
.food-inner {
  background-color: var(--color_bg);
}
.food .sec_ttl-wrap {
  background-color: var(--color_food);
}
.food .list-wrap ul {
  border-color: var(--color_food)!important;
}
.food .list-item {
  background-color: #faf6ec;
  border-color: var(--color_food)!important;
}
.food .list_thum-wrap {
  border-color: var(--color_food)!important;
}
.food .list_txt-wrap {
  border-color: var(--color_food)!important;
}
.food .list_price .yen {
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: bold;
}
@media (min-width:1001px) {
  .food .list-wrap ul {
    grid-template-columns: repeat(2, 470px);
    border: none;
  }
  .food .list-item {
    grid-column: 1 / 2;
    border-top: 1px solid var(--color_food);
    border-right: 1px solid var(--color_food);
  }
  .food .list-item:nth-child(odd).list-item:last-child .list_txt-wrap::before {
    border: none;
  }
  .food .list_price .yen {
    font-size: 22px;
    letter-spacing: 0.06em;
  }
  .food .list_price .desc-inner {
    display: inline-block;
    margin-left: 10px;
  }
}
@media (min-width:751px) and (max-width: 1000px) {
  .food .list-wrap ul {
    grid-template-columns: repeat(2, 1fr);
    border: none;
  }
  .food .list-item {
    grid-column: 1 / 2;
    border-top: 1px solid var(--color_food);
    border-right: 1px solid var(--color_food);
  }
  .food .list-item:nth-child(odd).list-item:last-child .list_txt-wrap::before {
    border: none;
  }
  .food .list_price .yen {
    font-size: 2.115vw;
    letter-spacing: 0.06em;
  }
  .food .list_price .desc-inner {
    display: inline-block;
    margin-left: 0.962vw;
  }
}
@media screen and (max-width: 750px) {
  .food .list_price .desc {
    letter-spacing: 0.05em;
    line-height: 1.375;
  }
  .food .list_price .yen {
    font-size: calc((( 28.6 / var(--mediaSp)) * 100) * var(--vw));
    letter-spacing: 0.06em;
  }
  .food .list_price .desc-inner {
    display: inline-block;
    margin-left: calc((( 10 / var(--mediaSp)) * 100) * var(--vw));
  }
}
/* food */

/* section notes */
.section_notes {
  position: absolute;
  right: 0;
  z-index: 1;
  margin-inline: auto;
  max-width: 1000px;
  text-align: right;
  color: #fff;
  text-shadow: 0 0 0 #3db6c4;
}
.section_notes::after {
  content: "※一部除外品あり";
  display: block;
  font: inherit;
  position: absolute;
  z-index: -1;
  inset: 0;
  margin: auto;
  color: #3db6c4;
  text-stroke: 1px #3db6c4;
  -webkit-text-stroke: 1px #3db6c4;
}
@media screen and (min-width:751px) {
  .section_notes {
    margin-top: 10px;
    font-size: 10px;
    line-height: 1;
    letter-spacing: 0.06em;
  }
}
@media screen and (max-width:750px) {
  .section_notes {
    position: relative;
    margin-top: 10px;
    font-size: 10px;
    line-height: 1;
    letter-spacing: 0.06em;
  }
  .section_notes::after {
    text-stroke: 0.266vw #3db6c4;
    -webkit-text-stroke: 0.266vw #3db6c4;
  }
}
/* section notes */


/* banner */
#banner {
  grid-column: 2 / 3;
}
.banner_item-wrap,
.banner-inner.fuku {
  background-color: #fff;
  position: relative;
}
.banner_item-wrap::before,
.banner-inner.fuku::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 3px solid #fff;
  box-sizing: border-box;
  user-select: none;
  pointer-events: none;
}
@media (min-width:751px) {
  #banner {
    margin-top: 118px;
    margin-bottom: 56px;
  }
  .banner-inner.flex-wrap {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
  }
  .banner_item-wrap {
    width: min(480px, 48%);
  }
}
@media (max-width: 750px) {
  #banner {
    margin-top: calc((80 / var(--mediaSp)) * 100vw);
    margin-bottom: calc((22 / var(--mediaSp)) * 100vw);
  }
  .banner-inner.flex-wrap {
    margin-top: calc((30 / var(--mediaSp)) * 100vw);
  }
  .banner-inner {
    display: block;
  }
  .banner_item-wrap {
    width: 100%;
  }
  .banner_banner02-wrap {
    margin-top: calc((30 / var(--mediaSp)) * 100vw);
  }
}
/* banner */

/* fixed button */
.fixed_btn-wrap {
  justify-self: end;
  width: 60px;
  height: 60px;
  background-color: #fff;
  transition: opacity 0.3s;
  position: sticky;
  bottom: 0;
  left: 0;
  z-index: 10;
}
.fixed_btn {
  padding: 0;
  border: none;
  outline: none;
  background: none;
  display: block;
  width: 60px;
  height: 60px;
  cursor: pointer;
}
.fixed_btn:hover {
  opacity: 1;
}
@media screen and (min-width:1120px) {
  .fixed_btn-wrap {
    grid-column: 2 / 3;
    grid-row: 4 / 5;
    translate: 100% 0;
  }
}
@media screen and (min-width:751px) and (max-width:1119px) {
  .fixed_btn-wrap {
    grid-column: 2 / 3;
    grid-row: 4 / 5;
  }
}
@media screen and (max-width: 750px) {
  .fixed_btn-wrap {
    grid-column: 1 / 4;
    grid-row: 4 / 5;
    width: calc((90 / var(--mediaSp)) * 100vw);
    width: calc((120 / var(--mediaSp)) * 100vw);
    height: calc((90 / var(--mediaSp)) * 100vw);
    height: calc((120 / var(--mediaSp)) * 100vw);
    opacity: 0;
  }
  .fixed_btn-wrap.js-is-active {
    opacity: 1;
  }
  .fixed_btn {
    width: calc((120 / var(--mediaSp)) * 100vw);
    height: calc((120 / var(--mediaSp)) * 100vw);
  }
}
/* fixed button */

.foot_lnks {
  grid-column: 2 / 3;
  grid-row: 4 / 5;
  width: fit-content;
  margin-inline: auto;
  align-self: center;
}
.foot_lnks ul {
  display: flex;
  justify-content: space-between;
}
.foot_lnks ul > * + * {
  border-left: 1px solid #fff;
}
.foot_lnk {
  line-height: 1;
  color: #fff;
}
@media screen and (min-width:751px) {
  .foot_lnks {
    margin-top: -12px;
    align-self: start;
  }
  .foot_lnk {
    padding-inline: 1em;
    font-size: 11.5px;
    line-height: 2.26;
  }
}
@media screen and (max-width:750px) {
  .foot_lnk {
    padding-inline: 1em;
    font-size: 7.5px;
    font-size: max(1.533vw, 7.5px);
    line-height: 2;
  }
}
@media screen and (max-width:320px) {
  .foot_lnk {
    font-size: 6.5px;
  }
}

#footer {
  grid-column: 1 / 4;
  display: grid;
  grid-template-columns: 1fr 1000px 1fr;
  background-color: #0000004d;
}
.foot-inner {
  padding-block: 23px 28px;
  grid-column: 2 / 3;
  text-align: center;
}
.foot_txt-wrap {
  margin-bottom: 18px;
}
.foot_txt {
  color: #fff;
  font-size: 19px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.foot_logo_ttl {
  margin: 0 auto;
  width: 285px;
}
.foot_logo_cap {
  color: #fff;
  margin-top: -5px;
  font-size: 10px;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: right;
}
.foot_logo_cap:nth-of-type(3) {
  margin-top: 4px;
}
@media screen and (max-width: 1000px) {
  #footer {
    grid-template-columns: 1fr 750px 1fr;
  }
  .foot-inner {
    padding-block: 1.278vw 1.556vw;
    grid-column: 2 / 3;
    text-align: center;
  }
  .foot_txt-wrap {
    margin-bottom: 1vw;
  }
  .foot_logo_ttl {
    margin: 0 auto;
    width: 15.833vw;
  }

  .foot_logo_cap:nth-of-type(3) {
    margin-top: 0.4vw;
  }
}
@media screen and (max-width: 750px) {
  #footer {
    grid-template-columns: 1fr calc((670 / var(--mediaSp)) * 100vw) 1fr;
  }
  .foot-inner {
    padding-block: calc((21 / var(--mediaSp)) * 100vw)
      calc((24 / var(--mediaSp)) * 100vw);
  }
  .foot_txt-wrap {
    margin-bottom: calc((14 / var(--mediaSp)) * 100vw);
  }
  .foot_txt {
    font-size: calc((17 / var(--mediaSp)) * 100vw);
  }
  .foot_logo_ttl {
    width: calc((257 / var(--mediaSp)) * 100vw);
  }
  .foot_logo_cap {
    margin-top: calc((19 / var(--mediaSp)) * 100vw);
    /* font-size: max(10px, calc((10 / var(--mediaSp)) * 100vw)); */
    font-size: calc((10 / var(--mediaSp)) * 100vw);
  }
  .foot_logo_cap:nth-of-type(3) {
    margin-top: calc((4 / var(--mediaSp)) * 100vw);
  }
}