body {
	font-size: 12px;
	line-height: 1.8em;
	color: #231815;
}
.clear {
	clear: both;
}
#container {
	margin: 0 auto;
	position: relative;
	min-height: 300px;
}
#container .pagebody {
	padding: 60px 0 0 0;
}
#container .pagebody .pagebody_inner {
	margin: 0 0 60px 0;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#container .pagebody {
		padding: 112px 0 0 0;
	}
}

/*-------------------------------------------
 topic_path_top
-------------------------------------------*/
.topic_path_top {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	color: #666;
	font-family: 'Abel', sans-serif;
    font-weight: 400;
	padding: 7px 0 7px 35px;
}
.topic_path_top ul {
	font-size: 0;
}
.topic_path_top ul li {
	display: inline-block;
	vertical-align: top;
	font-size: 12px;
}
.topic_path_top ul li + li::before {
	content: '>';
	padding: 0 2px 0 5px;
}
.topic_path_top ul li a {
	color: #666;
	text-decoration: none;
}

/*-------------------------------------------
 site_header
-------------------------------------------*/
#site_header {
	position: fixed;
	height: 60px;
	width: 100%;
	background: #ffffff;
	padding: 10px 15px 10px 15px;
	z-index: 100;
	transition: .3s;
}
#site_header.scroll {
	box-shadow: 0 1px 2px rgba(0,0,0,0.2), 0 1px 2px 0 rgba(0,0,0,0.2);
	transition: .3s;
}
#site_header .site_logo {
	width: 150px;
	margin: 0 auto;
}
#site_header .site_logo a {
	display: block;
}

/* SPメニュー */
.header_navi_sp {
	height: 0;
	width: 100%;
	transition: .3s;
    opacity: 0;
	backface-visibility: hidden;
    /*position: fixed;*/
	position: absolute;
	left: 0;
    overflow: hidden;
	background-color: #f5f5f5;
	box-shadow: 0 1px 2px rgba(0,0,0,0.2), 0 1px 2px 0 rgba(0,0,0,0.2);
	margin: 0 0 0 0px;
}
.header_navi_sp.open {
	height: 100vh !important;
	transition: .3s !important;
    opacity: 1 !important;
    overflow-y: scroll;
}
.header_navi_sp .gnavi_list {
	padding: 30px 30px 30px 30px;
}
.header_navi_sp .gnavi_list li a {
	color: #000000;
	text-decoration: none;
	display: block;
	padding: 15px 10px 15px 10px;
	font-size: 16px;
    letter-spacing: 2px;
}
.header_navi_sp .gnavi_list .level2_sp a span {
	position: relative;
}
.header_navi_sp .gnavi_list .level2_sp a span::before {
	position: absolute;
    content: '＋';
    font-size: 25px;
    top: 0;
    right: -30px;
    font-weight: 200;
    color: #666666;
}
.header_navi_sp .gnavi_list .level2_sp.open a span::before {
    content: 'ー';
}
.header_navi_sp .gnavi_list .level2_sp ul {
	opacity: 0;
	height: 0;
	transition: .3s;
	display: none;
}
.header_navi_sp .gnavi_list .level2_sp.open ul {
	opacity: 1 !important;
	height: auto !important;
	transition: 1.0s !important;
	display: block;
}
.header_navi_sp .gnavi_list .level2_sp ul li a {
	font-size: 14px;
    margin: 0 0 0 0px;
    padding: 5px 10px 5px 30px;
}
.header_navi_sp .gnavi_list .level2_sp ul li a::before {
	content: '>';
	padding: 0 5px 0 0;
}
.header_navi_sp .header_sns {
	padding: 0 0 30px 0;
}
.header_navi_sp .header_sns ul {
	display: flex;
    justify-content: center;
}
.header_navi_sp .header_sns li {
	padding: 0 15px 0 15px;
}


/* SPメニューボタン */
#sp_menu {
	position: absolute;
	top: 0;
	right: 0;
	width: 60px;
	height: 95%;
	background: #ffffff;
}
#panel-btn {
	position: relative;
	color: #26a9dd;
    display: block;
    height: 100%;
}
#panel-btn-icon{
	display: block;
	position: absolute;
	top: 30%;
	left: 60%;
	width: 25px;
	height: 2px;
	margin: -1px 0 0 -14px;
	background: #333333;
	transition: .2s;
	border-radius: 10px;
}
#panel-btn-icon::before{
	display: block;
	content: "";
	position: absolute;
	top: 7px;
	right: 0;
	width: 80%;
	height: 2px;
	background: #333333;
	transition: .3s;
	border-radius: 10px;
}
#panel-btn-icon::after{
	display: block;
	content: "";
	position: absolute;
	top: 14px;
	right: 0;
	width: 60%;
	height: 2px;
	background: #333333;
	transition: .3s;
	border-radius: 10px;
}

.active #panel-btn-icon {
	border: 1px solid #ffffff;
	background: #ffffff !important;
}
.active #panel-btn-icon::before {
	-webkit-transform: translateY(20px) rotate(-45deg);
	transform: translateY(20px) rotate(-45deg);
	top: -15px !important;
    width: 20px;
}
.active #panel-btn-icon::after {
	-webkit-transform: translateY(-20px) rotate(45deg);
	transform: translateY(-20px) rotate(45deg);
	top: 25px !important;
    width: 20px;
}

/* DeskTop */
@media screen and (min-width: 1024px) and (max-width:1100px) {
	#site_header .header_list {
		width: 70% !important;
	}
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#site_header {
	}
	#site_header .inner {
		margin: 0 auto;
		position: relative;
	}
	#site_header .inner .header_lead {
		position: absolute;
		right: 0;
		top: 0;
	}
	#site_header .header_left {
		float: left;
	}
	#site_header .site_logo {
		width: auto;
		max-width: 250px;
    	margin: 20px 0 0 0;
	}
	#site_header .header_list {
		float: right;
	}
	#site_header .header_list .header_navi {
		margin: 60px 0 0 0;
	}
	/* gnavi */
	#site_header .header_navi .gnavi_list > li > a {
		position: relative;
		width: auto;
		height: 20px;
		text-align: center;
		padding: 0 0 0 0 !important;
	}
	#site_header .header_navi .gnavi_list li a span {
		position: absolute;
		width: 100%;
		height: 10px;
		text-align: center;
					  
		display: block;
	}
	#site_header .header_navi .gnavi_list li a span:nth-child(1) {
		transform: rotateX(0deg);
		-webkit-transform: rotateX(0deg);
		-moz-transform: rotateX(0deg);
		transition: all 0.2s ease;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		transform-origin: 50% 50% -25px;
		-webkit-transform-origin: 50% 50% -25px;
		-moz-transform-origin: 50% 50% -25px;
	}
	#site_header .header_navi .gnavi_list li a span:nth-child(2) {
		opacity: 0;
		transform: rotateX(90deg);
		-webkit-transform: rotateX(90deg);
		-moz-transform: rotateX(90deg);
		transition: all 0.2s ease;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		transform-origin: 50% 50% -25px;
		-webkit-transform-origin: 50% 50% -25px;
		-moz-transform-origin: 50% 50% -25px;
	}
	#site_header .header_navi .gnavi_list li a:hover span:nth-child(1) {
		transition: all 0.2s ease;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		transform: rotateX(-90deg);
		-webkit-transform: rotateX(-90deg);
		-moz-transform: rotateX(-90deg);
	}
	#site_header .header_navi .gnavi_list li a:hover span:nth-child(2) {
		opacity: 1;
		transition: all 0.2s ease;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		transform: rotateX(0deg);
		-webkit-transform: rotateX(0deg);
		-moz-transform: rotateX(0deg);
	}

	#site_header .header_navi .gnavi_list li.level2_pc {
		position: relative;
	}
	#site_header .header_navi .gnavi_list li.level2_pc ul {
		display: none;
	}
	#site_header .header_navi .gnavi_list li.level2_pc:hover ul {
		display: block;
		position: absolute;
		background: rgba(255,255,255,0.9);
		box-shadow: 2px 2px 4px 1px #ccc;
		/*bottom: -223px;*/
		top: 32px;
		width: 250px;
		left: -13%;
		padding: 50px 0px 50px 0px;
		text-align: center;
	}
	#site_header .header_navi .gnavi_list li.level2_pc li a {
		padding: 0 0 0 0;
		border: none;
	}
	#site_header .header_navi .gnavi_list li.level2_pc li a:hover {
		text-decoration: underline;
	}
	#site_header .header_navi .gnavi_list li.level2_pc li + li  {
		padding: 30px 0 0 0;
	}
	#site_header .header_navi .gnavi_list {
		margin: 15px 0 0 0;
		display: flex;
		justify-content: flex-end;
	}
	#site_header .header_navi .gnavi_list > li {
		display: block;
		/* width: 20%; */
	}
	#site_header .header_navi .gnavi_list li a {
		color: #666666;
		font-size: 13px;
		text-decoration: none;
		display: block;
		padding: 0 15px 10px 15px;
		border-bottom: 2px solid #ffffff;
		letter-spacing: 2px;
		font-weight: 400;
		margin: 0 auto;
	}
	
	#site_header {
		padding: 10px 10px 15px 10px;
		height: auto;
	}
	#site_header .header_list{
		width: calc( 100% - 250px );
	}
	#site_header .header_navi .gnavi_list > li {
		width: 12.5% !important;
	}
	#site_header .header_navi .gnavi_list > li + li {
		border-left: 1px solid #bbb;
	}
	#site_header .header_navi .gnavi_list > li a {
		width: auto !important;
	}
	#container .pagebody {
		padding: 122px 0 0 0;
	}
	#site_header .header_navi .gnavi_list > li > a {
		padding: 5px 0 25px 0 !important;
		line-height: 1.4;
	}
	#site_header .header_navi .gnavi_list > li > a.line02 {
		margin: -5px 0 0 0;
	}
}
@media screen and (min-width: 1101px) and (max-width: 1407px) {
	#site_header .header_navi .gnavi_list > li {
		width: 12.5% !important;
	}
}

/*-------------------------------------------
 site_footer
-------------------------------------------*/
#site_footer {
	background-color: #fff;
}
#site_footer .scroll_top a {
	display: block;
    margin: 50px auto 20px auto;
    width: 15%;
    text-align: center;
	max-width: 80px;
}
#site_footer .scroll_top a span img {
	width: 90%;
}
#site_footer .inner {
	background: #333;
	color: #fff;
	padding: 30px 30px 15px 30px;
	margin: 0 0 60px 0;
}
#site_footer .inner .footer_navi ul {
	font-size: 0;
}
#site_footer .inner .footer_navi ul li {
	font-size: 13px;
	display: inline-block;
	vertical-align: top;
	width: 50%;
	margin: 0 0 15px 0;
	padding: 0 15px;
}
#site_footer .inner .footer_navi ul li a {
	color: #fff;
	text-decoration: none;
	letter-spacing: 1px;
}
#site_footer .inner .footer_sns {
	border-top: 1px solid #666666;
    padding: 30px 0 20px 0;
	margin: 10px 0 0 0;
}
#site_footer .inner .footer_sns ul {
	display: flex;
	justify-content: center;
}
#site_footer .inner .footer_sns ul li {
	padding: 0 15px 0 15px;
}
#site_footer .footer_reservation {
	padding: 15px 0 12px 0;
	position: fixed;
    bottom: 0;
    width: 100%;
    background: #fff;
	opacity: 0.9;
	box-shadow: 0 -5px 3px -3px rgba(0, 0, 0, .15);
}
@media screen and (max-width: 1024px) {
	#site_footer .footer_reservation {
		color: #fff;
		background-image: linear-gradient(to right, #fbc2eb 0%, #a6c1ee 51%, #fbc2eb 100%);
		text-decoration: none;
		display: block;
		text-transform: uppercase;
		transition: 0.5s;
		background-size: 200% auto;
		box-shadow: 5px 0px 10px #bbb;
		overflow: hidden;
		padding: 18px 0 15px 0;
	}
}
#site_footer .footer_reservation ul {
	font-size: 0;
}
#site_footer .footer_reservation ul li {
	display: inline-block;
	vertical-align: top;
	width: 50%;
	text-align: center;
}
#site_footer .footer_reservation ul li.w100 {
	width: 100%;
}
#site_footer .footer_reservation ul li:nth-child(2) {
	border-left: 1px solid #fff;
}
#site_footer .footer_reservation ul li a {
	color: #fff;
	text-decoration: none;
	font-size: 13px;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#site_footer {
		padding: 0 0 60px 0;
	}
	#site_footer .scroll_top a {
		margin: 75px auto 50px auto;
	}
	#site_footer .inner {
		background: #fff;
		color: #333;
		padding: 0 0 0 0;
		margin: 0 0 0 0;
	}
	#site_footer .inner .footer_navi {
		max-width: 850px;
    	margin: 0 auto;
	}
	#site_footer .inner .footer_navi ul.sp_none {
		display: flex !important;
		justify-content: center;
	}
	#site_footer .inner .footer_navi li {
		display: block;
		text-align: center;
		width: auto !important;
	}
	#site_footer .inner .footer_navi li + li {
		position: relative;
	}
	#site_footer .inner .footer_navi li + li::before {
		content: '／';
		position: absolute;
		left: -5px;
		top: 0;
		color: #000;
		font-size: 10px;
	}
	#site_footer .inner .footer_navi li a {
		color: #333 !important;
		font-size: 12px;
		transition: .3s;
	}
	#site_footer .inner .footer_navi li a:hover {
		opacity: 0.7;
		transition: .3s;
	}
	#site_footer .inner .footer_sns {
		border: none;
	}
	#site_footer .inner .footer_sns ul li {
		padding: 0 17px 0 17px;
	}
	#site_footer .inner .footer_sns ul li a img {
		opacity: 0.7;
		transition: .3s;
	}
	#site_footer .inner .footer_sns ul li a:hover img {
		opacity: 1;
		transition: .3s;
	}
	#site_footer .footer_logo {
		display: block;
		max-width: 160px;
		margin: 20px auto 0 auto;
	}
	#site_footer .footer_reservation {
		background-color: transparent;
		right: 40px;
    	bottom: 40px;
		padding: 0;
    	width: 150px;
    	height: 150px;
		border: none;
		text-align: center;
		box-shadow:none;
	}
	/*#site_footer .footer_reservation a {
		color: #fff;
		background-image: linear-gradient(to right, #fbc2eb 0%, #a6c1ee 51%, #fbc2eb 100%);
		text-decoration: none;
		display: block;
		text-transform: uppercase;
		transition: 0.5s;
		background-size: 200% auto;
		box-shadow: 5px 0px 10px #bbb;
		border-radius: 50%;
		padding: 32.5px 0 32.5px 0;
	}*/
	#site_footer .footer_reservation a {
		color: #fff;
		background-image: linear-gradient(to right, #fbc2eb 0%, #a6c1ee 51%, #fbc2eb 100%);
		text-decoration: none;
		display: block;
		text-transform: uppercase;
		transition: 0.5s;
		background-size: 200% auto;
		box-shadow: 5px 0px 10px #bbb;
		border-radius: 50%;
		padding: 32.5px 0 32.5px 0;
		position: relative;
		overflow: hidden;
		width: 100%;
		height: 100%;
	}
	#site_footer .footer_reservation a::before {
		content: '';
		width: 30px;
		height: 100%;
		background-color: #fff;
		animation: shine 10s ease-in-out infinite;
		position: absolute;
		top: -180px;
		left: 0;
		opacity: 0;
		transform: rotate(45deg);
	}
	#site_footer .footer_reservation a:hover {
		background-position: right center; 
	}
	#site_footer .footer_reservation a p {
		font-family: 'Abel', sans-serif;
    	font-weight: 400;
		font-size: 16px;
		line-height: 1.8;
		letter-spacing: 2.5px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	#site_footer .footer_reservation a p span {
		font-family: "Noto Sans JP",sans-serif;
    	font-weight: 300;
		font-size: 14px;
		margin: 5px 0 0 0;
    	display: block;
	}
}
@keyframes shine {
	0% {
		transform: scale(0) rotate(45deg);
		opacity: 0;
	}
	80% {
		transform: scale(0) rotate(45deg);
		opacity: 0.5;
	}
	81% {
		transform: scale(4) rotate(45deg);
		opacity: 1;
	}
	100% {
		transform: scale(50) rotate(45deg);
		opacity: 0;
	}
}

