@charset "UTF-8";
/* ================================
	共通
================================ */
/*	hide
---------------------- */
@media ( max-width : 767px ) {
	.sp_hide{   display: none !important;}
}
@media ( min-width : 768px ) {
	.xl_hide{   display: none !important;}
}


/*	img
---------------------- */
img{
    max-width: 100%;
    width /***/:auto; /* IE8 */
    height: auto;
}
img.full{
    width: 100%;
    height: auto;
}


/*	type serif
---------------------- */
.serif{
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


/*	notScroll 要改良
---------------------- */
html.not_scroll,
html.not_scroll body{
    overflow: hidden;
}

.page{
    background-image: url(../img/common/bk.jpg);
}


/* telボタン
---------------------- */
.pc .btn .is-tel{
    cursor: default;
}


/* loading googlemap用に変速処理
---------------------- */
.anime-load,
.anime-load > div{
    position: relative;
}
.anime-load::before,
.anime-load > div::before {
    display: block;
    content: "";
    width: 40px;
    height: 40px;
    margin: auto;
    background-color: #1b50a1;
    border-radius: 100%;
    -webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
    animation: sk-scaleout 1.0s infinite ease-in-out;

    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
@-webkit-keyframes sk-scaleout {
    0% { -webkit-transform: scale(0); transform: scale(0);}
    100% { -webkit-transform: scale(1.0); transform: scale(1.0); opacity: 0;}
}
@keyframes sk-scaleout {
    0% { -webkit-transform: scale(0); transform: scale(0);}
    100% { -webkit-transform: scale(1.0); transform: scale(1.0); opacity: 0;}
}

/* btn-basic
---------------------- */
.btn-basic{
    display: inline-block;
    margin: 5% auto;
    padding: .6em 4em;
    border: 2px solid #0d4e9f;
    color: #0d4e9f;
    text-align: center;
    border-radius: 30px;
}
.btn-basic:hover{
    background: #0d4e9f;
    color: #fff;
}


/* ================================
	ヘッダ
	.globalHeader
================================ */
header{
    padding-top: 2rem;
    height: 8rem;
    border-bottom:5px solid #1c50a1;
}
h1{
    width: 210px;
    position: absolute;
    left: 50%;
    top: -2px;
    -webkit-transform: translate(-50%,0);
    transform: translate(-50%,0);
}
h1 > img{ vertical-align: middle}

/* tablet-pc */
@media (min-width:768px){
    h1{ width: 270px; top: 0; }
}

.menu{
    display: none;
    z-index: 10000;
    position: absolute;
    top: 8rem;
    width: 100%;
}
.menu li{
    background-color: #1c50a1;
    border-bottom: 1px solid #fff;
}
.menu li a{
    display: block;
    text-align: center;
    color: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-bottom: 2rem;
    padding-top: 2rem;
    font-size: 1.5rem;
}

/* logo
---------------------- */
.logo img{
    width: 54px;
    height: auto;
}


/**/
.bgmenu{
    position: absolute;
/*    right: 1rem;*/
    right: 3%;
    top: 0rem;
    z-index: 10000;
}

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  -webkit-transition: all .4s;
  transition: all .4s;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 4.5rem;
  height: 4rem;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: .5rem;
  background-color: #1c50a1;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 1.75rem;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu-trigger span:nth-of-type(1) {
  -webkit-animation: menu-bar01 .75s forwards;
  animation: menu-bar01 .75s forwards;
}
@-webkit-keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(1.75rem) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(1.75rem) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
  }
}
@keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(1.75rem) rotate(45deg);
    transform: translateY(1.75rem) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(1.75rem) rotate(0);
    transform: translateY(1.75rem) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}
.menu-trigger span:nth-of-type(2) {
  -webkit-transition: all .25s .25s;
  transition: all .25s .25s;
  opacity: 1;
}
.menu-trigger span:nth-of-type(3) {
  -webkit-animation: menu-bar02 .75s forwards;
  animation: menu-bar02 .75s forwards;
}
@-webkit-keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-1.75rem) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-1.75rem) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
  }
}
@keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-1.75rem) rotate(-45deg);
    transform: translateY(-1.75rem) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-1.75rem) rotate(0);
    transform: translateY(-1.75rem) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}
.menu-trigger.active span:nth-of-type(1) {
  -webkit-animation: active-menu-bar01 .75s forwards;
  animation: active-menu-bar01 .75s forwards;
}
@-webkit-keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(1.75rem) rotate(0);
  }
  100% {
    -webkit-transform: translateY(1.75rem) rotate(45deg);
  }
}
@keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(1.75rem) rotate(0);
    transform: translateY(1.75rem) rotate(0);
  }
  100% {
    -webkit-transform: translateY(1.75rem) rotate(45deg);
    transform: translateY(1.75rem) rotate(45deg);
  }
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-animation: active-menu-bar03 .75s forwards;
  animation: active-menu-bar03 .75s forwards;
}
@-webkit-keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-1.75rem) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-1.75rem) rotate(-45deg);
  }
}
@keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-1.75rem) rotate(0);
    transform: translateY(-1.75rem) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-1.75rem) rotate(-45deg);
    transform: translateY(-1.75rem) rotate(-45deg);
  }
}
/**/


/* ================================
	フッタ
	.globalFooter
================================ */
footer{
/*    margin-top: 2rem;*/
}
.linkOth li{
    width: 48%;
    float: left;
    padding: 3% 4%;
    text-align: center;
    background-color: #fff;
}
.linkOth li:nth-child(2n+1){
    margin-right: 2%;
    margin-left: 1%
}
.linkOth li:nth-child(2n){
    margin-right:0;
    margin-left:0;
}
.twoone{
    border: 5px solid #ff656c;
}
.corp{
    border: 5px solid #3a6dbd;
}


.copyright{
    padding: 2em 0 1.4em;
    text-align: center;
    font-weight: bold;
    line-height: 1;
}

