@charset "utf-8";

/* basic layout */
#container{
  padding-top:125px;
  padding-bottom:25px;
  border-bottom:50px solid #F8F8F8;
}
section{
  width:1060px;
  margin:0 auto;
  padding:50px 0;
}
section p{
  margin-bottom:25px;
}
section ul.disc-list{margin-bottom:25px;}
section ul.disc-list li{
  list-style:disc outside;
  margin:0 0 10px 20px;
}
section ul.disc-list li strong{font-weight:500;}

section ol.decimal-list{margin-bottom:25px;}
section ol.decimal-list li{
  list-style:disc decimal;
  margin:0 0 10px 25px;
}

/* header */
#header{
  position:fixed;
  top:0;
  z-index:1000;
  width:100%;
  min-width:1240px;
  height:100px;
  background:rgba(255,255,255,0.95);
  border-bottom:1px solid rgba(0,0,0,0.1);
}
#header-inner{
  margin:0 30px;
  position:relative;
}
#header-inner #logo{
  width:165px; height:auto;
  position:absolute;
  top:20px; left:0;
}
#header-inner #fb{
  display:flex;
  height:24px;
  position:absolute;
  top:56px; right:20px;
}
#header-inner #fb img{
  width:24px; height:24px;
}
#header-inner #fb a{
  display:inline-block; vertical-align:top;
  margin-left:5px;
}
nav#global-nav ul{
  font-size:0; line-height:0;
  text-align:center;
  margin:0 auto;
  padding-top:65px;
}
nav#global-nav ul li{
  font-size:15px;
  line-height:15px;
  display:inline-block;
  vertical-align:top;
  margin:0 1em;
  position:relative;
}
nav#global-nav ul li a,
nav#global-nav ul li span{
  display:block;
  color:#201600;
  text-decoration:none;
  position:relative;
  cursor:pointer
}
nav#global-nav ul li a::before,
nav#global-nav ul li a::after,
nav#global-nav ul li span::before,
nav#global-nav ul li span::after{
  content:"";
  position:absolute;
  bottom:-1px;
  width:0%; height:1px;
  background:#201600;
  transition:0.1s;
}
nav#global-nav ul li a::before,
nav#global-nav ul li span::before{
  left:50%;
}
nav#global-nav ul li a::after,
nav#global-nav ul li span::after{
  right:50%;
}
nav#global-nav ul li a:hover::before,
nav#global-nav ul li a:hover::after,
nav#global-nav ul li span:hover::before,
nav#global-nav ul li span:hover::after{
  width:50%;
  transition:0.1s;
}

nav#global-nav ul li ul{
  font-size:0; line-height:0;
  text-align:center;
  margin:0 auto;
  padding-top:0px;
  border:1px solid #CCC;
  background:rgba(255,255,255,1);
  position:absolute;
  top:30px; left:50%;
  width:248px;
  margin-left:-124px;
}
nav#global-nav ul li ul::before{
  content:"▲";
  font-size:10px;
  line-height:10px;
  color:#CCC;
  position:absolute;
  top:-8px;
  left:50%;
  margin-left:-7px;
  transform:scale(1.4,1);
}
nav#global-nav ul li ul li{
  font-size:14px;
  line-height:36px;
  display:block !important;
  margin:0 !important;
}
nav#global-nav ul li ul li a{
  display:block;
  color:#201600;
  padding:0px 0 !important;
  text-decoration:none;
  position:relative;
  white-space:nowrap;
}
nav#global-nav ul li ul li a:hover{
  background:#CCC;
}
nav#global-nav ul li ul li a::before,
nav#global-nav ul li ul li a::after{
  display:none;
}
nav#global-nav ul li span.drawer-caret{display:none !important;}
#fade-in li ul{
	visibility:hidden;
	opacity:0;
	transition:0.4s;
}
#fade-in li:hover ul{
	visibility:visible;
	opacity:1;
}
#fade-in li ul li a{
	visibility:hidden;
	opacity:0;
	transition:0.4s;
}
#fade-in li:hover ul li a{
	visibility:visible;
	opacity:1;
}

/* footer */
section.page-sns-button-box{
  width:1060px;
  margin:0 auto;
  padding-top:0 !important;
}
.archive-sns-button-box{
  padding-left:280px;
}
#footer-inner{
  width:1060px;
  margin:0 auto;
  padding:30px 0 80px 0;
  font-size:0; line-height:0;
  text-align:left;
}
#footer-logo{
  width:132px; height:auto;
  display:inline-block;
  vertical-align:top;
  margin-right:50px;
}
#footer-inner nav{
  display:inline-block;
  vertical-align:top;
}
#footer-inner nav ul{
  margin-bottom:25px;
}
#footer-inner nav ul li{
  font-size:14px; line-height:160%;
  display:inline-block;
  vertical-align:bottom;
  margin:0 3em 0px 0;
}
#footer-inner nav ul li a{text-decoration:none;}
#footer-inner nav ul li a:hover{text-decoration:underline;}
#footer-inner nav p{
  font-size:14px; line-height:160%;
  color:#666;
  margin:0 0 10px 0;
}
#footer-inner nav #copyright{
  font-size:12px; line-height:100%;
  color:#666;
}

/* index first view */
#fv-box{
  position:relative;
