@charset "utf-8";
/*
font-family: 'Hind Siliguri', sans-serif;
font-family: 'Dancing Script', cursive;
font-family: 'Sawarabi Gothic', sans-serif;
*/
html {
font-family: 'Sawarabi Gothic', sans-serif;
}
img{
  width: 100%;
  display: block;
}

.imgborder {
 box-sizing: border-box;
 border: 1px solid #ddd;
}

header {
position: absolute;
width: 100%;
box-sizing: border-box;
padding-left: 40px;
padding-right: 40px;
z-index: 11;
}
#headerwrapper {
width: 100%;
height: 120px;
display: table;
color: #fff;
max-width: 1400px;
margin: auto;
}
#headerwrapper>div {
display: table-cell;
vertical-align: middle;
}
#headerwrapper>div h1 ,
#headerwrapper>div h1 a ,
#headerwrapper>div h1 a img {
display: inline-block;
vertical-align: bottom;
}
#headerwrapper>div h1 a img {
width: 60px;
height: 60px;
}
#headerwrapper>div+div {
text-align: right;
vertical-align: top;
}
#headerwrapper>div+div ul {
font-size: 0;
margin-right: 30px;
}
#headerwrapper>div+div li {
display: inline-block;
margin: 0 7px;
padding-top: 53px;
}
#headerwrapper>div+div li a {
text-decoration: none;
}
#headerwrapper>div+div li a span {
font-family: 'Hind Siliguri', sans-serif;
font-size: 20px;
line-height: 1;
font-weight: 500;
color: #fff;
padding: 10px 5px;
}

@media screen and (max-width:960px) {
#headerwrapper>div+div {
display: none;
}
}
@media screen and (max-width:768px) {
header {
padding-left: 20px;
padding-right: 20px;
}
#headerwrapper {
height: 70px;
}
#headerwrapper>div h1 a img {
width: 40px;
height: 40px;
}
}

#btn_gnav {
position: fixed;
z-index: 99999;
right: 0;
top:0;
}



#fixed .top ,
#fixed .left,
#fixed .right {
position: fixed;
top:0;
z-index: 10;
background-color: transparent;
}
#fixed .top {
left: 0;
right: 0;
height: 40px;
}
#fixed .left {
  left: 0;
  width: 80px;
  bottom:0;
}
#fixed .left .lefttxt {
  position: absolute;
  display: table;
  top: 50%;
  left: -80px;
  margin-top: -40px;
  width: 240px;
  height: 80px;
  text-align: center;
  transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
}
#fixed .left .lefttxt p {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}
span.sh{
  display: inline-block;
  margin: 0 5px;
}
span.lang-s {
  text-decoration: none;
  font-family: 'Hind Siliguri', sans-serif;
  font-size: 15px;
  letter-spacing: 1px;
  line-height: 1;
  color: black;
}
a.lang-a {
  text-decoration: none;
  font-family: 'Hind Siliguri', sans-serif;
  font-size: 15px;
  letter-spacing: 1px;
  line-height: 1;
  color: gray;
}
#fixed .right {
right: 0;
width: 5%;
min-width: 60px;
bottom:0;
}
#fixed .right .righttxt {
position: absolute;
display: table;
top: 50%;
margin-top: -40px;
width: 70px;
height: 20px;
text-align: center;
transform: rotate(90deg);
-moz-transform: rotate(90deg);
-webkit-transform: rotate(90deg);
}
#fixed .right .righttxt p {
display: table-cell;
text-align: center;
vertical-align: bottom;
}
#fixed .right .righttxt p a {
font-family: 'Hind Siliguri', sans-serif;
font-size: 15px;
letter-spacing: 1px;
line-height: 1;
color: #000;
transition: color .2s;
}
#fixed .right .righttxt p a:hover {
color: #7FCDEE;
}
#fixed .right .righttxt p a i {
font-size: 18px;
display: block;
margin-bottom: -2px;
}
#fixed .right .righttxt p:last-child a {
text-decoration: none;
}
#fixed .right .righttxt p:nth-child(2) a.smOs {
display: none;
}

@media screen and (max-width:768px) {
#fixed .top {
height: 60px;
}
#fixed .left {
  top:auto;
  right: 0;
  width: 100%;
  bottom:0;
  height: 46px;
  z-index: 20;
  z-index: 99999999999;
}
#fixed .left .lefttxt {
  position: static;
  table-layout: fixed;
  margin-top: 0;
  width: 100%;
  height: 46px;
  text-align: center;
  transform: rotate(0);
  -moz-transform: rotate(0);
  -webkit-transform: rotate(0);
}
#fixed .left .lefttxt p span {

  text-decoration: none;
  display: block;
  height: 46px;
  line-height: 46px;
}
#fixed .left .lefttxt p a {
  color: gray;
  text-decoration: none;
  display: block;
  height: 46px;
  line-height: 46px;
}
#fixed .right {
top:auto;
right: 0;
width: 100%;
bottom:0;
height: 46px;
z-index: 20;
z-index: 99;
background-color: #fff;
}
#fixed .right .righttxt {
position: static;
table-layout: fixed;
margin-top: 0;
width: 100%;
height: 46px;
text-align: center;
transform: rotate(0);
-moz-transform: rotate(0);
-webkit-transform: rotate(0);
}
#fixed .right .righttxt p a {
text-decoration: none;
display: block;
height: 46px;
line-height: 46px;
}
#fixed .right .righttxt p a:nth-child(1) a {
line-height: 42px;
padding-top: 4px;
}
#fixed .right .righttxt p:nth-child(2) a.smTel {
display: none;
}
#fixed .right .righttxt p:nth-child(2) a.smOs {
line-height: 42px;
padding-top: 4px;
display: block;
}
#fixed .right .righttxt p a i {
font-size: 20px;
display: inline-block;
line-height: 46px;
}
#fixed .right .righttxt p:nth-child(2) {
position: relative;
}
#fixed .right .righttxt p:nth-child(2)::before {
position: absolute;
content: "";
width: 1px;
height: 36px;
left: 0;
top:5px;
background-color: #B3B3B3;
}
/*#fixed .right .righttxt p:nth-child(2)::after {
position: absolute;
content: "";
width: 1px;
height: 36px;
right: 0;
top:5px;
background-color: #B3B3B3;
}*/
}
@media screen and (max-width:480px) {
#fixed .right .righttxt {
table-layout: auto;
}
#fixed .right .righttxt p {
min-width: 50px;
}
}




