@charset "UTF-8";
/* CSS Document */



/** base */
html, body {
	width: 100%;
	height: 100%;
	font-size: 13px;
	-webkit-text-size-adjust: 100%;
	background-color: #f7ecce;
	background-position: 0 150px;
	color: #222222;
}

a {
	color: #6C4242;
	text-decoration: none;
}
a:hover {
	color: #917373;
}
/** font */
body {
	font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
header nav {
	font-family: 'Anton', sans-serif;
}
/** margin */
.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
/** wrapper */
#wrapper {
	overflow: visible;
	height: 100%;
	width: 100%;
}
#wrapper .mainimg {
	text-align: center;
    position: relative;
    top: 56px;
    overflow: hidden;
    width: 100%;
    height: 500px;
    background: url(../img/bgimg01_sp.jpg) top center no-repeat;
    background-size: cover;
}
#wrapper .mainimg span {
	text-indent: -9999px;
	font-size: 0;
}


/** header *//** #home header  */
header {
	/*position: fixed;*/
	width: 100%;
	height: 56px;
	padding-bottom: 0;
	background: #FFF;
	zoom: 1;
	position: fixed;
	z-index: 100;
	border-bottom: solid 1px #000000;	
}
header div {
	margin: 0 auto;
    width: 96%;
    padding: 0 4%;
}
header div h1 {
	float: left;
    padding: 0;
    width: 60%;
}

header div h1 a img {
	width: 100%;
    height: auto;
    position: relative;
    top: 12px;
}
header div h1 a, #home header div h1 a {
	background-size: 100%;
}


header nav {
	
}
header nav p.archive {
	display: block;
    line-height: 30px;
    float: right;
    position: relative;
    right: 10px;
    top: 8px;
}
header nav p.archive a {
	content: '';
	display: inline-block;
	vertical-align: top;
	width: 30px;
	height: 30px;
	margin: 0;
	padding: 5px;
	background: #000000;
	color: #FFFFFF;
	letter-spacing: 0em;
	font-size: 0.7em;
}
header nav p.active a {
	color: #54391C !important;
	cursor: pointer;
	letter-spacing: -0.05em;
}
#menu {
	/*display: block !important;*/
}
header nav ul#menu {
	overflow: hidden;
	font-size: 1.1em;
	text-align: right;
	display: none;
	width: 100%;
	position: absolute;
	background: #000;
	top: 51px;
	left: 0;
	z-index: 30;
	clear: left;
}
header nav ul#menu a {
	color: #222222;
	text-decoration: none;
}
header nav ul#menu > li {
	float: left;
	height: 40px;
	position: relative;
	letter-spacing: -0.01em;
	width: 100%;
	height: 100%;
	text-align: center;
	display: inline-block;
	padding-bottom: 0;
	border-bottom: solid 1px #848484;
	margin-left: 0;
}
header nav ul#menu > li#nav_seminar {
	margin-right: 0;
}
header nav ul#menu li a {
	text-decoration: none;
	display: block;
	padding: 14px 12px;
	color: #FFFFFF;
}
li#nav_cast ul {
	width: 100%;
	left: 0;
}
header nav ul#menu li a:hover, #home header nav ul#menu a:hover {
	color: #54391C;
}
header nav ul#menu > li a.active {
	padding: 14px 12px;
	border: none;
}
/*header nav ul#menu li ul {
	-webkit-transition-duration: 1s;
}*/
header nav ul#menu > li:hover > ul {
	display: block !important;
}