//  border-bottom:2px solid #201600;
}
#fv-side{
  position:absolute;
  width:400px;
  float:left;
}
#fv-main{
  width:100%;
  margin:0 0 0 -400px;
  float:right;
}
#fv-main-inner{
  margin:0 0 0 400px;
  position:relative;
  z-index:1;
  background-image:url(../../img/index/bg03-min.jpg);
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
  animation-name:fv-anim;
  animation-duration:0.8s;
  animation-delay:0.2s;
  animation-timing-function:ease-out;
  animation-fill-mode:forwards;
  opacity:0;
}
@keyframes fv-anim{
  from{
    top:5px;
  }
  to{
    top:0;
    opacity:1;
  }
}
#fv-main-inner .copyright{
  position:absolute;
  bottom:10px; right:20px;
  font-size:12px;
  line-height:12px;
}
#fv-side{
  position:absolute;
  width:400px;
  float:left;
}
#fv-side-bottom{
  position:absolute;
  bottom:0; left:0;
  width:400px;
  height:74px;
  padding-bottom:15px;
  background:#f8f8f8;
  animation-name:fv-bottom;
  animation-duration:0.5s;
  animation-delay:2.2s;
  animation-timing-function:ease-out;
  animation-fill-mode:forwards;
  opacity:0;
}
@keyframes fv-bottom{
  from{
    left:-15px;
  }
  to{
    left:0;
    opacity:1;
  }
}
#fv-side-bottom-inner{
  width:250px;
  margin:0 auto;
  text-align:left;
}
#fv-side-bottom-inner ul.fv-link-list{
}
#fv-side-bottom-inner ul.fv-link-list li{
  height:20px;
  position:relative;
  padding:15px 0 2px 0;
}
#fv-side-bottom-inner ul.fv-link-list li img{
  width:auto; height:18px;
}
#fv-side-bottom-inner ul.fv-link-list li a{
  display:block;
}
#fv-side-bottom-inner ul.fv-link-list li a::after{
  content:"";
  position:absolute;
  bottom:-1px; left:0;
  width:0%; height:1px;
  background:#201600;
  transition:0.3s;
}
#fv-side-bottom-inner ul.fv-link-list li a:hover::after{
  width:100%;
  transition:0.3s;
}

#fv-side-inner{
  width:250px;
  margin:0 auto;
  text-align:left;
  position:absolute;
  top:50%; left:70px;
  transform:translateY(-50%);
}
#fv-side-inner h1{
  position:relative;
  width:250px; height:auto;
  margin-bottom:35px;
  animation-name:fv-h1;
  animation-duration:0.5s;
  animation-delay:0.5s;
  animation-timing-function:ease-out;
  animation-fill-mode:forwards;
  opacity:0;
}
@keyframes fv-h1{
  from{
    left:-15px;
  }
  to{
    left:0;
    opacity:1;
  }
}
#fv-side-inner nav#fv-nav ul li{
  height:20px;
  position:relative;
  padding:0 0 2px 0;
  margin-bottom:15px;
  animation-duration:0.5s;
  animation-timing-function:ease-out;
  animation-fill-mode:forwards;
  opacity:0;
}
#fv-side-inner nav#fv-nav ul li:nth-child(1){
  animation-name:fv-nav01;
  animation-delay:0.8s;
}
#fv-side-inner nav#fv-nav ul li:nth-child(2){
  animation-name:fv-nav02;
  animation-delay:0.9s;
}
#fv-side-inner nav#fv-nav ul li:nth-child(3){
  animation-name:fv-nav03;
  animation-delay:1.0s;
}
#fv-side-inner nav#fv-nav ul li:nth-child(4){
  animation-name:fv-nav04;
  animation-delay:1.1s;
}
#fv-side-inner nav#fv-nav ul li:nth-child(5){
  animation-name:fv-nav05;
  animation-delay:1.2s;
}
#fv-side-inner nav#fv-nav ul li:nth-child(6){
  animation-name:fv-nav06;
  animation-delay:1.3s;
}
#fv-side-inner nav#fv-nav ul li:nth-child(7){
  animation-name:fv-nav07;
  animation-delay:1.4s;
}
#fv-side-inner nav#fv-nav ul li:nth-child(8){
  animation-name:fv-nav08;
  animation-delay:1.5s;
  margin-bottom:15px;
}
#fv-side-inner nav#fv-nav ul li:nth-child(9){
  animation-name:fv-nav09;
  animation-delay:2.2s;
}
#fv-side-inner nav#fv-nav ul li:nth-child(10){
  animation-name:fv-nav10;
  animation-delay:2.3s;
  margin-bottom:10px;
}
#fv-side-inner nav#fv-nav ul li:nth-child(11){
  animation-name:fv-nav11;
  animation-delay:2.4s;
  margin-bottom:0;
}
@keyframes fv-nav01{
  from{left:-10px;} to{left:0; opacity:1;}
}
@keyframes fv-nav02{
  from{left:-10px;} to{left:0; opacity:1;}
}
@keyframes fv-nav03{
  from{left:-10px;} to{left:0; opacity:1;}
}
@keyframes fv-nav04{
  from{left:-10px;} to{left:0; opacity:1;}
}
@keyframes fv-nav05{
  from{left:-10px;} to{left:0; opacity:1;}
}
@keyframes fv-nav06{
  from{left:-10px;} to{left:0; opacity:1;}
}
@keyframes fv-nav07{
  from{left:-10px;} to{left:0; opacity:1;}
}
@keyframes fv-nav08{
  from{left:-10px;} to{left:0; opacity:1;}
}
@keyframes fv-nav09{
  from{left:-10px;} to{left:0; opacity:1;}
}
@keyframes fv-nav10{
  from{left:-10px;} to{left:0; opacity:1;}
}
@keyframes fv-nav11{
  from{left:-10px;} to{left:0; opacity:1;}
}
#fv-side-inner nav#fv-nav ul li img{
  width:auto; height:18px;
  padding:0 2px 2px 0;
}
#fv-side-inner nav#fv-nav ul li a{
  display:block;
}
#fv-side-inner nav#fv-nav ul li a::after{
  content:"";
  position:absolute;
  bottom:-1px; left:0;
  width:0%; height:1px;
  background:#201600;
  transition:0.3s;
}
#fv-side-inner nav#fv-nav ul li a:hover::after{
  width:100%;
  transition:0.3s;
}
#fv-side-inner nav#fv-nav ul li#fb{
  font-size:0; line-height:0;
  margin-top:40px;
//  margin-bottom:10px;
  animation-name:fv-fb;
  animation-delay:2.0s;
}
@keyframes fv-fb{
  from{opacity:0;} to{opacity:1;}
}
#fv-side-inner nav#fv-nav ul li#fb img{
  width:24px; height:24px;
}
#fv-side-inner nav#fv-nav ul li#fb a{
  display:inline-block; vertical-align:top;
  margin-right:5px;
}
#fv-side-inner nav#fv-nav ul li#fb a::after{
  content:"";
  display:none;
}

