@charset "UTF-8";
/* CSS Document */

/*PC*/
@media screen and (max-width:1100px) {
#headbody {
    width:100% !important;
}
}
/*iPod*/
@media screen and (max-width:1080px) {
#headbody {
	background:none;
}	
}
/*iPod　横*/
@media screen and (max-width:900px) {
a:hover,
a:hover img {
	opacity:1 !important;
	filter: alpha(opacity=100)!important;
	-ms-filter: "alpha( opacity=100 )"!important;
}
#headbody {
	background:url(../images/common/logo_bg.jpg);
}
/* ----------------------------------------
	navi
---------------------------------------- */
#navi {
	display:none;
}	
#navi_sp{
	display:block;
}
#navi_sp .picBox {
	position:relative!important;
	display:none;
	top:-53px !important;
	clear:both;
	margin:auto;
	padding:0;
	z-index:10;
	width:96%;
}
#navi_sp .close{
	float:right;
	display: block !important;
	width: 152px;
	height:40px;
	line-height:40px;
	cursor: pointer;
	position:absolute;
	z-index:2;
	background:#665144;
	color:#FFFFFF;
	font-size:20px;
	right:0;
	text-align:center;
}
#navi_sp ul{
	border:10px solid #665144;
	clear:right;
	list-style:none;
	position:inherit !important;
	background:#FFF !important;
	overflow:hidden;
	top:40px;
}
#navi_sp li{
	width:100%;
	display:inline-block;
	vertical-align:top;
	text-align:left;
	border-bottom:1px solid #665144;
}
#navi_sp li a{
	text-decoration:none;
	display:block;
	padding:15px 0 15px 25px;
	font-size:20px;
	color:#000000;
	text-align:left;
	width:auto !important;
	background:url(../images/blog/icon.jpg) no-repeat 10px center;
}
#navi_sp .thumb {
	border:0;
	cursor:pointer;
	float:right;
	margin-right:0px;
	margin-bottom:20px;
	position:absolute;
	right:18px;
	top:18px;
	z-index:1;
	display:block !important;
	width:40px;
}

