@charset "euc-jp";
@import url("./reset.css");
@import url("./sidebar.css");

/* ---------------------------------------------------------
■デフォルトリセット
--------------------------------------------------------- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-style: inherit;
    font-family: inherit;
    vertical-align: top;
    list-style:none;
}

a:link,
a:visited {
      color: #333;
      text-decoration: none;
      font-size:93%;
}

a:hover {
    text-decoration: none;
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    zoom: 1; 
}

.breadcrumb{
    font-size: 12px;
}

.breadcrumb a:hover{
    color: #ff710b;
    text-decoration: underline;
}

a img:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    zoom: 1; 
}

img{
    vertical-align: top; 
}

input:focus::-webkit-input-placeholder { color:transparent; }
input:focus:-moz-placeholder { color:transparent; }
input:focus::-moz-placeholder { color:transparent; }

/* ---------------------------------------------------------
■フォント
--------------------------------------------------------- */
body {
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    font-size: 12px;
    color: #333;
    -webkit-text-size-adjust: 100%; /* 2 */
    -ms-text-size-adjust: 100%; /* 2 */
}

.em {
    font-weight: bold;
    font-size: 120%;
    display: inline-block;
    margin-top: -3px;
}

.text-red{
    color: #CC0000;
}

.font-bold{
    font-weight: bold;
}

/* ---------------------------------------------------------
■全体
--------------------------------------------------------- */

.clearfix {
    min-height: 1px; 
}

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden; 
}

a img:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    zoom: 1; 
}


.wrapper{
    width:100%;
}

.header{
    width: 100%;
    z-index: 500;
}

.header-body{
    position: relative;
    min-width: 1080px;
    border-bottom: #999 solid 1px;
    margin-bottom: 10px;
}

.header-logo{
    float: right;
}

.header.header-cartprocess .header-logo-img{
    position: absolute;
    width: 70px; height: 30px;
    top: 0; bottom: 0;
    margin: auto;
}

.header-inner{
    width: 1080px;
    margin: 0 auto;
}

.header-item{
    position: relative;    
    height: 37px;
    min-width: 1080px;
    padding-top: 5px;
    padding-bottom: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.header.header-cartprocess .header-item{
    height: 85px;   
}

.header-item-attention{
    padding-top: 10px;
    height: auto;
    overflow: hidden;
}

.header-title{
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 14px;
    line-height: 2.5em;
    text-align: center;
    width: 70px;
    font-weight: bold;
    display: inline-block;
}

.header-list-img{
    display: inline-block;
	height: 24px;
}

.header-box{
    width: 93%;
    display: inline-block;
}

.header-list{
    padding: 3px 0 0;
    display: inline-block;
	float: left;
}

.header-list-item-member,
.header-list-item-zero{
    width: 120px;
}

.header-list-item-car{
    width: 145px;
}

.header-list-item-coin{
    width: 160px;
}

.header-list-item{
    display: inline-block;
    font-size: 8px;
}

.header-list-item-aff{
    padding: 0 1.5em;
    display: inline-block;
    border-left: solid 1px;
}
.header-list-item-aff:first-of-type{
    border: none;
}

.header-font-md{
    font-size: 12px;
    display: block;
}

.header-title-news{
    background-color: #ecda10;
    height: 25px;
    line-height: 1.8em;
    position: absolute;
    top: 50%;
/*    left: 0%;*/
    -webkit-transform: translate(0%,-50%);
    -moz-transform: translate(0%,-50%);
    -ms-transform: translate(0%,-50%);
    -o-transform: translate(0%,-50%);
    transform: translate(0%,-50%);
}

.header-box-news{
    margin-left: 75px;    
}

.header-item-campaign,
.header-item-catalog{
    background-color: #dedede;
    padding: 3px 0;
    overflow: hidden;
}

.header-item-campaign-aff{
    height: auto;
    background-color: #fff;
}

.header-item-catalog .header-box{
    text-align: center;
    line-height: 30px;
}

.header-41miyage{
    text-align: center;
    color: #000;
    line-height: 30px;
	font-weight: bold;
	font-size: 16px;
}

/* キャンペーンスライダー */
.header-slider{
    position: relative;
    width: 100%; height: 30px;
}

.header-slider-wrapper{
    position: absolute;
    width: 780px; height: 30px;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
    overflow: hidden;
    line-height: 30px;
}

.header-slider-item{
    width: 780px; height: 30px;
    float: left;
}

.header-slider-btn{
    cursor: pointer;
    padding: 10px 5px;
}

.header-slider-btn.prev{
    float: left;
}

.header-slider-btn.next{
    float: right;
}

/* 検索 */

.header-search{
    width: 330px;
    display: inline-block;
    position: relative;
}

.header-search-text{
    border: 1px #666 solid;
    display: inline-block;
    padding-left: 10px;
    padding-right: 5px;
    width: 245px;
    height: 30px;
    line-height: 30px;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.header-search-submit{
    position: absolute;
/*    top: 7px;
*/    right: 86px;
}

.header-search-btn-link {
    display: inline-block;
    font-weight: bold;
    background: #E6E6E6;
    border-radius: 2px;
    color: #000;
    padding: 6px 4px;
	margin-left:3px;
}

.header-search-btn-link:hover {
    filter: Alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.80;
    cursor: pointer;
    text-decoration: none;
}

#fontSizeChangeArea{
    font-size: 12px;
}

#fontSizeChangeArea img{
    margin-top: -2px;
}

