@charset "UTF-8";

body{
    margin:0;
    padding:0;
    background:#fff;
    color:var(--black);
    font-family: Lato, 游ゴシック体, YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "Lucida Grande", Verdana, "ＭＳ Ｐゴシック", sans-serif !important;
    font-size:14px;
    line-height:160%;
}
body::before{
    content: "";
    display: block;
    width: 100%;
    border-bottom: 1px solid var(--gray_border2);
    position: absolute;
    top: 118px;
    left: 0;
}
a{
    color:var(--black);
    text-decoration:none;
}
a:hover{
    text-decoration:underline;
}
ul,dl{
    margin:0;
    padding:0;
    list-style:none;
}
li,dt,dd{
    margin:0;
    padding:0;
}
h1{
    padding: calc(6 * var(--space)) 0;
    
    text-align:center;
    font-size:16px;
    margin:0 ;
}
#zaiko_wrapper{
    margin:0 auto;
    width:720px;
}
#zaiko_item_info{
    display:flex;
    margin:calc(7 * var(--space)) 0 0 0;
    justify-content: space-between;
}
#zaiko_item_info dt{
    width:272px;
}
#zaiko_item_info dd{
    line-height:160%;
    width: 392px;
}
#zaiko_item_info dt img{
    display:block;
    width:100%;
    height:auto;
}
#zaiko_item_info ul li{
    font-size:13px;
    padding: calc(var(--space) * 2) 0;

}
#zaiko_item_info ul li:first-child{
    padding: 0 0 calc(var(--space) * 2);
}
#zaiko_item_info ul li:nth-child(4){
    padding: calc(var(--space) * 3) 0 calc(var(--space) * 3);
}
#zaiko_item_info ul li:last-child{
    border: none;
    padding: 0;
}
#zaiko_item_info ul li+li{
    border-top:1px solid var(--gray_border2);
}
#zaiko_form{
    
    position: relative;
    
}
#zaiko_form::before{
    font-family: var(--icon);
    content: var(--arrow_down);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: calc(var(--space) * 1);
    font-size: 24px;
    color: var(--gray);

}
select#zaiko_colorsize{
    width:100%;
    font-size:13px;
    height: 40px;
    border: 1px solid var(--gray_border);
    border-radius: 5px;
    padding: 0 0 0 var(--space);
    -webkit-appearance: none;/* ベンダープレフィックス(Google Chrome、Safari用) */
