@charset "UTF-8";
/*----------------------------------------------------------------------------------------------------------------------------------
　 　reset等
----------------------------------------------------------------------------------------------------------------------------------*/
*{
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
	word-wrap:break-word;
    margin: 0;
    padding: 0;
}
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, .search_box, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, day, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
body {line-height:1;}
article,aside,details,figcaption,figure,
footer,header,hgroup,day,nav,section { display:block;}
nav ul {list-style:none;}
blockquote, q {quotes:none;}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}
del { text-decoration: line-through;}
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

ul,ol{
	list-style: none;
  letter-spacing: -0.5em;
}
li {
	letter-spacing: normal;
	list-style: none;
}
a{
    text-decoration: none;
	display: inline-block;
cursor: pointer;
	word-break: break-all; 
    vertical-align:baseline;
    background:transparent;
    font-size:100%;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}
/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	フォント
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
body {
	font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","メイリオ","Meiryo","Arial",sans-serif;
	color: #313131;
	font-size: 16px;
  	line-height:160%;
	letter-spacing: .05em;
    text-align: center;
    position: relative;
	background: #fff;
}

.w7{font-weight: 700;}
.w9{font-weight: 900;}

.senobi{
font-family: senobi-gothic, sans-serif;
font-weight: 400;
font-style: normal;
}
.zen{
font-family: zen-kaku-gothic-new, sans-serif;
font-weight: 500;
font-style: normal;
}

/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	　基本
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
html {height: 100%;}
body {
	text-align: center;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}