.gototop{
    background-color:#999;
    text-align: center;
    margin: 0 auto;
}
.arrow{
position: relative;
display:block;
padding: 0;
color: #fff;
vertical-align: middle;
text-decoration: none;
font-size: 15px;
width: 100%;
height: 7rem;
}
.arrow::before,
.arrow::after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto;
content: "";
vertical-align: middle;
}
.arrow::before{
top: 1rem;
width: 2rem;
height: 2rem;
border-top: 4px solid #fff;
border-right:4px solid #fff;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
left: 50%;
margin-left: -1rem;
}

/* ================================
	フローティングバナー
================================ */
.sec-floatingBanner{
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
    position: fixed;
    bottom: 0;
    left: 5%;
    z-index: 1000;
    -webkit-transition: .4s;
    transition: .4s;

}
.sec-floatingBanner.is-hide{
    -webkit-transform: rotate(3deg) translateY(110%);
    transform: rotate(3deg) translateY(110%);
}
.floatingBanner{
    display: inline-block;
    position: relative;
    z-index: 1000;
}
.floatingBanner::before{
    display: block;
    content: "";
    width: 70%;
    height: 54%;
    background: #333;
    -webkit-box-shadow: 0 0 50px rgba(0,0,0,.9);
    box-shadow: 0 0 50px rgba(0,0,0,.9);
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
    position: absolute;
    bottom: 5%;
    right: 2%;
    z-index: 500;
}
/*
.floatingBanner::after{
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background: url(https://www.nafco.life/hc/higawari-images/overlay-txt.png) no-repeat 0 0;
    background-size: cover;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
}
*/

.floatingBanner img{
    width: 100%;
    max-width: 470px;
    position: relative;
    z-index: 1000;

/*    box-shadow: 10px 10px 14px rgba(0,0,0,.4);*/
}
.sec-floatingBanner .btn-close{
    display: block;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    color: #fff;
    font-size: 26px;
    font-style: normal;
    background: #1d50a1;
    position: absolute;
    top: -6%;
    right: -34px;
    text-align: center;
    line-height: 49px;
    z-index: 1000;
}
.floatingBanner .btn-close:hover{
    background: #999;
}
/* sp */
@media (max-width:543px){
    .sec-floatingBanner{
        width: 80%;
    }

}

/* ================================
	コンテンツ
	.contents
================================ */
main{
    background: #fff;
}

.sec-index > .inner{
    padding: 1% 3%;
}

/* メインビジュアル
---------------------- */
#mainimg_pc img,
#mainimg img{
    width: 100%;
}
#mainimg_pc .bx-pager{
    display: none;
}

/*
    top
*/
#scLink{
    margin-top: 1rem;
    font-size: 0;
    text-align: center;
}
#scLink li{
    margin-bottom: 1rem;
}

@media ( min-width : 768px ) {
    #scLink li{
        width: 49%;
        display: inline-block;
        margin-left: 2%;
        margin-bottom: 3rem;
    }
    #scLink li:first-child{
        margin-left: 0;
    }
    #scLink li a img{
        -webkit-transition: 0.5s;
        transition: 0.5s;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }
    #scLink li a:hover img{
        -webkit-transform:translateY(-0.5rem);
        transform:translateY(-0.5rem);
    }

    #scLink li.ext-link{
        width: 100%;
        margin-top: 2em;
        margin-bottom: 5rem;
        margin-left: 0;
    }
}

/* bxslider調整
---------------------- */
.sec-index .bx-wrapper:nth-child(1),
.sec-index .bx-wrapper:nth-child(2){
    margin-bottom: 0;
    overflow: hidden;
}
.sec-index .bx-wrapper:nth-child(1) .bx-pager{
    bottom: 10px;
}

/* tablet-pc */
@media (max-width:767px){
    .sec-index .bx-wrapper:nth-child(2){
    margin-bottom: 9%;
    overflow: visible;
    }
}

.sec-index .bx-wrapper .bx-pager.bx-default-pager a{
    background: #ddd;
    opacity: .5;
}
.sec-index .bx-wrapper .bx-pager.bx-default-pager a:hover,
.sec-index .bx-wrapper .bx-pager.bx-default-pager a.active{
    background: #0d4e9f;
    opacity: .8;
}


/* ================================
	店頭イベント情報
================================ */
#shopEvent_front{
    margin-top: 4rem;
    margin-bottom: 7rem;
}

/* ================================
	キャンペーン一覧
================================ */
#news,#campaign{margin-top: 3rem;}
h2.title_txt,
h4.title_txt {
    text-align: center;
    margin-bottom: 4rem;
    font-weight: normal;
}
h4.title_txt{
    padding-top: 3em;
    margin-bottom: 0rem;
    font-size: 2rem;
}
h2.title_txt span ,
h4.title_txt span {
    border-bottom: 4px solid #1c50a1;
    padding-left: 1rem;
    padding-right: 1rem;
}
h3.title_txt{
    background: #1d50a1;
    /* border-left: 8px solid #1d50a1; */
    color: #fff;
    font-size: 18px;
    font-weight: normal;
    text-align: center;
    padding: 1em;
    margin-bottom: 1rem;
}
h4 span{
    color: #1c50a1;
}
@media ( min-width : 768px ) {
    h2.title_txt span,
    h4.title_txt span {
        padding: 0 4.7em .3em;
    }
    h2.title_txt{
    }
}

/* campaignList
---------------------- */
.campaignList{
}
.campaignList .wrap-sizelarge,
.campaignList .wrap-sizesmall{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 103%;
    margin: 0 -1.5%;
    overflow: hidden;
}
.campaignList .size-large{
    display: table;
    padding: 0 1.5% 5%;
    width: calc(100%/2);
}
.campaignList .size-large dl h3{
    font-size: 1.4rem;
}
.campaignList .size-large dl p{
    font-size: 1.2rem;
}
.campaignList .size-large img{
    display: block;
    margin-bottom: 5%;
    width: 100%;
    background: #333;
}
.campaignList .size-small{
    display: table;
    padding: 0 1.5% 1.5%;
    width: calc(100%/2);
}
.campaignList .size-small dl{
    display: table;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2% 2% 2% 0;
}
.campaignList .size-small dt,
.campaignList .size-small dd{
    display: table-cell;
    vertical-align: top;
    font-size: 1.0rem;
}
.campaignList .size-small dt img{
    width: 100%;
}
.campaignList .size-small dd{
    padding-left: 1em;
}
.campaignList .size-small dt{
    width: 30%;
}
.campaignList a{
    color: #333;
}
.campaignList a:hover{
    text-decoration: underline;
}

