@charset "utf-8";

/* 共通 */
#tofu-wrap {
    background: url(../img/bg-pc.jpg) no-repeat;
    background-attachment: fixed;
    background-size: 103%;
    background-position: bottom;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    color: #231507;
}

.main-wrap {
    margin: 0 auto;
    overflow: hidden;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
    background-color: #fff;
}

.main-wrap.lp {
    /*width: 60%;*/
    max-width: 480px;
}

.main-wrap img {
    width: 100%;
}

video {
    display: none;
}

main.lp h1, main.lp h2, main.lp h3, main.lp h4, main.lp h5, main.lp h6, main.lp .wc-block-grid__product-title {
    margin: 0 !important;
    padding: 0 !important;
}

.lp.blog .site-header, .lp.page:not(.page-template-template-lppage) .site-header, .lp.post-type-archive-product .site-header {
    margin-bottom: 0 !important;
    padding: 0;
}

#tofu-wrap img {
    border-radius: 0;
}

#tofu-wrap a:focus, #tofu-wrap button:focus, #tofu-wrap .button.alt:focus, #tofu-wrap input:focus, #tofu-wrap textarea:focus, #tofu-wrap input[type="button"]:focus, #tofu-wrap input[type="reset"]:focus, #tofu-wrap input[type="submit"]:focus, #tofu-wrap input[type="email"]:focus, #tofu-wrap input[type="tel"]:focus, #tofu-wrap input[type="url"]:focus, #tofu-wrap input[type="password"]:focus, #tofu-wrap input[type="search"]:focus {
    outline-color: transparent;
}

#contents .col-xs-1, #contents .col-sm-1, #contents .col-md-1, #contents .col-lg-1, #contents .col-xs-2, #contents .col-sm-2, #contents .col-md-2, #contents .col-lg-2, #contents .col-xs-3, #contents .col-sm-3, #contents .col-md-3, #contents .col-lg-3, #contents .col-xs-4, #contents .col-sm-4, #contents .col-md-4, #contents .col-lg-4, #contents .col-xs-5, #contents .col-sm-5, #contents .col-md-5, #contents .col-lg-5, #contents .col-xs-6, #contents .col-sm-6, #contents .col-md-6, .col-lg-6, #contents .col-xs-7, .col-sm-7, #contents .col-md-7, #contents .col-lg-7, #contents .col-xs-8, #contents .col-sm-8, #contents .col-md-8, #contents .col-lg-8, .col-xs-9, #contents .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, #contents .col-sm-11, #contents .col-md-11, #contents .col-lg-11, #contents .col-xs-12, #contents .col-sm-12, #contents .col-md-12, #contents .col-lg-12 {
    min-height: auto;
}

.form1 {
    height: auto !important;
}

ul {
    margin: 0 !important;
    list-style: none !important;
}

.t-btn a:hover {
    opacity: 0.6;
}

.t-btn a {
    transition: 0.4s;
}

.font-sm {
    font-size: 80%;
}

@media screen and (max-width:960px) {
    body {
        background: none;
    }
}

@media screen and (max-width:750px) {
    .main-wrap {
        width: 100%;
        min-width: auto;
    }

}

/* 固定購入ボタン */
.set-wrap.fix-cart-btn {
    background: none;
    background-color: #f5f3dc;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    padding: 15px 5.5%;
}

.set-wrap.fix-cart-btn .order-link {
    margin: 0 auto;
    font-size: 16px;
    padding: 25px 3%;
}

/* ヘッダー */
#masthead.site-header {
    padding: 12px 0;
    border-bottom-color: #f0f0f0;
}

#masthead .col-full {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#masthead .site-branding {
    margin-bottom: 0;
    width: auto;
    line-height: 0;
}

#masthead.site-header .custom-logo-link {
    display: inline-block;
}

#masthead .site-header-cart .cart-contents {
    padding: 0;
}

.site-header-cart .cart-contents::after {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    line-height: inherit;
    vertical-align: baseline;
    content: "";
    height: 1em;
    float: right;
    line-height: 1.618;
}

#masthead .site-header-cart .cart-contents {
    display: flex;
    align-items: center;
    justify-content: right;
}

#masthead.site-header .site-branding img {
    width: 175px;
}

#masthead .site-header-cart .cart-contents::after {
    height: auto;
    font-size: 23px;
}

#masthead .site-header-cart .cart-contents .count {
    margin-right: 16px;
}

#masthead .col-full::before, #masthead .col-full::after {
    display: none;
}

#masthead .site-header-cart .cart-contents .amount {
    display: none;
}

