/* respo */
.respo-item-accumulation-buttons {
    font-family: 'Shippori Mincho', serif;
    font-weight: 500;
    letter-spacing: 0.1rem;
    width: 22.6rem;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    color: #fff;
    font-size: 1.7rem;
    margin-top: 1rem;
}

div[data-respo="item"] .respo-item-accumulation-modal-button {
    height: 6.2rem;
}

.respo-item-accumulation-guide-modal-button > img {
    width: auto;
}

/* form */
.p-product select {
    font-family: 'Shippori Mincho', serif;
    padding: 5px;
    height: 40px;
    border: 1px solid #bfbfbf;
    font-size: 16px;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.1rem;
}

.p-product input[type=text] {
    font-family: 'Shippori Mincho', serif;
    padding: 5px;
    height: 40px;
    border: 1px solid #bfbfbf;
    font-size: 16px;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.1rem;
    border-radius: 0;
}

.p-product-main {
    justify-content: space-between;
    margin-bottom: 10rem;
}

/*パスワード*/
.product_password {
    padding-bottom: 3.6rem;
}

.product_password p {
    font-size: 1.4rem;
    line-height: 1.5;
    padding-bottom: 1.2rem;
}


/*商品画像*/
.p-product-img {
    width: 50%;
}

.p-product-img__main-item {
    position: relative;
    text-align: center;
}

.p-product-thumb-list {
    margin: 5px -4px 0;
}

.p-product-thumb-list__item {
    margin-bottom: 8px;
    padding-left: 4px;
    padding-right: 4px;
    width: 25%;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.p-product-thumb-list__item:hover,
.p-product-thumb-list__item.is-current {
    opacity: 0.7;
    cursor: pointer;
}

.p-product-thumb-list__img img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
}

/* 商品画像 slider */
.p-product-img__main .slick-track {
    margin-left: 0;
    margin-right: 0;
}

.p-product-img__main .slick-prev,
.p-product-img__main .slick-next {
    top: 50%;
    width: 36px;
    height: 36px;
    transition: all 0.4s ease;
    z-index: 1;
}

.p-product-img__main .slick-prev:before,
.p-product-img__main .slick-next:before {
    content: "";
    position: absolute;
    top: 7px;
    left: 10px;
    width: 22px;
    height: 22px;
    border-left: 1px solid #fff;
    border-top: 1px solid #fff;
    transition: all 0.4s ease;
    z-index: 1;
}

.p-product-img__main .slick-prev {
    left: 15px;
}

.p-product-img__main .slick-prev:before {
    transform: rotate(-45deg);
}

.p-product-img__main .slick-next {
    right: 15px;
}

.p-product-img__main .slick-next:before {
    left: 4px;
    transform: rotate(135deg);
}

/*商品基本情報*/
.p-product-info {
    width: 38%;
    position: relative;
}

.p-product-info__ttl {
    font-size: 2.2rem;
    line-height: 1.5;
    padding-bottom: 2.4rem;
}

.p-product-info__id span {
    font-size: 1.4rem;
    margin-bottom: 1.4rem;
    color: #90326d;
    border: 1px solid;
    display: inline-block;
    padding: .5rem .6rem;
}

.p-product-price {
    font-size: 1.8rem;
    padding-bottom: 4.8rem;
}

.p-product-price__list-price {
    text-decoration: line-through;
    padding-bottom: 1rem;
    font-size: 1.5rem;
}

.p-product-price__normal {
    text-decoration: line-through;
    padding-bottom: 2rem;
    font-size: 1.5rem;
}

.p-product-price__normal + .p-product-price__sell {
    color: #90326d;
}

.p-product-price__info {
    color: #90326d;
    padding-top: 2.4rem;
    font-size: 1.4rem;
}

.p-product-price__info a {
    text-decoration: underline;
}

/* 数量 */

.p-product-form-stock {
    padding-bottom: 4rem;
}

