@charset "UTF-8";

@import "https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700;800&display=swap";
@media (min-width: 768px), print {
  .forSp {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  .forPc {
    display: none !important;
  }
}
.product__list {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -12px;
}
@media only screen and (max-width: 767px) {
  .product__list {
    margin: 0 -4.5px;
  }
}
.product__item {
  flex-basis: 16.6666666667%;
  margin: 0 0 40px;
  max-width: 16.6666666667%;
  padding: 0 12px;
}
@media only screen and (max-width: 767px) {
  .product__item {
    flex-basis: 33.3333333333%;
    margin-bottom: 20px;
    max-width: 33.3333333333%;
    padding: 0 4.5px;
  }
}
.product__text {
  color: #e60009;
  font-size: 16px;
  margin-top: 8px;
}
@media only screen and (max-width: 767px) {
  .product__text {
    font-size: 14px;
    margin-top: 12px;
  }
}
.product__price {
  font-size: 18px;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .product__price {
    font-size: 16px;
    font-weight: 400;
  }
}
.productList__item {
  border-bottom: 1px solid #ebebeb;
  display: flex;
  padding: 16px 0;
}
@media (min-width: 768px), print {
  .productList__item:first-of-type {
    border-top: 1px solid #ebebeb;
  }
}
.productList__checkboxArea {
  align-items: center;
  display: flex;
}
.productList .checkbox {
  padding-left: 24px;
}
.productList .checkbox:has(input:focus-visible) {
  outline: 1px auto #003894;
  outline-offset: 1px;
}
.productList__imageArea {
  flex-basis: 84px;
  margin-left: 12px;
}
@media (min-width: 768px), print {
  .productList__imageArea {
    flex-basis: 102px;
    margin-left: 24px;
  }
}
.productList__image {
  width: 100%;
}
.productList__detail {
  flex: 1;
  margin-left: 16px;
  max-width: 537px;
}
@media (min-width: 768px), print {
  .productList__detail {
    margin-left: 24px;
  }
}
.productList__category,
.productList__date,
.productList__price,
.productList__publisher,
.productList__text,
.productList__title {
  display: block;
  line-height: 1.5;
}
.productList__category {
  font-size: 14px;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .productList__category {
    font-size: 12px;
  }
}
.productList__title {
  font-size: 18px;
  margin-top: 4px;
}
@media only screen and (max-width: 767px) {
  .productList__title {
    font-size: 14px;
  }
}
.productList__publisher {
  color: #666;
  font-size: 14px;
  margin-top: 8px;
}
@media only screen and (max-width: 767px) {
  .productList__publisher {
    font-size: 12px;
    margin-top: 4px;
  }
}
.productList__priceText {
  font-size: 14px;
  text-align: right;
}
@media only screen and (max-width: 767px) {
  .productList__priceText {
    margin-right: 8px;
    margin-top: 4px;
  }
}
.productList__priceNum {
  color: #e60009;
  font-size: 18px;
  font-weight: 700;
  text-align: right;
}
@media only screen and (max-width: 767px) {
  .productList__priceNum {
    font-size: 16px;
    margin-top: 4px;
  }
}
.productList__price--disabled .productList__priceNum,
.productList__price--disabled .productList__priceText {
  color: #ccc !important;
}
@media (min-width: 768px), print {
  .productList__price {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: auto;
  }
  .productList__price--sp {
    display: none;
  }
  .productList__price--pc {
    display: flex;
  }
}
@media only screen and (max-width: 767px) {
  .productList__price {
    margin-top: 8px;
  }
  .productList__price--sp {
    display: block;
  }
  .productList__price--pc {
    display: none;
  }
}
.productList__release {
  color: #666;
  font-size: 13px;
  margin-top: 12px;
}
@media only screen and (max-width: 767px) {
  .productList__release {
    font-size: 12px;
    margin-top: 4px;
  }
}
.productList--addDelete .productList__item {
  position: relative;
}
.productList--addDelete .productList__publisher {
  margin-top: 4px;
}
.productList--addDelete .productList__priceText {
  display: inline-block;
}
.productList--addDelete .productList__price {
  display: block;
}
.productList--addDelete .productList__release {
  color: #666;
  display: block;
  font-size: 12px;
  margin-top: 4px;
}
.productList--addDelete .productList__button {
  background-image: url(/library/sell/common/svg/delete.svg);
  bottom: 8px;
  height: 24px;
  position: absolute;
  right: 0;
  width: 24px;
}
@media (min-width: 768px), print {
  .productList--addDelete .productList__button {
    right: 8px;
  }
}
.productList--addDelete .productList__button:focus-visible {
  outline: 1px auto #003894;
  outline-offset: 1px;
}
@media (min-width: 768px), print {
  .productList--nodata {
    border-top: 1px solid #ebebeb;
    padding-top: 16px;
  }
}
.productList--nodata .productList__nodataImage {
  display: block;
  margin-bottom: 18px;
  margin-left: auto;
  margin-right: auto;
  width: 74.6666666667vw;
}
@media (min-width: 768px), print {
  .productList--nodata .productList__nodataImage {
    margin-bottom: 16px;
    width: 420px;
  }
}
.productList--nodata .text + .productList__nodataImage {
  margin-top: 16px;
}
@media (min-width: 768px), print {
  .productList--nodata .text + .productList__nodataImage {
    margin-top: 24px;
  }
}
.productList__searchResults {
  font-family:
    "M PLUS Rounded 1c",
    sans-serif;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 16px;
}
@media (min-width: 768px), print {
  .productList__searchResults {
    margin-bottom: 0;
  }
}
.productList__searchNumber {
  font-family:
    "M PLUS Rounded 1c",
    sans-serif;
  font-size: 14px;
  padding: 16px 0;
  position: relative;
}
@media (min-width: 768px), print {
  .productList__searchNumber {
    padding: 14px 0 16px;
  }
}
.productList__searchNumber:after,
.productList__searchNumber:before {
  background-color: #ebebeb;
  content: "";
  height: 1px;
  left: -18px;
  position: absolute;
  width: calc(100% + 36px);
}
@media (min-width: 768px), print {
  .productList__searchNumber:after,
  .productList__searchNumber:before {
    content: none;
  }
}
.productList__searchNumber:before {
  top: 0;
}
.productList__searchNumber:after {
  bottom: 0;
}
.productList__total {
  align-items: center;
  border-bottom: 1px solid #ebebeb;
  display: flex;
  justify-content: space-between;
  padding-bottom: 8px;
  padding-top: 16px;
}
@media (min-width: 768px), print {
  .productList__total {
    padding-top: 24px;
  }
}
.productList__totalNumber {
  font-size: 18px;
}
.productList__totalAmount,
.productList__totalNumber {
  font-family:
    "M PLUS Rounded 1c",
    sans-serif;
  font-weight: 700;
}
.productList__totalAmount {
  color: #e60009;
  font-size: 24px;
}
.productList__nodataMessage {
  border-top: 1px solid #ebebeb;
  font-family:
    "M PLUS Rounded 1c",
    sans-serif;
  font-size: 14px;
  line-height: 22px;
  padding: 16px 0 48px;
}
@media only screen and (max-width: 767px) {
  .productList__nodataMessage {
    border: none;
    padding: 16px 0 22px;
  }
}
.floating {
  background-color: #fff;
  position: fixed;
  z-index: 20;
}
@media (min-width: 768px), print {
  .floating {
    border-radius: 6px 0 0 6px;
    bottom: 40px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
    right: -224px;
    transition: right 0.3s ease-in-out;
    width: 212px;
  }
  .floating.-show {
    right: 0;
  }
}
@media only screen and (max-width: 767px) {
  .floating {
    bottom: -72px;
    box-shadow: 0 -2px 6px rgba(0, 0, 0, 0.12);
    height: 64px;
    left: 0;
    right: 0;
    transition: bottom 0.3s ease-in-out;
    width: 100%;
  }
  .floating.-show {
    bottom: 0;
  }
}
.floating__inner {
  padding: 16px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .floating__inner {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: space-between;
    padding: 8px 18px;
  }
}
.floating__link {
  color: #003894;
  display: inline-block;
  font-size: 14px;
  margin-bottom: 12px;
  text-align: center;
  transition: opacity 0.25s;
}
.floating__link:hover {
  opacity: 0.65;
}
@media only screen and (max-width: 767px) {
  .floating__link {
    margin: 0;
  }
}
.floating__info {
  text-align: left;
}
.floating__total {
  font-size: 13px;
  margin-bottom: 12px;
}
@media only screen and (max-width: 767px) {
  .floating__total {
    margin: 0;
  }
}
.floating__amount {
  color: #e60009;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 13px;
}
@media only screen and (max-width: 767px) {
  .floating__amount {
    line-height: 1.2;
    margin: 0;
  }
}
.floating__button {
  background-color: #ef7000;
  border-radius: 50vh;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  padding: 10px;
  transition: opacity 0.25s;
  width: 100%;
}
.floating__button:hover {
  opacity: 0.65;
}
@media only screen and (max-width: 767px) {
  .floating__button {
    max-width: 203px;
  }
}
.genreNavi {
  padding: 24px 0 30px;
}
@media (min-width: 768px), print {
  .genreNavi {
    padding: 0;
  }
}
.genreNavi--mypage {
  padding: 16px 0 4px;
}
.genreNavi__head {
  border-bottom: 2px solid #003894;
  margin-bottom: 16px;
  padding-bottom: 8px;
}
@media only screen and (max-width: 767px) {
  .genreNavi__head {
    margin-bottom: 0;
  }
}
.genreNavi__title {
  font-family:
    "M PLUS Rounded 1c",
    sans-serif;
  font-size: 22px;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .genreNavi__title {
    font-size: 18px;
  }
}
.genreNavi__group + .genreNavi__group {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  .genreNavi__group + .genreNavi__group {
    margin-top: 0;
  }
}
.genreNavi__group + .genreLeftNavi__head {
  margin-top: 28px;
}
@media only screen and (max-width: 767px) {
  .genreNavi__group + .genreLeftNavi__head {
    margin-top: 16px;
  }
}
.genreNavi__groupHeadButton {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 12px;
}
@media (min-width: 768px), print {
  .genreNavi__groupHeadButton {
    pointer-events: none;
  }
}
@media only screen and (max-width: 767px) {
  .genreNavi__groupHeadButton {
    border-bottom: 1px solid #ebebeb;
    font-weight: 400;
    margin-bottom: 0;
    padding: 16px 24px 16px 0;
    pointer-events: auto;
    position: relative;
    text-align: left;
    width: 100%;
  }
  .genreNavi__groupHeadButton:after {
    background: url(/library/sell/common/svg/arrow.svg) no-repeat 100%;
    content: "";
    height: 24px;
    margin-top: -12px;
    position: absolute;
    right: 0;
    top: 50%;
    width: 24px;
  }
}
.genreNavi__linkList {
  margin-left: 14px;
}
@media only screen and (max-width: 767px) {
  .genreNavi__linkList {
    display: none;
  }
}
.genreNavi__linkList--mypage {
  margin: 12px 0 0;
}
.genreNavi__linkItem {
  margin-bottom: 12px;
}
.genreNavi__linkItem--mypage a {
  align-items: center;
  display: flex;
  gap: 9px;
  padding: 12px 0;
}
@media (min-width: 768px), print {
  .genreNavi__linkItem--mypage a {
    transition: opacity 0.4s ease;
  }
  .genreNavi__linkItem--mypage a:hover {
    opacity: 0.65;
  }
}
@media only screen and (max-width: 767px) {
  .genreNavi__linkItem--mypage a {
    justify-content: space-between;
  }
}
.genreNavi__linkItem--mypage img {
  width: 24px;
}
@media only screen and (max-width: 767px) {
  .genreNavi__linkItem--mypage img {
    display: block;
    width: 12px;
  }
}
.genreNavi__link {
  font-size: 14px;
}
.genreNavi__link:hover {
  color: #003894;
  text-decoration: underline;
}
.priceSearchProduct {
  padding: 24px 0 30px;
}
@media (min-width: 768px), print {
  .priceSearchProduct {
    padding: 0 0 16px;
  }
}
.priceSearchProduct__buttonArea {
  margin-top: 60px;
}
.priceSearchProduct__buttonArea .text + .button__wrap {
  margin-top: 8px;
}
.priceSearchProduct__buttonArea .text {
  margin-bottom: 8px !important;
}
.priceSearchProduct__buttonArea .button__wrap {
  margin-bottom: 30px;
}
@media (min-width: 768px), print {
  .priceSearchProduct__buttonArea {
    display: none;
  }
}
.priceSearchProduct .text {
  margin-bottom: 16px;
}
.priceSearchProduct .product {
  margin-bottom: 20px;
}
@media (min-width: 768px), print {
  .priceSearchProduct .product {
    margin-bottom: 15px;
  }
}
.priceSearchProduct .textLink {
  margin-bottom: 12px;
}
@media (min-width: 768px), print {
  .priceSearchProduct .headline {
    border-bottom: 1px solid #ebebeb;
    margin-bottom: 30px;
    padding-bottom: 24px;
  }
}
.priceSearchResults {
  padding: 24px 0 30px;
}
@media (min-width: 768px), print {
  .priceSearchResults {
    padding: 0 0 16px;
  }
}
.priceSearchResults__buttonArea {
  padding: 30px 0;
}
@media (min-width: 768px), print {
  .priceSearchResults__buttonArea {
    padding: 0 0 16px;
  }
  .priceSearchResults__buttonArea--sp {
    display: none;
  }
  .priceSearchResults__buttonArea--pc {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .priceSearchResults__buttonArea--sp {
    display: block;
  }
  .priceSearchResults__buttonArea--pc {
    display: none;
  }
}
.priceSearchResults__buttonArea .text {
  margin-bottom: 8px !important;
  margin-top: 0 !important;
}
@media (min-width: 768px), print {
  .priceSearchResults__buttonArea .text--sp {
    display: none;
  }
  .priceSearchResults__buttonArea .text--pc {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .priceSearchResults__buttonArea .text--sp {
    display: block;
  }
  .priceSearchResults__buttonArea .text--pc {
    display: none;
  }
}
@media (min-width: 768px), print {
  .priceSearchResults__buttonArea .button__wrap--sp {
    display: none;
  }
  .priceSearchResults__buttonArea .button__wrap--pc {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .priceSearchResults__buttonArea .button__wrap--sp {
    display: block;
  }
  .priceSearchResults__buttonArea .button__wrap--pc {
    display: none;
  }
}
.priceSearchResults__buttonArea .button__wrap .button {
  display: block;
  margin: 0 auto;
}
.priceSearchResults .pagination {
  padding: 16px 0 30px;
}
@media (min-width: 768px), print {
  .priceSearchResults .pagination {
    padding: 16px 0 50px;
  }
}
.priceSearchResults .text {
  margin-bottom: 16px;
  margin-top: 24px;
}
@media (min-width: 768px), print {
  .priceSearchResults .text {
    margin-top: 0;
  }
}
.priceSearchResults .textLink {
  margin-bottom: 12px;
}
.priceSearchTop {
  padding: 30px 0;
}
@media (min-width: 768px), print {
  .priceSearchTop {
    display: none;
    padding: 0;
  }
}
.priceSearchTop .text + .button__wrap {
  margin-top: 8px;
}
.priceSearchTop .button__wrap {
  margin-bottom: 30px;
}
.priceSearchBelongings {
  padding: 24px 0 16px;
}
@media (min-width: 768px), print {
  .priceSearchBelongings {
    padding: 0 0 16px;
  }
}
.priceSearchBelongings .headline {
  margin: 0;
}
.priceSearchBelongings .headline + .text {
  margin-bottom: 16px;
}
.priceSearchBelongings .text--addBeforeIcon {
  margin-bottom: 30px;
}
.priceSearchBelongings .textLink {
  display: block;
  margin-left: auto;
}
.priceSearchBelongingsList {
  padding: 8px 0 30px;
}
@media (min-width: 768px), print {
  .priceSearchBelongingsList {
    padding: 0 0 30px;
  }
}
.priceSearchBelongingsList__buttonArea {
  margin-top: 30px;
}
@media (min-width: 768px), print {
  .priceSearchBelongingsList__buttonArea {
    margin-top: 0;
  }
}
.priceSearchBelongingsList__buttonArea .text {
  margin-bottom: 8px;
}
@media (min-width: 768px), print {
  .priceSearchBelongingsList__buttonArea .text {
    text-align: center;
  }
  .priceSearchBelongingsList__buttonArea .text--sp {
    display: none;
  }
  .priceSearchBelongingsList__buttonArea .text--pc {
    display: block;
  }
}
.priceSearchBelongingsList__buttonArea .button__wrap {
  margin-bottom: 30px;
}
@media (min-width: 768px), print {
  .priceSearchBelongingsList__buttonArea .button__wrap--sp {
    display: none;
  }
  .priceSearchBelongingsList__buttonArea .button__wrap--pc {
    display: block;
  }
}
.priceSearchBelongingsList .productList {
  margin-bottom: 14px;
}
@media (min-width: 768px), print {
  .priceSearchBelongingsList .productList {
    margin-bottom: 24px;
  }
}
.priceSearchBelongingsList .productList--nodata .text {
  margin-top: 16px;
}
.priceSearchBelongingsList .textLink {
  margin-bottom: 12px;
}
.priceSearchTopKeyword {
  padding: 24px 0 30px;
}
@media (min-width: 768px), print {
  .priceSearchTopKeyword {
    padding: 0;
  }
}
.priceSearchTopKeyword__formArea {
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 768px), print {
  .priceSearchTopKeyword__formArea {
    margin-bottom: 30px;
  }
}
.priceSearchTopKeyword .headline {
  margin-bottom: 0;
}
.priceSearchTopKeyword .text {
  margin-bottom: 30px;
}
@media (min-width: 768px), print {
  .priceSearchTopKeyword .text {
    margin-bottom: 16px;
  }
}
.priceSearchTopKeyword .select {
  margin-bottom: 16px;
  margin-right: 16px;
  width: 188px;
}
@media (min-width: 768px), print {
  .priceSearchTopKeyword .select {
    margin-bottom: 0;
  }
}
.priceSearchTopKeyword .textField {
  max-width: 486px;
  width: 100%;
}
.barcodeScanner {
  position: relative;
}
.barcodeScanner__header {
  align-items: center;
  background-color: #333;
  display: flex;
  height: 54px;
  justify-content: space-between;
  left: 0;
  padding: 0 18px;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 100;
}
.barcodeScanner__buttonToBefore {
  width: 50px;
}
.barcodeScanner__buttonToBefore,
.barcodeScanner__buttonToBelongings {
  color: #fff;
  font-family:
    "M PLUS Rounded 1c",
    sans-serif;
  font-size: 16px;
  line-height: 24px;
}
.barcodeScanner__buttonToBelongings {
  text-align: right;
  width: 124px;
}
.barcodeScanner__main {
  background-image: url(/library/sell/dummy/dummy-barcode-scan.png);
  background-position: 50%;
  background-size: cover;
  height: 100vh;
  position: relative;
  width: 100vw;
}
.barcodeScanner__barcodeImage {
  height: auto;
  left: 50%;
  position: absolute;
  top: 15%;
  transform: translateX(-50%);
  width: 70%;
  max-width: 270px;
}
.barcodeScanner__footer {
  background-color: #333;
  bottom: 0;
  left: 0;
  padding: 12px 18px;
  position: fixed;
  right: 0;
  z-index: 100;
}
.barcodeScanner__footerText {
  color: #ccc;
  font-family:
    "M PLUS Rounded 1c",
    sans-serif;
  font-size: 16px;
  line-height: 24px;
}
/* 年齢確認 */
.ageVerification {
  background-color: #fff;
  text-align: center;
}
.ageVerificationBlock {
  font-size: 14px;
  background: #fff;
}
.ageVerificationBlock__txt--check {
  margin: 16px 0 24px;
}
.ageVerificationBlock__txt--bold {
  font-weight: bold;
}
@media print, (min-width: 768px) {
  .mainContent__col1--ageVerification {
    padding: 60px 0 130px;
  }
  .ageVerificationBlock__txt--check {
    margin: 16px 0 60px;
  }
  .ageVerification__buttons {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
            justify-content: center;
    -webkit-box-orient: horizontal;
  }
  .ageVerification__buttons .button {
    margin: 0 6px;
    max-width: 380px;
  }
}
@media only screen and (max-width: 767px) {
  .ageVerification .pageTitle {
    margin-bottom: 0px;
    padding: 30px 18px 16px;
    background-color: #f5f5f5;
    font-size: 24px;
    text-align: left;
  }
  .ageVerificationBlock {
    padding: 24px 18px 60px;
  }
  .ageVerificationBlock__txt,
  .ageVerificationBlock__txt--check {
    text-align: left;
  }
  .ageVerification__buttons {
    margin: 0 20px;
  }
  .ageVerification__buttons .button:first-of-type {
    margin-bottom: 16px;
  }
}
/*新規追加*/
.priceSearchMessage{
/*  padding: 24px 0 0;*/
  padding: 1.0rem;
}
.priceSearchMessage__note{
  border: 2px solid #e60009;
  background-color: #ffeeee;
  padding: 0.5em;
}
.priceSearchMessage__text{
  color: #e60009;
}
@media print, (min-width: 768px) {
  .priceSearchMessage {
    margin-bottom: 30px;
  }
}
/*//新規追加*/

/* 商品羅列 */
.product__image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  display: block;
}

.product__imageArea {
  aspect-ratio: 3 / 4.3;
}

.product__text {
  text-align: center;
}
/* 商品羅列 */