#masthead .site-header-cart .cart-contents .count {
    display: none;
}

.widget_shopping_cart .woocommerce-mini-cart__buttons .wc-forward {
    color: #2b0c0c;
    font-weight: 700;
    padding: 5%;
    padding: 6.5% 3%;
    border: solid 1px #2b0c0c;
    display: block;
    margin: 0 auto 0;
    width: 85%;
    text-align: center;
    line-height: 0;
    border-radius: 100px;
    transition: 0.3s;
    font-size: 12px;
}

.widget_shopping_cart .woocommerce-mini-cart__buttons .wc-forward.checkout {
    background-color: #ed4f4f;
    color: #fff;
    border-radius: 100px;
    padding: 6.5% 3%;
    width: 85%;
    margin: 4% auto 1%;
    display: block;
    text-align: center;
    font-weight: bold;
    line-height: 0;
    border: solid 2px #fc8080;
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
    font-size: 15px;
    transition: 0.3s;
}

#masthead .site-header-cart {
    width: auto;
}

@media (min-width: 768px) {
    #masthead .site-header-cart .cart-contents .amount {
        display: block;
    }

    #masthead .site-header-cart .cart-contents .count {
        display: block;
    }

    #masthead.site-header .site-branding img {
        width: 210px;
        max-width: none;
    }

    #masthead .site-header-cart .widget_shopping_cart, #masthead .site-header-cart .widget_shopping_cart .buttons, #masthead .site-header-cart #masthead .widget_shopping_cart .total, #masthead .site-header-cart .widget_shopping_cart .buttons, #masthead .site-header-cart .widget_shopping_cart .total {
        background-color: #fff;
    }

    #masthead .site-header-cart .widget_shopping_cart {
        box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
    }

    #masthead .widget a.button.checkout:hover {
        background-color: #ed4f4f;
        border: solid 2px #fc8080;
        opacity: 0.8;
    }

    #masthead .site-header-cart {
        width: 300px;
    }

    /* 固定購入ボタン */
    .set-wrap.fix-cart-btn {
        display: none;
    }
}

/* メインビジュアル */
.sales-copy {
    position: relative;
    z-index: 1;
}

.video_wrapper .movie-01 {
    margin: -12% -25% 0;
    width: 171%;
    display: block;
    max-width: none;
}

.title-midasi {
    position: relative;
}

.video_wrapper {
    position: relative;
}

.video_wrapper:not(.js_active)::before {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background-color: rgba(0, 0, 0, 0.5);
    content: "";
}

.video_wrapper:not(.js_active)::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 60px;
    height: 60px;
    background-image: url(https://tofu-tofu.kyotofu.co.jp/wp-content/themes/storefront-child/img/default-gray.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    content: "";
}

.video_wrapper>video {
    margin: -12% -25% -15%;
    width: 171%;
    display: block;
    max-width: none;
}

/* お試し6パックセット */
.set-wrap {
    background: url(../img/bg-01.jpg) no-repeat;
    background-size: 105%;
    padding: 8% 5.5%;
    /* background-position-y: 50%; */
}

.set-inner {
    background-color: #fff;
    border: solid 3px #231507;
    padding-bottom: 26px;
}

.set-inner img {
    position: relative;
    right: -5px;
}

.set-wrap .order-link {
    background-color: #ed4f4f;
    color: #fff;
    border-radius: 100px;
    padding: 6.5% 3%;
    width: 85%;
    margin: 4% auto 1%;
    display: block;
    text-align: center;
    font-weight: bold;
    line-height: 0;
    border: solid 2px #fc8080;
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
    transition: 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 480px) {
    .set-wrap .order-link {
        font-size: clamp(13px, 3.2vw, 24px);
    }
}

.set-wrap .order-link:hover {
    opacity: 0.8;
}

.btn-font-size {
    font-size: 136%;
    vertical-align: middle;
}

.set-wrap .text-small {
    font-family: fot-tsukubrdgothic-std, sans-serif;
    color: #231507;
    width: 85%;
    margin: 17px auto 0;
    text-align: center;
    font-size: clamp(17px, 2.4vw, 18px);
    /* margin-bottom: 4%; */
    font-weight: 600;
    line-height: 1.7;
}

/* 健康と幸せ */
.sec-03 h2 {
    margin-top: -4.8% !important;
}

/* TOFU TOFUのこだわり */
.sec-04 h2 {
    position: relative;
    z-index: 1;
}

.sec-04 {
    margin-top: -44%;
}

.movie-02 {
    display: block;
    width: 120%;
    margin-top: -8%;
}