#main {
}
#wrapper {
max-width: 1080px;
margin-left: auto;
margin-right: auto;
padding: 0 40px;
}
@media screen and (max-width:768px) {
#main {
margin-left: 0;
margin-right: 0;
}
#wrapper {
padding-left: 20px;
padding-right: 20px;
max-width: 540px;
}
}





#kv{
background-image: url(images/top.jpg);
background-size: cover;
background-position: center;
}
#aboutp #kv{
  background-image: url(images/about_kv.jpg);
}
#shoplist #kv{
  background-image: url(images/shoplist_kv.jpg);
}
.kvwrapper {
width: 100%;
max-width: 1300px;
margin: auto;
box-sizing: border-box;
}
.kvwrapper img {
width: 100%;
height: auto;
display: block;
}
@media screen and (min-width:769px) {
.kvwrapper {
padding: 250px 80px 100px;
}
.kvwrapper img.kvsp , div.music_sp {
display: none;
}
}
@media screen and (max-width:768px) {
.kvwrapper {
padding: 60px 15px 40px;
}
.kvwrapper img {
max-width: 460px;
margin: auto;
}
.kvwrapper img.kvpc , div.music_pc {
display: none;
}
}


.margin-bottom{
  margin-bottom: 50px;
}
#concept ul{
  width: 80%;
  margin: 70px auto 70px;
}
#concept li{
    display: inline-block;
    vertical-align: top;
    width: calc( ( 100% - 70px ) / 3 );
    margin-left: 30px;
    position: relative;
    text-align: center;
    font-size: 14px;
}
#concept li:first-child{margin-left: 0;}
.conceptimg{
    height: 0;
    padding-top: 97.2%;
    position: relative;
    overflow: hidden;
}
.conceptimg .bg {
  position: absolute;
  top: 0;
  z-index: 100;
  overflow: hidden;
    transition: .6s;
}
.conceptimg span{
  position: absolute;
  z-index: 110;
  display: block;
  color: #fff;
  font-size: 40px;
  width: 100%;
  top: 40%;
  font-family: 'Dancing Script', cursive;
}
.conceptimg .back{
  display: block;
  width: 100%;
  margin: 0 auto;
}
.conceptimg:hover  .bg{
transform: scale(1.05);

}
.conceptt{
  margin-top: 10px;
}
#concept li a{
  z-index: 220;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width:1050px) {
  #concept li{
    font-size: 1.3vw;
  }
}
@media screen and (max-width:768px) {
  #concept ul{
    width: 80%;
  }
  #concept li{
    text-align: left;
    font-size: 14px;
    display: block;
    width: 100%;
    margin: 0 auto 60px;
  }
  .conceptimg .back{
    width: 100%;
  }
  .conceptimg span{
    text-align: center;
    top: 45%;
    font-size: 10vw;
  }
}

h2 {
font-family: 'Hind Siliguri', sans-serif;
font-weight: 600;
font-size: 36px;
line-height: 1;
}
.h2{font-size: 21px;}
h3,
.right.t_th a {
font-size: 15px;
line-height: 1.3;
}
p {
font-size: 13px;
line-height: 26px;
margin-top: -8px;
}
h3+p {
margin-top: 28px;
}
.txt {
font-size: 12px;
line-height: 1.8;
margin-bottom: 30px;
}
h4 {
font-size: 18px;
font-weight: bold;
line-height: 1.5;
}
#wrapper .left {
float: left;
}
#wrapper .right {
float: right;
}
.o_th {
}
.t_th {
text-align: right;
padding-right: 20px;
box-sizing: border-box;
}
.contentbox {
  margin-top: 5%;
  padding: 0 20px;
}
#music .contentbox {
  padding: 0 0px;
}
@media screen and (max-width:768px) {
  h2{
    font-size: 27px;
  }
#wrapper .left ,
#wrapper .right {
float: none;
}
.o_th ,
.t_th {
width: 100%;
}
.o_th+.t_th {
margin-top: 5px;
margin-bottom: 30px;
text-align: left;
}
}
.menu-list{
  margin-top: 30px;
  display: inline-table;
  width: 100%;
}

#event {
padding-top: 80px;
margin-top: 20px;
}
.newswrap {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.eventarchives li {
display: inline-block;
vertical-align: top;
width: 31%;
position: relative;
}
#event .seclink a {
padding-left: 12px;
}
.seclink a.seclinkytube::before {
position: absolute;
z-index: 2;
font-family: "Font Awesome 5 Brands";
content: "\f16a";
font-size: 22px;
left: 10px;
}