/* index contents */
#index-container{
  padding-top:50px;
}
.index-title{
  width:250px;
  float:left;
  text-align:left;
}
.index-title02{text-align:left;}
section .index-title h2,
section .index-title02 h2{margin-bottom:15px;}
section .index-title h2 img,
section .index-title02 h2 img{
  width:auto; height:24px;
}
section .index-title p,
section .index-title02 p{
  font-size:14px; line-height:160%;
  margin:0;
}

.index-contents{
  width:780px;
  float:right;
  text-align:left;
}

#index-about img{margin-bottom:40px;}
#index-about p{
  font-size:15px; line-height:160%;
  margin:0;
  text-align:left;
}

.about-box{
//  border:1px solid #111;
//  padding:30px 0;
//  margin:0 auto 30px auto;
}
.about-box h2{
  line-height:1 !important;
  font-weight:300;
//  text-align:center;
  font-size:24px !important;
  margin:0 auto 25px auto !important;
  border:none !important;
}
.about-box h2::before,
.about-box h2::after{content:" ー ";}
.about-box p{
//  margin:0 60px !important;
  line-height:200% !important;
}

.index-slider-box{
  margin:0 auto 40px auto;
}
.index-slider-box ul.index-slider li{
  display:none;
}
.index-slider-box .bx-viewport ul.index-slider li{
  display:block !important;
  height:232px;
}

ul.index-topics-list{
  width:420px;
  float:left;
  text-align:left;
}
ul.index-topics-list li{
  margin:0 0 50px 0;
}
ul.index-topics-list li a{
  font-size:18px;
  line-height:160%;
  font-weight:300;
}
ul.index-topics-list li span{
  font-size:13px;
  line-height:180%;
  color:#666;
  display:block;
}
.index-fb-box{
  width:300px;
  float:right;
}

#index-instagram{
  margin:0 auto 50px auto;
  margin:70px auto 70px auto;
  margin:30px auto 0px auto;
}
#index-instagram h2.instagram{
  width:180px;
  margin-bottom:10px;
}
#index-instagram #sb_instagram{
  width:100% !important;
  margin:0 auto 30px auto;
}
/*
#index-instagram #sb_instagram #sbi_images{
  width:100%;
  float:none !important;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
}
#index-instagram #sb_instagram #sbi_images .sbi_item{
  float:none !important;
  box-sizing:border-box;
  width:calc(100% / 6) !important;
  margin:0;
  background:#CCC;
  border:1px solid #FFF;
}
*/

.index-contents-wrapper{background:#f8f8f8;}
.index-event-list{
  font-size:0; line-height:0;
  text-align:left;
  letter-spacing:0;
}
.index-event-list li{
  width:360px;
  display:inline-block;
  vertical-align:top;
  margin:0 60px 50px 0;
  letter-spacing:1px;
}
.index-event-list li:nth-child(even){margin-right:0;}
.index-event-list li .thumbnail{
  width:100%; height:240px;
  overflow:hidden;
  position:relative;
  margin-bottom:10px;
}
.index-event-list li .thumbnail img{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
}
.index-event-list li .text-box h3 a{
  font-size:18px; line-height:160%;
  font-weight:300;
}
.index-event-list li .text-box .entry-date{
  font-size:15px;
  line-height:180%;
  color:#333;
  margin:0;
}
.index-event-list li .text-box .entry-date span.venue{
  margin-left:1em;
}
.index-event-list li .text-box .entry-date span.venue ul.venue-list{
  font-size:0; line-height:0;
  display:inline-block; vertical-align:bottom;
}
.index-event-list li .text-box .entry-date span.venue ul.venue-list li{
  font-size:15px; line-height:180%;
  display:inline-block; vertical-align:bottom;
  width:auto;
  margin:0;
}
.index-event-list li .text-box .entry-date span.venue ul.venue-list li::after{
  content:"・";
}
.index-event-list li .text-box .entry-date span.venue ul.venue-list li:last-child::after{
  content:"";
}

.index-floor-box{
  margin:50px auto 100px auto;
}
.floor-level{
  width:74px;
  float:left;
}
.floor-level span{
  box-sizing:border-box;
  width:74px; height:32px;
  overflow:hidden;
  display:block;
  border:1px solid #666;
  font-size:18px;
  line-height:29px;
  font-weight:300;
  color:#555;
}
@supports(-ms-ime-align:auto){
  .floor-level span{
    line-height:26px;
  }
}
.floor-level span img{
  width:auto; height:16px;
  margin:8px auto;
}
.index-floor-contents{
  width:970px;
  float:right;
  text-align:left;
}
.floor-image{
  width:485px;
  float:left;
  margin-bottom:15px;
}
table.index-floor-table{
  width:470px;
  height:400px;
  float:right;
  border-collapse:collapse;
  table-layout:fixed;
}
table.index-floor-table th{
  border:2px solid #201600;
  border-bottom:none !important;
  font-weight:500;
  text-align:center;
  vertical-align:middle;
  padding:20px 0;
}
table.index-floor-table th h3{
  font-weight:500;
}
table.index-floor-table th img{
  width:120px; height:auto;
  margin:0 auto;
}
table.index-floor-table th img.icon-square{
  width:150px; height:auto;
  margin:0 auto;
}
table.index-floor-table td{
  border:2px solid #201600;
  text-align:left;
  vertical-align:top;
  padding:20px 20px;
}
ul.index-shop-list{
  font-size:0; line-height:0;
  letter-spacing:0;
}
ul.index-shop-list li{
  width:180px;
  display:inline-block;
  vertical-align:top;
  border:1px solid #666;
  margin:0 15px 0 0;
  text-align:center;
}
ul.index-shop-list li:last-child{margin-right:0;}
ul.index-shop-list li .thumbnail{
  width:150px;
  margin:0 auto;
}
ul.index-shop-list li .text-box{margin:5px auto 15px auto;}
ul.index-shop-list li .text-box h3{
  font-size:15px; line-height:160%;
  font-weight:400;
  letter-spacing:1px;
}
ul.index-shop-list li .text-box p{
  font-size:11px; line-height:160%;
  margin:0;
}

.index-gmap-box{
  margin:0 auto 15px auto;
}
#index-access p.access-caution{
  font-size:14px; line-height:160%;
  margin:10px 0 0 0;
}


