@charset "UTF-8";

/*==========================    
common
==========================*/
@import url("https://use.typekit.net/iyj3bcd.css");
/* html {font-size: 62.5%;} */
#shopListMain table,tbody,dl,tr,td,dt,dd,
#shopDetailMain table,tbody,dl,tr,td,dt,dd{display: block;}

/*==========================
breadcrumb
==========================*/
.breadcrumbBlock {background-color: #fff;}
#breadcrumb {display: flex;align-items: center;width: 100%;margin: 0 auto;}
#breadcrumb li {font-family: 'Hiragino Kaku Gothic ProN','Hiragino Sans', Meiryo, sans-serif !important;/* color: #CECECE; */color: #1C1C1C;letter-spacing: .05em;}
#breadcrumb li.currentPage {color: #1C1C1C;}

/*==========================
ShopList
==========================*/
#shopListMain .brandTags {
    display: none;
}

#shopListMain .shopList_title {
    color: #1c1c1c;
    font-family: minion-pro, serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: .05em;
    text-align: center;
}

#shopListMain .areaTagsBlock .areaTags li {
    position: relative;
    color: #1C1C1C;
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN','Hiragino Sans', Meiryo, sans-serif;
    letter-spacing: .05em;
}
#shopListMain .areaTagsBlock .areaTags li.active {
    color: #022363;
    font-weight: 600;
}

#shopListMain #areaTxt p {
    display: flex;
    align-items: center;
    color: #1c1c1c;
    font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
    line-height: 1;
    letter-spacing: .05em;
}
#shopListMain #areaTxt p span {
    color: #707070;
    font-family: minion-pro, serif;
    font-weight: 400;
    font-style: normal;
    line-height: 1;
    letter-spacing: .05em;
}

#shopListMain #container .realShopList {
    margin: 0 !important;
    border-top: 1px solid #EDEDED;
    border-bottom: 1px solid #EDEDED;
}
#shopListMain #container .shopDetail {
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN','Hiragino Sans', Meiryo, sans-serif;
    letter-spacing: .05em;
}

#shopListMain .shopDetail + .shopDetail {
    border-top: 1px solid #EDEDED;
}
#shopListMain .realShopName,
#shopListMain .shopDetail .realShopAddress p {
    line-height: 25px;
}
#shopListMain .shopDetail .arrowNext:after {
    border-right: 1px solid #575757;
    border-bottom: 1px solid #575757;
}

#shopListMain .stock_shopListMain {
    position: relative;
}

#shopListMain .stock_shopListMain .stockExText {
    position: absolute;
    top: 0;
    right: 0;
}

#shopListMain .stock_shopListMain .stockExText span {
    color: #6585B2;
}

#shopListMain .productStockInfo_Main {
    display: flex;
    align-items: center;
}

#shopListMain .productStockInfo_Main > img {
    border: 1px solid #EDEDED;
}

#shopListMain .productStockInfo_Main ul {
    line-height: 25px;
}
#shopListMain .productStockInfo_Main ul li span {
    font-weight: 600;
}

#shopListMain .productStockInfoAttention {
    line-height: 25px;
}

#shopListMain .areaName {
    font-weight: 600;
}

#shopListMain .stockJudgeMain {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
#shopListMain .stockJudgeMain .stockJudgeBlock {
    letter-spacing: .05em;
}
#shopListMain .stockJudgeMain .stockJudgeBlock .stockJudge_Mark {
    display: inline-block;
    color: #6585B2;
}
#shopListMain .stockJudgeMain .stockJudgeBlock .stockJudge_Size {
    display: inline-block;
}

/*==========================
shopDetail
==========================*/
#shopDetailMain .shopDetail {
    display: block;
}

#shopDetailMain .shopDetail_title {
    color: #1c1c1c;
    font-family: minion-pro, serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: .05em;
    text-align: center;
}
#shopDetailMain .shopDetail_brandName {
    color: #1c1c1c;
    font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
    letter-spacing: .05em;
    text-align: center;
}

#shopDetailMain .shopImgList li {
    background-color: #EDEDED;
    border: 1px solid #EDEDED;
}

#shopDetailMain .leadText {
    margin-top: 3rem;
    font-size: 1.5rem;
    line-height: 2.4rem;
    text-align: center;
    word-break: break-all;
}

#shopDetailMain .shopDetail .shopMap {
    margin: 0;
}

