/*------------------------------------
    商品ページ
------------------------------------*/

/* 商品画像スライダー
------------------------------------*/
.c-itemPage__slide {
    overflow: hidden;
}
.c-imagesThumb__ic {
    background: url("../img/common/ico_thumbnail.png"), rgba(255,255,255,.6);
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: 1rem;
    bottom: -1.5rem;
    cursor: pointer;
    display: block;
    width: 32px;
    height: 32px;
    box-shadow: 0 0 3px 0.5px #aaa;
}
.c-itemPage__fav {
    width: 5.5rem;
    height: 5.5rem;
    bottom: -1.5rem;
    right: 1rem;
    background-color: rgba(255,255,255,0.8);
    border-radius: 50%;
    padding: 1rem 0.5rem;
	box-shadow: 0 0 3px 0.5px #aaa;
}
.c-itemPage__favImg{
	width: 45%;
	height: auto;
}
.c-itemPage__favImg.is-active {
    animation: favoriteIcon 0.6s ease 0s 1 normal;
}
.c-itemPage__favNum {
    color: #646464;
}

/* 商品画像一覧モーダル内スライダー
------------------------------------*/
.js-itemModalSliderClose {
    display: none;
}
.js-modalAction--bound {
    transition-property: opacity;
    opacity: 0;
}
.c-itemPage__slideWrap.js-modalAction--bound {
    position: fixed;
    margin-bottom: 1rem;
    left: 0;
    opacity: 1;
    pointer-events: auto!important;
    width: 100%;
    background-color: rgba(0,0,0,.5);
    height: 100%;
    top: 0;
    z-index: 104;
}
.c-itemPage__slideWrap:not(.js-active) {
    opacity: 0;
    pointer-events: none!important;
}
.c-itemPage__slideWrap > .js-modalAction__inner {
    left: 0;
}
.js-modalAction--bound > .js-modalAction__inner {
    transition-property: top;
    top: -5vh;
    border-radius: 3px;
}
.c-itemPage__slideWrap.js-active .js-itemModalSliderClose {
    display: block;
    width: 2.5rem;
    height: 2.5rem;
    position: absolute;
    right: 0;
    top: 11rem;
}
.c-itemPage__slideWrap.js-active .js-itemModalSliderClose::before,
.c-itemPage__slideWrap.js-active .js-itemModalSliderClose::after {
    content: '';
    position: absolute;
    display: block;
    height: 6%;
    background-color: #FFF;
    top: 47%;
    left: 15%;
    width: 70%;
}
.c-itemPage__slideWrap.js-active .js-itemModalSliderClose::before {
    transform: rotate(45deg);
}
.c-itemPage__slideWrap.js-active .js-itemModalSliderClose::after {
    transform: rotate(-45deg);
}
.js-imgModalImg {
    width: 100%;
    height: auto;
}

/* 商品詳細
-------------------------------------------*/
.c-slideImages__desc{
	margin: 2rem 1rem 0 1rem;
}
.c-itemName,
.c-itemPrice,
.c-itemInfo,
.c-itemCart,
.c-itemContBn{
	margin: 4rem 1rem 0 1rem;
}
.c-itemContBn a {
    text-decoration: underline;
}
.c-itemContBtm{
	margin: 4rem 0 0 0;
}
.c-itemName{
	padding: 4rem 1rem 0 1rem;
	margin: 4rem 0 0 0;
	border-top: 1px solid #ccc;
}
.c-itemName__ttl{
	font-size: 1.9rem; /* 3L */
	font-weight: bold;
}
.c-price__itemprop{
	font-size: 1.7rem; /* 2L */
	line-height: 1.2;
}
.c-itemGroupPriceBef{
	text-decoration: line-through;
}
.c-itemPage__prop__item:not(:last-of-type) {
    margin-right: .5rem;
}
.c-itemPage__link {
    background-color: #fff;
}
.c-itemPage__link--02 {
    border: 1px solid #969696;
}
.c-itemPage__link--02 .c-itemPage__link__a {
    padding: .5rem 2rem .5rem .5rem;
}
.c-itemPage__link--02 .c-itemPage__link__imgWrap {
    width: 45px;
}
.c-itemPage__link--02 .c-itemPage__link__txtWrap {
    width: calc(100% - 50px);
}
.c-itemPage__link--02::after {
    top: calc(50% - 6px);
    right: 9px;
}