/* ----------------------------------------
	topimg
---------------------------------------- */
#topimg{
	height:600px;
	clear:both;
	margin-bottom:0px;
	background-image:
	url(../images/top/topimg_copy.png),
	url(../images/top/topimg.jpg),
	url(../images/top/topimg_bg.jpg);
	background-repeat:
	no-repeat,
	no-repeat,
	repeat-x;
	background-position:
	center 30px,
	center 150px,
	center top;
	background-size:
	90%,
	100%,
	100%;
	margin-bottom:30px;
}
/* ----------------------------------------
	right_banner
---------------------------------------- */
#right_banner{
	display:none;	
}
/* ----------------------------------------
	sp about
---------------------------------------- */
#about{
	width:98%;
	margin:auto;
	text-align:center;
	padding-right:0px;
	padding-top:190px;
	background-image:
	url(../images/top/about_title.jpg),
	url(../images/top/about_copy.jpg);
	background-repeat:
	no-repeat,
	no-repeat
	;
	background-position:
	center top,
	center 100px
	;
	margin-bottom:100px;
}
#about p{
	margin-bottom:30px;
}
#about_02{
	width:90%;
}
#about_02 p img{
	width:100%;
}
#scene{
	width:90%;
}
#scene ul{
	width:100%;
}
#scene ul li{
	width:50%;
	display:inline-table;
	text-align:center;
	vertical-align:top;
	margin:0;
	margin-bottom:20px;
}
#scene ul li img{
	max-width:350px;
	width:95%;
}
#scene p{
	clear:both;
}
/* ----------------------------------------
	sp menu
---------------------------------------- */
#menu_topimg {
	height:300px;
	margin-bottom:40px;
	background-image:
	url(../images/top/menu_title.png),
	url(../images/top/topimg_menu.jpg)
	;
	background-repeat:
	no-repeat,
	no-repeat
	;
	background-position:
	center 180px,
	center top
	;
	background-size:
	auto,
	auto 300px;
}
#menu{
	padding-top:70px;
	width:100%;
	margin:auto;
	overflow:hidden;
	margin-bottom:100px;
	background:url(../images/top/menu_copy.jpg) no-repeat center top;
}
#menu ul#menu_list{
	width:96%;
	overflow:hidden;
	margin:auto;
	margin-bottom:30px;
}
#menu ul#menu_list li{
	width:30%;
	height:auto;
	float:none;
	display:inline-block;
	margin-right:2%;
	margin-bottom:20px;
}
#menu ul#menu_list li img{
	width:100%;
}
#course{
	width:90%;
	margin:auto;
	margin-bottom:50px;
}
#course dt{
	width:100%;
}
#course dt li br{
	display:block;
}
#course dt ul{
	width:60%;
}
#course dd {
    margin-top: -230px;
    width: 40%;
}
#course dd img{
	width:100%;
}
#list_menu{
	width:90%;
	margin:auto;
	margin-bottom:50px;
}
#list_menu dd{
	width:30%;
}
#list_menu dd img{
	width:100%;
	max-width:471px;
}
#list_menu dt{
	width:65%;
}
/* ----------------------------------------
	sp blog
---------------------------------------- */
#blog_topimg {
	height:300px;
	margin-bottom:40px;
	background-image:
	url(../images/top/blog_title.png),
	url(../images/top/topimg_blog.jpg)
	;
	background-repeat:
	no-repeat,
	no-repeat
	;
	background-position:
	center 180px,
	center top
	;
	background-size:
	auto,
	auto 300px;
}
#blog{
	padding-top:70px;
	width:100%;
	margin:auto;
	overflow:hidden;
	margin-bottom:100px;
	background:url(../images/top/blog_copy.jpg) no-repeat center top;
}
#blog p,
#page_blog p#all{
	margin:auto;
	margin-bottom:70px;
	border:1px solid #382d25;
	width:96%;
}
#blog p a,
#page_blog p#all a{
	display:block;
	height:60px;
	width:100%;
	background-image:
	url(../images/common/button_all.jpg),
	url(../images/common/bottom_bg.jpg)
	;
	background-repeat:
	no-repeat,
	repeat
	;
	background-position:
	center center,
	left top
	;
	text-indent:-9999px;
}
#blog p a:hover,
#page_blog p#all a:hover{
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
#blog ul#blog_list,
#page_blog ul#blog_list{
	width:96%;
	margin:auto;
	overflow:hidden;
	margin-bottom:30px;
}
#blog ul#blog_list li,
#page_blog ul#blog_list li{
	width:46%;
	display:inline-block;
	margin-right:1%;
	margin-left:1%;
	margin-bottom:20px;
	overflow:hidden;
	vertical-align:top;
	text-align:left;
}
#blog ul#blog_list li a.img,
#page_blog ul#blog_list li a.img{
	display:block;
	width:100%;
	height:auto;
	margin-bottom:5px;
	overflow:hidden;
}
#blog ul#blog_list li a.img img,
#page_blog ul#blog_list li a.img img{
	width:100%;
}
/* ----------------------------------------
	sp access
---------------------------------------- */
#access{
	height:590px;
	background-image:
	url(../images/top/access_title.png),
	url(../images/top/access_bg.jpg)
	;
	background-repeat:
	no-repeat,
	no-repeat
	;
	background-position:
	center 80px,
	center top
	;
	padding-top:230px;
}
#access_body{
	width:96%;
	margin:auto;
	height:530px;
	overflow:hidden;
	background-image:
	url(../images/common/access_logo.png),
	url(../images/common/access_bg.png)
	;
	background-repeat:
	no-repeat,
	repeat
	;
	background-position:
	80px 30px,
	center top
	;
	overflow:hidden;
}
#access_body dl{
	float:left;
	margin-top:20px;
	margin-left:300px;
	text-align:left;
}
#access_body dl dt{
	clear:left;
	float:left;
	width:130px;
	margin-bottom:5px;
}
#access_body dl dd{
	float:left;
	margin-bottom:5px;
}
#access_body iframe{
	float:none;
	width:96%;
	margin:auto;
	margin-top:30px;
	height:300px;
}
/* ----------------------------------------
	sp bottom
---------------------------------------- */
#bottom{
	clear:both;
	overflow:hidden;
	background:url(../images/common/bottom_bg.jpg);
}
#bottom ul{
	width:96%;
	margin:auto;
	margin-top:30px;
	overflow:hidden;
}
#bottom ul li{
	width:23%;
	float:left;
	margin-right:1% !important;
	margin-left:1% !important;
	margin-bottom:20px;
}
#bottom ul li img{
	margin-bottom:5px;
	width:100%;
}
#bottom ul li a{
	display:block;
}
#bottom ul li a.text{
	display:inline;
	padding-right:25px;
	background:url(../images/common/link.png) no-repeat right top;
}
/* ----------------------------------------
	sp pagetop
---------------------------------------- */
#pagetop{
	width:94%;
	height:40px;
	clear:left;
	margin:auto;
	margin-bottom:20px;
}
#pagetop a{
	display:block;
	width:100%;
	height:40px;
	line-height:40px;
	float:none;
	text-indent:0px;
	background:url(../images/common/foot_bg.jpg) repeat-x left top;
	color:#FFFFFF;
}
#pagetop a:hover{
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
/* ----------------------------------------
	foot
---------------------------------------- */
#foot{
	height:auto;
	clear:both;
	overflow:hidden;
	background:#31261d;
}
#foot_body{
	width:96%;
	margin:auto;
}
#foot_body dl{
	width:100%;
	float:left;
	margin-top:0px;
	padding-left:0px;
	background:url(../images/common/f_logo.png) no-repeat center top;
	text-align:left;
	padding-top:100px;
	margin-bottom:20px;
}
#foot_body dl dt{
	color:#FFFFFF;
	margin-bottom:10px;
	text-align:center;
}
#foot_body dl dd{
	color:#FFFFFF;
	margin-bottom:10px;
	text-align:center;
}
#foot_body dl dd a{
	color:#FFFFFF;
}
#foot_body #foot_right{
	float:none;
	width:100%;
	margin-top:30px;
}
#foot_body #foot_right ul{
	margin-bottom:20px;
}
#foot_body #foot_right ul li{
	display:inline;
	color:#FFFFFF;
	margin-bottom:20px;
}
#foot_body #foot_right ul li a{
	color:#FFFFFF;
}
#foot_body #foot_right p{
	color:#FFFFFF;
	text-align:center;
}
/* ----------------------------------------
	about
---------------------------------------- */
#title_about{
	height:200px;
	width:100%;
	margin:auto;
	overflow:hidden;
	background-image:
	url(../images/about/title.jpg),
	url(../images/common/topimg_line.jpg)
	;
	background-repeat:
	no-repeat,
	repeat-x
	;
	background-position:
	center 20px,
	center bottom
	;
	overflow:hidden;
}
#page_about{
	margin:auto;
	width:96%;
}
#about01{
	padding-top:90px;
	background:url(../images/about/text01.jpg) no-repeat center 30px;
}
#about02{
	clear:both;
	padding-top:90px;
	height:83px;
	background-image:
	url(../images/about/text02.jpg);
	background-repeat:
	no-repeat;
	background-position:
	center 30px;
}
#page_about #photo01{
	width:100%;
	overflow:hidden;
	margin-bottom:20px;
}
#page_about #photo01 li{
	width:48%;
	margin-bottom:10px;
	margin-right:1%;
	margin-left:1%;
	float:left;
}
#page_about #photo01 li img{
	width:100%;
}
#page_about #photo02{
	width:96%;
	margin:auto;
	overflow:hidden;
	margin-bottom:20px;
}
#page_about #photo02 li{
	width:32%;
	margin-bottom:25px;
	margin-right:1%;
	float:left;
}
#page_about #photo02 li img{
	width:100%;
}
#page_about #button{
	background:url(../images/about/illust02.jpg) no-repeat right top;
	height:120px;
	margin-bottom:30px;
}
#page_about dl{
	padding-left:220px;
	overflow:hidden;
	height:240px;
	margin-bottom:50px;
	background-image:
	url(../images/about/photo08.jpg)
	;
	background-repeat:
	no-repeat;
	background-position:
	1% top
	;
	padding-top:0px;
	background-size:
	200px,
	auto;
}
#page_about dl dt{
	clear:left;
	float:left;
	width:100px;
	margin-bottom:10px;
	font-size:16px;
}
#page_about dl dd{
	float:left;
	margin-bottom:10px;
	font-size:16px;
}
#page_about .contact{
	margin-bottom:100px;
}
.about #access_body iframe{
	float:none;
	margin-right:0px;
	margin:20px auto;
	height:490px;
}
/* ----------------------------------------
	reservation
---------------------------------------- */
#title_reservation{
	height:200px;
	width:100%;
	margin:auto;
	margin-bottom:20px;
	overflow:hidden;
	background-image:
	url(../images/reservation/title.jpg),
	url(../images/common/topimg_line.jpg)
	;
	background-repeat:
	no-repeat,
	repeat-x
	;
	background-position:
	center 20px,
	center bottom
	;
	overflow:hidden;
	background-size:90% auto,
	auto;
}
#page_reservation{
	margin:auto;
	width:96%;
	text-align:center;
	overflow:hidden;
}
#page_reservation th{
	width:20%;
	padding:10px 3px;
}
/* ----------------------------------------
	blogpage
---------------------------------------- */
#title_blog{
	height:200px;
	width:100%;
	margin:auto;
	margin-bottom:20px;
	overflow:hidden;
	background-image:
	url(../images/blog/title.jpg),
	url(../images/common/topimg_line.jpg)
	;
	background-repeat:
	no-repeat,
	repeat-x
	;
	background-position:
	center 20px,
	center bottom
	;
	overflow:hidden;
}
#page_blog{
	margin:auto;
	width:96%;
	text-align:left;
	overflow:hidden;
}
#contents{
	width:100%;
	float:none;
}
#side{
	width:100%;
	float:none;
}
/* ----------------------------------------
	contact
---------------------------------------- */
ul.contact{
	margin:auto;
	width:98%;
	overflow:hidden;
}
ul.contact li{
	width:48%;
	margin-left:1%;
	margin-right:1%;
	float:left;
}
ul.contact li img{
	width:100%;
}
}
/*iPhone6*/
@media screen and (max-width:736px) {

/* ----------------------------------------
	topimg
---------------------------------------- */
#topimg{
	height:450px;
}
#about_02{
	padding-top:60px;
}
/* ----------------------------------------
	menu
---------------------------------------- */
#course dt ul{
	width:65%;
}
#course dd {
    margin-top: -230px;
    width: 35%;
}
/* ----------------------------------------
	access
---------------------------------------- */
#access_body{
	width:96%;
	margin:auto;
	height:530px;
	overflow:hidden;
	background-image:
	url(../images/common/access_bg.png)
	;
	background-repeat:
	repeat
	;
	background-position:
	center top
	;
	overflow:hidden;
}
#access_body dl{
	float:left;
	margin-top:20px;
	margin-left:20px;
	text-align:left;
	width:100%;
}
#access_body dl dt{
	width:100px;
}
#about01{
	padding-top:90px;
	background-size:100%;
}
#about02{
	background-size:100%;
}
#page_about dl{
	width:96%;
	margin:auto;
	padding-left:0px;
	overflow:hidden;
	height:auto;
	margin-bottom:50px;
	background:none;
	padding-top:0px;
	text-align:left;
}
#title_blog{
	background-size:
	90%,
	auto;
}
#contents img{
	max-width:670px;
	width:100%;
	height:auto;
}
/* ----------------------------------------
	sp foot
---------------------------------------- */
#foot_body #foot_right ul li{
	padding:0 10px;
}
}
/*iPhone6*/
@media screen and (max-width:667px) {
	
/* ----------------------------------------
	topimg
---------------------------------------- */
#topimg{
	height:450px;
}
#menu{
	background-size:94%;
}
#blog{
	background-size:94%;
}
.table02{
	width:100%;
	border:none;
	margin-bottom:20px;
}
.table02 dt{
	clear:left;
	width:100%;
	height:40px;
	line-height:40px;
	text-align:center;
	background:#2f241b;
	color:#FFFFFF;
	float:none;
	margin-bottom:1px;
	font-size:16px;
}
.table02 dd{
	height:auto;
	line-height:1.4em;
	border:none;
	text-align:center;
	overflow:hidden;
	padding:20px 0;
}
.table02 dt.comment{
	height:40px;
	line-height:40px;

}
.table02 dd.comment{
	height:auto;
}
.table02 dd.comment textarea{
	width:90%;
	margin-bottom:10px;
}
.table02 dd input{
	width:90%;
	margin:auto;
}
.table02 dd#person input{
	width:40%;
}
/* ----------------------------------------
	menu
---------------------------------------- */
#course dd {
	display:none;
}
#course dt {
	min-height:inherit;
}
#course dt ul {
    width: 100%;
}
#course dt li br{
    display:none;
}
#list_menu dd{
	width:100%;
}
#list_menu dt{
	width:100%;
}
#list_menu dl.price dt {
    width: 70%;
}
#list_menu dl.price dd{
    display:block;
}
/*iPhone5*/
@media screen and (max-width:568px) {

/* ----------------------------------------
	topimg
---------------------------------------- */
#topimg{
	height:350px;
	background-image:
	url(../images/top/topimg_text.png),
	url(../images/top/topimg_copy.png),
	url(../images/top/topimg.jpg),
	url(../images/top/topimg_bg.jpg);
	background-repeat:
	no-repeat,
	no-repeat,
	no-repeat,
	repeat-x;
	background-position:
	center 180px,
	center 30px,
	center 120px,
	center top;
	background-size:
	65%,
	90%,
	100%,
	100%;
}
#about{
	background-size:auto,100%;
}
.about #access_body iframe{
	float:none;
	margin-right:0px;
	margin:20px auto;
	height:90%;
}
#title_about{
	height:120px;
	background-size:
	auto 70px,
	auto
	;
}
#course dt h3{
	height:inherit;
	line-height:normal;
	padding:10px 0 10px 70px;
	font-size:20px;
}
#course dt h3 span{
	padding:0;
	display:block;
}
#list_menu dt h3 {
	height:auto;
}
#list_menu dt p {
    text-align:center;
}
#list_menu dt h3 img {
    margin-right: 15px;
	height:25px;
}
#list_menu dl.price dt {
    width: 100%;
	font-size:12px;
}
#list_menu dl.price dd {
    width: 100%;
	font-size:12px;
	border-bottom:1px dotted #CCC;
}
#title_reservation{
	height:120px;
	background-size:
	auto 70px,
	auto
	;
}
#title_blog{
	height:120px;
	background-size:
	auto 70px,
	auto
	;
}
#page_about dl dt{
	width:100%;
	border-bottom:1px solid #333333;
	float:none;
	margin-bottom:0;
}
#page_about dl dd{
	width:100%;
	float:none;
	margin-bottom:20px;
}
}
/*iPhone4*/
@media screen and (max-width:480px) {
/* ----------------------------------------
	topimg
---------------------------------------- */
#topimg{
	height:300px;
	background-image:
	url(../images/top/topimg_copy.png),
	url(../images/top/topimg.jpg),
	url(../images/top/topimg_bg.jpg);
	background-repeat:
	no-repeat,
	no-repeat,
	repeat-x;
	background-position:
	center 30px,
	center 90px,
	center top;
	background-size:
	90%,
	100%,
	100%;
}
/* ----------------------------------------
	about
---------------------------------------- */
#about{
	width:94%;
	margin:auto;
	text-align:center;
	padding-right:0px;
	padding-top:190px;
	background-image:
	url(../images/top/about_title.jpg),
	url(../images/top/about_copy_sp.jpg);
	background-repeat:
	no-repeat,
	no-repeat
	;
	background-position:
	center top,
	center 100px
	;
	margin-bottom:50px;
}
#scene ul li{
	width:100%;
}
/* ----------------------------------------
	menu
---------------------------------------- */
#menu{
	padding-top:80px;
	width:100%;
	margin:auto;
	overflow:hidden;
	margin-bottom:100px;
	background:url(../images/top/menu_copy_sp.jpg) no-repeat center top;
	background-size:70%;
}
#menu ul#menu_list li{
	margin-bottom:0px;
}
/* ----------------------------------------
	blog
---------------------------------------- */
#blog{
	padding-top:100px;
	width:100%;
	margin:auto;
	overflow:hidden;
	margin-bottom:100px;
	background:url(../images/top/blog_copy_sp.jpg) no-repeat center top;
	background-size:70%;
}
/* ----------------------------------------
	contact
---------------------------------------- */
ul.contact li{
	width:98%;
	margin-left:1%;
	margin-right:1%;
	float:none;
	margin-bottom:10px;
}
/* ----------------------------------------
	access
---------------------------------------- */
#access_body{
	width:96%;
	margin:auto;
	height:580px;
	overflow:hidden;
	background-image:
	url(../images/common/access_bg.png)
	;
	background-repeat:
	repeat
	;
	background-position:
	center top
	;
	overflow:hidden;
}
#access_body dl{
	float:none;
	width:92%;
	margin:auto;
	margin-top:20px;
}
#access_body dl dt{
	width:100%;
	margin:auto;
	border-bottom:1px solid #333333;
}
#access_body iframe{
	float:none;
	width:92%;
	margin:auto;
	margin-top:20px;
	height:240px;
}
/* ----------------------------------------
	sp bottom
---------------------------------------- */
#bottom{
	clear:both;
	overflow:hidden;
	background:url(../images/common/bottom_bg.jpg);
}
#bottom ul{
	width:96%;
	margin:auto;
	margin-top:30px;
	overflow:hidden;
	margin-bottom:20px;
}
#bottom ul li{
	width:46%;
	float:none;
	display:inline-block;
	margin-right:1% !important;
	margin-left:1% !important;
	margin-bottom:10px;
	vertical-align:top;
}
#bottom ul li img{
	margin-bottom:5px;
	width:100%;
}
#bottom ul li a{
	display:block;
}
#bottom ul li a.text{
	display:inline;
	padding-right:25px;
	background:url(../images/common/link.png) no-repeat right top;
}
/* ----------------------------------------
	sp foot
---------------------------------------- */
#foot_body #foot_right ul li{
	display:inline-block;
	color:#FFFFFF;
	margin-bottom:10px;
}
/* ----------------------------------------
	sp aboutpage
---------------------------------------- */
#about01{
	padding-top:120px;
	background:url(../images/about/text01_sp.jpg) no-repeat center 30px;
	background-size:100%;
}
#about02{
	clear:both;
	padding-top:120px;
	height:auto;
	background-image:
	url(../images/about/text02_sp.jpg);
	background-repeat:
	no-repeat;
	background-position:
	center 30px
	;
	background-size:80%;
	margin-bottom:20px;
}
#page_about #button{
	background:none;
}
#blog p a,
#page_blog p#all a{
	background-size:90%,auto;
}
#bottom ul li a.text {
	background-size:auto 12px;
}
}
@media screen and (max-width:340px) {
#head h1 {
	width:100px;
	overflow:hidden;
}
/* ----------------------------------------
	sp topimg
---------------------------------------- */
#topimg{
	height:250px;
	background-image:
	url(../images/top/topimg_copy.png),
	url(../images/top/topimg.jpg),
	url(../images/top/topimg_bg.jpg);
	background-repeat:
	no-repeat,
	no-repeat,
	repeat-x;
	background-position:
	center 30px,
	center 90px,
	center top;
	background-size:
	90%,
	100%,
	100%;
}
/* ----------------------------------------
	sp menu
---------------------------------------- */
#menu_topimg {
	height:200px;
	margin-bottom:40px;
	background-image:
	url(../images/top/menu_title.png),
	url(../images/top/topimg_menu.jpg)
	;
	background-repeat:
	no-repeat,
	no-repeat
	;
	background-position:
	center 80px,
	center top
	;
	background-size:
	auto,
	auto 200px;
}
#menu{
	background-size:90%;
}
/* ----------------------------------------
	sp blog
---------------------------------------- */
#blog_topimg {
	height:200px;
	margin-bottom:40px;
	background-image:
	url(../images/top/blog_title.png),
	url(../images/top/topimg_blog.jpg)
	;
	background-repeat:
	no-repeat,
	no-repeat
	;
	background-position:
	center 80px,
	center top
	;
	background-size:
	auto,
	auto 200px;
}
#blog{
	background-size:90%;
}
#title_reservation{
	height:120px;
	background-size:
	auto 55px,
	auto
	;
}
#title_blog{
	height:120px;
	background-size:
	auto 55px,
	auto
	;
}
}