.sec-04 .text {
    padding: 5% 5.5% 9%;
    font-size: clamp(16px, 3.2vw, 18px);
    line-height: 1.9;
    font-weight: 500;
    margin-bottom: 0;
}

.h3-midasi {
    position: relative;
    z-index: 1;
}

/* 愛犬にとって安全で、安心できるおやつ作りを */
.sec-05 .set-wrap {
    background: url(../img/bg-02.jpg) no-repeat;
    background-size: 101%;
}

/* 獣医さんに聞きました！ */
.lp .zyui_yohaku {
    margin-top: -2.5% !important;
}

/* よろこびのお声 */
.voice-wrap {
    position: relative;
    z-index: 1;
}

.voice-wrap {
    position: relative;
}

.video_wrapper .movie-03 {
    display: block;
    width: 100%;
    margin: -29% 0 0;
}

/* 健康も、愛情も、おやつから */
.lp .sec-08-midasi {
    z-index: 1;
    position: relative;
    margin-top: -3% !important;
}

/* 商品ラインナップ */
.sec-09 .set-wrap {
    background: url(../img/bg-03.jpg) no-repeat;
    background-size: 100%;
}

.teiki-wrap {
    padding: 10% 5.5%;
}

.teiki-inner {
    border: solid 3px #231507;
}

.sec-09 .teiki-wrap .order-link {
    background-color: #6971b0;
    color: #fff;
    border-radius: 100px;
    padding: 5.5% 3%;
    width: 76%;
    margin: 4% auto 5%;
    display: block;
    text-align: center;
    font-weight: bold;
    line-height: 0;
    border: solid 2px #6971b0;
    font-size: clamp(13px, 3.2vw, 24px);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
    transition: 0.3s;
}

.sec-09 .teiki-wrap .order-link:hover {
    opacity: 0.8;
}

.cooky-info-wrap {
    margin: 9% 5.5%;
    background-color: #fff9f5;
    padding: 5%;
    border-radius: 5px;
}

.poti-wrap .order-link {
    background-color: #f8c46f;
    color: #231507;
    border-radius: 100px;
    padding: 5.5% 3%;
    width: 76%;
    margin: 4% auto;
    display: block;
    text-align: center;
    font-weight: bold;
    line-height: 0;
    border: solid 1px #f1e5b3;
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.1);
    transition: 0.3s;
}

@media (max-width: 480px) {
    .poti-wrap .order-link {
        font-size: clamp(14px, 3.2vw, 24px);
    }
}

.poti-wrap .order-link:hover {
    opacity: 0.8;
}

.cooky-info-wrap {
    color: #000;
    margin: 7% 5.5%;
    background-color: #fff9f5;
    padding: 5%;
}

main.lp .cooky-info-wrap h4 {
    font-family: fot-tsukubrdgothic-std, sans-serif;
    font-weight: 700;
    font-size: 12px;
    margin-bottom: 5% !important;
    font-size: clamp(17px, 2.6vw, 20px);
}

main.lp .cooky-info-wrap h5 {
    font-size: clamp(16px, 2vw, 17px);
    font-weight: 600;
    margin-bottom: 2% !important;
}

.cooky-info-wrap .text {
    font-size: clamp(14px, 2vw, 16px);
    font-weight: 500;
    margin-bottom: 6%;
    line-height: 1.7;
}

.cooky-info-wrap .text-small {
    font-size: clamp(13px, 1.6vw, 15px);
    margin-bottom: 0;
}

.cooky-info-wrap dt {
    float: left;
    clear: left;
    margin-bottom: 0;
    font-weight: normal;
}

.cooky-info-wrap dt::after {
    content: "：";
}

.cooky-info-wrap dd {
    float: left;
    margin-bottom: 0;
}

.cooky-info-wrap .clearfix::after {
    content: "";
    clear: both;
    display: block !important;
}

/* 取扱店舗 */
.shop-list-wrap {
    margin: 5% 5.5%;
}

.shop-img {
    color: #231507;
}

main.lp .shop-list-wrap h3 {
    font-size: clamp(17px, 3.2vw, 20px);
    font-family: fot-tsukubrdgothic-std, sans-serif;
    font-weight: 700;
    margin: 4% 0 2.5% !important;
}

.shop-list-wrap .text {
    font-size: clamp(14px, 2.4vw, 16px);
    line-height: 1.7;
    font-weight: 500;
}

.shop-info {
    background-color: #fff9f5;
    padding: 3% 4%;
    margin: 3% 0 12%;
    border-radius: 5px;
}