@media screen and (min-width:769px) {
.newswrap::before {
content: "";
width:31%;
height: 0;
order: 1;
}

#archive .eventarchives li {
margin-bottom: 80px;
}
}
.eventimg {
height: 0;
margin-bottom: 15px;
padding-top: 75%;
position: relative;
overflow: hidden;
}
.eventfull {
position: absolute;
z-index: 3;
top:0;
right: 0;
bottom: 0;
left: 0;
background-color: rgba(63,40,21,.6);
}
.eventfull .txt {
position: absolute;
right: 0;
left: 0;
top:50%;
margin-top: -23px;
color: #fff;
text-align: center;
font-size: 24px;
font-family: 'Hind Siliguri', sans-serif;
font-weight: 500;
line-height: 1;
}
.eventfull .txt span {
display: block;
font-family: 'Dancing Script', cursive;
font-size: 18px;
line-height: 1;
margin-top: 4px;
}
.eventimg .bg {
position: absolute;
z-index: 2;
top:0;
right: 0;
bottom: 0;
left: 0;
background-position: center;
background-size: cover;
transition: .6s;
}
/*.eventarchives li:hover .eventimg .bg {
transform: scale(1.05);
}*/
.eventcategory {
font-family: 'Dancing Script', cursive;
font-size: 22px;
line-height: 1;
margin-top: 10px;
margin-bottom: 8px;
color: #2F5677;
}
.eventdate {
font-family: 'Hind Siliguri', sans-serif;
font-size: 11px;
line-height: 1;
margin-bottom: 3px;
}
.eventtitle {
font-size: 13px;
line-height: 1.3;
}
.eventarchives li a {
position: absolute;
top:0;
right: 0;
bottom: 0;
left: 0;
z-index: 5;
}
@media screen and (max-width:768px) {
.eventarchives li {
width: 100%;
margin-left: 0;
}
.eventarchives li+li {
margin-top: 30px;
}
}


.pagination {
font-size: 18px;
line-height: 1;
text-align: center;
padding-top: 30px;
}
.pagination .wrapper>span ,
.pagination .wrapper>a {
display: inline-block;
margin: 0 8px;
}
.pagebtn {
content: "";
width: 13px;
height: 13px;
display: inline-block;
border-style:solid;
border-width: 1px;
border-color: transparent;
border-right-color: #000;
border-bottom-color: #000;
}
.prev {
margin-right: 0 !important;
}
.next {
margin-left: 0 !important;
}
.prevspan {
transform: rotate(135deg);
}
.nextspan {
transform: rotate(-45deg);
}
.pagination a {
color: inherit;
text-decoration: none;
}
@media screen and (max-width:768px) {
.pagination {
padding-top: 90px;
}
}


.sevkv {
margin-bottom: 100px;
}
.sevkv img {
display: block;
width: 100%;
height: auto;
}
.seclink {
margin-top: 30px;
font-size: 15px;
}
.seclink a {
font-family: 'Hind Siliguri', sans-serif;
display: table;
font-weight: 500;
min-width: 140px;
height: 35px;
margin-left: auto;
line-height: 33px;
padding-top: 2px;
padding-right: 35px;
border-radius: 5px;
box-sizing: border-box;
text-decoration: none;
text-align: right;
color: #000;
position: relative;
transition: .2s;
z-index: 1;
}
.seclink a::after {
position: absolute;
width: 13px;
height: 13px;
content: "";
border-color: transparent;
border-style: solid;
border-width: 1px;
border-top-color: #000;
border-right-color: #000;
transform: rotate(45deg);
top:10px;
right: 10px;
transition: .2s;
z-index: 2;
}
.seclink a:hover {
color: #fff;
background-color: #7FCCED;
}
.seclink a:hover::after {
border-top-color: #fff;
border-right-color: #fff;
}
.seclink a+a {
margin-top: 10px;
}
@media screen and (max-width:768px) {
.sevkv {
margin-bottom: 60px;
}
}

.secmenu{
  position: absolute;
  margin: 0;
  bottom: 0;
  right: 0;
}
.secmenu a{
  min-width: 25px;
  display: inline-block;
  bottom: -11px;
}
.secmenu a::after{
  width: 0;
  height: 0;
  border-color: #fff;
}
.secmenu a:hover{
  color: #000;
  background-color: #fff;
}










.menutable {
overflow: hidden;
}
.menutable table {
float: left;
width: 100%;
}
.menutable table .caption{
font-weight: bold;
font-size: 20px;
}
.menutable table .caption th {
font-size: 16px;
padding-top: 40px;
padding-bottom: 17px;
font-weight: 600;
line-height: 1;
letter-spacing: 1px;
}
.menutable table .first th{
padding-top: 0px;
}
.menutable table th {
font-size: 14px;
line-height: 1.3;
padding: 8px 0;
padding-right: 20px;
}
.menutable table td {
padding: 8px 0;
font-size: 13px;
line-height: 1.3;
text-align: right;
}
.menutable table td {
padding: 8px 0;
font-size: 13px;
line-height: 1.3;
}
.menutable table th span {
display: inline-block;
font-size: 11px;
margin-top: 2px;
}
.menutable table .menuh2{
  margin-bottom: 13px;
  margin-top: 35px;
}
.menutable table .halfspace{
  line-height: 1.7;
}
.menutable table td .half{
  font-size: 10px;
  margin-right: 5px;
}
@media screen and (max-width:540px) {
.menutable table {
width: 100%;
}
.menutable table:first-child {
margin-right: 0;
}
.menutable table th {
width: auto;
}
.menutable table th br {
display: none;
}
.menutable table td {
text-align: right;
}
.menutable table th span {
margin-left: 8px;
}
}
@media screen and (max-width:440px) {
.menutable table tr{
overflow: hidden;
}
.menutable table th{
display: inline-block;
float: left;
}
.menutable table td{
display: inline-block;
float: right;
}
}










