@charset "utf-8";
@media (max-width:767px) {
	.pc_v {
		display:none;
	}
	.sp_v {
		display:inherit !important;
	}
	section #blog.sp_v {
		display:block;
	}
	/* 全体 */
	section {
		padding:30px 0;
	}
	h2 {
		margin-bottom:30px;
	}
	/* width */
	#menu-wrap, .about-in, .information-in, .btn-wrap, #shopinfo, #floormap, #gallery {}
	#nav #sns {
		background:#fff;
		position:static;
		text-align:center;
		padding:10px 0;
	}
	.about-in {
		position:relative;
	}
	#nav #sns a {
		display:inline-block;
		width:auto;
		margin:0 5px;
		padding:0;
		border:0;
	}
	#nav #sns a img {
		width:auto;
		height:auto;
	}
	/* ヘッダー */
	#nav-wrap {
		margin:0 auto;
		position:static;
		margin-left:0;
		z-index:99;
	}
	#nav {
		display:none;
		width:100%;
		position:fixed;
		top:0;
		left:0;
		z-index:90;
		box-sizing:border-box;
		text-align:left;
		float:none;
	}
	.tel a {
		color:#fff;
	}
	.sp_shopname a {
		color:#fff;
		font-size:14px;
		line-height:1.1;
		top:50%;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);

	}
	#shopinfo {
		flex-direction:column;
		max-width:100%;
	}
	#shopinfo img {
		width:100%;
	}
	.gmap {
		padding-bottom:100%;
	}
	.shopdetail {
		margin-right:0;
		margin-left:0;
	}
	#shopinfo {}
	#shopinfo p {
		font-size:1em;
		margin-bottom:10px;
		padding:10px 0;
	}
	#shopinfo .time p {
		font-size:1em;
		margin-bottom:0;
		padding:10px 0 0;
	}
	.shopdesc p:first-child {
		display:block;
		margin-top:5px;
		margin-bottom:10px;
		text-align:center;
		font-size:1.2em!important;
	}
	.shopdesc {
		display:flex;
		flex-direction:column;
		text-align:left;
		padding:0 20px;
	}
	.shopdesc .column {
		display:block;
	}
	.shopdesc div {
		max-width:100%;
		margin-right:0;
	}
	#shopmap {
		overflow:auto;
	}
	#shopmap .links ul {
		flex-wrap:wrap;
	}
	#shopmap .links li img {
		max-width:80px;
	}
	#footer-menu {
		display:none;
	}
	#footer-info {
		padding-bottom: 5em;
	}
	#copy {
		font-size:13px;
		margin:0 auto;
		text-align:center;
		padding:20px 10px 30px;
	}
	#totop {
		width:55px;
		height:63px;
		position:fixed;
		right:37px;
		bottom:40px;
		z-index:999;
		display:none;
	}
	#totop img {
		width:100%;
		height:auto;
	}
	/* 電話アイコンに変更 */
	@media screen and (max-width:320px) {
		.tel_sp a {
			font-size:0;
		}
		.tel_sp a:before {
			content:"\f095";
			font-family:"Font Awesome 5 Free";
			font-size:25px;
			font-weight:900;
			padding-right:8px;
		}
	}
	/* メインビジュアル */
	#mainv {
		position:relative;
		width:100%;
		height:300px;
		color:#fff;
		padding:90px 30px;
		box-sizing:border-box;
		z-index:21;
	}
	#mainv_blank {
	    height:60px;
	}
	.mainv_bg {
		margin-top:60px;
	}
	.mainv_logo_wrap {
		display:flex;
		align-items:center;
		position:absolute;
		/* ←ここを変更 */
		top:55%;
		left:50%;
		-moz-transform:translate(-55%, -50%);
		-webkit-transform:translate(-55%, -50%);
		transform:translate(-55%, -50%);
		z-index:25;
	}
	.mainv_logo_wrap img {
		display:block;
		max-width:200px;
		max-height:200px;
	}
	.mainv_logo_wrap .logo {
		display:block;
		width:70%;
		height:auto;
		margin:0 auto;
	}
	.page #mainv {
		position:relative;
		width:100%;
		height:100px;
		padding:0;
		z-index:21;
	}
	.page_mainv_bg {
		background-size:cover;
		background-position:center center;
		height:120px;
	}
	/* ページ設定 */
	#about {
		padding:20px;
	}
	#about h1 {
		margin:20px 0;
		letter-spacing:0.2em;
		line-height:1.4;
		font-size:1.5em;
	}
	#about h2 {
		padding:0;
		font-weight:bold;
		margin-bottom:40px;
		line-height:1.5;
		font-size:1.2em;
	}
	.about_read {
		font-size:16px;
		text-align:left;
		line-height:1.6;
		letter-spacing:0;
		margin-bottom:30px;
	}
	#top .shop-list {
		width:95%;
		max-width:95%;
		padding:0;
	}
	#top .shop-list li {
		display:block;
		width:100%;
		margin:0 0 15px;
	}
	#top .shop-list li .shop-name {
		margin-top:5px;
	}
	#top .shop-list li .m-img-bg {
		height:120px;
	}
	.gallery-list {
		margin-bottom:40px;
	}
	.gallery-list ul {
		margin-bottom:10px;
	}
	.gallery-list li {
		width:33.33%;
	}
	.gallery-list .pagenation {
		font-size:12px;
	}
	.banner {
		margin:20px auto;
	}
	#reservearea .container {
		width:95%;
		padding:20px 10px;
		box-sizing:border-box;
	}
	#reservearea .container .left, #reservearea .container .middle, #reservearea .container .right {
		display:block;
		vertical-align:middle;
		float:none;
		width:100%;
		text-align:center;
	}
	#reservearea .container .left .sp_v, #reservearea .container .right {
		color:#888;
	}
	#reservearea .container .middle {
		font-size:32px;
		font-weight:bold;
		letter-spacing:0px;
		margin:10px 0
	}
	#reservearea .reserv_btn {
		padding:10px 40px;
		margin-top:10px;
	}
	.blog-in li {
		width:100%;
		float:none;
		margin-bottom:10px;
		position:relative;
	}
	#blog .info-img {
		width:30%;
		float:left;
	}
	.blog-in, .information-in {
		padding:0 10px 70px;
	}
	.mainv_bg, #mainv {
		min-width:320px;
	}
	.splogo {
		height:36px;
		padding:12px 5px;
	}
	.splogo img {
		height:100%;
		width:auto;
		margin-left:0.5rem;
	}
	.spbtn {
		display:block;
		z-index:9999;
	}
	/* 見出しサイズ */
	.midashi {
		font-size:1.3em;
	}
	/* パディング調整 */
	.sns-in {
		padding:0;
	}
	/* スライダー関連 */
	.swiper-slide {
		background:none;
		padding:0;
		position:static;
	}
	.swiper-img {
		position:relative;
		width:100%;
		overflow:hidden;
	}
	.swiper-img::before {
		content:" ";
		display:block;
		padding-top:56.25%; // 9/16*100=56.25}
	}
	.swiper-img>img {
		position:absolute;
		top:50%;
		left:50%;
		transform:translate(-50%, -50%);
		-webkit-transform:translate(-50%, -50%);
		-ms-transform:translate(-50%, -50%);
		width:100%;
		height:auto;
	}
	.swiper-text {
		background:rgba(137, 17, 1, 0.7);
		padding:15px 20px 60px;
		color:#fff;
		display:flex;
		flex-direction:column;
		justify-content:center;
		margin-left:0;
		margin-right:0;
		position:static;
		-webkit-transform:translateY(0);
		transform:translateY(0);
		width:100%;
		box-sizing:border-box;
	}
	.swiper-text>h3 {
		margin:0 0 10px;
		padding:0;
		font-size:1.6em;
		line-height:1.6;
		text-align:center;
		font-family:"游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
	}
	.swiper-text>p {
		margin-left:0;
		font-size:16px;
		line-height:1.6;
		font-family:"游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
	}
	/* コンテンツスライダー */
	#top-btn .sp_v h4 {
		color:#fff;
		font-size:1.3em;
		vertical-align:text-bottom;
		text-align:center;
		padding:5px;
		margin-bottom:10px;
	}
	.about-in .slick-slide {
		height:650px!important;
		padding-left:0!important;
		padding-right:0!important;
	}
	#top-btn .slick-slide {
		height:550px!important;
		padding-left:0!important;
		padding-right:0!important;
	}
	.btn-list {
		width:100%;
		height:auto;
		margin:0 !important;
	}
	.btn-list p, .btn-list h4 {
		color:#fff;
		font-size:16px;
		line-height:1.6;
		text-align:left;
	}
	.btn-list h4 {
		margin:0;
		padding:0;
	}
	#top-btn .btn-list .desc {
		margin-top:250px;
		width:100%;
		float:none;
		background:#891101;
		padding:10px;
		box-sizing:border-box;
		height:250px;
	}
	#top-btn .slick_container {
		display:block;
		position:relative;
	}
	#top-btn .btn_infomore {
		color:#000;
		background:#fff;
		font-size:1.3em;
		padding:10px 20px;
	}
	#arrows2 {
		position:absolute;
		width:100%;
		display:flex;
		justify-content:space-around;
		top:85px;
	}
	/* メニュースライダー */
	.recommend-list-sp {
		margin-left:0;
	}
	/* 共通要素 */
	.blog-in, .information-in, .sns-in {
		background:none;
	}
	#arrows1 {
		top:100px;
	}
	/* コース・メニュー */
	.btn-list:first-child {
		margin-left:2%;
	}
	.btn-list:nth-child(2n-1) {
		margin-left:0;
	}
	.btn-list p {}
	.btn-list img {}
	.btn-list:hover img {}
	.page h2 {
		margin-top:20px;
		margin-bottom:10px;
	}
	.course_list {
		margin-bottom:50px;
	}
	.course_list table tr td:first-child {
		width:30%;
	}
	.course_list table tr td:last-child {
		width:70%;
	}
	.course_list>.fl_left {
		width:100%;
	}
	.course_list>.fl_right {
		width:100%;
		margin-top:20px;
		padding:0 20px;
		box-sizing:border-box;
	}
	.nomiho_menu .fl_left {
		margin-right:10%;
		width:100%;
	}
	.nomiho_menu .fl_left:nth-child(2n) {
		margin-right:0;
	}
	#course_comment {
		text-align:left;
	}
	.alc_lead {
		width:100%;
		height:100px;
		margin-right:0;
		margin-bottom:2%;
	}
	.alc_lead_in {}
	.alc_lead_in h3 {}
	.alc_list p {
		width:100%;
		position:relative;
		top:50%;
		left:50%;
		-moz-transform:translate(-50%, -50%);
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
		text-align:center;
		font-size:17px;
		color:#fff;
	}
	.alc_list p.alc_off {
		opacity:1;
	}
	.alc_list:hover p.alc_off {
		opacity:1;
	}
	.alc_list p.alc_on, .alc_list:hover p.alc_on {
		display:none;
		opacity:1;
		font-size:13px;
		padding:30px;
		box-sizing:border-box;
		text-align:left;
		position:static;
		-moz-transform:translate(0, 0);
		-webkit-transform:translate(0, 0);
		transform:translate(0, 0);
		background:rgba(0, 0, 0, 0.3);
		height:100%;
		transition:none;
		-moz-transition:none;
		-ms-transition:none;
		-o-transition:none;
		-webkit-transition:none;
	}
	.alc_lead_in p:last-child {}
	.alc_list {
		width:100%;
		height:100px;
		margin-right:0;
		margin-bottom:2%;
	}
	.alc_list.active {
		height:auto;
	}
	.alc_list:nth-child(4n) {
		margin-right:0;
	}
	.alc_list:nth-child(2n) {
		margin-right:0;
	}
	#ryori table {
		width:100%;
		display:block;
	}
	#ryori table tbody {
		width:100%;
		display:block;
	}
	#ryori table tr {
		width:100%;
		display:block;
	}
	#ryori table tr td {
		width:100%;
		display:block;
		padding:0 0 5px 0;
	}
	#ryori table tr td:last-child {
		text-align:right;
		width:100%;
		display:block;
		padding:0 0 20px 0;
	}
	#nihonshu table {
		width:100%;
		display:block;
	}
	#nihonshu table tbody {
		width:100%;
		display:block;
	}
	#nihonshu table tr {
		width:100%;
		display:block;
	}
	#nihonshu table tr td {
		display:block;
		width:100%;
		padding:0 0 5px 0;
	}
	#nihonshu table tr td:last-child {
		width:100%;
		text-align:right;
		padding:0 0 20px 0;
	}
	.drink_list {
		margin-top:50px;
	}
	.drink_list h4 {
		margin-bottom:20px;
	}
	.drink_list table {
		width:100%;
		display:block;
	}
	.drink_list table tbody {
		width:100%;
		display:block;
	}
	.drink_list table tr {
		width:100%;
		display:block;
	}
	.drink_list table tr td {
		width:100%;
		display:block;
		padding:0 0 5px 0;
	}
	.drink_list table tr td:first-child, .drink_list table tr td:nth-child(3) {
		width:100%;
	}
	.drink_list table tr td:nth-child(2) {
		width:100%;
		padding:0 0 20px 0;
	}
	.drink_list table tr td:last-child {
		width:100%;
		padding:0 0 20px 0;
	}
	#gallery .fl_left {
		width:33.3333%;
	}
	#reservation {
		padding:30px 5%;
		margin-bottom:30px;
	}
	#reservation_page form table {
		width:100%;
		display:block;
	}
	#reservation_page form table tr {
		width:100%;
		display:block;
	}
	#reservation_page form table tr td {
		width:100%;
		display:block;
		padding:0;
	}
	#reservation_page form table tr td:last-child {
		width:100%;
		padding-bottom:20px;
	}
	#reservation_page form input, #reservation_page form textarea {
		width:100%;
	}
	#reservation_page form input[type="radio"] {
		width:auto;
	}
	#reservation_page form .form_s input {
		width:30%;
	}
	#reservation_page form textarea {
		width:100%;
	}
	#reservation_page form input:focus, #reservation_page form textarea:focus {
		border:1px solid #008e80;
	}
	#reservation_page form dt .va_top {
		padding-top:0;
		display:block;
	}
	#reservation_page form input[type="submit"], #reservation_page form input[type="button"] {
		width:auto;
		padding:5px 40px;
		display:inline-block;
		cursor:pointer;
		border-radius:20px;
		font-size:13px;
		font-weight:normal;
	}
	#information_arc {
		padding:0 5%;
		margin-bottom:30px;
		border-bottom:none;
	}
	#information_arc_fancrew {
		padding:30px 5%;
		margin-bottom:30px;
	}
	#information_arc .list_wrap {
		margin:10px 0px;
		text-align: left;
	}
	#information_arc .info-title {
		margin:10px 0px;
		display:inline-block;
	}
	/* お客様の声 */
	.menu-list-01 {
		display:block;
		margin-bottom:40px;
	}
	.menu-list-01 article {
		width:100%;
		margin-bottom:2em;
		padding:20px;
	}
	.menu-list-01 article:nth-child(odd) {
		margin-right:0;
	}
	.menu-list-01 article:nth-child(even) {
		margin-left:0;
	}
	.menu-list-01 article .title {
		margin-bottom:15px;
		font-size:18px;
	}
	.menu-list-01 article .table {
		line-height:1.5;
		margin-bottom:3px;
	}
	.menu-list-01 article .name {
		padding-right:5px;
	}
	.menu-list-01 article .note {
		line-height:1.5;
		margin-bottom:15px;
	}
	.menu-list-02 {
		display:block;
		margin-bottom:40px;
	}
	.menu-list-02 article {
		width:100%;
		margin-bottom:20px;
		padding:15px 20px;
		border:1px solid #b0b0b0;
	}
	.menu-list-02 article:nth-child(odd) {
		margin-right:0;
	}
	.menu-list-02 article:nth-child(even) {
		margin-left:0;
	}
	.menu-list-02 article .title {
		margin-bottom:15px;
		font-size:18px;
	}
	.menu-list-02 article .table {
		line-height:1.5;
		margin-bottom:3px;
	}
	.menu-list-02 article .name {
		padding-right:5px;
	}
	.menu-list-02 article .note {
		line-height:1.5;
		margin-bottom:15px;
	}
	/* お客様の声 */
	.recommend-list-sp {
		margin-bottom:30px;
	}
	.recommend-list-sp.line {
		padding-bottom:30px;
		border-bottom:1px solid #898989;
	}
	.recommend-list-sp .title {
		width:180px;
		margin:30px auto 30px;
		padding:10px;
		border:1px solid #898989;
		text-align:center;
		font-size:20px;
		font-weight:bold;
	}
	.recommend-list-sp .box-inner {
		position:relative;
	}
	.recommend-list-sp .m-img-bg {
		height:200px;
	}
	.recommend-list-sp .m-img-bg .img {
		width:100%;
		height:100%;
		background-size:cover;
		background-position:50% 50%;
	}
	.recommend-list-sp .base-txt {
		position:absolute;
		top:50%;
		left:50%;
		transform:translateY(-50%) translateX(-50%);
		-webkit- transform:translateY(-50%) translateX(-50%);
		width:70%;
		color:#fff;
		font-size:16px;
		text-align:center;
		font-weight:bold;
	}
	.recommend-list-sp .base-txt .center {
		font-weight:bold;
	}
	.recommend-list-slider-wrap {
		position:relative;
	}
	.recommend-list-slider-wrap .txt {
		margin-top:10px;
		text-align:center;
	}
	.recommend-list-sp .recommend-list-slider img {
		width:100%;
	}
	.recommend-list-sp .slick-prev, .recommend-list-sp .slick-next {
		width:15px!important;
	}
	.recommend-list-sp .slick-prev {
		left:10px;
	}
	.recommend-list-sp .slick-next {
		right:10px;
	}
	.recommend-list-sp .slick-prev img, .recommend-list-sp .slick-next img {
		width:15px;
	}
	.recommend-list-sp .slick-prev:before, .recommend-list-sp .slick-next:before {
		content:"";
	}
	/* お客様の声 */
	.space-list-01-sp {
		position:relative;
		margin-bottom:40px;
	}
	.space-list-01-sp ul {
		display:block;
	}
	.space-list-01-sp li {
		width:100%;
		font-size:12px;
	}
	.space-list-01-sp li figure {
		margin:0;
	}
	.space-list-01-sp li figure img {
		width:100%;
	}
	.space-list-01-sp li figcaption {
		margin-top:5px;
		text-align:center;
	}
	#arrows .slick-next, #arrows .slick-prev, #arrows2 .slick-next, #arrows2 .slick-prev {
		top:inherit;
		bottom:230px;
		width:25px;
		height:25px;
	}
	.space-list-01-sp .slick-prev {
		left:10px;
	}
	.space-list-01-sp .slick-next {
		right:10px;
	}
	.space-list-01-sp .slick-prev img, .space-list-01-sp .slick-next img {
		width:15px;
	}
	.space-list-01-sp .slick-prev:before, .space-list-01-sp .slick-next:before {
		content:"";
	}
	.space-list-02 {
		margin-bottom:20px;
	}
	.space-list-02 li {
		display:block;
		margin-bottom:40px;
	}
	.space-list-02 li>div {
		width:100%;
		display:block;
	}
	.space-list-02 li img {
		width:100%;
	}
	.space-list-02 .name {
		margin:15px 0 10px;
		padding:0;
		border-bottom:none;
		font-size:18px;
	}
	.space-list-02 dl {
		margin:0;
	}
	.space-list-02 dt {
		width:30%;
		padding-bottom:5px;
	}
	.space-list-02 dd {
		width:70%;
		padding-bottom:5px;
	}
	.space-list-03 {
		margin-bottom:20px;
	}
	.space-list-03 ul {
		display:block;
	}
	.space-list-03 li {
		width:100%;
		margin-bottom:20px;
	}
	.space-list-03 li:nth-child(odd) {
		margin-right:0;
	}
	.space-list-03 li:nth-child(even) {
		margin-left:0;
	}
	.space-list-03 li .box {
		margin:-40px 5% 0;
		padding:15px;
	}
	.space-list-03 li .m-img-bg {
		height:250px;
	}
	.space-list-03 .name {
		margin:0 0 20px 0;
		font-size:18px;
	}
	.space-list-03 dl {
		font-size:14px;
	}
	.space-list-03 dt {
		width:30%;
		margin:0 0 20px;
		padding:0 10px;
	}
	.space-list-03 dd {
		width:70%;
		padding:0 0 0 15px;
		margin:0 0 20px;
	}
	.gallery-list {
		margin-bottom:40px;
	}
	.gallery-list ul {
		margin-bottom:10px;
	}
	.gallery-list li {
		width:33.33%;
	}
	.gallery-list .pagenation {
		font-size:12px;
	}
	.banner {
		margin:20px auto;
	}
	/* お客様の声 */
	#reservearea .container {
		width:95%;
		padding:20px 10px;
		box-sizing:border-box;
	}
	#reservearea .container .left, #reservearea .container .middle, #reservearea .container .right {
		display:block;
		vertical-align:middle;
		float:none;
		width:100%;
		text-align:center;
	}
	#reservearea .container .left .sp_v, #reservearea .container .right {
		color:#888;
	}
	#reservearea .container .middle {
		font-size:32px;
		font-weight:bold;
		letter-spacing:0px;
		margin:10px 0
	}
	#reservearea .reserv_btn {
		padding:10px 40px;
		line-height:500%;
		margin-top:10px;
	}
	/* お客様の声 */
	.voice-in li {
		width:95%;
		border:1px solid #999;
		margin:2.5%;
		padding:10px;
		box-sizing:border-box;
	}
	.voice-header {
		border:1px solid #999;
		display:inline;
		padding:4px 7px;
	}
	.voice-age {
		margin:7px 0px 7px 0;
		display:inline-block;
	}
	.voice-gender {
		margin:7px 0px;
		display:inline-block;
	}
	.voice-content {
		margin:0px;
		display:block;
		font-weight:700;
	}
	.voice-date {
		color:#999;
		margin:0px;
		font-size:10px;
		text-align:right;
		padding:5px;
	}
	/* 追従エリア */
	#sp_bottom {
		position:fixed;
		bottom:0;
		left:0;
		width:100%;
		clear:both;
		overflow:hidden;
		z-index:999;
	}
	.yoyaku {
		width:80%;
		background:#fff;
		background:#000;
		padding:0;
		position:static;
		text-align:center;
		text-align:center;
		box-sizing:border-box;
		padding:10px 0;
		vertical-align:middle;
	}
	.yoyaku p {
		display:block;
		width:100%;
		line-height:46px;
		text-align:center;
		background:#ff9a00;
		margin-top:0;
		margin-bottom:0;
	}
	.yoyaku p a {}
	.about-in {
		color:#000;
		font-size:16px;
	}
	.sp_totop {
		width:20%;
		background:#000;
		display:table-cell;
		padding:5px 0;
		text-align:center;
		box-sizing:border-box;
		line-height:120%;
		vertical-align:middle;
	}
	.yoyaku a {
		color:#fff;
	}
	.sp_totop a {
		color:#fff;
	}
	#nav #sns {
		background:#fff;
		position:relative;
		position:static;
		text-align:center;
		padding:10px 0;
	}
	/* ↓↓↓↓↓↓削除予定↓↓↓↓↓↓ */
	#top .shop-list {
		width:95%;
		max-width:95%;
		padding:0;
	}
	#top .shop-list li {
		display:block;
		width:100%;
		margin:0 0 15px;
	}
	#top .shop-list li .shop-name {
		margin-top:5px;
	}
	#top .shop-list li .m-img-bg {
		height:120px;
	}
	.w900 {
		width:95%;
		margin:0 auto;
	}
	.page-title {
		margin-top:40px!important;
		margin-bottom:20px!important;
		text-align:center;
		font-size:20px;
	}
	.page-description {
		margin-bottom:5px;
		padding:0 1.5em;
		border-bottom:none;
	}
}