/* tablet-pc */
@media (min-width:768px){
    .campaignList .size-large{
        padding: 1.5% 1.5%;
        width: calc(100%/3);
    }
    .campaignList .size-large dl h3{
        font-size: 1.6rem;
    }
    .campaignList .size-large dl p{
        font-size: 1.4rem;
    }
    .campaignList .size-small{
        width: 33.3333%;
        padding: .6% 1.5%;
    }
    .campaignList .size-small dt,
    .campaignList .size-small dd{
        vertical-align: middle;
        font-size: 1.2rem;
    }

}


/* ================================
	お知らせ
================================ */
#news dl{
    display: table;
    border-bottom: 1px solid #ccc;
    width: 100%;
}
#news dt{
    width: 25%;
}
@media ( min-width : 768px ) {
    #news dt{
        width: 12%;
    }
}
#news dt,#news dd{
    display: table-cell;
    vertical-align: top;
    padding: 1.2em 1.5em 1.2em 0;
}

#news dt > span{
    display: inline-block;
    padding: .3em .8em .2em;
    font-size: 1.2rem;
    white-space: nowrap;
}
@media ( min-width : 768px ) {
    #news dt > span{
        padding: .5em 1.6em .4em;
        line-height: 1;
    }
}
#news a{color: #333;text-decoration: underline;}
#news dt{color: #fff; font-weight: bold;}
#news .newShop span{background-color:#0099ff;}
#news .topics span{background-color:#66cc33;}
#news .date{color: #336699;}
#news .linkAll a{
    display: block;
    border: 3px solid #1c50a1;
    background-color: #fff;
    text-align: center;
    text-decoration: none;
    color: #1c50a1;
    font-size: 1.5rem;
    font-weight: bold;
    width: 80%;
    margin: 2rem auto;
    padding: 1.5rem;
    border-radius: 10rem;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}
#news .linkAll a:hover{
    color: #fff;
    background-color: #1c50a1;
}

@media ( min-width : 768px ) {
    #news .linkAll{
        width: 400px;
        margin: 0 auto;
    }
    .news__item{
        display: table;
        table-layout: fixed;
    }
    .news__item p{
        display: table-cell;
        vertical-align: middle;
        padding-top: .4em;
    }
    .news__time{
        padding-right: 1em;
    }
}

/* ================================
	サービス一覧
================================ */
@media ( min-width : 768px ) {

    #service{
        margin-top: 6rem;
        margin-bottom: 3rem;
    }
    #service h2{
        text-align: center;
        font-weight: normal;
        font-size: 2.5rem;
    }
    #service h2+p{
        text-align: center;
        margin-bottom: 2rem;
    }
    .orange{
        color: #fca13f;
    }
    .blue{
        color: #1c50a1;
    }
    #service h2+p>a{
        color: #333;
        text-decoration: underline;
    }
    .serviceList{
        display: -ms-flexbox;
        display: -webkit-box;
        display: flex;
        -ms-flex-wrap : wrap;
        flex-wrap: wrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
    #service dl{
        display: inline-block;
        width: 16.4%;
        margin-bottom: 5%;
        vertical-align: top;
    }
    #service dt{
        text-align: center;
        margin-bottom: 0.8rem;
    }
    #service dd{
        font-size: 1.2rem;
        text-align: center;
    }

}


/* ================================================================

    下層ページ

================================================================ */

/* ================================

    オススメ商品ページ

================================ */

/* メインビジュアル
---------------------- */
.recommend--vi img{
    width: 100%;
}

/* 対象機関
---------------------- */
.duration{
    background-color: #ffb400;
    text-align: center;
    font-weight: bold;
    font-size: 1.5rem;
    padding:1rem;
}
.sec-gensen .duration{
    background-color: #ffdede;
    color: #333;
    font-weight: normal;
    font-size: 1.2rem;
}
.sec-gensen .duration a{
    color: #333;
    text-decoration: underline;
}
.sec-hatsuuri .duration{
    background-color: #bd8533;
    padding: 0 1rem;
}
.sec-hatsuuri .duration > img{
    max-width: 990px
}

/* カテゴリーリスト
---------------------- */
.categoryList{
    width: 100%;
    -webkit-overflow-scrolling: touch;
    overflow-x: scroll;
    background-color:#1c50a1;
}
/*
.pc .categoryList{
    margin-bottom: -14px;
}
*/
.categoryList ul{
    display: inline-block;
    white-space: nowrap;
}
.categoryList li{
    display: inline-block;
}
.categoryList li a{
    display: block;
    padding: 1em;
    color: #fff;
    text-decoration: none;
}
.categoryList li a.is-active{
    background: #0b2a50;
}
.sec-hatsuuri .categoryList{
    background: #c8161d;
}

@media ( min-width : 768px ) {
    .categoryList{
        padding: 1em;
    }
    .categoryList ul{
        display: block;
        margin: 0 auto;
        white-space: normal;
        text-align: center;
    }
    .categoryList li a{
        padding: .5em;
    }
}

/* 商品一覧
---------------------- */
.itemList{
    background: #fef4d8;
}
.sec-gensen .itemList{
/*    background: #f3f8ff;*/
    background: #eff3f9;
}
.itemList > .inner{
    max-width: 1100px;
    padding: 3% 3%;
}
.itemList h3{
    margin: 1em auto;
    font-size: 2.6rem;
}
.itemList ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 103%;
    margin-right: -3%;
    overflow: hidden;
}
.itemList li{
    width: 47%;
    margin: 0 3% 0 0;
}
.itemList li a{
    display: block;
    padding-bottom: 10%;
    position: relative;
    outline: none;
}

.sec-recommend .itemList li a{
    padding-bottom: 0;
}
.sec-recommend .itemList li{
    padding-bottom: 1rem;
}
/* tablet-pc */
@media (min-width:768px){
    .sec-recommend .itemList li{
        padding-bottom: 2rem;
    }
}