footer {
position: relative;
z-index: 11;
padding-top: 30px;
}
#footerwrapper {
width: 100%;
max-width: 1040px;
margin: auto;
display: table;
padding: 60px 20px 50px;
}
#footerwrapper>div {
display: table-cell;
vertical-align: top;
}
#footerwrapper>div h1 ,
#footerwrapper>div h1 a ,
#footerwrapper>div h1 a img {
display: inline-block;
vertical-align: bottom;
font-size: 36px;
color: #000;
}
#footerwrapper>div h1 a img {
width: 180px;
height: 30px;
}
#footerwrapper>div+div {
text-align: right;
}
#footerwrapper>div+div ul {
/*margin-right: -10px;*/
}
#footerwrapper>div+div li {
display: inline-block;
margin: 0 5px;
width: 250px;
text-align: center;
}
#footerwrapper>div+div li a {
text-decoration: none;
}
#footerwrapper>div+div li a span {
font-family: 'Hind Siliguri', sans-serif;
line-height: 1;
font-weight: 500;
color: #000;
padding: 10px 5px;
}
.supporters01{
  display: block;
  background: #fff;
  font-size: 12px;
}
.supporters02{
  font-size: 13px;
}
.footercopyright {
background: #fff;
text-align: center;
font-size: 10px;
line-height: 1.2;
font-family: 'Hind Siliguri', sans-serif;
display: block;
padding: 10px 0;
}
@media screen and (max-width:768px) {
footer {
padding-left: 20px;
padding-right: 20px;
}
#footerwrapper>div {
text-align: center;
}
#footerwrapper>div+div {
display: none;
}
.footercopyright {
text-align: center;
}
}


#btn_gnav.el_humburger {
right: 17px;
top: 41px;
width: 45px;
height: auto;
padding: 10px;
box-sizing: border-box;
z-index: 999999999999;
transition: all 0.2s ease-in-out, background-color 0.6s ease-in-out;
cursor: pointer;
pointer-events: auto;
}
@media screen and (max-width:768px) {
#btn_gnav.el_humburger {
right: 10px;
top: 10px;
}
}
.el_humburger > span {
display: block;
width: 100%;
margin: 0 auto 8px;
height: 2px;
background: #fff;
transition: all 0.2s ease-in-out;
}
.scroll .el_humburger > span{
  background: #000;
}
.el_humburger > span:last-child {
margin-bottom: 0;
}
.js_humburgerOpen .el_humburger {
background-color: rgba(24, 33, 68,0) !important;
}
.js_humburgerOpen .el_humburger > span {
background: #000;
}
.js_humburgerOpen .el_humburger > span.top {
transform: translateY(10px) rotate(-45deg);
}
.js_humburgerOpen .el_humburger > span.middle {
opacity: 0;
}
.js_humburgerOpen .el_humburger > span.bottom {
transform: translateY(-10px) rotate(45deg);
}
.el_humburgerButton.el_humburgerButton__close {
top: 2%;
right: 2%;
}
.el_humburgerButton__close > span {
display: block;
width: 35px;
margin: 0 auto;
height: 4px;
background: #fff;
}
.el_humburgerButton__close > span.el_humburgerLineTop {
transform: translateY(5px) rotate(-45deg);
}
.el_humburgerButton__close > span.el_humburgerLineBottom {
transform: translateY(-6px) rotate(45deg);
}
.navigation {
display: none;
}
.navigation.js_appear {
position: fixed;
top: 0;
left: 0;
bottom: 0;
right: 0;
display: block;
z-index: 9999;
}
.navigation_screen {
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
background-color: #E6F5FB;
z-index: 0;
margin-top: 0px;
padding-top: 0px;
overflow: auto;
-webkit-overflow-scrolling: touch;
display: flex;
justify-content:center;
align-items: center;
}
.js_fixed {
position: fixed;
width: 100%;
}

.menu {
display: table;
}
.menu ul {
display: block;
font-family: 'Hind Siliguri', sans-serif;
}
.menu ul a {
display: inline-block;
color: #000;
text-decoration: none;
font-size: 18px;
line-height: 1;
margin: 20px 0;
}
.menu ul a span {
font-weight: 500;
}
.menu ul .sub a {
font-size: 18px;
}
.menu>div {
display: table-cell;
position: relative;
width: 188px;
padding-left: 250px;
font-family: 'Hind Siliguri','Sawarabi Gothic', sans-serif;
font-size: 11px;
line-height: 2;
}
.pc{display: block;}
.sp{display: none;}
.menu-lang{
  position: absolute;
  top: 10px;
  right: 0;
}

.me{
  position: absolute;
  bottom: 11px;
}
.menu01 a {
display: inline-block;
color: #000;
margin-left: 15px;
font-weight: 500;
}
.menu02 a {
display: inline-block;
color: #000;
font-weight: 500;
margin-bottom: 4px;
}

@media screen and (max-width:768px) {
.menu {
width: 100%;
display: block;
max-width: 240px;
}
.menu01 a ,
.menu02 {
display: none;
}
.menu ul {
display: block;
}
.menu>div {
margin-top: 20px;
display: block;
padding-left: 0;
}
.pc{display: none;}
.sp{display: block;}
.menu-lang{
  position: relative;
  top: 10px;
  right: 0;
}
.me{
  position: relative;
  bottom: 0;
}
}
@media screen and (min-width:769px) {
#fixed .right .righttxt p a i {
transform: rotate(-90deg);
margin-bottom: 0;
}
}






#p404 {
height: calc( 100vh - 372px );
display: flex;
text-align: center;
align-items: center;
  justify-content: center;
  min-height: 240px;
}
#p404 div {
margin-top: 15px;
}
#p404 p {
margin-top: 30px;
line-height: 1.5;
}
@media screen and (max-width:768px) {
#p404 {
height: calc( 100vh - 248px );
margin-bottom: -80px;
}
}
@media screen and (max-width:680px) {
#p404 {
text-align: left;
}
#p404 div h2 ,
#p404 div div ,
#p404 div p {
display: table;
margin-left: auto;
margin-right: auto;
}
}