img {
  width: 100%;
  max-width: 100%;
  height: auto;
 vertical-align: bottom;
}
::-webkit-scrollbar { display:none;}
/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	共通class
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.wrapper{
    width: 100%;
    height: 100%;
	min-height: 100vh;
    position: relative;
	overflow: hidden;
    padding-top: 80px;
}
.flex{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.bold{font-weight: bold;}


.a_center{text-align: center;}
.a_left{text-align: left;}

.relative{position: relative;}

.white_text{color: #fff;}
.gry_text{color: #858585;}



/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	header
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 80px;
	z-index: 1000;
	justify-content: center;
	align-items: center;
	padding: 20px;
	transition-duration: .3s;
    background: #fff;
    box-shadow: 0 6px 6px rgb(88 88 88 / 10%)
}
.logo{
	font-size: 250%;
    color: #1ea3cc;
	display: inline-block;
    width: auto;
}

@media print, screen and (max-width: 750px) {
.header{
	justify-content: flex-start;
    padding: 20px 10px;
	}
.logo{font-size: 200%;}
}


/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	検索
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
::-webkit-search-cancel-button {-webkit-appearance: none;}
::placeholder {color: #888; }
:focus {
outline:none;
border: none;
}
input[type=radio], input[type="checkbox"]{display: none;}
input[type="search"],button,input[type="checkbox"],label,select,input[type=radio]{
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
    border-radius: 5px;
    padding:15px 10px;
    font-size: 100%;
	cursor: pointer;
	border: none;
   font-family: zen-kaku-gothic-new, sans-serif;
}

.search_box{
	position: absolute;
	top: 50%;
	right: 15px;
	-webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
	z-index: 1;
	max-width: 400px;
	display: inline-block;
	transition-duration: .3s;
}
.search_box input[type=search] {
	border:none;
  box-sizing: border-box;
  width: 100%;
  z-index: 1;
  font-size: 113%;
    border-radius: 50px;
    padding: 10px 45px 10px 15px;
	background: #f3f3f3;
}

.search_btn{
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
    height: 100%;
    background: #1ea3cc;
color:#fff;
border:none;
border-radius:0 50px 50px 0;
	justify-content: center;
	align-items: center;
	width: 45px;
	padding: 0;
}
.search_btn .fa-search{font-size:100%;	}

@media print, screen and (max-width: 750px) {
	.search_box input[type=search] {font-size: 100%;}
}
@media print, screen and (max-width: 550px) {
.search_box input[type=search] {
		font-size: 88%;
    padding: 10px 40px 10px 15px;
}
	.search_box {
    top: 50%;
    right: 10px;
    max-width: 200px;
}
	.search_btn {width: 40px;}
}
/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	MV関係
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.mv_outline{
	min-height: 500px;
	margin: 50px auto;
	justify-content: center;
	align-items: center;
}
.mv_box {
	width: 100%;
	max-width: 70vw;
	margin: 0 auto;
    display: grid;
    grid-gap: 2% 1%;
    grid-auto-rows: 30vh;
}
.mv_item{
	justify-content: center;
	align-items: center;
	overflow: hidden;
	border-radius: 10px;
	z-index: 1;
}

.blur .img_bk{
	position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  min-width: 100%;
    min-height: 100%;
  object-fit: cover;
font-family:"object-fit:cover;";
	z-index: 1;
}
.blur::after{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
	backdrop-filter: blur(10px);
    z-index: 2;
}

.img_box{
	position:relative;
	display: inline-block;
    z-index: 3;
}
.img_box img{
	object-fit: cover;
	transition: all .5s;
}
.mv_item:hover .img_box img{transform: scale(1.1);}

.mv_item_title{
	position: absolute;
	width: 100%;
	bottom: 0;
	left: 0;
    z-index: 4;
	padding:30px 15px 15px;
	font-size: 150%;
	line-height: 150%;
	color: #fff;
	background: linear-gradient(rgba(0,0,0,0), 30px, rgba(0,0,0,1));
}

.mv_item1 {
  grid-column: 1/4;
  grid-row: 1/3;
}
.mv_item2 {
  grid-column: 4/7;
  grid-row: 1/2;
}
.mv_item3 {
  grid-column:4/7;
  grid-row: 2/3;
}

@media print, screen and (max-width: 999px) {
.mv_box {
	max-width: 85vw;
    grid-auto-rows: 40vh;
	}	
.mv_item_title {font-size: 130%;}
}
@media print, screen and (max-width: 750px) {
.mv_outline {margin: 0 auto;}
.mv_item1 {
  grid-column: 1/2;
  grid-row: 1/2;
}
.mv_item2,
.mv_item3 {display: none;}
.mv_item_title {font-size: 119%;}
}
/*---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	　day
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.day_outline{
	width: 100%;
	height: 100px;
}
.day_js{
	width: 100%;
	background: #f3f3f3;
	height: 101px;
	justify-content: center;
	align-items: center;
    border-bottom: solid 2px #1ea3cc;
	transition: all .3s;
}
.day_box{
	width: 80vw;
	padding:20px 0;
	margin: 0 100px;
	transition-duration: .8s;
	justify-content: space-between;
	align-items: center;
	font-weight: 700;
}
.day_js.day_fixed{
    position: fixed;
    top: 80px;
    left: 0;
	z-index: 1000;
}

.slider{overflow: hidden;}

.slide_box label{
	width: 90%;
	font-size: 125%;
	background: #fff;
	font-weight: 700;
	display: inline-block;
    box-shadow: 0 0 6px rgb(88 88 88 / 10%)
}
.slide_box input[type="radio"]:checked + label{
	background: #f1c226!important;
	color: #fff;
}
.slider label,
.slick-list,
.slick-track {height: 100%;}

@media print, screen and (min-width: 1281px) {
}
@media print, screen and (max-width: 999px) {
.day_outline {height: 95px;}
.day_box {
    width: 90vw;
    padding: 20px 0;
	margin: 0 85px;
	}
.slide_box label {
	padding: 10px;
	font-size: 113%;
	}
}
@media print, screen and (max-width: 750px) {
.day_outline { height: 85px;}
.day_box {
    width: 100vw;
    padding: 10px 0;
    margin: 0 30px;
}
.slide_box label {
    padding: 10px 0;
    font-size: 88%;
}
.day_js.day_fixed{height: 71px;}
}
/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	　address
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.a_g_box{
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	justify-content: space-between;
	align-items: flex-start;
}

.address_outline{
	padding: 50px 0;
	width: 40%;
}
.address_box{
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.exp{
	font-size: 113%;
    margin-bottom: 30px;
	display: inline-block;
}
.exp::before{
	content: "\f002";
	font-family: "Font Awesome 5 Free";
  font-weight: 900;
	margin-right: 10px;
	color: #1ea3cc;
}
.select{
	width: 90%;
	max-width: 300px;
	position: relative;
    display: inline-block;
	margin: 0 auto 15px;
}
.select select{
	width: 100%;
	padding: 15px 40px 15px 15px;
    border: 2px solid #efefef;
	border-radius: 8px;
	background: rgba(0,0,0,0);
}
.select::after {
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    font-size: 100%;
    position: absolute;
    color: #000;
    right: 14px;
    top: 50%;
	-webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
    content: "\f0d7";
	z-index: -1;
}
@media print, screen and (max-width: 750px) {
.a_g_box{
	max-width: 450px;
	flex-direction: column;
	}
.address_outline{width: 100%;}
.select {
    width: auto;
    max-width: 100%;
    margin: 0;
}
.select:first-child{margin-right: 10px!important;}
.address_box {
    justify-content: center;
    flex-direction: row;
}
.exp{font-size: 107%;}
}
/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	　genre
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.genre_outline{
	padding:50px 0;
	width: 60%;
}

.genre_list{
	width: 100%;
	justify-content: space-between;
	align-content: flex-start;
	margin: 0 auto;
}
.genre_list li{
	width: 24%;
	margin-bottom: 15px;
	font-size: 88%;
}
.genre_list li:nth-child(4n+3):last-child{margin-right: 25%;}

.genre_list label {
	width: 100%;
  display: inline-block;
padding:5px 10px;
  position: relative;
  background: #f3f3f3;
  white-space: nowrap;
  cursor: pointer;
	border-radius: 50px;
	transition: all .3s;
	font-weight: 700;
}

.genre_list input:checked + label {
	background: #1ea3cc!important;
color: #fff;
}
@media print, screen and (max-width: 950px) {
.genre_list li{width: 32%;}
.genre_list li:nth-child(3n+2):last-child{margin-right: 34%;}
}
@media print, screen and (max-width: 750px) {
	.genre_outline{
	width: 100%;
		padding: 0 0 50px;
	}
}
@media print, screen and (max-width: 550px) {
.genre_list li{width: 48%;}
}
/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	　contents
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.contents{
	width: 90%;
	max-width: 1200px;
	padding: 50px 15px;
	margin:0 auto 200px;
	justify-content: center;
	align-items: flex-start;
	flex-direction: column;
    border-top: solid 2px #f3f3f3;
}
.event_item{
	width: 100%;
	padding: 20px;
	border-radius: 5px;
	margin-bottom: 40px;
	justify-content: space-between;
	box-shadow: 0 0 8px rgba(0,0,0,.2);
	transition: all .3s;
}
.event_item:hover{background: #fff4d5;}
.event_img{
	width: 180px;
	background: #ccc;
	border-radius: 5px;
	overflow: hidden;
	justify-content: center;
	align-items: center;
}
.event_item:hover .img_box img{transform: scale(1.1);}

.event_text_box{
	width: calc(100% - 180px);
	padding: 0 30px;
	justify-content: flex-start;
	flex-direction: column;
	align-items: flex-start;
}

.event_icon_list{margin-bottom: 10px;}
.event_icon_list li{
	display: inline-block;
	padding: 5px 10px;
	margin-right: 10px;
	border-radius: 3px;
}
.event_price{background: #f1c226;}
.event_address{background: #1ea3cc;}

.event_text,
.event_title{
	overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}
.event_title{
	-webkit-line-clamp: 2;
	font-size: 150%;
	margin-bottom: 15px;
	line-height: 150%;
	transition: all .3s;
	color: #000;
}
.event_item:hover .event_title{ color:#1ea3cc; }
.event_text{
	-webkit-line-clamp: 3;
	font-size: 107%;
	margin-bottom: 20px;
}

.event_genre_list li{
	display: inline-block;
	padding: 0 10px;
	margin: 0 10px 10px 0;
	border-radius: 20px;
	color: #585858;
    background: #dcdcdc;
	font-size: 88%;
}

@media print, screen and (max-width: 750px) {
.contents {
	padding: 50px 0;
    margin: 0 auto 200px;
	}
.event_img,
.event_text_box{width: 100%;}
.event_img{margin-bottom: 20px;}
.event_text_box{padding: 0;}
}
/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	　掲載テキスト
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.zaku_text{
	padding: 15px;
	border-radius: 10px;
    width: 90%;
    max-width: 1200px;
    margin: 0 auto 30px;
    background: #dbf6ff;
}
.zaku_text a{
	color: #1ea3cc;
    font-size: 125%;
	margin: 0 10px;
}
/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	　footer
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.footer{
	width: 95%;
	margin: 0 auto;
    padding: 20px 0;
	border-top: solid 2px #1ea3cc;
	color: #1ea3cc;
}
@media print, screen and (max-width: 750px) {
.footer{font-size: 88%;}
}
/*----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
	　page_top
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.page_top{
  position: fixed;
  right: 20px;
    bottom: 10px;
  z-index: 1000;
}
.page_top a {
font-size: 200%;
    background: rgba(255,255,255,.8);
    border-radius: 10px;
    border: solid 2px #1ea3cc;
    text-decoration: none;
    color: #1ea3cc;
    width: 80px;
    height: 80px;
    justify-content: center;
    align-items: center;
	transition: all .3s;
}
.page_top a::before{
font-family: "Font Awesome 5 Free";
  content: '\f102';
  font-weight: 900;
}
@media print, screen and (min-width: 1281px) {
.page_top a:hover{background: rgba(255,219,75,1);}
}
@media print, screen and (max-width: 750px){

.page_top a {
    font-size: 175%;
    padding: 0px 18px;
    width: 55px;
	height: 55px;
	}
.page_top {right: 5px;}
}
