@charset "utf-8";

@import url(reset.css);
@import url(normalize.css);
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);


/*-----------------------------
	animation
------------------------------*/

body{animation-fill-mode:both;animation-duration:2s;nimation-delay:1s;animation-name:fadeIn;}
@keyframes fadeIn{0%{opacity:0;}100%{opacity:1;}}

.animation {
	visibility: hidden;
}

.fadeInDown {
 animation-fill-mode:both;
 animation-duration:1s;
 animation-name: fadeInDown;
 visibility: visible !important;
}
@keyframes fadeInDown {
 0% { opacity: 0; transform: translateY(-20px); }
 100% { opacity: 1; transform: translateY(0); }
}



/*-----------------------------
	初期設定
------------------------------*/

html,body {
	width: 100%;
	height: 100%;
	background: #fff;
	margin: 0 auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

*/
* {
    margin:0;
    padding:0;
}
a,
a:active,
a:visited,
a:focus  {
	color: #666;
	text-decoration: none;
	outline: none;
}
a:hover {
	color: #666;
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
}

a.catch,
a.catch:active,
a.catch:visited  {
	color: #fff;
	text-align: center;
	text-decoration: none;
}

::selection {
background: #ccc;
}
::-moz-selection {
background: #ccc;
}
img {
	border: none;
}
img a {
	border: none;
}
ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
li {
	margin: 0px;
	padding: 0px;
	list-style: none;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 14px;
	color: #666;
	text-align: left;
	font-weight: 100;
}
h1,h2 {
	font-family:"Sawarabi Mincho","Times New Roman","游明朝",serif;
	font-size: 24px;
	color: #333;
	margin: 20px 0;
}
h3 {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 16px;
	color: #666;
	text-align: inherit;
	font-weight: 600;
}
h4 {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin: 0 !important;
}
p {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 14px;
	color: #666;
	line-height: 1.7em;
	text-align: inherit;
	font-weight: 100;
}
.mincho {
	font-family:"Sawarabi Mincho","Times New Roman","游明朝",serif;
}
img.link {
	margin: 8px 0 0 5px;
}

.color_white {
	color: #fff !important;
}

.box-width {
	width: 90%;
	max-width: 960px;
	height: auto;
	margin: 0 auto;
	padding: 60px 0;
	position: relative;
}

.box-width-100 {
	width: 100%;
	max-width: 960px;
	height: auto;
	margin: 0 auto;
	padding: 60px 0;
}

.box-width-max {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 60px 0;
	position: relative;
}

.button {
	display: block;
	font-size: 14px;
	font-weight: 100;
	width: 120px;
	height: 42px;
	margin: 0 auto;
	margin-top: 40px;
	text-align: center !important;
	text-decoration: none;
	outline: none;
	line-height: 42px;
	background-color: #666;
	border: 1px solid #666;
	color: #fff;
}
.button::before,
.button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button,
.button::before,
.button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
#single_article p a.button {
	color: #fff;
	text-decoration: none;
}
.button:active,
.button:visited  {
	color: #fff;
	text-align: center;
	text-decoration: none;
}
.button:hover {
	background-color: #f9f9f9;
	border-color: #666;
	color: #666;
	text-decoration: none;
}

.bg_gray {
	background: #f9f9f9;
}

.bg_dark {
	background: no-repeat center center;
	background-size: cover;
	position: relative;
}
.bg_dark::before{
	background-color: rgba(0,0,0,0.5);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}

#page_nav {
	 width: 100%;
	 margin-top: 20px;
	 text-align: center;
}

.mapp-layout {
	margin: 0;
	border: none;
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}



/*-----------------------------
	共通
------------------------------*/

#header {
	width: 100%;
	height: 100%;
	background: center top no-repeat;
	background-size: cover;
	position: relative;
}
.shadow::before{
	/* 透過した黒を重ねる */
	background-color: rgba(0,0,0,0.2);
	/* どの範囲に重ねるかを指定 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}

#container {
	width: 100%;
	height: 100%;
	position: relative;
}

#maincontents {
	padding-top: 20px;
}

.catch {
	font-family:"Sawarabi Mincho","Times New Roman","游明朝",serif;
	font-size: 30px;
	color: #fff;
	width: 100%;
	height: 100%;
	font-weight: 100;
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
}
.w100{
	width: 100%!important;
	display: contents;
}
.tx-s{
	font-size: 80%!important;
    line-height: 1.5em;
    color: #999;
}
.mb_10{
	margin-bottom: 10px;
}

.mb_20{
	margin-bottom: 20px;
}

.top_notice {
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 10px 20px;
	background: rgba(0, 0, 0, 0.8);
}
.top_notice p {
	color: #fff;
}
.top_notice a {
	color: #fff;
	text-decoration: underline;
}


/* ナビゲーション */

#nav {
	width: 100%;
	height: 60px;
	background: #e6e6e6;
	position: absolute;
	z-index: 9998;
}