#single #event {
margin-top: 0;
padding-top: 0;
}
.eventsingle {
margin-bottom: 60px;
}
.eventinfo001 {
display: table;
width: 100%;
table-layout: fixed;
margin-bottom: 180px;
}
.eventinfo001>div {
display: table-cell;
vertical-align: middle;
}
.eventinfo001l {
padding-right: 20px;
box-sizing: border-box;
font-size: 20px;
}
@media screen and (max-width:1100px) {
.eventinfo001l {
font-size: 16px;
}
}
@media screen and (max-width:768px) {
.eventinfo001 {
width: calc( 100% - 40px ) ;
margin-left: auto;
margin-right: auto;
margin-bottom: 80px;
display: block;
}
.eventinfo001>div {
display: block;
}
.eventinfo001l {
margin-top: 40px;
margin-bottom: 40px;
font-size: 16px;
}
}
.eventinfo001l .eventcategory {
font-size: 2.2em;
line-height: 1;
margin-top: 0;
}
.eventinfo001l .eventdate {
font-size: 1.4em;
margin-top: 1.2em;
line-height: 1;
font-weight: 300;
}
.eventinfo001l .eventtitle {
font-size: 1.5em;
line-height: 1.3;
}
.eventinfo001r img {
display: block;
width: 100%;
height: auto;
}
.eventcont01 {
margin-bottom: 120px;
}
.eventcont01 p+p {
margin-top: 30px;
}

#single .seclink a {
margin-right: auto;
padding-left: 18px;
}
#single .seclink a::after {
transform: rotate(-135deg);
left: 20px;
}

.eventinfo001rImg {
width: 100%;
height: 0;
padding-top: 66.6%;
position: relative;
}
.eventinfo001rImg .bg {
position: absolute;
z-index: 2;
top:0;
right: 0;
bottom: 0;
left: 0;
background-position: center;
background-size: cover;
}
.eventinfo001rImg .txt {
font-size: 48px;
}
.eventinfo001rImg .txt span {
font-size: 28px;
margin-top: 8px;
}
@media screen and (max-width:1100px) {
.eventinfo001rImg .txt {
font-size: 38px;
}
.eventinfo001rImg .txt span {
font-size: 24px;
margin-top: 6px;
}
}

#event p a{color: black;}


#navigation .seclink.secmenu  a {
bottom: 0;
min-width: 0;
}
#navigation .seclink.secmenu  a+a {
margin-left: 6px;
}
#navigation .seclink a::before {
position: static !important;
}
#navigation .seclink a::after {
display: none;
}
#navigation h1 img{
  max-width: 100px;
  margin: 0 auto 40px;
}


@media screen and (orientation: landscape) {
  #navigation.mobile{
    overflow: scroll;
  }
  .mobile .navigation_screen{
    overflow: scroll;
    position: relative;
  }
  .mobile .menu{
    margin: 50px 0;
  }
}

.sec{
  padding: 80px 0;
}
#news.sec{
  padding-bottom: 0;
}
#music.sec{
padding-bottom: 0;
}
@media screen and (max-width:768px) {
  .sec{
    padding: 50px 0;
  }
  #about {
    padding-top: 70px;
  }
}
.contentbox.box2 {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.contentbox.box2 h4 {
margin-bottom: 30px;
}
.content2L {
width: 31%;
}
.content2R {
width: 65.5%;
}
@media screen and (max-width:768px) {
.contentbox.reverse {
flex-direction: column-reverse;
}
.contentbox.box2 h4 {
margin-bottom: 30px;
}
.content2L ,
.content2R {
width: 100%;
}
.content2R {
margin-bottom: 5%;
}
}




#shoplist .listwrap{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#shoplist .listwrap li{
  padding-bottom: 65px;
  position: relative;
}
#shoplist .listwrap a{
  position: absolute;
  top: auto;
  bottom: 0;
  display: block;
}
#shoplist .listwrap::before {
  content: "";
  width: 31%;
  height: 0;
  order: 1;
}

.listwrap .shopgenre{
  font-size: 11px;
  margin-bottom: 5px;
}
.listwrap .shopname{
  font-size: 13px;
  font-weight: bold;
  margin-bottom: 15px;
}
.listwrap .shoptxt{
  font-size: 12px;
  line-height: 1.8;
}
.listwrap li a{
  position: relative;
  background: #68C6E9;
  color: #fff;
  font-size: 13px;
  text-align: center;
  line-height: 33px;
  display: table;
  margin: 20px auto 0;
  border-radius: 3px;
  width: 140px;
  height: 35px;
  box-sizing: border-box;
  transition: .2s;
}
.listwrap li a.btn_music{
  width: 160px !important;
  padding: 0 20px 0 0;
  box-sizing: border-box;
}
.listwrap li a::after{
  position: absolute;
  width: 13px;
  height: 13px;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 1px;
  border-top-color: #fff;
  border-right-color: #fff;
  transform: rotate(45deg);
  top: 10px;
  right: 10px;
  transition: .2s;
  z-index: 2;
}
.listwrap li a:hover{
  color: #68C6E9;
  background: #fff;
  border: 1px solid #68C6E9;
}
.listwrap li a:hover::after{
  border-top-color: #68C6E9;
  border-right-color: #68C6E9;
}
@media screen and (min-width:769px) {
  .listwrap li{
    display: inline-block;
    width: calc( ( 100% - 81px ) / 3 );
    margin-right: 35px;
  }
  .listwrap li a{
    margin-top: 30px;
  }
  .listwrap .shoptxt{
    min-height: 20px;
  }
  .column3 .listwrap li{
    width: calc( ( 100% - 81px ) / 3 );
  }
  .column3 .listwrap li:nth-of-type(3n){
    margin-right: 0;
  }
  .column3 .listwrap li:nth-of-type(n+4){
    margin-top: 50px;
  }
  .column4 li{
    margin-right: 22px;
    width: calc( ( 100% - 81px ) / 4 );
  }
  .column4 li:nth-of-type(4n){
    margin-right: 0;
  }
  .column4 .listwrap li:nth-of-type(n+5){
    margin-top: 50px;
  }
}

