.main {
    background: url(../images/p-bg1.png) no-repeat, url(../images/p-bg2.png) no-repeat, url(../images/p-bg.jpg) no-repeat;
    background-position: left top 35%, right bottom, center top;
    background-size: 384px 269px, 761px 257px, cover;
}
.products {
    padding-top: clamp(0.313rem, -2.074rem + 10.91vw, 4.063rem);/*5-65*/
}
.products-inner {
    margin: 0 auto;
    width: 92%;
    max-width: var(--main-column);
}
.products-flex {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
}

.products-images {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    width: calc(100% - 450px);
}
.products-information {
    width: 400px;
	margin-bottom: 4em;
}
.products-main__sliders,
.products-thumb__sliders {
    overflow: hidden;
}
.products-main__sliders {
    margin: 0 0 20px;
    width: calc(100% - 147px);
}
.products-thumb__sliders {
    width: 122px;
}
.products-thumb__slider {
    gap: 20px;
}
.products-thumb__slider .products-slide:not(:last-child) {
    margin: 0 0 20px;
}
.products-slide {
    line-height: 0;
}
.products-thumb__slider .products-slide {
    cursor: pointer;
    opacity: .6;
}
.products-thumb__slider .products-slide.active {
    opacity: 1;
}
.products-thumb__slider .products-slide:hover {
    opacity: .8;
}
.products-slide img {
    width: 100%;
}

.products-ttl {
    margin: 0 0 25px;
}
.products-ttl h1 {
	font-family: "Zen Old Mincho", serif;
	color: var(--ft-color3);
    font-size:clamp(1.25rem, 0.852rem + 1.82vw, 1.875rem);/*20-30*/
    font-weight: 500;
	letter-spacing: .04em;
}

.products-tags {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    gap: 6px;
    margin: 25px 0 0;
}

.products-price {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0 0 35px;
}
.price-arrow {
    display: block;
    height: 20px;
    margin: 0 20px;
    width: 25px;
}
.products-price .price .p {
    color: #3d3735;
    font-size: 28px;
    font-weight: 500;
}
.products-price .price .p .yen,
.products-price .price .p .tax {
	font-family: "Noto Sans JP", sans-serif;
    color: #3d3735;
    font-size: 60%;
}
.products-price .price .p .num{
	font-family: 'Ysabeau Office', sans-serif;
	letter-spacing: -.04em;
	font-size: inherit;
	padding: 0 .15em 0 .1em;
}
.products-price .price.original .border {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    position: relative;
    top: -5px;
}
.products-price .price.original .p {
    color: #3d3735;
    font-size: 24px;
    font-weight: 500;
    position: relative;
}
.products-price .price.original .border .p::after {
    background: var(--ft-color1);
    content: "";
    height: 1px;
    margin: auto;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%;
}
.products-price .price.original .p .yen,
.products-price .price.original .p .tax {
    color: #3d3735;
    font-size: 20px;
}
.products-price .price.original .txt {
    display: block;
    font-size: 12px;
}
.products-price .saletag {
    border: 2px solid var(--main-theme-color);
    color: var(--main-theme-color);
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    margin-left: 10px;
    padding: 1px 5px;
}
.products-price .saletag .num {
    color: var(--main-theme-color);
    font-size: 140%;
}
.products-price .saletag .symbol {
    color: var(--main-theme-color);
    font-size: 120%;
}

.products-comment {
    border: 1px solid #acacac;
    border-left: 0;
    border-right: 0;
	color: var(--ft-color3);
    margin: 0 0 25px;
    padding: 25px 0;
	color: #3b2e2e;
}
.products-comment p {
	font-family: "Zen Old Mincho", serif;
    font-size: clamp(0.969rem, 0.909rem + 0.27vw, 1.063rem);/*15.5-17*/
    font-weight: 600;
    line-height: 1.8em;
	letter-spacing: .05em;
	color: inherit;
}
.products-related {
    margin: 30px 0 45px;
}
.related_list {
    	width: 94%;
    	margin-left: auto;
}
.related_list ul li {
    /*width: 90%;*/
}
.related_list ul li:not(:last-child) {
    margin: 0 0 15px;
}
.related_list ul li a {
	font-family: "Zen Kaku Gothic Antique", serif;
    background: #e2dbd0;
    border: 1px solid #353432;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
    /*min-height: 55px;*/
    padding: .8em .6em;
    width: 100%;
}
.related_list ul li a.current {
    background: #353432;

}