#nav.fixed {
	position: fixed;
	top: 0;
}




/* インフォメーション */

#top_info {
	width: 100%;
	height: auto;
	margin: 0 auto;
	background: #f9f9f9;
	float: left;
}

.information_list {
	width: 100%;
	max-width: 700px;
	margin: 0 auto;
	margin-bottom: 20px;
	border-top: 1px solid #ccc;
}

.information_list li a {
	display: block;
	padding: 20px 10px;
	border-bottom: 1px solid #ccc;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.information_list li a:hover {
	-webkit-transition: all .3s;
	transition: all .3s;
	background: #555;
	color: #fff;
}


/* トップページ切り替えタブ */

#top_news {
	width: 100%;
	height: auto;
	margin: 0 auto;
	float: left;
}



/* トップページ切り替えタブ */

ul.tabs {
	display: flex;
	justify-content: space-between;
	width: 600px;
	height: 40px;
	margin: 0 auto;
	margin-bottom: 40px;
	border-top: #999 solid 1px;
	border-left: #999 solid 1px;
}
ul.tabs li {
	width: 100%;
}
ul.tabs li a {
	width: 100%;
	height: 40px;
	font-size: 10px;
	border-right: #999 solid 1px;
	border-bottom: #999 solid 1px;
	border-collapse: collapse;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
}
ul.tabs li a,
ul.tabs li a:active,
ul.tabs li a:visited,
ul.tabs li a:hover {
	text-decoration: none;
}
ul.tabs li.active a,
ul.tabs li.active a:active,
ul.tabs li.active a:visited,
ul.tabs li.active a:hover {
	color: #fff !important;
	background: #555;
}



/* ニュース一覧 */

.news_thumb {
	width: 100%;
	margin-bottom: 10px;
	border: 1px solid #ccc;
	overflow: hidden;
}
.news_thumb img {
	width: 100%;
    transition: transform 0.3s linear;
}
.news_thumb img:hover {
    transform: scale(1.1);
}
.news_info {
	width: 100%;
}
.news_info p.news_date {
	font-size: 12px;
	font-weight: bold;
}
.news_info h3.news_title,
.news_info h3.news_title a,
.news_info h3.news_title a:active,
.news_info h3.news_title a:visited  {
	font-weight: bold;
	color: #666;
}
.news_info p.news_caption {
	margin-top: 10px;
	font-size: 14px;
	line-height: 22px;
}

.slider .news_box {
	margin-top: 0;
}



/* 見出し */

.ttl {
	text-align: center;
}

.ttl h1,
.ttl h3 {
	display: inline-block;
	color: #666;
	font-family:"Sawarabi Mincho","Times New Roman","游明朝",serif;
	font-size: 14px;
	font-weight: 100;
	padding: 10px 30px;
	border: 1px solid #999;
	margin-bottom: 40px
}




/* コンセプト */

#concept {
	margin-top: 60px;
}




/* インスタグラムスクロール */

#instagram {
	width: 100%;
	height: auto;
	padding: 60px 0 40px 0;
}

.instagoods {
	margin: 60px 0;
}

#insta_scroll {
	width: 100%;
	height: auto;
}

#insta_scroll img {
	width: 100%;
}

#insta_scroll .trim {
	overflow: hidden;
	height: 200px;
	position: relative;
}

#insta_scroll .trim img {
	height: 100%;
	object-fit: cover;
}

.instafollow {
	width: 100%;
	text-align: center;
	margin-bottom: 20px;
}
.instafollow h3 {
	font-size: 20px;
	text-align: center;
}
.instafollow i {
	font-size: 12px;
}




/* インスタグラムスクロール */
.event_calendar {
	background: #f9f9f9;
}



/* イベントカレンダー */

#wp-calendar caption {
	text-align: center;
}
#wp-calendar thead {
	background: #f2f2f2;
	text-align: center;
}
#wp-calendar thead th {
	text-align: center;
	border: solid 1px #ddd;
}
#wp-calendar tbody td {
	width: 100px;
	height: 60px;
	text-align: right;
	border: solid 1px #ddd;
	overflow: hidden;
	word-break : break-all;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
#wp-calendar tbody td.today {
	background: #f6f6f6;	
}
#wp-calendar tbody td.event a,
#wp-calendar tbody td.event a:active,
#wp-calendar tbody td.event a:visited,
#wp-calendar tbody td.event a:hover  {
	color: #fff;
	text-align: right;
	padding: 0 5px;
	text-decoration: none;
	background: #777;
	display: block;
	overflow: auto;
	height: 60px;
	cursor: pointer;
}
#wp-calendar tbody td.event a:after {
	display: block;
	content: attr(title);
	font-size: 12px;
	text-align: left;
	color: #fff;
	width: 100%;
}
#eo-widget-next-month {
	text-align: right !important;
}