header nav ul.sub_menu {
	display: inline-block;
	font-size: 14px;
	letter-spacing: 2px;
	display: none;
	position: absolute;
	background: rgba(255, 255, 255, 0.2);
	top: 34px;
	padding: 10px;
}
header nav ul.sub_menu li {
	border-bottom: solid 1px #CCCCCC;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #EEEEEE), color-stop(1.00, #fff));
	background: -webkit-linear-gradient(#EEEEEE, #fff);
	background: -moz-linear-gradient(#EEEEEE, #fff);
	background: -o-linear-gradient(#EEEEEE, #fff);
	background: -ms-linear-gradient(#EEEEEE, #fff);
	background: linear-gradient(#EEEEEE, #fff);
	float: left;
	padding: 0 12px;
	border-right: 1px solid #FFFFFF;
}
header nav ul.sub_menu li#cast_01 {
	border-top: solid 1px #CCCCCC;
}





/** footer */
footer {
	position: relative;
	bottom: 0;
	width: 100%;
	height: 100px;
	background: #000000;
	text-align: center;
	font-size: 10px;
}
footer p {
	color: #FFF;
}
footer p a {
	color: #FFF;
}
.single footer p, .news footer p, .store footer p, .archive footer p, .location footer p, .error404 footer p {
	color: #222222;
	text-decoration: none;
}
copyright p {
	max-width: 980px;
	margin: 0 auto;
	padding-top: 20px;
	text-align: center;
}
div.fb_iframe_widget {
	width: auto;
	padding-left: 5%;
	padding-right: 5%;
}
iframe {
   color: #d8d8d8 !important;
}

.fb_outer {
	width:100%;
	background:rgba(255,255,255,0.3);
	overflow:hidden;
}
.fb_inner {
	width:98%;
	padding:20px 0 20px 2%;
	margin:auto;
}
.fb-like,.fb-like span,.fb-like iframe{
 width:100% !important;
}




/** container */
#container, #plan {
	width: 100%;
	margin: 0px auto 30px auto;
	padding: 0;
	overflow: hidden;
	z-index: 1;
	position: relative;
	/*top: 70px;*/
	background-color: rgba(255, 255, 255, 0.6);
}
#plan {
	background: url(../img/bg.png) top right no-repeat;
	background-color: #FFFFFF;
    top: 0px;
}
#container {
	background-color: #FFFFFF;
	top: 30px;
	/*border-top: solid 10px #54391C;*/
}
#container #inner {
	width: auto;
	margin-left: 6%;
	margin-right: 6%;
	padding-top: 0px;
	padding-bottom: 30px;
	overflow: hidden;
}
#container #inner p {
	/*text-align: center;
	line-height: 2;
	margin-bottom: 30px;*/
	clear: both;
}
#container #inner div.column {
	margin: 30px 0;
	clear: both;
	overflow: hidden;
}
#container #inner div.pr img {
	 margin-right:0px;
	 width: 100%;
	 float: none;
}
div.right {
	float: none;
	margin-bottom: 20px;
}
.pr p {
	 width: 100%;
}
#container #inner h2 {
	font-size: 1.5em;
	font-weight: bold;
	text-align: center;
	text-shadow: 0 -2px 2px rgba(255, 255, 255, 0.9), 0 3px 3px rgba(255, 255, 255, 0.9);
	margin-bottom: 20px;
}
#container #inner h3 {
	font-family: 'Noto Serif JP', sans-serif;
    font-size: 1.45em !important;
	line-height: 1.4em;
	letter-spacing: -0.08em;
    border-bottom: solid 1px #54391C;
    /*border-left: solid 10px #54391C;*/
    padding: 18px 20px 10px 2px !important;
    margin: 0 0 35px 0;
	color: #54391C;
	/*background: url(../img/h3_icon.png) right bottom no-repeat;*/
	background: none;
}
#container #inner p {
	text-align: left;
	line-height: 1.8;
	display: inline-block;
	overflow: hidden;
	display: block;
}
#container #inner p.txt {
	color: #333333;
	/*margin-left: 1.8em;*/
	margin-bottom: 30px;
	clear: both;
}
#container #inner p span {
	display: none;
}
#container #inner section {
	width: auto;
	height: auto;
	float: left;
	border: solid 4px #cac4c2;
	background-color: #FFFFFF;
	display: block;
    margin-bottom: 30px;
	padding: 5% 5% 6%;
	box-shadow:0px 19px 19px -20px rgba(0, 0, 0, 0.6);
	border-radius:0px 0px 4px 4px ;
}
#container #inner section img  {
	width:262px;
	height:auto;
}
#container #inner section.middle {
  margin: 0 0 30px 0;
}