/*-------------------------------------------
 top_slide
-------------------------------------------*/
#top_slide {
	max-width: 970px;
	margin: 0 auto;
	position: relative;
}
#top_slide .sns_link {
	position: absolute;
	background-color: rgba(204,204,204,0.5);
	top: 0;
    right: 0;
    height: 100%;
    text-align: center;
}
#top_slide .sns_link li {
	padding: 17% 10px;
}
#top_slide .bx-wrapper .bx-pager.bx-default-pager a {
	background-color: transparent;
    text-indent: 0;
	text-decoration: none;
	color: #333;
    font-size: 10px;
	position: relative;
	margin: 0 15px;
	font-size: 0;
}
#top_slide .bx-wrapper .bx-controls-direction {
	display: none;
}
svg.main-slide-control-svg {
	width: 15px;
}
path.f {
	fill: none;
    stroke: #000000;
    stroke-miterlimit: 10;
    stroke-width: 2px;
}
path.b {
	fill: none;
    stroke: rgba(0, 0, 0, 0.15);
    stroke-miterlimit: 10;
    stroke-width: 2px;
}
#svg_pager {
	display: flex;
	justify-content: center;
	margin: -25px 0 0 0;
}
#svg_pager li {
	margin: 0 5px;
}
#svg_pager li a path.f {
	opacity: 0;
}
#svg_pager li a.active path.f {
	opacity: 1;
}

/* iphoneSE */
@media screen and (max-width: 320px) {
	#top_slide .sns_link li {
		padding: 11% 10px;
	}
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#top_slide .sns_link {
		padding: 5px 0 0 0;
	}
	#top_slide .sns_link li {
		padding: 17px 15px;
	}
	#top_slide .bx-wrapper .bx-pager.bx-default-pager a {
		font-size: 10px;
		margin: 20px 15px;
	}
	#top_slide .bx-controls {
		position: absolute;
		right: -15px;
		top: 135px;
	}
	#top_slide .bx-wrapper .bx-controls-direction {
		display: block;
	}
	#top_slide .bx-wrapper .bx-controls-direction .bx-prev {
		left: -970px;
		top: 140px !important;
		background: url(../images/top/icon_top_slide08.png) no-repeat;
		background-size: 22px 22px;
	}
	#top_slide .bx-wrapper .bx-controls-direction .bx-next {
		left: -100px;
		top: 140px !important;
		background: url(../images/top/icon_top_slide09.png) no-repeat;
		background-size: 22px 22px;
	}
	#top_slide .bx-wrapper .bx-controls-direction .bx-next.snsnon {
		left: -50px;
	}
	.top_slide_wrap {
		position: relative;
		max-width: 970px;
		margin: 0 auto;
	}
	#svg_pager {
		position: absolute;
		display: unset;
		right: -50px;
		top: 75px;
	}
	#svg_pager li {
		margin: 10px 5px;
	}
	svg.main-slide-control-svg {
		width: 30px;
	}
	#svg_pager li a {
		position: relative;
	}
	#svg_pager li a::before {
		position: absolute;
		content: '1';
		top: -12px;
    	left: 12px;
		font-size: 10px;
	}
	#svg_pager li:nth-child(2) a::before {
		content: '2';
	}
	#svg_pager li:nth-child(3) a::before {
		content: '3';
	}
	#svg_pager li:nth-child(4) a::before {
		content: '4';
	}
	#svg_pager li:nth-child(5) a::before {
		content: '5';
	}
}



/*-------------------------------------------
 top_concept
-------------------------------------------*/
#top_concept {
	padding: 20px 20px 40px 20px;
}
#top_concept h2 {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    text-align: center;
    letter-spacing: 2px;
    font-size: 22px;
    padding: 0 0 15px 0px;
}
#top_concept .lead {
	font-size: 18px;
    text-align: center;
    font-weight: 400;
    margin: 0 0 15px 0;
}
#top_concept p {
	line-height: 2.3;
}
#top_concept .img {
	margin: 20px 0 0 0;
    text-align: center;
}

/* animation */
@-webkit-keyframes passing-bar{
	0% {
		left: 0;
		right: auto;
		width: 0;
	}
	50% {
		left: 0;
		right: auto;
		width: 100%;
	}
	51% {
		left: auto;
		right: 0;
		width: 100%;
	}
	100% {
		left: auto;
		right: 0;
		width: 0;
	}
}
@keyframes passing-bar{
	0% {
		left: 0;
		width: 0;
	}
	50% {
		left: 0;
		width: 100%;
	}
	51% {
		left: 0;
		width: 100%;
	}
	100% {
		left: 100%;
		width: 0;
	}
}
@-webkit-keyframes passing-img{
	0% { opacity: 0; }
	50% { opacity: 0; }
	100% { opacity: 1; }
}
@keyframes passing-img{
	0% { opacity:0; }
	50% { opacity:0; }
	100% { opacity:1; }
}
#top_concept .passing .passing-box {
	display: block;
}
#top_concept .passing .passing-bar {
	position: relative;
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	max-width: 100%;
}
#top_concept .passing .passing-bar:before {
	content: '';
	display: inline-block;
	width: 0;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	/* 背景色 */
	background: #f5f5f5;
}
#top_concept .passing .passing-img {
	opacity: 0;
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
#top_concept .passing.move .passing-bar:before {
	-webkit-animation: passing-bar 1s ease 0s 1 normal forwards;
	animation: passing-bar 1s ease 0s 1 normal forwards;
}
#top_concept .passing.move .passing-img {
	-webkit-animation: passing-img 0s ease .5s 1 normal forwards;
	animation:passing-img 0s ease .5s 1 normal forwards;
}
#top_concept .top_concept_bxslider {
	max-width: 100%;
}
#top_concept .top_concept_bxslider img {
	width: 100%;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#top_concept {
		padding: 30px 0 0 0;
		max-width: 970px;
		margin: 0 auto;
	}
	#top_concept h2 {
		text-align: left;
		padding: 0;
		margin: 0 0 20px 0;
	}
	#top_concept .lead {
		text-align: left;
		margin: 0 0 25px 0;
	}
	#top_concept .inner {
		font-size: 0;
	}
	#top_concept .inner .txt {
		font-size: 12px;
		display: inline-block;
		vertical-align: top;
		width: 51.5%;
		margin: 0 7.1% 0 0;
	}
	#top_concept .inner .txt.txtw100 {
		width: 100%;
		margin: 0;
	}
	#top_concept .inner .img {
		display: inline-block;
		vertical-align: top;
		margin: 0 0 0 0;
    	width: 41.341%;
	}
}

/*-------------------------------------------
 top_news
-------------------------------------------*/
#top_news {
	padding: 20px 20px 40px 20px;
}
#top_news h2 {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    text-align: center;
    letter-spacing: 2px;
    font-size: 22px;
    padding: 0 0 15px 0px;
}
#top_news .news_list li + li {
	margin: 10px 0 0 0;
}
#top_news .news_list a {
	color: #333;
	text-decoration: none;
}
#top_news .news_list a:hover span {
	text-decoration: underline;
}
#top_news .news_list a span {
	display: block;
}
.btn_area {
	text-align: center;
	margin: 40px 0 0 0;
}
.read_more_sp {
	position: relative;
	display: inline-block;
	border: 1px solid #333;
	color: #333;
	text-align: center;
	text-decoration: none;
	transition: .3s;
	border-radius: 5px;
}
.read_more_sp:hover a {
	color: #fff;
}
.read_more_sp::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #333;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.read_more_sp:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
.read_more_sp.active::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
.read_more_sp.active a {
	color: #fff;
}
.read_more_sp a {
	font-family: 'Abel', sans-serif;
    color: #333;
    text-decoration: none;
    display: block;
    padding: 10px 30px 10px 30px;
    letter-spacing: 3px;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#top_news {
		padding: 80px 0 0 0;
	}
	#top_news .inner h2 {
		position: absolute;
		left: -120px;
		top: -5px;
		padding: 0 0 0 0;
	}
	#top_news .inner {
		max-width: 410px;
		margin: 0 auto;
		position: relative;
	}
	#top_news .news_list a {
		font-size: 0;
	}
	#top_news .news_list a span {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
	}
	#top_news .news_list a .date {
		width: 25%;
	}
	#top_news .news_list a .ttl {
		width: 75%;
	}
	.btn_area {
		text-align: right;
		max-width: 970px;
		margin: 40px auto 0 auto;
	}
	.btn_area .read_more_pc a {
		font-family: 'Abel', sans-serif;
		color: #333;
		text-decoration: none;
		letter-spacing: 3px;
		position: relative;
	}
	.btn_area .read_more_pc a::before {
		position: absolute;
		content: '>>';
		top: -2px;
		right: -35px;
	}
	.btn_area .read_more_pc a:hover::before {
		animation: arrow 0.4s infinite alternate;
	}
}
@-webkit-keyframes arrow{
	0% { right: -45px; }
	100% { right: -55px; }
}
@keyframes arrow{
	0% { right: -45px; }
	100% { right: -55px; }
}

/*-------------------------------------------
 top_blog
-------------------------------------------*/
#top_blog {
	padding: 20px 20px 40px 20px;
}
#top_blog h2 {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    text-align: center;
    letter-spacing: 2px;
    font-size: 22px;
    padding: 0 0 30px 0px;
}
#top_blog .blog_list {
	font-size: 0;
}
#top_blog .blog_list li {
	font-size: 12px;
	display: inline-block;
	vertical-align: top;
	width: 48%;
	margin: 0 4% 6% 0;
}
#top_blog .blog_list li:nth-child(2n) {
	margin: 0 0 6% 0;
}
#top_blog .blog_list li a {
	color: #333;
    text-decoration: none;
}
#top_blog .blog_list li .item .thumb img {
    width: 100%!important;
    height: 100%!important;
    object-fit: cover;
    border-radius: 10px;
}
#top_blog .blog_list li .item .txt {
	margin: 10px 0 0 0;
}
#top_blog .btn_area {
	margin: 20px 0 0 0;
}

/* animation */
@-webkit-keyframes passing-bar{
	0% {
		left: 0;
		right: auto;
		width: 0;
	}
	50% {
		left: 0;
		right: auto;
		width: 100%;
	}
	51% {
		left: auto;
		right: 0;
		width: 100%;
	}
	100% {
		left: auto;
		right: 0;
		width: 0;
	}
}
@keyframes passing-bar{
	0% {
		left: 0;
		width: 0;
	}
	50% {
		left: 0;
		width: 100%;
	}
	51% {
		left: 0;
		width: 100%;
	}
	100% {
		left: 100%;
		width: 0;
	}
}
@-webkit-keyframes passing-img{
	0% { opacity: 0; }
	50% { opacity: 0; }
	100% { opacity: 1; }
}
@keyframes passing-img{
	0% { opacity:0; }
	50% { opacity:0; }
	100% { opacity:1; }
}
#top_blog .passing .passing-box {
	display: block;
}
#top_blog .passing .passing-bar {
	position: relative;
	display: inline-block;
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
#top_blog .passing .passing-bar:before {
	content: '';
	display: inline-block;
	width: 0;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	/* 背景色 */
	background: #f5f5f5;
}
#top_blog .passing .passing-img {
	opacity: 0;
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
#top_blog .passing.move .passing-bar:before {
	-webkit-animation: passing-bar 1s ease 0s 1 normal forwards;
	animation: passing-bar 1s ease 0s 1 normal forwards;
}
#top_blog .passing.move .passing-img {
	-webkit-animation: passing-img 0s ease .5s 1 normal forwards;
	animation:passing-img 0s ease .5s 1 normal forwards;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#top_blog {
		padding: 80px 0 40px 0;
	}
	#top_blog h2 {
		padding: 0 0 65px 0px;
	}
	#top_blog .inner {
		max-width: 814px;
    	margin: 0 auto;
	}
	#top_blog .blog_list li {
		width: 220px;
		height: 220px;
		margin: 0 77px 0 0;
	}
	#top_blog .blog_list li:nth-child(2) {
		margin: 0 77px 0 0;
	}
	#top_blog .blog_list li:nth-child(3) {
		width: 220px;
		height: 220px;
		margin: 0 0 0 0;
	}
	#top_blog .blog_list li:nth-child(4) {
		display: none;
	}
	#top_blog .blog_list li .item {
		position: relative;
	}
	#top_blog .blog_list li .item .thumb {
		background: #fff;
    	border-radius: 10px;
		overflow: hidden;
	}
	#top_blog .blog_list li .item:hover .thumb {
		background: #000;
	}
	#top_blog .blog_list li .item .passing-bar {
		width: 220px;
		height: 220px;
	}
	#top_blog .blog_list li .item .thumb img {
		width: 100%;
		height: 100%;
	}
	#top_blog .blog_list li.logoimgb .passing-img {
		height:100%!important;
	}
	#top_blog .blog_list li .item .thumb img.logoimg {
		width:100%!important;
		height:auto!important;
		left: 50%;
		position: absolute;
		top: 50%;
		transform: translate(-50%,-50%) scale(1.0, 1.0);
	}
	#top_blog .blog_list li .item:hover .thumb img.logoimg {
		transform: translate(-50%,-50%) scale(1.1, 1.1);
	}
	#top_blog .blog_list li a:hover .item .thumb img {
		transform: scale(1.1, 1.1);
		opacity: 0.6;
	}
	#top_blog .blog_list li .item .txt {
		margin: 0 0 0 0;
		position: absolute;
		top: 0;
		padding: 88.886px 25px 88.886px 25px;
		color: #fff;
		opacity: 0;
		transition: .3s;
	}
	#top_blog .blog_list li .item:hover .txt {
		opacity: 1;
		transition: .3s;
	}
	#top_blog .btn_area {
		margin: 40px auto 0 auto !important;
	}
}

/*-------------------------------------------
 top_line_up
-------------------------------------------*/
#top_line_up {
	padding: 30px 0 40px 0;
	background: #f5f5f5;
}
#top_line_up h2 {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    text-align: center;
    letter-spacing: 2px;
    font-size: 22px;
    padding: 0 0 30px 0px;
}
#top_line_up .line_up_list {
	font-size: 0;
}
#top_line_up .line_up_list li {
	font-size: 12px;
	display: inline-block;
	vertical-align: top;
	width: 50%;
}
#top_line_up .line_up_list li a {
	display: block;
	text-decoration: none;
	color: #333;
}
#top_line_up .line_up_list li a .thumb img {
	width: 100%;
}
#top_line_up .line_up_list li a .txt {
    padding: 20px 20px 20px 20px;
}
#top_line_up .line_up_list li a .txt .ttl {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    text-align: center;
    letter-spacing: 2px;
    font-size: 18px;
	padding: 0 0 10px 0;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#top_line_up {
		padding: 30px 0 0px 0;
	}
	#top_line_up .line_up_list li {
		width: 33.3%;
	}
	.line_up_list li a .txt {
		padding: 30px 45px 60px 45px !important;
	}
	#top_line_up .line_up_list li a .txt .ttl {
		padding: 0 0 25px 0;
	}
}

/*-------------------------------------------
 top_gallery
-------------------------------------------*/
#top_gallery {
	padding: 30px 0 40px 0;
}
#top_gallery h2 {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    text-align: center;
    letter-spacing: 2px;
    font-size: 22px;
    padding: 0 0 30px 0px;
}
#top_gallery .inner {
	padding: 0 20px 0 20px;
	position: relative;
}
#top_gallery .inner #svg_pager02 {
    position: absolute;
    bottom: 25px;
    right: 0;
    display: flex;
    justify-content: center;
	width: 100%;
}
#top_gallery .inner #svg_pager02 li {
	margin: 0 5px;
}
#top_gallery .inner #svg_pager02 li a svg {
	width: 15px;
}
#top_gallery .inner #svg_pager02 li a path.f {
	opacity: 0;
}
#top_gallery .inner #svg_pager02 li a.active path.f {
	opacity: 1;
}
#top_gallery .inner .bg_area {
	position: absolute;
	background-color: #f5f5f5;
	width: 100%;
	height: 100%;
	top: 20px;
	left: 0;
	z-index: -1;
}
#top_gallery .bx-wrapper {
	margin: 0 auto;
	background-color: transparent;
}
#top_gallery .top_gallery_bxslider li {
	max-width: 41vw;
	margin: 0 6vw 0 0;
}
#top_gallery .bx-wrapper .bx-pager.bx-default-pager a {
	background-color: transparent;
    text-indent: 0;
	text-decoration: none;
	color: #333;
    font-size: 10px;
	position: relative;
	margin: 0 15px;
	font-size: 0;
}
#top_gallery .bx-wrapper .bx-controls-direction {
	display: none;
}
#top_gallery .btn_area {
	text-align: right;
	max-width: 970px;
	margin: 40px auto 0 auto;
}
#top_gallery .btn_area .read_more_pc a {
	font-family: 'Abel', sans-serif;
	color: #333;
	text-decoration: none;
	letter-spacing: 3px;
	position: relative;
	margin: 0 30px 0 0;
}
#top_gallery .btn_area .read_more_pc a::before {
	position: absolute;
	content: '>>';
	top: -2px;
	right: -35px;
}
#top_gallery .btn_area .read_more_pc a:hover::before {
	animation: arrow 0.4s infinite alternate;
}