/* 各カテゴリロゴ */

#cat_head {
	width: 100%;
	height: 500px;
}

#cat_logo {
	width: 100%;
	height: 97px;
	text-align: center;
	padding-top: 113px;
}

#cat_logo img {
	width: 220px;
}
#cat_logo.cafe_logo img {
	width: 330px;
	max-width: 80%;
}

#cat_image {
	width: 100%;
	height: 350px;
	background: center center;
	background-size: cover;
}


/* 各カテゴリMAP */

.cat_map iframe {
	width: 100%;
	height: 400px;
	margin: 0 !important;
	border: 1px solid #ccc !important;
	box-sizing:border-box;
	filter: grayscale(100%);
}


/* アーカイブ */

#archive,
#category {
	padding-top: 60px;
}




/* シングル記事 */

#single_article p a {
	color: #584342;
	text-decoration: underline;
}

#single_article .ttl {
	padding-top: 40px;
}

#single_article p img {
	margin: 10px 0;
}

#post_date {
	margin-bottom: 20px;
}

.eo-event-meta li {
	margin: 0;
}




/* Youtubeレスポンシブ埋め込み */
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}




/* ファミリールーム */
.familyroom {
	width: 100%;
	text-align: center;
}
.familyroom img {
	width: 100%;
	margin-bottom: 20px;
}
.border_box {
	display: block;
	width: 100%;
	height: auto;
	padding: 20px 3%;
	border: 1px solid #999;
	box-sizing: border-box;
}
.border_box p {
	font-size: 12px;
	line-height: 1.4em;
}


/* カフェ予約ボタン */
.reserve,
.reserve:visited {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 600px;
	height: 80px;
	margin: 60px auto;
	border: 1px solid #856d63;
	background: #856d63;
	text-align: center;
	color: #fff;
	transition: all .3s;
}
.reserve:hover {
	background: #fff;
	color: #856d63;
	text-align: center;
	transition: all .3s;
}


/* カフェメニュー切り替えタブ */

#cafemenu {
}
#cafemenu .menu_caption h3 {
    padding: 0 0 10px;
	margin: 0 0 20px 0!important;
    border-bottom: 2px solid #666;
}
#cafemenu .menu_caption h3 span.cal{
    color:#999;
	float: right;
	font-size: 0.8em;
	
}
#cafemenu .menu_caption p {
	font-size:14px;
    font-weight: normal; 
	line-height: 1.7em;
}

#cafemenu .comment{
	background: #f9f9f9;
	padding: 20px;
	border-radius: 4px;
	margin: 30px 0 0 0;
}
.tx-c {
	color:#93804d;
}
.tx_110 {
	font-size: 110%;
	line-height: 1.6;
}
.bold{
	font-weight: bold;
}
ul.menu_tabs {
	width: 80%;
	height: 40px;
	margin: 0 auto;
	margin-bottom: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
}
ul.menu_tabs li {
	display: block;
	width: 100%;
	height: 40px;
	border: 1px solid #999;
	margin-left:-1px;
	margin-top:-1px;
}
ul.menu_tabs li a {
	display: block;
	width: 100%;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-collapse: collapse;
	box-sizing: border-box;
}
ul.menu_tabs li a,
ul.menu_tabs li a:active,
ul.menu_tabs li a:visited,
ul.menu_tabs li a:hover {
	text-decoration: none;
}
ul.menu_tabs li.active a,
ul.menu_tabs li.active a:active,
ul.menu_tabs li.active a:visited,
ul.menu_tabs li.active a:hover {
	color: #fff !important;
	background: #555;
}



/* カフェメニュー一覧 */

.menu_list {
	width: 80%;
	height: auto;
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
}
@media (max-width: 767px) { 
	.menu_list {
	width: 96%;
	height: auto;
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
} }

.menu_box {
	width: 46%;
	height: auto;
	margin: 0 2%;
	margin-bottom: 20px;
}

.menu_thumb {
	width: 100%;
	margin-bottom: 30px;
	text-align: center;
}

.menu_thumb img {
	width: 100%;
    margin-bottom: 20px;
	height: auto;
}

.menu_info {
	width: 100%;
	margin: -20px auto 10px auto;
}

h3.menu_title {
	font-size: 15px;
	margin-bottom: 5px;
}

p.menu_price {
	font-size: 11px;
	font-weight: bold;
	margin-bottom: 5px;
	line-height: 1.5em;
}

.menu_caption p {
	font-size: 12px;
	font-weight: bolder;
	line-height: 1.5em;
}

.set_menu {
	width: 100%;
	height: auto;
	display: flex;
	flex-wrap: wrap;
}

.set_menu img {
	width: 46%;
	height: auto;
	margin: 0 2%;
	margin-top: 30px;
}