/*トップ*/
#home .el_humburger > span {
  background: #000;
}

#home #headerwrapper>div+div li a span{
color: #000;
}
#home #kv {

/*background-color: #ddeefa;*/
background-image: none;
}
#home .kvwrapper {
padding: 70px 5px 25px;
}
#home .contentbox.box2 h4 {
  margin-bottom: 30px;
}
@media screen and (min-width:769px) {
  #home .kvwrapper {
  padding: 150px 15px 50px;
  }
}
#supporters table{
  width: 100%;
}
#supporters h3{
font-size: 18px;
font-weight: bold;
line-height: 1.5;
margin-bottom: 70px;
}
#supporters td{
  height: 135px;
  vertical-align: middle;
  text-align: center;
}
@media screen and (min-width:769px) {
  #supporters tr:nth-of-type(n+2){
    border-top: 1px dotted #ddd;
  }
  #supporters td{
    border-left: 1px dotted #ddd;
  }
  #supporters td:first-child{
    border-left: 0;
  }
}
@media screen and (max-width:768px) {
  #supporters tr{
    display: flex;
    flex-wrap: wrap;
  }
  #supporters td{
    border-bottom: 1px dotted #ddd;
    display: block;
    width: 50%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #supporters td:nth-of-type(2n){
    border-left: 1px dotted #ddd;
  }
  #supporters tr:last-child td:nth-of-type(n+3){
    border-bottom: 0;
  }

}


.namelist li{
  font-size: 14px;
}
.namelist li+li{
  margin-top: 25px;
}
.namelist li div{
  display: inline-block;
  background: #E0E0E0;
  width: 125px;
  margin-right: 25px;
  padding: 5px 0;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
}
.namelist li img{
  display: inline-block;
width: auto;
height: 14px;
}
@media screen and (max-width:768px) {
  .namelist ul{
    margin: auto;
    text-align: center;
  }
  .namelist li div{
    display: block;
    margin: 0 auto 10px;
  }
}
/*トップ終了*/

#aboutp #howto .howtoen{
  font-size: 13px;
  text-align: center;
  margin-bottom: 5px;
  font-weight: bold;
}
#aboutp #howto .howtoja{
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
  font-weight: bold;
}

#aboutp #shop .shoph{
  font-size: 13px;
  margin-bottom: 15px;
  font-weight: bold;
}

#backnumber .contentbox{
  width: 100%;
  /*max-width: 650px;
  max-width: 800px;*/
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin: auto;
  padding: 25px 0;
  border: 1px solid #000;
  box-sizing: border-box;
}
#backnumber .contentbox>div{
  font-size: 15px;
  font-weight: bold;
  padding: 10px 20px;
}
#backnumber .contentbox ul{
  padding: 5px 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
#backnumber .contentbox li a{
  font-size: 22px;
  font-weight: bold;
  padding: 0 10px;
}

.top-bn{
flex-wrap: nowrap !important;
}

@media screen and (max-width:768px) {
  #backnumber .contentbox{
    padding: 15px 0;
  }
  #backnumber .contentbox ul{
    padding: 5px 0;
  }
  #backnumber .contentbox li a{
    font-size: 18px;
    padding: 0 5px;
  }

.bn{
flex-wrap: wrap !important;
}
}


/*店舗個別ページ*/
#shopinfo .content2R{
  height: 0;
  padding-top: 340px;
  position: relative;
  overflow: hidden;
}
#shopinfo iframe{
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-size: cover;
  transition: .6s;
}
@media screen and (max-width:768px) {
  #shopinfo .content2L{
    margin-bottom: 20px;
  }
  #shopinfo .content2R{
    margin-bottom: 0;
  }
}


/*supporters*/
#supporters .listwrap li a{
  padding-right: 10px;
}


/* map DL */

#map_dl-wrap{
display: flex;
justify-content: space-around;
}

#map_dl-left{
display: flex;
justify-content: center;
align-items: center;
width: 50%;
}

#map_dl-left img{
width: 470px;
}

#map_dl-right{
display: flex;
justify-content:center;
align-items: center;
align-content: center;
flex-direction: column;
width: 50%;
padding: 0 0 0 0px;
box-sizing: border-box;
}

#map_dl-right p{
font-size: 13px;
text-align: center;
margin: 0 0 30px 0;
}

#map_dl-right img{
width: 140px;
}

/* shopicon */

#wrapper .shop_icon_wrap {
float: left;
margin: 0 10px 0 0;
}

.listwrap .shop_icon_wrap {
float: none !important;
}

.shop_icon_wrap{
display: flex;
justify-content: flex-start;
}

.shop_icon_craft{
display: flex;
justify-content: center;
align-items: center;
width: 40px;
height: 40px;
background: url("images/craft.jpg");
background-size: cover;
background-repeat: no-repeat;
font-size: 20px;
font-family: 'Poppins', sans-serif;
font-weight: bold;
color: #458cc2;
margin: 0 10px 0 0;
padding: 5px 0 0 0;
box-sizing: border-box;
}