.item_cart_form_input_text {
    font-size: 1.6rem;
    padding-bottom: 1.2rem;
}

.item_cart_form_input {
    align-items: center;
}

.item_cart_form_input input {
    text-align: center;
    width: 7.2rem;
    height: 4.2rem;
    background: #fff;
    font-size: 2.2rem;
    border-radius: 0;
    border: 1px solid #707070;
}

.number_cotroler_container {
    margin-left: 3rem;
}

.number_cotroler {
    font-size: 0;
    padding: 2px;
    display: block;
}

.number_cotroler_up::before,
.number_cotroler_down::before {
    border-left: 1px solid;
    border-top: 1px solid;
    width: 8px !important;
    height: 8px !important;
    content: "";
    display: block;
}

.number_cotroler_up::before {
    transform: rotate(45deg);
}

.number_cotroler_down::before {
    transform: rotate(225deg);
}

.item_cart_form_stock_number {
    font-size: 1.3rem;
}

/*カート*/

.c-btn-cart {
    font-family: 'Shippori Mincho', serif;
    font-weight: 500;
    letter-spacing: 0.1rem;
    width: 22.6rem;
    height: 6.2rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    background: #90326D;
    border: 1px solid #90326D;
    color: #fff;
    font-size: 1.7rem;
}

.c-btn-cart:hover {
    background: #fff;
    color: #90326D;
}

.c-btn-cart.is-disabled {
    background: #A7A7A7;
    cursor: default;
    border: none;
}

.c-btn-cart.is-soldout {
    background: #A7A7A7;
    cursor: default;
    border: none;
}

.c-btn-cart.is-disabled:hover,
.c-btn-cart.is-soldout:hover {
    color: #fff;
}

/*クーポン*/

.product_coupon {
    width: 80%;
    margin-top: 6rem;
}

.product_coupon a {
    display: block;
}

.product_coupon > * + * {
    margin-top: 3rem;
}

/*リンク*/
.p-product-link-list {
    margin: 0;
    padding-top: 4.4rem;
    font-size: 1.4rem;
}

.p-product-link-list + .p-product-link-list{
    padding-top: 3rem;
}

.p-product-link-list__item + .p-product-link-list__item {
    padding-top: 1.6rem;
}

.p-product-link-list__item span {
    color: #90326D;
}

/*商品詳細説明*/

/*ご注意*/

.item_caution {
    color: #90326d;
    font-size: 1.6rem;
    line-height: 1.875;
    border: 1px solid;
    padding: 4rem 6rem;
    margin-bottom: 12rem;
    text-align: center;
}

/*About Products*/

.item_products {
    padding-bottom: 15.8rem;
}

.item_heading {
    position: relative;
    font-size: 2.6rem;
    text-align: center;
    font-weight: 500;
    font-style: italic;
    color: #90326D;
    padding-bottom: 7rem;
}

.item_heading::after {
    content: "";
    position: absolute;
    display: block;
    bottom: 18px;
    left: 0;
    right: 0;
    margin: auto;
    width: 1px;
    height: 37px;
    background: rgba(144, 50, 109, 0.35);
}

#gem_container .item_heading {
    color: #333;
}

#gem_container .item_heading::after {
    background: #333;
}

.item_products_heading {
    font-size: 2rem;
    line-height: 1.5;
    text-align: center;
    padding-bottom: 2.8rem;
}

.item_products_text {
    font-size: 1.6rem;
    line-height: 1.875;
    text-align: center;
}

/*商品ごとの詳細*/
.item_products_detail {
    margin-top: 10rem;
    margin-bottom: 10rem;
}

.item_products_detail_heading {
    font-size: 3rem;
    line-height: 1.5;
    font-weight: 500;
    margin-bottom: 3.2rem;
    color: #90326d;
}

.item_products_detail_heading .jp {
    font-size: 1.6rem;
}

#gem_container .item_products_detail_heading {
    color: #333;
}