.shop-info .text {
    font-size: clamp(13px, 2.4vw, 15px);
    margin: 0;
}

.shop-info-02 {
    margin: 4% 0 7%;
}

.shop-info-02 .text {
    color: #ed4f4f;
    font-size: clamp(12px, 2.4vw, 18px);
    font-weight: 600;
}

.ec-link-wrap {
    color: #2b0c0c;
    font-size: clamp(13px, 2.4vw, 16px);
    font-weight: 700;
    padding: 5%;
    border: solid 1px #2b0c0c;
    display: block;
    margin: 6% auto 14%;
    width: 70%;
    text-align: center;
    line-height: 0;
    border-radius: 100px;
    transition: 0.3s;
}

.ec-link-wrap:hover {
    background-color: #2b0c0c14;
    color: #2b0c0c;
}

/* フッター */
footer {
    background-color: #231507;
}

.lp footer {
    margin-bottom: 86px;
}

.copy {
    text-align: center;
    color: #fff;
    font-weight: 500 !important;
    padding: 3%;
    margin: 0;
    font-size: 75% !important;
    line-height: 2 !important;
}

@media (min-width: 768px) {

    .lp footer {
        margin-bottom: 0;
    }
}

/* 下層ページ共通 */
.main-wrap.sub-page main {
    padding: 2% 5.5%;
    /* font-size: clamp(13px,3.2vw,22px); */
    line-height: 1.7;
    font-weight: 500;
}

.main-wrap.sub-page .storefront-breadcrumb {
    padding: 0;
    margin: 0 0 3%;
}

.main-wrap.sub-page .storefront-breadcrumb .col-full {
    padding: 0;
    margin: 0;
}

.main-wrap.sub-page .storefront-breadcrumb .woocommerce-breadcrumb {
    font-size: 10px;
}

.hentry.type-page .entry-header {
    margin-bottom: 2%;
}

.entry-title {
    font-size: clamp(27px, 4vw, 28px);
    font-family: fot-tsukubrdgothic-std, sans-serif;
    font-weight: 700;
    margin: 7% 0 5% !important;
}

body, .main-wrap.sub-page button, .main-wrap.sub-page input, .main-wrap.sub-page textarea {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}

@media (min-width: 768px) {
    .main-wrap.sub-page .storefront-breadcrumb .woocommerce-breadcrumb {
        font-size: 12px;
    }

    .entry-title {
        font-size: clamp(23px, 4vw, 28px);
        margin: 0 0 5% !important;
    }
}

@media (max-width: 568px) {
    .main-wrap.sub-page .storefront-breadcrumb .col-full {
        margin: 0;
    }
}

/* 買い物かご　お支払い 商品詳細 */
.main-wrap.sub-page .wc-block-cart table.wc-block-cart-items {
    margin: 0;
}

.main-wrap.sub-page .wc-block-components-button {
    background-color: #ed4f4f;
    color: #fff;
    border-radius: 100px;
    padding: 4% 3%;
    width: 85%;
    margin: 4% auto 1%;
    display: block;
    text-align: center;
    font-weight: bold;
    line-height: normal;
    border: solid 2px #fc8080;
    font-size: clamp(17px, 3.2vw, 20px);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
    transition: 0.3s;
    min-height: 50px;
    text-decoration: none;
}

.main-wrap.sub-page .wc-block-components-button:hover {
    background-color: #ed4f4f;
    border: solid 2px #fc8080;
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
    opacity: 0.8;
}

.main-wrap.sub-page .is-large.wc-block-cart {
    margin-bottom: 0;
}

.is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {
    display: block;
}

.main-wrap.sub-page .col2-set, .main-wrap.sub-page .woocommerce-checkout-review-order {
    width: 100%;
    margin-right: 0;
}

#payment .payment_methods li img {
    width: auto;
}

.main-wrap.sub-page #order_review_heading, .main-wrap.sub-page #order_review {
    width: 100%;
}

.woocommerce-checkout h3, .woocommerce-order-details__title, .woocommerce-column__title {
    font-size: clamp(22px, 4vw, 28px);
    font-family: fot-tsukubrdgothic-std, sans-serif;
    font-weight: 700;
    margin: 3% 0 !important;
}

.main-wrap.sub-page #payment .form-row.place-order button {
    background-color: #ed4f4f;
    color: #fff;
    border-radius: 100px;
    padding: 5% 3%;
    width: 85%;
    margin: 4% auto 1%;
    display: block;
    text-align: center;
    font-weight: bold;
    line-height: 0;
    border: solid 2px #fc8080;
    font-size: clamp(17px, 3.2vw, 20px);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
    transition: 0.3s;
    min-height: 50px;
}