#shopDetailMain .shop_contents {
    display: flex;
}
#shopDetailMain .shopName {
    font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
    line-height: 1;
    letter-spacing: .05em;
}
#shopDetailMain .shop_contents p {
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN','Hiragino Sans', Meiryo, sans-serif;
    line-height: 1;    
}
#shopDetailMain .shop_contents .shopAttentionTxt {
    display: block;
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN','Hiragino Sans', Meiryo, sans-serif;
    line-height: 1.7rem;
}

#shopDetailMain .routeGuidance {
    border-top: 1px solid #EDEDED;
}
#shopDetailMain .routeGuidance p {
    font-family: 'Hiragino Kaku Gothic ProN','Hiragino Sans', Meiryo, sans-serif;
    line-height: 1.7;
    letter-spacing: .05em;
}

#shopDetailMain .noticeByShop {
    background-color: #EFF6FC;
}
#shopDetailMain .noticeByShop .noticeByShop_title {
    font-family: 'Hiragino Kaku Gothic ProN','Hiragino Sans', Meiryo, sans-serif;
    font-weight: 600;
    white-space: nowrap;
}
#shopDetailMain .noticeByShop p {
    font-family: 'Hiragino Kaku Gothic ProN','Hiragino Sans', Meiryo, sans-serif;
    line-height: 1.7;
    letter-spacing: .05em;
}

#shopDetailMain .shareBtn:hover {
    opacity: .8;
    cursor: pointer;
}
#shopDetailMain .shareBtn p {
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN','Hiragino Sans', Meiryo, sans-serif;
    letter-spacing: .05em;
}

#shopDetailMain .pageBackBtn a {
    display: block;
    color: #022363;
    font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
    letter-spacing: .05em;
    border: 1px solid #022363;
    text-align: center;
}