.products-cart {
    margin: 0 0 15px;
}
.products-code {
    color: #868686;
    font-size: 18px;
    font-weight: 400;
    margin: 0 0 15px;
}
.products-quantity {
    border: 1px solid #ccc;
    border-left: 0;
    border-right: 0;
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    margin: 0 0 35px;
    max-width: max-content;
}
.products-quantity input,
.products-quantity__btn {
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50px;
    outline: none;
    text-align: center;
    width: 50px;
}
.products-quantity__btn{
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
}
.products-quantity input {
	font-family: 'Ysabeau Office', sans-serif;
    border: 1px solid #ccc;
    border-top: 0;
    border-bottom: 0;
	font-size: 22px;
	font-weight: 500;
}
.products-quantity__btn {
    cursor: pointer;
}
.products-quantity__btn.minus {
    border: 0;
    border-left: 1px solid #ccc;
}
.products-quantity__btn.plus {
    border: 0;
    border-right: 1px solid #ccc;
	font-weight: 550;
}

.products-btn {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
}
.products-cart__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 65px;
    width: calc(100% - 85px);
}
.cart-btn {
    height: 100%;
    width: 100%;
}
.cart-btn a {
	font-family: "Zen Old Mincho", serif;
    background: #b7935a;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 17px;
    font-weight: 700;
    height: 100%;
    text-align: center;
    width: 100%;
}
.cart-btn a img {
    margin-right: 8px;
    width: 21px;
}

.products-favorite__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 65px;
    margin-left: 20px;
    width: 65px;
}
.favorite-btn {
    height: 100%;
    width: 100%;
}
.favorite-btn a {
    background: none;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
}

.products-contact {
    margin: 0 0 35px;
}
.products-contact a {
    font-family: "Zen Kaku Gothic Antique", serif;
    font-size: clamp(0.844rem, 0.824rem + 0.09vw, 0.875rem);/*13.5-14*/
    font-weight: 500;
    text-decoration: underline;
    letter-spacing: .03em;
    color: var(--main-theme-color);
}

.products-gift {
    margin: 0 0 15px;
}
.products-gift a {
    border-bottom: 1px solid var(--ft-color1);
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    padding: 2px 0;
}

.products-info__tab {
    background: #fff;
    margin: 0 0 25px;
}
.info-tab__head {
    display: flex;
    justify-content: center;
    align-items: center;
}
.info-tab__btn {
	font-family: "Zen Kaku Gothic Antique", serif;
    background: #e1e1e1;
	color: var(--ft-color1);
    cursor: pointer;
    font-size: 16px;
    font-weight: 450;
    padding: 15px;
    text-align: center;
    width: calc(100% / 2);
	letter-spacing: .1em;
    text-indent: .1em;
}
.info-tab__btn.active {
    background: #fff;
	color: var(--ft-color2);
}
[data-btn="tab2"]{
	letter-spacing: .5em;
    text-indent: .5em;
}
[data-btn="tab3"]{
    display:none;
}
.info-tab__panel {
    display: none;
}
.info-tab__panel.show {
    display: block;
}

.info-panel__in {
	min-height: 120px;
    padding: 20px;
	padding-top: 20px;
}
.info-panel__in > p,
.itemInfo_table *{
	font-family: "Zen Kaku Gothic Antique", serif;
	font-weight: 450;
	color: #473b3b;
    letter-spacing: .02em;
}
.info-panel__in > p {
    font-size: 16px;
    line-height: 1.8em;
}
table.itemInfo_table{ border-collapse: collapse;}
.itemInfo_table th,.itemInfo_table td{
    border:solid 1px #e1e1e1;
    padding: 1ch 1.5ch;
    border-left: none;
    border-right: none;
}
.itemInfo_table th{
	font-family: "Zen Kaku Gothic Antique", serif;
    vertical-align: top;
    width: 25%;
	background: #f9f9f9;
}
.itemInfo_table td,.itemInfo_table td *{
	font-family: "Noto Sans JP", sans-serif;
}
.itemInfo_table td{
    font-size: 17px;
	line-height: 1.4;
}
.itemInfo_table td span.small{
    font-size: 14.5px;
}
.itemInfo_table td span.small._link{
    padding: 0 10px;
    text-decoration: underline;
    color: #a3721e;
    & a{
        color: #a3721e;
    }
}
.itemInfo_table td span.yen{
    font-size:0.8em;
    margin-left: 2px;
}
.info-panel__in .itemInfo_table  p{
    margin: 3px 0;
    font-size: 13.5px;
}