.container{
    position: relative;
    margin: 0 auto 0 180px;
}

.container.container-cartprocess{
    margin: auto;
}

.contents {
    width: 1000px;
    margin: 0 auto;
}

.contents-top-item:first-child{
    border: none;
}

.title-heading{
    font-size: 16px;
    font-weight: bold;
}

.caroufredsel_wrapper{
    padding-bottom: 20px;
}

.slider-list{
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
}

.slider-list-btn{
    position: relative;
    cursor: pointer;
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.slider-list-wrapper{
    margin-top: 20px;
    position: relative;
    width: 1040px;
    overflow: hidden;
}

.slider-list-inner{
    display: flex;
    flex-wrap: wrap;
}

.slider-card{
    align-items: center;
}


.slider-card:hover{
    opacity: 1;
    -webkit-animation: flash 1.5s;
    animation: flash 1.5s;
    text-decoration: none;
}

@-webkit-keyframes flash {
    0% {opacity: .4;}
    100% {opacity: 1;}
}

@keyframes flash {
    0% {opacity: .4;}
    100% {opacity: 1;}
}

.slider-card-img{
    display: block;
    max-width: 100%;
    margin: 0 auto 10px auto;
}

.slider-card-title,
.slider-card-comment-title{
    font-weight: 900;
}

.slider-card-stars{
    text-align: right;
    margin: 10px 2px;
}

.slider-card-comment{
    height: 120px;
    background: #f6f6f6;
    padding: 1em;
    position: relative;
}
.slider-card-comment:after {
    bottom: 100%;
    left: 20%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(246, 246, 246, 0);
    border-bottom-color: #f6f6f6;
    border-width: 10px;
    margin-left: -10px;
}

.slider-card-comment-content{
    position: relative;
    height: 80px;
    margin: 5px 0;
    overflow: hidden;
}

.slider-card-comment-content:before,
.slider-card-comment-content:after{
    position: absolute;
    background: #f6f6f6;
}

.slider-card-comment-content:before{
    content: '...';
    bottom: 0;
    right: 7px;
}

.slider-card-comment-content:after{
    content: '';
    width: 100%;
    height: 100%;
}

.slider-card-comment-link > .btn-detail{
    bottom: 1em; right: 1em;
}

.slider-list-pager{
    text-align: center;
}

.slider-list-pager a{
    width: 10px; height: 10px;
    background: #e5e5e5;
    border-radius: 50%;
    margin: 10px 5px 0 5px;
    display: inline-block;
}

.slider-list-pager a.selected{
    background: #808080;
}

.slider-list-pager a span{
    display: none;
}

.recently-card{
    width: 150px;
    padding: 10px;
    margin: 20px 3px;
    box-sizing: border-box;
}

.recently-card:hover{
    box-shadow: 0 0 20px rgba(0,0,0,.5);
}

.recently-card:hover img{
    opacity: 1;
    background: none;
}

.recently-card-price{
    color: #bf0209;
    font-size: 15px;
    font-weight: 900;
}

.coupon-wrapper{
    position: fixed;
    z-index: 9999;
    bottom: 0;
}

.coupon-togglecheck{
    display: none;
}

.coupon-toggleLabel-open{
    position: fixed;
    width: 100px; height: 50px;
    padding-top: 8px;
    bottom: 0; right: 0;
    background-color: #8fbece;
    box-sizing: border-box;
    cursor: pointer;
    font-weight: 900;
    text-align: center;
    z-index: 9999;
}

.coupon-toggleLabel-icon{
    vertical-align: middle;
    font-size: 10px;
}

.coupon-toggleLabel-text{
    font-size: 14px;
    font-weight: normal;
    
}

.coupon-toggleLabel-open:hover{
    text-decoration: underline;
}

.coupon-toggleLabel-close{
    position: absolute;
    width: 40px; height: 40px;
    bottom: 5px; right: 5px;
    background-color: #000;
    color: #fff;
    cursor: pointer;
    line-height: 20px;
}

.coupon-togglecheck:checked ~ .coupon-area{
    left: 0;
}

.coupon-area{
    position: fixed;
    z-index: 9999;
    width: 100%; height: 30px;
    bottom: 0; left: 100%;
    padding: 10px 0;
    background-color: #8fbece;
    font-weight: 900;
    line-height: 30px;
    overflow: hidden;
    text-align: center;
    transition: .8s;
}

.coupon-area-form-code{
    width: 215px;
    height: 30px;
    border: none;
    border-radius: 2px;
    margin: 0 4px;
    padding: 0 10px;
}

[class^="coupon-area-form-btn"]{
    width: 115px; height: 30px;
    border-radius: 2px;
    box-sizing: border-box;
    display: inline-block;
    margin: 0 4px;
    font-weight: 900;
}

.coupon-area-form-btn_before,
.coupon-area-form-btn_before:link,
.coupon-area-form-btn_before:active,
.coupon-area-form-btn_before:visited{
    background-color: #000;
    color: #fff;
}

.coupon-area-form-btn_after,
.coupon-area-form-btn_after:link,
.coupon-area-form-btn_after:active,
.coupon-area-form-btn_after:visited{
    background-color: #8fbece;
    color: #000;
    border: #000 solid 1px;
}

.coupon-area-form-about,
.coupon-area-form-about:link,
.coupon-area-form-about:active,
.coupon-area-form-about:visited{
    color: #fff;
}

.coupon-toggleBtn:hover,
.coupon-area-form-about:link:hover{
    text-decoration: underline;
}

.column-2, .column-3, .column-5{
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;    
}

.column-2{
    width: 510px;
    margin-right: 30px;
}

.column-3{
    width: 340px;
    margin-right: 30px;
}

.column-5{
    width: 205px;
    margin-right: 10px;
}

.column-2:nth-of-type(2n),
.column-3:nth-of-type(3n),
.column-5:nth-of-type(5n){
    margin-right: 0px;
}

/* ---------------------------------------------------------
■ボタン
--------------------------------------------------------- */

.btn {
    letter-spacing: 0.3em;
    text-align: center;
    padding: 12px 30px;
    margin: 0 auto;
    border-radius: 3px;
    box-sizing: border-box;
    display: block;
}

.btn-slim {
    padding: 5px 30px;
}

.btn-sm {
    width: 150px;
}

.btn-md {
    width: 250px;
}

.btn-lg {
    width: 100%;
}

.btn-black,
a.btn-black {
    background: #434343;
    color: #fff;
}


/* ---------------------------------------------------------
■ページトップ
--------------------------------------------------------- */
.page-top{
    position: fixed;
    bottom: 55px; right: 50px;
    background: #fff;
    cursor: pointer;
	border-radius: 5px;
}

.contents-recommend-item{
    width: 100%;
    float: left;
    margin: 20px 0;
}

.recommend-list{
    position: relative;
    width: 100%;
    border-top: solid 1px #c7c7c7;
    margin-bottom: 20px;
    overflow: hidden;
}

.recommend-list-wrapper{
    width: 100%;
    float: left;
}

.recommend-list-btn{
    position: relative;
    cursor: pointer;
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.recommend-card{
    width: 155px;
    padding: 10px;
    margin: 10px 4px;
    align-items: center;
    box-sizing: border-box;
    float: left;
}

.recommend-card:hover{
    box-shadow: 0 0 8px rgba(6, 0, 0, 0.3);
    opacity: 1;
    text-decoration: none;
}

.recommend-card-img{
    display: block;
    max-width: 100%;
    margin: 0 auto 10px auto;
}

.recommend-card-price{
    font-weight: 900;
    color: #bf0209;
}

.recommend-card-price small{
    font-size: 10px;
}

.recommend-readmore{
    cursor: pointer;
    font-size: 14px;
    text-align: center;
}

.recommend-readmore img{
    vertical-align: middle;
    margin: 0 5px;
}

/* ---------------------------------------------------------
■フッター
--------------------------------------------------------- */
.footer{
    width: 100%;
    z-index: 500;
    background: #f5f5f5;
    margin-top: 50px;
    padding-bottom: 30px;
}

.footer-body{
    min-width: 1000px;
}

.footer-inner{
    width: 1000px;
    margin: 0 auto;
    padding: 10px 0;
    box-sizing: border-box;
}

.footer-line{
     border-top: 1px solid #626262;
}

.footer-title{
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 20px;
    line-height: 2.5em;
    font-weight: bold;
}

.footer-flexbox{
    display: flex;
    flex-direction: row;
}

.footer-list-item{
    width: 250px;
    padding: 0 5px;
    text-align: center;
}

.footer-list-item img{
    height: 110px;
}

.footer-list-item-title{
    margin: 10px 0;
}

.btn-detail-img{
    padding: 0;
    margin-left: 0.5em;
    vertical-align: middle;
}

/* ---------------------------------------------------------	
■フッターコンテンツ	
--------------------------------------------------------- */	
#categoryContents h3{	
    margin:20px 0 10px;	
    padding:5px 0;	
    font-size: 16px;	
    font-weight: bold;	
    background-color:none!important;	
}

#categoryContents .badge{	
    font-size: 12px;	
    display: inline-block;	
    color: #fff;	
    margin-right: 1em;	
    padding: 3px 15px;	
    -webkit-box-sizing: border-box;	
    -moz-box-sizing: border-box;	
    box-sizing: border-box;	
}

