@charset "UTF-8";
body.page-itemdetail .main-contents,
.main-contents:has(.p-itemdetail) {
  overflow: visible;
}

@media print, screen and (min-width: 981px) {
  .side {
    display: none;
  }
}

.main {
  width: 100%;
  max-width: none;
  line-break: strict;
}

.p-itemdetail-image {
  width: 600px;
}
@media print, screen and (min-width: 981px) {
  .p-itemdetail-image {
    max-width: 600px;
  }
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail-image {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
  }
}
.p-itemdetail-image .-slider .slick-arrow {
  font-size: 0;
  color: transparent;
  width: 40px;
  height: 40px;
  background: url("../img/common/util_icn_arw_right.svg") no-repeat center center/contain;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
  border: none;
  cursor: pointer;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.p-itemdetail-image .-slider .slick-arrow:after {
  content: none;
}
.p-itemdetail-image .-slider .slick-arrow.slick-prev {
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}
.p-itemdetail-image .-slider .slick-arrow:hover {
  opacity: 0.7;
}
.p-itemdetail-image .-slider .image-large {
  width: 100%;
}
.p-itemdetail-image .-slider .image-large-item {
  margin: 5px 12px;
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 10px;
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  overflow: hidden;
}
.p-itemdetail-image .-slider .image-large-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-image .-slider .image-large-item {
    margin: 0;
  }
}
.p-itemdetail-image .-slider .image-small {
  margin: 30px 10px 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 10px 1fr 10px 1fr 10px 1fr 10px 1fr;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-image .-slider .image-small {
    margin-top: 20px;
  }
}
.p-itemdetail-image .-slider .image-small-item {
  aspect-ratio: 1/1;
  border-radius: 5px;
  overflow: hidden;
  cursor: pointer;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (any-hover: hover) and (min-width: 981px) {
  .p-itemdetail-image .-slider .image-small-item:hover {
    opacity: 0.7;
  }
}
.p-itemdetail-image .-slider .image-small-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-itemdetail-caution {
  margin-top: 55px;
}
@media print, screen and (min-width: 981px) {
  .p-itemdetail-caution {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-caution {
    margin-top: 30px;
    width: 100%;
  }
}
.p-itemdetail-caution .ttl {
  font-size: 14px;
  font-weight: 700;
  margin-left: 0;
}
.p-itemdetail-caution .box {
  margin-top: 8px;
  background: #fff;
  border-radius: 10px;
  padding: 8px 23px 13px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  display: inline-block;
}
.p-itemdetail-caution .box .strong {
  font-size: 22px;
  display: inline-block;
  padding: 0 6px;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-caution .box .strong {
    font-size: 20px;
  }
}
.p-itemdetail-caution .box a {
  color: #FE7449;
  text-decoration: underline;
}
.p-itemdetail-name {
  background: #fff;
  border-radius: 8px;
  margin-top: 40px;
  overflow: hidden;
}
.p-itemdetail-name .name-head {
  background: #C82F00;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  padding: 10px 20px;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-name .name-head {
    font-size: 16px;
  }
}
.p-itemdetail-name .name-body {
  margin: 20px;
}
.p-itemdetail-name .name-body .-lead {
  font-size: 16px;
  color: #254845;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-name .name-body .-lead {
    font-size: 14px;
  }
}
.p-itemdetail-name .name-body .-lead .strong {
  display: block;
  font-size: 22px;
  font-weight: 500;
  text-decoration: underline;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-name .name-body .-lead .strong {
    font-size: 18px;
  }
}
.p-itemdetail-name .name-body .-unit {
  margin-top: 30px;
}
.p-itemdetail-name .name-body .-unit .ttl {
  font-size: 22px;
  font-weight: 700;
  padding-left: 1.5em;
  position: relative;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-name .name-body .-unit .ttl {
    font-size: 16px;
    line-height: 1.4;
  }
}
.p-itemdetail-name .name-body .-unit .ttl:before {
  content: "●";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 22px;
  color: #C82F00;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-name .name-body .-unit .ttl:before {
    font-size: 16px;
  }
}
.p-itemdetail-name .name-body .-unit .ttl .required {
  color: #FF0000;
  font-size: 14px;
  font-weight: 700;
  margin-left: 5px;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-name .name-body .-unit .ttl .required {
    font-size: 12px;
    display: inline-block;
    margin-left: 0;
  }
}
.p-itemdetail-name .name-body .-unit .input {
  margin-top: 20px;
}
.p-itemdetail-name .name-body .-unit .input input {
  height: 43px;
  font-size: 16px;
  width: 100%;
  border-radius: 5px;
  border: 1px solid rgba(37, 72, 69, 0.5);
  padding: 5px 15px;
}
.p-itemdetail-name .name-body .-unit .note {
  font-size: 12px;
  font-weight: 500;
  color: #254845;
  margin-top: 20px;
}
.p-itemdetail-detail .item-detail {
  float: none;
  max-width: none;
  width: 100%;
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-detail .item-detail {
    width: 100%;
  }
}
.p-itemdetail-detail .item-detail .item-title {
  font-size: 22px;
}
.p-itemdetail-detail .item-detail .item-title .item-info-box {
  font-size: 12px;
  margin-top: 20px;
}
.p-itemdetail-detail .item-detail .item-title .item-info-dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0;
}
.p-itemdetail-detail .item-detail .item-title .hasoptiontext {
  font-size: 12px;
  font-weight: 500;
}
.p-itemdetail-detail .item-detail .item-price-wrap {
  margin: 20px 0 30px;
}
.p-itemdetail-detail .item-detail .item-price-wrap .item-price {
  color: #333;
  font-size: 50px;
  font-weight: 900;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-detail .item-detail .item-price-wrap .item-price {
    font-size: 30px;
  }
}
.p-itemdetail-detail .item-detail .item-price-wrap .item-tax {
  color: #333;
  font-size: 16px;
  font-weight: 700;
  margin-left: 5px;
}
.p-itemdetail-detail .item-detail .optionwrap {
  margin-top: 30px;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-detail .item-detail .optionwrap {
    margin-top: 30px;
    gap: 10px;
  }
}
.p-itemdetail-detail .item-detail .optionwrap .makeshop-option-label {
  font-size: 18px;
  margin-left: 10px;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-detail .item-detail .optionwrap .makeshop-option-label {
    font-size: 16px;
  }
}
.p-itemdetail-detail .item-detail .optionwrap .makeshop-option-select-wrap .makeshop-option-select-wrap {
  position: relative;
}
.p-itemdetail-detail .item-detail .optionwrap .makeshop-option-select-wrap .makeshop-option-select-wrap:after {
  content: "";
  width: 12px;
  height: 10px;
  background: url("../img/common/util_icn_arw_under.svg") no-repeat center center/contain;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}
