@charset "UTF-8";

.ReservableStore{
    width:100%;
    margin-top:-30px;
    padding-top:30px;
}
.ReservableStore .ttl01{
    background-color:#009B96;
    color:#fff;
    text-align:center;
    font-size:22px;
    padding:12px 0;
}
.ReservableStore .ttl01 b{
    display:block;
    color:#fff;
    text-align:center;
    font-size:34px;
    font-weight:600;
}
/* --- 店舗リスト部分 --- */
.accordionSpLs {
    width:600px; 
    margin:50px auto 70px auto; 
    padding:0; 
    font-size:14px;
}
.accordionSpLs dt {
    background:#23827f url(../_img_bg/circle_arrow_down.png) 98% center no-repeat;
    background-size:25px 25px;
    padding:5px;
    font-size:20px;
    text-align:center;
    font-weight:550;
    margin-bottom:15px;
    cursor:pointer;
    color:#fff;
}
dl.accordionSpLs dt.open {
    background:#23827f url(../_img_bg/circle_arrow_up.png) 98% center no-repeat;
    background-size:25px 25px;
}
dl.accordionSpLs dd { 
    padding:2px 25px 25px 25px;
    display:none;
}
dl.accordionSpLs dd ul{ 
    width:100%;
    list-style-type:none;
}
dl.accordionSpLs dd li{
    -o-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width:25%;
    min-height:21px;
    padding:5px 0;
    font-size:18px;
    font-weight:normal;
    color:#999;
    text-align:left;
    float:left;
}
dl.accordionSpLs dd:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
dl.accordionSpLs dd li a{
    padding:3px 2em 3px 0;
    background: url(../_img_bg/circle_arrow_right.png) no-repeat right center;
    background-size:20px 20px;
    font-weight:normal;
}
dl.accordionSpLs dd li a:link {color: #1a1a1a;text-decoration: none;}
dl.accordionSpLs dd li a:visited {color: #1a1a1a;text-decoration: none;}
dl.accordionSpLs dd li a:hover {
    color: #1a1a1a;text-decoration: none;
    background: url(../_img_bg/circle_arrow_hover.png) no-repeat right center;
    background-size:20px 20px;
    opacity:0.7;
    transition: 0.2s ease-in-out;
}

/* ------- モーダル ------- */
#backMaskBase {
	background: #000;
 	display: none;
	height: 100%;
	left: 0px;
	-moz-opacity: 0.7;
	filter: alpha(opacity=7);
    opacity: 0.7;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 9990;
}
#modalWin {
	display: none;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	height: 0;
    position: relative;
	width: 100%;
	z-index: 9991;
}
#modalContent {
    display:none;
	position: relative;
	background-color: #f7f7f7;
	box-shadow: 3px 3px 8px #000;
	-moz-box-shadow: 3px 3px 8px #000;
	-webkit-box-shadow: 3px 3px 8px #000;
	box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	min-width: 730px;
    max-width: 770px;
	height: auto;
    min-height:160px;
    max-height:80vh;
    overflow:auto;
	margin: 0 auto;
	padding: 0 0 25px 0;
	z-index: 9992;
	text-align: center;
	color: #000;
}
#modalContent .closeBtn{
    position:absolute;
    top:2px;
    right:2px;
    width:27px;
    height:27px;
    background-color:#777;
    /* border-radius: 20px; */
    cursor:pointer;
    z-index:999;
    transition: all 150ms 0s ease;
    border:1px solid #eee;
}
#modalContent .closeBtn:hover{
    background-color:#bbb;
    transition: all 300ms 0s ease;
}
#modalContent .closeBtn div{
    display: inline-block;
    position: relative;
    margin: 5px 0 0 0;
    padding: 0;
    width: 2px;
    height: 17px;
    background: #fff;
    transform: rotate(45deg);
}
#modalContent .closeBtn div:before{
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: -7px;
    width: 16px;
    height: 2px;
    margin-top: -1px;
    background: #fff;
}
#posspin{
    display:none;
    width:50px;
    height:50px;
    text-align:center;
    margin:170px auto 0 auto;
}
.modalinner{
    text-align:left;
    padding:0 0 30px 0;
}
.modalinner .err{
    font-size:18px;
    color:#666;
    padding:2em;
}
.modalinner .ttlMdl{
    background-color:#d7d5d3;
    font-size:20px;
    color:#000;
    text-align:center;
    padding:7px;
}
.modalinner .shopls{
    margin:15px 0;
}
.modalinner .shopls li{
    list-style-type: none;
    -o-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width:50%;
    padding:10px 25px;
    font-size:16px;
    line-height:1.3;
    font-weight:700;
    color:#a53;
    float:left;
} 
.modalinner .shopls li a{
    display:block;
    padding:3px 30px 3px 0;
    border-bottom:1px dotted #777;
    height:auto;
    word-spacing:100%;
}

.modalinner .shopls li a:link, .modalinner .shopls li a:visited{
    background: url(../_img_bg/icon_right_arw1.svg) no-repeat right center;
}
.modalinner .shopls li a:hover, .modalinner .shopls li a:active{
    background: url(../_img_bg/icon_right_arw2.svg) no-repeat right center;
    color:#ff7700;
}

/* --- スマホ --- */
@media screen and (max-width:767px){
    .ReservableStore .ttl01{
        font-size:4.3vw;
        padding:0.7em 0;
        line-height:1.4;
    }
    .ReservableStore .ttl01 b{
        font-size:6.4vw;
    }
    .accordionSpLs {
        width:92%; 
        margin:2em auto 3em auto; 
        padding:0; 
        font-size:5vw;
    }
    .accordionSpLs dt {
        background-size:1.1em 1.1em;
        font-size:5vw;
        margin-bottom:3vh;
    }
    dl.accordionSpLs dt.open {
        background-size:1.1em 1.1em;
    }
    dl.accordionSpLs dd { 
        padding:0 2vh 4vh 2vh;
    }
    dl.accordionSpLs dd li{;
        width:50%;
        min-height:8.8vh;
        padding:1vh 0;
        font-size:5vw;
        float:left;
    }
    dl.accordionSpLs dd li a{
        padding:1vh 2em 0 0;
        background-size:1em 1em;
    }
    dl.accordionSpLs dd li a:hover {
        background-size:1em 1em;
    }
    /* ------- /モーダルSP ------- */
    #modalContent {
        min-width: auto;
        max-width: auto;
        width:85%;
        min-height:auto;
        padding: 0 0 3vh 0;
    }
    .modalinner{
        text-align:left;
        padding:0 0 3vh 0;
    }
    .modalinner .ttlMdl{
        font-size:6vw;
        padding:7px;
    }
    .modalinner .shopls{
        margin:2vh 0;
    }
    .modalinner .shopls li{
        width:92%;
        margin: 0 auto;
        padding:2vh 3vw;
        font-size:4.3vw;
        line-height:1.3;
        float:none;
    } 
    .modalinner .shopls li a{
        padding:0 2em 1vh 0;
    }
    .fontsmall{
        font-size:100%;
        letter-spacing:normal;
        white-space:normal;
        overflow:visible;
        word-spacing:50%;
    }
    .spPdBtm{
        padding-bottom:1em;
    }
}/* スマホ */