.main-wrap.sub-page #payment .form-row.place-order button:hover {
    opacity: 0.8;
}

.wc-block-components-product-name {
    font-size: clamp(15px, 3vw, 18px);
}

.main-wrap.sub-page .wc-block-components-formatted-money-amount, .wp-block-woocommerce-empty-cart-block .wp-block-heading {
    font-size: clamp(18px, 3vw, 20px);
}

.wc-block-components-totals-shipping .wc-block-components-shipping-address {
    font-size: clamp(17px, 2vw, 18px);
}

main:not(.lp) h1 {
    font-size: 28px;
}

main:not(.lp) h2 {
    font-size: clamp(23px, 4vw, 26px);
    padding: 12px;
    border-radius: 4px;
    background-color: #f6f6f6;
}

main:not(.lp) h3 {
    font-size: 24px;
    border-bottom: solid 1px #d4d4d4;
    padding-bottom: 15px;
}

main:not(.lp) h4 {
    font-size: 22px;
}

main:not(.lp) h4::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: #333;
    vertical-align: middle;
    border-radius: 100px;
    margin: -3px 7px 0 0;
}

main:not(.lp) h5 {
    font-size: 20px;
}

main:not(.lp) h6 {
    font-size: 18px;
}

main:not(.lp) h1, main:not(.lp) h2, main:not(.lp) h3, main:not(.lp) h4, main:not(.lp) h5, main:not(.lp) h6 {
    font-family: fot-tsukubrdgothic-std, sans-serif;
    font-weight: 700;
    line-height: 1.4;
    margin: 3% 0 !important;
}

.wp-block-woocommerce-empty-cart-block .wp-block-heading {
    font-size: clamp(21px, 4vw, 28px);
    font-family: fot-tsukubrdgothic-std, sans-serif;
    font-weight: 700;
    margin: 4% 0 !important;
}

.main-wrap.sub-page .hentry .entry-content .wp-block-button .wp-block-button__link {
    background-color: #ed4f4f;
    color: #fff;
    border-radius: 100px;
    padding: 10% 3%;
    width: 100%;
    display: block;
    text-align: center;
    font-weight: bold;
    line-height: 0;
    border: solid 2px #fc8080;
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
    transition: 0.3s;
}

.main-wrap.sub-page .hentry .entry-content .wp-block-button .wp-block-button__link:hover {
    opacity: 0.8;
}

.shop_table.order_details th {
    width: 65%;
}

.shop_table.order_details td {
    width: 35%;
}

.main-wrap.sub-page #reviews {
    /*display: none;*/
}
.main-wrap.sub-page .woocommerce-tabs .panel#tab-reviews{
	display: block!important;
	float: none;
}
.single-product .main-wrap.sub-page div.product .woocommerce-product-gallery {
    width: 100%;
    margin-right: 0;
}

.single-product #primary {
    width: 100%;
    margin-right: 0;
}

.single-product .main-wrap.sub-page div.product .summary {
    width: 100%;
}

.main-wrap.sub-page .woocommerce-tabs ul.tabs {
    display: none;
}

.main-wrap.sub-page .woocommerce-tabs .panel {
    width: 100%;
}

.right-sidebar .widget-area {
    display: none;
}

.main-wrap.sub-page button.alt {
    background-color: #ed4f4f;
    color: #fff;
    border-radius: 100px;
    padding: 4% 3%;
    padding: 21px 16px;
    width: 200px;
    display: block;
    text-align: center;
    font-weight: bold;
    line-height: 0;
    border: solid 2px #fc8080;
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
    font-size: 15px;
    transition: 0.3s;
}

.main-wrap.sub-page button.alt:hover {
    opacity: 0.8;
}

.storefront-sticky-add-to-cart__content-product-info {
    width: 65%;
}

.storefront-sticky-add-to-cart__content .storefront-sticky-add-to-cart__content-button {
    background-color: #ed4f4f;
    color: #fff;
    border-radius: 100px;
    padding: 21px 16px;
    width: 20%;
    display: block;
    text-align: center;
    font-weight: bold;
    line-height: 0;
    border: solid 2px #fc8080;
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
    font-size: 13px;
    transition: 0.3s;
    min-width: 160px;
    max-width: 200px;
    margin-left: 16px;
}

.storefront-sticky-add-to-cart__content .button.alt, .storefront-sticky-add-to-cart__content .button.alt:hover {
    background-color: #ed4f4f;
    color: #fff;
    border: solid 2px #fc8080;
}