section#page-title{
  text-align:left;
}
section#page-title h1{
  padding-bottom:5px;
}
section#page-title h1 img{
  width:auto; height:26px;
  display:inline-block;
  vertical-align:bottom;
}
section#page-title h1 span.title-jp{
  font-size:17px;
  line-height:24px;
  font-weight:300;
  display:inline-block;
  vertical-align:bottom;
  margin-left:2em;
  position:relative;
  bottom:-5px;
}
section#page-title ul.submenu{
  font-size:0; line-height:0;
  margin:15px 0 0 0;
}
section#page-title ul.submenu li{
  display:inline-block;
  vertical-align:top;
  margin-right:10px;
}
section#page-title ul.submenu li:last-child{margin-right:0;}
section#page-title ul.submenu li a{
  display:block;
  box-sizing:border-box;
  height:26px;
  overflow:hidden;
  font-size:13px;
  line-height:24px;
  text-decoration:none;
  padding:0 2em;
  border:1px solid #999;
  transition:0.5s;
}
section#page-title ul.submenu li a:hover{
  background:#CCC;
  transition:0.5s;
}
section#page-title ul.submenu li.active a{
  background:#999;
  color:#FFF;
}
section#page-title p{
  margin:30px 0 0 0 !important;
}

#container section{
  text-align:left;
}
#container section h2{
  font-size:18px;
  line-height:160%;
  font-weight:300;
  border-bottom:1px solid #666;
  margin-bottom:25px;
}

/* ABOUT */
.about-image{
  width:380px;
  float:left;
}
.about-image img.logo{
  width:320px;
  margin:0 auto;
}
.about-text{
  width:640px;
  float:right;
}

ul.supporter-list{
  font-size:0; line-height:0;
}
ul.supporter-list li{
  margin:0 0px 40px 0;
  font-size:14px;
  line-height:160%;
}
ul.supporter-list li .thumbnail{
  width:180px;
  float:left;
}
ul.supporter-list li .text-box{
  width:860px;
  float:right;
}
ul.supporter-list li .text-box h3{
  font-size:17px;
  line-height:160%;
  font-weight:400;
  margin-bottom:25px;
}
ul.supporter-list li .text-box h3 span.position{
  display:block;
  font-size:13px;
  line-height:160%;
}
.mgpress-logo{
  width:170px;
  float:left;
}
.mgpress-text{
  width:860px;
  float:right;
}
.shinmai-logo{
  width:170px;
  float:left;
}
.shinmai-logo img{
  width:48px; height:auto;
  margin:0 auto;
}
.shinmai-text{
  width:860px;
  float:right;
}

/* TOPICS archive */
ul.topics-list{
  margin:0 0 80px 0;
}
ul.topics-list li{
  margin:0 0 50px 0;
}
ul.topics-list li a{
  font-size:21px;
  line-height:160%;
  font-weight:300;
}
ul.topics-list li span{
  font-size:13px;
  line-height:180%;
  color:#666;
  display:block;
}
.pagenavi-box{
  margin-left:-20px;
}

section#topics-archive #topics-archive-box{
  width:780px;
  float:right;
}

/* TOPICS single */
section#topics-single #topics-title,
section#topics-archive #topics-title{
  width:250px;
  padding-top:5px;
  float:left;
}
section#topics-single #topics-title h1,
section#topics-archive #topics-title h1{
  margin-bottom:30px;
}
section#topics-single #topics-title h1 img,
section#topics-archive #topics-title h1 img{
  width:auto; height:26px;
  padding-bottom:5px;
}
section#topics-single #topics-title ul.submenu li,
section#topics-archive #topics-title ul.submenu li{
  list-style:disc outside;
  font-size:13px;
  line-height:160%;
  margin:0 0 5px 20px;
}
section#topics-single #topics-title ul.submenu li a,
section#topics-archive #topics-title ul.submenu li a{
  text-decoration:none;
}

section#topics-single #entry-box{
  width:780px;
  float:right;
}
section#topics-single #entry-box #entry-title h2{
  font-size:30px;
  line-height:160%;
  font-weight:300;
  border-bottom:none;
  margin-bottom:5px;
}
section#topics-single #entry-box #entry-title p.entry-date{
  font-size:13px;
  line-height:180%;
  color:#666;
}
section#topics-single #entry-box #entry-body{
  border:1px solid #999;
  padding:35px 40px 10px 40px;
  margin-bottom:25px;
}
section#topics-single #entry-box #entry-body img{
  max-width:100% !important;
  height:auto;
}
section#topics-single #entry-box #entry-body ul,
section#topics-single #entry-box #entry-body ol{
  margin-bottom:25px;
}
section#topics-single #entry-box #entry-body ul li{
  list-style:disc outside;
  margin:0 0 10px 22px;
}
section#topics-single #entry-box #entry-body ol li{
  list-style:decimal outside;
  margin:0 0 10px 22px;
}
section#topics-single #entry-box #entry-body ul li:last-child,
section#topics-single #entry-box #entry-body ol li:last-child{
  margin-bottom:0;
}
section#topics-single #entry-box #entry-body table{
  width:100%;
  border-collapse:collapse;
  margin:0 auto 25px auto;
}
section#topics-single #entry-box #entry-body table td{
  padding:5px;
  border:1px solid #ccc;
}

section#topics-single #entry-box #entry-sns-button-box{
  margin-bottom:25px;
}
section#topics-single #entry-box #entry-bottom p{
  font-size:13px;
  line-height:180%;
}

