@charset "utf-8";

#wrapper > main > ul   > li                       { list-style:disc; }
#wrapper > main > menu > li                       { display:grid; grid-template-areas:"item1 item2""item1 item3"; grid-template-columns:25% 1fr; column-gap:1.5rem; row-gap:1.5rem; padding:1.5rem; margin-bottom:1.25rem; background:#fff; border-radius:0.75rem; }
#wrapper > main > menu > li > a                   { grid-area:item1; }
#wrapper > main > menu > li > table               { grid-area:item2; }
#wrapper > main > menu > li > p                   { grid-area:item3; }
#wrapper > main > menu > li > a > img             { aspect-ratio:3 / 2; }
#wrapper > main > menu > li   table               { border-collapse:collapse; }
#wrapper > main > menu > li   tr                  { border-bottom:1px solid #ddd; }
#wrapper > main > menu > li   tr > th             { padding:0.25rem; font-weight:bold; white-space:nowrap; background:#ddd; }
#wrapper > main > menu > li   tr > td             { padding:0.25rem 0; }
#wrapper > main > menu > li   tr >  *:nth-child(1) { white-space:nowrap; padding-right:1rem; }
#wrapper > main > menu > li   tr >  *:nth-child(2) { width:100%; padding-right:1rem; border-left:2px solid #fff; border-right:2px solid #fff; }
#wrapper > main > menu > li   tr > td:nth-child(3) { white-space:nowrap; text-align:right; }

#wrapper > main > menu > li.sales_ended > a                              { opacity:0.2; pointer-events:none; }
#wrapper > main > menu > li.sales_ended tbody tr > td                    { text-decoration:line-through; }
#wrapper > main > menu > li.sales_ended tbody tr > td:nth-child(2):after { content:"（販売終了）"; }
#wrapper > main > menu > li.sales_ended > p                              { text-decoration:line-through; }

@media screen and (max-width:1024px)
{
  #wrapper > main > menu > li         { display:block; }
  #wrapper > main > menu > li > a     { margin-bottom:1.5rem; }
  #wrapper > main > menu > li > table { margin-bottom:1.5rem; }
}

@media print
{
  header                                            { display:none; }
  #wrapper.side_menu                                { display:block; background:#fff; }
  #wrapper.side_menu:before                         { content:none; }
  #wrapper.side_menu:after                          { content:none; }
  #wrapper.side_menu > nav                          { display:none; }
  #wrapper.side_menu > main > h1                    { margin:0; padding:1rem; font-size:1.5rem; color:#fff; background:#000; }
  #wrapper.side_menu > main > ul                    { margin:1rem 0 0 2rem; }
  #wrapper.side_menu > main > ul   > li:first-child { display:none; }
  #wrapper.side_menu > main > h2                    { margin: 2rem 0 1rem 1rem; font-size:1.2rem; }
  #wrapper.side_menu > main > menu                  { border-bottom:1px solid #000; break-after :page; }
  #wrapper.side_menu > main > menu > li             { border-top   :1px solid #000; break-inside:avoid; margin-bottom:0; border-radius:unset; }
  #wrapper.side_menu > main   .expansion:before     { content:none; }
  #wrapper.side_menu > main > address               { display:none; }
  footer                                            { display:none; }
}