.shop_icon_food{
display: flex;
justify-content: center;
align-items: center;
width: 40px;
height: 40px;
background: url("images/food.jpg");
background-size: cover;
background-repeat: no-repeat;
font-size: 20px;
font-family: 'Poppins', sans-serif;
font-weight: bold;
color: #df5c42;
margin: 0 10px 0 0;
padding: 5px 0 0 0;
box-sizing: border-box;
}

.shop_icon_green{
display: flex;
justify-content: center;
align-items: center;
width: 40px;
height: 40px;
background: url("images/green.jpg");
background-size: cover;
background-repeat: no-repeat;
font-size: 20px;
font-family: 'Poppins', sans-serif;
font-weight: bold;
color: #4fa46a;
margin: 0 10px 0 0;
padding: 5px 0 0 0;
box-sizing: border-box;
}

.shop_icon_relaxation{
display: flex;
justify-content: center;
align-items: center;
width: 40px;
height: 40px;
background: url("images/relaxation.jpg");
background-size: cover;
background-repeat: no-repeat;
font-size: 20px;
font-family: 'Poppins', sans-serif;
font-weight: bold;
color: #a7c355;
margin: 0 10px 0 0;
padding: 5px 0 0 0;
box-sizing: border-box;
}

.shop_icon_workshop{
display: flex;
justify-content: center;
align-items: center;
width: 40px;
height: 40px;
background: url("images/workshop.jpg");
background-size: cover;
background-repeat: no-repeat;
font-size: 20px;
font-family: 'Poppins', sans-serif;
font-weight: bold;
color: #e4ca3c;
margin: 0 10px 0 0;
padding: 5px 0 0 0;
box-sizing: border-box;
}

.shop_icon_music{
display: flex;
justify-content: center;
align-items: center;
width: 40px;
height: 40px;
background: url("images/music.jpg");
background-size: cover;
background-repeat: no-repeat;
font-size: 20px;
font-family: 'Poppins', sans-serif;
font-weight: bold;
color: #ffffff;
margin: 0 10px 0 0;
padding: 5px 0 0 0;
box-sizing: border-box;
}

.shop_detail{
}
.seclink_l {
margin-top: 30px;
font-size: 15px;
}
.seclink_l a {
font-family: 'Hind Siliguri', sans-serif;
display: table;
font-weight: 500;
min-width: 210px;
/*min-width: 140px;*/
height: 35px;
margin-left: auto;
line-height: 33px;
padding-top: 2px;
padding-right: 35px;
border-radius: 5px;
box-sizing: border-box;
text-decoration: none;
text-align: right;
color: #000;
position: relative;
transition: .2s;
z-index: 1;
}
.seclink_l a::after {
position: absolute;
width: 13px;
height: 13px;
content: "";
border-color: transparent;
border-style: solid;
border-width: 1px;
border-top-color: #000;
border-right-color: #000;
transform: rotate(45deg);
top:10px;
right: 10px;
transition: .2s;
z-index: 2;
}
.seclink_l a:hover {
color: #fff;
background-color: #7FCCED;
}
.seclink_l a:hover::after {
border-top-color: #fff;
border-right-color: #fff;
}
.seclink_l a+a {
margin-top: 10px;
}

.sp_only{
display: none;
}

@media screen and (max-width: 768px) {

#map_dl-wrap{
display: block;
}

#map_dl-left{
width: 100%;
}

#map_dl-left img{
width: 80%;
}

#map_dl-right{
width: 100%;
margin: 30px 0 0 0;
padding: 0 0 0 0;
}

#map_dl-right p{
font-size: 13px;
text-align: center;
margin: 0 0 30px 0;
}

#map_dl-right img{
width: 140px;
}
.sp_only{
display: block;
}
.shop_detail_wrap{
display: flex;
justify-content: flex-start;
}
.shop_detail{
float: left;
}
}


#music .contentbox {
  padding: 0 0px;
}

#music .contentbox div.music_pc , #music .contentbox div.music_sp {
position: relative;
}

#music a{
  /*position: absolute;*/
  background: #68C6E9;
  color: #fff;
  font-size: 13px;
  text-align: center;
  line-height: 33px;
  display: table;
  margin: 30px auto 0 auto;
  border-radius: 3px;
  width: 140px;
  height: 35px;
  box-sizing: border-box;
  transition: .2s;
}
@media screen and (max-width: 768px) {
#music a{
  /*position: absolute;*/
  background: #68C6E9;
  color: #fff;
  font-size: 13px;
  text-align: center;
  line-height: 33px;
  display: table;
  margin: 30px auto 0 auto;
  border-radius: 3px;
  width: 140px;
  height: 35px;
  box-sizing: border-box;
  transition: .2s;
}
}

#music a::after{
  position: absolute;
  width: 13px;
  height: 13px;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 1px;
  border-top-color: #fff;
  border-right-color: #fff;
  transform: rotate(45deg);
  top: 10px;
  right: 10px;
  transition: .2s;
  z-index: 2;
}
#music a:hover{
  color: #68C6E9;
  background: #fff;
  border: 1px solid #68C6E9;
}
#music a:hover::after{
  border-top-color: #68C6E9;
  border-right-color: #68C6E9;
}

#questionnaire{
text-align: center;
margin: 0 auto;
}

#questionnaire a{
  position: relative;
  background: #68C6E9;
  color: #fff;
  font-size: 13px;
  text-align: center;
  line-height: 33px;
  display: table;
  margin: 20px auto 0;
  border-radius: 3px;
  width: 140px;
  height: 35px;
  box-sizing: border-box;
  transition: .2s;
}
#questionnaire a::after{
  position: absolute;
  width: 13px;
  height: 13px;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 1px;
  border-top-color: #fff;
  border-right-color: #fff;
  transform: rotate(45deg);
  top: 10px;
  right: 10px;
  transition: .2s;
  z-index: 2;
}
#questionnaire a:hover{
  color: #68C6E9;
  background: #fff;
  border: 1px solid #68C6E9;
}
#questionnaire a:hover::after{
  border-top-color: #68C6E9;
  border-right-color: #68C6E9;
}