/* SHOP single */
section#shop-single{
  margin-top:-50px;
}
section#shop-single #shop-logo{
  width:230px;
  float:left;
}
section#shop-single #shop-logo .shop-logo-inner{
  border:1px solid #999;
  margin-bottom:40px;
}
section#shop-single #shop-logo img{
  width:200px;
  margin:14px auto;
}
section#shop-single #shop-logo h1{
  font-size:15px;
  line-height:160%;
  font-weight:400;
  margin-bottom:5px;
}
section#shop-single #shop-logo h1 img{
  width:auto; height:26px;
  padding-bottom:5px;
}
section#shop-single #shop-logo ul.submenu li{
  list-style:disc outside;
  font-size:13px;
  line-height:160%;
  margin:0 0 5px 20px;
}
section#shop-single #shop-logo ul.submenu li a{
  text-decoration:none;
}

section#shop-single #shop-box{
  width:780px;
  float:right;
}
#shop-title{
	margin-bottom:40px;
	position:relative;
}
#shop-title > .open-date{
	font-size:17px; line-height:1.6; font-weight:bold;
	background:#D8ECF9;
	padding:0.1em 1.0em 0.2em;
	position:absolute;
	top:0; right:0;
}
#shop-title h1{
  font-size:26px;
  line-height:160%;
  font-weight:300;
  margin-bottom:0px;
}
#shop-title p.genre{
  font-size:14px;
  line-height:160%;
  font-weight:300;
  margin:0;
}
#shop-title p.genre span.floor{
  display:inline-block;
  border:1px solid #999;
  line-height:120%;
  padding:3px 30px 0 30px;
  margin-right:10px;
}
.shop-title-box .floor-box{
  width:66px;
  height:66px;
  background:#F6F6F6;
  display:inline-block;
  vertical-align:top;
  position:relative;
  float:left;
  margin-right:15px;
}
.shop-title-box .floor-box img{
  width:30px;
  height:auto;
  position:absolute;
  top:50%; left:50%;
  transform:translate(-50%, -50%);
}
#shop-title .shop-title-box02{
  margin-top:30px;
}
#shop-body ul.shop-image-slider li{
  width:100%; height:auto;
  aspect-ratio:3/2;
  overflow:hidden;
}
#shop-body ul.shop-image-slider li img{
  width:100%; height:100%;
  object-fit:cover;
}
#shop-body .shop-text{
  margin:50px auto 50px auto;
}
#shop-body .shop-data-box{
  border-top:1px solid #CCC;
  border-bottom:1px solid #CCC;
  padding:50px 0 25px 0;
  margin:0 auto 50px auto;
}
#shop-body .shop-data-box p.shop-data-title{
  font-weight:400;
  margin-bottom:5px;
}
#shop-body .shop-data-box ul.shop-data-list{
  margin-bottom:25px;
}
#shop-body .shop-data-box ul.shop-data-list li{
	display:flex;
	align-items:flex-start;
	gap:10px;
  margin:0 0 5px 0;
}
#shop-body .shop-data-box ul.shop-data-list li span.title{
  font-size:12px;
  text-align:center;
  width:80px;
  background:#F6F6F6;
	flex-shrink:0;
}
#shop-body .shop-info-box{
  margin-bottom:50px;
}
#shop-body .shop-info-box h3{
  font-size:15px;
  line-height:160%;
  font-weight:400;
  margin-bottom:5px;
}
#shop-body .shop-info-box ul.shop-info-list{
  margin-bottom:25px;
}
#shop-body .shop-info-box ul.shop-info-list li{
  margin:0 0 15px 0;
}
#shop-body .shop-info-box ul.shop-info-list li span.entry-date{
  display:inline-block;
  font-size:13px;
  margin-right:15px;
}

/* SHOP archive */
.shop-archive-box{
  margin:0 auto 50px auto;
}

/* floor guide */
.floor-guide-box{
  position:relative;
  padding-left:230px;
  margin:0 auto 50px auto;
}
.floor-guide-box .floor-guide-label{
  position:absolute;
  top:0; left:0;
  width:200px;
  font-size:16px;
  line-height:16px;
  border:1px solid #333;
  text-align:center;
}
.floor-guide-box .floor-guide-label a{
  display:block;
  text-decoration:none;
  padding:10px 0;
  transition:0.3s;
}
.floor-guide-box .floor-guide-label a:hover{
  background:#F0F0F0;
  transition:0.3s;
}
.floor-guide-box .floor-guide-label img{
  width:auto;
  height:16px;
  margin:0 auto;
}
.floor-guide-box .floor-guide-label span{
  display:block;
  height:16px;
  line-height:16px;
}
.floor-guide-box p{
  margin-bottom:10px !important;
}

section#floor-map{
  position:relative;
}
section#floor-map #floor-label{
  position:absolute;
  top:36px; left:0;
  width:140px; height:28px;
//  border:1px solid #999;
  border-bottom:1px solid #999;
  background:#FFF;
}
section#floor-map #floor-label img{
  width:auto; height:20px;
  margin:0px auto 0 5px;
}

section.floor-map{
  position:relative;
  margin-top:80px;
}
section.floor-map #floor-label{
  position:absolute;
  top:36px; left:0;
  width:140px; height:28px;