.storefront-sticky-add-to-cart__content .button.alt:hover {
    opacity: 0.8;
}

.woocommerce-tabs.wc-tabs-wrapper img {
    margin-bottom: 16px;
}

.single-product-wrap.main-wrap.sub-page main {
    padding: 0;
    line-height: normal;
}

.single-product-wrap.main-wrap {
    padding: 1% 2.7%;
    line-height: 1.7;
    font-weight: 500;
}

@media (max-width: 1446px) {
    .main-wrap.sub-page .wc-block-components-button {
        width: 70%;
    }

    .is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {
        display: none;
    }
}

@media (max-width: 480px) {
    .main-wrap.sub-page .hentry .entry-content .wp-block-button .wp-block-button__link {
        font-size: 13px;
        padding: 6.5% 3%;
        width: 70%;
    }

    main:not(.lp) h1 {
        font-size: 1.5em;
    }

    main:not(.lp) h2 {
        font-size: 1.4em;
    }

    main:not(.lp) h3 {
        font-size: 1.2em;
    }

    main:not(.lp) h4 {
        font-size: 1.1em;
    }

    main:not(.lp) h5 {
        font-size: 1em;
    }

    main:not(.lp) h6 {
        font-size: 0.9em;
    }

    .single-product-wrap.main-wrap {
        padding: 7%;
    }

    main:not(.lp) h1, main:not(.lp) h2, main:not(.lp) h3, main:not(.lp) h4, .main:not(.lp) h5, main:not(.lp) h6 {
        margin: 6% 0 !important;
    }

    .woocommerce .related.products>h2 {
        font-size: 1.4em;
    }
}

/*** lineup ***/
.lineup {
    background-image: url(../img/lu-bg02.png);
    background-repeat: no-repeat;
    background-position-x: 3em;
    background-position-y: 98%;
    background-size: 27%;
    background-color: #f1e5b3;
    margin-top: 1em;
    padding-bottom: 8.5em;
    position: relative;
}

.lu_title-box {
    background: url(../img/lu-titlebg.png) no-repeat;
    background-size: 100%;
    padding: 5em 0 10.8%;
    position: relative;
    z-index: 1;
}

.lu_title-box .lu_title {
    margin: auto !important;
    width: min(40%, 381px);
}

.lineup::before {
    content: "";
    background: url(../img/lu-bg01.png) no-repeat;
    background-size: contain;
    padding: 13% 16%;
    position: absolute;
    top: 17em;
    right: 0;
}

.lu-box {
    background: #fff;
    width: min(90%, 926px);
    margin: 4em auto 0;
    padding: 3em 3em 5em;
    border-radius: 40px;
    position: relative;
    z-index: 1;
}

.lu-box .lu-boxtitle {
    width: min(80%, 434px);
    margin: auto !important;
}

.lu-box p {
    margin: 0;
    line-height: 2;
    text-align: justify;
}

.lu-box .setbox {
    display: flex;
    justify-content: center;
    align-items: center;
}

.set-6,
.set-9 {
    margin: 3em auto;
}

.set-6 .s-img {
    width: min(45%, 305px);
}

.set-6 .s-text {
    width: min(60%, 428px);
    margin-left: 5%;
}

.set-6 .s-text .s-price {
    margin-top: 20px;
}

.set-6 .s6-btn {
    width: min(80%, 602px);
    margin: 30px auto 0;
}

.set-9 .s-img {
    width: min(31%, 250px);
}

.set-9 .s-img .img-main {
    width: min(90%, 209px);
    margin: 0 auto 6px;
}

.set-9 .s-img .s-price {
    width: 100%;
}

.set-9 .s-text {
    width: min(60%, 415px);
    margin-left: 5%;
}

.set-9 .s-text .s6-btn {
    width: min(100%, 353px);
    margin: 20px auto 0;
}

.lu-list {
    border-top: 1px dashed #ff9766;
    padding-top: 3em;
    display: flex;
    justify-content: center;
}

.lu-list .lu-listset {
    width: 40%;
    margin: 0 2%;
    display: flex;
    flex-direction: column;
}

.lu-list .lu-listset>img {
    border-radius: 40px !important;
}

.lu-list .lu-listset .product-name {
    font-size: 18px;
    text-align: center;
    color: #ff9766;
    font-weight: bold;
    margin: 23px 0 11px !important;
}

.lu-list .lu-listset:last-of-type .product-name {
    margin: 2em auto;
}

.lu-list .lu-listset .product-name .font-sm {
    display: block;
    font-weight: bold;
}