/*************************************SP****************************************/
@media screen and ( max-width:767px ) {
    /*==========================    
    common
    ==========================*/
    #shopListMain .pcOnly {display: none !important;}
    #shopListMain, #shopDetailMain {padding: 0 0 calc(110*(100vw/750));}

    /*==========================
    breadcrumb
    ==========================*/
    #breadcrumb {padding: calc(28*(100vw/750)) calc(20*(100vw/750));}
    #breadcrumb li {font-size: calc(22*(100vw/750));}
    #breadcrumb li span {margin: 0 calc(12*(100vw/750));}

    /*==========================
    ShopList
    ==========================*/
    #shopListMain .shopList_title {
        margin-top: calc(60*(100vw/750));
        font-size: calc(56*(100vw/750));
    }

    #shopListMain .shopListPageLinkBlock {
        position: relative;
        width: calc(710*(100vw/750));
        height: calc(90*(100vw/750));
        margin: calc(80*(100vw/750)) auto 0;
        color: #1C1C1C;
        font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
        font-size: calc(32*(100vw/750));
        letter-spacing: .05em;
        text-align: center;
        border: 1px solid #CECECE;
    }
    #shopListMain .shopListPageLinkBlock::before {
        content: '';
        display: block;
        position: absolute;
        top: calc(30*(100vw/750));
        right: calc(36*(100vw/750));
        width: calc(18*(100vw/750));
        height: calc(18*(100vw/750));
        border-left: 1px solid #575757;
        border-bottom: 1px solid #575757;
        transform: rotate(-45deg);
    }
    #shopListMain .shopListPageLinkBlock select {
        width: 100%;
        height: 100%;
				padding-left: calc(20 * (100vw / 750));
    }

    #shopDetailMain .leadText {
        width: calc(710*(100vw/750));
        margin: calc(60*(100vw/750)) auto 0;
        font-size: calc(24*(100vw/750));
        line-height: 19px;
        text-align: center;
        word-break: break-all;
    }
    
    #shopListMain .areaTagsBlock {
        overflow-x: auto;
        height: calc(104*(100vw/750));
        margin-top: calc(40*(100vw/750));
    }
    #shopListMain .areaTagsBlock .areaTags {
        display: flex;
        width: calc(1400*(100vw/750));
        padding-left: calc(20*(100vw/750));
    }
    #shopListMain .areaTagsBlock .areaTags li {
        display: flex;
        align-items: center;
        margin-right: calc(20*(100vw/750));
        padding: calc(20*(100vw/750)) calc(15*(100vw/750));
        color: #B9B9B9;
        font-size: calc(30*(100vw/750));
    }
    #shopListMain .areaTagsBlock .areaTags li:last-of-type {
        margin-right: 0;
    }
    #shopListMain .areaTagsBlock .areaTags li.active {
        font-weight: bold;
        border-bottom: 3px solid #022363;
    }

    #shopListMain #container {
        width: calc(710*(100vw/750));
        margin: calc(42*(100vw/750)) auto 0;
    }

    #shopListMain #areaTxt p {
        margin: calc(40*(100vw/750)) 0;
        font-size: calc(40*(100vw/750));
    }
    #shopListMain #areaTxt p span {
        margin-left: calc(14*(100vw/750));
        font-size: calc(24*(100vw/750));
    }

    #shopListMain #container .realShopList a {
        flex-direction: column;
        padding: calc(30*(100vw/750)) 0 !important;
    }
    #shopListMain #container .shopDetail {
        font-size: calc(26*(100vw/750));
    }
    #shopListMain .shopDetail .realShopName {
        font-weight: bold;
    }
    #shopListMain .shopDetail .realShopName,
    #shopListMain .shopDetail .realShopAddress {
        width: 100%;
        padding: 0 calc(30*(100vw/750)) 0 0;
    }
    #shopListMain .shopDetail .arrowNext:after {
        top: 46%;
        right: 0;
    }

    #shopListMain .stock_shopListMain .stockExText {
        font-size: calc(24*(100vw/750));
    }
    #shopListMain .stock_shopListMain .stockExText span {
        font-size: calc(26*(100vw/750));
    }
    
    #shopListMain .productStockInfo_Main > img {
        width: calc(300*(100vw/750));
        height: calc(300*(100vw/750));
        margin-right: calc(30*(100vw/750));
    }

    #shopListMain .productStockInfo_Main ul {
        font-size: calc(26*(100vw/750));
    }

    #shopListMain .productStockInfoAttention {
        margin-top: calc(20*(100vw/750));
        font-size: calc(26*(100vw/750));
    }
    
    #shopListMain .areaName {
        margin: calc(60*(100vw/750)) 0 calc(30*(100vw/750));
        font-size: calc(30*(100vw/750));
    }

    #shopListMain .stockJudgeMain {
        justify-content: end;
        width: calc(280*(100vw/750));
        padding: calc(30*(100vw/750)) 0;
    }
    #shopListMain .stockJudgeMain .stockJudgeBlock {
        font-size: calc(24*(100vw/750));
    }
    #shopListMain .stockJudgeMain .stockJudgeBlock:nth-of-type(2n) {
        margin-left: calc(20*(100vw/750));
    }
    #shopListMain .stockJudgeMain .stockJudgeBlock .stockJudge_Mark {
        font-size: calc(26*(100vw/750));
    }

    /*==========================
    shopDetail
    ==========================*/
    #shopDetailMain .shopDetail_title {
        margin-top: calc(60*(100vw/750));
        font-size: calc(56*(100vw/750));
    }
    #shopDetailMain .shopDetail_brandName {
        margin-top: calc(20*(100vw/750));
        font-size: calc(26*(100vw/750));
    }

    #shopDetailMain .shopImgList li {
        width: calc(710*(100vw/750));
        height: calc(472*(100vw/750));
        margin: calc(60*(100vw/750)) auto 0;
    }
    #shopDetailMain .shopImgList li:nth-of-type(n+2) {
        margin-top: calc(20*(100vw/750));
    }

    #shopDetailMain .shopDetail .shopInformation {
        display: flex;
        flex-direction: column-reverse;
        margin: calc(88*(100vw/750)) 0 0 0;
    }

    #shopDetailMain .shopInfoDetail {
        width: calc(710*(100vw/750));
        margin: 0 auto;
    }

    #shopDetailMain .shopName {
        margin-bottom: calc(30*(100vw/750));
        font-size: calc(40*(100vw/750));
    }
    #shopDetailMain .shop_contents {
        margin-bottom: calc(30*(100vw/750));
    }
    #shopDetailMain .shop_contents img {
        width: auto;
        margin-right: calc(30*(100vw/750));
    }
    #shopDetailMain .shop_Address img {
        height: calc(30*(100vw/750));
    }
    #shopDetailMain .shop_OpeningHours img,#shopDetailMain .shop_Tel img,
    #shopDetailMain .shop_Calendar img,#shopDetailMain .shop_Category img {
        height: calc(26*(100vw/750));
    }
    #shopDetailMain .shop_contents p {
        font-size: calc(26*(100vw/750));
    }
    #shopDetailMain .shop_contents .shopAttentionTxt {
        margin-top: calc(20*(100vw/750));
        font-size: calc(24*(100vw/750));
    }

    #shopDetailMain .routeGuidance {
        margin-top: calc(40*(100vw/750));
        padding-top: calc(40*(100vw/750));
    }
    #shopDetailMain .routeGuidance p {
        font-size: calc(26*(100vw/750));
    }

    #shopDetailMain .shopMapDetail {
        width: calc(750*(100vw/750));
        height: calc(400*(100vw/750));
        margin-top: calc(60*(100vw/750));
    }

    #shopDetailMain .noticeByShop {
        width: calc(710*(100vw/750));
        margin: calc(60*(100vw/750)) auto 0;
        padding: calc(80*(100vw/750)) calc(40*(100vw/750));
    }
    #shopDetailMain .noticeByShop .noticeByShop_title {
        padding-bottom: calc(40*(100vw/750));
        font-size: calc(30*(100vw/750));
        text-align: center;
    }
    #shopDetailMain .noticeByShop p {
        padding-top: calc(36*(100vw/750));
        font-size: calc(26*(100vw/750));
        border-top: 1px solid #707070;
    }

    #shopDetailMain .shareBtnMain {
        display: flex;
        justify-content: center;
        margin-top: calc(40*(100vw/750));
    }
    #shopDetailMain .shareBtn {
        margin: 0 calc(40*(100vw/750));
    }
    #shopDetailMain .shareBtn img {
        width: calc(80*(100vw/750));
        height: calc(80*(100vw/750));
        margin: 0 auto calc(20*(100vw/750));
    }
    #shopDetailMain .shareBtn p {
        font-size: calc(24*(100vw/750));
    }

    #shopDetailMain .pageBackBtn a {
        width: calc(460*(100vw/750));
        height: calc(90*(100vw/750));
        margin: calc(170*(100vw/750)) auto 0;
        font-size: calc(26*(100vw/750));
        line-height: calc(90*(100vw/750));
    }

}
/*************************************PC****************************************/
@media screen and (max-width: 1200px) and (min-width: 768px) {
    html {font-size: calc(10* (100vw / 1200)) !important;}
}
@media only screen and (min-width: 768px) {
    /*==========================    
    common
    ==========================*/
    #shopListMain .spOnly {display: none !important;}
    #shopListMain, #shopDetailMain {width: 100rem;margin: 0 auto;padding: 0 0 13rem;}

    /*==========================
    breadcrumb
    ==========================*/
    #breadcrumb {max-width: 120rem;padding: 1.15rem 0;}
    #breadcrumb li {font-size: 1.1rem;}
    #breadcrumb li span {margin: 0 .5rem;}

    /*==========================
    ShopList
    ==========================*/
    #shopListMain .shopList_title {
        margin: 5rem auto 4rem;
        font-size: 3.2rem;
    }

    #shopListMain .brandList_4c {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 0 auto 4rem;
    }
    #shopListMain .brandList_4c li {
        width: 100%;
        padding: 1.5rem 0;
        font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
        font-size: 1.6rem;
        letter-spacing: .05em;
        color: #B9B9B9;
        border-bottom: 3px solid #EDEDED;
        text-align: center;
    }

    #shopListMain #dvRealShopContents {
        display: flex;
    }
    
    #shopListMain .areaTagsBlock {
        width: 23rem;
    }
    #shopListMain .areaTagsBlock .areaTags li {
        padding-left: 1.5rem;
        font-size: 1.3rem;
        line-height: 2.8;
    }
    #shopListMain .areaTagsBlock .areaTags li::before {
        content: '';
        display: block;
        position: absolute;
        top: 1.5rem;
        left: 0;
        width: .5rem;
        height: .5rem;
        border-top: 1px solid #1C1C1C;
        border-right: 1px solid #1C1C1C;
        transform: rotate(45deg);
    }
    #shopListMain .areaTagsBlock .areaTags li.active::before {
        border-top: 1px solid #022363;
        border-right: 1px solid #022363;
    }

    #shopListMain #container {
        width: 100%;
    }

    #shopListMain #areaTxt p {
        margin-bottom: 2.5rem;
        font-size: 2rem;
    }
    #shopListMain #areaTxt p span {
        margin-left: 1rem;
        font-size: 1.3rem;
    }
    #shopListMain #container .shopDetail {
        font-size: 1.3rem;
    }
    #shopListMain #container .realShopList a {
        padding: 1.5rem 2rem 1.5rem 0 !important;
    }
    #shopListMain .shopDetail .realShopName {
        width: 15rem;
        margin-right: 2rem;
    }
    #shopListMain .shopDetail .realShopAddress {
        width: 72%;
        padding-right: 1rem;
    }
    #shopListMain .shopDetail .arrowNext:after {
        top: 44%;
    }

    #shopListMain .stock_shopListMain .stockExText {
        font-size: 1.2rem;
    }
    #shopListMain .stock_shopListMain .stockExText span {
        font-size: 1.3rem;
    }

    #shopListMain .productStockInfo_Main > img {
        width: 15rem;
        height: 15rem;
        margin-right: 3rem;
    }

    #shopListMain .productStockInfo_Main ul {
        font-size: 1.3rem;
    }

    #shopListMain .productStockInfoAttention {
        margin-top: 1rem;
        font-size: 1.3rem;
    }
    
    #shopListMain .areaName {
        margin: 3rem 0 1.5rem;
        font-size: 1.5rem;
    }
    
    #shopListMain .realShopList a {
        justify-content: start;
    }

    #shopListMain .stockJudgeMain {
        justify-content: end;
        width: 62%;
        padding: 1.5rem .5rem 1.5rem 0;
    }
    #shopListMain .stockJudgeMain .stockJudgeBlock {
        margin-right: 1rem;
        font-size: 1.2rem;
    }
    #shopListMain .stockJudgeMain .stockJudgeBlock .stockJudge_Mark {
        font-size: 1.3rem;
    }

    /*==========================
    shopDetail
    ==========================*/
    #shopDetailMain .shopDetail_title {
        margin-top: 5rem;
        font-size: 3.2rem;
    }
    #shopDetailMain .shopDetail_brandName {
        margin-top: 2rem;
        font-size: 1.3rem;
    }

    #shopDetailMain .shopImgList {
        display: flex;
        justify-content: center;
        /* flex-wrap: wrap; */
        margin-top: 4rem;
    }
    #shopDetailMain .shopImgList li {
        /* width: 49.5rem;
        height: 33rem; */
        width: 100%;
    }
    #shopDetailMain .shopImgList li:nth-of-type(2n) {
        margin-left: 1rem;
    }
    #shopDetailMain .shopImgList li:nth-of-type(n+3) {
        margin-top: 1rem;
    }

    #shopDetailMain .shopDetail .shopInformation {
        display: flex;
        justify-content: space-between;
        margin: 10rem 0 0 0;
    }

    #shopDetailMain .shopMapDetail {
        width: 46rem;
        height: 46rem;
    }

    #shopDetailMain .shopInfoDetail {
        width: 50rem;
    }

    #shopDetailMain .shopName {
        margin-bottom: 3rem;
        font-size: 2rem;
    }
    #shopDetailMain .shop_contents {
        display: flex;
        margin-bottom: 1.5rem;
    }
    #shopDetailMain .shop_contents img {
        width: auto;
        margin-right: 1.2rem;
    }
    #shopDetailMain .shop_Address img {
        height: 1.5rem;
    }
    #shopDetailMain .shop_OpeningHours img,#shopDetailMain .shop_Tel img,
    #shopDetailMain .shop_Calendar img,#shopDetailMain .shop_Category img {
        height: 1.2rem;
    }
    #shopDetailMain .shop_contents p {
        font-size: 1.3rem;
    }
    #shopDetailMain .shop_contents .shopAttentionTxt {
        margin-top: .8rem;
        font-size: 1.2rem;
        line-height: 1.7rem;
    }

    #shopDetailMain .routeGuidance {
        margin-top: 2.5rem;
        padding-top: 2.5rem;
    }
    #shopDetailMain .routeGuidance p {
        font-size: 1.3rem;
    }

    #shopDetailMain .noticeByShop {
        display: flex;
        align-items: center;
        margin-top: 3rem;
        padding: 3rem;
    }
    #shopDetailMain .noticeByShop .noticeByShop_title {
        padding-right: 2rem;
        font-size: 1.3rem;
    }
    #shopDetailMain .noticeByShop p {
        padding-left: 2rem;
        font-size: 1.3rem;
        border-left: 1px solid #707070;
    }

    #shopDetailMain .shareBtnMain {
        display: flex;
        justify-content: end;
    }
    #shopDetailMain .shareBtn {
        display: flex;
        align-items: center;
    }
    #shopDetailMain .shareBtnMain {
        margin-top: 1.5rem;
    }
    #shopDetailMain .shareByMail {
        margin-left: 2rem;
    }
    #shopDetailMain .shareBtn img {
        width: 3rem;
        height: 3rem;
        margin-right: .8rem;
    }
    #shopDetailMain .shareBtn p {
        font-size: 1.2rem;
    }

    #shopDetailMain .pageBackBtn a {
        width: 24rem;
        height: 4.4rem;
        margin: 7rem auto 0;
        font-size: 1.3rem;
        line-height: 4.4rem;
        transition: all 0.6s;
    }
    #shopDetailMain .pageBackBtn a:hover {
        background-color: #00235F;
        color: #fff;
        opacity: 1;
    }

}