//  border:1px solid #999;
  border-bottom:1px solid #999;
  background:#FFF;
}
section.floor-map #floor-label img{
  width:auto; height:20px;
  margin:0px auto 0 5px;
}
.floor-list-box{
  margin-top:-10px;
}
ul.floormap-facility-list,
ul.floormap-shop-list{
  font-size:0; line-height:0; letter-spacing:0;
}
ul.floormap-facility-list li{
  font-size:15px;
  line-height:40px;
  font-weight:400;
  letter-spacing:1px;
  display:inline-block;
  vertical-align:top;
  margin:0 40px 0 0;
}
ul.floormap-facility-list li::before{
  content:"";
  width:48px; height:48px;
  background-repeat:no-repeat;
  background-position:center bottom;
  background-size:48px auto;
  margin-right:10px;
  display:inline-block;
  position:relative;
  top:4px;
}
ul.floormap-facility-list li.hall::before{
  background-image:url(../../img/index/icon_hall.gif);
}
ul.floormap-facility-list li.square::before{
  background-image:url(../../img/index/icon_square.gif);
  top:10px;
}
ul.floormap-facility-list li.kitchen::before{
  background-image:url(../../img/index/icon_kitchen.gif);
}
ul.floormap-facility-list li.studio::before{
  background-image:url(../../img/index/icon_studio.gif);
  top:10px;
}
ul.floormap-shop-list li{
  font-size:15px;
  line-height:40px;
  font-weight:400;
  letter-spacing:1px;
  display:inline-block;
  vertical-align:top;
  margin:0 40px 0 0;
}
ul.floormap-shop-list li::before{
  display:inline-block;
  margin-right:3px;
}
ul.floormap-shop-list li:nth-child(1)::before{content:"①";}
ul.floormap-shop-list li:nth-child(2)::before{content:"②";}
ul.floormap-shop-list li:nth-child(3)::before{content:"③";}
ul.floormap-shop-list li:nth-child(4)::before{content:"④";}
ul.floormap-shop-list li:nth-child(5)::before{content:"⑤";}

.space-image{
  margin:0 auto 10px auto;
}
table.space-table{
  width:100%;
  margin:0 auto;
  border-collapse:collapse;
}
table.space-table th{
  width:240px;
  padding:0;
  border:2px solid #201600;
  text-align:center;
}
table.space-table th img{
  width:140px;
  margin:20px auto;
}
table.space-table th h2{
  border-top:2px solid #201600;
  border-bottom:none !important;
  padding:10px 0;
  margin:0 auto !important;
  font-size:20px !important;
  font-weight:600 !important;
}
table.space-table td{
  padding:10px 20px;
  border:2px solid #201600;
  text-align:left;
  vertical-align:top;
  font-size:16px;
  line-height:180%;
}

ul.floor-shop-list{
  font-size:0; line-height:0;
  letter-spacing:0;
  margin:25px auto 0 auto;
}
ul.floor-shop-list li{
  width:198px;
  display:inline-block;
  vertical-align:top;
  border:1px solid #666;
  margin:0 15px 0 0;
  text-align:center;
}
ul.floor-shop-list li:last-child{margin-right:0;}
ul.floor-shop-list li .thumbnail{
  width:160px;
  margin:0 auto;
}
ul.floor-shop-list li .text-box{margin:5px auto 15px auto;}
ul.floor-shop-list li .text-box h3{
  font-size:15px; line-height:160%;
  font-weight:400;
  letter-spacing:1px;
}
ul.floor-shop-list li .text-box p{
  font-size:11px; line-height:160%;
  margin:0;
}

/* EVENT single */
section#event-single #event-nav,
section#event-archive #event-nav{
  width:250px;
  float:left;
}
section#event-single #event-nav h1,
section#event-archive #event-nav h1{
  margin-bottom:30px;
}
section#event-single #event-nav h1 img,
section#event-archive #event-nav h1 img{
  width:auto; height:26px;
  padding-bottom:5px;
}
section#event-single #event-nav ul.submenu li,
section#event-archive #event-nav ul.submenu li{
  list-style:disc outside;
  font-size:13px;
  line-height:160%;
  margin:0 0 5px 20px;
}
section#event-single #event-nav ul.submenu li a,
section#event-archive #event-nav ul.submenu li a{
  text-decoration:none;
}

#event-nav .feature-event{
  margin-top:50px;
}
#event-nav .feature-event p{
  font-size:13px;
  line-height:160%;
  margin:0 0 5px 0 !important;
}
#event-nav .feature-event ul.feature-event-list{
  width:200px;
}
ul.feature-event-list li{
  margin:0 auto 25px auto;
}
ul.feature-event-list li .thumbnail{
  position:relative;
  width:100%; height:140px;
  overflow:hidden;
  margin-bottom:5px;
}
ul.feature-event-list li .thumbnail img{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
}
#event-nav .feature-event .text-box h3{
  font-size:13px; line-height:160%;
  font-weight:300;
}

section#event-single #event-box{
  width:780px;
  float:right;
  padding-top:5px;
}
#event-box .schedule{
  font-size:0; line-height:0; letter-spacing:0;
  margin-bottom:50px;
  padding-bottom:10px;
  border-bottom:1px solid #CCC;
}
#event-box .schedule span{
  font-size:16px; line-height:16px; letter-spacing:1px;
  font-weight:300;
  display:inline-block;
  vertical-align:bottom;
}
#event-box .schedule span.md{
  font-size:30px; line-height:24px;
  margin:0 5px;
}
#event-box .schedule span.bar{
  margin:0 0 0 5px;
}
#event-box .schedule span.venue{
  margin:0 0 0 25px;
}
#event-box .schedule span.venue::before{
  content:"@";
  margin-right:2px;
}
#event-box .schedule span.venue ul.venue-list{
  font-size:0; line-height:0;
  display:inline-block; vertical-align:bottom;
}
#event-box .schedule span.venue ul.venue-list li{
  font-size:16px; line-height:16px;
  display:inline-block; vertical-align:bottom;
}
#event-box .schedule span.venue ul.venue-list li::after{
  content:"・";
}
#event-box .schedule span.venue ul.venue-list li:last-child::after{
  content:"";
}
section#event-single #event-box #event-title h1{
  font-size:30px;
  line-height:160%;
  font-weight:300;
  border-bottom:none;
  margin-bottom:50px;
}
section#event-single #event-box #event-title h1 span.subtitle{
  font-size:24px;
  line-height:160%;
  display:block;
}
section#event-single #event-box #event-title p.entry-date{
  font-size:13px;
  line-height:180%;
  color:#666;
}
#event-body .bx-wrapper ul.event-image-slider li img{
  margin:0 auto;
}
#event-body ul.event-image-slider{
}
#event-body p.copyright{
  font-size:11px;
  line-height:160%;
  text-align:right;
  margin-top:15px;
}
#event-body .event-text{
  margin:50px auto 50px auto;
}
#event-body .event-text hr{
  border:none;
  border-top:1px solid #CCC;
  margin-bottom:25px;
}
#event-body .event-data-box{
  border-top:1px solid #CCC;
  border-bottom:1px solid #CCC;
  padding:50px 0 25px 0;
  margin:0 auto 50px auto;
}
#event-body .event-data-box ul.event-data-list{
  margin-bottom:25px;
}
#event-body .event-data-box ul.event-data-list li{
  position:relative;
  margin:0 0 5px 0;
  padding-left:110px;
}
#event-body .event-data-box ul.event-data-list li span.title{
  font-size:12px;
  text-align:center;
  position:absolute;
  top:0; left:0;
  width:100px;
  background:#F6F6F6;
}