.drink_list {
	width: 100%;
	height: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 30px;
}
.drink_list h3 {
	width: 100%;
	padding-bottom: 10px;
	border-bottom: 1px solid #ccc;
}
.drink_list p {
	width: 100%;
	padding: 10px 0;
	border-bottom: 1px solid #ccc;
}
.drink_list ul {
	width: 48%;
	padding: 10px 0;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #ccc;
}

.cafe-information {
	display: flex;
	justify-content: space-between;
	gap: 40px;
}
@media screen and (max-width: 940px)
{
	.cafe-information {
		flex-wrap: wrap;
	}
}
.cafe-information img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.cafe-information > div {
	width: 100%;
}
.cafe-info {
	display: flex;
	margin-bottom: 20px;
}
.cafe-info h4 {
	display: block;
	width: 100px;
}
.cafe-info p {
	display: block;
	width: 100%;
}



/* ホールイベントカレンダー */
#calendar .fc-toolbar h2,
#calendar .fc-icon {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
	font-weight: bold;
	font-size: 20px;
}
.fc-button {
	font-size: 12px !important;
	padding: 0.2em 1em !important;
}
.fc-scroller {
	height: auto !important;
}
.fc-basic-view .fc-body .fc-row {
	max-height: 180px;
	overflow: hidden;
}
.fc-basic-view .fc-body .fc-row tbody tr td a {
	display: block;
	height: 144px;
	height: auto;
	padding: 5px 0;
	overflow: scroll;
}
#calendar thead .fc-widget-header {
	background: #999;
	color: #fff;
	font-weight: bold;
}
#calendar thead .fc-widget-header.fc-sat,
.fc-sat .fc-day-number {
	background: #6078b0 !important;
	color: #fff;
}
#calendar thead .fc-widget-header.fc-sun,
.fc-sun .fc-day-number {
	background: #b74949 !important;
	color: #fff;
}
#calendar .fc-day-number {
	display: block;
	width: 20px;
	text-align: center;
	font-size: 8px;
	font-weight: bold;
	background: #555;
	color: #fff;
}
#calendar .fc-bg td.fc-other-month {
	background: #eee;
}
#calendar .fc-event p {
	font-size: 10px;
	line-height: 1.6em;
	font-weight: bold;
	margin-top: 5px;
}
/*#calendar .fc-event div {
	position: relative;
	width: 100%;
	padding-top: 100%;
}
#calendar .fc-event div img {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
}*/
#calendar .fc-today {
	background: #e0d9c9 !important;
}

.hall_info_btn {
	width: 100%;
	text-align: center;
	margin-top: 80px;
}
.hall_info_btn a {
	padding: 20px 30px;
	font-size: 12px;
	font-weight: bold;
	color: #fff;
	background: #b74949;
}

#hall_article {
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.column_left {
	width: 30%;
}
.column_left img {
	width: 100%;
}
.column_right {
	width: 65%;
}


/* ホール利用規約 */
.hall_slider {
	width: 100%;
	height: auto;
	position: relative;
	margin-bottom: 40px !important;
}
.hall_slide_content {
	width: 100%;
	margin: 20px;
}
.hall_slide_content img {
	width: 100%;
}
.hall_slide_text {
	position: relative;
	margin-top: 10px;
	padding: 0 1%;
	max-width: 98%;
}
.hall_slide_text p {
	font-size: 12px;
	margin: 0;
	line-height: normal;
	letter-spacing: 0;
}
.hall_slider .slick-center img {
	transform: scale(1.05);
	transition: .3s ;
}

.two_column {
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.left_column {
	display: block;
	width: 25%;
	height: 30px;
	font-size: 12px;
	font-weight: bolder;
	line-height: 30px;
	text-align: center;
	color: #fff;
	background: #666;
	margin-top: 40px;
}
.right_column {
	display: block;
	width: 70%;
	font-size: 14px;
	font-weight: 200;
	line-height: 1.8em;
	color: #666;
	margin-top: 40px;
}
.right_column img {
	max-width: 100%;
	height: auto;
	border: 1px solid #666;
}


/* 塞翁が馬 */
#saiougauma {
	
}
.saiougauma {
	width: 100%;
	text-align: center;
}
.saiougauma img {
	width: 100%;
	margin-bottom: 20px;
}
.saiougauma a {
	text-decoration: underline;
}




