@charset "utf-8";

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

/* 02 layout SP */
body {
	background: #FFF url(../images/bg_body.png) center top repeat;
	font-family: HiraKakuPro-W3, "ヒラギノ角ゴ Pro W3", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	color: #333;
	text-align: center;
	font-size: 26px;
}

#header,
#footer,
#content {
	clear: both;
	width: 100%;
}

.container {
	margin: 0 auto;
	width: auto;
	text-align: center;
}
    
.hide_sp{
    display: none;     
    }
	
/* 03 link */
a { outline: none;}
a:link { color: #3399FF; text-decoration: underline;}
a:visited { color: #666666; text-decoration: underline; }
a:hover { color: #F15A24; text-decoration: none; }
a:active { color: #F15A24; text-decoration: underline; }



/* 04 header */	
	
#header #logo {
    position: relative;
    margin: 0 auto;
    width: auto;
    height: 86px;
    text-align: left;
}
	
#header {
	width: auto;
    height: 140px;
	background-image: url(../images/sp/bg_header.png);
}

#header .spcontainer {
    padding: 0 20px;
    width: auto;
    height: auto;
}

#header .spcontainer .siteName {
    margin-left: 20px;
}

#header h1.siteName {
    width: 290px;
    height: 60px;
    background-image: url(../images/sp/sitename.png);
    background-position: left top;
    background-repeat: no-repeat;
    text-indent: -10000em;
}	

/* 05 gnav */

.supplement {
    position: absolute;
    left: -10000em;
}

#header .spcontainer nav dl {
    padding: 20px;
    position: absolute;
    top: 110px;
    left: 20px;
    display: none;
    width: 560px;
    height: auto;
    background-color: #BFDFFF;
    border-radius: 10px;
    z-index: 1200;
}

#header .spcontainer nav dl dd {
    margin: 0 0 10px 0 !important;
    float: none;
    width: 100%;
    line-height: 60px;
    background-color: #003;
    text-align: center;
    border-radius: 5px;
}

#header .spcontainer nav dl dd a {
    display: block;
    color: #fff;
	 width: 100%;
    line-height: 60px;	
}

#header .spcontainer nav .navControl {
    position: absolute;
    right: 20px;
    top: 40px;
    width: 60px;
    height: 60px;
    background-image: url(../images/sp/tub_menu.png);
	background-repeat: no-repeat;
    text-indent: -10000em;
}
	
#header .spcontainer nav .navClose{
	color: gray;
}	
	
#nav .hide_sp{
		display: none;
	}	
	
#header dl.fb_tel {
	position: absolute;
	top: 20px;
	left: 250px;
    width: auto;
}	
	
#header dl.fb_tel dd.facebook {
	position: absolute;
	top: 20px;
	left: 0;
}
	
#header dl.fb_tel dd.facebook a {
    display: block;
    width: 60px;
    height: 60px;
    background-image: url(../images/sp/headerfb.png);
    background-position: 0 center;
    background-repeat: no-repeat;
    text-indent: -10000em;
}	
	
#header dl.fb_tel dd.instagram {
	position: absolute;
	top: 20px;
	left: 0;
}
	
#header dl.fb_tel dd.instagram a {
    display: block;
    width: 60px;
    height: 60px;
    background-image: url(../images/sp/headerinsta.png);
    background-position: 0 center;
    background-repeat: no-repeat;
    text-indent: -10000em;
}
	
#header dl.fb_tel {
	width: 320px;
	height: auto;
	float: left;
}
	
#header dl.fb_tel dt{
		font-size: 0.8em;
		color: white;
		text-align: left;
		line-height: 0;
		text-indent: -10000px;
}
	
#header dl.fb_tel dd.tel {
	position: absolute;
	top: 20px;
	left: 70px;
}
	
#header dl.fb_tel dd.tel a {
    display: block;
    width: 60px;
    height: 60px;
    background-image: url(../images/sp/headertel.png);
    background-position: center center;
    background-repeat: no-repeat;
    text-indent: -10000em;
}
	
#header dl.fb_tel dd.mail {
	position: absolute;
	top: 20px;
	left: 140px;
}	
	
#header dl.fb_tel dd.mail a {
    display: block;
    width: 60px;
    height: 60px;
    background-image: url(../images/sp/headermail.png);
    background-position: center center;
    background-repeat: no-repeat;
    text-indent: -10000em;
}	
	
#header #Coupon{
	position: absolute;
	top: 40px;
	left: 460px;
}	
	