#categoryContents .badge-oversea{	
    background-color: #2c3e50;	
}	

#categoryContents .badge-domestic{	
    background-color: #fc4349;	
}

#categoryContents .badge-new{	
    background-color: #e6d937;	
}

#categoryContents h4{	
    font-size: 14px;	
    font-weight: bold;	
}

#categoryContents .spList{	
    font-size:0.96em;	
}	

#categoryContents .spList ul{	
    width:1080px;	
    position: relative;	
    padding:20px 0 20px 0px;	
    margin: 0 auto;	
}	

#categoryContents .spList ul li{	
    width:320px;	
    -webkit-box-sizing: border-box;	
    -moz-box-sizing: border-box;	
    box-sizing: border-box;	
    margin: 0 20px 20px 0;
    padding: 5px;	
    float:left;	
}	

.spList li:nth-of-type(3){	
    margin-right: 0px!important;	
}	

#categoryContents .spList ul li a{	
    display: block!important;	
}	

#categoryContents .spList ul li img{	
    margin-bottom:2%;	
}	

#categoryContents .spList ul li:hover{	
    box-shadow: 0 0 20px rgba(0,0,0,.5);	
}	

#categoryContents .spList ul li:hover img{	
    opacity: 1;	
    background: none;	
}

/* モーダルウィンドウ */
.footer-modal-wrapper{
    width: 240px;
    padding: 5px;
    border-right: 1px solid #ccc;
}