.item_products_detail_inner {
    justify-content: space-between;
    align-items: center;
}

.item_products_detail:nth-of-type(2) .item_products_detail_inner {
    flex-direction: row-reverse;
}

.item_products_detail_img {
    width: 30%;
}

.item_products_detail_body {
    width: 62%;
}

.item_products_detail_text {
    font-size: 1.6rem;
    line-height: 1.875;
}

/*スペック*/
.item_spec {
    width: 53rem;
    margin: auto;
    color: #90326D;
    margin-top: 9rem;
}

#gem_container .item_spec {
    color: #333;
}

.item_spec_inner {
    border-left: 1px solid rgba(144, 50, 109, 0.35);
    border-right: 1px solid rgba(144, 50, 109, 0.35);
    padding-left: 3rem;
    padding-right: 3rem;
}

#gem_container .item_spec_inner {
    border-color: #333;
}

.item_spec_heading {
    font-size: 2.6rem;
    font-weight: 500;
    font-style: italic;
    padding-bottom: 3.6rem;
}

.item_spec_list {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.5;
}

.item_spec_list dt {
    width: 30%;
    font-weight: 600;
}

.item_spec_list dd {
    width: 70%;
    margin: 0;
}

.item_spec_list dt:not(:last-child),
.item_spec_list dd:not(:last-child) {
    padding-bottom: 1.2rem;
}

.item_spec_memo {
    margin-top: 4rem;
    font-size: 1.3rem;
    line-height: 1.9;
}

/*ギフトバナー*/

.gift_banner {
    width: 72%;
    margin: 8rem auto 0;
    display: block;
}

/*ストーリー*/
.item_story {
    width: 72%;
    margin: 0 auto 16rem;
}

.item_story_text {
    font-size: 1.6rem;
    line-height: 1.875;
}

.item_story_link {
    text-align: center;
    padding-top: 4rem;
}

.item_story_link a {
    color: #90326D;
    font-size: 1.6rem;
    line-height: 2.4;
    padding-bottom: 0.8rem;
    border-bottom: 1px solid;
}

.item_story_link a:hover {
    color: #333;
    text-decoration: none;
}