#header #Coupon a {
    padding: 0;
    display: block;
    width: 60px;
    height: 60px;
    background-image: url(../images/sp/headercoupon.png);
    background-position: 0 top;
    background-repeat: no-repeat;
    text-indent: -10000em;
}

/* fixation固定バー*/ 
	
#fixation {
    width: 100%;
    height: 52px;
    padding: 9px 50px;
    background-image: url(../images/sp/bg_header.png);
	background-repeat: repeat;
    position: fixed;
    bottom: 0;
    left: 0;
	z-index: 1;
}
	
#fixation ul{
	width: auto;
	height: auto;
	margin: 0 auto;	
	}	
	
#fixation li{
	float: left;
	margin-right: 10px;
	text-indent: -10000px;
}
	
#fixation li.tel a{
	width: 150px;
	height: 52px;
	background-image: url(../images/sp/fix_tel.png);
	background-repeat: no-repeat;
	background-position: left top;
	display: block;
}
	
#fixation li.mail a{
    width: 150px;
	height: 52px;	
	background-image: url(../images/sp/fix_mail.png);
	background-repeat: no-repeat;
	background-position: left top;
	display: block;
}
	
#fixation li.coupon a{
	width: 215px;
	height: 52px;
	background-image: url(../images/sp/fix_coupon.png);
	background-repeat: no-repeat;
	background-position: left top;
	margin-right: 0;
	display: block;
}	

/* 06 footer */ 
#footer {
	background: url(../images/bg_footer.png);
	background-repeat: repeat;
	background-position: top left;
	width: auto;
	height: auto;
}
#footer .container {
	color: #fff;
	margin: 0 auto;
	padding: 49px 0 0;
	width: auto;
	position: relative;
}
#footer #info {
	display: block;
	float: none;
	width: auto;
	height: auto;
	margin-bottom: 20px;
}
#footer #info p {
	margin-bottom: 5px;
	font-size: 0.8em;
}
#footer #info p img {
	margin-bottom: 10px;
}
	
#footer #info dl {
	width: 460px;
	margin: 0 auto;
}
	
	
#footer #info dl dt {
	display: inline;
	width: 5em;
	font-size: 0.8em;
}
	
#footer #info dl dd {
	font-size: 0.8em;
    display: inline;
}
	
#footer #info dl dd p{
	width: 310px;
	height: auto;
	margin: 0 0 0 20px;
	text-align: left;
	margin-left: 1.8em;
	text-indent: -1.4em;
}	
	
#footer #info dl dd p br{
	display: none;
}	
	
#footer #info dl dd span {
	display: block;
	float: left;
	width: 3.5em;
}
	
#footer #map {
	background-color: #EEEEEE;
	display: block;
	float: none;
	margin-top: 0;
	width: 420px;
	height: auto;
	margin: 0 auto 0;
}
	
#footer #map iframe {
	margin: 5px;
}

#footer #copyright {
	clear: both;
	margin: 0 auto 70px;
	padding: 10px 0 20px;
}
#footer #figure {
	display: none;
}



/* 07 content */
#content {
	position: relative;
	background: url(../images/bg_header.jpg) no-repeat center top;
	line-height: 1.3;
	margin-top: -4px;
	z-index: 0;
}

.header {
	position: relative;
	padding-top: 45px;
	margin-bottom: 30px;
	width: auto;
}
.header h1 {
	width: 130px;
	text-align: right;
	position: absolute;
	top: 50px;
	right: 0;
}
.header h1 img {
	margin-bottom: 10px;
	/*margin-bottom: 21px;*/
	vertical-align: top;
}
.header h1 img#title {
	margin: 0 27px;
}
.header h1 img#off {
	margin: 14px 0 0 -18px;
}

.main .article {
	width: auto;
	height: auto;
}

.article .note {
	clear: both;
}



/* 11 common */
.floatL {
	float: left;
	margin: 0 12px 12px 0;
}
.floatR {
	float: right;
	margin: 0 0 12px 12px;
}
.clr {
   clear: both;
}
.txtC {
	text-align: center;
}
.txtR {
	text-align: right;
}
.txtL {
	text-align: left;
}

#coupon img {
	margin-bottom: 15px;
}

#coupon p {
	text-align: center;
}



/* 12 clr */
#content .container .header:after,
#content .container .article:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
	font-size: 0;
}

#content .container .header,
#content .container .article{
	display: inline-block;
	width: auto;
	height: auto;
	margin-bottom: 45px;
	}


.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clearfix {
	display: inline-block;
}

/* Hides from IE-mac \*/
* html .clearfix {
	height: 1%;
}

.clearfix {
	display: block;
}}
/* End hide from IE-mac */	
		