@charset "utf-8";
/* CSS Document */


/* kv
   ================================================================== */
.kv{
	margin: 0 0 0;
	position: relative;
}

.kv .main_view{
	position: relative;
    z-index: 2;
    height: 70vh;
    box-sizing: border-box;
	display: flex;
    justify-content: center;
    background-image: url("../images/index/webp/kv_sp.webp");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.kv .main_view::before{
    content: "";
    background: rgba(0,0,0,.20);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.kv .inbox{
    padding: 70vw 1vw 0;
    position: relative;
    z-index: 1;
}

.kv h1{
    margin: 0 auto;
    text-align: center;
}

.kv h1 span{
    padding: 2.5vw 5vw;
    font-size: 3.5vw;
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 150%;
    color: #fff;
    display: inline-flex;
    border: 1px solid #fff;
}

.kv p.sub{
    margin: 5vw 0 0;
    font-size: 7vw;
    line-height: 150%;
    font-weight: 700;
    color: #fff;
    text-align: center;
}

.kv #loopslider{
    margin: 5vw 0 0;
    display: none;
    opacity: 0;
    transition: .3s;
}

.kv .infiniteslide_wrap #loopslider{
    display: flex;
    opacity: 1;
}

.kv #loopslider li{
    padding: 0 5vw 0 0;
    font-size: 16vw;
    line-height: 100%;
    font-weight: 700;
    letter-spacing: 0.05em;
    font-family: 'Oswald';
    color: #fff;
    opacity: .6;
}


/* categories_list
   ================================================================== */
.categories_list{
	margin: 0 0 0;
}

.categories_list ul li{
    position: relative;
}

.categories_list ul li.nav_only{
    display: none !important;
}

.categories_list ul .open_close,
.categories_list ul a{
    display: block;
    transition: all ease-out 0.3s;
    z-index: 2;
    box-sizing: border-box;
    font-size: 3.8vw;
    letter-spacing: 0.1em;
    font-weight: 700;
    color: #fff;
    line-height: 150%;
    position: relative;
}

.categories_list ul a{
    padding: 4vw 17vw 3vw 4vw;
}

.categories_list .open_close + ul{
    margin: 1vw 0 0;
}

/* 第一階層 */
.categories_list > ul > li{
    margin: 0 0 1vw;
}

.categories_list > ul > li > div a,
.categories_list > ul > li > a{
    background: #128F0E;
}

/* 第二階層 */
.categories_list > ul > li > ul > li{
    margin: 0 0 1vw;
}

.categories_list ul > li > ul > li > div a,
.categories_list ul > li > ul > li > a{
    background: #B89D50;
}

/* 第三階層 */
.categories_list ul > li > ul > li > ul{
    display: block;
}

.categories_list ul > li > ul > li > ul > li{
    margin: 0 0 1vw;
}

.categories_list ul > li > ul > li > ul > li > a{
    padding: 3vw 3vw;
    font-size: 3.4vw;
    font-weight: 400;
    background: #fff;
    border: 1px solid #ddd;
    color: #222;
}

/* ボタン */
.categories_list ul .open_close div{
	width: 13vw;
	height: 100%;
	position: absolute;
    z-index: 5;
    margin: auto;
	right: 0;
	top: 0;
    bottom: 0;
    text-indent: -999999px;
    background: #000;
}

.categories_list ul .open_close div::after{
	content: "";
    background-image: url("../images/common/icon_arrow_bottom_w.svg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100%;
	width: 3vw;
	height: 3vw;
	position: absolute;
    margin: auto;
	right: 4.5vw;
	top: 0;
    bottom: 0;
	transform: rotate(-90deg);
    transition: .3s;
}

/*
第二階層
.categories_list ul > li > ul > li .open_close div::after{
    background-image: url("../images/common/icon_arrow_bottom.svg");
}
*/

.categories_list ul .open_close div.active::after{
    transform: rotate(0);
}

.categories_list ul .open_close + ul{
	display: none;
}


/* category_page
   ================================================================== */
.category_page .categories_list{
	margin: 8vw 0 0;
}


/* banner_slider
   ================================================================== */
.banner_slider{
	margin: 5vw auto 0;
    width: 72vw;
	position: relative;
}

.banner_slider .slick-list{
	overflow: inherit;
}

.banner_slider .slick-track li{
	margin: 0 1.5vw;
    line-height: 0;
}

.banner_slider .slick-track li a{
    display: block;
	line-height: 0;
}


/* product_list
   ================================================================== */
.product_list{
	position: relative;
    font-size: 0;
}

.product_list > li{
	margin: 0 2% 6vw 0;
    width: 49%;
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
}

.product_list > li:nth-child(2n+2){
	margin-right: 0;
}

.product_list li a{
	display: block;
}

.product_list span{
	display: block;
    letter-spacing: 0.1em;
    line-height: 150%;
}

.product_list .thumbnail{
    width: 100%;
	position: relative;
    line-height: 0;
}

.product_list .thumbnail img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    aspect-ratio: 1 / 1;
}

.product_list .tag{
    padding: 1vw 2vw;
    font-size: 3.0vw;
    position: absolute;
    left: 0;
    bottom: 0;
    background: #D71414;
    color: #fff;
}

.product_list .tag.b_grade{
    background: #641AC5;
}

.product_list .tag.new{
    background: #F1C40F;
}

.product_list .bottom{
    padding: 3vw 1vw 0;
    box-sizing: border-box;
}

.product_list .store_name{
    font-size: 3.2vw;
    color: #aaa;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
    word-break: break-all;
}

.product_list .product_name{
    margin: 2vw 0 0;
    font-size: 3.7vw;
    font-weight: 700;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
    word-break: break-all;
}

.product_list .price_box{
    display: flex;
    justify-content: flex-end;
    text-align: right;
}

.product_list .price_box .price{
    font-size: 4.5vw;
    line-height: 110%;
    letter-spacing: 0;
    font-weight: 700;
}

/* プライスダウンの時 */
.product_list .price_box.price_down .price.original{
    margin: 0 0 1vw;
    padding: 0 1vw;
    font-size: 3.4vw;
    font-weight: 400;
    color: #bbb;
    position: relative;
    display: inline-block;
}

.product_list .price_box.price_down .price.original::after{
    content: "";
    background: #bbb;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 0;
}

.product_list .price_box .price.down{
    color: #D90000;
}


/* horizontal_slider 横一列
   ================================================================== */
.product_list.horizontal_slider{
	width: 100%;
}

.product_list.horizontal_slider .slick-list{
	width: 88vw;
	overflow: inherit;
}

.product_list.horizontal_slider .slick-track li{
	margin: 0 2vw 0 0;
}


/* vertical_slider 縦並び
   ================================================================== */
.vertical_slider{
	width: 100%;
}

.vertical_slider .slick-list{
	width: 82vw;
	overflow: inherit;
}

.vertical_slider .slick-track > li{
	margin: 0 2vw 0 0;
}

.vertical_slider .frame_box{
    padding: 5vw 4vw;
    border: 1px solid #ddd;
}

.vertical_slider h2{
    margin: 0 0 5vw;
    font-size: 4.5vw;
    font-weight: 700;
}

.vertical_slider .btn_box{
    margin: 7vw 0 0;
}

/* product_list.vertical */
.product_list.vertical > li{
	margin: 0 0 5vw;
    width: 100%;
    display: block;
}

.product_list.vertical > li:nth-child(2n+2){
	margin-right: 0;
}

.product_list.vertical li a{
	font-size: 0;
}

.product_list.vertical li a > span{
	display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
}

.product_list.vertical .thumbnail{
    width: 30vw;
}

.product_list.vertical .bottom{
    padding: 3vw 0 0 3vw;
    width: calc(100% - 30vw);
}

.product_list.vertical .store_name{
    display: none;
}

.product_list.vertical .product_name{
    margin: 0 0 0;
	-webkit-line-clamp: 2;
}

.product_list.vertical .price_box{
    min-height: 10vw;
}


/* product_list_block 商品一覧・検索結果
   ================================================================== */
.product_list_block .inner{
	position: relative;
}

.product_list_block aside{
	display: none;
}

.product_list_block .product_list_show{
	position: relative;
}

.product_list_show h2{
	padding: 3vw 3vw;
    font-size: 4.2vw;
    font-weight: 700;
    color: #B81C25;
    border-top: 1px solid #B81C25;
    border-bottom: 1px solid #B81C25;
    position: relative;
}

.product_list_show h2 div{
	width: 100%;
	height: 100%;
	position: absolute;
    z-index: 10;
    margin: auto;
	right: 0;
	top: 0;
    bottom: 0;
    text-indent: -999999px;
}

.product_list_show h2 div::after{
	content: "";
    background-image: url("../images/common/icon_plus_red.svg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100%;
	width: 3vw;
	height: 3vw;
	position: absolute;
    margin: auto;
	right: 3vw;
	top: 0;
    bottom: 0;
}

.product_list_show h2 div.active::after{
	background-image: url("../images/common/icon_minus_red.svg");
}

.product_list_show .results_categories_list{
	margin: 2vw 0 0;
    display: none;
}

.product_list_show .results_categories_list li a{
	padding: 3vw 3vw;
    display: block;
    border-bottom: 1px solid #ddd;
}

.product_list_show .results_categories_list li a span{
    font-size: 3.5vw;
    line-height: 150%;
    letter-spacing: 0.1em;
    display: block;
}

.product_list_show .results_box{
	margin: 6vw 0 5vw;
}

.product_list_show .results_title,
.product_list_show .total{
    margin: 1vw 0 0;
    padding: 2vw 3vw;
	font-size: 3.5vw;
    font-weight: 400;
    background: #F6F6F6;
}

.product_list_show .total{
    font-weight: 700;
}


/* product_list.divisions4 4分割
   ================================================================== */
.product_list.divisions4 .product_name{
	-webkit-line-clamp: 2;
}

.product_list.divisions4 .delete_btn_box{
    margin: 4vw 0 0;
    text-align: right;
}


/* new_items_block
   ================================================================== */
.new_items_block{
	padding: 10vw 0 0;
}

.new_items_block .block_title{
	margin: 0 0 8vw;
}

.new_items_block .new_items_btn{
	margin: 8vw 0 20vw;
}


/* seach_categories
   ================================================================== */
.seach_categories{
	padding: 20vw 0 0;
}

.seach_categories .block_title{
	margin: 0 0 8vw;
}

.seach_categories ul{
	font-size: 0;
}

.seach_categories ul li{
    margin: 0 2% 4vw 0;
	width: 49%;
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
}

.seach_categories ul li:nth-child(2n+2){
    margin-right: 0;
}

.seach_categories ul li a{
    display: block;
    line-height: 0;
}

.seach_categories ul li a span{
    display: block;
    line-height: 0;
}

.seach_categories ul li img{
    line-height: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    aspect-ratio: 175 / 94;
}

.seach_categories ul li .text{
    padding: 2vw 0 0;
    font-size: 3.5vw;
    line-height: 150%;
    letter-spacing: 0.1em;
    text-align: center;
}

.seach_categories .btn_box{
	margin: 6vw 0 0;
}


/* about_block
   ================================================================== */
.about_block{
	position: relative;
}

.about_block .photos{
	margin: 6vw 0 0;
    font-size: 0;
}

.about_block .photos li{
	margin: 2vw 2% 0 0;
    width: 49%;
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
    line-height: 0;
}

.about_block .photos li:nth-child(2n+2){
	margin-right: 0;
}

.about_block .movie{
	margin: 10vw 0 0;
    padding: 8vw 0;
    position: relative;
    overflow: hidden;
}

.about_block .movie::before{
    content: "";
    background: #F4F3F0;
    width: 300vw;
    height: 100%;
    position: absolute;
    top: 0;
    left: -100vw;
}

.about_block .movie > div{
    margin: 0 auto;
    width: 90%;
    position: relative;
    line-height: 0;
    text-align: center;
}

.about_block .movie > div video{
    width: 100%;
}

.about_block .movie > div iframe{
    width: 100%;
}

.about_block .text_box{
    margin: 10vw 0 0;
}


/* privacy_block
   ================================================================== */
.privacy_block{
	position: relative;
}

.privacy_block .siz_s{
	font-size: 3.2vw;
}

.privacy_block .top_text{
	margin: 8vw 0 0;
}

.privacy_list > li{
	margin: 8vw 0 0;
}

.privacy_list h3{
	font-size: 0;
}

.privacy_list h3 > span{
	display: inline-block;
    vertical-align: text-bottom;
    line-height: 150%;
    letter-spacing: 0.1em;
    font-weight: 700;
}

.privacy_list h3 .no{
	font-size: 8vw;
    line-height: 1;
    color: #ddd;
    letter-spacing: 0;
}

.privacy_list h3 .txt{
    padding: 0 0 0 2vw;
	font-size: 3.7vw;
}

.privacy_list li > div{
    margin: 4vw 0 0;
}


/* tradelaw_block
   ================================================================== */
.tradelaw_block{
	position: relative;
}

.tradelaw_block .common_table{
	margin: 8vw 0 0;
}


/* common_table
   ================================================================== */	
.common_table{
	margin: 0 auto;
    width: 100%;
    border-bottom: 1px solid #ddd;
}

.common_table th,
.common_table td{
	padding: 3vw 4vw;
    font-size: 3.5vw;
    line-height: 170%;
    letter-spacing: 0.1em;
    font-family: "Noto Sans JP";
    width: 100%;
    display: block;
    box-sizing: border-box;
}

.common_table th{
    border-top: 1px solid #ddd;
	background: #F6F6F6;
    font-weight: 700;
}

.common_table td{
	background: #fff;
    overflow: hidden;
}

.common_table td a{
	display: inline-block;
    font-size: inherit;
    line-height: inherit;
}

.common_table td .box + .box{
	margin: 4vw 0 0;
    padding: 4vw 0 0;
    position: relative;
}

.common_table td .box + .box::before{
	content: "";
    border-top: 1px dashed #ddd;
    position: absolute;
    top: 0;
    left: -50vw;
    width: 2000%;
}


/* rules_block
   ================================================================== */
.rules_block{
	position: relative;
}

.rules_block .rules_list{
	margin: 0 0 0;
}

.rules_list > li{
	padding: 8vw 0 0;
}

.rules_list h3{
    margin: 0 0 3vw;
	padding: 0 3vw 3vw;
    font-size: 4vw;
    border-bottom: 1px solid #ddd;
}

.rules_list .box + .box{
    margin-top: 1vw;
}


/* faq_block
   ================================================================== */
.faq_block{
	position: relative;
}

.faq_block .oc_list{
	margin: 5vw 0 0;
}

.oc_list > dl{
	margin: 2vw 0 0;
    border-bottom: 1px dashed #707070;
}

.oc_list > dl:first-child{
	margin: 0 0 0;
}

.oc_list > dl dt{
	padding: 4vw 8vw 4vw 12vw;
	font-size: 4vw;
	line-height: 150%;
	letter-spacing: 0.10em;
	font-weight: 700;
	position: relative;
}

.oc_list > dl dt::after{
	content: "";
    background-image: url("../images/common/icon_faq_plus.svg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100%;
	width: 4vw;
	height: 4vw;
	position: absolute;
	right: 0;
	top: 4.7vw;
}

.oc_list > dl dt.active::after{
	background-image: url("../images/common/icon_faq_minus.svg");
}

.oc_list > dl dd{
	padding: 2vw 3vw 4vw 12vw;
	font-size: 3.5vw;
	line-height: 170%;
	letter-spacing: 0.10em;
	display: none;
    position: relative;
}

.oc_list > dl dd a{
	font-size: inherit;
}

.oc_list > dl dt::before,
.oc_list > dl dd::before{
    padding: 0 0 1.3vw .5vw;
    width: 8vw;
    height: 8vw;
    border-radius: 100px;
	font-size: 5vw;
	font-weight: 700;
    line-height: 1;
    color: #fff;
	position: absolute;
	top: 3vw;
	left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
}

.oc_list > dl dt::before{
	content: "Q";
    background: #128F0E;
}

.oc_list > dl dd::before{
	content: "A";
    background: #F39C12;
    top: 1vw;
}


/* mypage 共通
   ================================================================== */
.mypage{
	position: relative;
}

.mypage_contents{
	padding: 8vw 0 0;
}

.mypage_contents .user_name{
	padding: 6vw 2vw;
    background: #F5F1EB;
    display: flex;
    justify-content: center;
    align-items: center;
}

.mypage_contents .user_name span{
	font-size: 3.5vw;
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 150%;
    display: block;
}


/* mypage_list =========== */
.mypage_list{
    margin: 2vw 0 0;
	font-size: 0;
}

.mypage_list li{
	margin: 2vw 2% 0 0;
    width: 32%;
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
}

.mypage_list li:nth-child(3n+3){
	margin-right: 0;
}

.mypage_list li a{
    height: 10vw;
    font-size: 3.5vw;
    line-height: 150%;
    border: 1px solid #707070;
	display: flex;
    justify-content: center;
    align-items: center;
}

.subscription_cancelled .mypage_list li:nth-child(3) a,
.account_updated .mypage_list li:nth-child(1) a,
.mypage_list li a.active{
    color: #fff;
    border-color: #B81C25;
	background: #B81C25;
}


/* mypage_block =========== */
.mypage_block{
	margin: 10vw 0 0;
}

.mypage_content_title{
    margin: 0 0 5vw;
	padding: 0 0 3vw;
    font-size: 3.6vw;
    font-weight: 700;
    border-bottom: 1px solid #ddd;
}

.credit_register .mypage_content_title{
	padding: 3vw 3vw;
    border-bottom: none;
    color: #fff;
    background: #B81C25;
}


/* credit_register =========== */
.credit_register .no_card_note{
	margin-bottom: 8vw;
}

.credit_register .credit_card_available{
	padding: 4vw 3vw;
    border-top: 1px solid #ddd;
    font-size: 0;
}

.credit_register .credit_card_available li{
	margin-right: 2vw;
    width: 15%;
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
    line-height: 0;
}

.credit_register .credit_card_available li:last-child{
	margin-right: 0;
}

.credit_register table{
	width: 100%;
	box-sizing: border-box;
}

.credit_register table th,
.credit_register table td{
    font-size: 16px;
	line-height: 180%;
	width: 100%;
	display: block;
	font-weight: normal;
	border-bottom: none;
	box-sizing: border-box;
	background: #fff;
}

.credit_register table tr:nth-child(2n+2){
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}

.credit_register table tr:first-child{
	border-top: 1px solid #ddd;
}

.credit_register table tr:last-child{
	border-bottom: 1px solid #ddd;
}

.credit_register table th{
	padding: 3vw;
	font-weight: bold;
}

.credit_register table td{
	padding: 0 3vw;
}

.credit_register table td .border{
	padding: 3vw 0;
	border-top: 1px solid #ddd;
}

.credit_register table td #card-element{
    padding: 12px;
    font-size: 16px;
    box-sizing: border-box;
    width: 100%;
    border: 1px solid #ddd;
    vertical-align: middle;
}

.credit_register table td #card-element iframe{
	width: 100%; 
}