.products-link__card a {
    border: 1px solid var(--ft-color3);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
}
.link-card__image {
    width: 35%;
}

.link-card__text {
    padding-right: 25px;
    position: relative;
    width: 60%;
}
.link-card__text::after {
    background: url(../images/icon-arrow-r.png) no-repeat;
    background-position: center;
    background-size: 9px 13px;
    content: "";
    display: inline-block;
    height: 13px;
    margin: auto;
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    width: 9px;
}
.link-card__text .link-card__ttl {
    font-size: 16px;
    font-weight: 500;
    margin: 0 0 15px;
}
.link-card__text .link-card__txt {
    font-size: 14px;
    font-weight: 400;
}


@media screen and (max-width: 968px) {
    .products-images {
        width: 300px;
    }
    .products-information {
        width: calc(100% - 325px);
    }
    .price-arrow {
        height: 15px;
        margin: 0 10px;
        width: 20px;
    }
    .products-price .price.original .p {
        font-size: 16px;
    }
    .products-price .saletag {
        font-size: 12px;
        margin-left: 10px;
    }
}
@media screen and (max-width: 768px) {
    .products-images,
    .products-information {
        width: 100%;
    }
    .products-images {
        margin: 0 0 25px;
    }
	.products-comment p{
		line-height: 1.5em;
	}
    .products-price .price.original .p {
        font-size: 18px;
    }
    .products-price .saletag {
        font-size: 14px;
        margin-left: 10px;
    }
	.related_list ul li a{
		padding: .5em .5em;
    	width: 90%;
	}
    .products-cart__btn {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 55px;
        width: calc(100% - 75px);
    }
}
@media screen and (max-width: 468px) {
    .price-arrow {
        height: 10px;
        margin: 0 5px;
        width: 15px;
    }
    .products-price .price.original .p {
        font-size: 14px;
    }
    .products-price .saletag {
        font-size: 12px;
        margin-left: 10px;
    }
}

.recommend {
    padding: 0 0 65px;
}


.option-area {
    margin: 0 0 35px;
}
.makeshop-option-wrap:not(:last-child) {
    margin: 0 0 35px;
}
label.makeshop-option-select-wrap {
    display: block;
    width: 100%;
}
.makeshop-option-label {
	font-family: "Zen Kaku Gothic Antique", serif;
	font-weight: 450;
    color: var(--ft-color3);
    font-size: 16px;
    margin: 0 0 8px;
	padding: 0 0 0 .2em;
}
.option-area input,
.option-area select {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: #fff;
    border: 1px solid #a7a7a7;
    border-radius: 0;
    display: block;
    font-size: 18px;
    outline: none;
    padding: .5em 1.5em;
    width: 100%;
}
.option-area select {
    background-image: url(../images/icon-triangel.png);
    background-repeat: no-repeat;
    background-size: 11px 10px;
    background-position: right 1.5em center;
	font-family: "Zen Old Mincho", serif;
}
.option-area input:disabled,
.option-area select:disabled {
    color: light-dark(graytext, rgb(170, 170, 170));
    border-color: rgba(118, 118, 118, 0.3);
}