/* イベントレポート */
.report_list {
	width: 100%;
	border-top: 1px solid #ddd;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.report_box {
	width: 48%;
	padding-bottom: 20px;
	border-bottom: 1px solid #ddd;
	margin-top: 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.report_thumb {
	width: 16%;
}
.report_thumb img {
	width: 100%;
}
.report_info {
	width: 80%;
}
.report_ttl {
	display: inline-block;
	vertical-align: top;
	color: #fff;
	font-size: 7px;
	font-weight: bold;
	padding: 0 3px;
	margin-bottom: 3px;
	background: #666;
}
.report_title {
	font-weight: bold;
	color: #666;
}
.report_date {
	font-size: 10px;
}




/* 店舗一覧 */

.shop_logo {
	width: 100%;
	height: auto;
	text-align: center;
	margin: 80px 0;
}

.shop_info {
	width: 100%;
	height: auto;
	text-align: center;
}
.shop_info > h3 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	color: #fff;
	font-size: 18px;
	text-align: left;
	padding: 20px;
	margin-bottom: 10px;
	background: #aaa;
}
.shop_info > h3 span {
	transition: .3s;
	transform: rotate(0deg);
}
.shop_info > h3.open span {
	transition: .3s;
	transform: rotate(225deg);
}
.shop_info > div {
	margin-bottom: 60px;
}
.shop_detail_01,
.shop_detail_02 {
	width: 100%;
	height: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.shop_detail_01 .shoplist_flex,
.shop_detail_02 .shoplist_flex {
	width: 49%;
	margin-bottom: 20px;
	text-align: left;
    overflow: hidden;
    position: relative;
}
.shop_detail_02 .shoplist_flex {
	width: 100%;
	height: 250px;
}
.shoplist_flex h3 {
	text-align: center;
	display: block;
	background: #999;
	color: #fff;
	padding: 10px;
	margin-bottom: 10px;
}
.shoplist_flex p {
	line-height: 1.8em;
}

.shop_photo img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.shop_detail_02 iframe {
	width: 100%;
	height: 100%;
	margin: 0 !important;
	border: 1px solid #ccc !important;
	box-sizing:border-box;
	filter: grayscale(100%);
}

.mapp-map-links,
.gm-style-cc {
	display: none;
}

.shoplist_insta {
	width: 100%;
	height: auto;
}

.shoplist_insta img {
	width: 100%;
}

.shoplist_insta .trim {
	overflow: hidden;
	width: 200px;
	height: 200px;
	position: relative;
}

.shoplist_insta .trim img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}







/* 求人情報 */
.recruit_archive img {
	display: block;
	height: auto;
	margin: 0 auto;
}

.recruit_content h3 {
	width: 100%;
	background: #666;
	color: #fff;
	text-align: center;
	padding: 5px 0;
	margin-top: 20px;
}
.recruit_select {
	display: flex;
	flex-wrap: wrap;
    justify-content:space-around;
	width: 100%;
}
.recruit_select a {
	display: inline-block;
	width: 30%;
	height: 60px;
	background: #999;
	color: #fff;
	font-size: 0.8em;
	font-weight: bold;
	text-align: center;
	line-height: 60px;
	margin: 20px 0;
	border: 1px solid #666;
	border-radius: 5px;
}

.rec_list_ttl {
	font-size: 20px;
}
.recruit_lists {
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
	width: 100%;
}
.recruit_list {
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
	width: 45%;
	height: auto;
	padding: 0 2%;
	margin-bottom: 20px;
	background: #eee;
	border-radius: 10px;
}
.rec_list_ttl {
	display: block;
	width: 100%;
	height: auto;
	text-align: justify;
}
.recruit_list .rec_list_left {
	display: block;
	width: 35%;
	height: auto;
}
.recruit_list .rec_list_right {
	display: block;
	width: 60%;
	height: auto;
}
.recruit_list div a {
	display: inline-block;
	width: 100%;
	height: 55px;
	background: #911;
	color: #fff;
	font-size: 0.8em;
	font-weight: bold;
	text-align: center;
	line-height: 55px;
	margin: 5px 0 20px 0;
	border: 1px solid #666;
	border-radius: 5px;
}
.recruit_list div a:first-child {
	background: #666;
}

.rec_headinfo {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	border-left: 1px solid #666;
	border-bottom: 1px solid #666;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.rec_headinfo_01,
.rec_headinfo_02 {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	padding: 10px 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	text-align: center;
	line-height: auto;
}
.rec_headinfo_01 {
	width: 20%;
	background: #999;
}
.rec_headinfo_02 {
	width: 30%;
}
.rec_headinfo_01 p {
	color: #fff !important;
}

.recruit_image {
	margin: 20px auto;
}
.recruit_image img {
	margin: 0 5px;
}

.recruit_image .slick-dots {
	bottom: auto;
}

.rec_appli {
	display: block;
	width: 240px;
	height: 60px;
	background: #911;
	color: #fff !important;
	font-size: 1.1em;
	font-weight: bold;
	text-align: center !important;
	line-height: 60px;
	margin: 20px auto;
	border: 1px solid #666;
	border-radius: 10px;
}



/* インタビューページ */
.interview_lists {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
    justify-content: space-between;
	width: 100%;
}
.interview_list {
	display: block;
	width: 30%;
	height: auto;
	padding: 10px 1%;
	margin: 10px 0;
	background: #eee;
	border-radius: 10px;
}
.interview_list .int_thumb,
.interview_list .int_thumb img {
	display: block;
	width: 100%;
	height: auto;
}
.interview_list h2 {
	font-size: 14px;
	margin: 0;
	margin-top: 10px;
	line-height: 1.8em;
}

.iv_headinfo {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 20px;
}
.iv_headinfo_01 ,
.iv_headinfo_02 {
	display: block;
	width: 49%;
}
.iv_headinfo_01 img {
	width: 100%;
	margin-bottom: 10px;
}
.iv_headinfo_02 h2 {
	font-size: 16px;
	margin: 0;
	margin-bottom: 10px;
	line-height: 1.8em;
}
.iv_headinfo_02 p {
	font-size: 12px;
	line-height: 1.8em;
}

.interviews a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 40px;
	background: #efefef;
}
.interviews a img {
	display: block;
	width: 50%;
	aspect-ratio: 4 / 3;
	height: auto;
	object-fit: cover;
}
.interviews a div {
	display: block;
	width: calc(50% - 40px);
	padding: 0 20px;
}
.interviews a h2 {
	font-size: 18px;
}