.credit_register input{
	padding: 10px;
	font-size: 16px;
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #ddd;
	vertical-align: middle;
}

.mypage_block.credit_register .btn_box{
	margin: 8vw 0 0;
}


/* mypage__ 更新・削除・停止ページ
   ================================================================== */
.mypage_block .registered_text{
	padding: 3vw 4vw;
    font-size: 3.7vw;
    font-weight: 700;
    border: 1px solid #ddd;
}

.mypage_block .registered_text.red{
    color: #D90000;
    border-color: #D90000;
}

.mypage_block .really_text{
    font-size: 5vw;
    font-weight: 700;
}

.mypage_block p + .really_text{
    margin: 6vw 0 0;
}

.mypage_block .btn_box{
	margin: 10vw 0 0;
}

.mypage_block.membership .btn_box{
	text-align: center;
}

.mypage_block .btn_box a + *,
.mypage_block .btn_box a + a{
	margin: 4vw 0 0;
    display: inline-block;
}

.monthly_price{
	margin: 6vw 0 0;
    display: flex;
    align-items: baseline;
}

.monthly_price span{
	display: block;
    line-height: 150%;
    letter-spacing: 0.1em;
    font-weight: 700;
}

.monthly_price .siz_s{
	font-size: 3.5vw;
}

.monthly_price .siz_m{
	font-size: 5vw;
}

.monthly_price .siz_l{
    margin: 0 0 0 1.5vw;
	font-size: 8vw;
}

.monthly_price + .registered_text{
	margin-top: 8vw;
}


/* mypage__ change_completed 完了ページ全般
   ================================================================== */
.change_completed .completed_title{
    margin: 8vw 0 6vw;
    font-size: 5vw;
    font-weight: 700;
    text-align: center;
}

.change_completed .completed_title + p{
    text-align: center;
}

.change_completed .btn_box{
	margin: 10vw 0 0;
}


/* border_box_complete 退会完了
   ================================================================== */
.border_box_complete .box{
    margin: 10vw 0 0;
    padding: 6vw 4vw;
    text-align: center;
    border: 1px solid #ddd;
}

.border_box_complete .box p + p{
    margin: 4vw 0 0;
}

.border_box_complete .box .btn_box{
    margin: 8vw 0 0;
}


/* mypage__ order_history_page 注文履歴 共通
   ================================================================== */
.order_history_page .date{
    font-size: 4vw;
    font-weight: 700;
    color: #333;
    letter-spacing: 0;
}

.order_history_page .order_number{
    margin: 2vw 0 4vw;
    font-size: 3.4vw;
    letter-spacing: 0.1em;
    color: #333;
}

.order_history_page .status .delivery span{
    padding: 0;
    min-width: 30vw;
    min-height: 7vw;
    font-size: 3.3vw;
    line-height: 150%;
    font-weight: 400;
    color: #fff;
    background: #30336B;
    text-align: center;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.order_history_page .status .btn_box{
    margin: 3vw 0 0;
    text-align: left;
}


/* mypage__ order_history_page 注文履歴_詳細
   ================================================================== */
.notice_box{
    margin: 5vw 0 0;
    padding: 5vw;
    border: 1px solid #E74C3C;
}

.notice_box h5{
    font-size: 3.7vw;
    margin: 0 0 3vw;
}


/* mypage__ order_history_page 注文履歴 TOP
   ================================================================== */
.order_list{
    margin: -5vw 0 0;
}

.order_list > li{
    padding: 5vw 0 0;
    border-bottom: 1px solid #ddd;
}
    
.order_list > li .products{
    margin: 4vw 0 0;
}


/* order_product_list 商品購入・履歴の表示
   ================================================================== */
.order_product_list > li{
    padding: 0 0 4vw;
    line-height: 0;
}

.order_product_list.only > li{
    padding: 0 0 0;
}

.order_product_list > li + li{
    padding-top: 4vw;
    border-top: 1px dashed #ddd;
}

.order_detail_show_block .order_product_list > li:last-child{
    border-bottom: 1px dashed #ddd;
}

.order_product_list .order_product_box{
    display: inline-flex;
    align-items: center;
}

.order_product_list .order_product_box span{
    display: block;
}

.order_product_list .order_product_box .photo{
    width: 25vw;
    height: 25vw;
}

.order_product_list .order_product_box .photo img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    aspect-ratio: 1 / 1;
}

.order_product_list .order_product_box .product_text_box{
    padding: 0 0 0 5vw;
    width: calc(100% - 25vw);
    box-sizing: border-box;
}

.order_product_list .order_product_box .product_name{
    font-size: 3.6vw;
    color: #2980B9;
    font-weight: 700;
    line-height: 150%;
}

.order_product_list .order_product_box .product_price_txt{
    margin: 1vw 0 0;
    font-size: 3.5vw;
    font-weight: 400;
    line-height: 150%;
}

.order_product_list .order_product_box .product_price_txt.bold{
    font-weight: 700;
}

/* リンクなしの場合 */
.order_product_list.link_none .order_product_box{
    pointer-events: none;
}

.order_product_list.link_none .order_product_box .product_name{
    color: #222;
}


/* order_detail_show_block 注文手続き・履歴
   ================================================================== */
.order_detail_show_block{
    position: relative;
}

.order_history_page .order_detail_show_block{
    margin-top: 5vw;
}

.order_detail_list{
    position: relative;
}

.order_detail_list > li{
    margin: 0 0 12vw;
}

.order_detail_list .bg_title{
    margin: 0 0 6vw;
}

.order_detail_list .order_history_detail_bottom_box{
    padding: 0 3vw 0;
    position: relative;
}

.order_detail_list .order_history_detail_bottom_box.user_information{
    padding-right: 0;
}

.order_detail_list .order_history_detail_bottom_box.user_information ul li{
    margin-top: 2vw;
    display: flex;
}

.order_detail_list .order_history_detail_bottom_box.user_information ul li:first-child{
    margin-top: 0;
}

.order_detail_list .order_history_detail_bottom_box.user_information ul li:nth-child(1),
.order_detail_list .order_history_detail_bottom_box.user_information ul li:nth-child(2){
    padding-right: 18vw;
}

.order_detail_list .order_history_detail_bottom_box.user_information ul li h5{
    width: 30vw;
    font-size: 3.5vw;
    line-height: 170%;
    box-sizing: border-box;
}

.order_detail_list .order_history_detail_bottom_box.user_information ul li p{
    width: calc(100% - 30vw);
    box-sizing: border-box;
    word-break: break-all;
}

.order_detail_list .order_history_detail_bottom_box.user_information .btn_box{
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
}

.order_detail_list p + p{
    margin: 1vw 0 0;
}

.order_detail_list .order_detail_table{
    width: 100%;
}

.order_detail_list .order_detail_table th,
.order_detail_list .order_detail_table td{
    padding: 0 0 4vw;
    font-size: 3.5vw;
    line-height: 150%;
    box-sizing: border-box;
}

.order_detail_list .order_detail_table tbody tr:last-child th,
.order_detail_list .order_detail_table tbody tr:last-child td{
    padding-bottom: 0;
}

.order_detail_list .order_detail_table th{
    width: 30vw;
}

/* Form */
.order_detail_list .order_detail_table .flex_box{
    position: relative;
}

.order_detail_list .order_detail_table .flex_box .flex_box_inner{
    margin: 0 0 2vw;
}

.order_detail_list .order_detail_table .flex_box .flex_box_inner:last-child{
    margin: 0 0 0;
}

.order_detail_list .order_history_detail_bottom_box .radio_input + .radio_input{
    margin-top: 25px;
}

.order_detail_list .order_history_detail_bottom_box .credit_register{
    margin-top: 20px;
}

.order_detail_list .order_detail_table input{
    padding: 5px;
    font-size: 16px;
    background-color: #F8F8F8;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.order_detail_list .order_detail_table select{
    padding: 5px;
    width: 156px;
    font-size: 16px;
    background-color: #F8F8F8;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.order_detail_list .order_detail_table .txt{
    margin: 0 2vw;
    font-size: 16px;
    display: inline-block;
    line-height: 150%;
}

.order_detail_list textarea{
    padding: 5px;
    width: 100%;
    height: 50vw;
    font-size: 16px;
    line-height: 150%;
    border: 1px solid #ddd;
    box-sizing: border-box;
}

/* 小計・合計金額 */
.order_detail_price_box .bg_box{
    background: #F3F3F3;
}

.order_detail_price_box .order_detail_price_inner{
    padding: 6vw;
}

.order_detail_price_box dl{
    margin: 0 0 1vw;
    font-size: 0;
}

.order_detail_price_box dl dt,
.order_detail_price_box dl dd{
    font-size: 3.5vw;
    letter-spacing: 0.1em;
    font-weight: 400;
    display: inline-block;
    line-height: 150%;
    box-sizing: border-box;
}

.order_detail_price_box dl dt{
    width: 15vw;
}

.order_detail_price_box dl dd{
    width: calc(100% - 15vw);
    text-align: right;
}

.order_detail_price_box .total_price_inbox{
    margin: 2vw 0 0;
    padding: 3vw 0 0;
    border-top: 1px dashed #ccc;
    text-align: right;
}

.order_detail_price_box .total_price_inbox span{
    font-size: 3.4vw;
    letter-spacing: 0.1em;
    font-weight: 700;
    display: inline-block;
    line-height: 150%;
    box-sizing: border-box;
}

.order_detail_price_box .total_price_inbox .siz_l{
    padding: 0 2vw 0 3vw;
    font-size: 7vw;
}

.order_detail_price_box .total_price_inbox .red{
    color: #D90000;
    letter-spacing: 0;
}

.order_detail_price_box .order_detail_button{
    margin: 3vw 0 0;
    padding: 0 0 8vw;
    text-align: center;
}

.order_detail_price_box .order_detail_button .btn_box{
    margin: 0 0 0;
    text-align: center;
}

.order_detail_price_box .order_detail_button .btn_box + .btn_box{
    margin: 3vw 0 0;
}


/* cart_contents 共通
   ================================================================== */
.cart_page{
	position: relative;
}

.cart_contents{
	padding: 8vw 0 0;
}

.cart_top .box{
	text-align: center;
}

.cart_top .box + .box{
	margin: 15vw 0 0;
    padding: 10vw 0 0;
    position: relative;
}

.cart_top .box + .box::before{
    content: "";
    background: #ddd;
    width: 5vw;
    height: 5vw;
    border-radius: 100%;
    margin: auto;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
}

.cart_top .box p.f16{
	font-size: 3.6vw;
}

.cart_top .box p + p{
	margin: 5vw 0 0;
}

.cart_top .box .btn_box{
	margin: 6vw 0 0;
}


/* cart_inside_block カートの中身
   ================================================================== */
.cart_inside_block{
    margin: 8vw 0 0;
}

.cart_inside_block table{
    width: 100%;
}

.cart_inside_block table th{
    padding: 3vw 0;
    font-size: 3.5vw;
    letter-spacing: 0.1em;
    background: #F4F3F0;
    text-align: center;
    font-weight: 700;
    box-sizing: border-box;
}

.cart_inside_block table tbody th:nth-child(1){
    width: 12%;
}

.cart_inside_block table tbody th:nth-child(2){
    width: 52%;
}

.cart_inside_block table tbody th:nth-child(3){
    width: 18%;
}

.cart_inside_block table tbody th:nth-child(4){
    width: 18%;
}

.cart_inside_block table td{
    padding: 2vw 0;
    text-align: center;
    vertical-align: middle;
    border-bottom: 1px dashed #ccc;
}

.cart_inside_block table td.left{
    text-align: left;
}

/* 削除ボタン */
.product_delete{
    padding: 0;
    width: 4vw;
    border: none;
    background: none;
    line-height: 0;
}

/* 個数増減の設定
.cart_inside_block input[type="number"]::-webkit-outer-spin-button,
.cart_inside_block input[type="number"]::-webkit-inner-spin-button{
    -webkit-appearance: none;
    appearance: none;
    margin: 0;
} */

div.input_group{
    margin: 0 auto;
    width: 42px;
    border: 1px solid #ddd;
}

/* 数値 */
.cart_inside_block input[type="number"]{
    -moz-appearance: textfield;
    text-align: center;
    width: 100%;
    height: 35px;
    box-sizing: border-box;
    background: #FAFAFA;
    border: none;
}

/* 増減ボタン */
button.btn_number{
    width: 40px;
    height: 25px;
    font-size: 15px;
    font-weight: 700;
    box-sizing: border-box;
    background: #FAFAFA;
    border: none;
}

/* 小計 */
.cart_inside_block table .subtotal{
    font-size: 3.6vw;
    letter-spacing: 0;
}

/* 合計金額 */
.cart_inside_block .total_price{
    margin: 8vw 0 0;
    text-align: right;
}

.cart_inside_block .total_price .total_price_box{
    padding: 0 6vw 0 0;
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
}

.cart_inside_block .total_price .total_price_box span{
    display: block;
    line-height: 150%;
    font-weight: 700;
}

.cart_inside_block .total_price .total_price_box .siz_s{
    font-size: 4vw;
    letter-spacing: 0.1em;
}

.cart_inside_block .total_price .total_price_box .siz_l{
    padding: 0 0 0 10vw;
    font-size: 7vw;
    color: #D90000;
}

.cart_inside_block .total_price .total_price_box .siz_l::before{
    margin-right: 1vw;
}

.cart_inside_block .total_price .total_price_box .siz_l *{
    color: inherit;
}

.cart_inside_block .total_price p.red_text{
    margin: 5vw 0 0;
}

/* ボタン */
.cart_inside_block .cart_button{
    margin: 8vw 0 0;
    text-align: right;
}

.cart_inside_block .cart_button .btn_box{
    text-align: right;
}

.cart_inside_block .cart_button .btn_box + .btn_box{
    margin: 3vw 0 0;
}


/* order_procedure ご注文内容のご確認
   ================================================================== */
.order_procedure .cart_conf_text{
	margin: 0 0 8vw;
}


/* send_completion ご注文完了
   ================================================================== */
.send_completion{
    margin: 10vw 0 0;
    padding: 3vw 0 0;
	text-align: center;
    position: relative;
}

.send_completion::before{
    content: "";
    background: #707070;
    width: 1px;
    height: 6vw;
    position: absolute;
    bottom: 100%;
    left: 50%;
}

.send_completion h3{
	font-size: 5vw;
    font-weight: 700;
}

.send_completion h3 + p{
	margin: 6vw 0 0;
}

.send_completion .order_number{
	margin: 8vw 0 0;
}

.send_completion .order_number p{
	font-weight: 700;
    color: #D90000;
}

.send_completion .btn_box{
	margin: 10vw 0 0;
}

.contact_page .send_completion .btn_box{
	margin: 12vw 0 0;
}