.c-itemSpecTable{
	border-collapse: collapse;
	width: 100%;
}
.c-itemSpecTable__th, .c-itemSpecTable__td{
	border: 1px solid #ccc;
	padding: .5rem 1rem;
	vertical-align: middle;
}
.c-itemSpecTable__th{
	text-align: center;
	background-color: #f4f4f4;
}
.c-itemSpecTable__td:first-child{
	width: 25%;
}
.c-itemSpecTable__td:nth-child(2){
	width: 75%;
}
.c-itemSpecTable--02 .c-itemSpecTable__td:first-child{
	width: 75%;
}
.c-itemSpecTable--02 .c-itemSpecTable__td:nth-child(2){
	width: 25%;
}
.c-itemNoticeList__item{
	list-style: disc;
	margin-left: 2rem;
}

/*
.c-table01__tr {
    border-bottom: 1px solid #ccc;
}
.c-table01__th, .c-table01__td {
    border-right: 1px solid #ccc;
    padding: .5rem 1rem;
    vertical-align: middle;
}
.c-table01__th {
    text-align: center;
    background-color: #f4f4f4;
}
.c-table01__thead .c-table01__th:last-child, .c-table01__tbody .c-table01__td--2col:nth-child(2n) {
    border-right: none;
}
*/
.c-review:not(:first-child){
	margin-top: 4rem;
	padding-top: 4rem;
	border-top: 1px solid #dedede;
}
.c-review__postData__name {
    width: 60%;
}
.c-review__postData__eval, .c-review__postData__use {
    width: 100%;
}
.c-review__postData__eval {
    font-size: 2.4rem;
    line-height: 1.6rem;
    color: #999;
}
.c-itemGroup{
	margin-top: 4rem;
}
.c-itemGroupList{
	margin: 2rem 1rem 0 1rem;
}
.c-itemGroupLabel{
	padding: 1.5rem 0;
	border-top: 1px solid #dedede;
	transition: background-color 0.3s;
}
.c-itemGroupLabel:first-child{
	border: 0;
}
.c-itemGroupLabel.is-soldout{
	position: relative;
}
.c-itemGroupLabel.is-soldout:before{
	display: block;
	content: "";
	position: absolute;
	z-index: 2;
	background-color: #666;
	top: 0.25rem;
	left: 0.25rem;
	height: calc(100% - 0.5rem);
	width: calc(100% - 0.5rem);
	opacity: 0.7;
}
.c-itemGroupLabel.is-soldout:after{
	display: block;
	content: "品切れ中";
	position: absolute;
	z-index: 3;
	width: 100%;
	top: calc(50% - 14px);
	left: 0;
	text-align: center;
	color: #fff;
	font-size: 1.8rem;
}
.c-itemGroupLabel.js-selected{
	background-color: #fff5ea;
}
.c-itemGroup__radio{
	width: 10%;
}
.c-itemGroup__info{
	width: 90%;
}
.c-itemGroup__img{
	width: 25%;
	border: 1px solid #dedede;
}
.c-itemGroup__ttl{
	width: 75%;
	padding-left: 1rem;
}
.c-itemGroup__detail{
	width: 100%;
	margin-top: 1rem;
}
.c-itemTabContent{
	margin-top: 4rem;
}
.c-itemCopy{
	margin: 0 1rem;
}
.c-itemExpWrap{
	margin: 4rem 1rem 0 1rem;
}
.c-itemSpare__ttl{
	font-size: 1.7rem;
}
.c-spareItem{
	margin-top: 2rem;
}
.c-spareItem__ttl{
	font-size: 1.5rem;
}