/*酒蔵*/
.item_brewery {
    padding-bottom: 12rem;
    border-image: linear-gradient(0deg, rgba(144, 50, 109, 0.35) 1px, #0000 0) fill 0 //0 100vw 0 100vw;
}

.item_brewery_body {
    width: 60%;
}

.item_brewery_name {
    font-size: 2rem;
    line-height: 1.5;
    padding-bottom: 4.4rem;
}

.item_brewery_text {
    font-size: 1.6rem;
    line-height: 1.875;
    padding-bottom: 3.6rem;
}

.item_brewery_logo {
    width: 40%;
    padding-left: 7%;
}

.item_brewery_logo img {
    width: 64%;
    display: block;
    margin: auto;
}

/*飲み方・レシピ*/
.item_howto {
    padding-top: 9.4rem;
    padding-bottom: 9.4rem;
    margin-bottom: 9.4rem;
    border-image: linear-gradient(0deg, rgba(144, 50, 109, 0.35) 1px, #0000 0) fill 0 //0 100vw 0 100vw;
}

.item_recipe {
    padding-bottom: 2rem;
}

.item_howto_img,
.item_recipe_img {
    width: 60%;
}

.item_howto_img {
    justify-content: space-between;
    align-items: flex-start;
}

.item_howto_img img {
    width: 48.8%;
}

.item_howto_body,
.item_recipe_body {
    width: 40%;
    padding-left: 5%;
}

.item_howto_heading,
.item_recipe_heading {
    font-size: 2.2rem;
    line-height: 1.5;
    color: #90326D;
    padding-bottom: 4.8rem;
}

.item_recipe_text_main {
    font-size: 1.8rem;
    line-height: 1.5;
    padding-bottom: 3.2rem;
}

.item_howto_text {
    font-size: 1.6rem;
    line-height: 1.875;
}

.item_recipe_text_sub {
    font-size: 1.6rem;
    line-height: 1.875;
    padding-bottom: 3.6rem;
}

.item_recipe_text_sub span {
    color: #90326D;
}

.item_howto_text_en {
    font-size: 1.6rem;
    font-weight: 500;
    font-style: italic;
    color: #90326D;
    padding-bottom: .7rem;
}

.item_howto_text_en span {
    font-size: 1.8rem;
}

.item_howto_text_container + .item_howto_text_container {
    padding-top: 2.4rem;
}

.item_howto_text_container:last-of-type {
    padding-bottom: 3.6rem;
}

.item_howto_link,
.item_recipe_link {
    color: #90326D;
    font-size: 1.7rem;
    line-height: 2.4;
    padding-bottom: 0.8rem;
    border-bottom: 1px solid;
}

.item_howto_link:hover,
.item_recipe_link:hover {
    text-decoration: none;
    color: #333;
}

.item_link_lp {
    margin-top: 6rem;
    border: 1px solid #333;
    color: #333;
}

.item_link_lp:hover {
    background: #333;
}


/* レビュー */
.p-product-review {
    width: 72%;
    margin: 10rem auto 10rem;
    padding-top: 10rem;
    position: relative;
}

.p-product-review::before{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    content: "";
    border-image: linear-gradient(0deg, rgba(144, 50, 109, 0.35) 1px, #0000 0) fill 0 / / 0 100vw 0 100vw;
    width: 100%;
    height: 1px;
}

.p-product-review__item + .p-product-review__item {
    padding-top: 4rem;
    margin-top: 4rem;
    border-top: 1px solid rgba(144, 50, 109, 0.35);
}

.p-product-review__rates{
    overflow: hidden;
    margin-bottom: 1.6rem;
}

.icon_star {
    float: left;
    width: 8rem;
    overflow: hidden;
}

.icon_star img {
    width: 16rem;
}

.p-product-review__heading {
    margin-bottom: 1.6rem;
}

.p-product-review__ttl {
    line-height: 1.4;
    font-size: 2rem;
    font-weight: 600;
}

.p-product-review-info {
    margin: 1.6rem 0;
}

.p-product-review-info__item {
    display: inline-block;
    font-size: 1.3rem;
}

.p-product-review-info__item.is-type {
    margin-right: 1.6rem;
}

.p-product-review__img {
    width: 40%;
    margin-bottom: 2rem;
}

.p-product-review__body {
    font-size: 1.6rem;
    line-height: 1.8;
}


/* レビュー 返信 */
.p-product-review-reply {
    margin-top: 3rem;
    padding-top: 3rem;
    padding-left: 2rem;
    border-top: 1px dotted #ddd;
}

.p-product-review-reply__ttl {
    font-size: 1.4rem;
    font-weight: 600;
}

.p-product-review-reply__body {
    font-size: 1.5rem;
    line-height: 1.6;
    margin-top: 1.4rem;
    margin-bottom: 1.4rem;
}

.p-product-review-reply__date {
    font-size: 1.2rem;
}

.p-product-review__btn {
    margin-top: 8rem;
    text-align: center;
}

.p-product-review__text{
    color: #90326d;
    font-size: 1.6rem;
    margin-bottom: 1rem;
}

/*----------------------------------------------------

スマートフォンのみ

----------------------------------------------------*/


@media screen and (max-width: 899px) {

    /* Respo */
    .respo-item-accumulation-buttons {
        width: 100%;
        font-size: 1.6rem;
    }

    div[data-respo="item"] .respo-item-accumulation-modal-button {
        height: 5.4rem;
    }

    .p-product-main {
        margin-bottom: 7.2rem;
    }

    /*商品画像*/
    .p-product-img {
        width: 100%;
        margin-bottom: 2.8rem;
    }

    .p-product-thumb-list {
        margin: 8px -4px 0;
    }

    /*商品基本情報*/
    .p-product-info {
        width: 100%;
    }

    .p-product-info__ttl {
        font-size: 2rem;
        padding-bottom: 2rem;
    }

    .p-product-info__id span {
        font-size: 1.3rem;
        margin-bottom: 1.2rem;
        padding: .5rem .6rem;
    }

    .p-product-price {
        font-size: 1.6rem;
        padding-bottom: 4rem;
    }

    /* 数量 */

    .p-product-form-stock {
        padding-bottom: 3.2rem;
    }

    .item_cart_form_input_text {
        font-size: 1.3rem;
        padding-bottom: 1rem;
    }

    .item_cart_form_input {
        align-items: center;
    }

    .item_cart_form_input input {}

    .number_cotroler_container {
        margin-left: 1.6rem;
    }

    .number_cotroler {
        font-size: 0;
        padding: 2px;
        display: block;
    }

    .number_cotroler_up::before,
    .number_cotroler_down::before {
        border-left: 1px solid;
        border-top: 1px solid;
        width: 8px !important;
        height: 8px !important;
        content: "";
        display: block;
    }

    /*カート*/

    .c-btn-cart {
        width: 100%;
        height: 5.4rem;
        font-size: 1.6rem;
    }

    /*クーポン*/
    .product_coupon{
        width: 100%;
    }
    
    .product_coupon > * + * {
        margin-top: 2rem;
    }


    /*リンク*/
    .p-product-link-list {
        padding-top: 4rem;
        position: relative;
        bottom: unset;
        left: unset;
        font-size: 1.2rem;
    }

    .p-product-link-list__item + .p-product-link-list__item {
        padding-top: 1.3rem;
    }


    /*商品詳細説明*/
    /*ご注意*/
    .item_caution {
        font-size: 1.4rem;
        padding: 2rem 2rem;
        margin-bottom: 8rem;
        text-align: left;
    }

    /*About Products*/

    .item_products {
        padding-bottom: 8rem;
    }

    .item_heading {
        font-size: 2.rem;
        padding-bottom: 6rem;
    }

    .item_heading::after {
        bottom: 18px;
        height: 28px;
    }

    .item_products_heading {
        font-size: 1.7rem;
        line-height: 1.8;
        padding-bottom: 3.2rem;
    }

    .item_products_text {
        font-size: 1.4rem;
        text-align: left;
    }


    /*商品ごとの詳細*/
    .item_products_detail {
        margin-top: 7rem;
        margin-bottom: 7rem;
    }

    .item_products_detail_heading {
        font-size: 2.7rem;
        margin-bottom: 2.4rem;
    }

    .item_products_detail_heading .jp {
        font-size: 1.4rem;
    }

    .item_products_detail:nth-of-type(2) .item_products_detail_inner {
        flex-direction: column;
    }

    .item_products_detail_img {
        width: 100%;
    }

    .item_products_detail_body {
        padding-top: 3.2rem;
        width: 100%;
    }

    .item_products_detail_text {
        font-size: 1.4rem;
    }


    /*スペック*/
    .item_spec {
        width: 100%;
        margin-top: 4.8rem;
    }

    .item_spec_inner {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .item_spec_heading {
        font-size: 2.2rem;
        padding-bottom: 2rem;
    }

    .item_spec_list {
        font-size: 1.3rem;
    }

    .item_spec_list dt {
        width: 36%;
    }

    .item_spec_list dd {
        width: 64%;
    }

    .item_spec_list dt:not(:last-child),
    .item_spec_list dd:not(:last-child) {
        padding-bottom: 1rem;
    }

    .item_spec_memo {
        margin-top: 2.8rem;
        font-size: 1.2rem;
    }

    /*ギフトバナー*/

    .gift_banner {
        width: 100%;
        margin: 5rem auto 0;
    }

    /*ストーリー*/
    .item_story {
        width: 100%;
        margin: 0 auto 10rem;
    }

    .item_story_text {
        font-size: 1.4rem;
    }

    .item_story_link {
        text-align: left;
        padding-top: 2.8rem;
    }

    .item_story_link a {
        font-size: 1.5rem;
    }

    /*酒蔵*/
    .item_brewery {
        padding-bottom: 6rem;
    }

    .item_brewery_inner {
        flex-direction: column-reverse;
    }

    .item_brewery_body {
        width: 100%;
    }

    .item_brewery_name {
        font-size: 1.6rem;
        text-align: center;
        padding-bottom: 2.8rem;
    }

    .item_brewery_text {
        font-size: 1.4rem;
        padding-bottom: 2.4rem;
    }

    .item_brewery_logo {
        width: 100%;
        padding-left: 0;
        padding-bottom: 3.2rem;
    }

    .item_brewery_logo img {
        width: 42%;
    }

    /*飲み方・レシピ*/
    .item_howto {
        padding-top: 4.8rem;
        padding-bottom: 4.8rem;
        margin-bottom: 4.8rem;
    }

    .item_howto_img,
    .item_recipe_img {
        width: 100%;
    }

    .item_howto_body,
    .item_recipe_body {
        width: 100%;
        padding-left: 0;
        padding-top: 4rem;
    }

    .item_howto_heading,
    .item_recipe_heading {
        font-size: 1.9rem;
        padding-bottom: 2.8rem;
    }

    .item_howto_text {
        font-size: 1.4rem;
    }

    .item_recipe_text_sub {
        font-size: 1.4rem;
        padding-bottom: 3.2rem;
    }

    .item_howto_text_en {
        font-size: 1.4rem;
        padding-bottom: .5rem;
    }

    .item_howto_text_en span {
        font-size: 1.7rem;
    }

    .item_howto_text_container + .item_howto_text_container {
        padding-top: 2rem;
    }

    .item_howto_text_container:last-of-type {
        padding-bottom: 3.2rem;
    }

    .item_howto_link,
    .item_recipe_link {
        font-size: 1.5rem;
    }

    /* レビュー */
    .p-product-review {
        width: 100%;
        margin: 4.8rem auto;
        padding-top: 4.8rem;
    }

    .p-product-review__item + .p-product-review__item {
        padding-top: 3.2rem;
        margin-top: 3.2rem;
    }

    .p-product-review__rates{
        margin-bottom: 1.2rem;
    }

    .icon_star {
        width: 7.5rem;
    }

    .icon_star img {
        width: 15rem;
    }

    .p-product-review__heading {
        margin-bottom: 1.6rem;
    }

    .p-product-review__ttl {
        line-height: 1.4;
        font-size: 1.8rem;
    }

    .p-product-review-info {
        margin: 1.2rem 0;
    }

    .p-product-review-info__item {
        display: inline-block;
        font-size: 1.2rem;
    }

    .p-product-review-info__item.is-type {
        margin-right: 2rem;
    }

    .p-product-review__img {
        width: 56%;
        margin-bottom: 1.6rem;
    }

    .p-product-review__body {
        font-size: 1.4rem;
    }


    /* レビュー 返信 */
    .p-product-review-reply {
        margin-top: 2.4rem;
        padding-top: 2.4rem;
        padding-left: 1.6rem;
    }

    .p-product-review-reply__ttl {
        font-size: 1.3rem;
    }

    .p-product-review-reply__body {
        font-size: 1.3rem;
        margin-top: 1.2rem;
        margin-bottom: 1.2rem;
    }

    .p-product-review-reply__date {
        font-size: 1.2rem;
    }

    .p-product-review__btn {
        margin-top: 6rem;
    }

    .p-product-review__text{
        font-size: 1.4rem;
        margin-bottom: 1rem;
    }


}