/* member_registration 会員登録
   ================================================================== */
.member_registration .form_block{
	margin: 8vw 0 0;
}


/* contact_page お問い合わせ
   ================================================================== */
.contact_page .form_block{
	margin: 8vw 0 0;
}


/* member_information マイページ_会員情報
   ================================================================== */
.member_information .form_block{
	margin: 8vw 0 0;
}


/* フォーム基本設定
   ================================================================== */
.top_text{
	margin: 0 0 2vw;
    text-align: center;
    display: none;
}

.register_page .top_text.register_form{
    display: block;
}

.mypage_account .top_text.mypage_account_form{
    display: block;
}

.top_text p{
    font-size: 3.1vw;
}

.top_text p + p{
    margin-top: 4vw;
}

.conf_text{
    margin: 0 0 2vw;
	font-size: 4vw;
    color: #D90000;
    text-align: center;
    font-weight: 700;
	line-height: 150%;
}

.req{
	color: #D90000;
}

.form_block table{
    margin: 0 auto 0;
	width: 100%;
	line-height: 150%;
	box-sizing: border-box;
}

.form_block th,
.form_block td{
	width: 100%;
	display: block;
	font-weight: normal;
	border-bottom: none;
	box-sizing: border-box;
	font-size: 16px;
	letter-spacing: 0.10em;
}

.form_block th{
	padding: 20px 0 0;
    font-weight: 500;
}

.form_block td{
	padding: 10px 0 0;
    position: relative;
}

.form_block .prefecture,
.form_block .check_bg,
.form_block input,
.form_block select,
.form_block textarea{
	margin: 0;
	padding: 15px;
	font-size: 16px;
	box-sizing: border-box;
	width: 100%;
    background: #F7F7F7;
	border: 1px solid #F7F7F7;
	vertical-align: middle;
    display: block;
}

/* 確認画面の入力文字背景 */
.form_block .check_bg{
    display: block;
    background: #ddd;
    border-color: #ddd;
}

.form_block select{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url("../images/common/down-arrow.svg");
    background-color: #F8F8F8;
	background-repeat: no-repeat;
	background-size: 10px 8px;
	background-position: right 16px center;
}

.form_block input:focus,
.form_block textarea:focus,
.form_block select:focus{
	outline: none;
}

textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder{
    color: #ccc;
}

textarea::-moz-placeholder,
input::-moz-placeholder{
    color: #ccc; opacity: 1;
}

textarea:-ms-input-placeholder,
input:-ms-input-placeholder{
    color: #ccc;
}

.form_block textarea{
    height: 50vw;
	line-height: 150%;
}

/* サイズ指定 */
.form_block .wid150{
    width: 150px;
}

/* ラジオボタン */
.form_block .radio_input{
    padding: 0 0 17px;
}

.radio_input label{
    margin: 0 0 8px;
	display: flex;
    align-items: center;
    cursor: pointer;
}

input[type='checkbox'] ,
input[type='radio'] {
    appearance: none;
    outline: none;
    display: block;
    position: relative;
    text-align: center;
    cursor: pointer;
    width: 18px;
    height: 18px;
	margin: 0 10px 0 0;
    font-size: 0;
    padding: 0 !important;
    border: none;
    background: none;
}

input[type='checkbox']::before ,
input[type='radio']::before {
    display: block;
    position: absolute;
    content: '';
    width: 18px;
    height: 18px;
    background: #fff;
    border: solid 1px #ddd;
    border-radius: 100%;
}

input[type='checkbox']:checked::before {
    border-color: #F39C12;
}

input[type='radio']:checked::before {
    background-color: #ddd;
}

input[type='checkbox']::after ,
input[type='radio']::after {
    display: block;
    content: '';
    position: absolute;
    left: 5px;
    top: 5px;
    width: 10px;
    height: 10px;
    background: #222;
    border-radius: 100%;
    opacity: 0;
}

input[type='checkbox']:checked::after ,
input[type='radio']:checked::after {
    opacity: 1;
}

/* 四角ボタン */
.square input[type='checkbox']::before ,
.square input[type='radio']::before {
    border-radius: 4px;
}

.square input[type='checkbox']::after ,
.square input[type='radio']::after {
    border-radius: 3px;
}

/* チェックアイコン */
.icon_check input[type='checkbox']::before ,
.icon_check input[type='radio']::before {
    border-radius: 0;
}

.icon_check input[type='checkbox']::after ,
.icon_check input[type='radio']::after {
    left: 4px;
    top: -2px;
    width: 20px;
    height: 20px;
    background-image: url("../images/common/icon_form_check.svg");
    background-color: transparent;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100%;
}

/* サイズ */
.form_block .wid100{
    width: 100px;
}

.form_block .wid200{
    width: 200px;
}

/* 分割 */
.split .flex{
    margin: 0 0 0;
    display: block;
}

.split .flex > div + div{
    margin: 10px 0 0;
}

.split .center .prefecture,
.split .center select,
.split .center input{
    text-align: center;
}

/* ボタン */
.zas_btn_area{
	margin: auto;
	text-align: center;
	padding: 60px 0 0;
	font-size: 0;
	box-sizing: border-box;
	max-width: 500px;
}

.zas_btn_area button{
	padding: 16px 0;
	border: none;
	font-size: 16px;
    letter-spacing: 0.1em;
	color: #FFF;
	position: relative;
	overflow: hidden;
	text-align: center;
    transition: .3s;
}

.zas_btn_area .zas_btn01{
	background: #222;
	width: 65%;
	max-width: 260px;
}

.zas_btn_area .zas_btn02{
	margin-right: 2%;
	background: #ccc;
	width: 28%;
}

.zas_btn_area .zas_btn03{
	background: #222;
	width: 65%;
	max-width: 260px;
}


/* login_page ログイン
   ================================================================== */
.login_page .box{
    margin: 10vw 0 0;
    padding: 6vw 4vw;
    text-align: center;
    border: 1px solid #F18926;
}

.login_page input:focus,
.login_page textarea:focus,
.login_page select:focus{
	outline: none;
}

.login_page table{
	margin: 0 auto;
    width: 100%;
}

.login_page th,
.login_page td{
	padding: 2vw 1vw;
    font-size: 16px;
    line-height: 170%;
    letter-spacing: 0.1em;
    box-sizing: border-box;
}

.login_page th{
    width: 35vw;
    color: #F39C12;
    text-align: right;
}

.login_page th label{
    font-size: inherit;
    color: inherit;
    line-height: inherit;
    letter-spacing: inherit;
}

.login_page table input{
	padding: 5px;
    font-size: 16px;
    line-height: 150%;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 5px;
    box-sizing: border-box;
    width: 100%;
}

.login_page .box .btn_box{
	margin: 5vw 0 0;
}

/* bottom_flex */
.login_page .bottom_flex{
    margin: 5vw 0 0;
}

.login_page .bottom_flex label{
    display: flex;
    align-items: center;
}

.login_page .left_note_text .txt{
    font-size: 3.5vw;
    line-height: 150%;
    display: inline-block;
}

/* right_note_text */
.right_note_text{
    margin: 5vw 0 0;
    text-align: right;
}

.right_note_text p a{
    position: relative;
    display: inline-block;
}