/* ペーパー */
.c-itemPage__link__a {
    border-top: solid 1px #ccc;
    border-radius: 0!important;
}
.c-itemPage__link__a__youtube {
    background-image: url(/html/template/commons/assets/img/common/ico_sns_youtube.png);
    background-size: 40px;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 50px;
    line-height: 40px;
    display: inline-block;
}
.c-itemPage__linkWrap {
    border-bottom: solid 1px #ccc;
}
.c-table02__th, .c-table02__td {
    vertical-align: middle;
}
.c-table02__thead .c-table02__th {
    padding: .25rem 1rem;
}
.c-table02__thead .c-table02__th:first-child {
    width: 1rem;
}
.c-table02__thead .c-table02__th--01 {
    text-align: center;
    background-color: #ccc;
    border: 1px solid #ccc;
    color: #000;
}
.c-table02__thead .c-table02__th:last-child {
    padding: .25rem 1rem;
    width: calc(100% - 1em);
}
.c-table02__tbody .c-table02__th {
    width: 1rem;
    background-color: #000;
    color: #fff;
    padding: .5rem;
    border-bottom: 1px solid #fff;
}
.c-table02__td {
    padding: .5rem;
}
.c-table02__tbody .c-table02__td {
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.k-tablePaper .c-table02__img {
    margin: 0 auto;
}
.c-table02__tbody .c-table02__tr:last-child .c-table02__th {
    border-bottom: 1px solid #000;
}
.c-itemPage__link__a__paper-test {
    background-image: url(/resource/img/icon/ic_paper_ps_test.jpg);
    background-size: 39px;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 4.5rem;
    display: inline-block;
    line-height: 1.5;
    text-align: left;
}
.c-itemPage__link__a__paper-faq {
    background-image: url(/resource/img/icon/ic_paper_faq.jpg);
    background-size: 39px;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 4.5rem;
    display: inline-block;
    line-height: 1.5;
    text-align: left;
}
.c-itemPage__link__a__paper-ps {
    background-image: url(/resource/img/icon/ic_paper_ps.jpg);
    background-size: 39px;
    background-repeat: no-repeat;
    background-position: left center;
    padding: 1rem 0 1rem 4.5rem;
    display: inline-block;
    line-height: 1.5;
    text-align: left;
}
.c-itemPage__link__tmplt-show {
    background-image: url(/resource/img/icon/ic_paper_word.jpg);
    background-size: 39px;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 4.5rem;
    display: inline-block;
    line-height: 1.5;
    text-align: left;
}
.c-itemPage__link__tmplt-down {
    background-image: url(/resource/img/icon/ic_paper_word_test.jpg);
    background-size: 39px;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 4.5rem;
    display: inline-block;
    line-height: 1.5;
    text-align: left;
}
.c-itemPage__link__kit-faq {
    background-image: url(/resource/img/icon/ic_paper_faq.jpg);
    background-size: 39px;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 4.5rem;
    display: inline-block;
    line-height: 1.5;
    text-align: left;
}
.c-itemPage__link__kit-detail {
    background-image: url(/resource/img/icon/ic_paper_hm.jpg);
    background-size: 39px;
    background-repeat: no-repeat;
    background-position: left center;
    padding: 1rem 0 1rem 4.5rem;
    display: inline-block;
    line-height: 1.5;
    text-align: left;
}
/* ヒキタク */
.c-itemPage__link--01 {
    border-bottom: 1px solid #ccc;
}
.c-itemPage__link--2col {
    width: 50%;
}
.c-itemPage__link--2col:nth-child(odd) {
    border-right: 1px solid #ccc;
}
.c-itemPage__link--2col .c-itemPage__link__imgWrap {
    width: 35%;
    margin: 0 1rem 0 0;
}
.c-itemPage__link--2col .c-itemPage__link__txtWrap {
    width: calc(100% - (30% + 1.25rem + 20px));
}
/*.c-itemPage__link--2col.c-icArrow--single--01:after {
    border-top: 0;
    border-left: 0;
    border-image: linear-gradient(-135deg,#ff7951,#ffc35d) 1;
}*/

/* 「カートに入れる」ボタン
--------------------------------------------*/
.c-intoCartFixedFooter{
	background-color: rgba(255,255,255,0.7);
	position: fixed;
	left: 0;
	bottom: -100%;
	z-index: 20;
	transition: bottom 300ms ease;
}
.c-intoCartFixedFooter.is-active{
	bottom: 0;
}
.c-button__word--cart{
  position: relative;
  text-indent: 2em;
}
.c-button__word--cart::before{
  content: "";
  position: absolute;
  top: 29%;
  left: 27%;
  width: 25px;
  height: 25px;
	background-image: url(/html/template/commons/assets/img/common/ico_cart_w.svg);
  background-repeat: no-repeat;
  background-size: cover;
  display: inline-block;
}

.add-cart{
    transition: opacity 300ms ease;
}
.add-cart:hover{
    opacity: 0.75;
}

/* カートモーダル
--------------------------------------------*/
.c-itemModalInfo{
	margin: 3rem 1.5rem;
}
.c-cartPage__item__img--2col {
    width: 30%;
    height: auto;
    margin-right: .75rem;
}
.c-cartPage__item__txt--2col {
    width: calc(100% - 30% - .75rem);
}
.c-itemSpec{
	margin-left: 2rem;
}
.c-itemSpec__item{
	list-style-type: disc;
}
.c-setSearchList__item{
	width: 50%;
}
.c-setSearchList__item:nth-child(n+2){
	margin-top: 0.75rem;
}
.c-cartPage__setCont__inner {
    margin: 3rem 1.5rem 0 1.5rem;
}
.c-cartPage__setCont__item{
	margin-top: 3rem;
}
.c-cartPage__setCont__img {
    width: 20%;
    height: auto;
}
.c-cartPage__setCont__txt {
    width: 55%;
    padding: 0 1rem;
    
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	-webkit-line-clamp: 3;
}
.c-cartPage__setCont__changeBt {
    width: 25%;
}
.c-cartPage__setCont__gr.js-selected .c-cartPage__setCont__notSelected,
.c-cartPage__setCont__gr:not(.js-selected) .c-cartPage__setCont__selected{
    display: none !important;
}
.c-cartPage__searchItem:not(:first-of-type) {
    margin-top: 1rem;
}
.c-cartPage__searchItem__name {
    margin-left: 0.25rem;
}
.c-table01 {
    border: 1px solid #ccc;
}
.c-itemOptionModalFooter {
    padding: 1rem;
    border-top: 1px solid #e6e6e6;
    /**** customize start--------------------------*/
    border-radius: 0 0 3px 3px;
    /* -------------------------- customize end ****/
}
.c-modalInWrap--existFooter {
    height: calc(100% - 116px);
}
.c-cartPage__setCont__tit {
    background-color: #969696;
    color: #fff;
    padding: 0;
    width: 100%;
    text-align: center;
    
    line-height: 2.5;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	-webkit-line-clamp: 1;
}
.c-button--cart.js-inactive, .c-designBtn--cart.js-inactive {
    background: #ccc;
    pointer-events: none;
}
.c-modalInWrap .c-button--cart, .c-modalInWrap .c-designBtn--cart {
    max-width: calc(100% - 1em);
}
.c-cartPage__setCont {
    border-bottom: 1px solid #ccc;
    padding-bottom: 2rem;
}

/* アイテム説明タブ */
.p-detail__panel__btnArea{
	padding-top: 4rem;
}



/* おせちアレルギー表 */
.table-osechi-allergy{
	border-collapse: collapse;
}
.table-osechi-allergy__th{
	background-color: #f4f4f4;
}
.table-osechi-allergy__th,
.table-osechi-allergy__td{
	width: 25%;
	text-align: center;
	border: 1px solid #ccc;
	padding: .5rem 1rem;
	vertical-align: middle;
}


/* 大口見積もりバナー（主にウイルス対策商品） */
.bn-largeorder {
	background-color: #e5e5e5;
}
.bn-largeorder_tel {
	max-width: 420px;
	width: 100%;
}
.bn-largeorder_mail {
	max-width: 240px;
	width: 55%;
}

/* メイン商品タブ
--------------------------------------------*/
.main_item_desc {
    margin-top: 1rem;
}

/* 商品グループ */
.c-itemGroupList select option:disabled{
	display: none;
}