/* SP広 */
@media screen and (min-width: 450px) and (max-width: 599px) {
	#top_gallery .top_gallery_bxslider li {
		max-width: 43vw;
		margin: 0 6vw 0 0;
	}
}

/* SP広 */
@media screen and (min-width: 600px) and (max-width: 767px) {
	#top_gallery .top_gallery_bxslider li {
		max-width: 47vw;
		margin: 0 1vw 0 0;
		text-align: center;
	}
	#top_gallery .top_gallery_bxslider li img {
		margin: 0 auto;
	}
}

/* ipad */
@media screen and (min-width: 768px) and (max-width: 1023px) {
	#top_gallery .bx-wrapper {
		max-width: 632px;
	}
	#top_gallery .top_gallery_bxslider li {
		max-width: 281px;
		margin: 0 70px 0 0;
	}
}

/* DeskTop */
@media screen and (min-width: 1024px) and (max-width: 1185px) {
	#top_gallery .inner .bg_area {
		width: 100% !important;
	}
}

/* DeskTop */
@media screen and (min-width: 1185px) and (max-width: 1300px) {
	#top_gallery .inner .bg_area {
		width: 80% !important;
	}
	#top_gallery .inner #svg_pager02 {
		margin: 0 20% 0 0;
	}
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#top_gallery {
		padding: 80px 0px 110px 0px;
		overflow: hidden;
	}
	#top_gallery .bx-wrapper {
		background-color: transparent;
		max-width: 630px;
		margin: 0px 12% 0 auto;
	}
	#top_gallery .top_gallery_bxslider li {
		max-width: 280px;
		margin: 0 70px 0 0;
	}
	#top_gallery .inner .bg_area {
		position: absolute;
		background-color: #f5f5f5;
		width: 70%;
		height: 100%;
		top: 70px;
		left: auto;
		right: 0;
		z-index: -1;
		height: 424px;
		transition: 1.0s;
	}
	#top_gallery .inner .bg_area.first_view {
		right: -1332px;
		transition: 1.0s;
	}
	#top_gallery .inner .bg_area h2 {
		text-align: left;
    	padding: 30px 0 0 30px;
	}
	#top_gallery .bx-wrapper .bx-pager.bx-default-pager {
		text-align: right;
    	padding: 20px 130px 0 0;
	}
	#top_gallery .bx-wrapper .bx-pager.bx-default-pager a {
		margin: 0 10px;
	}
	#top_gallery .bx-wrapper .bx-pager {
		bottom: -40px;
	}
	#top_gallery .btn_area {
		position: absolute;
		right: 13%;
		bottom: -50px;
	}
	#top_gallery .inner #svg_pager02 {
		position: absolute;
		bottom: -52px;
		right: 0;
		display: flex;
		justify-content: flex-end;
		width: 100%;
		/* margin: 0 20% 0 0; */
		margin-right: calc(12% + 140px);
	}
	#top_gallery .inner #svg_pager02 li {
		margin: 0 10px;
	}
}

/*-------------------------------------------
 top_shop_info
-------------------------------------------*/
#top_shop_info {
	padding: 30px 20px 40px 20px;
}
#top_shop_info h2 {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    text-align: center;
    letter-spacing: 2px;
    font-size: 22px;
    padding: 0 0 30px 0px;
}
#top_shop_info .shop_info_list li + li {
	border-top: 1px solid #ccc;
    padding: 50px 0 0 0;
    margin: 10px 0 0 0;
}
#top_shop_info .shop_info_list .txt {
	padding: 20px 20px 20px 20px;
}
#top_shop_info .shop_info_list p {
	margin: 0 0 15px 0;
}
#top_shop_info .shop_info_list .shop_name {
    font-size: 15px;
    font-weight: 400;
}
#top_shop_info .shop_info_list .tel {
    font-size: 17px;
    font-weight: 400;
}
#top_shop_info .shop_info_list .address a {
	text-decoration: none;
	color: #333;
}
#top_shop_info .shop_info_list .reservation_btn {
	margin: 30px 0 0 0;
}
#top_shop_info .shop_info_list .reservation_btn a {
	color: #fff;
	background: linear-gradient(95deg, #eac3ed, #b5c4fa);
	text-decoration: none;
	display: block;
	padding: 17px 30px 17px 30px;
    width: 220px;
    margin: 0 auto;
    text-align: center;
    border-radius: 5px;
    letter-spacing: 2px;
	position: relative;
	overflow: hidden;
}
#top_shop_info .shop_info_list .reservation_btn a::before {
	content: '';
	width: 30px;
	height: 100%;
	background-color: #fff;
	animation: shine 10s ease-in-out infinite;
	position: absolute;
	top: 0;
	left: -180px;
	opacity: 0;
	transform: rotate(45deg);
}

/* animation */
@-webkit-keyframes passing-bar{
	0% {
		left: 0;
		right: auto;
		width: 0;
	}
	50% {
		left: 0;
		right: auto;
		width: 100%;
	}
	51% {
		left: auto;
		right: 0;
		width: 100%;
	}
	100% {
		left: auto;
		right: 0;
		width: 0;
	}
}
@keyframes passing-bar{
	0% {
		left: 0;
		width: 0;
	}
	50% {
		left: 0;
		width: 100%;
	}
	51% {
		left: 0;
		width: 100%;
	}
	100% {
		left: 100%;
		width: 0;
	}
}
@-webkit-keyframes passing-img{
	0% { opacity: 0; }
	50% { opacity: 0; }
	100% { opacity: 1; }
}
@keyframes passing-img{
	0% { opacity:0; }
	50% { opacity:0; }
	100% { opacity:1; }
}
#top_shop_info .passing .passing-box {
	display: block;
}
#top_shop_info .passing .passing-bar {
	position: relative;
	display: inline-block;
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	width: 100%;
}
#top_shop_info .passing .passing-bar:before {
	content: '';
	display: inline-block;
	width: 0;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	/* 背景色 */
	background: #f5f5f5;
}
#top_shop_info .passing .passing-img {
	opacity: 0;
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
#top_shop_info .passing .passing-img img {
	width: 100%;
}
#top_shop_info .passing.move .passing-bar:before {
	-webkit-animation: passing-bar 1s ease 0s 1 normal forwards;
	animation: passing-bar 1s ease 0s 1 normal forwards;
}
#top_shop_info .passing.move .passing-img {
	-webkit-animation: passing-img 0s ease .5s 1 normal forwards;
	animation:passing-img 0s ease .5s 1 normal forwards;
}

/* DeskTop */
@media screen and (min-width: 768px) {
	#top_shop_info {
		padding: 90px 0px 80px 0px;
	}
	#top_shop_info h2 {
		padding: 0 0 85px 0px;
	}
	#top_shop_info .shop_info_list {
		max-width: 630px;
		margin: 0 auto;
	}
	#top_shop_info .shop_info_list li {
		font-size: 0;
	}
	#top_shop_info .shop_info_list li .img {
		display: inline-block;
		vertical-align: top;
		width: 281px;
	}
	#top_shop_info .passing .passing-bar {
		width: auto;
	}
	#top_shop_info .shop_info_list li .txt {
		font-size: 12px;
		display: inline-block;
		vertical-align: top;
		width: 340px;
    	padding: 0 0 0 50px;
	}
	#top_shop_info .shop_info_list p {
		margin: 0 0 20px 0;
	}
	#top_shop_info .shop_info_list .shop_name {
		font-size: 14px;
		font-weight: 400;
	}
	#top_shop_info .shop_info_list .tel {
		font-size: 18px;
		font-weight: 400;
	}
	#top_shop_info .shop_info_list .reservation_btn {
		margin: 0px 0 0 0;
	}
	#top_shop_info .shop_info_list .reservation_btn a {
		padding: 13px 30px 13px 30px;
		width: 200px;
		margin: 0 0 0 0;
		color: #fff;
		background-image: linear-gradient(to right, #fbc2eb 0%, #a6c1ee 51%, #fbc2eb 100%);
		text-decoration: none;
		display: block;
		text-align: center;
		border-radius: 5px;
		letter-spacing: 2px;
		text-transform: uppercase;
		transition: 0.5s;
		background-size: 200% auto;
		position: relative;
		overflow: hidden;
	}
	#top_shop_info .shop_info_list .reservation_btn a::before {
		content: '';
		width: 30px;
		height: 100%;
		background-color: #fff;
		animation: shine 10s ease-in-out infinite;
		position: absolute;
		top: 0;
		left: -180px;
		opacity: 0;
		transform: rotate(45deg);
	}
	#top_shop_info .shop_info_list .reservation_btn a:hover {
		background-position: right center; 
	}
	#top_shop_info .shop_info_list li + li {
		border: none;
		padding: 0 0 0 0;
		margin: 60px 0 0 0px;
	}
}

/*-------------------------------------------
 top_bnr_slide
-------------------------------------------*/
#top_bnr_slide .fix_area img {
	width: 100%;
}
#top_bnr_slide h2 {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    text-align: right;
    letter-spacing: 2px;
    font-size: 22px;
    padding: 30px 20px 30px 0px;
}
#top_bnr_slide .bx-wrapper .bx-viewport {
	overflow: hidden;
}
#top_bnr_slide .bx-wrapper .bx-pager.bx-default-pager a {
	border: 1px solid #666666;
    background: #fff;
}
#top_bnr_slide .bx-wrapper .bx-pager.bx-default-pager a.active,
#top_bnr_slide .bx-wrapper .bx-pager.bx-default-pager a:focus,
#top_bnr_slide .bx-wrapper .bx-pager.bx-default-pager a:hover {
	background: #666666;
}
#top_bnr_slide .bx-wrapper .top_bnr_slide_bxslider img {
/*	width: 100%;*/
}

/* ipad */
@media screen and (min-width: 768px) and (max-width: 1023px) {
	#top_bnr_slide .bx-wrapper .top_bnr_slide_bxslider img.sp_none {
		display: block !important;
	}
	#top_bnr_slide .bx-wrapper .top_bnr_slide_bxslider img.pc_none {
		display: none !important;
	}
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#top_bnr_slide {
		max-width: 956px;
    	margin: 0 auto;
		position: relative;
	}
	#top_bnr_slide::before {
		content: '';
		position: absolute;
		background: #f5f5f5;
		width: 956px;
		height: 321px;
		bottom: 35px;
		right: -40px;
		z-index: -1;
		transition: 1.0s;
	}
	#top_bnr_slide .fix_area {
		float: right;
		width: 321px;
	}
	#top_bnr_slide .bx-wrapper {
		float: left;
		max-width: 635px;
    	margin: 0 auto;
		overflow: hidden;
		min-height: 400px;
		background-color: transparent;
	}
	#top_bnr_slide .bx-wrapper .bx-viewport {
		overflow: visible;
	}
	#top_bnr_slide .bx-wrapper .top_bnr_slide_bxslider li {
		margin: 0 0 0 0;
		min-width: 641px;
	}
	/*#top_bnr_slide .bx-wrapper .top_bnr_slide_bxslider li.first_view::before {
		bottom: 0;
		right: 0;
		transition: 1.0s
	}*/
	#top_bnr_slide .bx-wrapper .bx-pager {
		bottom: -25px;
	}
	#top_bnr_slide .bx-wrapper .top_bnr_slide_bxslider li a img {
		position: relative;
		z-index: 2;
	}
	#top_bnr_slide .bx-wrapper .bx-controls {
		position: relative;
	}
}

/*-------------------------------------------
 top_sns
-------------------------------------------*/
#top_sns {
	padding: 0 20px 0 20px;
}
#top_sns h2 {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    text-align: center;
    letter-spacing: 2px;
    font-size: 22px;
    padding: 0;
}
#top_sns .btn_area {
	text-align: left;
	margin: 30px 0 15px 0;
}
#top_sns .sns_wrap iframe {
	width: 100%;
}
#top_sns .btn_area .read_more_pc a {
	font-family: 'Abel', sans-serif;
	color: #333;
	text-decoration: none;
	letter-spacing: 3px;
	position: relative;
	margin: 0 30px 0 0;
	background: url(../images/top/icon_top_sns01.png) no-repeat;
	background-size: 10px 19px;
	background-position: left top;
	padding: 2px 0 2px 20px;
}
#top_sns .item:nth-child(2) .btn_area .read_more_pc a {
	background: url(../images/top/icon_top_sns02.png) no-repeat;
	background-size: 18px 15px;
	padding: 0px 0 0px 30px;
}
#top_sns .btn_area .read_more_pc a::before {
	position: absolute;
	content: '';
	background: url(../images/top/icon_top_sns03.png) no-repeat;
	background-size: contain;
	width: 40px;
    height: 6px;
    top: 5px;
    right: -45px;
}
#top_sns .btn_area .read_more_pc a:hover::before {
	animation: arrow 0.4s infinite alternate;
}
#top_sns .youtube_area iframe {
	max-width: 600px;
    max-height: 400px;
    width: 100%;
    height: 60vw;
    margin: 30px auto 30px auto;
    display: block;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#top_sns .btn_area .read_more_pc a::before {
		content: '>>';
		background: none;
		top: -1px;
		right: -55px;
	}
	#top_sns .inner {
		font-size: 0;
		max-width: 760px;
		margin: 0 auto;
	}
	#top_sns .inner .item {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
		width: 42%;
	}
	#top_sns .inner .item + .item {
		margin: 0 0 0 16%;
	}
	#top_sns .btn_area .read_more_pc a {
		padding: 2px 0 2px 30px;
	}
	#top_sns .item:nth-child(2) .btn_area .read_more_pc a {
		padding: 0px 0 0px 40px;
	}
	#top_sns .btn_area {
		margin: 30px 0 20px 0;
	}
	#top_sns h2 {
		padding: 60px 0 60px 0px;
	}
	#top_sns .youtube_area iframe {
		margin: 70px auto 50px auto;
	}
}

/*-------------------------------------------
 top_group_line_up
-------------------------------------------*/
#top_group_line_up {
	padding: 30px 20px 40px 20px;
	background: #f5f5f5;
}
#top_group_line_up h2 {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    text-align: center;
    letter-spacing: 2px;
    font-size: 22px;
    padding: 0 0 30px 0px;
}
#top_group_line_up .group_line_up_list {
	max-width: 370px;
    margin: 0 auto;
}
#top_group_line_up .group_line_up_list li + li {
	margin: 20px 0 0 0;
}
#top_group_line_up .group_line_up_list li a {
	display: block;
	font-size: 0;
	color: #333;
	text-decoration: none;
}
#top_group_line_up .group_line_up_list li a .img {
	display: inline-block;
	vertical-align: top;
	float: left;
}
#top_group_line_up .group_line_up_list li a .img img {
	width: 90px;
    height: 90px;
    object-fit: cover;
    border-radius: 10px;
}
#top_group_line_up .group_line_up_list li a .txt {
    display: inline-block;
    vertical-align: top;
    font-size: 12px;
    width: 61%;
    margin: 0 0 0 15px;
}
#top_group_line_up .group_line_up_list li a .txt p + p {
	margin: 8px 0 0 0;
}
#top_group_line_up .group_line_up_list li a .txt .shop_name {
	font-size: 15px;
	font-weight: 400;
}
#top_group_line_up .group_line_up_list li a .txt .tel {
	font-size: 17px;
	font-weight: 400;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	#top_group_line_up {
		padding: 40px 0px 0px 0px;
	}
	#top_group_line_up h2 {
		padding: 0 0 50px 0px;
	}
	#top_group_line_up .group_line_up_list {
		max-width: 850px;
		font-size: 0;
	}
	#top_group_line_up .group_line_up_list li {
		display: inline-block;
		vertical-align: top;
		width: 48%;
		margin: 0 4% 65px 0;
	}
	#top_group_line_up .group_line_up_list li + li {
		margin: 0 4% 65px 0;
	}
	#top_group_line_up .group_line_up_list li:nth-child(2n) {
		margin: 0 0 65px 0;
	}
	#top_group_line_up .group_line_up_list li a .img img {
		width: 140px;
		height: 82px;
	}
	#top_group_line_up .group_line_up_list li a .txt {
		/*width: auto;*/
		/*margin: 0 0 0 20px;*/
		float: left;
	}
	#top_group_line_up .group_line_up_list li a .txt .shop_name {
		font-size: 14px;
	}
	#top_group_line_up .group_line_up_list li a .txt .tel {
		font-size: 18px;
	}
}