#container #inner h4 {
    width: 100%;
	font-family: 'Noto Serif JP', sans-serif;
    font-size: 1.9em;
	font-weight: 600;
    letter-spacing: -0.15em;
    color: #54391C;
    text-align: center;
    line-height: 1.6;
    margin: 0 0 5px 0;
    display: block;
}
#container #inner h4.plan {
	margin: 10px 0 0 0;
}
#container #inner h4.plan img {
	width: 370px !important;
}



#container #inner h5 {
    width: 100%;
	font-family: 'Noto Serif JP', sans-serif;
    font-size: 1em;
	font-weight: 600;
    letter-spacing: -0.08em;
    color: #54391C;
    text-align: center;
    margin: 0;
    display: block;
	position: relative;
	top: -10px;
}
.price {
	font-family: 'Noto Serif JP', sans-serif;
	text-align: center !important;
	font-size: 1.2em;
	font-weight: 500;
	line-height: 1em !important;
	margin-bottom: 8px;
}
.price em {
	font-size: 1.7em;
	font-weight: 600;
	line-height: 0.9em;
}
.price em em {
	font-size: 0.5em;
	color: #c4181f;
}
.price2 {
	font-family: 'Noto Serif JP', sans-serif;
	font-size: 1.2em;
	font-weight: 500;
	line-height: 1em !important;
	margin-bottom: 8px;
}
.price2 em {
	font-size: 1.8em;
	font-weight: 600;
	line-height: 0.9em;
}
.price2 em em {
	font-size: 0.5em;
	color: #c4181f;
}

#container #inner h6 {
    width: 100%;
    font-size: 1.1em;
    letter-spacing: -0.05em;
    color: #54391C;
    text-align: center;
    line-height: 1.6;
    margin: 10px 0;
    display: block;
}



#container #inner p span {
	display: block;
	color: #FFFFFF;
	text-shadow: none;
}
#container #inner p img {
	display: none;
}
#container #inner img {
	width: 100%;
	height: auto;
	float: left;
	margin-right: 0;
	margin-bottom: 10px;
}
#container #inner section img {
	width: 100%;
	margin-bottom: 10px;
}
#container #inner ul {
	float: none;
	margin-top: 0px;
	margin-bottom: 15px;
	color: #000000;
	width: auto;
}
#container #inner ul li {
	line-height: 2em;
	font-size: 1em;
	display: block;
	color: #222222;
	border-bottom: solid 1px #B5B5B5;
}
#container #inner ul li span {
	
	text-decoration: line-through;
}

#container #inner p.btn {
  color: #FFF;
  font-size: 16px;
  background: #c8aa67;
  text-decoration: none;
  display: block;
  vertical-align: top;
  font-size: 16px;
  margin-top: 15px;
  margin-bottom: 10px;
  width: 100%;
  height: 40px;
  line-height: 40px;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-shadow: none;
  clear: both;
}

#container #inner p.btn:hover {
	background: #54391C;
}
#container #inner p.txt {
	margin-left: 0;
}
.bottom_btn {
	text-align: center;
}
.Lside {
	margin-left: 0px;
}

#plan img.mainimg {
	margin: 0 auto;
	width: 100%;
	height: 100%;
}
img.info {
	position: relative;
	top: 10px;
	width: 80%;
	height: 80%;
	padding: 0 10%;
}
#plan #inner {
	width: 100%;
	padding-top: 10px;
	height: 100%;
	margin: 70px auto;
	overflow: hidden;
}
#plan #inner h2 {
	width: 88%;
	float: left;
	font-family: 'Noto Serif JP', sans-serif;
	font-size: 1.55em;
	letter-spacing: -0.05em;
	font-weight: 600;
    border-bottom: solid 3px #54391C;
    /*border-left: solid 10px #54391C;*/
    padding: 30px 0px 8px 0px;
    margin: 0 6% 25px;
	color: #54391C;
	position: relative;
}
#plan #inner h2:after {
	position: absolute;