.footer-modal-list{
    padding: 5px;
}

.modal-trigger{
    display: none;
}

.modal-trigger:checked + .modal-overlay{
    display: block;
}

.modal-label:hover{
    cursor: pointer;
    opacity: 0.8;
    zoom: 1;
}

.modal-overlay{
    position: fixed;
    width: 100%; height: 100%;
    top: 0; left: 0;
    background: rgba(0, 0, 0, 0.7);
    display: none;
    z-index: 99999;
}

.modal-content{
    position: absolute;
    width: 400px;
    top: 0; right: 0; bottom: 0; left: 0;
    margin: auto;
    background: #fff;
    box-sizing: border-box;
    font-size: 12px;
    padding: 20px 40px;
}

.modal-title{
    height: 20px;
    line-height: 20px;
    margin-bottom:7px;
}

.modal-inner{
    border-bottom: dotted 1px #999;
    padding: 10px 0;
}

.modal-inner:last-of-type{
    border: none;
}

.modal-inner-title{
    font-weight: 900;
    margin-bottom: 0.3em;
}
.modal-inner-title:before{
    width: 8px; height: 8px;
    background: #999;
    border-radius: 50%;
    content: '';
    display: inline-block;
    margin-right: 5px;
}

.modal-readmore{
    width: 200px; height: 30px;
    margin: 10px auto;
    background: #434343;
    border-radius: 3px;
    color: #fff !important;
    display: block;
    line-height: 30px;
    text-align: center;
}