/*-------------------------------------------
 news_index
-------------------------------------------*/
.page_ttl {
	text-align: center;
	padding: 20px 0 30px 0;
}
.page_ttl .ttl_en {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    font-size: 24px;
    letter-spacing: 2px;
	display: block;
}
.page_ttl .ttl_jp {
    font-weight: 300;
    font-size: 14px;
	display: block;
}
.dir_news_index .news_list {
	padding: 0 20px 0 20px;
	max-width: 640px;
	margin: 0 auto;
}
.dir_news_index .news_list ul {
	font-size: 0;
}
.dir_news_index .news_list ul li {
	font-size: 13px;
	display: inline-block;
	vertical-align: top;
	width: 46%;
	margin: 0 6% 6% 0;
}
.dir_news_index .news_list ul li:nth-child(2n) {
	margin: 0 0 6% 0;
}
.dir_news_index .news_list ul li a {
	color: #333;
	text-decoration: none;
	display: block;
}
.dir_news_index .news_list ul li a .thumb {
	width: 100%;
	/* height: auto; */
	height: 100px;
	position: relative;
}
.dir_news_index .news_list ul li a .thumb img {
	top: 50%;
	left: 50%;
	position: absolute;
	transform: translate(-50%,-50%);
}
.dir_news_index .news_list ul li a .date {
	text-align: center;
	padding: 8px 0 5px 0;
}
.dir_news_index .news_list ul li a .ttl {
	line-height: 1.5;
}
.dir_news_index .news_pager {
	font-size: 0;
	text-align: center;
	margin: 20px 0 0 0;
}
.dir_news_index .news_pager a {
	color: #333;
	display: inline-block;
	font-weight: 400;
	text-decoration: none;
	font-size: 13px;
	padding: 0 9px;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.page_ttl {
		padding: 65px 0 105px 0;
	}
	.page_ttl .ttl_en {
		font-size: 22px;
	}
	.page_ttl .ttl_jp {
		font-size: 12px;
	}
	.dir_news_index .news_list {
		padding: 0 0 0 0;
		max-width: 740px;
	}
	.dir_news_index .news_list ul li {
		width: 24.325%;
		margin: 0 13.5125% 13.5125% 0;
	}
	.dir_news_index .news_list ul li:nth-child(2n) {
		margin: 0 13.5125% 13.5125% 0 !important;
	}
	.dir_news_index .news_list ul li:nth-child(3n) {
		margin: 0 0 13.5125% 0 !important;
	}
	.dir_news_index .news_list ul li a .thumb {
		width: 180px;
		height: 120px;
	}
	.dir_news_index .news_list ul li a:hover {
		text-decoration: underline;
	}
	.dir_news_index .news_list ul li a .date {
		padding: 9px 0 7px 0;
	}
	.dir_news_index .news_pager a:hover {
		text-decoration: underline;
	}
	.dir_news_index .news_pager {
		margin: 0px 0 0 0;
	}
}

/*-------------------------------------------
 news_detail
-------------------------------------------*/
.dir_news_detail .news_content {
	padding: 0 20px 0 20px;
}
.dir_news_detail .news_content .date {
	margin: 0 0 15px 0;
}
.dir_news_detail .news_content .ttl {
	font-size: 14px;
    font-weight: 400;
    margin: 0 0 20px 0;
}
.dir_news_detail .news_content .free_area img {
	height: auto!important;
}
.dir_news_detail .footer_controls {
	border-top: 1px solid #666;
	margin: 30px 20px 0 20px;
    padding: 15px 0 0 0;
}
.dir_news_detail .footer_controls .pager a {
	color: #333;
	text-decoration: none;
	position: relative;
}
.dir_news_detail .footer_controls .pager a.article_prev {
	float: left;
	width: 45%;
	padding: 0 0 0 10px;
}
.dir_news_detail .footer_controls .pager a.article_prev::before {
	content: '<';
	position: absolute;
	top: 0;
	left: 0;
}
.dir_news_detail .footer_controls .pager a.article_next {
	float: right;
	width: 45%;
	padding: 0 10px 0 0;
	text-align: right;
}
.dir_news_detail .footer_controls .pager a.article_next::before {
	content: '>';
	position: absolute;
	top: 0;
	right: 0;
}
.dir_news_detail .footer_controls .list_btn a {
	display: block;
	border: 1px solid #666;
	border-radius: 5px;
	text-align: center;
	color: #666;
	text-decoration: none;
	width: 180px;
	margin: 40px auto 0 auto;
	padding: 15px 0 15px 0;
}
.dir_news_detail .footer_controls .pager a span {
	display: block;
}
.dir_news_detail .footer_controls .pager a.article_next span {
	text-align: left;
}

/* DeskTop */
@media screen and (min-width: 600px) {
	.dir_news_detail .page_ttl {
		padding: 65px 0 105px 0;
	}
	.dir_news_detail .page_ttl .ttl_en {
		font-size: 22px;
	}
	.dir_news_detail .page_ttl .ttl_jp {
		font-size: 12px;
	}
	.dir_news_detail .news_content {
		max-width: 600px;
		margin: -40px auto 0 auto;
		padding: 0 0 0 0;
	}
	.dir_news_detail .news_content .date {
		margin: 0 0 25px 0;
	}
	.dir_news_detail .news_content .ttl {
		margin: 0 0 25px 0;
	}
	.dir_news_detail .news_content {
		line-height: 2.2;
	}
	.dir_news_detail .footer_controls {
		border-top: 1px solid #ccc;
		margin: 160px auto 0 auto;
		padding: 20px 0 0 0;
		max-width: 800px;
	}
	.dir_news_detail .footer_controls .pager a:hover {
		text-decoration: underline;
	}
	.dir_news_detail .footer_controls .pager a.article_prev {
		width: 230px;
		padding: 0 0 0 30px;
	}
	.dir_news_detail .footer_controls .pager a.article_next {
		width: 230px;
		padding: 0 30px 0 0;
	}
	.dir_news_detail .footer_controls .list_btn {
		text-align: center;
    	margin: 60px 0 0 0;
	}
	.dir_news_detail .footer_controls .list_btn a {
		padding: 0 0 0 0;
		display: inline;
		margin: 0 0 0 0;
		border: none;
		color: #000;
	}
	.dir_news_detail .footer_controls .list_btn a:hover {
		text-decoration: underline;
	}
}

/*-------------------------------------------
 dir_specialmenu
-------------------------------------------*/
.dir_specialmenu .specialmenu_slide_bxdslider li {
	max-width: 30vw;
	margin: 0 5vw 0 0;
	text-align: center;
	float: left;
}
.dir_specialmenu .specialmenu_slide_bxdslider li a {
	display: block;
	text-decoration: none;
	color: #666666;
}
.dir_specialmenu .specialmenu_slide_bxdslider li a .thumb img {
	width: 100%;
}
.pull_down_menu {
	padding: 0 20px 20px 20px;
}
.pull_down_menu select {
	width: 100%;
	font-size: 16px;
    border: none;
    border-bottom: 1px solid #ccc;
    padding: 0px 40px 5px 0;
    background: url(../images/specialmenu/icon_specialmenu01.png) no-repeat;
    background-size: 10px 6px;
    background-position: 97% 12px;
	-webkit-appearance: none;/* ベンダープレフィックス(Google Chrome、Safari用) */
	-moz-appearance: none; /* ベンダープレフィックス(Firefox用) */
	appearance: none; /* 標準のスタイルを無効にする */
}
::-ms-expand { /* select要素のデザインを無効にする（IE用） */
	display: none;
}
.list_menu_pc {
	margin: -70px 0 0 0;
}
.list_menu_pc ul {
	max-width: 900px;
	margin: 0 auto;
	font-size: 0;
}
.list_menu_pc ul li {
	display: block;
	float: left;
	width: 31.112%;
	margin: 0 0 3.3% 3.3%;
	overflow: hidden;
	position: relative;
}
.list_menu_pc ul li:nth-child(3n+1) {
	margin-left: 0;
}
.list_menu_pc ul li a,
.list_menu_pc ul li span {
	display: inline-block;
	vertical-align: top;
	font-size: 12px;
	border: 1px solid #333;
	width: 100%;
	text-align: center;
	padding: 12px 0 12px 0;
	text-decoration: none;
	color: #231815;
}
.list_menu_pc ul li.line02 a {
	padding: 1.5px 0 1.5px 0;
}
.list_menu_pc ul li a:hover,
.list_menu_pc ul li span:hover {
	background: #333;
	color: #fff;
	transition: .3s;
	cursor: pointer;
}
.list_menu_pc ul li.active a,
.list_menu_pc ul li.active span {
	/* background: #333; */
	color: #fff;
}
.list_menu_pc ul li::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #333;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.list_menu_pc ul li.active::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
.list_menu_pc ul li.active::after {
	content: '';
	width: 30px;
	height: 100%;
	background-color: #fff;
	animation: shine 10s ease-in-out infinite;
	position: absolute;
	top: -100px;
	left: -100px;
	opacity: 0;
	transform: rotate(0deg);
}

.dir_specialmenu .item_area {
	padding: 0 20px 0 20px;
	line-height: 2;
}
.dir_specialmenu .item_area .ttl {
	text-align: center;
    margin: 0 0 30px 0;
    font-weight: 400;
    font-size: 20px;
}
.dir_specialmenu .item_area .item_area01 .column01 img {
    margin: 0 0 30px 0;
    height: auto!important;
}
.dir_specialmenu .item_area .item_area02 .column02 .inner img {
    margin: 50px 0 10px 0;
    height: auto!important;
}
.dir_specialmenu .item_area .item_area02 .column02 .inner .lead {
	font-weight: 400;
	font-size: 14px;
	margin: 0 0 10px 0;
}
.dir_specialmenu .item_area .item_area03 .txt .lead {
	margin: 20px 0 10px 0;
    font-size: 14px;
    font-weight: 400;
}
.item_pc_none {
	display: block;
}
.specialmenu_slide_under{
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #cccccc;
}
#specialmenu_nonslide li:nth-child(3),
#specialmenu_nonslide2 li:nth-child(3){
	margin-right:0!important;
}
/* DeskTop */
@media screen and (min-width: 768px) {
	.dir_specialmenu .item_area01 {
		max-width: 800px;
		margin: 0 auto;
	}
	.dir_specialmenu .item_area01 .ttl {
		margin: 70px 0 20px 0;
		font-size: 16px;
	}
	.dir_specialmenu.dir_page .item_area01 .ttl {
		margin: 0 0 20px 0;
	}
	.dir_specialmenu .item_area .item_area01 .column01 .img {
		position: relative;
		text-align: center;
		width: 100%;
		height: auto;
		background: rgb(224,224,224);
	}
	.dir_specialmenu .item_area .item_area01 .column01 .img img {
		text-align: center;
		max-width: 100%;
		max-height: 100%;
		margin: 0;
		height: auto!important;
	}

	.dir_specialmenu .item_area .item_area02 {
		max-width: 850px;
		margin: 100px auto 0 auto;
	}
	.dir_specialmenu .item_area .item_area02 .column01,
	.dir_specialmenu .item_area .item_area02 .column02 {
		position: relative;
		margin: 70px 0 0 0;
	}
	.dir_specialmenu .item_area .item_area02 .column02.minHeight {
		min-height: 240px;
	}
	.dir_specialmenu .item_area .item_area02 .column02 .inner {
		font-size: 0;
	}
	.dir_specialmenu .item_area .item_area02 .column02 .inner .img {
		position: relative;
		display: inline-block;
		text-align: center;
		vertical-align: middle;
		width: 45%;
		height: 240px;
		background: rgb(224,224,224);
	}
	.dir_specialmenu .item_area .item_area02 .column02 .inner .img img {
		position: absolute;
		text-align: center;
		max-width: 100%;
		max-height: 100%;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		height: auto!important;
	}
	.dir_specialmenu .item_area .item_area02 .column02 .inner .txt {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
		width: 55%;
		margin: 0 0 0 0;
		padding: 0 0 0 25px;
	}
	.dir_specialmenu .item_area .item_area02 .column01 .inner .txt .lead,
	.dir_specialmenu .item_area .item_area02 .column02 .inner .txt .lead {
		font-size: 14px;
		font-weight: 400;
		line-height: 1.5;
    	margin: 10px 0 10px 0;
	}
	.dir_specialmenu .item_area .item_area02 .column02.type01 .txt {
		padding: 0 30px 0 0;
		width: 50%!important;
		margin-left: 5%!important;
	}
	.dir_specialmenu .item_area .item_area02 .column02.type02 .txt {
		padding: 0 30px 0 0;
		width: 50%!important;
		margin-right: 5%!important;
	}
	.dir_specialmenu .item_area .item_area02 .column02.type02 .img {
		position: absolute;
		right: 0;
	}

	.dir_specialmenu .item_area .item_area02 .column02.type03 {
		margin: 80px 0 70px 0;
	}
	.dir_specialmenu .item_area .item_area02 .column02.type03 .inner {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
		width: 45%;
	}
	.dir_specialmenu .item_area .item_area02 .column02.type03 .inner + .inner {
		margin: 0 0 0 9.6%;
	}
	.dir_specialmenu .item_area .item_area02 .column02.type03 .inner .img {
		position: relative;
		display: inline-block;
		text-align: center;
		vertical-align: middle;
		width: 100%!important;
		height: 240px;
		background: rgb(224,224,224);
	}
	.dir_specialmenu .item_area .item_area02 .column02 .inner .img img {
		margin: 0 0 0 0;
		height: auto!important;
	}
	.dir_specialmenu .item_area .item_area02 .column02 .inner .txt {
		width: 100%;
		margin: 0 0 0 0;
		padding: 0 0 0 0;
	}
	.dir_specialmenu .item_area .item_area02 .column02 .inner .lead {
		margin: 20px 0 10px 0;
		font-size: 14px;
	}


/*いるかねここから*/
	.dir_specialmenu .item_area03 {
		max-width: 800px;
		margin: 80px auto 0 auto;
	}
	.dir_specialmenu .item_area .item_area03 .column01 .inner .lead {
		font-size: 14px;
		font-weight: 400;
		margin: 20px 0 20px 0;
	}
/*いるかねここまで*/

	.dir_specialmenu .item_area .item + .item {
		border-top: none;
		margin: 0 0 0 0;
		padding: 0 0 0 0;
	}
	.item_pc_none {
		display: none;
	}
}