#event-body .online-ticket{
  border:2px solid #CCC;
  border-bottom:1px solid #CCC;
  text-align:center;
  padding:20px 0;
}
#event-body .online-ticket .online-ticket-title{
  font-weight:bold;
  margin:0 auto 15px;
}

/* EVENT archive */
.event-archive-list{
  font-size:0; line-height:0;
  text-align:left;
  letter-spacing:0;
  display:flex;
  flex-wrap:wrap;
}
.event-archive-list li{
  width:320px;
  margin:0 50px 50px 0;
  letter-spacing:1px;
}
.event-archive-list li:nth-child(3n){margin-right:0;}
.event-archive-list .thumbnail{
  width:100%; height:200px;
  overflow:hidden;
  position:relative;
  margin-bottom:10px;
}
.event-archive-list li .thumbnail img{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
}
.event-archive-list li .text-box h3 a{
  font-size:18px; line-height:160%;
  font-weight:300;
}
.event-archive-list li .text-box .entry-date{
  font-size:15px;
  line-height:180%;
  color:#333;
  margin:0;
}
.event-archive-list li .text-box .entry-date span.venue{
  margin-left:1em;
}
.event-archive-list li .text-box .entry-date span.venue ul.venue-list{
  font-size:0; line-height:0;
  display:inline-block; vertical-align:bottom;
}
.event-archive-list li .text-box .entry-date span.venue ul.venue-list li{
  font-size:15px; line-height:180%;
  display:inline-block; vertical-align:bottom;
  width:auto;
  margin:0;
}
.event-archive-list li .text-box .entry-date span.venue ul.venue-list li::after{
  content:"・";
}
.event-archive-list li .text-box .entry-date span.venue ul.venue-list li:last-child::after{
  content:"";
}

/* ACCESS */
.access-gmap-box{
  width:100%; height:600px;
  margin:0 auto 50px auto;
}
.parking-box{
  margin:0 auto;
}
.parking-map{
  width:800px;
  margin:0 auto 30px auto;
//  width:550px;
//  float:left;
}
.parking-info{
  width:900px;
  margin:0 auto 30px auto;
//  width:500px;
//  float:right;
}
table.parking-table{
  width:100%;
  border-collapse:collapse;
}
table.parking-table th{
  font-size:13px; line-height:140%;
  font-weight:300;
  text-align:center;
  padding:5px;
  background:#F0F0F0;
  border:1px solid #CCC;
}
table.parking-table td{
  font-size:14px; line-height:140%;
  font-weight:300;
  text-align:center;
  padding:10px;
  border:1px solid #CCC;
}
table.parking-table tr td:first-child{
  text-align:left;
  padding-left:10px;
}
table.parking-table td span.parking-name::before{
  content:"";
  font-size:14px; line-height:26px;
  text-align:center;
  display:inline-block;
  margin-right:5px;
  width:24px; height:24px;
  color:#FFF;
  background:#1588CB;
}
table.parking-table td span.parking01::before{content:"1";}
table.parking-table td span.parking02::before{content:"2";}
table.parking-table td span.parking03::before{content:"3";}
table.parking-table td span.parking04::before{content:"4";}
table.parking-table td span.parking05::before{content:"5";}
table.parking-table td span.parking06::before{content:"6";}
table.parking-table td span.parking07::before{content:"7";}
table.parking-table td span.parking08::before{content:"8";}
table.parking-table td span.parking09::before{content:"9";}
table.parking-table td span.parking10::before{content:"10";}
table.parking-table td span.parking11::before{content:"11";}
table.parking-table td span.parking12::before{content:"12";}
table.parking-table td span.parking13::before{content:"13";}
table.parking-table td span.parking14::before{content:"14";}
table.parking-table td.bikou{
  font-size:13px; line-height:140%;
  font-weight:300;
  text-align:right !important;
  padding:10px 0;
  border:none;
}

p.parking-service{
  font-size:17px; line-height:30px; font-weight:600;
  color:#DD0000;
}
span.parking-number{
  font-size:15px; line-height:30px;
  text-align:center;
  display:inline-block;
  margin:0 5px;
  width:28px; height:28px;
  color:#FFF;
  background:#1588CB;
}
ul.parking-service-list{
  margin-bottom:25px;
}
ul.parking-service-list li{
  list-style:disc outside;
  margin:0 0 5px 20px;
}

.parking-service-info-box{
  border-bottom:1px dashed #999;
  margin-bottom:30px;
}
.parking-service-info-box ul.floor-shop-list{
  float:left;
  margin-top:0 !important;
  margin-right:20px;
}
.parking-service-info-box .parking-service-info{
  display:inline-block;
  padding-top:5px;
}