-moz-appearance: none; /* ベンダープレフィックス(Firefox用) */
appearance: none; /* 標準のスタイルを無効にする */
}
#zaiko_attention{
    font-size:12px;
    line-height:160%;
}
#zaiko_attention p{
    margin:0 0 5px 0;
}
.text_red{
    color:#cc0000;
}
#zaiko_brand_name{
    margin:calc(3 * var(--space)) 0;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.3;
}
#zaiko_brand_name span{
    display: block;
    font-size: 12px;
    font-weight: normal;
}
div.search{
    margin-bottom: calc(5 * var(--space));
    position: relative;
    width: 343px;
}
div.search::before{
    font-family: var(--icon);
    content: var(--search);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 8px;
    font-size: 24px;
}
div.search input{
    width: 343px;
    height: 40px;
    border: 1px solid var(--gray_border);
    border-radius: 5px;
    padding: 0 0 0 36px;
    font-weight: bold;
    color: #222;
    font-size: 14px;
}
div.search input::placeholder{
    color: var(--gray_border);
}
ul.tab{
    width: 720px;
    margin: 0 auto;
    display: flex;
    margin-bottom: calc(2 * var(--space));
}
ul.tab li{
    width: 50%;
    text-align: center;
    padding-bottom: calc(var(--space) * 3);
    font-size: 13px;
    border-bottom: 1px solid var(--gray_border2);
    position: relative;
}
ul.tab li.active{
    font-weight: bold;
}
ul.tab li.active::after{
    content: "";
    width: 100%;
    display: block;
    height: 2px;
    background: #000;
    position: absolute;
    bottom: 0;
    left: 0;
}
dt.midashi{
    background: var(--gray);
    height: 40px;
    color: #fff;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    padding-left: calc(2*var(--space));
    font-weight: bold;
}
dt.midashi.follow::before{
       font-family: var(--icon);
       content: var(--fav);
       font-variation-settings: 
    'FILL' 1,   /* ← 塗りつぶし */
    'wght' 300,
    'GRAD' 0,
    'opsz' 24;
       color: #fff; 
    margin-right: calc(var(--space) / 2);
}
dt.midashi.near_store::before{
    font-family: var(--icon);
       content: var(--location);
       ;
       color: #fff; 
    margin-right: calc(var(--space) / 2);
}
#zaiko_area{
    margin:0 30px 40px;
}
#zaiko_area > dt{
    position:relative;
    box-sizing: border-box;
    padding-left:20px;
    background:#F4F4F4;
    height: 50px;
    line-height: 50px;
}
#zaiko_area > dt span{
    position:absolute;
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 1px #000;
    border-right: solid 1px #000;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    top: 50%;
    right: 20px;
    margin-top: -4px;
}
#zaiko_area > dt span.up{
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -2px;
}
#zaiko_area > dd{
    display:none;
}
dl.zaiko_shop{
    display:flex;
    flex-wrap:wrap;
    align-items: center;
    justify-content:space-between;
    border-bottom: 1px solid var(--gray_border);
    height: 72px;
}
dl.zaiko_shop dt{
    padding:0 0px 0 calc(var(--space) * 2);
    width:412px;
    
    height: 50px;
    line-height: 50px;
}
dl.zaiko_shop dt a{
    text-decoration: underline;
}
dl.zaiko_shop dd{
    width:200px;
    padding-right: calc(var(--space) * 2);
    text-align:right;
    display: flex;
    align-items: center;
    height: 50px;
    
}
dl.zaiko_shop dd p{
    width: 64px;
    font-size: 12px;
    text-align: left!important;
    margin-right: var(--space);
}
dl.zaiko_shop dd span{
    margin-right: var(--space);
    cursor: pointer;
}
dl.zaiko_shop dd span.fav::before{
    font-family: var(--icon);
    content: var(--fav);
    font-size: 24px;
    color: var(--pink);
    vertical-align: middle;
}
dl.zaiko_shop dd span.fav.active::before{
    font-variation-settings: var(--fill);
}
dl.zaiko_shop dd a{
    display: flex;
    width: 96px;
    color: #fff;
    height: 40px;
    justify-content: center;
    align-items: center;
    border-radius: 7px;
    font-size: 12px;
}
dl.zaiko_shop dd a:hover{
    text-decoration: none!important;
}
dd.zaiko_ari a,dd.zaiko_wazauka a{
    opacity: 0.2;
}
.zaiko_ari{
    color:#000000;
}
.zaiko_nashi{
    color:#999999;
}
.zaiko_wazuka{
    color:#cc0000;
}
.zaiko_close{
    display:flex;
    align-items: center;
    margin:calc(var(--space) * 4) auto calc(var(--space) * 5);
   justify-content: center;
    width:343px;
    border:1px solid var(--gray_border);
    text-decoration:none;
    text-align:center;
    font-size:14px;
    height: 48px;
}
.zaiko_close:hover{
    border:1px solid #ccc;
    color:#666;
    text-decoration:none;
}
.zaiko_close_top{
    position:absolute;
    display:block;
    width: 24px;
    height: 24px;
    border: 0px;
    top: 42px;
    right: 42px;
}
.zaiko_close_top:hover{
    text-decoration: none;
}
.zaiko_close_top:before{
    font-family:'Material Symbols Outlined';
    /* font-family: var(--icon); */
    /* content:var(--close); */
    content: '\e5cd';
    font-size: 24px;
    
}
.zaiko_close_top:before{
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
.zaiko_close_top:after{
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top:10px;
}
button.w_shop_rearrival_button{
    width: 110px!important;
    height: 30px!important;
    font-size: 12px!important;
    border-radius: 7px;
    padding: 0px;
    }

    .slide_target{
        height: 56px;
        display: flex;
        background: var(--gray2);
        align-items: center;
        padding-left: calc(var(--space) * 2);
        position: relative;
        cursor: pointer;
        border-bottom: 1px solid var(--gray_border2);
    }
    .slide_target::after{
        position: absolute;
        top: 50%;
        right: calc(var(--space) * 2);
        transform: translateY(-50%);
        font-family: var(--icon);
        content: var(--arrow_down);
        display: block;
        color: var(--gray);
    }
.slide_target.active::after{
        transform: translateY(-50%)rotate(180deg);
        
    }
    .slide_target + dd{
        display: none;
    }

.prefectures{
    display: none;
}