.lu-list .lu-listset .lset-btn {
    width: min(100%, 318px);
    margin: 0 auto;
    margin-top: auto;
}

@media (max-width: 1100px) {
    .lu_title-box {
        padding: 6em 0 2.5em;
    }

    .lineup::before {
        top: 14.7em;
    }
}

/*@media (max-width:768px) {*/
.lineup {
    background-position-x: 0em;
    background-position-y: 101%;
    background-size: 50%;
    padding-bottom: 3em;
}

.lineup::before {
    padding: 20% 25%;
    top: 9em;
}

.lu_title-box {
    padding: 5em 0 5.5em;
    background-size: 132%;
    background-position: top center;
}

.lu_title-box .lu_title {
    width: min(58%, 381px);
}

.lu-box {
    margin: 2em auto 0;
    padding: 2em 1em 1em;
}

.lu-box .lu-boxtitle {
    width: min(90%, 434px);
}

.lu-box .setbox {
    display: block;
}

.set-6,
.set-9 {
    margin: 1em auto 2em;
}

.set-6 .s-img {
    width: min(55%, 305px);
    margin: auto;
}

.set-6 .s-text {
    width: min(100%, 428px);
    margin: 5% auto 0;
}

.set-6 .s-text .product-text {
    font-size: min(4vw, 17px);
    line-height: 1.9;
}

.set-6 .s6-btn {
    width: min(100%, 602px);
    margin: 20px auto 0;
}

.set-9 .s-img {
    width: min(72%, 250px);
    margin: auto;
}

.set-9 .s-img .img-main {
    margin: 0 auto 12px;
}

.set-9 .s-text {
    width: min(100%, 415px);
    margin: 5% auto 0;
}

.set-9 .s-text .product-text {
    font-size: min(4vw, 17px);
    line-height: 1.9;
    margin-bottom: 12px;
}

.lu-list {
    display: block;
}

.lu-list .lu-listset {
    width: 84%;
    margin: 0 auto 3em;
}

.lu-list .lu-listset .product-name,
.lu-list .lu-listset:last-of-type .product-name {
    font-size: min(4vw, 19px);
    margin: 1em auto 0.5em;
}

.lu-list .lu-listset .product-text {
    font-size: min(3.8vw, 17px);
    line-height: 1.9;
    margin-bottom: 7px;
}

/*}*/
/*@media (max-width:480px) {*/
.lu_title-box {
    padding: 3.5em 0 3em;
}

.lineup::before {
    top: 10em;
}

/*}*/
/* 商品ページ */
.storefront-sticky-add-to-cart__content-product-info {
    font-size: 0;
}

.storefront-sticky-add-to-cart__content-product-info strong {
    font-size: 16px;
}

.woocommerce p {
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
}

.woocommerce.single-product div.product p.price {
    font-weight: 600;
    margin: 10px 0 0;
    font-size: 25px;
}

.woocommerce.single-product div.product p.price .woocommerce-price-suffix {
    font-size: 70%;
    font-feature-settings: "palt";
}

.storefront-product-pagination {
    display: none !important;
}

.woocommerce-tabs .panel h2:first-of-type {
    display: none;
}

.single-product div.product table.variations select {
    border: solid 1px #757575;
    padding: 8px 15px;
    border-radius: 4px;
}

.main-wrap.sub-page .cart input {
    border-radius: 4px;
    width: 58px;
    background-color: #f9f9f9;
    border: solid 1px #757575;
    padding: 8px;
}

.single-product div.product .variations_button {
    padding-top: 0.5em;
}

.single-product .slick-arrow {
    display: none !important;
}

.single-product .main-wrap.sub-page div.product .woocommerce-product-gallery {
    float: left;
    width: 50%;
}

.single-product .main-wrap.sub-page div.product .summary {
    float: right;
    width: 45%;
}

.main-wrap.sub-page .woocommerce-tabs .panel img {
    width: auto;
    margin: 0 auto;
}

.woocommerce.single-product div.product .woocommerce-product-gallery, .woocommerce.single-product div.product {
    margin-bottom: 35px;
}

.woocommerce.single-product div.product .woocommerce-tabs {
    padding-top: 0;
}

.woocommerce ul.products li.product {
    margin-bottom: 20px;
}

.woocommerce .related.products {
    background-color: #fff9f5;
    padding: 4%;
}

.woocommerce .related.products h2 {
    border: none;
}

.woocommerce .related.products>h2 {
    margin-top: 0 !important;
    background-color: transparent;
    padding: 0;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    text-align: left;
    font-weight: 600;
    background-color: transparent;
}