.modal-close{
    position: absolute;
    width: 40px; height: 40px;
    background: #ccc;
    cursor: pointer;
    top: 0; right: 0;
    text-align: center;
    line-height: 40px;
}
.modal-close img{
    vertical-align: middle;
}

/* メニュー */
.footer-menu-wrapper{
    width: 740px;
    padding: 5px;
}

.footer-menu-wrapper.footer-menu-aff{
    width: 100%;
    margin-bottom: 20px;
}

.footer-menu-list{
    display: flex;
    flex-wrap: wrap;
}

.footer-menu-list-item{
    width: 235px;
    padding: 5px;
}

.footer-menu-list-item.footer-menu-aff{
    width: 320px;
    font-weight: bold;
    margin-bottom: 10px;
}

/* メッセージボックス 動的に出力 */
.footer-message-box{
    border: solid 1px #999;
    box-sizing: border-box;
    text-align: center;
    padding: 10px;
}

/* お土産人気 */
.footer-area-wrapper{
    padding: 25px 20px;
    border-top: solid 1px #999;
    border-bottom: solid 1px #999;
}
.footer-area-wrapper:first-of-type{
    border-bottom: none;
}

.area-list,
.footer-banner-list{
    /*justify-content: space-between;*/
}

.area-list-item-title_d{
    font-weight: 900;
    width: 142px;
    float: left;
}
.area-list-item-title{
    font-weight: 900;
    width: 170px;
    float: left;
}

.area-list-japan{
    width: 600px;
}

.footer-banner-list-item{
    width: 320px;
    box-sizing: border-box;
    padding: 10px;

}

.footer-banner-list-item img{
    width: 100%;
}

.footer-fixed{
	overflow: hidden;
    zoom: 1;
    margin-left: 175px;
}

.footer-fixed li{
	float:left;
	margin-right:26px;
}


.footer-copyRight{
    text-align: center;
    font-weight: 900;
    margin: 20px;
}
/* ---------------------------------------------------------
■既存ページ
--------------------------------------------------------- */

#mainArea .contentArea {
    width: 1000px;
    margin: 15px auto 0 auto;
}

#commonMain .inner_boxLogin80 {
    width: 840px;
}


.attentionArea{
    margin: 0 auto!important;
    width: 1000px!important;
}

.attentionArea {
    margin: 20px auto 0;
    padding: 15px;
    width: 970px !important;
    background: #f5f5f5;
}
.attentionArea .attentionIcon div {
    float: left;
    width: 235px;
    margin: 0 0 13px 10px;
}
.attentionArea .attentionIcon div:first-child {
    margin-left: 0;
}
.attentionContent h3 {
    line-height: 160%;
    font-size: 14px;
    margin-bottom: 15px;
    margin-top: 10px;
    text-align: center;
}
.attentionArea .attentionContent .attentionBloc01,
.attentionArea .attentionContent .attentionBloc02,
.attentionArea .attentionContent .attentionBloc03 {
    float: left;
    padding: 10px;
    width: 293px;
    text-align: left;
    background: #fff;
    border: solid 1px #eee;
}
.attentionArea .attentionContent .attentionBloc01 {
    margin-right: 12px;
}
.attentionArea .attentionContent .attentionBloc03 {
    float: right;
}
.attentionArea .attentionContent .attentionBloc01 div.alignL {
    margin-bottom: 13px
}
.attentionArea .attentionContent .cardList {
    padding: 10px 0 15px;
}
.attentionArea .attentionContent .delivTime {
    padding: 10px 0;
}
.attentionArea .attentionContent .delivery {
    background:  #f5f5f5;
    margin: 10px 0;
    padding: 10px;
}
.attentionArea .attentionContent .delivery table {
    font-size: 1.0em;
}
.attentionArea .attentionContent .delivery table td {
    text-align: left;
}

.pickup,.popular,.limited,.frozen,.cold,
.chokuso,.toriyose,.postage,.specify,.wakeari {
    float: left;
    margin-right: 5px;
    margin-bottom: 5px;
    width: 54px;
    font-weight: bold;
    text-align: center;
    padding: 2px 0 1px;
}
.free_handling,.quick_delivery {
    padding: 2px 3px;
    font-weight: bold;
    margin: 0 2px;
    text-align: center;
}