/*-------------------------------------------
 dir_menu
-------------------------------------------*/
.dir_menu .item_area {
	padding: 0 20px 0 20px;
	font-weight: 400;
}
.dir_menu .item_area .item .item_wrap_r {
	margin: 30px 0 0 0;
}
.dir_menu .item_area .item .ttl {
	text-align: center;
    font-weight: 400;
    font-size: 14px;
    padding: 10px 0 10px 0;
}
.dir_menu .item_area .item .inner + .inner {
	margin: 30px 0 0 0;
}
.dir_menu .item_area .item .inner .menu_name {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    letter-spacing: 2px;
	font-size: 14px;
	border-bottom: 2px solid #ccc;
    padding: 5px 0 5px 0px;
}
.dir_menu .item_area .item .inner dl {
	display: table;
	width: 100%;
	padding: 10px 0 10px 0;
}
.dir_menu .item_area .item .inner dl + dl {
	border-top: 1px solid #ccc;
}
.dir_menu .item_area .item .inner dl dt {
	display: table-cell;
	vertical-align: top;
	width: 60%;
	padding: 0 10px 0 0;
}
.dir_menu .item_area .item .inner dl dt .description {
	color: #666;
	font-weight: 300;
	padding: 10px 0 0 0;
}
.dir_menu .item_area .item .inner dl dd {
	display: table-cell;
	vertical-align: top;
	text-align: right;
	width: 40%;
}
.dir_menu .item_area .item .inner .memo {
	background: #f5f5f5;
	padding: 5px 5px 5px 5px;
}
.dir_menu .item_area .item .note {
	margin: 10px 0 0 0;
}
.dir_menu .item_area .item .note .inner {
	border: 1px solid #ccc;
    border-radius: 5px;
    padding: 10px 10px 10px 10px;
	margin: 0 0 10px 0;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.dir_menu .item_area {
		padding: 0 0 0 0;
		max-width: 900px;
		margin: 0 auto;
	}
	.dir_menu .item_area .item .ttl {
		font-size: 16px;
    	padding: 60px 0 50px 0;
	}
	.dir_menu .item_area .item .inner + .inner {
		margin: 80px 0 0 0;
	}
	.dir_menu .item_area .item .item_wrap_l {
		float: left;
		width: 44.445%;
	}
	.dir_menu .item_area .item .item_wrap_r {
		float: right;
		width: 44.445%;
		margin: 0 0 0 0;
	}
	.dir_menu .item_area .item .inner .menu_name {
		font-size: 18px;
		margin: 0 0 10px 0;
	}
	.dir_menu .item_area .item .inner dl {
		padding: 15px 0 15px 0;
	}
	.dir_menu .item_area .item .inner dl dt {
		width: 70%;
	}
	.dir_menu .item_area .item .inner dl dd {
		width: 30%;
	}
	.dir_menu .item_area .item .inner dl dt .description {
		padding: 15px 0 0 0;
	}
	.dir_menu .item_area .item .inner .memo {
		padding: 10px 10px 10px 10px;
	}
	.dir_menu .item_area .item .note {
		margin: 75px 0 0 0;
	}
	.dir_menu .item_area .item .note .inner {
		padding: 15px 15px 15px 15px;
	}
}

/*-------------------------------------------
 dir_shop_and_staff_index
-------------------------------------------*/
.dir_shop_and_staff_index .specialmenu_slide_bxdslider li,
.dir_shop_and_staff_index .staff_slide_bxdslider li {
	max-width: 30vw;
	margin: 0 5vw 0 0;
	text-align: center;
	float: left;
	position: relative;
}
.dir_shop_and_staff_index .specialmenu_slide_bxdslider li a,
.dir_shop_and_staff_index .staff_slide_bxdslider li a {
	display: block;
	text-decoration: none;
	color: #666666;
}
.dir_shop_and_staff_index .specialmenu_slide_bxdslider li a .thumb img,
.dir_shop_and_staff_index .staff_slide_bxdslider li a .thumb img {
	width: 100%;
	border-radius: 5px
}
.dir_shop_and_staff_index .item_area .ttl {
	text-align: center;
    margin: 0 0 30px 0;
    font-weight: 400;
    font-size: 20px;
}
.dir_shop_and_staff_index .reservation_btn {
	margin: 20px 0 0 0;
}
.dir_shop_and_staff_index .reservation_btn a {
	color: #fff;
	background-image: linear-gradient(to right, #fbc2eb 0%, #a6c1ee 51%, #fbc2eb 100%);
	text-decoration: none;
	display: block;
	padding: 17px 30px 17px 30px;
    width: 220px;
    margin: 0 auto;
    text-align: center;
    border-radius: 5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    transition: 0.5s;
    background-size: 200% auto;
	position: relative;
	overflow: hidden;
}
.dir_shop_and_staff_index .reservation_btn a::before {
	content: '';
	width: 30px;
	height: 100%;
	background-color: #fff;
	animation: shine 10s ease-in-out infinite;
	position: absolute;
	top: 0;
	left: -180px;
	opacity: 0;
	transform: rotate(45deg);
}
.dir_shop_and_staff_index .reservation_btn a:hover {
	background-position: right center; 
}
.dir_shop_and_staff_index .reservation_btn {
	margin: 20px 0 0 0;
}
.dir_shop_and_staff_index .shop_and_staff_index .item_wrap {
	padding: 0 20px 40px 20px;
	line-height: 2;
}
.dir_shop_and_staff_index .shop_detail .ttl {
	margin: 40px 0 20px 0;
    font-size: 16px;
    text-align: left;
    line-height: 1.6;
}
.dir_shop_and_staff_index .shop_detail dl dt {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    letter-spacing: 2px;
	font-size: 14px;
}
.dir_shop_and_staff_index .shop_detail dl dd {
	margin: 0px 0 10px 0;
}
.dir_shop_and_staff_index .shop_detail .tel a {
	color: #333;
	text-decoration: none;
}
.dir_shop_and_staff_index .shop_detail .tel .lead {
	font-weight: 400;
    font-size: 16px;
}
.dir_shop_and_staff_index .shop_detail p + p {
	margin: 5px 0 0 0;
}
.dir_shop_and_staff_index .shop_sns {
	margin: 20px auto 0;
	text-align: center;
}
.dir_shop_and_staff_index .shop_sns .lead {
	letter-spacing: 1.5px;
	font-size: 10px;
	margin: 0 0 10px 0;
}
.dir_shop_and_staff_index .shop_sns .lead span {
	color: #999;
}
.dir_shop_and_staff_index .shop_sns ul {
	display: flex;
    justify-content: center;
}
.dir_shop_and_staff_index .shop_sns ul li {
	padding: 0 12px 0 12px;
}
.dir_shop_and_staff_index .access .ttl {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    letter-spacing: 2px;
	font-size: 20px;
	margin: 60px 0 10px 0;
}
.dir_shop_and_staff_index .access iframe {
	width: 100%;
	height: 60vw;
	max-height: 450px;
}
.dir_shop_and_staff_index .access .other {
	/* margin: 0 auto 80px auto; */
	margin: 0 auto;
	padding: 0 0 0 0;
	max-width: 900px;
}
.dir_shop_and_staff_index .appearance_slide .bx-wrapper {
	margin: 0;
}
.dir_shop_and_staff_index .appearance_slide .bx-wrapper ul li img {
	width: 100%;
    /*height: 67vw;*/
}
.dir_shop_and_staff_index .appearance_slide .controlWrap {
	margin: 10px 0 0 0;
}
.dir_shop_and_staff_index .appearance_slide .controlWrap ul li img {
	height: auto!important;
	width: auto!important;
	max-width: 100%!important;
}
.dir_shop_and_staff_index .appearance_slide p {
	margin: 10px 0 0 0;
}
.dir_shop_and_staff_index .staff_slide .ttl {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    letter-spacing: 2px;
	font-size: 20px;
	/* margin: 60px 0 50px 0; */
	margin: 10px 0;
}
.dir_shop_and_staff_index .staff_slide .name .position {
	font-size: 10px;
    display: block;
    padding: 10px 0 5px 0;
    line-height: 1.5;
}
.loopLast {
	margin-right: 0!important;
}
#staff_nonslide li:nth-child(3) {
	margin-right: 0;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.dir_shop_and_staff_index .shop_and_staff_index .item_wrap {
		padding: 60px 0 0 0;
	}
	.dir_shop_and_staff_index .item_area .ttl {
		margin: 0 0 60px 0;
	}
	.dir_shop_and_staff_index .appearance_slide {
		max-width: 750px;
    	margin: 0 auto;
	}
	.dir_shop_and_staff_index .appearance_slide .bxslider01 li img {
		width: 750px !important;
		height: 500px !important;
	}
	.dir_shop_and_staff_index .appearance_slide .controlWrap ul li img {
		height: 100px !important;
		width: 150px !important;
	}
	.dir_shop_and_staff_index .appearance_slide .controlWrap {
		margin: 3px 0 0 0;
	}
	.dir_shop_and_staff_index .appearance_slide p {
		margin: 20px 0 0 0;
	}
	.dir_shop_and_staff_index .shop_detail {
		text-align: center;
	}
	.dir_shop_and_staff_index .shop_detail .ttl {
		text-align: center;
		margin: 60px 0 30px 0;
	}
	.dir_shop_and_staff_index .shop_detail .tel .lead {
		font-size: 18px;
		margin: 15px 0 0 0;
	}
	.dir_shop_and_staff_index .shop_sns .lead {
		margin: 0 auto 10px;
		text-align: center;
	}
	.dir_shop_and_staff_index .shop_sns {
		max-width: 260px;
		margin: 30px auto 0 auto;
	}
	.dir_shop_and_staff_index .shop_sns ul li {
		padding: 0 12px 0 12px;
	}
	.dir_shop_and_staff_index .reservation_btn {
		margin: 30px 0 0 0;
	}
	.dir_shop_and_staff_index .access .ttl {
		margin: 70px 0 10px 0;
	}
	.dir_shop_and_staff_index .access p {
		text-align: center;
    	margin: 20px 0 0 0;
	}
	.dir_shop_and_staff_index .staff_slide {
		max-width: 895px;
    	margin: 40px auto 0 auto;
	}
	.shop_and_staff_index .staff_slide .bx-viewport,
	.shop_and_staff_index .my_works_slide .bx-viewport {
/*		height: 450px !important;*/
	}
	.dir_shop_and_staff_index .staff_slide .staff_slide_bxdslider,
	.dir_shop_and_staff_index .my_works_slide .my_works_slide_bxdslider {
		min-height: 225px;
	}
	.dir_shop_and_staff_index .staff_slide .staff_slide_bxdslider li ,
	.dir_shop_and_staff_index .my_works_slide .my_works_slide_bxdslider li {
		/* max-width: 300px;
		width: 300px; */
		max-width: 150px;
		margin: 0 35px 0 0;
		float: left;
	}
	#staff_nonslide li:nth-child(5) {
		margin-right: 0;
	}
	#staff_nonslide li:nth-child(3) {
		margin-right: 35px;
	}
	.dir_shop_and_staff_index .staff_slide .name {
		position: absolute;
		top: 0;
		width: 100%;
		display: table-cell;
		color: #fff;
		padding: 57px 5px 57px 5px;
		opacity: 0;
		transition: .3s;
	}
	.dir_shop_and_staff_index .staff_slide .name .position {
		padding: 0 0 0 0;
    	font-size: 12px;
	}
	.dir_shop_and_staff_index .staff_slide .name .profile {
		position: relative;
		padding: 8px 20px 8px 0 !important;
	}
	.dir_shop_and_staff_index .staff_slide .name .profile::before {
		position: absolute;
		content: '';
		background: url(/common/images/shop_and_staff/icon_shop_and_staff01.png) no-repeat;
		background-size: contain;
		width: 27px;
		height: 4px;
		right: 20px;
		top: 15px;
	}
	.dir_shop_and_staff_index .staff_slide .name span {
		display: block;
	    padding: 8px 0 8px 0;
	}
	.dir_shop_and_staff_index .staff_slide li a .thumb {
		border-radius: 5px;
		transition: .3s;
	}
	.dir_shop_and_staff_index .staff_slide li a .thumb img,
	.dir_shop_and_staff_index .my_works_slide li a .thumb img	{
		/* transition: .3s;
		border-radius: 5px;
		width: 300px;
		height: 450px;
		object-fit: cover; */
	}
	.dir_shop_and_staff_index .staff_slide li a:hover .thumb {
		background: #000;
		transition: .3s;
	}
	.dir_shop_and_staff_index .staff_slide li a:hover .thumb img {
		transition: .3s;
	}
	.dir_shop_and_staff_index .staff_slide li a:hover .name {
		transition: .3s;
		opacity: 1;
	}
}

/*-------------------------------------------
 dir_shop_and_staff_detal
-------------------------------------------*/
.dir_shop_and_staff_index .staff_area .img {
	text-align: center;
}
.dir_shop_and_staff_index .staff_area .img img {
	border-radius: 5px;
}
.dir_shop_and_staff_index .staff_area .txt .name {
	text-align: center;
	margin: 20px 0 20px 0;
}
.dir_shop_and_staff_index .staff_area .txt .name .name_jp {
	font-size: 15px;
    font-weight: 400;
}
.dir_shop_and_staff_index .staff_area .txt .lead {
	font-size: 14px;
    font-weight: 400;
    margin: 0 0 20px 0;
}
.dir_shop_and_staff_index .youtube_area iframe {
	width: 100%;
    height: 55vw;
    max-height: 170px;
    max-width: 300px;
    margin: 20px auto 30px auto;
    display: block;
}
.dir_shop_and_staff_index .my_works_slide {
	position: relative;
	margin: 0 0 140px 0;
}
.dir_shop_and_staff_index .my_works_slide .ttl {
    font-family: 'Abel', sans-serif;
    font-weight: 400;
    letter-spacing: 2px;
    font-size: 20px;
    margin: 60px 0 20px 0;
}
.dir_shop_and_staff_index .my_works_slide_bxdslider li {
	max-width: 30vw;
	margin: 0 23vw 0 -18vw;
	box-shadow: 2px 2px 4px 1px #ccc;
	float: left;
}