/* 問い合わせページ */
.wpcf7-form {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}
.wpcf7-form-control-wrap input[type="text"],
.wpcf7-form-control-wrap input[type="tel"],
.wpcf7-form-control-wrap input[type="email"],
.wpcf7-form-control-wrap input[type="url"],
.wpcf7-form-control-wrap textarea {
	width: 96%;
	font-size: 120%;
	letter-spacing: 0.2em;
	line-height: 1.6em;
	padding: 5px 2%;
	background: #fcfcfc;
}
.wpcf7-select {
	font-size: 120%;
	letter-spacing: 0.2em;
	line-height: 1.6em;
	padding: 5px 2%;
	background: #fcfcfc;
	border: 1px solid #ccc;
	height: 40px;
}
input[type="radio"] {
	margin-right: 5px;
}
.wpcf7-radio .wpcf7-list-item {
	margin-right: 10px;	
}
.wpcf7-submit {
	padding: 10px 20px !important;
	font-weight: bold;
}
div.wpcf7 .ajax-loader {
	display: block;
}
.must {
	background: #c00;
}
.free {
	background: #999;
}
.must,
.free {
	color: #FFF;
	border-radius: 3px;
	font-size: 80%;
	font-weight: bold;
	margin-right: 8px;
	padding: 2px 5px;
	letter-spacing: 0.2em;
}
.wpcf7-mail-sent-ok {
	border: 2px solid #e00;
}
.screen-reader-response,
.wpcf7-response-output {
	text-align: center;
	color: #e00;
	margin: 20px 0;
}
.screen-reader-response ul {
	display: none;
}

.wpcf7-form p.recap_text {
	font-size: 10px;
	line-height: 1.4em;
	text-align: right;
	letter-spacing: 0;
	color: #999;
	margin-top: 40px;
}
.wpcf7-form p.recap_text a {
	text-decoration: underline;
}
.grecaptcha-badge {
	visibility: hidden;
}



/* サイトマップ */

#information {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding-bottom: 60px;
	background: #f3f3f3;
	float: left;
}

.info_list p {
	font-size: 12px;
	line-height: 2.6em;
}
.info_list p {
	font-size: 12px;
	line-height: 2.6em;
}

.info_list img {
	margin-bottom: 10px;
}

.info_sns {
	width: 140px;
	height: 20px;
	margin-bottom: 10px;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;	
}

#pageplugin {
	margin-top: 20px;
    width: 100% !important;
}
.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style]{
    width: 100% !important;
}
#foot_twitter {
	margin-top: 20px;
    width: 100% !important;
}
#foot_twitter iframe {
	border: 1px solid #ccc !important;
	box-sizing:border-box;
}



/* フッター */

#footer {
	width: 100%;
	height: auto;
	background: #666;
	padding: 40px 0;
}

.foot_sns {
	width: 140px;
	height: 20px;
	margin: 20px auto;
    display: flex;
    justify-content: space-between;
}

.foot_content {
	width: 90%;
	max-width: 960px;
	height: auto;
	margin: 0 auto;
	text-align: center;
}

p#copyright {
	font-size: 12px;
	color: #fff;
	letter-spacing: 0.1em;
	width: 100%;
	height: auto;
	text-align: center;
}










/*-----------------------------
	PC設定
------------------------------*/

@media screen and (min-width: 961px)
{

.smp {
	display: none !important;
}




/* ウェブストアリンク */

#webstore {
	width: 120px;
    position: fixed;
    bottom: 40px;
    right: 40px;
    z-index: 9999;
}
#webstore > div {
	width: 100%;
}
#webstore > div a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	margin-bottom: 20px;
	background: #534842;
	border-radius: 50%;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
}
#webstore a img {
	width: 100%;
}