.right_note_text p a::before{
    content: "";
    margin: auto;
    background-image: url("../images/common/icon_link_arrow.svg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100%;
    width: 1.5vw;
    height: 3vw;
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(100% + 2vw);
}

.right_note_text p + p{
    margin: 1vw 0 0;
}


/* product_show_block 商品詳細
   ================================================================== */
.product_show_block{
    position: relative;
}

.product_show_block .product_show_flex{
    position: relative;
}

.product_show_block .left_block{
    padding: 0 3vw;
    position: relative;
}

/* スライダー */
.product_show_block .left_block .photos{
    position: relative;
}

.product_show_block .left_block .main_photo{
    position: relative;
}

.product_show_block .left_block .product_slider{
    width: 100%;
}

.product_show_block .left_block .main_photo .slick-track,
.product_show_block .left_block .main_photo .product_slider{
    height: 450px;
}

.product_show_block .left_block .product_slider .slick-slide{
    line-height: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.product_show_block .left_block .product_slider img{
    max-width: 100%;
    max-height: 100%;
}

.product_show_block .left_block .main_photo .tag{
    padding: 1vw 2vw;
    font-size: 3.0vw;
    position: absolute;
    left: 0;
    bottom: 0;
    background: #D71414;
    color: #fff;
}

.product_show_block .left_block .main_photo .tag.b_grade{
    background: #641AC5;
}

.product_show_block .left_block .main_photo .tag.new{
    background: #F1C40F;
}

.product_show_block .left_block .product_slider_nav{
    font-size: 0;
}

.product_show_block .left_block .product_slider_nav .slick-track{
    width: 100% !important;
}

.product_show_block .left_block .product_slider_nav .slick-slide{
    margin: 2vw 2vw 0 0;
    width: calc((100% / 5) - 1.6vw) !important;
    height: 16vw;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
}

.product_show_block .left_block .product_slider_nav .slick-track .slick-slide:nth-child(5n+5){
    margin-right: 0;
}

.product_show_block .left_block .product_slider_nav .slick-slide.slick-current{
    opacity: .5;
}

.product_show_block .left_block .product_slider_nav img{
    max-width: 100%;
    max-height: 100%;
}

/* right_block */
.product_show_block .right_block{
    padding: 6vw 0 0;
}

.product_show_block .right_block .product_detail_box{
    padding: 6vw 3vw;
    border-bottom: 1px solid #ddd;
    position: relative;
}

.product_show_block .right_block .position_box{
    position: relative;
}

.product_show_block .right_block .product_detail_box:first-child{
    padding-top: 0;
}

.product_show_block .right_block .product_name{
    font-size: 5.2vw;
    font-weight: 700;
}

.product_show_block .right_block .product_categories{
    margin: 3vw 0 0;
    font-size: 0;
}

.product_show_block .right_block .product_categories li{
    margin: 2vw 1vw 0 0;
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
}

.product_show_block .right_block .product_categories li > *{
    padding: 1vw 3vw;
    font-size: 3.3vw;
    background: #F5F5F5;
    border: 1px solid #ddd;
    display: block;
    box-sizing: border-box;
    border-radius: 5px;
}

/* 値段 */
.product_show_block .right_block .price{
    letter-spacing: 0;
    line-height: 150%;
}

/* 通常価格 */
.product_show_block .right_block .price span{
    display: inline-block;
    line-height: 150%;
    position: relative;
}

.product_show_block .right_block .price.regular{
    font-size: 3.5vw;
    color: #bbb;
}

.product_show_block .right_block .price.regular span{
    color: inherit;
}

.product_show_block .right_block .price.regular .siz_s{
    font-size: 2.8vw;
}

.product_show_block .right_block .cancellation{
    position: relative;
}

.product_show_block .right_block .cancellation::after{
    content: "";
    background: #bbb;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 0;
}

.product_show_block .right_block .cancellation.red::after{
    background: #D90000;
}

/* 販売価格 */
.product_show_block .right_block .price.original{
    margin: 2vw 0 0;
    font-size: 5vw;
    color: #D90000;
    font-weight: 700;
}

.product_show_block .right_block .price.original span{
    color: inherit;
}

.product_show_block .right_block .price.original .siz_s{
    font-size: 3.2vw;
}

/* 割引価格 */
.product_show_block .right_block .price.down{
    margin: 2vw 0 0;
    font-size: 8vw;
    color: #D90000;
    font-weight: 700;
    position: relative;
}

.product_show_block .right_block .price.down span{
    color: inherit;
}

.product_show_block .right_block .price.down .siz_s{
    font-size: 3.2vw;
}

.product_show_block .right_block .price.down .off{
    font-size: 2.8vw;
    font-weight: 400;
    position: absolute;
    top: 0;
    left: 2vw;
}

/* サブスク会員になると */
.product_show_block .right_block .subscribe_member{
    margin: 3vw 0 0;
}

.product_show_block .right_block .subscribe_member a{
    padding: 2vw 9vw 2vw 2vw;
    display: inline-block;
    border: 1px solid #D90000;
    position: relative;
}

.product_show_block .right_block .subscribe_member a::before{
    content: "";
    background-image: url("../images/common/icon_arrow_right.svg");
    background-color: #D90000;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 30%;
    width: 5vw;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
}

.product_show_block .right_block .subscribe_member a > span{
    display: block;
}

.product_show_block .right_block .subscribe_member a span{
    line-height: 150%;
    letter-spacing: 0;
    color: #D90000;
}

.product_show_block .right_block .subscribe_member a .txt{
    font-size: 3.3vw;
}

.product_show_block .right_block .subscribe_member a .yen{
    font-size: 6vw;
    font-weight: 700;
}

.product_show_block .right_block .subscribe_member a .siz_s{
    font-size: 3vw;
}

/* 沖縄県内全品送料無料 */
.product_show_block .right_block .free_shipping{
    margin: 2vw 0 0;
    line-height: 0;
}

/* product_form 数量表示 ボタン */
.product_show_block .right_block .quantity_box{
    position: relative;
}

.product_show_block .right_block .quantity_box .quantity_number{
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.product_show_block .right_block .quantity_box .txt{
    margin: 0 3vw 0 0;
    font-size: 3.4vw;
    letter-spacing: 0;
    line-height: 150%;
}

.product_show_block .right_block .quantity_box .input{
    line-height: 0;
}

.product_show_block .right_block .quantity_box input{
    padding: 5px 20px;
    font-size: 16px;
    width: 100px;
    line-height: 150%;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-sizing: border-box;
    text-align: center;
}

.product_show_block .right_block .quantity_box .quantity_note{
    margin: 2vw 0 0;
    font-size: 3.4vw;
    letter-spacing: 0;
    line-height: 150%;
    text-align: right;
}

.product_show_block .right_block .product_btn_box{
    margin: 3vw 0 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

/* お気に入りボタンを配置 */
.product_show_block .right_block .product_favorite_btn_box{
    position: absolute;
    bottom: 0;
    left: 0;
}

.product_show_block .right_block .product_favorite_btn_box .favorite.sp{
    width: 14vw;
}

.product_show_block .right_block .product_favorite_btn_box .favorite.sp .btn{
    padding: .5vw 0 0;
    width: 14vw;
    height: 14vw;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.product_show_block .right_block .product_favorite_btn_box .favorite.sp .btn img{
    width: 40%;
}

.product_show_block .right_block .product_btn_box .purchase{
    padding: 0 0 0 3vw;
    width: calc(100% - 14vw);
    box-sizing: border-box;
}

/* product_detail_text 商品説明 */
.product_show_block .right_block .product_detail_text{
    position: relative;
}

.product_show_block .right_block .product_detail_text.not_putin_sp{
    padding-left: 0;
    padding-right: 0;
}

.product_show_block .right_block .product_detail_text table{
    width: 100%;
}

.product_show_block .right_block .product_detail_text table th,
.product_show_block .right_block .product_detail_text table td{
    width: 100%;
    display: block;
    box-sizing: border-box;
}

.product_show_block .right_block .product_description_text,
.product_show_block .right_block .product_detail_text table th,
.product_show_block .right_block .product_detail_text table td{
    font-size: 3.5vw;
    line-height: 170%;
    letter-spacing: 0.1em;
}

.product_show_block .right_block .product_detail_text .note *{
    color: #E74C3C;
}

.product_show_block .right_block .product_detail_text table th{
    padding: 4vw 3vw 0;
    font-weight: 700;
}

.product_show_block .right_block .product_detail_text table tbody tr:first-child th{
    padding-top: 0;
}

.product_show_block .right_block .product_detail_text table td{
    padding: 2vw 3vw 4vw;
    border-bottom: 1px dashed #ddd;
}

.product_show_block .right_block .product_description_text{
    padding: 4vw 3vw 0;
}

/* sns_area */
.sns_area{
	margin: 6vw 0 0;
	line-height: 1;
    overflow: hidden;
    text-align: right;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
}

.sns_area div{
	margin-bottom: 5px;
	margin-right: 5px;
	float: right;
	display: inline-block;
	font-size: 0;
	line-height: 1;
    vertical-align: baseline;
}

.linebutton img{
	width: 21px;
}

/* store_information_box 店舗名 */
.store_information_box{
	margin: 6vw 0 0;
    padding: 4vw;
    background: #F5F1EB;
    border-radius: 20px;
    box-sizing: border-box;
}

.store_information_box .store_information{
	display: flex;
    align-items: center;
    position: relative;
}

.store_information_box .store_photo{
	width: 22vw;
    line-height: 0;
    overflow: hidden;
    border-radius: 100%;
}

.store_information_box .store_photo img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    aspect-ratio: 1 / 1;
}

.store_information_box .store_name{
    padding: 0 0 0 4vw;
	width: 55vw;
    box-sizing: border-box;
}

.store_information_box .store_text p,
.store_information_box .store_name > span{
    font-size: 3.4vw;
	display: block;
    line-height: 170%;
    letter-spacing: 0.1em;
}

.store_information_box .store_name span:nth-child(2){
    margin: 2vw 0 0;
    font-weight: 400;
}

.store_information_box .open_close .arrow{
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 5;
    margin: auto;
    right: 0;
    top: 0;
    bottom: 0;
    text-indent: -999999px;
}

.store_information_box .open_close .arrow::after{
	content: "";
    background-image: url("../images/common/icon_arrow_bottom.svg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100%;
	width: 3vw;
	height: 3vw;
	position: absolute;
    margin: auto;
	right: 0;
	top: 0;
    bottom: 0;
	transform: rotate(0);
    transition: .3s;
}

.store_information_box .open_close .arrow.active::after{
    transform: rotate(-90deg);
}

.store_information_box .store_text{
    padding: 5vw 0 0;
}
    
/* 初め閉じておくなら
.store_information_box .open_close .arrow::after{
	transform: rotate(-90deg);
}

.store_information_box .open_close .arrow.active::after{
    transform: rotate(0);
}

.store_information_box .store_text{
    display: none;
} */


/* other_products_list
   ================================================================== */
.other_products_list{
	margin: 10vw 0 0;
}

.other_products_list .inner_block{
	margin: 15vw 0 0;
}

.other_products_list .inner_block:first-child{
	margin-top: 0;
}

.other_products_list .product_list + .btn_box{
    margin: 10vw 0 0;
}


/* products_pagination
   ================================================================== */
.products_pagination{
	text-align: center;
	padding: 10vw 0 5px;
	font-size: 0;
}

.products_pagination li{
	display: inline-block;
    vertical-align: top;
	margin: 6px 3px 0;
}

.products_pagination li.disabled{
	display: none;
}

.products_pagination .pagination_pc{
	display: none;
}

.products_pagination .pagination_sp{
	position: relative;
	display: flex;
    justify-content: space-between;
}

.products_pagination .pagination_sp a,
.products_pagination .pagination_sp span{
	text-decoration: none;
	padding: 2px 0 0;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
    box-sizing: border-box;
    letter-spacing: 0;
    transition: all ease-out 0.3s;
    font-family: "メイリオ","ms pgothic", sans-serif;
}

.products_pagination .pagination_sp a,
.products_pagination .pagination_sp span{
	width: 100px;
	height: 50px;
	background: #ddd;
	color: #FFF;
}

.products_pagination .pagination_sp span{
	background: #CAB270;
    opacity: 0;
}


/* pagination
   ================================================================== */
.pagination{
	text-align: center;
	padding: 10vw 0 5px;
	font-size: 0;
}

.pagination li{
	display: inline-block;
    vertical-align: top;
	margin: 6px 3px 0;
}

.pagination li.disabled{
	display: none;
}

.pagination a,
.pagination .active span{
	text-decoration: none;
	background: #ddd;
	color: #FFF;
	padding: 2px 0 0;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	width: 34px;
	height: 34px;
    box-sizing: border-box;
    letter-spacing: 0;
    transition: all ease-out 0.3s;
    font-family: "メイリオ","ms pgothic", sans-serif;
}

.pagination .active span{
	background: #CAB270;
}


@media screen and (min-width : 500px){


    /* kv
       ================================================================== */
    .kv{
        margin: 0 0 0;
    }
    
    .kv .main_view{
        height: 68.0vw;
        background-image: url("../images/index/webp/kv.webp");
    }
    
    .kv .inbox{
        padding: 22.7vw 0 0;
    }
    
    .kv h1 span{
        padding: 0;
        font-size: 2.2vw;
        min-width: 45.0vw;
        min-height: 7.0vw;
        justify-content: center;
        align-items: center;
    }
    
    .kv p.sub{
        margin: 4.5vw 0 0;
        font-size: 4.0vw;
    }
    
    .kv #loopslider{
        margin: 3.0vw 0 0;
    }
    
    .kv #loopslider li{
        padding: 0 4.0vw 0 0;
        font-size: 8.0vw;
    }


    /* categories_list
       ================================================================== */
    .categories_list{
    	margin: 0 0 0;
    }
    
    .categories_list ul li{
        position: relative;
    }
    
    .categories_list ul a{
        transition: .3s;
    }
    
    .categories_list ul a:hover{
        opacity: .6;
    }
    
    .categories_list ul > .open_close,
    .categories_list ul a{
        font-size: 1.6vw;
    }
    
    .categories_list.widmax ul > .open_close,
    .categories_list.widmax ul a{
        font-size: 1.8vw;
    }
    
    .categories_list ul a{
        padding: 1.3vw 6vw 1.3vw 2.5vw;
    }
    
    .categories_list.widmax ul a{
        padding: 1.6vw 7.6vw 1.6vw 2.5vw;
    }

    .categories_list .open_close + ul{
        margin: .5vw 0 0;
    }
    
    /* 第一階層 */
    .categories_list > ul > li{
        margin: 0 0 .5vw;
    }
    
    /* 第二階層 */
    .categories_list > ul > li > ul > li{
        margin: 0 0 .5vw;
    }
    
    /* 第三階層 */
    .categories_list > ul > li > ul > li > ul{
        display: block;
    }
    
    .categories_list > ul > li > ul > li > ul > li{
        margin: 0 0 .5vw;
    }
    
    .categories_list > ul > li > ul > li > ul > li > a{
        padding: .9vw 2.5vw;
        font-size: 1.4vw;
    }
    
    .categories_list.widmax > ul > li > ul > li > ul > li > a{
        padding: .9vw .5vw;
        font-size: 1.4vw;
    }
    
    .categories_list.widmax,
    .categories_list.widmax li,
    .categories_list.widmax ul{
        font-size: 0;
    }
    
    .categories_list.widmax .open_close + li{
        margin: 0 0 0;
    }
    
    .categories_list.widmax > ul > li > ul > li > ul > li{
        margin-right: .5vw;
        width: calc((100% / 5) - .4vw);
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
        text-align: center;
    }
    
    .categories_list.widmax > ul > li > ul > li > ul > li:nth-child(5n+5){
        margin-right: 0;
    }
    
    /* ボタン */
    .categories_list ul .open_close div{
    	width: 4.4vw;
    }
    
    .categories_list ul .open_close div::after{
    	width: 1.0vw;
    	height: 1.2vw;
    	right: 1.7vw;
    }

    .categories_list.widmax ul .open_close div{
    	width: 6.0vw;
        cursor: pointer;
    }
    
    .categories_list.widmax ul .open_close div::after{
    	width: 1.4vw;
    	height: 1.7vw;
    	right: 2.0vw;
    }

    .categories_list ul .open_close div{
        cursor: pointer;
        transition: .3s;
    }

    .categories_list ul .open_close div:hover{
    	opacity: .7;
    }


    /* category_page
       ================================================================== */
    .category_page .categories_list{
    	margin: 6.0vw 0 0;
    }


    /* banner_slider
       ================================================================== */
    .banner_slider{
    	margin: 5.0vw auto 0;
        width: 50.0vw;
    }
    
    .banner_slider .slick-track li{
    	margin: 0 1.0vw;
    }


    /* product_list
       ================================================================== */
    .product_list{
    	position: relative;
    }
    
    .product_list > li{
    	margin: 0 2% 3.0vw 0;
        width: 32%;
    }
    
    .product_list > li:nth-child(2n+2){
    	margin-right: 2%;
    }
    
    .product_list > li:nth-child(3n+3){
    	margin-right: 0;
    }
    
    .product_list li a{
    	transition: .3s;
    }
    
    .product_list li a:hover{
    	opacity: .6;
    }
    
    .product_list .tag{
        padding: .5vw 1.2vw;
        font-size: 1.2vw;
    }
    
    .product_list .bottom{
        padding: 2.0vw .5vw 0;
    }
    
    .product_list .store_name{
        font-size: 1.3vw;
    }
    
    .product_list .product_name{
        margin: .7vw 0 0;
        font-size: 1.7vw;
        line-height: 2.4vw;
    }
    
    .product_list .price_box .price{
        font-size: 2.3vw;
    }
    
    /* プライスダウンの時 */
    .product_list .price_box.price_down .price.original{
        margin: 0 0 .5vw;
        padding: 0 .5vw;
        font-size: 1.6vw;
    }


    /* horizontal_slider 横一列
       ================================================================== */
    .product_list.horizontal_slider{
    	width: 100%;
        position: relative;
    }
    
    .product_list.horizontal_slider .slick-list{
    	width: 84.0vw;
    }
    
    .product_list.horizontal_slider .slick-track li{
    	margin: 0 2.0vw 0 0;
    }


    /* vertical_slider 縦並び
       ================================================================== */
    .vertical_slider{
    	width: 100%;
    }
    
    .vertical_slider .slick-list{
    	width: 92vw;
    }
    
    .vertical_slider .slick-track > li{
    	margin: 0 2.0vw 0 0;
    }
    
    .vertical_slider .frame_box{
        padding: 1.0vw 1.0vw 2.0vw;
    }
    
    .vertical_slider h2{
        margin: 0 0 2.0vw;
        font-size: 2.0vw;
    }
    
    .vertical_slider .btn_box{
        margin: 3.0vw 0 0;
    }
    
    /* product_list.vertical */
    .product_list.vertical > li{
    	margin: 0 0 2.0vw;
    }
    
    .product_list.vertical .thumbnail{
        width: 14.0vw;
    }
    
    .product_list.vertical .bottom{
        padding: .5vw 0 0 1.0vw;
        width: calc(100% - 14.0vw);
    }
    
    .product_list.vertical .store_name{
        display: -webkit-box;
    }
    
    .product_list.vertical .product_name{
        margin: .5vw 0 0;
    	font-size: 1.4vw;
    }
    
    .product_list.vertical .price_box{
        min-height: 5.5vw;
    }


    /* product_list_block 商品一覧・検索結果
       ================================================================== */
    .product_list_block .inner{
    	display: flex;
    }
    
    .product_list_block aside{
        width: 26.0vw;
    	display: block;
    }
    
    .product_list_block .product_list_show{
        padding: 0 0 0 2.0vw;
    	width: calc(100% - 26.0vw);
        box-sizing: border-box;
    }
    
    .product_list_show h2{
    	padding: 1.3vw 2.0vw;
        font-size: 1.8vw;
    }
    
    .product_list_show h2 div{
    	display: none;
    }
    
    .product_list_show .results_categories_list{
    	margin: 2.0vw 0 0;
        display: block !important;
        font-size: 0;
    }
    
    .product_list_show .results_categories_list li{
    	margin: 0 .5% .5vw 0;
        width: 33%;
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
    }
    
    .product_list_show .results_categories_list li:nth-child(3n+3){
    	margin-right: 0;
    }
    
    .product_list_show .results_categories_list li a{
    	padding: .9vw 1.0vw;
        border: 1px solid #ddd;
        text-align: center;
	    overflow: hidden;
	    display: -webkit-box;
	    -webkit-box-orient: vertical;
	    -webkit-line-clamp: 1;
        transition: .3s;
    }
    
    .product_list_show .results_categories_list li a span{
        font-size: 1.4vw;
	    overflow: hidden;
	    display: -webkit-box;
	    -webkit-box-orient: vertical;
	    -webkit-line-clamp: 1;
        transition: .3s;
    }
        
    .product_list_show .results_categories_list li a:hover{
    	background: #2F2725;
        border-color: #2F2725;
    }
    
    .product_list_show .results_categories_list li a:hover span{
        color: #fff;
    }

    .product_list_show .results_box{
    	margin: 1.5vw 0 2.0vw;
    }
    
    .product_list_show .results_title,
    .product_list_show .total{
        margin: .5vw 0 0;
        padding: 1.0vw 2.0vw;
    	font-size: 1.4vw;
    }


    /* product_list.divisions4 4分割
       ================================================================== */
    .product_list.divisions4 > li{
    	margin: 0 2% 3.0vw 0;
        width: 23.5%;
    }
    
    .product_list.divisions4 > li:nth-child(2n+2){
    	margin-right: 2%;
    }
    
    .product_list.divisions4 > li:nth-child(3n+3){
    	margin-right: 2%;
    }
    
    .product_list.divisions4 > li:nth-child(4n+4){
    	margin-right: 0;
    }
    
    .product_list.divisions4 .delete_btn_box{
        margin: 2.0vw 0 0;
    }


    /* new_items_block
       ================================================================== */
    .new_items_block{
    	padding: 10.0vw 0 0;
    }
    
    .new_items_block .block_title{
    	margin: 0 0 4.5vw;
    }
    
    .new_items_block .new_items_btn{
    	margin: 6.0vw 0 8.0vw;
    }
    
    
    /* seach_categories
       ================================================================== */
    .seach_categories{
    	padding: 10.0vw 0 0;
    }
    
    .seach_categories .block_title{
    	margin: 0 0 4.5vw;
    }
    
    .seach_categories ul{
    	font-size: 0;
    }
    
    .seach_categories ul li{
        margin: 0 2.0vw 2.0vw 0;
    	width: calc((100% / 4) - 1.5vw);
    }
    
    .seach_categories ul li:nth-child(2n+2){
        margin-right: 2.0vw;
    }
    
    .seach_categories ul li:nth-child(4n+4){
        margin-right: 0;
    }
    
    .seach_categories ul li .text{
        padding: 1.0vw 0 0;
        font-size: 1.5vw;
    }
    
    .seach_categories .btn_box{
    	margin: 4.0vw 0 0;
    }


    /* about_block
       ================================================================== */
    .about_block{
    	position: relative;
    }
    
    .about_block .photos{
    	margin: 6.5vw 0 0;
    }
    
    .about_block .photos li{
    	margin: 2.0vw 2% 0 0;
        width: 32%;
    }
    
    .about_block .photos li:nth-child(2n+2){
    	margin-right: 2%;
    }
    
    .about_block .photos li:nth-child(3n+3){
    	margin-right: 0;
    }
    
    .about_block .movie{
    	margin: 7.5vw 0 0;
        padding: 4.5vw 0;
    }
    
    .about_block .movie > div{
        width: 60.0vw;
    }
    
    .about_block .text_box{
        margin: 7.0vw 0 0;
        text-align: center;
    }
    
    .about_block .text_box p{
        font-size: 1.6vw;
        line-height: 3.5vw;
    }


    /* privacy_block
       ================================================================== */
    .privacy_block{
    	position: relative;
    }

    .privacy_block .siz_s{
    	font-size: 1.3vw;
    }
    
    .privacy_block p{
    	line-height: 2.5vw;
    }
    
    .privacy_block .top_text{
    	margin: 8.0vw 0 0;
    }
    
    .privacy_list > li{
    	margin: 3.0vw 0 0;
    }
    
    .privacy_list h3 .no{
    	font-size: 3.5vw;
    }
    
    .privacy_list h3 .txt{
        padding: 0 0 0 1.4vw;
    	font-size: 1.7vw;
    }
    
    .privacy_list li > div{
        margin: 1.5vw 0 0;
    }


    /* tradelaw_block
       ================================================================== */
    .tradelaw_block{
    	position: relative;
    }
    
    .tradelaw_block .common_table{
    	margin: 7.0vw 0 0;
    }
   

    /* common_table
       ================================================================== */	
    .common_table{
        border-bottom: none;
    }
    
    .common_table th,
    .common_table td{
    	padding: 1.5vw 1.0vw 1.5vw 3.0vw;
        font-size: 1.5vw;
        line-height: 3.0vw;
        width: auto;
        display: table-cell;
        border-top: 1px solid #ddd;
        border-bottom: 1px solid #ddd;
    }
    
    .common_table th{
        width: 21.0vw;
    }

    .common_table td .box + .box{
    	margin: 2vw 0 0;
        padding: 2vw 0 0;
    }


    /* rules_block
       ================================================================== */
    .rules_block{
    	position: relative;
    }
    
    .rules_block .rules_list{
    	margin: 4.0vw 0 0;
    }
    
    .rules_list > li{
    	padding: 4.0vw 0 0;
    }
    
    .rules_list h3{
        margin: 0 0 2.0vw;
    	padding: 0 1.5vw 1.5vw;
        font-size: 1.7vw;
    }
    
    .rules_list .box + .box{
        margin-top: 1.2vw;
    }
    
    .rules_list li,
    .rules_list p{
        line-height: 2.5vw;
    }


    /* faq_block
       ================================================================== */
    .faq_block{
    	position: relative;
    }
    
    .faq_block .oc_list{
    	margin: 8.0vw 0 0;
    }
    
    .oc_list > dl{
    	margin: 0 0 0;
        cursor: pointer;
    }
    
    .oc_list > dl dt{
    	padding: 2.8vw 2.0vw 2.8vw 6.0vw;
    	padding-right: 5.0vw;
    	font-size: 1.6vw;
    }
    
    .oc_list > dl dt::after{
    	width: 2.6vw;
    	height: 2.6vw;
    	right: 0;
    	top: 2.0vw;
    }
    
    .oc_list > dl dd{
    	padding: 1.0vw 2.0vw 3.0vw 6.0vw;
    	font-size: 1.5vw;
        line-height: 2.8vw;
    }
    
    .oc_list > dl dt::before,
    .oc_list > dl dd::before{
        padding: 0 0 .4vw .1vw;
        width: 4.0vw;
        height: 4.0vw;
    	font-size: 2.2vw;
    	top: 1.9vw;
    }
    
    .oc_list > dl dd::before{
        top: .5vw;
    }


    /* mypage 共通
       ================================================================== */
    .mypage{
    	position: relative;
    }
    
    .mypage_contents{
    	padding: 5.0vw 0 0;
    }
    
    .mypage_contents .user_name{
    	padding: 0;
        height: 8.0vw;
    }
    
    .mypage_contents .user_name span{
    	font-size: 1.5vw;
    }
    
    
    /* mypage_list =========== */
    .mypage_list{
        margin: 2.0vw 0 0;
    	display: flex;
        justify-content: space-between;
    }
    
    .mypage_list li{
    	margin: 0 0 0;
        width: 16%;
    }
    
    .mypage_list li a{
        height: 5.0vw;
        font-size: 1.5vw;
        transition: .3s;
    }
    
    .mypage_list li a:hover{
        color: #fff;
        border-color: #B81C25;
	    background: #B81C25;
    }
    
    
    /* mypage_block =========== */
    .mypage_block{
    	margin: 7.0vw 0 0;
    }
    
    .mypage_block p{
    	font-size: 1.6vw;
        line-height: 3.0vw;
    }
    
    .mypage_content_title{
        margin: 0 0 4.0vw;
    	padding: 0 0 1.7vw;
        font-size: 1.6vw;
    }
    
    .credit_register .mypage_content_title{
        padding: 1.3vw 2.0vw;
    }

    .order_history_page.order_show .mypage_content_title{
        margin-bottom: 2.6vw;
    }
    
    
    /* credit_register =========== */
    .credit_register .no_card_note{
        margin-bottom: 4.0vw;
    }

    .credit_register .credit_card_available{
    	padding: 2.0vw 3.0vw;
    }
    
    .credit_register .credit_card_available li{
    	margin-right: 1.0vw;
        width: 8.0vw;
    }
    
	.credit_register table th,
	.credit_register table td{
        font-size: 1.6vw;
		width: auto;
		display: table-cell;
		vertical-align: middle;
		box-sizing: border-box;
	}
	
	.credit_register table th{
		padding: 0 1.0vw 0 4.0vw;
		width: 26.5%;
	}
	
	.credit_register table td{
		padding: 2.5vw 0;
	}

	.credit_register table td .border{
		padding: 0 2.7vw;
        min-height: 4.4vw;
		border-top: none;
		border-left: 1px solid #ddd;
		display: flex;
		align-items: center;
        box-sizing: border-box;
	}
    
    .credit_register table td #card-element{
        padding: 13px;
    }

    .credit_register input{
    	padding: 1.2vw 3.0vw;
    	font-size: 16px;
    }
    
    .mypage_block.credit_register .btn_box{
    	margin: 6.2vw 0 0;
    }


    /* mypage__ 更新・削除・停止ページ
       ================================================================== */
    .mypage_block .registered_text{
    	padding: 1.4vw 2.0vw;
        font-size: 1.7vw;
    }

    .mypage_block .really_text{
        font-size: 2.0vw;
    }
    
    .mypage_block p + .really_text{
        margin: 2.5vw 0 0;
    }
    
    .mypage_block .btn_box{
    	margin: 4.0vw 0 0;
        font-size: 0;
        text-align: left;
    }
    
    .mypage_block .btn_box.center{
        text-align: center;
    }
    
    .mypage_block .btn_box a + *,
    .mypage_block .btn_box a + a{
    	margin: 0 0 0 2.0vw;
    }

    .monthly_price{
    	margin: 1.5vw 0 0;
    }
    
    .monthly_price .siz_s{
    	font-size: 2.2vw;
    }
    
    .monthly_price .siz_m{
    	font-size: 2.9vw;
    }
    
    .monthly_price .siz_l{
        margin: 0 0 0 2.0vw;
    	font-size: 6.0vw;
    }
    
    .monthly_price + .registered_text{
    	margin-top: 3.0vw;
    }


    /* mypage__ change_completed 完了ページ全般
       ================================================================== */
    .change_completed .completed_title{
        margin: 9.0vw 0 2.5vw;
        font-size: 3.2vw;
    }
    
    .change_completed .btn_box{
    	margin: 6.0vw 0 0;
    }


    /* border_box_complete 退会完了
       ================================================================== */
    .border_box_complete .box{
        margin: 8.0vw 0 0;
        padding: 4.5vw 2.0vw 5.5vw;
    }

    .border_box_complete .box p + p{
        margin: 2.6vw 0 0;
    }
    
    .border_box_complete .box .btn_box{
        margin: 4.0vw 0 0;
    }


    /* mypage__ order_history_page 注文履歴 共通
       ================================================================== */
    .order_history_page .date{
        font-size: 2.0vw;
    }
    
    .order_history_page .order_number{
        margin: 1.0vw 0 1.6vw;
        font-size: 1.4vw;
    }
    
    .order_history_page .status .delivery span{
        padding: 0;
        min-width: 10.0vw;
        min-height: 2.5vw;
        font-size: 1.3vw;
    }
    
    .order_history_page .status .btn_box{
        margin: 1.5vw 0 0;
    }
    
    
    /* mypage__ order_history_page 注文履歴 TOP
       ================================================================== */
    .order_list{
        margin: -4.0vw 0 0;
    }
    
    .order_list > li{
        padding: 2.6vw 0 0;
    }
    
    .order_list > li > .flex{
        display: flex;
    }
    
    .order_list > li .status{
        width: 13.7vw;
    }
    
    .order_list > li .products{
        margin: 0 0 0;
        width: calc(100% - 13.7vw);
        box-sizing: border-box;
    }


    /* mypage__ order_history_page 注文履歴_詳細
       ================================================================== */
    .notice_box{
        margin: 2.5vw 0 0;
        padding: 2.0vw 3.0vw;
    }
    
    .notice_box h5{
        font-size: 1.7vw;
        margin: 0 0 1.5vw;
    }
    
    
    /* order_product_list 商品購入・履歴の表示
       ================================================================== */
    .order_product_list > li{
        padding: 0 0 2.0vw;
    }
    
    .order_product_list > li + li{
        padding-top: 2.0vw;
    }
    
    .order_product_list .order_product_box .photo{
        width: 10.0vw;
        height: 10.0vw;
    }
    
    .order_product_list .order_product_box .product_text_box{
        padding: 0 0 0 2.5vw;
        width: calc(100% - 10.0vw);
    }
    
    .order_product_list .order_product_box .product_name{
        font-size: 1.6vw;
    }
    
    .order_product_list .order_product_box .product_price_txt{
        margin: .5vw 0 0;
        font-size: 1.5vw;
    }


    /* order_detail_show_block 注文手続き・履歴
       ================================================================== */
    .order_detail_show_block{
        position: relative;
        font-size: 0;
    }

    .order_history_page .order_detail_show_block{
        margin-top: 3.0vw;
    }
    
    .order_detail_show_block .order_detail_list{
        width: calc(100% - 33vw);
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
    }
    
    .order_history_page .order_detail_show_block .order_detail_list{
        width: calc(100% - 23vw);
    }
    
    .order_detail_list > li{
        margin: 0 0 4.0vw;
    }
    
    .order_detail_list > li:last-child{
        margin: 0 0 0;
    }
    
    .order_detail_list > li > div{
        line-height: 0;
    }
    
    .order_detail_list .bg_title{
        margin: 0 0 2.5vw;
    }
    
    .order_detail_list .order_history_detail_bottom_box{
        padding: 0 2.0vw 0;
    }

    .order_detail_list .order_history_detail_bottom_box.user_information{
        padding-right: 0;
    }
    
    .order_detail_list .order_history_detail_bottom_box.user_information ul li{
        margin-top: 1.0vw;
    }

    .order_detail_list .order_history_detail_bottom_box.user_information ul li:nth-child(1),
    .order_detail_list .order_history_detail_bottom_box.user_information ul li:nth-child(2){
        padding-right: 10.0vw;
    }

    .order_detail_list .order_history_detail_bottom_box.user_information ul li h5{
        width: 15.0vw;
        font-size: 1.6vw;
    }

    .order_detail_list .order_history_detail_bottom_box.user_information ul li p{
        width: calc(100% - 15.0vw);
    }

    .order_detail_list p{
        font-size: 1.6vw;
    }
    
    .order_detail_list p + p{
        margin: 1.0vw 0 0;
    }
    
    .order_detail_list .order_detail_table{
        width: 100%;
    }
    
    .order_detail_list .order_detail_table th,
    .order_detail_list .order_detail_table td{
        padding: 0 0 2.5vw;
        font-size: 1.6vw;
    }
    
    .order_detail_list .order_detail_table th{
        width: 13.0vw;
    }

    /* Form */
    .order_detail_list .order_detail_table .flex_box{
        display: flex;
    }
    
    .order_detail_list .order_detail_table .flex_box .flex_box_inner{
        margin: 0 22px 0 0;
    }
    
    .order_detail_list .order_detail_table .flex_box .flex_box_inner:last-child{
        margin: 0 0 0;
    }
    
    .order_detail_list .order_history_detail_bottom_box .radio_input + .radio_input{
        margin-top: 30px;
    }

    .order_detail_list .order_history_detail_bottom_box .credit_register{
        margin-top: 0;
    }

    .order_detail_list .order_history_detail_bottom_box .credit_register table th{
        padding: 0 0 0 1vw;
    }

    .order_detail_list .order_detail_table input{
        padding: 8px;
    }

    .order_detail_list .order_detail_table select{
        padding: 7px 9px;
        font-size: 16px;
    }
    
    .order_detail_list .order_detail_table .txt{
        margin: 0 0 0 13px;
        font-size: 16px;
    }
    
    .order_detail_list textarea{
        padding: 18px 20px;
        height: 240px;
    }
        
    /* 小計・合計金額 */
    .order_detail_show_block .order_detail_price_box{
        padding: 0 0 0 2.0vw;
        width: 33vw;
        box-sizing: border-box;
        position: sticky;
        top: 65px;
        right: 0;
        display: inline-block;
        vertical-align: top;
    }
    
    .order_history_page .order_detail_show_block .order_detail_price_box{
        width: 23vw;
    }
    
    .order_detail_price_box .order_detail_price_inner{
        padding: 2.0vw 1.5vw 2.5vw;
    }
    
    .order_detail_price_box dl{
        margin: 0 0 1.0vw;
    }
    
    .order_detail_price_box dl dt,
    .order_detail_price_box dl dd{
        font-size: 1.5vw;
    }
    
    .order_detail_price_box dl dt{
        width: 5.0vw;
    }
    
    .order_detail_price_box dl dd{
        width: calc(100% - 5.0vw);
    }
    
    .order_detail_price_box .total_price_inbox{
        margin: 2.0vw 0 0;
        padding: 1.5vw 0 0;
    }
    
    .order_detail_price_box .total_price_inbox span{
        font-size: 1.4vw;
    }
    
    .order_detail_price_box .total_price_inbox .siz_l{
        padding: 0 .8vw 0 1.3vw;
        font-size: 2.4vw;
    }
    
    .order_detail_price_box .order_detail_button{
        margin: 1.0vw 0 0;
        padding: 0 0 2.7vw;
    }
    
    .order_detail_price_box .order_detail_button .btn_box + .btn_box{
        margin: 1.5vw 0 0;
    }


    /* cart_contents 共通
       ================================================================== */
    .cart_page{
    	position: relative;
    }
    
    .cart_contents{
    	padding: 7.5vw 0 0;
    }
    
    /* cart_top */
    .cart_contents.cart_top{
    	padding: 5.5vw 0 0;
    }

    .cart_top .box + .box{
    	margin: 5.3vw 0 0;
        padding: 3.8vw 0 0;
    }
    
    .cart_top .box + .box::before{
        width: 1.5vw;
        height: 1.5vw;
    }

    .cart_top .box p.f16{
    	font-size: 1.6vw;
    }
    
    .cart_top .box p + p{
    	margin: 2.0vw 0 0;
    }
    
    .cart_top .box .btn_box{
    	margin: 3.0vw 0 0;
    }


    /* cart_inside_block カートの中身
       ================================================================== */
    .cart_inside_block{
        margin: 5.0vw 0 0;
    }
    
    .cart_inside_block table{
        width: 100%;
    }
    
    .cart_inside_block table th{
        padding: 1.3vw 0;
        font-size: 1.6vw;
    }
    
    .cart_inside_block table tbody th:nth-child(1){
        width: 7%;
    }
    
    .cart_inside_block table tbody th:nth-child(2){
        width: 53%;
    }
    
    .cart_inside_block table tbody th:nth-child(3){
        width: 15%;
    }
    
    .cart_inside_block table tbody th:nth-child(4){
        width: 15%;
    }
    
    .cart_inside_block table td{
        padding: 1.0vw 0 1.4vw;
    }
    
    /* 削除ボタン */
    .product_delete{
        width: 1.6vw;
    }
    
    /* 個数増減の設定 */
    div.input_group{
        margin: 0 auto;
        width: 10.0vw;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    /* 数値 */
    .cart_inside_block input[type="number"]{
        height: 5.5vw;
    }
    
    /* 増減ボタン */
    button.btn_number{
        width: 4.0vw;
        height: 5.5vw;
        font-size: 2.0vw;
    }
    
    /* 小計 */
    .cart_inside_block table .subtotal{
        font-size: 1.6vw;
    }

    /* 合計金額 */
    .cart_inside_block .total_price{
        margin: 3.0vw 0 0;
    }
    
    .cart_inside_block .total_price .total_price_box{
        padding: 0 3.3vw 0 0;
    }
    
    .cart_inside_block .total_price .total_price_box .siz_s{
        font-size: 1.6vw;
    }
    
    .cart_inside_block .total_price .total_price_box .siz_l{
        padding: 0 0 0 3.5vw;
        font-size: 2.4vw;
    }
    
    .cart_inside_block .total_price .total_price_box .siz_l::before{
        margin-right: 1.0vw;
    }
    
    .cart_inside_block .total_price p.red_text{
        margin: 2.0vw 0 0;
    }
    
    /* ボタン */
    .cart_inside_block .cart_button{
        margin: 3.6vw 0 0;
    }
    
    .cart_inside_block .cart_button .btn_box{
        text-align: right;
    }
    
    .cart_inside_block .cart_button .btn_box + .btn_box{
        margin: 1.5vw 0 0;
    }


    /* order_procedure ご注文内容のご確認
       ================================================================== */
    .order_procedure .cart_conf_text{
    	margin: 0 0 4.0vw;
    }


    /* send_completion ご注文完了
       ================================================================== */
    .send_completion{
        margin: 5.0vw 0 0;
        padding: 2.0vw 0 0;
    }
    
    .send_completion::before{
        height: 3.0vw;
    }
    
    .send_completion h3{
    	font-size: 3.2vw;
    }
    
    .send_completion p{
    	font-size: 1.6vw;
        line-height: 3.0vw;
    }
    
    .send_completion h3 + p{
    	margin: 2.5vw 0 0;
    }
    
    .send_completion .order_number{
    	margin: 5.0vw 0 0;
    }
    
    .send_completion .btn_box{
    	margin: 5.0vw 0 0;
    }

    .contact_page .send_completion .btn_box{
    	margin: 8.5vw 0 0;
    }


    /* member_registration 会員登録
       ================================================================== */
    .member_registration .form_block{
    	margin: 5.6vw 0 0;
    }


    /* contact_page お問い合わせ
       ================================================================== */
    .contact_page .form_block{
    	margin: 5.6vw 0 0;
    }


    /* member_information マイページ_会員情報
       ================================================================== */
    .member_information .form_block{
    	margin: 5.0vw 0 0;
    }


    /* フォーム基本設定
       ================================================================== */
    .top_note{
    	margin: 0 0 1.7vw;
        font-size: 1.8vw;
    }
    
    .top_text{
    	margin: 0 0 3vw;
    }
    
    .top_text p{
        font-size: 1.5vw;
    }
    
    .top_text p + p{
        margin-top: 2vw;
    }
    
    .conf_text{
        margin: 0 0 3vw;
    	font-size: 1.5vw;
    }
    
    .form_block table{
        margin: 0 auto 0;
        width: 70%;
    }
    
    .form_block th,
    .form_block td{
        width: auto;
    	font-size: 15px;
    }
    
    .form_block th{
    	padding: 20px 0 0;
        box-sizing: border-box;
    }
    
    .form_block .title_top th{
    	padding-top: 31px;
        vertical-align: top;
    }
    
    .form_block td{
    	padding: 18px 0;
    }
    
    .form_block .prefecture,
    .form_block .check_bg,
    .form_block input,
    .form_block select,
    .form_block textarea{
    	margin: 0;
    	padding: 15px;
    	font-size: 16px;
    }
	
	.form_block select{
		vertical-align: middle;
	}
    
    .form_block textarea{
        height: 300px;
    }
    
    /* ラジオボタン */
    .form_block .radio_input{
        padding: 17px 0 2px;
    }
    
    .radio_input label{
        margin: 0 10px 15px 0;
    	display: inline-flex;
        align-items: center;
    }
    
    input[type='checkbox'] ,
    input[type='radio'] {
        appearance: none;
        outline: none;
        display: block;
        position: relative;
        text-align: center;
        cursor: pointer;
        width: 18px;
        height: 18px;
    	margin: 0 10px 0 0;
        font-size: 0;
        padding: 0;
        border: none;
    }
    
    input[type='checkbox']::before ,
    input[type='radio']::before {
        width: 18px;
        height: 18px;
    }
    
    input[type='checkbox']::after ,
    input[type='radio']::after {
        left: 5px;
        top: 5px;
        width: 10px;
        height: 10px;
    }

    /* サイズ */
    .form_block .wid100{
        width: 100px;
    }
    
    .form_block .wid200{
        width: 200px;
    }
    
    /* 分割 */
    .split .flex{
        margin: 0 0 0;
        display: flex;
        align-items: center;
    }
    
    .split .flex > div + div{
        margin: 0 0 0 10px;
        width: calc(100% - 100px - 10px);
    }
    
    /* ボタン */
    .zas_btn_area{
    	margin: auto;
    	text-align: center;
    	padding: 40px 0 0;
    	font-size: 0;
    	box-sizing: border-box;
    }
    
    .zas_btn_area button{
    	padding: 18px 0;
    	font-size: 16px;
    	border: 1px solid #222;
        transition: .3s;
        cursor: pointer;
    }
    
    .zas_btn_area .zas_btn01{
    	width: 50%;
    	max-width: 280px;
    }
    
    .zas_btn_area .zas_btn02{
    	margin-right: 2%;
    	width: 28%;
        border-color: #ccc;
    }
    
    .zas_btn_area .zas_btn03{
    	width: 50%;
    	max-width: 280px;
    }
    
    .zas_btn_area .zas_btn01:hover,
    .zas_btn_area .zas_btn03:hover{
    	background: #fff;
    }
    
    .zas_btn_area .zas_btn02:hover{
    	opacity: .5;
    }
    
    .zas_btn_area .zas_btn01:hover,
    .zas_btn_area .zas_btn03:hover{
    	color: #222;
    }


    /* login_page ログイン
       ================================================================== */
    .login_page .box{
        margin: 8.2vw 0 0;
        padding: 3.5vw 2.0vw 5.0vw;
    }
    
    .login_page table{
        width: 69.6vw;
    }
    
    .login_page th,
    .login_page td{
    	padding: 1.0vw 1.4vw;
        font-size: 16px;
    }
    
    .login_page th{
        width: 19.6vw;
    }
    
    .login_page table input{
    	padding: 1.4vw;
        font-size: 16px;
    }
    
    .login_page .box .btn_box{
    	margin: 2.0vw 0 0;
    }
    
    /* bottom_flex */
    .login_page .bottom_flex{
        margin: 2.8vw 0 0;
        display: flex;
        justify-content: space-between;
    }

    .login_page .left_note_text .txt{
        font-size: 1.5vw;
    }

    /* right_note_text */
    .right_note_text{
        margin: 0 0 0;
    }
    
    .right_note_text p a::before{
        width: .6vw;
        height: 1.0vw;
        right: calc(100% + 1.0vw);
    }
    
    .right_note_text p + p{
        margin: 1.0vw 0 0;
    }


    /* product_show_block 商品詳細
       ================================================================== */
    .product_show_block{
        position: relative;
    }
    
    .product_show_block .product_show_flex{
        font-size: 0;
    }
    
    .product_show_block .left_block{
        padding: 0;
        width: 40.0vw;
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
        position: sticky;
        top: 0;
        left: 0;
    }
    
    /* スライダー */
    .product_show_block .left_block .main_photo .tag{
        padding: .5vw 2.4vw;
        font-size: 1.4vw;
    }
    
    .product_show_block .left_block .product_slider_nav{
        font-size: 0;
    }
    
    .product_show_block .left_block .main_photo .slick-track,
    .product_show_block .left_block .main_photo .product_slider{
        height: 40vw;
    }

    .product_show_block .left_block .product_slider_nav .slick-slide{
        margin: 1.0vw 1.0vw 0 0;
        width: calc((100% / 5) - .8vw) !important;
        height: 7vw;
        cursor: pointer;
    }
    
    .product_show_block .left_block .product_slider_nav .slick-slide:hover{
        opacity: .5;
    }
    
    /* right_block */
    .product_show_block .right_block{
        padding: 0 0 0 3.0vw;
        width: calc(100% - 40.0vw);
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
    }

    .product_show_block .right_block .product_detail_box{
        padding: 2.0vw 1.0vw 2.4vw;
    }

    .product_show_block .right_block .product_detail_box.not_putin{
        padding-left: 0;
        padding-right: 0;
    }
    
    .product_show_block .right_block .product_name{
        font-size: 2.5vw;
        line-height: 3.8vw;
    }
    
    .product_show_block .right_block .product_categories{
        margin: .2vw 0 0;
    }
    
    .product_show_block .right_block .product_categories li{
        margin: 1.0vw 1.0vw 0 0;
    }
    
    .product_show_block .right_block .product_categories li > *{
        padding: .5vw 2.5vw;
        font-size: 1.3vw;
    }

    /* 値段 */
    /* 通常価格 */
    .product_show_block .right_block .price.regular{
        font-size: 1.5vw;
    }
    
    .product_show_block .right_block .price.regular .siz_s{
        font-size: 1.1vw;
    }
    
    /* 販売価格 */
    .product_show_block .right_block .price.original{
        margin: .5vw 0 0;
        font-size: 2.5vw;
    }
    
    .product_show_block .right_block .price.original .siz_s{
        font-size: 1.5vw;
    }
    
    /* 割引価格 */
    .product_show_block .right_block .price.down{
        margin: .5vw 0 0;
        font-size: 3.5vw;
    }
    
    .product_show_block .right_block .price.down .siz_s{
        font-size: 1.5vw;
    }
    
    .product_show_block .right_block .price.down .off{
        font-size: 1.3vw;
        top: .3vw;
        left: .8vw;
    }
    
    /* サブスク会員になると */
    .product_show_block .right_block .subscribe_member{
        margin: 1.0vw 0 0;
    }
    
    .product_show_block .right_block .subscribe_member a{
        padding: .6vw 3.6vw .6vw 1.0vw;
    }
    
    .product_show_block .right_block .subscribe_member a::before{
        background-size: .6vw;
        width: 2.0vw;
    }
    
    .product_show_block .right_block .subscribe_member a,
    .product_show_block .right_block .subscribe_member a span{
        transition: .3s;
    }
    
    .product_show_block .right_block .subscribe_member a:hover{
        background: #D90000;
    }
    
    .product_show_block .right_block .subscribe_member a:hover span{
        color: #fff;
    }
    
    .product_show_block .right_block .subscribe_member a .txt{
        font-size: 1.3vw;
    }
    
    .product_show_block .right_block .subscribe_member a .yen{
        font-size: 1.8vw;
    }
    
    .product_show_block .right_block .subscribe_member a .siz_s{
        font-size: 1.0vw;
    }
    
    /* 沖縄県内全品送料無料 */
    .product_show_block .right_block .free_shipping{
        margin: 1.0vw 0 0;
    }

    /* product_form 数量表示 ボタン */
    .product_show_block .right_block .quantity_box{
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }
    
    .product_show_block .right_block .quantity_box .txt{
        margin: 0 1.2vw 0 0;
        font-size: 1.4vw;
    }
    
    .product_show_block .right_block .quantity_box input{
        padding: 7px 20px;
        font-size: 16px;
        width: 100px;
    }
    
    .product_show_block .right_block .quantity_box .quantity_note{
        margin: 0 0 0 2.5vw;
        font-size: 1.4vw;
    }
    
    .product_show_block .right_block .product_btn_box{
        margin: 2.6vw 0 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }
    
    /* お気に入りボタンを配置 */
    .product_show_block .right_block .product_favorite_btn_box{
        left: auto;
        right: 0;
    }

    .product_show_block .right_block .product_favorite_btn_box .favorite.sp{
        display: none;
    }
    
    .product_show_block .right_block .product_favorite_btn_box .favorite.pc{
        width: 22.0vw;
        display: block;
    }
    
    .product_show_block .right_block .product_btn_box .purchase{
        padding: 0 1.0vw 0 0;
        width: calc(100% - 22.0vw);
    }

    /* product_detail_text 商品説明 */
    .product_show_block .right_block .product_detail_text{
        position: relative;
    }
    
    .product_show_block .right_block .product_detail_text table th,
    .product_show_block .right_block .product_detail_text table td{
        display: table-cell;
        border-bottom: 1px dashed #ddd;
    }
    
    .product_show_block .right_block .product_description_text,
    .product_show_block .right_block .product_detail_text table th,
    .product_show_block .right_block .product_detail_text table td{
        font-size: 1.4vw;
        line-height: 2.4vw;
    }
    
    .product_show_block .right_block .product_detail_text table th{
        padding: 2.0vw 1.6vw;
        width: 12.4vw;
    }
    
    .product_show_block .right_block .product_detail_text table tbody tr:first-child th,
    .product_show_block .right_block .product_detail_text table tbody tr:first-child td{
        padding-top: 0;
    }
    
    .product_show_block .right_block .product_detail_text table td{
        padding: 2.0vw 1.6vw 2.0vw 0;
        width: calc(100% - 12.4vw);
    }
    
    .product_show_block .right_block .product_description_text{
        padding: 2.6vw 1.6vw 0;
    }
    
	/* sns_area */
    .sns_area {
        margin: 2.6vw 0 0;
    }
    
	.sns_area div{
		margin-bottom: 0;
		margin-right: 5px;
	}

    /* store_information_box 店舗名 */
    .store_information_box{
    	margin: 3.0vw 0 0;
        padding: 1.5vw 1.5vw;
        width: 100%;
    }
    
    .store_information_box .store_information{
    	display: flex;
        align-items: center;
        position: relative;
        cursor: pointer;
    }
    
    .store_information_box .store_photo{
    	width: 9.0vw;
    }
    
    .store_information_box .store_name{
        padding: 0 0 0 2.0vw;
    	width: 24.0vw;
    }
    
    .store_information_box .store_text p,
    .store_information_box .store_name > span{
        font-size: 1.4vw;
        line-height: 2.4vw;
    }
    
    .store_information_box .store_name span:nth-child(2){
        margin: .6vw 0 0;
    }
    
    .store_information_box .open_close .arrow::after{
    	width: 1.2vw;
    	height: 1.5vw;
        right: .9vw;
    }
    
    .store_information_box .store_text{
        padding: 2.0vw 0 1.0vw;
    }


    /* other_products_list
       ================================================================== */
    .other_products_list{
    	margin: 6.0vw 0 0;
    }
    
    .other_products_list .inner_block{
    	margin: 6.0vw 0 0;
    }
    
    .other_products_list .product_list + .btn_box{
        margin: 6.0vw 0 0;
    }
    
    
	/* products_pagination
	   ================================================================== */
	.products_pagination{
		margin: 6vw 0 0;
		padding: 0;
	}
	
    .products_pagination .pagination_sp{
        display: none;
    }

    .products_pagination .pagination_pc{
        display: block;
    }

	.products_pagination .pagination_pc > div{
		margin: auto;
	}

	.products_pagination .pagination_pc > div > span{
		display: flex;
        justify-content: center;
	}

    .products_pagination .pagination_pc .pagination_btn{
        margin: 0 3px;
        padding: 2px 0 0;
    	font-size: 13px;
        width: 30px;
        height: 30px;
        background: #ddd;
        color: #FFF;
        text-decoration: none;
        display: flex;
        justify-content: center;
        align-items: center;
        box-sizing: border-box;
        letter-spacing: 0;
        transition: all ease-out 0.3s;
        font-family: "メイリオ","ms pgothic", sans-serif;
        border-radius: 0;
    }

    .products_pagination .pagination_pc .pagination_btn svg{
        width: 50%;
    }
    
    .products_pagination .pagination_pc span.pagination_btn{
        background: #CAB270;
    }

	.products_pagination a.pagination_btn:hover{
		background: #CAB270;
        color: #fff;
	}
        
    
	/* pagination
	   ================================================================== */
	.pagination{
		margin: 6vw 0 0;
		padding: 0;
	}

    .pagination a,
    .pagination .active span{
    	padding: 1px 0 0;
    }
	
	.pagination a:hover{
		background: #CAB270;
	}

    
}
@media screen and (min-width : 1140px){    


    /* kv
       ================================================================== */
    .kv .main_view{
        height: 680px;
        background-image: url("../images/index/webp/kv.webp");
    }
    
    .kv .inbox{
        padding: 227px 0 0;
    }
    
    .kv h1 span{
        padding: 0;
        font-size: 22px;
        min-width: 450px;
        min-height: 70px;
        justify-content: center;
        align-items: center;
    }
    
    .kv p.sub{
        margin: 45px 0 0;
        font-size: 40px;
    }
    
    .kv #loopslider{
        margin: 30px 0 0;
    }
    
    .kv #loopslider li{
        padding: 0 40px 0 0;
        font-size: 80px;
    }


    /* categories_list
       ================================================================== */
    .categories_list{
    	margin: 0 0 0;
    }
    
    .categories_list ul li{
        position: relative;
    }
    
    .categories_list ul > .open_close,
    .categories_list ul a{
        font-size: 16px;
    }
    
    .categories_list.widmax ul > .open_close,
    .categories_list.widmax ul a{
        font-size: 18px;
    }
    
    .categories_list ul a{
        padding: 13px 60px 13px 25px;
    }
    
    .categories_list.widmax ul a{
        padding: 16px 76px 16px 25px;
    }

    .categories_list .open_close + ul{
        margin: 5px 0 0;
    }
    
    /* 第一階層 */
    .categories_list > ul > li{
        margin: 0 0 5px;
    }
    
    /* 第二階層 */
    .categories_list > ul > li > ul > li{
        margin: 0 0 5px;
    }
    
    /* 第三階層 */
    .categories_list > ul > li > ul > li > ul{
        display: block;
    }
    
    .categories_list > ul > li > ul > li > ul > li{
        margin: 0 0 5px;
    }
    
    .categories_list > ul > li > ul > li > ul > li > a{
        padding: 9px 25px;
        font-size: 14px;
    }
    
    .categories_list > ul > li > ul > li > ul > li > a:hover{
        background: #2F2725;
        border-color: #2F2725;
        color: #fff;
        opacity: 1;
    }
    
    .categories_list.widmax > ul > li > ul > li > ul > li > a{
        padding: 9px 5px;
        font-size: 14px;
    }
    
    .categories_list.widmax,
    .categories_list.widmax li,
    .categories_list.widmax ul{
        font-size: 0;
    }
    
    .categories_list.widmax .open_close + li{
        margin: 0 0 0;
    }
    
    .categories_list.widmax > ul > li > ul > li > ul > li{
        margin-right: 5px;
        width: calc((100% / 5) - 4px);
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
        text-align: center;
    }
    
    .categories_list.widmax ul > li > ul > li > ul > li:nth-child(5n+5){
        margin-right: 0;
    }
    
    /* ボタン */
    .categories_list ul .open_close div{
    	width: 44px;
    }
    
    .categories_list ul .open_close div::after{
    	width: 10px;
    	height: 12px;
    	right: 17px;
    }

    .categories_list.widmax ul .open_close div{
    	width: 60px;
    }
    
    .categories_list.widmax ul .open_close div::after{
    	width: 14px;
    	height: 17px;
    	right: 22px;
    }


    /* category_page
       ================================================================== */
    .category_page .categories_list{
    	margin: 60px 0 0;
    }


    /* banner_slider
       ================================================================== */
    .banner_slider{
    	margin: 50px auto 0;
        width: 500px;
    }
    
    .banner_slider .slick-track li{
    	margin: 0 10px;
    }


    /* product_list
       ================================================================== */
    .product_list{
    	position: relative;
    }
    
    .product_list > li{
    	margin: 0 2% 30px 0;
        width: 32%;
    }
    
    .product_list > li:nth-child(2n+2){
    	margin-right: 2%;
    }
    
    .product_list > li:nth-child(3n+3){
    	margin-right: 0;
    }
    
    .product_list .tag{
        padding: 5px 12px;
        font-size: 12px;
    }
    
    .product_list .bottom{
        padding: 20px 5px 0;
    }
    
    .product_list .store_name{
        font-size: 13px;
    }
    
    .product_list .product_name{
        margin: 7px 0 0;
        font-size: 17px;
        line-height: 24px;
    }
    
    .product_list .price_box .price{
        font-size: 23px;
    }
    
    /* プライスダウンの時 */
    .product_list .price_box.price_down .price.original{
        margin: 0 0 3px;
        padding: 0 5px;
        font-size: 16px;
    }


    /* horizontal_slider 横一列
       ================================================================== */
    .product_list.horizontal_slider{
    	width: 100%;
        position: relative;
    }
    
    /* 両サイドが見えないようにカバー */
    .product_list.horizontal_slider::before,
    .product_list.horizontal_slider::after{
        content: "";
        background: #fff;
        width: 100vw;
        height: 110%;
        position: absolute;
        z-index: 1;
        top: 0;
        right: 100%;
    }
    
    .product_list.horizontal_slider::after{
        left: 100%;
    }
    
    .product_list.horizontal_slider .slick-list{
    	width: 940px;
    }
    
    .product_list.horizontal_slider .slick-track li{
    	margin: 0 20px 0 0;
    }


    /* vertical_slider 縦並び
       ================================================================== */
    .vertical_slider{
    	width: 100%;
        position: relative;
    }
    
    /* 両サイドが見えないようにカバー */
    .vertical_slider::before,
    .vertical_slider::after{
        content: "";
        background: #fff;
        width: 100vw;
        height: 110%;
        position: absolute;
        z-index: 1;
        top: 0;
        right: 100%;
    }
    
    .vertical_slider::after{
        left: 100%;
    }
    
    .vertical_slider .slick-list{
    	width: 1020px;
    }
    
    .vertical_slider .slick-track > li{
    	margin: 0 20px 0 0;
    }
    
    .vertical_slider .frame_box{
        padding: 20px 20px 30px;
    }
    
    .vertical_slider h2{
        margin: 0 0 20px;
        font-size: 20px;
    }
    
    .vertical_slider .btn_box{
        margin: 30px 0 0;
    }
    
    /* product_list.vertical */
    .product_list.vertical > li{
    	margin: 0 0 20px;
    }
    
    .product_list.vertical .thumbnail{
        width: 140px;
    }
    
    .product_list.vertical .bottom{
        padding: 5px 0 0 10px;
        width: calc(100% - 140px);
    }
    
    .product_list.vertical .store_name{
        display: -webkit-box;
    }
    
    .product_list.vertical .product_name{
        margin: 5px 0 0;
    	font-size: 14px;
    }
    
    .product_list.vertical .price_box{
        min-height: 55px;
    }


    /* product_list_block 商品一覧・検索結果
       ================================================================== */
    .product_list_block .inner{
    	display: flex;
    }
    
    .product_list_block aside{
        width: 260px;
    	display: block;
    }
    
    .product_list_block .product_list_show{
        padding: 0 0 0 20px;
    	width: calc(100% - 260px);
        box-sizing: border-box;
    }
    
    .product_list_show h2{
    	padding: 13px 20px;
        font-size: 18px;
    }
    
    .product_list_show h2 div{
    	display: none;
    }
    
    .product_list_show .results_categories_list{
    	margin: 20px 0 0;
        display: block !important;
        font-size: 0;
    }
    
    .product_list_show .results_categories_list li{
    	margin: 0 5px 5px 0;
        width: 270px;
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
    }
    
    .product_list_show .results_categories_list li:nth-child(3n+3){
    	margin-right: 0;
    }
    
    .product_list_show .results_categories_list li a{
    	padding: 9px 10px;
        border: 1px solid #ddd;
        text-align: center;
	    overflow: hidden;
	    display: -webkit-box;
	    -webkit-box-orient: vertical;
	    -webkit-line-clamp: 1;
    }
    
    .product_list_show .results_categories_list li a span{
        font-size: 14px;
	    overflow: hidden;
	    display: -webkit-box;
	    -webkit-box-orient: vertical;
	    -webkit-line-clamp: 1;
    }
    
    .product_list_show .results_box{
    	margin: 15px 0 20px;
    }
    
    .product_list_show .results_title,
    .product_list_show .total{
        margin: 5px 0 0;
        padding: 10px 20px;
    	font-size: 14px;
    }


    /* product_list.divisions4 4分割
       ================================================================== */
    .product_list.divisions4 > li{
    	margin: 0 2% 30px 0;
        width: 23.5%;
    }
    
    .product_list.divisions4 > li:nth-child(2n+2){
    	margin-right: 2%;
    }
    
    .product_list.divisions4 > li:nth-child(3n+3){
    	margin-right: 2%;
    }
    
    .product_list.divisions4 > li:nth-child(4n+4){
    	margin-right: 0;
    }
    
    .product_list.divisions4 .delete_btn_box{
        margin: 20px 0 0;
    }


    /* new_items_block
       ================================================================== */
    .new_items_block{
    	padding: 100px 0 0;
    }
    
    .new_items_block .block_title{
    	margin: 0 0 45px;
    }
    
    .new_items_block .new_items_btn{
    	margin: 60px 0 80px;
    }
    
    
    /* seach_categories
       ================================================================== */
    .seach_categories{
    	padding: 100px 0 0;
    }
    
    .seach_categories .block_title{
    	margin: 0 0 45px;
    }
    
    .seach_categories ul{
    	font-size: 0;
    }
    
    .seach_categories ul li{
        margin: 0 20px 20px 0;
    	width: calc((100% / 4) - 15px);
    }
    
    .seach_categories ul li:nth-child(2n+2){
        margin-right: 20px;
    }
    
    .seach_categories ul li:nth-child(4n+4){
        margin-right: 0;
    }
    
    .seach_categories ul li .text{
        padding: 10px 0 0;
        font-size: 15px;
    }
    
    .seach_categories .btn_box{
    	margin: 40px 0 0;
    }


    /* about_block
       ================================================================== */
    .about_block{
    	position: relative;
    }
    
    .about_block .photos{
    	margin: 65px 0 0;
    }
    
    .about_block .photos li{
    	margin: 20px 2% 0 0;
        width: 32%;
    }
    
    .about_block .photos li:nth-child(2n+2){
    	margin-right: 2%;
    }
    
    .about_block .photos li:nth-child(3n+3){
    	margin-right: 0;
    }
    
    .about_block .movie{
    	margin: 75px 0 0;
        padding: 45px 0;
    }
    
    .about_block .movie > div{
        width: 600px;
    }
    
    .about_block .text_box{
        margin: 70px 0 0;
        text-align: center;
    }
    
    .about_block .text_box p{
        font-size: 16px;
        line-height: 35px;
    }


    /* privacy_block
       ================================================================== */
    .privacy_block{
    	position: relative;
    }

    .privacy_block .siz_s{
    	font-size: 13px;
    }
    
    .privacy_block p{
    	line-height: 25px;
    }
    
    .privacy_block .top_text{
    	margin: 80px 0 0;
    }
    
    .privacy_list > li{
    	margin: 30px 0 0;
    }
    
    .privacy_list h3 .no{
    	font-size: 35px;
    }
    
    .privacy_list h3 .txt{
        padding: 0 0 0 14px;
    	font-size: 17px;
    }
    
    .privacy_list li > div{
        margin: 15px 0 0;
    }


    /* tradelaw_block
       ================================================================== */
    .tradelaw_block{
    	position: relative;
    }
    
    .tradelaw_block .common_table{
    	margin: 70px 0 0;
    }
    

    /* common_table
       ================================================================== */	
    .common_table{
        border-bottom: none;
    }
    
    .common_table th,
    .common_table td{
    	padding: 15px 10px 15px 30px;
        font-size: 15px;
        line-height: 30px;
        width: auto;
        display: table-cell;
        border-top: 1px solid #ddd;
        border-bottom: 1px solid #ddd;
    }
    
    .common_table th{
        width: 210px;
    }

    .common_table td .box + .box{
    	margin: 20px 0 0;
        padding: 20px 0 0;
    }


    /* rules_block
       ================================================================== */
    .rules_block{
    	position: relative;
    }
    
    .rules_block .rules_list{
    	margin: 40px 0 0;
    }
    
    .rules_list > li{
    	padding: 40px 0 0;
    }
    
    .rules_list h3{
        margin: 0 0 20px;
    	padding: 0 15px 15px;
        font-size: 17px;
    }
    
    .rules_list .box + .box{
        margin-top: 12px;
    }
    
    .rules_list li,
    .rules_list p{
        line-height: 25px;
    }


    /* faq_block
       ================================================================== */
    .faq_block{
    	position: relative;
    }
    
    .faq_block .oc_list{
    	margin: 80px 0 0;
    }
    
    .oc_list > dl{
    	margin: 0 0 0;
    }
    
    .oc_list > dl dt{
    	padding: 28px 20px 28px 60px;
    	padding-right: 50px;
    	font-size: 16px;
    }
    
    .oc_list > dl dt::after{
    	width: 26px;
    	height: 26px;
    	right: 0;
    	top: 20px;
    }
    
    .oc_list > dl dd{
    	padding: 10px 20px 30px 60px;
    	font-size: 15px;
        line-height: 28px;
    }
    
    .oc_list > dl dt::before,
    .oc_list > dl dd::before{
        padding: 0 0 4px 1px;
        width: 40px;
        height: 40px;
    	font-size: 22px;
    	top: 19px;
    }
    
    .oc_list > dl dd::before{
        top: 5px;
    }


    /* mypage 共通
       ================================================================== */
    .mypage{
    	position: relative;
    }
    
    .mypage_contents{
    	padding: 50px 0 0;
    }
    
    .mypage_contents .user_name{
    	padding: 0;
        height: 80px;
    }
    
    .mypage_contents .user_name span{
    	font-size: 15px;
    }
    
    
    /* mypage_list =========== */
    .mypage_list{
        margin: 20px 0 0;
    	display: flex;
        justify-content: space-between;
    }
    
    .mypage_list li{
    	margin: 0 0 0;
        width: 16%;
    }
    
    .mypage_list li a{
        height: 50px;
        font-size: 15px;
    }
    
    
    /* mypage_block =========== */
    .mypage_block{
    	margin: 70px 0 0;
    }
    
    .mypage_block p{
    	font-size: 16px;
        line-height: 30px;
    }
    
    .mypage_content_title{
        margin: 0 0 40px;
    	padding: 0 0 17px;
        font-size: 16px;
    }
       
    .credit_register .mypage_content_title{
        padding: 13px 20px;
    }

    .order_history_page.order_show .mypage_content_title{
        margin-bottom: 26px;
    }

    
    /* credit_register =========== */
    .credit_register .no_card_note{
        margin-bottom: 40px;
    }

    .credit_register .credit_card_available{
    	padding: 20px 30px;
    }
    
    .credit_register .credit_card_available li{
    	margin-right: 10px;
        width: 80px;
    }
    
	.credit_register table th,
	.credit_register table td{
        font-size: 16px;
		width: auto;
		display: table-cell;
		vertical-align: middle;
		box-sizing: border-box;
	}
	
	.credit_register table th{
		padding: 0 10px 0 40px;
		width: 26.5%;
	}
	
	.credit_register table td{
		padding: 25px 0;
	}

	.credit_register table td .border{
		padding: 0 27px;
        min-height: 44px;
		border-top: none;
		border-left: 1px solid #ddd;
		display: flex;
		align-items: center;
        box-sizing: border-box;
	}
        
    .credit_register table td #card-element{
        padding: 15px;
    }

    .credit_register input{
    	padding: 12px 30px;
    	font-size: 16px;
    }
    
    .mypage_block.credit_register .btn_box{
    	margin: 62px 0 0;
    }


    /* mypage__ 更新・削除・停止ページ
       ================================================================== */
    .mypage_block .registered_text{
    	padding: 14px 20px;
        font-size: 17px;
    }

    .mypage_block .really_text{
        font-size: 20px;
    }
    
    .mypage_block p + .really_text{
        margin: 25px 0 0;
    }
    
    .mypage_block .btn_box{
    	margin: 40px 0 0;
        font-size: 0;
        text-align: left;
    }
    
    .mypage_block .btn_box a + *,
    .mypage_block .btn_box a + a{
    	margin: 0 0 0 20px;
    }

    .monthly_price{
    	margin: 15px 0 0;
    }
    
    .monthly_price .siz_s{
    	font-size: 22px;
    }
    
    .monthly_price .siz_m{
    	font-size: 29px;
    }
    
    .monthly_price .siz_l{
        margin: 0 0 0 20px;
    	font-size: 60px;
    }
    
    .monthly_price + .registered_text{
    	margin-top: 30px;
    }


    /* mypage__ change_completed 完了ページ全般
       ================================================================== */
    .change_completed .completed_title{
        margin: 90px 0 25px;
        font-size: 32px;
    }
    
    .change_completed .btn_box{
    	margin: 60px 0 0;
    }


    /* border_box_complete 退会完了
       ================================================================== */
    .border_box_complete .box{
        margin: 80px 0 0;
        padding: 45px 20px 55px;
    }

    .border_box_complete .box p + p{
        margin: 26px 0 0;
    }
    
    .border_box_complete .box .btn_box{
        margin: 40px 0 0;
    }


    /* mypage__ order_history_page 注文履歴 共通
       ================================================================== */
    .order_history_page .date{
        font-size: 20px;
    }
    
    .order_history_page .order_number{
        margin: 10px 0 16px;
        font-size: 14px;
    }
    
    .order_history_page .status .delivery span{
        padding: 0;
        min-width: 100px;
        min-height: 25px;
        font-size: 13px;
    }
    
    .order_history_page .status .btn_box{
        margin: 15px 0 0;
    }
    
    
    /* mypage__ order_history_page 注文履歴 TOP
       ================================================================== */
    .order_list{
        margin: -40px 0 0;
    }
    
    .order_list > li{
        padding: 26px 0 0;
    }
    
    .order_list > li > .flex{
        display: flex;
    }
    
    .order_list > li .status{
        width: 137px;
    }
    
    .order_list > li .products{
        margin: 0 0 0;
        width: calc(100% - 137px);
        box-sizing: border-box;
    }


    /* mypage__ order_history_page 注文履歴_詳細
       ================================================================== */
    .notice_box{
        margin: 25px 0 0;
        padding: 20px 30px;
    }
    
    .notice_box h5{
        font-size: 17px;
        margin: 0 0 15px;
    }
    
    
    /* order_product_list 商品購入・履歴の表示
       ================================================================== */
    .order_product_list > li{
        padding: 0 0 20px;
    }
    
    .order_product_list > li + li{
        padding-top: 20px;
    }
    
    .order_product_list .order_product_box .photo{
        width: 100px;
        height: 100px;
    }
    
    .order_product_list .order_product_box .product_text_box{
        padding: 0 0 0 25px;
        width: calc(100% - 100px);
    }
    
    .order_product_list .order_product_box .product_name{
        font-size: 16px;
    }
    
    .order_product_list .order_product_box .product_price_txt{
        margin: 5px 0 0;
        font-size: 15px;
    }


    /* order_detail_show_block 注文手続き・履歴
       ================================================================== */
    .order_detail_show_block{
        position: relative;
    }

    .order_history_page .order_detail_show_block{
        margin-top: 30px;
    }
    
    .order_history_page .order_detail_show_block .order_detail_list,
    .order_detail_show_block .order_detail_list{
        width: 750px;
    }
    
    .order_detail_list > li{
        margin: 0 0 40px;
    }
    
    .order_detail_list .bg_title{
        margin: 0 0 25px;
    }
    
    .order_detail_list .order_history_detail_bottom_box{
        padding: 0 20px 0;
    }

    .order_detail_list .order_history_detail_bottom_box.user_information{
        padding-right: 0;
    }
        
    .order_detail_list .order_history_detail_bottom_box.user_information ul li{
        margin-top: 10px;
    }

    .order_detail_list .order_history_detail_bottom_box.user_information ul li:nth-child(1),
    .order_detail_list .order_history_detail_bottom_box.user_information ul li:nth-child(2){
        padding-right: 100px;
    }

    .order_detail_list .order_history_detail_bottom_box.user_information ul li h5{
        width: 150px;
        font-size: 16px;
    }

    .order_detail_list .order_history_detail_bottom_box.user_information ul li p{
        width: calc(100% - 150px);
    }

    .order_detail_list p{
        font-size: 16px;
    }
    
    .order_detail_list p + p{
        margin: 10px 0 0;
    }
    
    .order_detail_list .order_detail_table{
        width: 100%;
    }
    
    .order_detail_list .order_detail_table th,
    .order_detail_list .order_detail_table td{
        padding: 0 0 25px;
        font-size: 16px;
    }
    
    .order_detail_list .order_detail_table th{
        width: 130px;
    }
        
    .order_detail_list .order_history_detail_bottom_box .radio_input + .radio_input{
        margin-top: 30px;
    }

    .order_detail_list .order_history_detail_bottom_box .credit_register{
        margin-top: 10px;
    }

    .order_detail_list .order_history_detail_bottom_box .credit_register table th{
        padding: 0 0 0 20px;
    }

    /* 小計・合計金額 */
    .order_history_page .order_detail_show_block .order_detail_price_box,
    .order_detail_show_block .order_detail_price_box{
        padding: 0 0 0 20px;
        width: calc(100% - 750px);
        box-sizing: border-box;
        top: 90px;
    }
    
    .order_detail_price_box .order_detail_price_inner{
        padding: 20px 15px 25px;
    }
    
    .order_detail_price_box dl{
        margin: 0 0 10px;
    }
    
    .order_detail_price_box dl dt,
    .order_detail_price_box dl dd{
        font-size: 15px;
    }
    
    .order_detail_price_box dl dt{
        width: 50px;
    }
    
    .order_detail_price_box dl dd{
        width: calc(100% - 50px);
    }
    
    .order_detail_price_box .total_price_inbox{
        margin: 20px 0 0;
        padding: 15px 0 0;
    }
    
    .order_detail_price_box .total_price_inbox span{
        font-size: 14px;
    }
    
    .order_detail_price_box .total_price_inbox .siz_l{
        padding: 0 8px 0 13px;
        font-size: 24px;
    }
    
    .order_detail_price_box .order_detail_button{
        margin: 10px 0 0;
        padding: 0 0 27px;
    }
    
    .order_detail_price_box .order_detail_button .btn_box + .btn_box{
        margin: 15px 0 0;
    }


    /* cart_contents 共通
       ================================================================== */
    .cart_page{
    	position: relative;
    }
    
    .cart_contents{
    	padding: 75px 0 0;
    }
    
    /* cart_top */
    .cart_contents.cart_top{
    	padding: 55px 0 0;
    }

    .cart_top .box + .box{
    	margin: 53px 0 0;
        padding: 38px 0 0;
    }
    
    .cart_top .box + .box::before{
        width: 15px;
        height: 15px;
    }

    .cart_top .box p.f16{
    	font-size: 16px;
    }
    
    .cart_top .box p + p{
    	margin: 20px 0 0;
    }
    
    .cart_top .box .btn_box{
    	margin: 30px 0 0;
    }


    /* cart_inside_block カートの中身
       ================================================================== */
    .cart_inside_block{
        margin: 50px 0 0;
    }
    
    .cart_inside_block table{
        width: 100%;
    }
    
    .cart_inside_block table th{
        padding: 13px 0;
        font-size: 16px;
    }
    
    .cart_inside_block table tbody th:nth-child(1){
        width: 7%;
    }
    
    .cart_inside_block table tbody th:nth-child(2){
        width: 53%;
    }
    
    .cart_inside_block table tbody th:nth-child(3){
        width: 15%;
    }
    
    .cart_inside_block table tbody th:nth-child(4){
        width: 15%;
    }
    
    .cart_inside_block table td{
        padding: 10px 0 14px;
    }
    
    /* 削除ボタン */
    .product_delete{
        width: 16px;
    }
    
    /* 個数増減の設定 */
    div.input_group{
        margin: 0 auto;
        width: 132px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    /* 数値 */
    .cart_inside_block input[type="number"]{
        height: 55px;
    }
    
    /* 増減ボタン */
    button.btn_number{
        width: 40px;
        height: 55px;
        font-size: 20px;
    }
    
    /* 小計 */
    .cart_inside_block table .subtotal{
        font-size: 16px;
    }

    /* 合計金額 */
    .cart_inside_block .total_price{
        margin: 30px 0 0;
    }
    
    .cart_inside_block .total_price .total_price_box{
        padding: 0 33px 0 0;
    }
    
    .cart_inside_block .total_price .total_price_box .siz_s{
        font-size: 16px;
    }
    
    .cart_inside_block .total_price .total_price_box .siz_l{
        padding: 0 0 0 35px;
        font-size: 24px;
    }
    
    .cart_inside_block .total_price .total_price_box .siz_l::before{
        margin-right: 10px;
    }
    
    .cart_inside_block .total_price p.red_text{
        margin: 20px 0 0;
    }
    
    /* ボタン */
    .cart_inside_block .cart_button{
        margin: 36px 0 0;
    }
    
    .cart_inside_block .cart_button .btn_box{
        text-align: right;
    }
    
    .cart_inside_block .cart_button .btn_box + .btn_box{
        margin: 15px 0 0;
    }


    /* order_procedure ご注文内容のご確認
       ================================================================== */
    .order_procedure .cart_conf_text{
    	margin: 0 0 40px;
    }


    /* send_completion ご注文完了
       ================================================================== */
    .send_completion{
        margin: 50px 0 0;
        padding: 20px 0 0;
    }
    
    .send_completion::before{
        height: 30px;
    }
    
    .send_completion h3{
    	font-size: 32px;
    }
    
    .send_completion p{
    	font-size: 16px;
        line-height: 30px;
    }
    
    .send_completion h3 + p{
    	margin: 25px 0 0;
    }
    
    .send_completion .order_number{
    	margin: 50px 0 0;
    }
    
    .send_completion .btn_box{
    	margin: 50px 0 0;
    }

    .contact_page .send_completion .btn_box{
    	margin: 85px 0 0;
    }


    /* member_registration 会員登録
       ================================================================== */
    .member_registration .form_block{
    	margin: 56px 0 0;
    }


    /* contact_page お問い合わせ
       ================================================================== */
    .contact_page .form_block{
    	margin: 56px 0 0;
    }


    /* member_information マイページ_会員情報
       ================================================================== */
    .member_information .form_block{
    	margin: 50px 0 0;
    }


    /* フォーム基本設定
       ================================================================== */
    .form_block form{
    	margin-top: -90px;
        padding-top: 90px;
    }

    .top_note{
    	margin: 0 0 17px;
        font-size: 18px;
    }
    
    .top_text{
    	margin: 0 0 30px;
    }
    
    .top_text p{
        font-size: 15px;
    }
    
    .top_text p + p{
        margin-top: 20px;
    }
    
    .conf_text{
        margin: 0 0 30px;
    	font-size: 15px;
    }
    
    .form_block table{
        margin: 0 auto 0;
        width: 70%;
    	font-size: 15px;
    }
    
    .form_block th{
    	padding: 20px 0 0;
    }
    
    .form_block td{
    	padding: 18px 0 0;
    }
    
    .form_block .prefecture,
    .form_block .check_bg,
    .form_block input,
    .form_block select,
    .form_block textarea{
    	font-size: 16px;
    	padding: 22px 20px;
    }
    
    .form_block textarea{
        height: 275px;
    }
    
    /* ラジオボタン */
    .form_block .radio_input{
        padding: 20px 0 15px;
    }
    
    .radio_input label{
        margin: 0 20px 15px 0;
    	display: inline-flex;
        align-items: center;
    }
    
    input[type='checkbox'] ,
    input[type='radio'] {
        appearance: none;
        outline: none;
        display: block;
        position: relative;
        text-align: center;
        cursor: pointer;
        width: 23px;
        height: 23px;
    	margin: 0 12px 0 0;
        font-size: 0;
        padding: 0;
        border: none;
    }
    
    input[type='checkbox']::before ,
    input[type='radio']::before {
        width: 23px;
        height: 23px;
    }
    
    input[type='checkbox']::after ,
    input[type='radio']::after {
        left: 5px;
        top: 5px;
        width: 15px;
        height: 15px;
    }

    /* チェックアイコン */
    .icon_check input[type='checkbox']::after ,
    .icon_check input[type='radio']::after {
        left: 6px;
        top: -2px;
        width: 24px;
        height: 24px;
    }

    /* サイズ */
    .form_block .wid100{
        width: 100px;
    }
    
    .form_block .wid200{
        width: 200px;
    }
    
    /* 分割 */
    .split .flex{
        margin: 0 0 0;
        display: flex;
        align-items: center;
    }
    
    .split .flex > div + div{
        margin: 0 0 0 10px;
        width: calc(100% - 100px - 10px);
    }
    
    /* ボタン */
    .zas_btn_area{
    	padding: 80px 0 0;
    }
    
    .zas_btn_area button{
    	padding: 17px 0;
    	font-size: 16px;
    }
    
    .zas_btn_area .zas_btn01{
    	width: 280px;
    }
    
    .zas_btn_area .zas_btn02{
    	margin-right: 2%;
    	width: 28%;
    }
    
    .zas_btn_area .zas_btn03{
    	width: 280px;
    }


    /* login_page ログイン
       ================================================================== */
    .login_page .box{
        margin: 82px 0 0;
        padding: 35px 20px 50px;
    }
    
    .login_page table{
        width: 696px;
    }
    
    .login_page th,
    .login_page td{
    	padding: 10px 14px;
        font-size: 16px;
    }
    
    .login_page th{
        width: 196px;
    }
    
    .login_page table input{
    	padding: 14px;
        font-size: 16px;
    }
    
    .login_page .box .btn_box{
    	margin: 20px 0 0;
    }
        
    /* bottom_flex */
    .login_page .bottom_flex{
        margin: 28px 0 0;
        display: flex;
        justify-content: space-between;
    }

    .login_page .left_note_text .txt{
        font-size: 15px;
    }

    /* right_note_text */
    .right_note_text{
        margin: 0 0 0;
    }
    
    .right_note_text p a::before{
        width: 6px;
        height: 10px;
        right: calc(100% + 10px);
    }
    
    .right_note_text p + p{
        margin: 10px 0 0;
    }


    /* product_show_block 商品詳細
       ================================================================== */
    .product_show_block{
        position: relative;
    }
    
    .product_show_block .product_show_flex{
        font-size: 0;
    }
    
    .product_show_block .left_block{
        padding: 0;
        width: 450px;
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
    }
    
    /* スライダー */
    .product_show_block .left_block .main_photo .tag{
        padding: 5px 24px;
        font-size: 14px;
    }
    
    .product_show_block .left_block .product_slider_nav{
        font-size: 0;
    }
        
    .product_show_block .left_block .main_photo .slick-track,
    .product_show_block .left_block .main_photo .product_slider{
        height: 450px;
    }

    .product_show_block .left_block .product_slider_nav .slick-slide{
        margin: 10px 10px 0 0;
        width: calc((100% / 5) - 8px) !important;
        height: 82px;
        cursor: pointer;
    }
    
    /* right_block */
    .product_show_block .right_block{
        padding: 0 0 0 30px;
        width: calc(100% - 450px);
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
    }

    .product_show_block .right_block .product_detail_box{
        padding: 20px 10px 24px;
    }

    .product_show_block .right_block .product_detail_box.not_putin{
        padding-left: 0;
        padding-right: 0;
    }
    
    .product_show_block .right_block .product_name{
        font-size: 25px;
        line-height: 38px;
    }
    
    .product_show_block .right_block .product_categories{
        margin: 2px 0 0;
    }
    
    .product_show_block .right_block .product_categories li{
        margin: 10px 10px 0 0;
    }
        
    .product_show_block .right_block .product_categories li > *{
        padding: 5px 25px;
        font-size: 13px;
    }

    /* 値段 */
    /* 通常価格 */
    .product_show_block .right_block .price.regular{
        font-size: 15px;
    }
    
    .product_show_block .right_block .price.regular .siz_s{
        font-size: 11px;
    }
    
    /* 販売価格 */
    .product_show_block .right_block .price.original{
        margin: 5px 0 0;
        font-size: 25px;
    }
    
    .product_show_block .right_block .price.original .siz_s{
        font-size: 15px;
    }
    
    /* 割引価格 */
    .product_show_block .right_block .price.down{
        margin: 5px 0 0;
        font-size: 35px;
    }
    
    .product_show_block .right_block .price.down .siz_s{
        font-size: 15px;
    }
    
    .product_show_block .right_block .price.down .off{
        font-size: 13px;
        top: 3px;
        left: 8px;
    }
    
    /* サブスク会員になると */
    .product_show_block .right_block .subscribe_member{
        margin: 10px 0 0;
    }
    
    .product_show_block .right_block .subscribe_member a{
        padding: 6px 36px 6px 10px;
    }
    
    .product_show_block .right_block .subscribe_member a::before{
        background-size: 6px;
        width: 20px;
    }
    
    .product_show_block .right_block .subscribe_member a .txt{
        font-size: 13px;
    }
    
    .product_show_block .right_block .subscribe_member a .yen{
        font-size: 18px;
    }
    
    .product_show_block .right_block .subscribe_member a .siz_s{
        font-size: 10px;
    }
    
    /* 沖縄県内全品送料無料 */
    .product_show_block .right_block .free_shipping{
        margin: 10px 0 0;
    }

    /* product_form 数量表示 ボタン */
    .product_show_block .right_block .quantity_box{
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }
    
    .product_show_block .right_block .quantity_box .txt{
        margin: 0 12px 0 0;
        font-size: 14px;
    }
    
    .product_show_block .right_block .quantity_box input{
        padding: 7px 20px;
        font-size: 16px;
        width: 100px;
    }
    
    .product_show_block .right_block .quantity_box .quantity_note{
        margin: 0 0 0 25px;
        font-size: 14px;
    }
    
    .product_show_block .right_block .product_btn_box{
        margin: 26px 0 0;
        display: flex;
        align-items: center;
    }
    
    .product_show_block .right_block .product_favorite_btn_box .favorite.sp{
        display: none;
    }
    
    .product_show_block .right_block .product_favorite_btn_box .favorite.pc{
        width: 240px;
        display: block;
    }
    
    .product_show_block .right_block .product_btn_box .purchase{
        padding: 0 10px 0 0;
        width: calc(100% - 240px);
    }

    /* product_detail_text 商品説明 */
    .product_show_block .right_block .product_detail_text{
        position: relative;
    }
    
    .product_show_block .right_block .product_detail_text table th,
    .product_show_block .right_block .product_detail_text table td{
        display: table-cell;
        border-bottom: 1px dashed #ddd;
    }
    
    .product_show_block .right_block .product_description_text,
    .product_show_block .right_block .product_detail_text table th,
    .product_show_block .right_block .product_detail_text table td{
        font-size: 14px;
        line-height: 24px;
    }
    
    .product_show_block .right_block .product_detail_text table th{
        padding: 20px 16px;
        width: 124px;
    }
    
    .product_show_block .right_block .product_detail_text table tbody tr:first-child th,
    .product_show_block .right_block .product_detail_text table tbody tr:first-child td{
        padding-top: 0;
    }
    
    .product_show_block .right_block .product_detail_text table td{
        padding: 20px 16px 20px 0;
        width: calc(100% - 124px);
    }
    
    .product_show_block .right_block .product_description_text{
        padding: 26px 16px 0;
    }
    
	/* sns_area */
    .sns_area {
        margin: 26px 0 0;
    }
    
	.sns_area div{
		margin-right: 10px;
	}

    /* store_information_box 店舗名 */
    .store_information_box{
    	margin: 30px 0 0;
        padding: 15px 15px;
        width: 100%;
    }
    
    .store_information_box .store_information{
    	display: flex;
        align-items: center;
        position: relative;
    }
    
    .store_information_box .store_photo{
    	width: 90px;
    }
    
    .store_information_box .store_name{
        padding: 0 0 0 20px;
    	width: 305px;
    }
    
    .store_information_box .store_text p,
    .store_information_box .store_name > span{
        font-size: 14px;
        line-height: 24px;
    }
    
    .store_information_box .store_name span:nth-child(2){
        margin: 6px 0 0;
    }
    
    .store_information_box .open_close .arrow::after{
    	width: 12px;
    	height: 15px;
        right: 9px;
    }
    
    .store_information_box .store_text{
        padding: 20px 0 10px;
    }


    /* other_products_list
       ================================================================== */
    .other_products_list{
    	margin: 60px 0 0;
    }
    
    .other_products_list .inner_block{
    	margin: 60px 0 0;
    }
    
    .other_products_list .product_list + .btn_box{
        margin: 60px 0 0;
    }
 	

	/* products_pagination
	   ================================================================== */
	.products_pagination{
		margin: 80px 0 0;
		padding: 0;
	}

    .products_pagination .pagination_pc .pagination_btn{
        margin: 0 5px;
        padding: 2px 0 0;
    	font-size: 15px;
        width: 40px;
        height: 40px;
    }
 	

	/* pagination
	   ================================================================== */
	.pagination{
		margin: 80px 0 0;
		padding: 0;
	}

    .pagination a,
    .pagination .active span{
        padding: 2px 0 0;
    	font-size: 15px;
    	width: 40px;
    	height: 40px;
    }

    
}
@media screen and (min-width : 1520px){


    /* banner_slider
       ================================================================== */
    .banner_slider{
        width: 1500px;
    }
    
    
}
@media screen and (min-width : 1700px){


    /* order_detail_show_block 注文手続き・履歴
       ================================================================== */
    /* 小計・合計金額 */
    .order_history_page .order_detail_show_block .order_detail_price_box,
    .order_detail_show_block .order_detail_price_box{
        top: 0;
    }
    
    
}