.dir_shop_and_staff_index .my_works_slide_bxdslider li .thumb img {
	width: 100%;
}
.dir_shop_and_staff_index .my_works_slide_bxdslider li .txt {
	display: none;
}
.dir_shop_and_staff_index .my_works_slide .bx-wrapper {
	background-color: transparent;
}
.dir_shop_and_staff_index .my_works_slide .bg_area {
	background: #f5f5f5;
    position: absolute;
    top: 70px;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.dir_shop_and_staff_index .specialmenu_slide_bxdslider li.bx-clone,
.dir_shop_and_staff_index .staff_slide_bxdslider li.bx-clone {
/*	display: none;*/
}
.dir_shop_and_staff_index .staff_slide_bxdslider li.bx-clone {
	display: block;
}
/* DeskTop */
@media screen and (min-width: 1024px) {
	.dir_shop_and_staff_index .staff_area {
		max-width: 900px;
    	margin: 0 auto;
	}
	.dir_shop_and_staff_index .staff_area .inner {
		font-size: 0;
	}
	.dir_shop_and_staff_index .staff_area .inner .img {
		display: inline-block;
		vertical-align: top;
		width: 33.3%;
	}
	.dir_shop_and_staff_index .staff_area .inner .txt {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
		width: 66.7%;
		padding: 0 0 0 45px;
	}
	.dir_shop_and_staff_index .staff_area .inner .txt .name {
		text-align: left;
		margin: 0px 0 30px 0;
	}
	.dir_shop_and_staff_index .staff_area .txt .name .name_jp {
		font-size: 16px;
		margin: 5px 0 5px 0;
	}
	.dir_shop_and_staff_index .staff_area .txt .name .name_en {
		font-size: 14px;
		color: #666;
	}
	.dir_shop_and_staff_index .staff_area .txt .lead {
		font-size: 16px;
		margin: 0 0 30px 0;
	}
	.dir_shop_and_staff_index .youtube_area iframe {
		margin: 40px 0 10px 0;
	}
	.dir_shop_and_staff_index .my_works_slide .ttl {
		margin: 80px 0 50px 0;
	}
	.dir_shop_and_staff_index .my_works_slide .bx-wrapper {
		max-width: 900px;
		margin: 0 auto;
	}
	.dir_shop_and_staff_index .my_works_slide_bxdslider li {
		max-width: 180px;
		margin: 0 55px 0 0;
	}
	.dir_shop_and_staff_index .my_works_slide .bg_area {
		top: 165px;
		height: 200px;
	}
	.dir_shop_and_staff_index .my_works_slide {
		margin: 0 0 100px 0;
	}
	.dir_shop_and_staff_index .my_works_slide_inner {
		max-width: 895px;
    	margin: 0 auto;
	}
}

/*-------------------------------------------
 dir_coupon
-------------------------------------------*/
.dir_coupon .coupon_area {
	padding: 0 20px 0 20px;
}
.dir_coupon .coupon_area .item + .item {
	border-top: 1px solid #ccc;
    margin: 30px 0 0 0;
    padding: 50px 0 0 0;
}
.dir_coupon .coupon_area .item .txt .type {
	margin: 0 0 10px 0;
}
.dir_coupon .coupon_area .item .txt .type span {
	border: 1px solid #333;
    padding: 0px 15px 0 15px;
}
.dir_coupon .coupon_area .item .txt .name {
	font-size: 14px;
    font-weight: 400;
}
.dir_coupon .coupon_area .item .txt .price {
	font-size: 14px;
    font-weight: 400;
    margin: 10px 0 20px 0;
}
.dir_coupon .coupon_area .item .txt .detail {
	margin: 20px 0 30px 0;
}
.dir_coupon .coupon_area .item .img img {
	display: block;
	margin: 0 auto;
	width: 220px;
	height: auto;
	border-radius: 5px;
}
.dir_coupon .coupon_area .item .img .reservation_btn {
	margin: 20px 0 0 0;
}
.dir_coupon .coupon_area .item .img .reservation_btn a {
	color: #fff;
	background-image: linear-gradient(to right, #fbc2eb 0%, #a6c1ee 51%, #fbc2eb 100%);
	text-decoration: none;
	display: block;
	padding: 17px 30px 17px 30px;
    width: 220px;
    margin: 0 auto;
    text-align: center;
    border-radius: 5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    transition: 0.5s;
    background-size: 200% auto;
	position: relative;
	overflow: hidden;
}
.dir_coupon .coupon_area .item .img .reservation_btn a::before {
	content: '';
	width: 30px;
	height: 100%;
	background-color: #fff;
	animation: shine 10s ease-in-out infinite;
	position: absolute;
	top: 0;
	left: -180px;
	opacity: 0;
	transform: rotate(45deg);
}
.dir_coupon .coupon_area .item .img .reservation_btn a:hover {
	background-position: right center; 
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.dir_coupon .coupon_area {
		padding: 0 0 0 0;
		margin: 0 auto;
		max-width: 900px;
	}
	.dir_coupon .coupon_area .item .txt .name {
		font-size: 16px;
	}
	.dir_coupon .coupon_area .item .txt .price {
		font-size: 16px;
		margin: 30px 0 30px 0;
	}
	.dir_coupon .coupon_area .item .txt .type {
		margin: 0 0 20px 0;
	}
	.dir_coupon .coupon_area .item .item {
		font-size: 0;
	}
	.dir_coupon .coupon_area .item .txt {
		display: inline-block;
		vertical-align: top;
		width: 77.4%;
	}
	.dir_coupon .coupon_area .item .img {
		display: inline-block;
		vertical-align: top;
		width: 22.3%;
	}
	.dir_coupon .coupon_area .item + .item {
		margin: 10px 0 0 0;
	}
}

/*-------------------------------------------
 dir_gallery_index
-------------------------------------------*/
.dir_gallery_index .pull_down_menu {
	position: relative;
	padding: 0 0 0 0;
	margin: 0 20px 20px 20px;
}
.dir_gallery_index .pull_down_menu::before {
	position: absolute;
	top: 0;
	left: 0;
}
.dir_gallery_index select {
	color: #999;
	position: relative;
	padding: 0px 40px 5px 100px;
}
.dir_gallery_index .pull_down_menu:nth-child(3) select {
	padding: 0px 40px 5px 105px;
}
.gallery_index .my_works_slide_bxdslider li {
	max-width: 30vw;
	margin: 0 5vw 0 0;
	text-align: center;
	float: left;
}
.gallery_index .my_works_slide_bxdslider li:nth-child(3n) {
	margin-right: 0;
}
.gallery_index .my_works_slide_bxdslider li a,
.gallery_index .my_works_slide_bxdslider li label {
	color: #333;
    text-decoration: none;
}
.gallery_index .my_works_slide_bxdslider li label:hover {
	color: #333;
    text-decoration: none;
}
.gallery_index .my_works_slide_bxdslider li a img {
	width: 100%;
}

.gallery_index .gallery_ttl {
    font-family: 'Abel', sans-serif;
    font-weight: 400;
	text-align: center;
    font-size: 22px;
    letter-spacing: 2px;
    display: block;
	margin: 30px 0 40px 0;
}
.gallery_index .gallery_ttl .ttl_jp {
    font-size: 14px;
}
.gallery_index .my_works_slide_bxdslider li a .txt {
    line-height: 1.5;
	margin: 5px 0 0 0;
}
.gallery_index .my_works_slide {
	position: relative;
	max-width: 895px;
	margin: 0 auto;
}
.gallery_index .my_works_slide .bg_area {
	background: #f5f5f5;
    position: absolute;
    top: 100px;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.gallery_index .my_works_slide .bx-wrapper {
	background-color: transparent;
}
.gallery_index .ranking .ttl {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
	text-align: center;
    font-size: 22px;
    letter-spacing: 2px;
    display: block;
	margin: 200px 0 70px 0;
}
.gallery_index .ranking .bx-viewport {
	min-height: 300px;
}
.gallery_index .ranking .my_works_slide_bxdslider li {
	margin: 40px 5vw 0 0;
}
.gallery_index .ranking ul li::before {
	content: '';
	position: absolute;
	background: url(../images/gallery/icon_gallery01.png) no-repeat;
	background-size: contain;
	width: 38px;
    height: 32px;
    left: 38px;
    top: -40px;
}
.gallery_index .ranking ul li::after {
    position: absolute;
    top: -35px;
    left: 48%;
    color: #fff;
}
.gallery_index .ranking ul li.rank_no1::after {
	content: '1';
}
.gallery_index .ranking ul li.rank_no2::after {
	content: '2';
}
.gallery_index .ranking ul li.rank_no3::after {
	content: '3';
}
.gallery_index .ranking ul li.rank_no4::after {
	content: '4';
}
.gallery_index .ranking ul li.rank_no5::after {
	content: '5';
}
.dir_gallery_index .ranking ul {
	font-size: 0;
	text-align: center;
}
.dir_gallery_index .ranking ul li {
	display: inline-block;
	width: 33%;
    font-size: 12px;
    padding: 0 9px;
	position: relative;
}
.dir_gallery_index .ranking ul li a {
	color: #333;
    text-decoration: none;
}
.dir_gallery_index .gallery_pager {
	font-size: 0;
	text-align: center;
	margin: 40px 0 0 0;
}
.dir_gallery_index .gallery_pager a {
	color: #333;
	display: inline-block;
	font-weight: 400;
	text-decoration: none;
	font-size: 13px;
	padding: 0 12px;
}
.dir_gallery_index .gallery_pager span{
	color: #000;
	display: inline-block;
	font-weight: 600;
	text-decoration: none;
	font-size: 13px;
	padding: 0 12px;
}

@media screen and (min-width: 500px) {
	.gallery_index .ranking ul li::before {
		left: 38%;
	}
}

/* ipad */
@media screen and (min-width: 500px) and (max-width: 767px) {
	.gallery_index .ranking .bx-viewport {
		min-height: 350px;
	}
}

/* ipad */
@media screen and (min-width: 600px) and (max-width: 1023px) {
	.gallery_index .ranking .my_works_slide_bxdslider li::before {
		left: 37%;
	}
	.gallery_index .ranking .bx-viewport {
		min-height: 530px;
	}
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.dir_gallery_index .pull_down_menu::before {
		display: none;
	}
	.dir_gallery_index .pull_down_menu::after {
		display: none;
	}
	.gallery_area .search {
		max-width: 750px;
		margin: 0 auto 40px auto;
	}
	.gallery_area .search dl {
		font-size: 0;
	}
	.gallery_area .search dl dt {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
	}
	.gallery_area .search dl dd {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
	}
	.gallery_area .search dl dd ul {
		font-size: 0;
	}
	.gallery_area .search dl dd ul li {
		font-size: 12px;
		display: inline-block;
		vertical-align: top;
	}
	.gallery_area .search dl dd ul li + li {
		margin: 0 0 0 10px;
	}
	.gallery_area .search dl dd ul li a {
		color: #333;
		text-decoration: none;
	}
	.gallery_area .search dl dd ul li a:hover {
		text-decoration: underline;
	}
	.gallery_area .search dl dd ul li label:hover {
		text-decoration: underline;
		cursor: pointer;
	}
	.gallery_area .search dl dd ul li label input[type='radio'] {
		display: none;
	}
	.gallery_area .inner {
		max-width: 750px;
		margin: 0 auto;
	}
	.gallery_area .inner .gallery_list {
		font-size: 0;
	}
	.gallery_area .inner .gallery_list li {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
		width: 24.667%;
		position: relative;
		margin: 0 0.44% 0.3% 0;
	}
	.gallery_area .inner .gallery_list li:nth-child(4n) {
		margin: 0 0 0.3% 0;
	}
	.gallery_area .inner .gallery_list li a {
		display: block;
		background: #000;
	}
	.gallery_area .inner .gallery_list li a .thumb {
		overflow: hidden;
		width: 186px;/* トリミングしたい枠の幅 */
		height: 186px;/* トリミングしたい枠の高さ */
		position: relative;
	}
	.gallery_area .inner .gallery_list li a .thumb img {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.gallery_area .inner .gallery_list li a .txt {
		position: absolute;
		opacity: 0;
		top: 0;
		left: 0;
		color: #fff;
		transition: .3s;
		text-align: center;
    	padding: 71.5px 10px 71.5px 10px;
	}
	.gallery_area .inner .gallery_list li a:hover .txt {
		opacity: 1;
		transition: .3s;
	}
	.dir_gallery_index .page_ttl {
		padding: 65px 0 40px 0;
	}
	.dir_gallery_index .ranking {
		max-width: 900px;
    	margin: 0 auto;
	}
	.dir_gallery_index .ranking .my_works_slide_bxdslider li {
		max-width: 150px;
		margin: 0px 35px 0 0;
	}
	.gallery_index .ranking .my_works_slide_bxdslider li::before {
		width: 25px;
		height: 21px;
		right: 10px;
		left: auto;
		top: 10px;
		z-index: 1;
	}
	.dir_gallery_index .ranking .my_works_slide_bxdslider li a {
		display: block;
		background: #000;
		border-radius: 5px;
	}
	.dir_gallery_index .ranking .my_works_slide_bxdslider li a .thumb img {
		border-radius: 5px;
	}
	.dir_gallery_index .ranking .my_works_slide_bxdslider li a .txt {
		position: absolute;
		top: 0;
		color: #fff;
		padding: 94px 10px 94px 10px;
		margin: 0 0 0 0;
		opacity: 0;
		transition: .3s;
	}
	.dir_gallery_index .ranking .my_works_slide_bxdslider li a:hover .txt {
		opacity: 1;
		transition: .3s;
	}
	.gallery_index .ranking .my_works_slide_bxdslider li::after {
		top: 9px;
		right: 20px;
		left: auto;
		color: #fff;
		z-index: 1;
		font-size: 10px;
	}
	.gallery_index .ranking .ttl {
		margin: 80px 0 80px 0;
	}
	.gallery_index .ranking .bx-viewport {
		min-height: auto;
	}
	
	
	.dir_gallery_index .ranking ul {
		font-size: 0;
	}
	.dir_gallery_index .ranking ul li {
		max-width: 150px;
		margin: 0px 37px 0 0 !important;
    	display: inline-block;
		position: relative;
		padding: 0 0 0 0;
	}
	.dir_gallery_index .ranking ul li:last-child {
		margin: 0 0 0 0 !important;
	}
	.gallery_index .ranking ul li::before {
		width: 25px;
		height: 21px;
		right: 10px;
		left: auto;
		top: 10px;
		z-index: 1;
	}
	.dir_gallery_index .ranking ul li a {
		display: block;
		background: #000;
		border-radius: 5px;
	}
	.dir_gallery_index .ranking ul li a .thumb img {
		border-radius: 5px;
	}
	.dir_gallery_index .ranking ul li a .txt {
		position: absolute;
		top: 0;
		color: #fff;
		padding: 94px 10px 94px 10px;
		margin: 0 0 0 0;
		opacity: 0;
		transition: .3s;
	}
	.dir_gallery_index .ranking ul li a:hover .txt {
		opacity: 1;
		transition: .3s;
	}
	.gallery_index .ranking ul li::after {
		top: 9px;
		right: 20px;
		left: auto;
		color: #fff;
		z-index: 1;
		font-size: 10px;
	}
	.gallery_index .ranking .ttl {
		margin: 80px 0 80px 0;
	}
}

/*-------------------------------------------
 dir_gallery_detail
-------------------------------------------*/
.gallery_detail {
	padding: 0 20px 0 20px;
}
.gallery_detail .bx-wrapper {
	margin-bottom: 15px;
}
.gallery_detail .bxslider02 li {
	max-width: 20vw;
    max-height: 20vw;
    overflow: hidden;
	margin: 0 5px 0 0
}
.gallery_detail .bxslider02 li.bx-clone {
	display: none;
}
.gallery_detail .inner .txt .description {
    margin: 40px 0 0 0;
    border-bottom: 1px solid #ccc;
    padding: 0 0 30px 0;
}
.gallery_detail .inner .txt .description .tag ul li {
	border: 1px solid #666;
	display: inline-block;
	vertical-align: top;
	min-width: 80px;
	text-align: center;
}
.gallery_detail .inner .txt .description .name {
	font-size: 14px;
    margin: 15px 0 15px 0;
}
.gallery_detail .inner .txt .staff_area {
	padding: 20px 0 20px 0;
	border-bottom: 1px solid #ccc;
}
.gallery_detail .inner .txt .staff_area .staff_wrap {
	font-size: 0;
}
.gallery_detail .inner .txt .staff_area .staff_wrap .staff_img {
	display: inline-block;
	vertical-align: top;
	width: 30%;
}
.gallery_detail .inner .txt .staff_area .staff_wrap .staff_txt {
	display: inline-block;
	vertical-align: top;
	font-size: 12px;
	width: 70%;
    padding: 0 0 0 20px;
}
.gallery_detail .inner .txt .staff_area .staff_wrap .staff_txt P {
	margin: 0 0 10px 0;
}
.gallery_detail .inner .txt .staff_area .staff_wrap .staff_txt P.name {
	font-size: 14px;
}
.gallery_detail .inner .txt .staff_area .btn_area {
	text-align: left;
	margin: 20px 0 0 0;
}
.btn_area .read_more_staff a {
	color: #333;
	text-decoration: none;
	letter-spacing: 2px;
	position: relative;
	margin: 0 30px 0 0;
}
.btn_area .read_more_staff a::before {
	position: absolute;
	content: '>>';
	top: -2px;
	right: -35px;
}
.btn_area .read_more_staff a:hover::before {
	animation: arrow 0.4s infinite alternate;
}
.special_selection .ttl {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
	text-align: center;
    font-size: 22px;
    letter-spacing: 2px;
    display: block;
	margin: 60px 0 40px 0;
}
.gallery_index .special_selection .my_works_slide_bxdslider li {
    max-width: 27vw;
    margin: 0 15vw 0 -10vw;
}
.gallery_index .special_selection {
	position: relative;
}
.gallery_index .special_selection .bg_area {
	position: absolute;
	background-color: #f5f5f5;
	height: 80%;
    width: 100%;
    top: 120px;
    z-index: -1;
}
.gallery_index .special_selection_btn {
	margin: 100px 0 0 0;
}
.gallery_index .special_selection_btn a {
	color: #333;
    text-decoration: none;
    border: 1px solid #333;
    display: block;
    text-align: center;
    width: 200px;
    margin: 0px auto 0 auto;
    padding: 12px 12px 12px 12px;
    border-radius: 5px;
}
.gallery_detail .bxslider01 li img {
	margin: 0 auto;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.gallery_area .search {
		max-width: 800px;
	}
	.gallery_detail {
		padding: 0 0 0 0;
		max-width: 800px;
		margin: 0 auto;
	}
	.gallery_detail .inner {
		font-size: 0;
	}
	.gallery_detail .inner .img {
		display: inline-block;
		vertical-align: top;
		width: 43.7%;
	}
	.gallery_detail .inner .txt {
		display: inline-block;
		vertical-align: top;
		width: 56.3%;
		font-size: 12px;
	}
	.gallery_detail .bxslider02 li {
		max-width: 60px;
		max-height: 60px;
		margin: 0 3px 0 0;
	}
	.gallery_detail .inner .txt .description {
		margin: 0px 0 0 0;
	}
	.gallery_detail .inner .txt .description .name {
		font-size: 16px;
		margin: 30px 0 30px 0;
		font-weight: 400;
	}
	.gallery_detail .inner .txt .description {
		padding: 0 0 10px 0;
		min-height: 250px;
		border-bottom: none;
	}
	.gallery_detail .inner .txt {
		padding: 0 0 0 35px;
	}
	.gallery_detail .inner .txt .staff_area {
		padding: 40px 0 30px 0;
		border-top: 1px solid #ccc;
		width: 100%;
    	max-width: 270px;
	}
	.gallery_detail .inner .txt .staff_area .staff_wrap .staff_img {
		width: 28%;
	}
	.gallery_detail .inner .txt .staff_area .staff_wrap .staff_txt {
		width: 72%;
	}
	.gallery_detail .inner .txt .staff_area .staff_wrap .staff_txt P.name {
		font-size: 13px;
	}
	.special_selection .ttl {
		margin: 70px 0 60px 0;
	}
	.gallery_index .special_selection .bx-wrapper {
		max-width: 895px;
    	margin: 0 auto;
	}
	.gallery_index .special_selection .my_works_slide_bxdslider li {
		max-width: 150px;
		margin: 0 35px 0 0;
	}
	.gallery_index .special_selection .my_works_slide_bxdslider li img {
		box-shadow: 5px 0px 10px #bbb;
	}
	.gallery_index .special_selection .my_works_slide_bxdslider li .txt {
		position: absolute;
		top: 0;
		padding: 113px 10px 113px 10px;
		color: #fff;
		opacity: 0;
		transition: .3s;
	}
	.gallery_index .special_selection .my_works_slide_bxdslider li a {
		display: block;
		background: #000;
	}
	.gallery_index .special_selection .my_works_slide_bxdslider li a:hover .txt {
		opacity: 1;
		transition: .3s;
	}
	.gallery_index .special_selection .bg_area {
		height: 230px;
		top: 150px;
	}
	.gallery_index .special_selection_btn {
		text-align: center;
		margin: 50px 0 0 0;
	}
	.gallery_index .special_selection_btn a.sp_none {
		border: none;
		padding: 0 0 0 0;
		width: auto;
		display: inline !important;
	}
	.gallery_index .special_selection_btn a:hover {
		text-decoration: underline;
	}
}

/*-------------------------------------------
 dir_gallery_recruit
-------------------------------------------*/
.recruit_wrap {
	padding: 0 20px 0 20px;
}
.recruit_wrap .main_area .item_1_column {
	margin: 20px 0 0 0;
}
.recruit_wrap .main_area .item_1_column .txt {
	margin: 10px 0 0 0;
}
.recruit_wrap .main_area .item_1_column .txt .lead {
	font-size: 14px;
    font-weight: 400;
    margin: 0 0 10px 0;
}
.recruit_wrap .main_area .item_2_column {
	margin: 20px 0 0 0;
}
.recruit_wrap .main_area .item_2_column.type03 .item {
	margin: 0 0 20px 0;
}
.recruit_wrap .main_area .item_2_column .txt {
	margin: 10px 0 0 0;
}
.recruit_wrap .main_area .item_2_column .txt .lead {
	font-size: 14px;
    font-weight: 400;
    margin: 0 0 10px 0;
}
.recruit_wrap .youtube_area iframe {
	width: 100%;
    max-width: 600px;
    height: 50vw;
    margin: 40px auto 0 auto;
    display: block;
    max-height: 338px;
}
.recruit_wrap .sub_area {
	margin: 40px 0 0 0;
}
.recruit_wrap .sub_area .ttl {
	font-size: 14px;
    font-weight: 400;
    border-bottom: 1px solid #999;
    padding: 0 0 5px 0;
    margin: 0 0 20px 0;
}
.recruit_wrap .sub_area .inner {
	margin: 0 0 40px 0;
}
.recruit_wrap .sub_area .inner dl {
	font-size: 0;
	padding: 10px 0 10px 0;
}
.recruit_wrap .sub_area .inner dl + dl {
	border-top: 1px solid #ccc;
}
.recruit_wrap .sub_area .inner dl dt {
	display: inline-block;
	vertical-align: top;
	font-size: 12px;
	font-weight: 400;
	width: 30%;
}
.recruit_wrap .sub_area .inner dl dd {
	display: inline-block;
	vertical-align: top;
	font-size: 12px;
	width: 70%;
	margin: 0 0 0 0;
}
.recruit_wrap .sub_area .inner dl dd a {
	color: #333;
	text-decoration: none;
}
.recruit_wrap .sub_area .remarks {
	border: 1px solid #999;
    padding: 10px 10px 10px 10px;
}
.recruit_wrap .bottom_area {
	text-align: center;
	margin: 40px 0 0 0;
}
.recruit_wrap .bottom_area .corporate .lead {
	margin: 0 0 10px 0;
}
.recruit_wrap .bottom_area .download {
	margin: 40px 0 0 0;
}
.recruit_wrap .bottom_area .download .lead {
	margin: 0 0 10px 0;
}
.recruit_wrap .bottom_area .download .btn {
	display: block;
    border: 1px solid #666;
    border-radius: 5px;
    width: 200px;
    margin: 20px auto 0 auto;
    padding: 12px 10px 12px 10px;
	color: #333;
	text-decoration: none;
	transition: .3s;
}
.recruit_wrap .bottom_area .download .btn:hover {
	background: #333;
	color: #fff;
	transition: .3s;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.recruit_wrap {
		padding: 0 0 0 0;
		max-width: 800px;
		margin: -40px auto 0 auto;
		line-height: 2;
	}
	.recruit_wrap .main_area .item_1_column .img {
		text-align: center;
		width: 100%;
		background: rgb(224,224,224);
	}
	.recruit_wrap .main_area .item_1_column .img img {
		text-align: center;
		max-width: 100%;
		max-height: 100%;
	}
	.recruit_wrap .main_area .item_1_column .txt {
		margin: 25px 0 0 0;
	}
	.recruit_wrap .main_area .item_1_column .txt .lead {
		font-weight: 400;
		font-size: 14px;
		margin: 0 0 10px 0;
	}
	.recruit_wrap .main_area .item_2_column {
		font-size: 0;
	}
	.recruit_wrap .main_area .item_2_column .img {
		position: relative;
		display: inline-block;
		text-align: center;
		vertical-align: middle;
		width: 45%;
		height: 240px;
		background: rgb(224,224,224);
	}
	.recruit_wrap .main_area .item_2_column .img img {
		position: absolute;
		text-align: center;
		max-width: 100%;
		max-height: 100%;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	.recruit_wrap .main_area .item_2_column .txt {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
		width: 55%;
		margin: 0 0 0 0;
		padding: 0 0 0 25px;
	}
	.recruit_wrap .main_area .item_2_column.type03 .txt {
		padding: 0 0 0 0;
		width: 100%;
	}
	.recruit_wrap .main_area .item_2_column {
		position: relative;
		margin: 80px 0 0 0;
	}
	.recruit_wrap .main_area .item_2_column.minHeight {
		min-height: 240px;
	}
	.recruit_wrap .main_area .item_2_column.type02 .txt {
		padding: 0 30px 0 0;
	}
	.recruit_wrap .main_area .item_2_column.type02 .img {
		position: absolute;
		right: 0;
	}
	.recruit_wrap .main_area .item_2_column.type03 {
		margin: 80px 0 70px 0;
	}
	.recruit_wrap .main_area .item_2_column.type03 .item {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
		width: 45%;
	}
	.recruit_wrap .main_area .item_2_column.type03 .item .img {
		position: relative;
		display: inline-block;
		text-align: center;
		vertical-align: middle;
		width: 100%!important;
		height: 240px;
		background: rgb(224,224,224);
	}
	.recruit_wrap .main_area .item_2_column .item + .item {
		margin: 0 0 0 10%;
	}
	.recruit_wrap .main_area .item_2_column .item .lead {
		font-size: 14px;
		font-weight: 400;
		margin: 0 0 10px 0;
	}
	.recruit_wrap .main_area .item_2_column .item .lead {
		margin: 10px 0 10px 0;
		line-height: 1.6;
	}
	.recruit_wrap .sub_area {
		margin: 100px 0 0 0;
	}
	.recruit_wrap .sub_area .inner dl {
		padding: 25px 0 25px 0;
	}
	.recruit_wrap .sub_area .inner dl dt {
		width: 20%;
	}
	.recruit_wrap .sub_area .inner dl dd {
		width: 80%;
	}
	.recruit_wrap .sub_area .inner {
		margin: 0 0 70px 0;
	}
	.recruit_wrap .sub_area .remarks {
		margin: -50px 0 0 0;
    	padding: 25px 25px 25px 25px;
	}
	.recruit_wrap .bottom_area {
		margin: 80px 0 0 0;
	}
	.recruit_wrap .bottom_area .download {
		margin: 50px 0 0 0;
	}
	.recruit_wrap .bottom_area .download .btn {
		width: 400px;
		padding: 15px 15px 15px 15px;
	}
	.recruit_wrap .youtube_area iframe {
		margin: 100px auto 0 auto;
	}
}

/*-------------------------------------------
 dir_blog_index
-------------------------------------------*/
.blog_list {
	padding: 0 20px 0 20px;
	margin: 0 auto;
	max-width: 600px;
}
.blog_list ul {
	font-size: 0;
}
.blog_list ul li {
	display: inline-block;
	vertical-align: top;
	width: 48%;
	margin: 0 4% 8% 0;
	font-size: 12px;
	text-align: center;
}
.blog_list ul li:nth-child(2n) {
	margin: 0 0 8% 0;
}
.blog_list ul li a {
	color: #333;
	text-decoration: none;
	display: block;
}
.blog_list ul li a .thumb {
	height: 160px;
	position: relative;
}
.blog_list ul li a .thumb img {
	width: 100%;
	border-radius: 10px;
	object-fit: cover;
	font-family: ‘object-fit: cover;’;

	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}
.blog_list ul li a .date {
	margin: 5px 0 5px 0;
}
.blog_list ul li a .category {
	display: none;
}
.blog_pager {
	font-size: 0;
	text-align: center;
	margin: 20px 0 40px 0;
}
.blog_pager a {
	color: #333;
	display: inline-block;
	font-weight: 400;
	text-decoration: none;
	font-size: 13px;
	padding: 0 9px;
}
.blog_pager a:hover {
	text-decoration: underline;
}
.blog_other {
	padding: 0 20px 0 20px;
	max-width: 600px;
    margin: 0 auto;
}
.blog_other.bo_center {
	text-align: center;
}
.blog_other .item.calendar {
	margin: 0 0 80px 0;
}
.blog_other .item + .item {
	margin: 40px 0 0 0;
}
.blog_other .item .ttl {
	font-size: 16px;
	font-family: 'Abel', sans-serif;
    font-weight: 400;
    letter-spacing: 2px;
	border-bottom: 1px solid #999;
	margin: 0 0 10px 0;
}
.blog_other .item.recent_posts ul li,
.blog_other .item.category ul li {
	padding: 10px 0 10px 0;
}
.blog_other .item.recent_posts ul li + li,
.blog_other .item.category ul li + li {
	border-top: 1px solid #ccc;
}
.blog_other .item.recent_posts ul li a,
.blog_other .item.category ul li a {
	color: #333;
	text-decoration: none;
}
.blog_other .item.recent_posts ul li a:hover,
.blog_other .item.category ul li a:hover {
	text-decoration: underline;
}
.blog_other .item.category .search form {
	font-size: 0;
	text-align: center;
	margin: 20px 0 0 0;
}
.blog_other .item.category .search form input {
	font-size: 10px;
	display: inline-block;
	vertical-align: top;
	width: 87%;
    border: 1px solid #333;
    padding: 9px 10px 9px 10px;
}
.blog_other .item.category .search form button {
	display: inline-block;
	vertical-align: top;
	background: #333;
    border: none;
    padding: 7px 8px 7px 8px;
}
.blog_ranking {
	max-width: 560px;
    margin: 0 auto;
}
.blog_ranking > .ttl {
	font-family: 'Abel', sans-serif;
    font-weight: 400;
	text-align: center;
    font-size: 22px;
    letter-spacing: 2px;
    display: block;
	margin: 70px 0 70px 0;
}
.blog_ranking .bx-viewport {
	min-height: 300px;
}
.blog_ranking .blog_ranking_slide_bxdslider li {
	/* margin: 40px -24vw 0 30vw; */
	margin-top: 40px;
	max-width: 40vw;
}
.blog_ranking ul {
	font-size: 0;
	text-align: center;
}
.blog_ranking ul li {
	display: inline-block;
    font-size: 12px;
    width: 32%;
    padding: 0 10px;
	position: relative;
}
.blog_ranking ul li:nth-child(4),
.blog_ranking ul li:nth-child(5) {
	/* margin: 60px 0 0 0; */
}
.blog_ranking ul li::before {
	content: '';
    position: absolute;
    background: url(../images/blog/icon_blog02.png) no-repeat;
    background-size: contain;
    width: 30px;
    height: 30px;
    left: 37%;
    top: -40px;
}
.blog_ranking ul li::after {
    position: absolute;
	top: -36px;
    left: 46%;
    color: #fff;
}

.blog_ranking ul li.rank_no1::after {
	content: '1'!important;
}
.blog_ranking ul li.rank_no2::after {
	content: '2'!important;
}
.blog_ranking  ul li.rank_no3::after {
	content: '3'!important;
}
.blog_ranking  ul li.rank_no4::after {
	content: '4'!important;
}
.blog_ranking  ul li.rank_no5::after {
	content: '5'!important;
}

.blog_ranking ul li a {
	color: #333;
	text-decoration: none;
}
.blog_ranking ul li a .thumb img {
	width: 100%;
	height: auto;
	border-radius: 10px;
	object-fit: cover;
	font-family: ‘object-fit: cover;’;
}
.blog_ranking ul li a .txt {
	text-align: center;
	margin: 15px 0 0 0;
}
.blog_ranking ul li a .ttl {
	margin: 0 0 0 0;
    font-size: 12px;
}
.blog_ranking ul li a .date {
	margin: 0 0 5px 0;
}
.blog_ranking ul li a .category {
	display: none;
}
.sub_content .blog_other .item.youtube iframe {
    width: 100%;
    min-height: 240px;
}

/* SP広 */
@media screen and (min-width: 426px) and (max-width: 599px) {
	.blog_ranking .blog_ranking_slide_bxdslider li {
		margin: 40px -5vw 0 0vw;
		max-width: 40vw;
	}
	.blog_ranking ul li a .thumb img {
		height: 19.6vw;
	}
	.blog_list ul li a .thumb img {
		height: 40vw;
	}
}

/* ipad */
@media screen and (min-width: 600px) and (max-width: 1023px) {
	.blog_ranking .blog_ranking_slide_bxdslider li {
		margin: 40px 55px 0 0;
		max-width: 150px;
	}
	.blog_ranking ul li::before {
		left: 40%;
	}
	.blog_ranking ul li a .thumb img {
		height: 20.8vw;
	}
	.blog_list ul li a .thumb img {
		height: 35vw;
	}
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.blog_list {
		padding: 0 0 0 0;
		max-width: 900px;
	}
	.blog_list ul li {
		width: 20%;
		margin: 0 6.5% 6.5% 0;
		position: relative;
	}
	.blog_list ul li:nth-child(2n) {
		margin: 0 6.5% 6.5% 0;
	}
	.blog_list ul li:nth-child(4n) {
		margin: 0 0 6.5% 0;
	}
	.blog_list ul li a .thumb {
		border-radius: 10px;
		transition: .3s;
		height: 180px;
		overflow: hidden;

	}
	.blog_list ul li a:hover .thumb {
		background: #000;
		transition: .3s;
	}
	.blog_list ul li a .txt {
		position: absolute;
		width: 100%;
		top: 0;
		padding: 40px 10px 40px 10px;
		color: #fff;
		opacity: 0;
		transition: .3s;
	}
	.blog_list ul li a:hover .txt {
		opacity: 1;
		transition: .3s;
	}
	.blog_list ul li a .category {
		display: block;
		margin: 5px 0 0 0;
	}
	.blog_list ul li a .category span {
		border: 1px solid #fff;
		padding: 2px 8px 2px 8px;
		font-size: 10px;
	}
	.blog_list ul li a .thumb img {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
	}
	.blog_list ul li a .thumb img.logoimg {
		width:100%!important;
		height:auto!important;
		left: 50%;
		position: absolute;
		top: 50%;
		transform: translate(-50%,-50%) scale(1.0, 1.0);
	}
	.blog_pager {
		margin: 0px 0 80px 0;
	}
	.blog_other {
		padding: 0 0 0 0;
		max-width: 900px;
		font-size: 0;
	}
	.blog_other .item {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
		width: 24.5%;
	}
	.sub_content .blog_other .item {
		width: 47% !important;
	}
	.blog_other .item + .item {
		margin: 0 0 0 13.2%;
	}
	.sub_content .blog_other .item + .item {
		margin: 0 0 0 6% !important;
	}
	.blog_other .item .ttl {
		padding: 0 0 10px 0;
	}
	.sub_content .blog_other .item.youtube iframe {
		width: 100%;
    	min-height: 240px;
	}
	.blog_other .item.recent_posts ul li + li,
	.blog_other .item.category ul li + li {
		border-top: 1px dashed #ccc;
	}
	.blog_other .item.category .search form button {
		padding: 5.5px 6.5px 5.5px 6.5px;
	}
	.blog_other .item.category .search form input {
		font-size: 11px;
		width: 85%;
		padding: 6.5px 12px 6.5px 12px;
	}
	.blog_ranking {
		max-width: 900px;
    	margin: 0 auto;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li {
		max-width: 150px;
		margin: 0px 38px 0 0;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li::before {
		width: 27px;
		height: 23px;
		right: 8px;
		left: auto;
		top: 8px;
		z-index: 1;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li a {
		display: block;
		border-radius: 10px;
		transition: .3s;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li a .thumb img {
		border-radius: 5px;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li a .txt {
		position: absolute;
		top: 0;
		color: #fff;
		padding: 25px 10px 25px 10px;
		margin: 0 0 0 0;
		opacity: 0;
		transition: .3s;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li a:hover {
		background: #000;
		transition: .3s;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li a:hover .txt {
		opacity: 1;
		transition: .3s;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li::after {
		top: 9px;
		right: 20px;
		left: auto;
		color: #fff;
		z-index: 1;
		font-size: 10px;
	}
	.blog_ranking .ttl {
		margin: 80px 0 80px 0;
	}
	.blog_ranking .bx-viewport {
		min-height: auto;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li a .ttl {
		margin: 0 0 10px 0;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li a .category {
		display: block;
	}
	.blog_ranking .blog_ranking_slide_bxdslider li a .category span {
		border: 1px solid #fff;
		padding: 2px 8px 2px 8px;
		font-size: 10px;
	}
	.blog_ranking_slide_bxdslider li.bx-clone {
		display: block;
	}
	
	.blog_ranking {
		max-width: 900px;
    	margin: 0 auto;
	}
	.blog_ranking ul {
		font-size: 0;
	}
	.blog_ranking ul li {
		max-width: 150px;
		margin: 0px 37px 0 0 !important;
		position: relative;
		display: inline-block;
		width: 150px;
		font-size: 12px;
		padding: 0 0 0 0;
	}
	.blog_ranking ul li:last-child {
		margin: 0 0 0 0 !important;
	}
	.blog_ranking ul li::before {
		width: 27px;
		height: 23px;
		right: 8px;
		left: auto;
		top: 8px;
		z-index: 1;
	}
	.blog_ranking ul li a {
		display: block;
		border-radius: 10px;
		transition: .3s;
		position: relative;
    	text-align: center;
	}
	.blog_ranking ul li a .thumb img {
		border-radius: 5px;
		height: 150px;
	}
	.blog_ranking ul li a .txt {
		position: absolute;
		top: 0;
		color: #fff;
		padding: 25px 10px 25px 10px;
		margin: 0 0 0 0;
		opacity: 0;
		transition: .3s;
	}
	.blog_ranking ul li a:hover {
		background: #000;
		transition: .3s;
	}
	.blog_ranking ul li a:hover .txt {
		opacity: 1;
		transition: .3s;
	}
	.blog_ranking ul li::after {
		top: 9px;
		right: 20px;
		left: auto;
		color: #fff;
		z-index: 1;
		font-size: 10px;
	}
	.blog_ranking .ttl {
		margin: 80px 0 80px 0;
	}
	.blog_ranking ul li a .ttl {
		margin: 0 0 10px 0;
	}
	.blog_ranking ul li a .category {
		display: block;
	}
	.blog_ranking ul li a .category span {
		border: 1px solid #fff;
		padding: 2px 8px 2px 8px;
		font-size: 10px;
	}
}

/*-------------------------------------------
 dir_blog_detal
-------------------------------------------*/
.blog_content {
	padding: 0 20px 0 20px;
}
.blog_content .ttl {
	font-size: 14px;
    font-weight: 400;
	margin: 5px 0 10px 0;
}
.blog_content .date {
	font-size: 10px;
}
.blog_content .category {
	font-size: 10px;
}
.blog_content .category span {
	border: 1px solid #333;
    padding: 2px 8px 2px 8px;
}
.blog_content .free_area {
	margin: 20px 0 0 0;
	line-height: 2;
}
.blog_content .free_area img {
	height: auto!important;
}
.blog_content .free_area a {
	padding: 0 0 0 0;
	display: inline;
	margin: 0 0 0 0;
	border: none;
	color: #000;
	text-decoration: none;
}
.blog_content .free_area a:hover {
	text-decoration: underline;
}
.blog_content .staff_area {
	padding: 40px 0 0 0;
    border-top: 1px solid #ccc;
	margin: 40px 0 0 0;
}
.blog_content .staff_area .staff_wrap {
	font-size: 0;
}
.blog_content .staff_area .staff_wrap .staff_img {
	display: inline-block;
	vertical-align: top;
	width: 30%;
}
.blog_content .staff_area .staff_wrap .staff_txt {
	display: inline-block;
	vertical-align: top;
	font-size: 10px;
	width: 70%;
    padding: 0 0 0 20px;
}
.blog_content .staff_area .staff_wrap .staff_txt P {
	margin: 0 0 10px 0;
}
.blog_content .staff_area .staff_wrap .staff_txt P.name {
	font-size: 14px;
}
.blog_content .staff_area .btn_area {
	text-align: left;
	margin: 20px 0 0 0;
}
.blog_content .shop_area {
	padding: 40px 0 20px 0;
    border-top: 1px solid #ccc;
	margin: 40px 0 0 0;
}
.blog_content .shop_area p {
	margin: 0 0 10px 0;
}
.blog_content .shop_area .name {
	font-size: 14px;
	font-weight: 400;
}
.blog_content .shop_area .tel {
	font-size: 14px;
	font-weight: 400;
}
.blog_content .shop_area .address a {
	color: #333;
	text-decoration: none;
}
.blog_content .shop_area .reservation_btn {
	margin: 20px 0 0 0;
}
.blog_content .shop_area .reservation_btn a {
	color: #fff;
	background-image: linear-gradient(to right, #fbc2eb 0%, #a6c1ee 51%, #fbc2eb 100%);
	text-decoration: none;
	display: block;
	padding: 17px 30px 17px 30px;
    width: 220px;
    margin: 0 auto;
    text-align: center;
    border-radius: 5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    transition: 0.5s;
    background-size: 200% auto;
	position: relative;
	overflow: hidden;
}
.blog_content .shop_area .reservation_btn a::before {
	content: '';
	width: 30px;
	height: 100%;
	background-color: #fff;
	animation: shine 10s ease-in-out infinite;
	position: absolute;
	top: 0;
	left: -180px;
	opacity: 0;
	transform: rotate(45deg);
}
.blog_content .shop_area .reservation_btn a:hover {
	background-position: right center; 
}
.blog_content .footer_controls {
	border-top: 1px solid #666;
	margin: 30px 0px 0 0px;
    padding: 15px 0 0 0;
}
.blog_content .footer_controls .pager a {
	color: #333;
	text-decoration: none;
	position: relative;
}
.blog_content .footer_controls .pager a.article_prev {
	float: left;
	width: 45%;
	padding: 0 0 0 10px;
}
.blog_content .footer_controls .pager a.article_prev::before {
	content: '<';
	position: absolute;
	top: 0;
	left: 0;
}
.blog_content .footer_controls .pager a.article_next {
	float: right;
	width: 45%;
	padding: 0 10px 0 0;
	text-align: right;
}
.blog_content .footer_controls .pager a.article_next::before {
	content: '>';
	position: absolute;
	top: 0;
	right: 0;
}
.blog_content .footer_controls .list_btn {
	margin-bottom: 25px;
}
.blog_content .footer_controls .list_btn a {
	display: block;
	border: 1px solid #666;
	border-radius: 5px;
	text-align: center;
	color: #666;
	text-decoration: none;
	width: 180px;
	margin: 40px auto 0 auto;
	padding: 15px 0 15px 0;
}
.blog_content .footer_controls .pager a span {
	display: block;
}
.blog_content .footer_controls .pager a.article_next span {
	text-align: left;
}

/* DeskTop */
@media screen and (min-width: 600px) {
	.blog_content .footer_controls {
		border-top: 1px solid #ccc;
		margin: 60px auto 0 auto;
		padding: 20px 0 0 0;
		max-width: 800px;
	}
	.blog_content .footer_controls .pager a:hover {
		text-decoration: underline;
	}
	.blog_content .footer_controls .pager a.article_prev {
		width: 230px;
		padding: 0 0 0 30px;
	}
	.blog_content .footer_controls .pager a.article_next {
		width: 230px;
		padding: 0 30px 0 0;
	}
	.blog_content .footer_controls .list_btn {
		text-align: center;
    	margin: 60px 0 0 0;
	}
	.blog_content .footer_controls .list_btn a {
		padding: 0 0 0 0;
		display: inline;
		margin: 0 0 0 0;
		border: none;
		color: #000;
	}
	.blog_content .footer_controls .list_btn a:hover {
		text-decoration: underline;
	}
	.blog_content .top_area {
		max-width: 600px;
		margin: 0 auto;
	}
	.blog_content .free_area {
		max-width: 600px;
    	margin: 30px auto;
	}
	.blog_content .date {
		font-size: 12px;
	}
	.blog_content .ttl {
		margin: 20px 0 30px 0;
	}
	.blog_content .sub_area {
		max-width: 600px;
    	margin: 0 auto;
	}
	.blog_content .staff_area {
		max-width: 270px;
		margin: 30px 0 0 0;
		padding: 40px 0 40px 0;
		border-bottom: 1px solid #ccc;
	}
	.blog_content .staff_area .btn_area {
		margin: 20px 0 0 10px;
	}
	.blog_content .shop_area {
		border: none;
		margin: 0 0 0 0;
		max-width: 300px;
	}
	.blog_content .shop_area p {
		margin: 0 0 20px 0;
	}
	.blog_content .shop_area .tel {
		font-size: 18px;
		margin: 0 0 30px;
	}
	.blog_content .shop_area .reservation_btn a {
		width: 200px;
		margin: 0 0 0 0;
	}
	.blog_other {
		margin: 80px auto 0 auto;
	}
}

/*-------------------------------------------
 dir_faq
-------------------------------------------*/
.faq_content {
	padding: 0 20px 0 20px;
}
.faq_content dl + dl {
	padding: 15px 0 0 0;
    border-top: 1px solid #ccc;
    margin: 15px 0 0 0;
}
.faq_content dl dt {
	font-weight: 400;
	position: relative;
	padding: 0 0 0 20px;
}
.faq_content dl dt::before {
	position: absolute;
	content: 'Q.';
	left: 0;
	top: 0;
}
.faq_content dl dd {
	font-weight: 300;
    position: relative;
    padding: 0 0 0 20px;
    margin: 0 0 0 10px;
}
.faq_content dl dd::before {
	position: absolute;
	content: 'A.';
	left: 0;
	top: 0;
	font-weight: 400;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.faq_content {
		padding: 0 0 0 0;
		max-width: 800px;
		margin: 0 auto;
	}
	.faq_content dl + dl {
		border: none;
		padding: 0 0 0 0;
		margin: 65px 0 0 0;
	}
	.faq_content dl dt {
		font-size: 14px;
		padding: 0 0 0 30px;
	}
	.faq_content dl dd {
		margin: 10px 0 0 35px;
	}
	.faq_content dl dd::before {
		font-size: 14px;
	}
}

/*-------------------------------------------
 dir_contact_index
-------------------------------------------*/
.contact_content {
	padding: 0 20px 0 20px;
	max-width: 600px;
	margin: 0 auto;
}
.contact_content .note {
	text-align: center;
    margin: 0 0 20px 0;
}
.contact_content .note span {
	text-align: center;
    margin: 0 0 20px 0;
	color: #e00a0a;
}
.contact_content .inner .contact_index_wrap dl + dl {
	margin: 15px 0 0 0;
}
.contact_content .inner .contact_index_wrap dl dt span {
	color: #e00a0a;
}
.contact_content .inner .contact_index_wrap dl dd {
	margin: 0 0 0 0;
}
.contact_content .inner .contact_index_wrap dl dd input,
.contact_content .inner .contact_index_wrap dl dd textarea {
	border: 1px solid #999;
    width: 100%;
    border-radius: 5px;
    padding: 10px 5px;
}
.contact_content .inner .contact_index_wrap dl dd textarea {
	min-height: 150px;
}
.contact_content .contact_btn {
	text-align: center;
	margin: 20px 0 0 0;
}
.contact_content .contact_btn input {
	width: 250px;
    padding: 15px 0 15px 0;
	background-color: #f9f9f9;
	border: 1px solid #666666;
    border-radius: 5px;
	transition: .3s;
}
.contact_content .contact_btn input:hover {
	color: #f9f9f9;
	background: #666;
	transition: .3s;
}
.contact_content .contact_index_wrap dl dd .error{
	color:red;
}


/* DeskTop */
@media screen and (min-width: 1024px) {
	.contact_content {
		padding: 0 0 0 0;
	}
	.contact_content .note {
		text-align: right;
		margin: 0 0 10px 0;
	}
	.contact_content .inner .contact_index_wrap dl dd {
		margin: 5px 0 0 0;
	}
	.contact_content .inner .contact_index_wrap dl dd textarea {
		min-height: 180px;
		padding: 10px 10px 10px 10px;
	}
	.contact_content .contact_btn {
		margin: 30px 0 0 0;
	}
	.contact_content .contact_btn input {
		width: 190px;
	}
}

/*-------------------------------------------
 dir_contact_confirm
-------------------------------------------*/
.contact_confirm_wrap dl.content {
	margin: 20px 0 0 0;
}
.contact_confirm_wrap dl + dl {
	margin: 15px 0 0 0;
}
.contact_confirm_wrap dl dd {
	margin: 5px 0 0 0;
	font-size: 13px;
}
.contact_confirm_wrap p {
	margin: 30px 0 30px 0;
}
.contact_content .contact_btn input {
	display: block;
	margin: 0 auto;
}
.contact_content .contact_btn input + input {
	margin: 20px auto 0 auto;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.contact_content .contact_btn input {
		display: inline;
	}
	.contact_content .contact_btn input + input {
		margin: 0 0 0 40px;
	}
	.contact_confirm_wrap dl {
		display: table;
		width: 100%;
	}
	.contact_confirm_wrap dl.email {
		margin: 50px 0 0 0;
	}
	.contact_confirm_wrap dl.content {
		margin: 50px 0 0 0;
	}
	.contact_confirm_wrap dl + dl {
		margin: 30px 0 0 0;
	}
	.contact_confirm_wrap dl dt {
		display: table-cell;
		vertical-align: top;
		width: 25%;
	}
	.contact_confirm_wrap dl dd {
		margin: 0 0 0 0;
		font-size: 12px;
		display: table-cell;
		vertical-align: top;
		width: 75%;
	}
	.contact_confirm_wrap p {
		margin: 80px 0 70px 0;
	}
}

/*-------------------------------------------
 dir_contact_thanks
-------------------------------------------*/
.contact_thanks_wrap {
	margin: 50px 0 100px 0;
	text-align: center;
}
.contact_thanks_wrap .lead {
	font-weight: 400;
	font-size: 14px;
	margin: 0 0 20px 0;
}

/* DeskTop */
@media screen and (min-width: 1024px) {
	.dir_contact_thanks {
		min-height: 600px;
	}
	.contact_thanks_wrap {
		margin: 0px 0 70px 0;
	}
	.contact_thanks_wrap .lead {
		margin: 0 0 60px 0;
	}
}

/*---------------------------------------------------------------------
	js-inview
---------------------------------------------------------------------*/
.js_fade_in {
  opacity: 0;
  position: relative;
}
.js_slide_up {
    opacity: 0;
    position: relative;
    top: 50px;
}
.js_slide_down {
    opacity: 0;
    position: relative;
    top: -50px;
}
.js_slide_left {
    opacity: 0;
    position: relative;
    left: -50px;
}
.js_slide_right {
    opacity: 0;
    position: relative;
    right: -50px;
}