.p-itemdetail-detail .item-detail .optionwrap .makeshop-option-select-wrap .makeshop-option-select-wrap select {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #fff;
}
.p-itemdetail-detail .item-detail .optionwrap .item-option {
  position: relative;
}
.p-itemdetail-detail .item-detail .optionwrap .item-option:after {
  content: "";
  width: 10px;
  height: 10px;
  background: url("../img/itemdetail/arrow_down.svg") no-repeat center center/contain;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-itemdetail-detail .item-detail .optionwrap .item-option .makeshop-option-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.p-itemdetail-detail .item-detail .optionwrap .item-option .makeshop-option-select {
  height: 40px;
  width: 289px;
  padding: 5px 40px 5px 10px;
  border-radius: 10px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #333;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-detail .item-detail .optionwrap .item-option .makeshop-option-select {
    background: #fff;
    width: 100%;
  }
}
.p-itemdetail-detail .item-detail .optionwrap .item-option + .item-option {
  margin-top: 10px;
}
.p-itemdetail-detail .item-detail .add-cart {
  margin-top: 10px;
  margin-bottom: 0;
  margin-left: 12px;
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail-detail .item-detail .add-cart {
    margin: 10px auto 0;
  }
}
.p-itemdetail-detail .item-detail .add-cart .item-option {
  gap: 20px;
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-detail .item-detail .add-cart .item-option {
    position: relative;
    display: block;
  }
}
.p-itemdetail-detail .item-detail .add-cart .btn {
  max-width: none;
}
.p-itemdetail-detail .item-detail .item-quantity-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-detail .item-detail .item-quantity-wrap {
    margin-left: 15px;
  }
}
.p-itemdetail-detail .item-detail .item-quantity-wrap .item-quantity {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 14px;
  background: #fff;
  display: inline-block;
  border-radius: 10px;
  border: 1px solid #333;
  margin-top: 0;
  margin-left: 20px;
  width: 98px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 8px;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-detail .item-detail .item-quantity-wrap .item-quantity {
    width: 120px;
  }
}
.p-itemdetail-detail .item-detail .item-quantity-wrap .item-quantity button {
  background: none;
  border: none;
  outline: none;
  width: 25px;
  cursor: pointer;
}
.p-itemdetail-detail .item-detail .item-quantity-wrap .item-quantity input {
  background: none;
  border: none;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #333;
  font-size: 20px;
  height: 40px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-detail .item-detail .item-quantity-wrap .item-quantity input {
    font-size: 16px;
    width: 50px;
    padding: 10px 15px;
  }
}
.p-itemdetail-detail .item-detail .item-cartbtn {
  width: 450px;
  height: 80px;
  margin-top: 40px;
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail-detail .item-detail .item-cartbtn {
    width: 100%;
    max-width: 317px;
  }
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-detail .item-detail .item-cartbtn {
    width: 100%;
    height: 40px;
    margin: 20px auto 0;
  }
}
.p-itemdetail-detail .item-detail .item-cartbtn a {
  font-size: 20px;
  font-weight: 500;
  color: #fff;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #FE7449;
  border-radius: 100px;
  position: relative;
  padding-left: 20px;
  margin-top: 0;
}
.p-itemdetail-detail .item-detail .item-cartbtn a:before {
  content: "";
  width: 22px;
  height: 20px;
  background: url("../img/common/util_icn_cart.svg") no-repeat center center/contain;
  position: absolute;
  left: calc(50% - 93px);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-itemdetail-detail .item-detail .item-cartbtn a.restock-btn {
  background: #333;
}
.p-itemdetail-detail .item-detail .item-cartbtn a.restock-btn:before {
  content: none;
}
.p-itemdetail-detail .item-detail .favorite {
  margin-top: 17px;
  width: 100%;
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail-detail .item-detail .favorite {
    max-width: 317px;
    margin: 17px auto 0;
  }
}
.p-itemdetail-detail .item-detail .favorite a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 16px;
  font-weight: 500;
  padding-right: 20px;
  color: #000;
  background: #fff;
  width: 450px;
  height: 43px;
  border-radius: 100px;
  border: 1px solid #666;
  text-align: center;
  position: relative;
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail-detail .item-detail .favorite a {
    width: 100%;
  }
}
.p-itemdetail-detail .item-detail .favorite a:after {
  content: "";
  width: 20px;
  height: 17px;
  background: url("../img/common/util_icn_fav.svg") no-repeat center center/contain;
  position: absolute;
  left: calc(50% + 60px);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-itemdetail-detail .item-detail .favorite .caution {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 12px;
  font-weight: 500;
  margin-left: 10px;
  margin-top: 5px;
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail-detail .item-detail .favorite .caution {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
    width: 100%;
    margin-left: 0;
    margin-top: 10px;
  }
}
.p-itemdetail-detail .item-detail .item-delivery {
  margin-top: 15px;
  margin-left: 10px;
  width: 100%;
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-detail .item-detail .item-delivery {
    margin-left: 0;
  }
}
.p-itemdetail-detail .item-detail .item-delivery a {
  font-size: 16px;
  font-weight: 900;
  text-decoration: underline;
  color: #FE7449;
}
.p-itemdetail-detail .item-detail .item-point {
  color: #333;
  font-weight: 600;
  margin-bottom: 0;
  margin-left: 10px;
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-detail .item-detail .item-point {
    margin-left: 0;
    margin-top: 0;
  }
}
.p-itemdetail-detail .item-detail .item-point a {
  color: #FE7449;
  font-weight: 900;
  margin-left: 10px;
  text-decoration: underline;
}
.p-itemdetail-detail .item-detail .item-info-list {
  margin-top: 5px;
  margin-left: 22px;
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-detail .item-detail .item-info-list {
    margin-top: 20px;
    margin-left: 0;
  }
}
.p-itemdetail-detail .item-detail .item-info-list li dl {
  font-size: 14px;
  font-weight: 600;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-detail .item-detail .item-info-list li dl {
    display: block;
  }
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-detail .item-detail .item-info-list li dl dt {
    font-size: 16px;
  }
}
.p-itemdetail-detail .item-detail .item-info-list li dl dd {
  margin-left: 10px;
  margin-right: 15px;
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-detail .item-detail .item-info-list li dl dd {
    margin-left: 0;
  }
}
.p-itemdetail-detail .item-detail .item-info-list li dl dd + dd {
  margin-left: 0;
}
.p-itemdetail-detail .item-detail .item-info-list li dl dd a {
  color: #FE7449;
  font-weight: 900;
  text-decoration: underline;
}
@media screen and (max-width: 1030px) {
  .p-itemdetail-detail .item-detail .item-info-list li dl dd a {
    margin-left: 0;
  }
}
.p-itemdetail-information {
  margin-top: 80px;
  width: 100%;
}
@media print, screen and (min-width: 981px) {
  .p-itemdetail-information {
    width: 640px;
  }
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail-information {
    width: 100%;
  }
}
.p-itemdetail-information h2 {
  color: #333;
  background: #FFD6B7;
}
.p-itemdetail-information .item-img {
  margin: 40px 0 30px;
}
.p-itemdetail-information .item-size {
  font-size: 16px;
  font-weight: 700;
}
.p-itemdetail-information .item-description {
  border: none;
  padding: 0;
}
.p-itemdetail-information .bnr {
  margin: 55px 0;
  text-align: center;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-information .bnr {
    margin: 40px 0;
  }
}
.p-itemdetail-information .link a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 92px;
  border: 2px solid #FE7449;
  border-radius: 10px;
  background: #fff;
  font-size: 26px;
  font-weight: 700;
  color: #FE7449;
  position: relative;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-information .link a {
    height: 70px;
    font-size: 16px;
    text-align: center;
  }
}
.p-itemdetail-information .link a:after {
  content: "";
  width: 19px;
  height: 18px;
  background: url("../img/common/util_icn_arw_right_fat.svg") no-repeat center center/contain;
  position: absolute;
  right: 25px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-itemdetail {
  /*.item-faq {
  	.item-faq-list {

  	}
  }*/
}
.p-itemdetail-recommend {
  margin-top: 100px;
  padding: 0 20px;
  margin-left: -20px;
  width: 100%;
}
@media print, screen and (min-width: 981px) {
  .p-itemdetail-recommend {
    width: 650px;
  }
}
.p-itemdetail-recommend .recommend-ttl {
  font-size: 23px;
  font-weight: 700;
  margin: 0 0 5px 15px;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-recommend .recommend-ttl {
    font-size: 20px;
    margin: 0 0 10px 0;
  }
}
.p-itemdetail-recommend .c-carousel .c-carousel-item a .item-info .item-tag {
  padding-bottom: 0;
  color: #707070;
  border-bottom: 1px solid #707070;
}
.p-itemdetail-recommend .c-carousel .c-carousel-item a .item-info .item-title {
  font-size: 16px;
  color: #707070;
}
.p-itemdetail-recommend .c-carousel .c-carousel-item a .item-info .item-price {
  font-size: 25px;
  color: #707070;
}
.p-itemdetail-recommend .c-carousel .c-carousel-item a .item-info .item-tax {
  font-size: 12px;
}
.p-itemdetail-recommend .c-carousel + .recommend-ttl {
  margin-top: 60px;
}

/*========== 購入ブロック(SP) ==========*/
/*
.p-itemdetail-detail {
	.js-addcart {
		display: none;
		@include mq(tab) {
			box-sizing: border-box;
			position: fixed;
			bottom: 0;
			left: 0;
			width: 100%;
			padding: 10px 20px 5px;
			background: #fff;
			z-index: 100;
			display: block;
			opacity: 0;
			transition: opacity 0.3s ease;
			&.is-addcart-fixed {
				opacity: 1;
			}
			.favorite {
				right: -20px;
				top: -5px;
			}
			.item-cartbtn {
				margin: 10px auto 0;
				width: 100%;
				max-width: 100%;
			}
		}
	}
}
*/
@media screen and (max-width: 1030px) {
  .pc-only.m-tab {
    display: none !important;
  }
}
@media print, screen and (max-width: 1229px) {
  .pc-only.m-l {
    display: none !important;
  }
}

/* ========== layout（商品詳細グリッド・ラッパーのみ） ========== */
.p-itemdetail {
  position: relative;
  margin: 0 auto;
  max-width: 1200px;
  gap: 50px;
}
.p-itemdetail > .container-order2 {
  max-width: 480px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media print, screen and (min-width: 981px) {
  .p-itemdetail > .container-order2 {
    min-width: 0;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
  }
}
@media screen and (max-width: 1030px) {
  .p-itemdetail > .container-order2 {
    position: static;
    top: auto;
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch;
    max-width: none;
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 981px) {
  .p-itemdetail {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .p-itemdetail > .container-order1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 600px;
            flex: 0 0 600px;
    max-width: 600px;
    margin-left: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .p-itemdetail > .container-order2 {
    position: absolute;
    top: 0;
    right: 0;
    max-width: 480px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .p-itemdetail > .container-order3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    width: 100%;
    max-width: 480px;
    min-width: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 90%;
    max-width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 auto;
  }
  .p-itemdetail > .container-order1,
  .p-itemdetail > .container-order2,
  .p-itemdetail > .container-order3 {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    width: 100%;
    min-width: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 auto;
  }
  .p-itemdetail > .container-order1,
  .p-itemdetail > .container-order2,
  .p-itemdetail > .container-order3 {
    max-width: 100%;
  }
  .p-itemdetail > .container-order2 {
    position: relative;
  }
}
.p-itemdetail .scrollbtn-wrap .pc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail .scrollbtn-wrap .pc {
    display: none;
  }
}
.p-itemdetail .scrollbtn-wrap .mobile {
  display: none;
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail .scrollbtn-wrap .mobile {
    display: block;
  }
}
@media print, screen and (min-width: 1230px) {
  .p-itemdetail .item-scrollbtn {
    display: none;
    position: fixed;
    top: 300px;
    left: calc(50% + 145px);
    width: 435px;
    height: 80px;
    cursor: pointer;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}
@media screen and (min-width: 1230px) and (any-hover: hover) and (min-width: 981px) {
  .p-itemdetail .item-scrollbtn:hover {
    opacity: 0.7;
  }
}
@media print, screen and (min-width: 1230px) {
  .p-itemdetail .item-scrollbtn span {
    font-size: 20px;
    font-weight: 500;
    color: #fff;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    background: #FE7449;
    border-radius: 100px;
    position: relative;
    padding-left: 20px;
    margin-top: 0;
  }
  .p-itemdetail .item-scrollbtn span:before {
    content: "";
    width: 22px;
    height: 20px;
    background: url("../img/common/util_icn_cart.svg") no-repeat center center/contain;
    position: absolute;
    left: calc(50% - 93px);
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@media print, screen and (max-width: 1229px) {
  .p-itemdetail .item-scrollbtn {
    position: fixed;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background: #FE7449;
    font-size: 16px;
    color: #fff;
    z-index: 100;
  }
}

/* ========== /layout ========== */
/* ========== カスタムグループ ========== */
.item-customselectgroup {
  margin-top: 20px;
  width: 100%;
}
.item-customselectgroup .makeshop-option-wrap {
  margin-top: 30px;
}
.item-customselectgroup .makeshop-option-label, .item-customselectgroup .nameprint-title {
  font-size: 18px;
}
@media screen and (max-width: 980px) {
  .item-customselectgroup .makeshop-option-label, .item-customselectgroup .nameprint-title {
    font-size: 16px;
  }
}
.item-customselectgroup .makeshop-option-label.is-required, .item-customselectgroup .nameprint-title.is-required {
  font-weight: 700;
  display: inline-block;
  position: relative;
  padding-right: 40px;
}
.item-customselectgroup .makeshop-option-label.is-required:after, .item-customselectgroup .nameprint-title.is-required:after {
  content: "※必須";
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 12px;
  color: #FF0000;
  font-weight: 700;
}
.item-customselectgroup .makeshop-custom-select-button {
  background: none;
  border: none;
  outline: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  width: 229px;
}
.item-customselectgroup .makeshop-custom-select-button-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 10px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.item-customselectgroup .makeshop-custom-select-button-wrap button {
  background: none;
  border: none;
  outline: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  width: 229px;
  position: relative;
}
.item-customselectgroup .makeshop-custom-select-button-wrap button.selected:after {
  content: "";
  width: 100%;
  height: 100%;
  border: 2px solid #FE7449;
  border-radius: 5px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  pointer-events: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.item-customselectgroup .makeshop-custom-select-button-text {
  display: none;
}
.item-customselectgroup .makeshop-custom-select-price {
  display: none;
}
.item-customselectgroup .makeshop-custom-select-radio-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px 20px;
  padding: 10px 10px;
}
.item-customselectgroup .makeshop-custom-select-radio-wrap input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
}
.item-customselectgroup .makeshop-custom-select-radio-text {
  position: relative;
  padding-left: 35px;
  display: inline-block;
}
.item-customselectgroup .makeshop-custom-select-radio-text:before, .item-customselectgroup .makeshop-custom-select-radio-text:after {
  content: "";
  position: absolute;
  left: 0;
  top: -2px;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.item-customselectgroup .makeshop-custom-select-radio-text:before {
  border: 1px solid #333;
  z-index: 2;
}
.item-customselectgroup .makeshop-custom-select-radio-text:after {
  background: #fff;
  border: 4px solid #fff;
}
.item-customselectgroup .makeshop-custom-select-radio input:checked + span:after {
  background: #FE7449;
}

.item-caution {
  margin-top: 40px;
  border: 3px solid #FE7449;
  border-radius: 5px;
  background: #fff;
  padding: 15px 20px;
  font-size: 14px;
  font-weight: 500;
  color: #333;
}
@media screen and (max-width: 980px) {
  .item-caution {
    font-size: 13px;
    padding: 15px;
  }
}
.item-caution strong {
  color: #FE7449;
  font-weight: 700;
}

.nameprint-area .nameprint-description {
  margin-bottom: 20px;
}
.nameprint-area .nameprint-description .red {
  color: #FF0000;
}
.nameprint-area .makeshop-option-label {
  font-size: 18px;
  font-weight: 700;
  display: inline-block;
  position: relative;
  padding-right: 40px;
}
@media screen and (max-width: 980px) {
  .nameprint-area .makeshop-option-label {
    font-size: 16px;
  }
}
.nameprint-area .makeshop-option-label span {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 12px;
  color: #FF0000;
  font-weight: 700;
}
.nameprint-area .nameprint-text input {
  width: 100%;
  height: 43px;
  border: #333 1px solid;
  border-radius: 5px;
  padding: 5px 15px;
}

.item-detail-sale {
  font-size: 20px;
  font-weight: 700;
}

.item-sell-text {
  margin-left: 10px;
  font-weight: 700;
}
@media screen and (max-width: 1030px) {
  .item-sell-text {
    margin-left: 0;
  }
}

.notsale {
  margin-top: 40px;
  font-size: 22px;
  font-weight: 700;
  color: #ff0000;
}

.sku .sku-price-wrap {
  display: block;
}
.sku .restock-btn.btn {
  font-size: 14px;
  font-weight: 700;
  width: 140px;
  padding: 10px 20px;
  color: #fff;
  background: #333;
  margin-top: 5px;
}
@media screen and (max-width: 980px) {
  .sku .restock-btn.btn {
    font-size: 14px;
  }
}
.sku .sku-option-name {
  font-size: 16px;
  border-top: 1px solid #333;
}
@media screen and (max-width: 980px) {
  .sku .sku-option-name {
    font-size: 14px;
  }
}
.sku .sku-price-wrap .price {
  font-size: 17px;
  font-weight: 700;
}
.sku .sku-cart {
  padding: 20px 0 40px;
  border-top: 1px solid #333;
}
.sku .sku-cart .notsale {
  margin-top: 0;
  font-size: 17px;
  color: #999;
}

.p-itemdetail-detail .item-detail .sku {
  width: 100%;
}
.p-itemdetail-detail .item-detail .sku .favorite {
  margin-top: 5px;
}
.p-itemdetail-detail .item-detail .sku .favorite-wrap {
  margin-top: 5px;
  display: block;
}
.p-itemdetail-detail .item-detail .sku .favorite a {
  font-size: 14px;
  width: 210px;
}
.p-itemdetail-detail .item-detail .sku .item-cartbtn {
  margin-top: 5px;
  width: auto;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5px;
}
.p-itemdetail-detail .item-detail .sku .item-cartbtn a:before {
  content: none;
}
.p-itemdetail-detail .item-detail .sku .item-cartbtn a.sku-btn {
  font-size: 12px !important;
  font-weight: 700;
  width: 140px !important;
  padding: 10px 20px !important;
  display: inline-block;
  height: auto;
  text-align: center;
}
@media screen and (max-width: 980px) {
  .p-itemdetail-detail .item-detail .sku .item-cartbtn a.sku-btn {
    font-size: 16px;
  }
}
.p-itemdetail-detail .item-detail .sku .item-cartbtn a.sku-btn:before {
  content: none;
}
.p-itemdetail-detail .item-detail .sku .item-cartbtn .favorite {
  margin: 0;
  width: auto;
  text-align: left;
}
.p-itemdetail-detail .item-detail .sku .item-cartbtn .favorite a {
  font-size: 12px;
  width: 140px;
  padding-right: 28px;
  text-align: left;
}
.p-itemdetail-detail .item-detail .sku .item-cartbtn .favorite a:after {
  left: calc(50% + 30px);
}

/* ========== /カスタムグループ ========== */
@media print, screen and (max-width: 1229px) {
  .footer-pagetop {
    display: none;
  }
}

/* ========== モーダル ========== */
.modal-area {
  display: none;
  position: fixed;
  z-index: 101; /*サイトによってここの数値は調整 */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modal-bg {
  width: 100%;
  height: 100%;
  background-color: rgba(30, 30, 30, 0.9);
}

.modal-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 70%;
  max-width: 770px;
  padding: 30px;
  background-color: #fff;
}

.modal-cart-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.modal-cart-btn li {
  border-radius: 5px;
  margin: 12px;
}

.modal-cart-btn li a {
  width: 240px;
  display: inline-block;
  text-align: center;
  padding: 15px 0;
  font-weight: bold;
  font-size: 13px;
  color: #fff;
}

.modal-cart {
  background: #707070;
}

.modal-order {
  background: #FE7449;
}

.modal-close {
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  cursor: pointer;
}

.modal-open {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}

.cart-amazon {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 20px auto 0;
}

@media screen and (max-width: 980px) {
  .side {
    display: block;
  }
  .modal-cart-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .modal-cart-btn li {
    width: 240px;
  }
}
.item-detail ul.item-info-list dt {
  white-space: nowrap;
}

.group-item-list a.item-list-btn.add-list-cart.cart-order-btn {
  display: none;
}

.modal-quoterequest {
  background: #FF9900;
}

@media screen and (max-width: 980px) {
  .search-area.sp-top {
    display: none;
  }
}
.item-option .btn.outstock.off {
  display: block !important;
}

/* ========== /モーダル ========== */