@charset "utf-8";

@import '/ginza-square/common/css/allcss';
@import '/ginza-square/common/css/styles.css';



/* 銀座スクエアとは ----------------------------------------------------------*/
#access,
#guide,
#service{
    padding-top: 130px;
    margin-top:-130px;
}
/*#access .access_inner,
#guide .guide_inner,
#service .service_inner{    
    padding-top: 130px;
    margin-top:-130px;
}*/

.service_inner{
    margin-top: 50px;
}

@media (max-width: 580px) {
#access,
#guide,
#service{
    padding-top: 30px;
    margin-top:-30px;
}
#access .access_inner,
#guide .guide_inner,
#service .service_inner{    
    /*padding-top: 30px;*/
    margin-top:30px;
}
}

.shopguide,
.service{
    width: 840px;
    text-align: center;
    margin: 0px auto;
}
.service-ac {
    /*max-width: 840px;*/
    margin-bottom: 7px;
    border-bottom: 2px solid #d0d0d0;
}

.service-ac:first-child{
    border-top:2px solid #d0d0d0;
}


.service-ac summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em;
    color: #7E7F80;
    font-weight: 500;
    cursor: pointer;
    font-size: 2.0rem;
}

.service-ac summary::-webkit-details-marker {
    display: none;
}

.service-ac summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #7E7F80;
    border-right: 3px solid #7E7F80;
    content: '';
    transition: transform .3s;
}

.service-ac[open] summary::after {
    transform: rotate(225deg);
}

.service-ac p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 2em 1.5em;
    color: #7E7F80;
    transition: transform .5s, opacity .5s;
}

.service-ac[open] p {
    transform: none;
    opacity: 1;
}

.service .service-ac dl{
    text-align: left;
    margin-top: 0px;
    padding: 0 4em;
    background-color: #F6F6F6;
}
.service .service-ac dt{
font-size: 2.0rem;
color:  #7E7F80;
    padding-top: 1em;
}
.service .service-ac dt::before{
content: "・" ;
}
.service .service-ac dd{
    border-bottom: solid 1px #FFF;
    padding-bottom: 1em;
}
.service .service-ac dd:last-child{
    border-bottom:none;
}


@media (max-width: 580px) {
  .shopguide,
  .service{
  width:100%;
  margin:0 0rem;
  }
    .service-ac {
     /*margin: 0 2rem;*/
    }
  .service-ac summary {
  padding: 1em 1em;
  font-weight: 500;
  font-size: 1.6rem;
      text-align: left;
  }
  .service .service-ac dl{
  padding: 0 2em;
  }
  .service .service-ac dt{
  font-size: 1.4rem;
  padding-top: 1em;
  }
  .service .service-ac dd{
  font-size: 1.2rem;
  }
  }

/*ショップガイド*/
.guide_contener{
    display: flex;
    flex-wrap: wrap;
    padding: 25px;
    justify-content: space-between;
    margin-bottom: 10px;
}

.guide_contener .floor_no{
    width: 8%;
    /*margin-right: 2em;*/
}
.guide_contener .floor_detail{
    width: 80%;
    text-align: left;
}
.guide_contener h4{
    font-size: 2.0rem;
}
.guide_contener p{
    font-size: 1.6rem;
    margin-top: 0;
}

.guide_contener ul{
    margin-top: 0;
}

.guide_contener li.side_row{
    display: inline-block;
    margin-right: 20px;
}

.guide_contener .floor_rest{
    width: 5%;
    position: relative;
}

.guide_contener .floor_rest img{
    position: absolute;
    bottom: 0px;
    right: 0px;
}

.guide_contener .floor_tax{
    width: 15%;
    position: relative;
}
.guide_contener .floor_tax img{
        position: absolute;
    bottom: 0px;
    right: 0px;
    border: 1px solid #d0d0d0;
}

.guide_contener .floor_rest_02{
    width: 15%;
    position: relative;
}
.guide_contener .floor_rest_02 img{
    position: absolute;
    bottom: 0px;
    right: 0px;
}

.guide_contener .floor_detail_02{
    width: 70%;
    text-align: left;
}
 .guide_contener .floor_detail_03{
    width: 70%;
    text-align: left;
}    
.f2_g,
.f10{
    border: solid 1px #7E7F80;
}

.f8,
.f9{
    border: solid 1px #61BD9A;
}

.f6,
.f5,
.f4{
    border: solid 1px #F19980;
}

.shop{
    border: solid 1px #579BC2;
}

@media (max-width: 580px) {
    .guide_contener{
    padding: 15px;
    margin: 0rem 0rem 1.5rem 0rem;
}
    .guide_contener h4{
    font-size: 1.5rem;
        line-height: 1.5em;
}
    .guide_contener ul li,
    .guide_contener p{
    font-size: 1.2rem;
}
    .guide_contener .floor_rest{
    width: 8%;
}
    .guide_contener .floor_detail_02{
    width: 64%;
}
    .guide_contener .floor_rest_02{
    width: 23%;
}
    .guide_contener .floor_detail_03{
    width: 68%;
}    
.guide_contener .floor_tax{
    width: 18%;
}
}


#access .mapguid{
	width: 100%;
	margin: 0 auto;
	text-align: center;
}


#access .map .border-box{
	margin-bottom:30px;
}

#access .picture img{
	margin-left:25px;
	display: inline-block;
}


.address,
.open-time{
	margin: 0px auto 20px;
    /*width: 550px;
    display: inline-block;*/
    vertical-align: top;
}

#access dt{
    font-size: 1.8rem;
    margin-bottom: 10px;
}

#access .map_lang,
#access .map{
	width: 520px;
	display: inline-block;
}


#access .map img{
    vertical-align: top;
    border: solid 1px  #989898;
    padding:20px;
    margin-bottom: 10px;
}

#access .map_lang img{
    vertical-align: top;
    border: solid 1px  #989898;
    padding: 20px 20px;
    margin-bottom: 10px;
}



#access .discri {
    width: 550px;
    display: inline-block;
    margin-left: 60px;
    vertical-align: top;
    text-align: left;
}
#access p{
    margin-top: 0;
}

@media (max-width: 580px) {
#access .map_lang,
#access .map{
	width: 90%;
	display: block;
}
    #access{
       /* padding: 0 2rem;*/
    }
#access .map{
	width: 100%;
	display:block;
}
    #access .map img{
        width: 90%;
}
    #access .discri {
	width: 100%;
    display: inline-block;
    margin-left: 00px;
    vertical-align: top;
    text-align: left;
}
    }