.introcolumn .items-list .item-card {
    display: none;
}
.introcolumn .items-list .item-card:nth-child(-n+2) {
    display: block;
}
@media screen and (max-width: 1068px) {
    .products-images {
        display: block;
        width: calc(100% - 430px);
    }
    .products-main__sliders {
        margin: 0 0 20px;
        width: 100%;
    }
    .products-thumb__sliders {
        width: 100%;
    }
    .products-thumb__slider {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: 10px;
    }
    .products-thumb__slider .products-slide {
        width: 100px;
    }
    .products-thumb__slider .products-slide:not(:last-child) {
        margin: 0;
    }
}
@media screen and (max-width: 968px) {
    .products-images {
        width: calc(100% - 375px);
    }
    .products-information {
        width: 350px;
    }
    .products-price {
        margin: 0 0 25px;
    }
    .products-price .price.original .p {
        font-size: 18px;
    }
    .products-price .price.original .p .yen,
    .products-price .price.original .p .tax {
        font-size: 18px;
    }
    .products-price .price.original .txt {
        font-size: 11px;
    }
    .products-related {
        margin: 25px 0 30px;
    }
    .related_list ul li a {
        height: 50px;
    }

    .products-code {
        font-size: 16px;
    }
    .products-quantity input,
    .products-quantity__btn {
        height: 45px;
        width: 45px;
    }
    
    .products-cart__btn {
        height: 65px;
        width: calc(100% - 85px);
    }
    .products-favorite__btn {
        height: 65px;
        margin-left: 20px;
        width: 65px;
    }
    
    .products-contact {
        margin: 0 0 30px;
    }
    .products-info__tab {
        margin: 0 0 20px;
    }
    .info-panel__in {
        padding: 15px;
    }
    .info-panel__in p {
        font-size: 14px;
    }
    .option-area {
        margin: 0 0 35px;
    }
    .makeshop-option-wrap:not(:last-child) {
        margin: 0 0 25px;
    }
    .makeshop-option-label {
        font-size: 16px;
    }
    .option-area input,
    .option-area select {
        font-size: 16px;
    }
}
@media screen and (max-width: 768px) {
    .products-images {
        margin-top: 25px;
        width: 100%;
    }
    .products-information {
        width: 100%;
    }
}

.option-modal__bg {
    background: rgb(0 0 0 / 30%);
    display: none;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: 998;
}
.option-modal {
    background: #fff;
    display: none;
    filter: drop-shadow(0 0 6px rgb(0 0 0 / 12%));
    height: max-content;
    margin: auto;
    padding: 20px;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 95%;
    max-width: 650px;
    z-index: 999;
}
.option-modal__inner {
    position: relative;
}
.option-modal__close {
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 24px;
    height: 45px;
    position: absolute;
    right: -15px;
    top: -15px;
    width: 45px;
}
.option-modal__head {
    margin: 0 0 15px;
}
.option-modal__head h2 {
    font-size: 20px;
    font-weight: 500;
}
.option-modal__items {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
}
.option-modal__item {
    width: 48.5%;
}
.option-modal__ttl {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0 0 8px;
}
.option-modal__ttl p {
    font-size: 16px;
    margin-left: 6px;
}
.option-modal__image {
    height: 0;
    overflow: hidden;
    padding: 0 0 65%;
    position: relative;
}
.option-modal__image img {
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
@media screen and (max-width: 768px) {
    .option-modal__ttl p {
        font-size: 14px;
        margin-left: 3px;
    }
}
@media screen and (max-width: 348px) {
    .option-modal__item {
        width: 100%;
    }
    .option-modal__item:not(:last-child) {
        margin: 0 0 15px;
    }
}

.makeshop-option-btn {
    background: #fff;
    border: 1px solid #a7a7a7;
    border-radius: 0;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    margin: 0 0 35px;
    outline: none;
    padding: 15px;
    width: 100%;
}
.makeshop-option-btn span.required {
    margin: 0 0 0 10px;
    font-size: 14px;
    color: #fff;
    background: #d32828bd;
    padding: .4em .8em;
}
.makeshop-option-wrap.no-mar {
    margin: 0;
}
.nameprint-area {
    margin: 15px 0 0;
}
.nameprint-title {
    font-size: 15px;
}
.nameprint-total,
.nameprint-character {
    font-size: 13px;
}
.makeshop-option-select-wrap {
    position: relative;
}
.makeshop-option-select-wrap.disabled::after {
    background: #fff;
    border: 1px solid #a7a7a7;
    box-sizing: border-box;
    color: light-dark(graytext, rgb(170, 170, 170));
    content: "選択不可";
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 18px;
    height: 100%;
    padding: 12px;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 9;
}

.relation-head h3{
	letter-spacing: .05em;
}