.woocommerce ul.products li.product .price {
    font-weight: 600;
    margin-top: 10px;
}

.related.products .woocommerce-Price-amount.amount {
    font-size: 16px;
}

.single-product div.product .single_variation .price {
    font-size: 22px;
    font-weight: 600;
}

.lp .site-main ul.products.columns-3 li.product {
    width: 100%;
    float: none;
    margin-right: 0;
}

/*@media (max-width:768px) {*/
.single-product .main-wrap.sub-page div.product .woocommerce-product-gallery {
    float: none;
    width: 100%;
}

.single-product .main-wrap.sub-page div.product .summary {
    float: none;
    width: 100%;
}

.woocommerce p {
    /* font-size: min(3.6vw, 16px); */
}

.woocommerce ul.products li.product {
    margin-bottom: 40px;
}

/*}*/
@media (max-width:480px) {
    .woocommerce ul.products li.product .woocommerce-loop-product__title {
        margin: 3% 0 !important;
    }

    .woocommerce ul.products li.product img {
        margin: 0 auto 8px;
    }

    .woocommerce ul.products li.product {
        margin-bottom: 25px;
    }

    .woocommerce .related.products {
        padding: 8%;
    }

    .single-product div.product table.variations th {
        margin-bottom: 6px;
    }
}

/* 商品ページ一覧 */
.archive #primary.content-area {
    width: 60%;
    margin: 0 auto;
    overflow: hidden;
    min-width: 750px;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    max-width: 1000px;
}

#tofu-wrap.right-sidebar .content-area {
    width: auto;
    float: none;
    margin: auto;
}

.archive #main.site-main {
    padding: 7%;
}

.button.product_type_simple.add_to_cart_button.ajax_add_to_cart, .button.product_type_variable.add_to_cart_button {
    background-color: #ed4f4f;
    color: #fff;
    border-radius: 100px;
    padding: 4% 3%;
    padding: 21px 16px;
    display: inline-block;
    text-align: center;
    font-weight: bold;
    line-height: 0;
    border: solid 2px #fc8080;
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
    font-size: 15px;
    transition: 0.3s;
    width: 100%;
}

.button.product_type_simple.add_to_cart_button.ajax_add_to_cart:hover, .button.product_type_variable.add_to_cart_button:hover {
    opacity: 0.8;
}

.storefront-sorting {
    display: none;
}

.woocommerce-products-header__title.page-title {
    font-size: 30px;
    margin-bottom: 45px !important;
    margin-top: 0 !important;
    font-size: 30px;
    margin-bottom: 45px;
}

.woocommerce.archive ul.products li.product .woocommerce-LoopProduct-link .price {
    font-size: 17px;
    margin-top: 10px;
}

@media (max-width:768px) {
    .archive #primary.content-area {
        min-width: auto;
    }
}

/* 買い物かご */
body .wc-block-components-radio-control .wc-block-components-radio-control__input {
    left: 0;
}

body .woocommerce-message, body .woocommerce-info, body .woocommerce-error, body .woocommerce-noreviews, body p.no-comments {
    margin-bottom: 0;
}

.page-template #ship-to-different-address label {
    font-weight: 700;
}

.woocommerce-cart .wc-block-components-totals-coupon__form {
    display: block;
}

.woocommerce-cart .main-wrap.sub-page .wc-block-components-totals-coupon__form .wc-block-components-button {
    padding: 6px;
    font-size: clamp(15px, 2.5vw, 16px);
    width: 50%;
}

.wc-block-components-button:not(.is-link):hover, .wc-block-components-button:not(.is-link):focus, .wc-block-components-button:not(.is-link):active {
    background-color: #ed4f4f !important;
}

.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-main {
    width: 55%;
}

.woocommerce-cart .is-large.wc-block-cart .wc-block-components-sidebar {
    width: 45%;
}

@media (max-width:768px) {
    .woocommerce-cart .main-wrap.sub-page .wc-block-components-totals-coupon__form .wc-block-components-button {
        width: 70%;
    }

}

/* 注文完了ページ */
ul.order_details {
    margin: 35px 0 !important;
}

/*ソニーペイメント*/
.wc_payment_methods input[type=checkbox] {
    appearance: auto;
}

/* 20250709 */
.sp {
    display: none;
}

.gmo_wrap {
    padding-bottom: 45px;
}

@media (max-width:767px) {
    .sp {
        display: block;
    }

    .pc {
        display: none;
    }

    .gmo_wrap {
        padding-bottom: 25px;
    }

    .postid-16 .gmo_wrap {
        padding-bottom: 100px;
    }
}