.itemList li a figure{
    margin-bottom: 10px;
    position: relative;
    overflow: hidden;
}
.itemList li a figure::before{
    display: block;
    content: "購入はこちら";
    width: 100%;
    padding: .3em;
    line-height: 1;
    background: rgba(27, 80, 160, .9);
    color: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
}
.itemList li a[href^="https://"] figure::before{
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}
.itemList li a[href^="https://item.rakuten.co.jp/"]:hover img{
    opacity: .8;
}
.itemList li a p{
    font-size: 14px;
    font-size: 1.4rem;
    text-align: left;
}
.itemList li a .item__price{
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    color: #c8161d;
}
.itemList li a[href^="https://item.rakuten.co.jp/"]::after{
    display: block;
    content: "R";
    width: 40px;
    height: 40px;
    background: #c8161d;
    border-radius: 50%;
    text-align: center;
    font-size: 22px;
    font-weight: bold;
    line-height: 43px;
    color: #fff;
    position: absolute;
    top: 5px;
    left: 5px;
    z-index: 100;
    -webkit-box-shadow: 3px 3px 3px rgba(0,0,0,.2);
    box-shadow: 3px 3px 3px rgba(0,0,0,.2);
}
.sec-recommend .itemList li a[href^="https://search.rakuten.co.jp/"]::after{
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background: url(../img/common/img-itemOverlay.png) no-repeat center center;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
}
.itemList li img{
    width: 100%;
}

/* border テスト */
.itemList li{
    position: relative;
}
/*
.sec-recommend .itemList li a::after{
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    border: 4px solid #0d4e9f;
    position: absolute;
    top: 0;
    left: 0;
}
*/
.sec-recommend .itemList li:not(.has-link) a::after{
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    border: 4px solid #0d4e9f;
    position: absolute;
    top: 0;
    left: 0;
}
.itemList #sec-day li a::after{
    border: none;
}

/* tablet-pc */
@media (min-width:768px){

    .itemList li{
        width: 22%;
    }
}