#questionnaire.sec{
  padding: 50px 0 80px 0;
}

.questionlist{
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
}

.questionlist li{
  width: calc( (100% - 2px) / 3) !important;
  margin: 0 0 0 0 !important;
  padding: 5px 10px 0 10px !important;
  position: relative;
  border-right: 1px solid #b2b2b2;
  box-sizing: border-box;
}

.questionlist li:nth-child(3) , .questionlist li:nth-child(6) , .questionlist li:nth-child(9){
  border-right: none;
}

.questionlist2{
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
}

.questionlist2 li{
  width: calc( (100% - 1px) / 2) !important;
  margin: 0 0 0 0 !important;
  padding: 5px 64px 0 0 !important;
  position: relative;
  border-right: 1px solid #b2b2b2;
  box-sizing: border-box;
}

.questionlist2 li.col2_r , .questionlist2 li.col2_r_last{
  padding: 5px 0 0 40px !important;
  position: relative;
  border-right: none;
  box-sizing: border-box;
}

.contentbox hr{
height: 1px;
background-color: #b2b2b2;
margin: 35px 0;
padding: 0 0 0 0;
border: none;
}

.question{
display: flex;
justify-content: center;
align-items: center;
}
.question img{
width: 100%;
height: auto;
}
.question div{
  font-size: 15px;
  font-weight: 300;
  text-align: left;
  font-weight: bold;
}
.question div.q{
  font-size: 33px;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
  text-align: center;
  padding: 0 15px 0 0;
  font-weight: bold;
  color: #7fcdee;
}

.question2{
display: flex;
justify-content: flex-start;
align-items: center;
}
.question2 div{
  font-size: 15px;
  font-weight: 300;
  text-align: left;
  font-weight: bold;
}
.question2 div.q{
  font-size: 33px;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
  text-align: center;
  padding: 0 15px 0 0;
  font-weight: bold;
  color: #7fcdee;
}

.answer{
padding: 40px 0 0 0;
}

.answer p{
font-size: 13px;
text-align: left;
padding: 0 0 10px 0;
margin: 0 0 10px 0;
border-bottom: 1px solid #7fcdee;
}

@media screen and (max-width: 768px) {

#questionnaire{
text-align: center;
margin: 0 auto;
}

#questionnaire a{
  position: relative;
  background: #68C6E9;
  color: #fff;
  font-size: 13px;
  text-align: center;
  line-height: 33px;
  display: table;
  margin: 20px auto 0;
  border-radius: 3px;
  width: 140px;
  height: 35px;
  box-sizing: border-box;
  transition: .2s;
}
#questionnaire a::after{
  position: absolute;
  width: 13px;
  height: 13px;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 1px;
  border-top-color: #fff;
  border-right-color: #fff;
  transform: rotate(45deg);
  top: 10px;
  right: 10px;
  transition: .2s;
  z-index: 2;
}
#questionnaire a:hover{
  color: #68C6E9;
  background: #fff;
  border: 1px solid #68C6E9;
}
#questionnaire a:hover::after{
  border-top-color: #68C6E9;
  border-right-color: #68C6E9;
}

#questionnaire.sec{
  padding: 50px 0 50px 0;
}

.questionlist{
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
}

.questionlist li{
  width: calc(100%) !important;
  margin: 0 0 30px 0 !important;
  padding: 0px 0px 30px 0px !important;
  border-right: none;
  border-bottom: 1px solid #b2b2b2;
  position: relative;
  box-sizing: border-box;
}

.questionlist2{
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
}

.questionlist2 li{
  width: calc(100%) !important;
  margin: 0 0 30px 0 !important;
  padding: 0px 0 30px 0 !important;
  border-right: none;
  border-bottom: 1px solid #b2b2b2;
  position: relative;
  box-sizing: border-box;
}

.questionlist2 li.col2_r{
  padding: 0px 0 30px 0px !important;
  margin: 0 0 30px 0 !important;
  border-bottom: 1px solid #b2b2b2;
  position: relative;
  border-right: none;
  box-sizing: border-box;
}

.questionlist2 li.col2_r_last{
  padding: 0px 0 30px 0px !important;
  margin: 0 0 30px 0 !important;
  border-bottom: none;
  position: relative;
  border-right: none;
  box-sizing: border-box;
}

.contentbox hr{
height: 1px;
background-color: #b2b2b2;
margin: 35px 0;
padding: 0 0 0 0;
border: none;
}

.question{
display: flex;
justify-content: flex-start;
align-items: center;
}
.question img{
width: 100%;
height: auto;
}
.question div{
  font-size: 15px;
  font-weight: 300;
  text-align: left;
  font-weight: bold;
}
.question div.q{
  font-size: 26px;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
  text-align: center;
  padding: 0 15px 0 0;
  font-weight: bold;
  color: #7fcdee;
}

.question2{
display: flex;
justify-content: flex-start;
align-items: center;
}
.question2 div{
  font-size: 15px;
  font-weight: 300;
  text-align: left;
  font-weight: bold;
}
.question2 div.q{
  font-size: 26px;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-style: normal;
  text-align: center;
  padding: 0 15px 0 0;
  font-weight: bold;
  color: #7fcdee;
}

.answer{
padding: 20px 0 0 0;
}

.answer p{
font-size: 12px;
text-align: left;
padding: 0 0 10px 0;
margin: 0 0 10px 0;
border-bottom: 1px solid #7fcdee;
}

}