/* CONTACT */
p.contact-caution{
  font-size:18px; line-height:160%; font-weight:600;
  color:#DD0000;
}
table.contact-table{
  width:100%;
  margin:0 auto 25px auto;
  border-collapse:collapse;
}
table.contact-table caption{
  text-align:left;
  font-size:13px; line-height:160%;
  margin-bottom:10px;
}
table.contact-table tr{
  border-top:1px solid #CCC;
}
table.contact-table th{
  width:200px;
  padding:20px 15px;
  font-weight:300;
  white-space:nowrap;
  text-align:left;
  vertical-align:top;
}
table.contact-table td{
  padding:20px 15px;
  text-align:left;
  vertical-align:top;
}
table.contact-table input,
table.contact-table button,
table.contact-table select,
table.contact-table textarea{
  margin:0;
  padding:0;
  background:none;
  border:none;
  border-radius:0;
  outline:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
}
table.contact-table input[type="text"],
table.contact-table input[type="tel"],
table.contact-table input[type="email"]{
  width:100%;
  height:36px;
  border:1px solid #CCC;
  border-radius:3px;
  background:#FCFCFC;
}
table.contact-table textarea{
  width:100%;
  min-height:100px;
  border:1px solid #CCC;
  border-radius:3px;
  background:#FCFCFC;
  resize:vertical;
}
table.contact-table td.submit-td{text-align:right;}
table.contact-table td.submit-td .privacy{text-align:left;}
table.contact-table input[type="submit"]{
  width:240px;
  height:42px;
  margin:20px -20px 0 auto;
  border-radius:3px;
  font-size:15px;
  line-height:40px;
  color:#FFF;
  background:#999;
  cursor:pointer;
  transition:0.5s;
}
table.contact-table input[type="submit"]:hover{
  background:#333;
  transition:0.5s;
}
table.contact-table td p.caution{
  margin:10px 0 0 0 !important;
  font-size:14px; line-height:180%;
}

/* COMMUNITY SPACE */
ul.application-list li{
  margin:0 0 20px 0;
  padding-left:1.2em;
  position:relative;
}
ul.application-list li::before{
  content:"◆";
  font-size:12px;
  position:absolute; top:0px; left:0;
}
ul.application-list li span.label{
  font-weight:500;
  display:block;
}
ul.application-list li.no-break span.label{
  display:inline-block;
  margin-right:1.5em;
}
ul.application-list li ul.disc-list{margin-top:10px !important;}
ul.application-list li ul.disc-list li{
  margin-bottom:5px !important;
  padding-left:0 !important;
  font-weight:500;
}
ul.application-list li ul.disc-list li::before{
  display:none;
}
ul.application-list li ul.disc-list li.caution{
  list-style:none !important;
  margin-top:10px;
  margin-left:0 !important;
  padding-left:20px !important;
  position:relative;
  font-weight:400;
}
ul.application-list li ul.disc-list li.caution::before{
  content:"※";
  display:inline-block;
  position:absolute; top:0; left:0;
}
.application-place-box{
  border:1px dashed #999;
  padding:25px;
  margin-bottom:25px;
}
.application-place-box h3{
  font-size:15px; line-height:160%; font-weight:500;
  margin-bottom:5px;
}
.application-place-box p{
  margin-bottom:0 !important;
  line-height:200%;
}
table.space-rental-fee-table{
  width:100%;
  border-collapse:collapse;
  margin:0 auto 25px auto;
}
table.space-rental-fee-table caption{
  font-size:14px; line-height:180%;
  text-align:right;
  margin-bottom:5px;
}
table.space-rental-fee-table tr.bg{
  background:rgba(224,241,246,0.6);
}
table.space-rental-fee-table th{
  font-weight:400;
  padding:10px 5px 8px 5px;
  text-align:center;
  border:1px solid #999;
  background:#00a0c1;
  background:rgba(0,160,193,0.5);
}
table.space-rental-fee-table td{
  padding:15px 5px 12px 5px;
  text-align:center;
  border:1px solid #999;
}
table.space-rental-fee-table sup{font-size:75% !important;}
ul.caution-list li{
  font-size:14px; line-height:160%;
  list-style:none;
  margin:0 0 5px 0;
  padding-left:18px;
  position:relative;
}
ul.caution-list li:last-child{margin-bottom:15px;}
ul.caution-list li::before{
  content:"※";
  display:inline-block;
  position:absolute; top:0; left:0;
}
ul.application-sheet-list{
  margin:0 0 25px 0;
}
ul.application-sheet-list li{
  list-style:disc outside;
  font-size:15px; line-height:160%; font-weight:500;
  margin:0 0 5px 20px;
}
.space-info-box{
  margin:0 auto 35px auto;
}
.space-info-box h3{
  font-size:20px;
  line-height:58px;
  font-weight:600;
  font-weight:500;
  margin-top:-20px;
  margin-bottom:10px;
  position:relative;
}
/*
.space-info-box h3::before{
  content:"◆";
  font-size:12px;
  position:absolute; top:0px; left:0;
}
*/
.space-info-box h3::before{
  content:"";
  width:80px; height:58px;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:80px auto;
  margin-right:15px;
  display:inline-block;
  position:relative;
  top:18px;
}
.space-info-box h3.hall::before{
  background-image:url(../../img/index/icon_hall.gif);
}
.space-info-box h3.square::before{
  background-image:url(../../img/index/icon_square.gif);
}
.space-info-box h3.kitchen::before{
  background-image:url(../../img/index/icon_kitchen.gif);
}
.space-info-box h3.studio::before{
  background-image:url(../../img/index/icon_studio.gif);
}
.space-info-box .thumbnail{
  width:480px;
  float:left;
}
.space-info-box .text-box{
  width:560px;
  float:right;
}
.space-info-box .text-box p{margin-bottom:10px !important;}
.space-info-box ul.space-data-list li{
  position:relative;
  padding-left:110px;
  margin-bottom:5px;
}
.space-info-box ul.space-data-list li .label{
  font-size:13px; line-height:13px;
  width:100px;
  text-align:center;
  border:1px solid #999;
  position:absolute;
  top:2px; left:0;
  padding:4px 0 3px 0;
}
.space-info-box ul.space-data-list li:first-child .label{
  top:6px;
}

table.cancel-table{
  width:700px;
  border-collapse:collapse;
  table-layout:fixed;
  margin:20px auto 0 0;
}
table.cancel-table th{
  font-size:13px; line-height:140%;
  font-weight:300;
  text-align:center;
  padding:5px;
  background:#F0F0F0;
  border:1px solid #CCC;
}
table.cancel-table td{
  font-size:14px; line-height:140%;
  font-weight:300;
  text-align:center;
  padding:10px;
  border:1px solid #CCC;
}