/* トップページヘッダー */

#logo_head {
	width: 960px;
	height: auto;
	margin: 0 auto;
	padding-top: 40px;
}
#logo_head img {
	position: absolute;
}
#catch {
	font-size: 60px;
	margin-top: -30px;
	-moz-text-shadow:0px 0px 10px #666;
	-webkit-text-shadow:0px 0px 10px #666;
	text-shadow:0px 0px 10px #666;
}




/* ナビゲーション */

.pc_nav {
	width: 960px;
	height: 60px;
	margin: 0 auto;
}
#nav .logo {
	width: 160px;
	height: 14px;
	margin: 23px 0;
	float: left;
}
#nav .logo img {
	margin-top: -16px;
}
#nav ul {
	width: 700px;
	height: 60px;
	text-align: right;
	float: right;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#nav ul li a {
	display: flex;
	align-items: center;
	height: 60px;
	font-weight: 300;
	color: #666;
	text-align: center;
	text-decoration: none;
	position: relative;
}

#nav ul li a:before,
#nav ul li a:after {
  position: absolute;
  bottom: 0px;
  content: "";
  display: inline-block;
  width: 0;
  height: 2px;
  background: #666;
  transition: .3s;
}

#nav ul li a:before{
  left: 50%;
}

#nav ul li a:after{
  right: 50%;
}

#nav ul li a:hover:before,
#nav ul li a:hover:after{
  width: 50%;
}



/* トップページ */

#department {
	width: 100%;
	height: auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}
.department {
	width : 100% ;
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	border-right: 1px solid #aaa;
	box-sizing: border-box;
	border-collapse: collapse;
}
.department:first-child {
	border-left: 1px solid #aaa;
}
.department_image {
	width: 100%;
	padding-bottom: 100%;
	background: center top;
	background-size: cover;
	position: relative;
}
.department_logo {
	height: 120px;
	width: 100%;
	background: #fff;
	text-align: center;
}
.department_logo a {
	display: block;
	width: 100%;
	height: 100%;
	background: center center no-repeat;
	background-size: contain;
}



/* ニュース一覧 */

.news_list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.news_box {
	width: 27.33333%;
	margin: 0 3%;
	margin-bottom: 20px;
}




/* サイトマップ */
.info_list {
	width : 30%;
	margin-right: 3%;
	float: left;
}




/* 文章横幅 */

.text {
	width: 750px;
	height: auto;
	margin: 0 auto;
}

}






/*-----------------------------
	タブレットスマホ設定
------------------------------*/

@media screen and (max-width: 960px)
{

.pc {
	display: none;
}

.box-width {
	width: 90%;
	height: auto;
	margin: 0 auto;
}

.button {
	margin-top: 60px;
}




/* ウェブストアリンク */

#webstore {
	width: 80px;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 9999;
}
#webstore > div {
	width: 100%;
}
#webstore > div a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	margin-bottom: 10px;
	background: #534842;
	border-radius: 50%;
	text-align: center;
	font-size: 12px;
	font-weight: bold;
	color: #fff;
}
#webstore a img {
	width: 100%;
}




/* トップページヘッダー */

#catch {
	font-size: 40px;
	margin-top: -30px;
	-moz-text-shadow:0px 0px 10px #666;
	-webkit-text-shadow:0px 0px 10px #666;
	text-shadow:0px 0px 10px #666;
	white-space: nowrap;
}

#logo_head {
	width: 90%;
	height: auto;
	margin: 0 auto;
	padding-top: 20px;
}
#logo_head img {
	position: absolute;
}




/* ナビゲーション */

#logo {
	width: 160px;
	height: 14px;
	margin: 18px auto;
}

#nav ul {
	width: 100%;
	height: auto;
}
#nav ul li {
}

.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: absolute;
	top: 15px;
	right: 10px;
	width: 40px;
	height: 30px;
	cursor: pointer;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #fff;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 13px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.open .menu-trigger span:nth-of-type(1) {
	transform: translateY(13px) rotate(-45deg);
}
.open .menu-trigger span:nth-of-type(2) {
	opacity: 0;
}
.open .menu-trigger span:nth-of-type(3) {
	transform: translateY(-13px) rotate(45deg);
}
.open .menu-trigger span {
	position: absolute;
	z-index: 9998;
}

.menu {
    position: fixed;
    display: table;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0,0,0,.8);
    transition: all .5s;
    visibility: hidden;
    opacity: 0;
	z-index: 100;
}

.menu ul {
    display: table-cell;
    vertical-align: middle;
}

.menu li {
    width: 200px;
    height: 20px;
    line-height: 20px;
    margin: 0 auto;
    margin-bottom: 30px;
    text-align: center;
}