content: " ";
display: block;
bottom: -3px;
width: 30%;
}
#plan #inner h2.ladies:after {
	border-bottom: solid 3px #ff9999;
}
#plan #inner h2.salva:after {
	border-bottom: solid 3px #4267b2;
}
#plan #inner h2.luxury:after {
	border-bottom: solid 3px #f1c833;
}
#plan #inner h2.grazie:after {
	border-bottom: solid 3px #ccac85;
}
#plan #inner h2 span {
	font-weight: bold;
	font-size: 1.2em;
	display: block;
}


#plan #inner p span {
	font-weight: bold;
	font-size: 1em;
}
#plan #inner section {
	width: 100%;
	height: auto;
	margin-bottom: 40px;
}
#plan #inner aside {
	width: 70%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
    /* float: right; */
}
#plan #inner aside img {
	width: 100%;
    height: auto;
	float: none;
}
#plan #inner h3 {
	width: auto;
	float: none;
	font-size: 1.3em;
	font-weight: bold;
	color: #54391C;
	line-height: 30px;
	margin-left: 6%;
	margin-right: 6%;
	margin-bottom: 15px;
	display: block;
	border-bottom: dotted 1px #54391C;
	background: none !important;
}
#inner h3:after {
	content: initial;
}

#plan #inner p {
	width: auto;
	float: none;
	margin-left: 6%;
	margin-right: 6%;
	clear: both;	
}

#plan #inner ul {
	width: auto;
	float: none;
	margin-left: 6%;
	margin-right: 6%;
	margin-bottom: 25px;
}
#plan #inner ul li {
	line-height: 2em;
	font-size: 1em;
	display: block;
	color: #333333;
}
#plan #inner ul li:before {
	content:url(../img/li_icon.gif);
	margin-right: 5px;
}
#plan #inner ul li span {
	line-height: 1.6em;
	display: block;
	font-size: 0.85em;
	padding-left: 1.5em;
}
#plan #inner ul.info li {
	font-size: 0.9em;
    text-indent: -16px;
    padding-left: 16px;
}
#plan #inner ul.info li:before {
	content:"*";
	margin-right: 10px;
}

#plan #inner ul li span {
	line-height: 1.6em;
	display: block;
	font-size: 0.85em;
	padding-left: 2.7em;
}

#plan #inner div#info {
	width: auto;
	float: none;
	display: table;
	overflow: hidden;
	border: solid 1px #160B08;
	margin-left: 6%;
	margin-right: 6%;
	margin-bottom: 20px;
}
#plan #inner dl {
	width: 100%;
	border-bottom: 1px dotted #d8d8d8;
}
#plan #inner dl:last-child{
    border: none;
}
#plan #inner dl dt {
	display: table-cell;	
	width: 21%;
	background: #FFF0EC;
	margin: 0;
  padding: 6px 8px;
  line-height: 1.6em;
}
#plan #inner dl dd {
	width: 441px;
	display: table-cell;
	background: #FFF;
	padding: 8px 10px;
  line-height: 1.6em;
}
#plan #inner dl dd em {
	font-weight: bold;
	display: block;
}
#plan #inner dl dd strong {
	color: #54391C;
	display:block;
}
#plan #inner p {
	margin-bottom: 30px;
	text-align: left;
	line-height: 2;
	color: #333333;
}
#plan #inner p.btn {
	text-align: center;
	right: 3%;
}
#plan #inner p.btn a {
  color: white;
  font-size: 16px;
  background: #92806c;
  text-decoration: none;
  display: inline-block;
  vertical-align: top;
  font-size: 16px;
  margin: 10px;
  width: 260px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-shadow: none;
}
#plan #inner p.btn a:hover {
	background: #54391C;
}


	

/** go to top */
p.gotop {
	position: fixed;
	right: 6%;
	bottom: 100px;
	padding-bottom: 40px;
	z-index: 50;
}
p.gotop a {
	display: block;
	width: 70px;
	height: 70px;
}

/** 404 */
#content.error {
	display: block;
	width: 600px;
}
.error h1 {
	margin-top: 55px;
}