/* ================================================================

	shopページ

================================================================ */
.sec-shopMap{
/*    background: #f9f7eb;*/
}
#shopmap,#shopmapBig{
    height: 450px;
    height: 50vh;
    max-height:400px;
    background-color: #e5e3df;
}
.shopList{
/*    margin-bottom: 3rem;*/
    margin-top: 1rem;
/*    margin-bottom: 1rem;*/
}
.shopList li{
    font-size: 1.4rem;
}
.shopList li a{
    display: block;
    width: 100%;
    height: 100%;
    padding: 1rem 2rem 1rem 1rem;
    color: #000;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 1px solid #ccc;
}
@media (min-width:768px){
    .shopList{
        display: -ms-flexbox;
        display: -webkit-box;
        display: flex;
        -ms-flex-wrap : wrap;
        flex-wrap: wrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;

        margin-left: -3%;
        overflow: hidden;
    }
    .shopList li{
        display: inline-block;
        width: 50%;
        padding-left: 3%;
        margin-bottom: 1rem;
        font-size: 1.3rem;
    }
}
.sec-shopMap{
    margin-bottom: 5%;
}
.sec-shopMap h3{
    display: block;
    width: 14em;
    padding: 1em 2em;
    margin: 3em auto 4em;
    color: #fff;
    background: #10509f;
    font-size: 18px;
    line-height: 1;
    border-radius: 3px;
    -webkit-box-shadow: 0 3px 0 rgba(14, 31, 60, 1.0);
    box-shadow: 0 3px 0 rgba(14, 31, 60, 1.0);
    position: relative;
    -webkit-transition: 1s;
    transition: 1s;
    font-weight: normal;
    cursor: pointer;
}
.sec-shopMap.is-active{
    width: 100%;
    background: #fcfcfc;
    color: #333;
    padding: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.sec-shopMap h3.title_txt{
    width: 100%;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    margin-bottom: .5em;
}
.sec-shopMap h3 + div > p:first-child{
    margin-bottom: 1em;
}
/*
.arr{
position: relative;
color: #333;
vertical-align: middle;
text-decoration: none;
}
.arr::before,
.arr::after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto;
content: "";
vertical-align: middle;
width: 1.2rem;
height: 1.2rem;
}
.arr::before{
top: 0.5rem;
width: 1.2rem;
height: 1.2rem;
border-top: 2px solid #333;
border-right:2px solid #333;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
right: -90%;
}
*/


/* ================================

エリアから探す

================================ */
.gutters .sec-shopAreaList{
    margin-left: 0;
    margin-bottom: 2em;
}
/* tablet-pc */
@media (min-width:768px){
    .sec-shopAreaList > .inner{
/*        padding-top: 0;    */
    }
}

/* areaList
---------------------- */
ul.areaList {
    display: block;
    text-align: left;
}
.areaList > li {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
}
.areaList h3 {
    display: block;
    position: relative;
    margin: 0 auto;
    padding: 20px 15px;
    width: 100%;
	font-size: 1.6rem;
    font-weight: normal;
    border-bottom: solid 1px #d3d7dc;
    cursor: pointer;
    line-height: 1;
    position: relative;
}
.areaList h3:before {
    position: absolute;
    display: block;
    content: "";
    width: 10px;
    height: 10px;
	border: solid #333;
    border-width: 0 3px 3px 0;
    margin-top: -7px;
    top: 50%;
    right: 20px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: .4s;
    transition: .4s;
}
.areaList h3.is-active:before{
    margin-top: -2px;
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
}

/* areaList.table
---------------------- */
.areaList.table{
    border: solid #ccc;
    border-width: 1px 0 0 1px;
}
.areaList.table a{
    color: #333;
    text-decoration: underline;
}
.areaList.table > li{
    display: table;
    table-layout: fixed;
}
.areaList.table > li > a,
.areaList.table > li > ul{
    display: table-cell;
    vertical-align: middle;
    padding: 1.4em;
    border: solid #ccc;
    border-width: 0 1px 1px 0;
}
.areaList.table > li > a{
    width: 32%;
    background: #f9f7eb;
    text-align: center;
    text-decoration: none;
    cursor: default;
    outline: 0;
}
.areaList.table > li > ul > li{
    display: inline;
}
.areaList.table > li > ul > li > a{
    display: inline-block;
    padding: .5em 1em;
    white-space: nowrap;
}
/* tablet-pc */
@media (min-width:768px){
    .areaList.table{
        display: none;
        border: none;
    }
    .areaList.table > li{
        display: block;
        margin-bottom: 1em;
    }
    .areaList.table > li > a,
    .areaList.table > li > ul{
        display: block;
        width: 100%;
        border: none;
    }
    .areaList.table > li > a{
        text-align: left;
        padding: 1em;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: bold;
        color: #0d4e9f;
        border-left: 3px solid #0d4e9f;
        background:  #f3f8ff;
    }
    .areaList.table > li > ul > li > a{
        padding: 1em 1.6em .8em;
        background: #fff;
        text-decoration: none;
        line-height: 1;
        color: #0d4e9f;
        border-radius: 3px;
        border: 1px solid #0d4e9f;
    }
    .areaList.table > li > ul > li > a:hover{
        color: #fff;
        background: #0d4e9f;
    }
}


/* kenList
---------------------- */
.wrap-kenList{
    display: none;
}
.kenList{
    width: 100%;
    margin-bottom: 1em;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-wrap : wrap;
    flex-wrap: wrap;
}
.kenList:nth-child(odd){
}
.kenList dt{
    width: 100%;
    padding: 10px 15px;
    margin-bottom: .4em;
    font-size: 1.2rem;
    background: #efefef;
}
.kenList dd{
    width: 50%;
}
.kenList a{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    padding: .6em 0;
    color: #333;
    position: relative;
}
.kenList a > span{
    display: block;
}
.kenList a > span + span{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    font-size: 12px;
    color: #333;
    padding-right: 0;
}
.kenList_ctg{
/*    min-width: 3em;*/
}

.kenList i[class*="shopctg-"]{
    display: inline-block;
    padding: .2em .7em .2em;
    margin-right: 3px;
    font-size: 10px;
    font-style: normal;
    color: #fff;
    vertical-align: 1px;
    background-color: #1c50a1;
}
.kenList i.shopctg-twoone{    background-color: #cf121b;}

.kenList__ttl > .tmp{
    text-decoration: underline;
}

/* tablet-pc */
@media (min-width:768px){
    .kenList dd{
/*        width: 50%;*/
        width: calc(100%/3);
        display: inline-block;
        vertical-align: top;
    }
    .kenList a:hover::before{
        display: block;
        content: "";
        width: 100%;
        height: 1px;
        background: #ccc;
        position: absolute;
        bottom: 0;
        left: 0;
    }
}

/* icn line
---------------------- */
.icn-line{
    display: inline-block;
    width: 1.4em;
    height: 1.4em;
    margin-left: .3em;
    background: url("https://icongr.am/simple/line.svg?size=64&color=3abd43&colored=false") no-repeat 0 0;
    background-size: 100%;
}

/* btn line
---------------------- */
.wrap-btn{
    display: inline-block;
}
.btn-line {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 1em;
    padding: .8em 2em .7em;
    color: #fff;
    background-color: #3abd43;
    border-radius: 3px;
}
.btn-line:hover,
.btn-line:focus,
.btn-line:active {
    background-color: #1b7e22;
}
.btn-line span{
    display: block;
    margin-left: .5em;
}
.btn-line .icn-line {
    width: 1.8em;
    height: 1.8em;
    background-image: url("https://icongr.am/simple/line.svg?size=64&color=ffffff&colored=false");
}



.wrap-list{
    display: flex;
    flex-wrap: wrap;
}

.wrap-list dd{
    width: 100%;
}
.kenList.line{
    margin-top: 3em;
}

.kenList.line table{
    width: 100%;
}
.kenList.line tbody {
    margin-top: 1em;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.kenList.line tbody tr {
    display: flex;
    align-items: center;
    width: 100%;
    border-left:1px solid #ccc;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
}
.kenList.line tbody tr:first-child {
    border-top: 1px solid #ccc;
}
.kenList.line td{
    padding: .4em;
    height: 100%;
    position: relative;
}

.kenList.line td + td{
border-left:1px solid #ccc;
}
.kenList.line .td-add {
    width: 10em;
    font-size: 1.2rem;
}

.kenList.line .td-name {
    width: 13em;
}

.kenList.line .td-line{
    width: auto;
    font-size: 1.2rem;
}

.kenList.line td a {
    text-decoration: underline;
    padding: 0;
}

.kenList.line td a:hover::before{
    display: none;
}

@media (min-width:768px) {
    .kenList.line tbody tr {
        display: flex;
        align-items: center;
        width: 48%;
        border-left: 1px solid #ccc;
        border-right: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
    }

    .kenList.line tbody tr:first-child,
    .kenList.line tbody tr:nth-child(2) {
        border-top: 1px solid #ccc;
    }
}

/* ================================

    shopSearch

================================ */
.sec-shopSearch{
    margin: 0 0 2em;
    padding: 2em;
    background: #efefef;
}
.wrap-shopSearch{
    display: block;
    position: relative;
}
/*
.wrap-shopSearch::before{
    display: block;
    content: "キーワード検索：店舗名、住所、電話番号";
    width: 100%;
    color: #999;
    border-radius: 3px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 2em;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    overflow: hidden;
}
*/
.shopSearch__input{
/*
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
*/
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    display: block;
    margin: 0 auto;
    padding: .6em 1em;
    width: 100%;
    border: 1px solid #d3d7dc;
    background: #fff;

    font-size: 16px;
    font-size: 1.6rem;
}
.shopSearch__input:active,
.shopSearch__input:focus{
    background: #fff;
}
.item-add,
.item-tel{
    display: block;
    font-size: 10px;
    font-size: 1.0rem;
    color: #666;
}
.active .item-add,
.active .item-tel{
    color: #fff;
}

/* ================================================================

    店舗詳細

================================================================ */
.shopInfo{
    padding-bottom: 2rem;
/*    margin-bottom: 3rem;*/
}
.shopInfo__header{
    padding-top: 0;
    margin-bottom: 2em;
    height: auto;
    border: 0;
}
.shopInfo__header h3{
    font-size: 3.6rem;
    font-weight: bold;
    margin-top: 1rem;
    padding-bottom: 1rem;
}
.shopInfo__header .type{
    display: inline-block;
    color: #fff;
    margin: 0 0 0 .5em;
    line-height: 1.2;
    vertical-align: top;
}
.shopInfo__header .type span{
    padding: .4em 1.4em .3em;
    font-size: 10px;
    font-size: 1.0rem;
}

.shopInfo__header [class*="shopctg-"] span{
    background-color: #1c50a1;
}
.shopInfo__header .shopctg-twoone span{
    background-color: #cf121b;
}
.shopInfo__header p > a{
    text-decoration: underline;
}
.shopInfo__header dl,
.shopInfo__header dt,
.shopInfo__header dd{
    display: inline-block;
    vertical-align: top;
    padding-right: .5em;
    margin-top: .2em;
    margin-bottom: .2em;
}
.shopInfo__header dt{
    padding: 4px 10px 2px;
    line-height: 1;
    border:  1px solid #333;
}
.shopInfo__header dd{
    padding-top: .15em;
}
.shopInfo__header .tel a{
    color: #333;
}
.shopInfo__data{
    margin-bottom: 30px;
}
.shopInfo__data > dl{
    margin-top: 2rem;
}
.shopInfo__data > dl dt{
    padding-right: 1em;
    font-weight: bold;
    font-size: 1.5rem;
}
.shopInfo strong{
    color: #cf121b;
}
.shopInfo__data > dl dd{
    font-size: 1.5rem;
}
.shopInfo__data > dl[class^="tax-"] dt{
    display: block;
    margin-bottom: .3em;
}
.shopInfo__data > dl[class^="tax-"] dd{
    display: none;
    padding: .4em .6em .3em;
    margin:  0 .3em .3em 0;
    font-size: 1.2rem;
    background: #f7f7f7;
    color: #ccc;
    line-height: 1;
    text-decoration: line-through;
}
.shopInfo__data > dl[class^="tax-"] dd.is-current{
    display: inline-block;
    background: #fff;
    border:1px solid #eee;
    color: #333;
    text-decoration: none;
}

.btn{
    width: 100%;
    background-color: #666;
    border-radius: 0.5rem;
}

.btn a{
    color: #fff;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-size: 2rem;
    text-align: center;
}
.btn a.arr:before{
    border-color: #fff;
/*
    border-top: 4px solid #fff;
    border-right:4px solid #fff;
*/
}

.shopInfo__addText{
    margin: 1em 0 2em;
}


@media ( min-width : 768px ) {
    .shopInfo h3{
        margin-top: 0;
    }
/*
    #shopmap{
        width: 48%;
        float: left;
    }
    #shopinfo{
        width: 48%;
        float: right;
    }
*/
    .shopInfo__data > dl dt,
    .shopInfo__data > dl dd{
        display: inline-block;
        vertical-align: top;
    }
    .btn{
        width: auto;
        background: none;
        border-radius: 0.5rem;
    }
    .btn a{
        color: #333;
        display: block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-top: 0;
        padding-bottom:0;
        font-size: 1.5rem;
        text-align: left;
    }
    .btn a.arr::before{
        border-top: none;
        border-right:none;
        }
}

/* #btn デジタルチラシ
---------------------- */
.degitalChirashi{
    margin-bottom: 10px
}
.chirashi > dl{
/*    margin-bottom: 4%;*/
    padding: 3%;
/*    margin-bottom: 20px;    */
    background: #f9f7eb;
}

.chirashi dl{
    margin-top: 0;
}
.chirashi dt,
.chirashi dd{
    vertical-align: middle;
}
.chirashi dt{
    padding: 5px;
    font-weight: bold;
    font-size: 1.5rem;
    position: relative;
    z-index: 1;
}
.chirashi dt > span {
    display: inline-block;
    padding-right: 1em;
    background: #f7f5ea;
}
.chirashi dt::before {
    display: block;
    content: "";
    margin-top: -2px;
    width: 100%;
    background: #333;
    height: 1px;
    position: absolute;
    top: 50%;
    z-index: -1;
}

.chirashi ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}
.btn_a{
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-wrap : nowrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.btn_area li{
    padding: 5px;
    width: 50%;
}
.btn_area a{
    display: block;
    padding: 10px 0 0;
    text-align: center;
    background: #fff;
}
.btn_area a > img{
    max-height: 150px;
}
.btn_area a > span{
    display: block;
    padding: .5em;
    margin-top: 10px;
    color: #333;
    text-decoration: underline;
    background: #f9f7eb;
}

/* tablet-pc */
@media (min-width:768px){
    .degitalChirashi{
        margin-bottom: 20px;
/*
        padding: 20px 20px 0;
*/
    }
}

/* キャンペーン
---------------------- */
.campaign{
    padding: 30px 5px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    background-image: url(../img/common/bk.jpg);
}
.shopEvent + .campaign{
    border-top: none;
}

.campaign dl{
    display: table;
    table-layout: fixed;
    padding-bottom: 4%;
    width: 50%;
}
.campaign dt,
.campaign dd{
    display: table-cell;
    vertical-align: top;
}
.campaign dt{
    padding: 0;
    width: 18%;
}
.campaign dd a{
    display: block;
    padding: 0 5%;
    color: #333;
    font-size: 13px;
    font-size: 1.3rem;
    text-decoration: underline;
}
.campaign dl:hover dd{
    background: #fff;
}
/* tablet-pc */
@media (min-width:768px){
    .campaign{
/*        margin-top: 20px;*/
        padding: 10px;
        border: none;
    }
    .campaign dl{
        width: 100%;
        padding-bottom: 2%;
    }
    .campaign dt,
    .campaign dd{
        vertical-align: middle;
    }
    .campaign dt{
        width: 20%;
    }
    .campaign dd a{
        padding: 5% 7% 5% 5%;
    }
}

/* キャンペーン　shingle-shop side
---------------------- */
.shopInfo__aside .campaign{
    padding: 20px;
}
.shopInfo__aside .campaign dd{
    padding-left:.5em;
    padding-right: 1em;
}
.shopInfo__aside .campaign h3{
    font-size: 13px;
    font-size: 1.3rem;
    color: #10509f;
    text-decoration: underline;
}
.shopInfo__aside .campaign p{
    font-size: 12px;
    font-size: 1.2rem;
}
.shopInfo__aside .campaign .wrap-size{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: 100%;
}
.shopInfo__aside .campaign .wrap-size > a{
    width: 50%;
    color: #333;
}
.shopInfo__aside .campaign .wrap-size > a dl{
    width: 100%;
    padding-bottom: 6%;
}

/* tablet-pc */
@media (min-width:768px){
    .shopInfo__aside .campaign .wrap-size > a{
        width: 100%;
    }
    .shopInfo__aside .campaign dd{
        padding-left: 1em;
    }
    .shopInfo__aside .campaign .wrap-size > a dt{
        width: 14%;
    }
}

/* shingle-shop side
---------------------- */
.shopInfo__aside .sns a{
    display: block;
    margin-bottom: 5px;
}


/* 店頭イベント情報
---------------------- */
.shopEvent{
    padding: 3%;
/*    margin-top: -20px;*/
/*    margin-bottom: 10px;*/
    background: #f9f7eb;
    position: relative;

/*
    padding: 30px 5px 0;
    border-top:1px solid #333;
*/
}
.shopEvent h4{
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold;
    position: relative;
    z-index: 1;
}
.shopEvent h4 > span {
    display: inline-block;
    padding-right: 1em;
    background: #f7f5ea;
    color: #333;
}
.shopEvent h4::before {
    display: block;
    content: "";
    margin-top: -2px;
    width: 100%;
    background: #333;
    height: 1px;
    position: absolute;
    top: 50%;
    z-index: -1;
}

.article-shopevent{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.article-shopevent:not(:nth-of-type(1)){
    border-top: 1px dotted #ccc;
    padding-top: 20px;
}

.article-shopevent_title{
    margin: 0 0 .6em;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    color: #1b50a1;
}
.article-shopevent_date{
    margin-bottom: .3em;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: bold;
}
.article-shopevent_desription{
    font-size: 13px;
    font-size: 1.3rem;
}
a.article-shopevent_link{
    text-decoration: underline;
    color: #333;
}
.article-shopevent_figure{
    margin: 0 auto;
    width: 100%;
}
.article-shopevent_figure img{
    display: block;
    padding: 5%;
    margin: 0 auto;
    max-width: 60%;
    height: auto;
}

/* tablet-pc */
@media (min-width:768px){
    .article-shopevent{
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        padding: 20px 0;
    }
    .article-shopevent_txt{
        width: 100%;
    }
    .article-shopevent.has-figure .article-shopevent_txt{
        width: 60%;
    }

    .article-shopevent_title{
/*        margin-top: .8em;*/
    }
    .article-shopevent_title{
        font-size: 18px;
        font-size: 1.8rem;
    }
    .article-shopevent_date{
        font-size: 15px;
        font-size: 1.5rem;
    }
    .article-shopevent_figure{
        padding-left: 2%;
        width: 50%;
    }
    .article-shopevent_figure img{
        padding: 0;
        width: 100%;
        max-width: 100%;
        height: auto;
    }
}

/* bnr
---------------------- */
.shopInfo__aside .bnr a > span{
    display: block;
    margin-bottom: 20px;
    text-align: center;
    background: #0087cd;
    line-height: 1;
    padding: .5em;
    color: #fff;
}

/* ================================================================

	お問い合わせ

================================================================ */
.inquirySec{
    margin-top: 3rem;
}
.inquirySec h3{
    text-align: center;
    margin-bottom: 1.5rem;
}
.inquirySec p{
    margin-bottom: 2rem;
    margin-top: 1rem;
}

.inquirySec .mail dt{
    display: none;
}
.inquirySec .mail dd{
    margin-top: 1rem;
}
.inquirySec .shops a{
    text-decoration: underline;
    color: #333;
}
.inqInfo{
    border: 5px solid #ccc;
    text-align: center;
    padding: 1rem 2rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.5rem;
    font-weight: bold;
    width: 80%;
    margin: 1rem auto;
}
@media (min-width:768px){
    .inqDetail>div{
        width: 50%;
        float: left;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 5%;
    }
    .inquirySec .mail dt{
        display: block;
    }
    .inquirySec dt{
        margin-top: 0.8rem;
        font-weight: bold;
    }
    .inquirySec .mail dd{
        margin-top: 0rem;
    }

}


/* ================================================================

	ニュース詳細

================================================================ */
.newsContent{
    padding: 1em;
}

/* h
---------------------- */
.newsContent__title{
    margin-bottom: 2em;
    font-size: 16px;
    font-size: 1.6rem;
}
.newsContent__title [class^="icn-"]{
    display: block;
    padding: .5em 1em;
    margin: 0 1em .3em 0;
    font-size: 10px;
    font-size: 1.0rem;
    color: #fff;
    position: relative;
    top: -2px;
    float: left;

}
.newsContent__title .icn-newShop{ background-color: #0099ff; }
.newsContent__title .icn-topics{ background-color: #66cc33;}

.newsContent__titleTxt{
    display: block;
    overflow: hidden;
    clear: both;
}

/* tablet-pc */
@media (min-width:768px){
    .newsContent__titleTxt{
        clear: none;
    }
}

/* body
---------------------- */
.newsContent__body p{
    margin: 2em 0;
}

/* body > img
---------------------- */
.newsContent__body .aligncenter{
    display: block;
    margin: 0 auto;
}
.newsContent__body .alignleft{
    margin: 0 2em 2em 0;
    float: left;
}
.newsContent__body .alignright{
    margin: 0 0 2em 2em;
    float: right;
}

/* body > hr 回り込み解除用
---------------------- */
.newsContent__body hr{
    clear: both;
/*    visibility: hidden;*/
}

/* 投稿日
---------------------- */
.newsContent__date{
    display: block;
    text-align: right;
}
.newsContent__date::before{
    display: inline-block;
    content: "";
    width: 2em;
    height: 1px;
    margin-right: 10px;
    background: #999;
    vertical-align: 4px;
}

.newsContent__body .btn-back{
    display: block;
    width: 80%;
    max-width: 400px;
    margin: 2em auto;
    padding: 1em;
    border: 3px solid transparent;
    background-color: #efefef;
    text-align: center;
    text-decoration: none;
    color: #333;
    font-size: 1.5rem;
    font-weight: bold;
    border-radius: 10rem;
    line-height: 1;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}
.newsContent__body .btn-back:hover{
    background: #ccc;
}


/* ================================

.checkTable

================================ */
.checkTable{
    margin: 0 auto 100px;
}
.checkTable td {
    padding:.6em;
    border: 1px solid #ccc;
    font-size: 12px;
}
.checkTable img{
    width: 70px;
    height: auto;
}
.checkTable .btn{
    display: block;
    padding: 1em 1.4em;
    font-size: 10px;
    line-height: 0;
    background: #0d4e9f;
    border-radius: 3px;
    color: #fff;
    text-align: center;
}
.checkTable .btn{
    margin-top: 10px;
}
.checkTable .is-error{
    color: #c8161d;
    font-weight: bold;
}

/* btn-check
---------------------- */
.btn-check{
    display: inline-block;
    margin: 2% 1%;
    padding: 1.4em 2em;
    font-size: 10px;
    line-height: 0;
    background: #0d4e9f;
    border-radius: 3px;
    color: #fff;
    text-align: center;
}

/* check
---------------------- */
.checkTable[class*="check"] tr:nth-of-type(1){
    display: table-row;
}
.check-error_rakuten tr:not(.is-error_rakuten),
.check-error_images tr:not(.is-error_image){
    display: none;
}


/* ================================

    .tabControll

================================ */
.tabControll{
    display: table;
    table-layout: fixed;
    width: 100%;
    margin-bottom: 10px;
}
.tabControll > *{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    padding: 1em;
    color: #fff;
    background: #ccc;
}
.tabControll > *:not(:first-child){
    border-left: 1px solid #fff;
}
.tabControll > *:not(.is-current):hover{
    opacity: .4;
}

.tabControll a[class*="shopctg-"].is-current,
.tabControll a[class*="shopctg-"]:hover{ background: #10509f; }
.tabControll a.shopctg-twoone.is-current,
.tabControll a.shopctg-twoone:hover{ background: #c8161d; }

/* tablet-pc */
@media (min-width:768px){
    .tabControll{margin-bottom: 20px;}
}



/* ================================

.shopAreaList__map

================================ */
.shopAreaList__map{
    margin: 4% 0;
    background: #d0d5dd;
    position: relative;
    display: none;
}
.shopAreaList__map > ul{
    width: 10em;
    position: absolute;
}
.shopAreaList__map li{
    width: 5em;
    float: left;
    border: 3px solid transparent;
    text-align: center;
}
.shopAreaList__map a{
    display: block;
    background: #e98725;
    color: #fff;
    padding: .6em .3em;
    border-radius: 3px;
}
.shopAreaList__map a:not(.disabled):hover{
    background: #bf650c;
}
.shopAreaList__map a.disabled{
    background: #a9a9a9;
    color: #fff;
    cursor: default;
}

/*
.map-tohoku a,
.map-kanto a { background-color: #1b50a1;}
.map-tohoku a:not(.disabled):hover,
.map-kanto a:not(.disabled):hover { background-color: #0b2a50;}
*/

.map-chugoku {
    top: 21%;
    left: 13%;
}
.map-chubu {
    top: 4%;
    left: 37%;
}
.map-kyushu {
    top: 56%;
    left: 6px;
}
.map-shikoku {
    top: 77%;
    right: 49%;
}
.map-tohoku {
    top: 26%;
    right: 6px;
}
.map-kansai {
    top: 60%;
    right: 25%;
}
.map-kanto {
    top: 60%;
    right: 6px;
}
/* tablet-pc */
@media (min-width:768px){
    .shopAreaList__map{
        display: block;
    }

    .shopAreaList__map > ul{
        width: 23%;
    }
    .shopAreaList__map li{
        width: 50%;
    }
    .shopAreaList__map a{
        font-size: 12px;
        font-size: 1.2rem;
    }
}

/* tablet-pc */
@media (min-width:940px){


    .shopAreaList__map > ul{
        width: 11em;
    }
    .shopAreaList__map li{
        width: 5.4em;
    }
    .shopAreaList__map a{
        font-size: 13px;
        font-size: 1.3rem;
    }

    .map-chugoku {
        top: 172px;
        left: 90px;
    }
    .map-chubu {
        top: 50px;
        left: 238px;
    }
    .map-kyushu {
        top: 320px;
        left: 14px;
    }
    .map-shikoku {
        top: 440px;
        right: 300px;
    }
    .map-tohoku {
        top: 130px;
        right: 10px;
    }
    .map-kansai {
        top: 360px;
        right: 155px;
    }
    .map-kanto {
        top: 280px;
        right: 10px;
    }
}

/* ================================
categoryNote
================================ */
.categoryNote{
    font-size: 11px;
    font-size: 1.1rem;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;

}
.categoryNote > p:not(:first-child)::before{
    display: inline-block;
    content: "/";
    padding: 0 1em;

}



/*	nav-scroll
---------------------- */
.nav-scroll{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 3em;
}
.nav-scroll a{
    display: block;
    padding: .5em .4em .2em .2em;
    margin: 0 .6em;
    width: calc(100%/6);
    border-bottom: 1px solid #ccc;
    color: #333;
    outline: none;
}
.nav-scroll a:hover{
    border-color: #333;
}
.nav-scroll a::after{
    display: inline-block;
    content: "";
    width: .6em;
    height: .6em;
    margin-left: .6em;
    border-left: 1px solid #333;
    border-bottom: 1px solid #333;
    position: relative;
    top: -.2em;
    transform: rotate(-45deg);
}

@media (min-width:768px){
    .nav-scroll a{
    width: auto;
    }

}