.menu li.menu_sns {
    width: 120px;
    height: 50px;
	margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

.menu li a {
    display: block;
    font-size: 18px;
    color: #fff;
    text-align: center;
}

.menu li a:hover {
    color: #999;
}

.open .menu {
    transition: all .5s;
    visibility: visible;
    opacity: 1;
}




/* トップページ */

#department {
	width: 100%;
	height: auto;
	float: left;
	border-bottom: 0.1px solid #aaa;
}
.department {
	width : 100% ;
	border-top: 0.1px solid #aaa;
	float: left;
}
.department_image {
	width: 50%;
	position: relative;
	padding-bottom: 50%;
	background: center top;
	background-size: cover;
	float: left;
}
.department_logo {
	width: 50%;
	position: relative;
	padding-bottom: 50%;
	background: #fff;
	text-align: center;
	float: left;
}
.department_logo a {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	background: center center no-repeat;
	background-size: contain;
}

.catch {
	font-size: 30px;
}

#wp-calendar tbody td.event a:after {
	font-size: 10px;
}




/* トップページ切り替えタブ */

ul.tabs {
	width: 90%;
}




/* ニュース一覧 */

.news_list {
	width: 100%;
	height: auto;
	margin: 0 auto;
}
.news_box {
	width: 99%;
	margin: 0 0.5%;
	margin-top: 40px;
	float: left;
}
.news_box:first-child {
	margin-top: 0px;
}



/* カフェメニュー切り替えタブ */
ul.menu_tabs {
	width: 100%;
	height: 80px;
	flex-wrap: wrap;
}
ul.menu_tabs li {
	width: 30%;
}



/* カフェメニュー一覧 */

.menu_box {
	width: 96%;
	height: auto;
	margin: 0 2%;
	margin-bottom: 20px;
}

h3.menu_title {
	font-size: 13px;
}

p.menu_price {
	font-size: 10px;
}

.set_menu {
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
	height: auto;
	display: flex;
	flex-wrap: wrap;
}

.set_menu img {
	width: 100%;
	margin: 0;
	margin-top: 20px;
}

.drink_list ul {
	width: 100%;
}
.drink_list ul li {
	font-size: 12px;
}



/* イベントレポート */
.report_box {
	width: 100%;
}



/* イベントカレンダー */
.fc-list-item {
	width: 100%;
	margin: 0 auto;
	height: auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.fc-list-item div,
.fc-list-item p {
	display: block;
	height: auto;
	margin: 20px 2%;
}
.fc-list-item div {
	width: 20%;
}
.fc-list-item p {
	width: 70%;
}
.fc-list-item div img {
	width: 100%;
}
.fc-ltr .fc-list-heading-alt,
.fc-rtl .fc-list-heading-main {
    float: none !important;
}
.fc-ltr .fc-list-heading-alt:before {
	content: '(';
}
.fc-ltr .fc-list-heading-alt:after {
	content: ')';
}


/* ホールイベント詳細 */
.column_left,
.column_right {
	width: 100%;
}
.fc-list-empty-wrap2 {
	position: relative !important;
}
.fc-list-empty {
	padding: 40px 0;
}



/* ホール利用規約 */
.left_column {
	width: 240px;
	margin: 0 auto;
	margin-top: 40px;
}
.right_column {
	width: 100%;
	margin-top: 20px;
}


/* 店舗一覧 */
.shop_info > h3 {
	font-size: 3vw;
}
.shop_detail_01 .shoplist_flex,
.shop_detail_02 .shoplist_flex {
	width: 100%;
}
.shop_photo img {
	aspect-ratio: 16 / 9;
}



/* 求人情報 */
.recruit_list {
	width: 100%;
}
.rec_headinfo_01 {
	width: 30%;
}
.rec_headinfo_02 {
	width: 70%;
}



/* インタビュー */
.interview_list {
	width: 46%;
}
.interview_list h2 {
	font-size: 12px;
}
.iv_headinfo_01 ,
.iv_headinfo_02 {
	display: block;
	width: 100%;
}

.interviews a {
	flex-direction: column;
}
.interviews a img {
	width: 100%;
	aspect-ratio: 16 / 9;
}
.interviews a div {
	width: calc(100% - 40px);
	padding: 20px;
}
.interviews a div h2 {
	font-size: 4.5vw;
}


/* インスタグラムスクロール */

.instagoods {
	margin: 40px 0;
}

#insta_scroll .trim {
	overflow: hidden;
	height: 200px;
	position: relative;
}

#insta_scroll .trim img {
	height: 100%;
	object-fit: cover;
}



/* サイトマップ */

#information {
	padding-bottom: 0px;
}


}





/* マージン用 */

.mb0 {
	margin-bottom: 0px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb60 {
	margin-bottom: 60px !important;
}
.mb80 {
	margin-bottom: 80px !important;
}

.mt0 {
	margin-top: 0px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt60 {
	margin-top: 60px !important;
}
.mt80 {
	margin-top: 80px !important;
}