/*雪降りアニメーション　キーフレームsakuraを設定。*/
/*最初は0,0で、時間が100%(今回は30秒)に到達したら、background-positionを右に500px,左に500pxずれるの意味*/
@keyframes sakura {
 0% {
background-position: 0 0, 0 0, 0 0;
}
 100% {
background-position: 500px 1000px, -400px 800px, 0 600px;
}
}
 @-moz-keyframes sakura {
 0% {
background-position: 0 0, 0 0, 0 0;
}
 100% {
background-position: 500px 1000px, -400px 800px, 0 600px;
}
}
 @-webkit-keyframes sakura {
 0% {
background-position: 0 0, 0 0, 0 0;
}
 100% {
background-position: 500px 1000px, -400px 800px, 0 600px;
}
}
/*#divにアニメーションを適用*/
/*body {
	background-image: url('../img/bg_animation1.png'), url('../img/bg_animation2.png'), url('../img/bg_animation3.png');
	animation: sakura 30s linear infinite;
	z-index: -10;
}*/
/*キーフレームsakura（@keyframes sakura）を30s（30秒）かけて、
linear（一定の速度）で、infinite（無限に繰り返す)を指定*/




.sp {
	display: none;
}





.bnr {
	width: 100%;
	margin: 0 auto;
}
.bnr img {
	width: 100% !important;
	display:block !important;
}
.bnr a:hover {
	opacity: 0.8;
}

/** shoplist */
/*.shoplist_ttl {
	font-size: 1.5em;
	font-weight: normal;
	border-bottom: solid 1px #d8d8d8;
	border-left: solid 10px #cfaf3d;
	padding: 10px 12px;
	margin: 30px 0;
	color: #422E2E;
}*/
div#collabo {
	margin-top: 5px;
	margin-bottom: 40px;
}
div#collabo ul.area {
	font-size: 14px;
	overflow: hidden;
	line-height: 2.3em;
}
div#collabo ul.area li a{
	display: block;
	width: 90%;
	height: 33px;
	margin: 0 auto 10px auto;
	text-decoration: none;
	letter-spacing: -0.03em;
}
div#collabo h4 {
	font-size: 16px !important;
	padding: 3px 0 3px 0;
	margin-bottom: 15px;
	line-height: 1.5em;
	font-weight: bold;
	background: #E8E7DB;
}
.shoplist_ttl + p{
	line-height: 1.6;
	margin-bottom: 20px;
	font-size: 16px;
}
/*div#collabo a:visited{
	color: #FFF;
}
div#collabo a:link{
	color: #FFF;
}*/
a.info_longname,
a.longer {
    font-size: 12px;
	height: auto !important;
}
a.longest {	
	font-size:12px;
	letter-spacing:-.1em !important;
	height: auto !important;
}
.comments {
    position: relative;
    overflow: visible !important;
}

.comments span {
        position: absolute;
        left: 0;
        bottom: -1.5em;
        font-size: 9px;
}



.lists {
		margin-bottom:50px;
	}
	.lists li {
		display: block;
		width: 100%;
		height:35px;
		padding:0 0 0 0 ;
		margin:20px auto 0 auto;
		font-size:13px;
		line-height: 35px;
		box-sizing: border-box;
		float: none;
		letter-spacing:-.08em;
	}
	.lists li a.btn-obj {
		display: inline-block;
		width: 80px;
		height: 35px;
		line-height:35px;
		text-align: center;
		background: #967f4a;
		font-size:12px;
		color: #fff !important;
		float:right;
	}
	.longname {
		display:inline-block;
		width:auto;
		letter-spacing: -.15em;
		font-size:10px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.longname-brk {
		display: block;
		width:auto;
		line-height: 17px !important;
		float:left;
		text-decoration: none !important;
	}
	.lists li {
		position: relative;
		border: none !important;
	}
	.sp-brk {
		display:inline;
	}
    .pc-brk {
	display:none;
	}
	
a.btn {
    display: block;
    width: 90%;
    border-radius: 2px;
	background: #C82527;
    text-align: center;
    margin: 50px auto 0 auto;
	padding: 18px;
	color: #FFFFFF;
	font-size: 1.2em;
}
a.btn:hover {
	opacity: 0.7;
}



