@charset "utf-8";

body{
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
#wrapper{flex:1 1 auto;}
footer {margin-top: auto;}

/*------------------------------------------------------------
共通スタイル
------------------------------------------------------------*/
*{word-break: break-word;}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
}
body,
table,
input, textarea, select, option {
	font-family: ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
	font-size: 1em;
}
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

a{-webkit-tap-highlight-color:rgba(50,35,240,0.6);}
a:link{}
a:visited{}
a:hover{}
a:active{}

img{
	vertical-align:top;
}

textarea {
	width: 100% ;
	height: 100px ;
	margin-bottom: 10px ;
}
input[type="text"],textarea,select {
	color: #5a5c63;
	font-size: 100% ;
	width: 100% ;
	padding: 3px ;
	border: 1px solid #999999 ;
	-webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2) inset ;
	-webkit-box-sizing: border-box;
}

/*box-sizingを全ブラウザに対応*/
*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

/*------------------------------------------------------------
	書式設定
------------------------------------------------------------*/
/* テキストの位置 */
.taLeft 	{text-align: left;}
.taCenter {text-align: center;}
.taRight 	{text-align: right;}

/* フォントの太さ */
.fwNormal {font-weight: normal;}
.fwBold		{font-weight: bold;}

/* フォントの大きさ（プラス） */
.fsP1 { font-size: 1.08em !important; }
.fsP2 { font-size: 1.16em !important; }
.fsP3 { font-size: 1.24em !important; }
.fsP4 { font-size: 1.32em !important; }
.fsP5 { font-size: 1.4em !important; }

/* フォントの大きさ（マイナス） */
.fsM1 { font-size: 0.92em !important; }
.fsM2 { font-size: 0.84em !important; }
.fsM3 { font-size: 0.76em !important; }
.fsM4 { font-size: 0.68em !important; }
.fsM5 { font-size: 0.6em !important; }

.clear { clear:both; }
.floatL { float:left; }
.floatR { float:right; }
/*------------------------------------------------------------
	clearfix
------------------------------------------------------------*/
.clearfix:after {
	content:"";
	display:block;
	clear:both;
}

/* レイアウト
------------------------------------------------------------*/
/*

基本サイズ13px			基本サイズ14px			基本サイズ16px
10px 	 77%					10px 	 72%					10px 	 63%
11px 	 85%					11px 	 79%					11px 	 69%
12px 	 93%					12px 	 86%					12px 	 75%
13px 	100%					13px 	 93%					13px 	 81%
14px 	108%					14px 	100%					14px 	 88%
15px 	116%					15px 	108%					15px 	 94%
16px 	124%					16px 	115%					16px 	100%
17px 	131%					17px 	122%					17px 	106%
18px 	139%					18px 	129%					18px 	113%
19px 	147%					19px 	136%					19px 	119%
20px 	154%					20px 	143%					20px 	125%
21px 	162%					21px 	150%					21px 	131%
22px 	170%					22px 	158%					22px 	138%
23px 	177%					23px 	165%					23px 	144%
24px 	185%					24px 	172%					24px 	150%
25px 	193%					25px 	179%					25px 	156%
26px 	200%					26px 	186%					26px 	163%
-------------------------------------------------------*/
body{
	text-align: center;
	line-height: 1.3;
	font-size: 16px;
	font-family: ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
	-webkit-text-size-adjust: none;
	color: #623c16;
	min-width: 320px;
	background-position: 50% 0;
	background-repeat: repeat;
}
body#ladylist{padding-bottom: 60px;}
#wrapper {
	min-width:  320px;
	padding-top: 55px;
	text-align: left;
	/* position: relative;
	overflow: hidden; */
}
/*------------------------------------------------------------
header
------------------------------------------------------------*/
header{width: 100%;}
header #hdNav{
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	border-bottom: 1px solid #8b7a58;
	background: #fff;
}
header ul{
	width: 100%;
	min-width: 320px;
	height: 55px;
	display: flex;
	flex-flow: row wrap;
	text-align: center;
	justify-content: center;
}
header ul li{
	flex: 1 1 auto;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	align-items: center;
}	
header ul li a{display: block;}

/* header ul li{
	width: 33.3%;
	text-align: center;
	display: table;
	height: 100%;
}
header ul li a{
	color: #000;
	text-decoration: none;
	display: table-cell;
	vertical-align: middle;
	font-size: 0.94em;
} */

/* MENU_btn
-------------------------------------------- */
header ul li a{text-decoration: none;}
header ul li#navBtn{
	background: #ffeceb;
	flex :0 0 50px
}
.sp header ul li#navBtn{background: #eeffde;}
.sm header ul li#navBtn{background: #e5fdff;}
.fl header ul li#navBtn{background: #ffecdc;}
.wn header ul li#navBtn{background: #e8e8ff;}

header #navBtn a{
	position: relative;
	color: #323232;
}
header #navBtn div{
	max-width: 78px;
	margin: 25px auto 0;
	position: relative;
	font-size: 12px;
/*	margin: 20px auto 0;
	font-size: 10px;
	padding-left: 24px;*/
}
header #navBtn span {
	width: 90%;
	height: 3px;
	transition: all .4s;
	padding-top: 2px;
	margin-left: -45%;
	background-color: #ed8983;
	border-radius: 4px;
	position: absolute;
	top: -20px;
	left: 50%;
	text-indent: -9999px;
}
.sp header #navBtn span {background-color: #90ba66;}
.sm header #navBtn span {background-color: #45a5ad;}
.fl header #navBtn span {background-color: #d66a33;}
.wn header #navBtn span {background-color: #8383e5;}

header #navBtn span:before,
header #navBtn span:after{
	width: 100%;
	height: 3px;
	transition: all .4s;
	display: block;
	content: '';
	background-color: #ed8983;
	border-radius: 4px;
	position: absolute;
	left: 0;
}
.sp header #navBtn span:before, .sp header #navBtn span:after{background-color: #90ba66;}
.sm header #navBtn span:before, .sm header #navBtn span:after{background-color: #45a5ad;}
.fl header #navBtn span:before, .fl header #navBtn span:after{background-color: #d66a33;}
.wn header #navBtn span:before, .wn header #navBtn span:after{background-color: #8383e5;}

header #navBtn span:before {top: 6px;}
header #navBtn span:after {top: 12px;}


/* 女性紹介btn
-------------------------------------------- */
header ul li.navWmn{background: #ff688c;}
.sp header ul li.navWmn{background: #87bf4e;}
.sm header ul li.navWmn{background: #37c4c4;}
.fl header ul li.navWmn{background: #ff8b51;}
.wn header ul li.navWmn{background: #a2a2ef;}

header ul li.navWmn a,
header ul li.navTel a{
	width: 100%;
	height: 100%;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
header ul li.navWmn a span{
	height: 28px;
	line-height: 28px;
	color: #fff;
/*	padding-left: 25px;
	background-image: url(../img/common/nv_lady.png);
	background-position: 0 50%;
	background-repeat: no-repeat;
	background-size: 23px 28px;*/
}

/* 電話するbtn
-------------------------------------------- */
header ul li.navTel{background: #fff;}
header ul li.navTel a span{
/*	padding-left: 30px;
	background: url(../img/common/nv_tel.png) 0 0 no-repeat;
	background-position: 0 50%;
	background-repeat: no-repeat;
	background-size: 27px 25px;*/
	text-align: left;
	color: #464646;
}
/*.sp header ul li.navTel a span{background: url(../img/common/nv_tel_sp.png) 0 50%/27px 25px no-repeat;}
.sm header ul li.navTel a span{background: url(../img/common/nv_tel_sm.png) 0 50%/27px 25px no-repeat;}
.fl header ul li.navTel a span{}
.wn header ul li.navTel a span{}*/

header ul li.navTel a span#dispsp{display: block;}
header ul li.navTel a span#disppc{display: none;}
/* @media screen and (min-width:768px){
	header ul li.navTel a span#dispsp{display: none;}
	header ul li.navTel a span#disppc{display: block;}
} */
/* header ul li.navTel a dl{
	padding-left: 30px;
	background: url(../img/common/nv_tel.png) 0 0 no-repeat;
	background-position: 0 50%;
	background-repeat: no-repeat;
	background-size: 27px 25px;
	text-align: left;
	color: #464646;
}
header ul li.navTel a dl dd{font-size: .63rem;} */
/* header ul li.navWmn a::before,
header ul li.navTel a::before{
	display: inline-block;
	height: 24px;
	content: "";
	padding-right: 2px;
}
header ul li.navWmn a{color: #fff;}
header ul li.navWmn a::before{
	background: url(../img/common/nv_lady.png) 0 0 no-repeat;
	background-size: 23px 24px;
	width: 23px;
	vertical-align: middle;
}
header ul li.navTel a{color:#464646;}
header ul li.navTel a::before{
	background: url(../img/common/nv_tel.png) 0 0 no-repeat;
	background-size: 25px 25px;
	width: 25px;
	vertical-align: bottom;
} 
header ul li span{
	display: block;
	color: #464646;
	font-size: .63rem;
}
*/

/* headerアンケートbtn
-------------------------------------------- */
header ul li.hdEnq{
	background: #ad5b6e;
	flex :0 0 95px;
/*	flex :0 0 65px;*/
}
.sp header ul li.hdEnq{background: #6a8c58;}
.sm header ul li.hdEnq{background: #3f8c8c;}
.fl header ul li.hdEnq{background: #f4590b;}
.wn header ul li.hdEnq{background: #6060c0;}

header ul li.hdEnq a{
	width: 100%;
	height: 100%;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
header ul li.hdEnq a span{
	color: #fff;
	font-size: 15px;
/*	padding-top: 27px;
	background-image: url(../img/common/hd_enq.png);
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-size: 23px 27px;
	font-size: 10px;*/
}

/*------------メニューボタンのアニメ-------------*/
.open header #navBtn span {background-color: transparent; top:-22px;}
.open header #navBtn span:before {
	top: 9px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.open header #navBtn span:after {
	top: 9px;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
/* header h1,
header .logo{
	height: 39px;
	background: #fff;
	text-align: left;
	padding: 0 0 0 3px;
} */
header h1,
header .logo{
	padding-left: 10px;
	background: #fff;
	font-weight: normal;
	display: -webkit-flex;
	display: flex;
	flex-flow: row wrap;
	align-items: center;
}
header h1 a,
header .logo a{
	flex:0 0 172px;
	text-align: center;
}
header h1 a img,
header .logo a img{
	width: 172px;
	height: auto;
}
header h1 span,
header .logo span{
	flex:1 1 auto;
	padding-right: 20px;
	text-align: right;
	font-weight: bold;
}

/*------------ドロワーメニュー-------------*/
#drawer{
	max-width: 100vw;
	width: 100%;
	height: 100%;
	margin-right: -100%;
	background: #ffeceb;
	position: fixed;
	top: 56px;
	right: 0;
	z-index: 9999;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	text-align: left;
}
.sp #drawer{background: #f1ffeb;}
.sm #drawer{background: #ebfdff;}
.fl #drawer{background: #ffe7d3;}
.wn #drawer{background: #e0e0ff;}

#drwHead{
	padding: 10px 5px;
	display: -webkit-flex;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
#drwHead li#nvHome{flex:0 0 30%;}
#drwHead li#nvMail{flex:0 0 68%;}

#drwHead li#nvHome a{background-color: #ff688c;}
.sp #drwHead li#nvHome a{background-color: #87bf4e;}
.sm #drwHead li#nvHome a{background-color: #37c4c4;}
.fl #drwHead li#nvHome a{background-color: #ff8b51;}
.wn #drwHead li#nvHome a{background-color: #a2a2ef;}

#drwHead li#nvHome a span{
	display: inline-block;
	padding: 10px 5px;
/*	padding: 10px 5px 10px 30px;
	background-image: url(../img/common/nv_home.png?d=230214);
	background-position: 0 50%;
	background-repeat: no-repeat;
	-webkit-background-size: 25px 24px;
	background-size: 25px 24px;*/
}
#drwHead li#nvMail a{background-color: #8b7a58;}
#drwHead li#nvMail a span{
	display: inline-block;
	padding: 10px 5px;
/*	padding: 10px 5px 10px 45px;
	background-image: url(../img/common/nv_mail.png);
	background-position: 0 50%;
	background-repeat: no-repeat;
	-webkit-background-size: 36px 24px;
	background-size: 36px 24px;*/
}
#drwHead li a{
	color: #fff;
	display: block;
	text-decoration: none;
	border-radius: 35px;
	text-align: center;
}
#nvcityRes{
	padding: 0 5px;
	margin-bottom: 5px;
	text-align: center;
}
#nvcityRes a{
	padding: 10px 0;
	display: block;
	color: #fff;
	border-radius: 35px;
	text-decoration: none;
}
.sp #nvcityRes a{background: #6a8c58;}
.sm #nvcityRes a{background: #3f8c8c;}
.fl #nvcityRes a{background: #f4590b;}
.wn #nvcityRes a{background: #6060c0;}

.nvMain{
	padding: 0 5px;
	margin-bottom: 10px;
}
.nvMain li{padding: 5px 0;}
.nvMain li a{
	padding: 10px 5px;
	display: block;
	background-color: #fff;
	border: 1px solid #591d1d;
	border-radius: 3px;
	text-decoration: none;
	font-size: 1.15rem;
	color: #4b0000;
	position: relative;
/*	padding: 10px 5px 10px 40px;
	background-position: 5px 50%;
	background-repeat: no-repeat;
	-webkit-background-size: 28px 28px;
	background-size: 28px 28px;*/
}
.nvMain li a:after {
	content:'';
	position: absolute;
	top:50%;
	right: 10px;
	margin:-5px 0 0 0;
	width:0;
	height:0;
	border-style: solid;
	border-width: 5px 0 5px 10px;
	border-color: transparent transparent transparent #ff688c;
}
.sp .nvMain li a:after {border-color: transparent transparent transparent #87bf4e;}
.sm .nvMain li a:after {border-color: transparent transparent transparent #7ac5cc;}
.fl .nvMain li a:after {border-color: transparent transparent transparent #ffa070;}
.wn .nvMain li a:after {border-color: transparent transparent transparent #a6a6f4;}

/*.nvMain li.nvENR a{background-image: url(../img/common/nv_enroll.png);}
.nvMain li.nvALL a{background-image: url(../img/common/nv_all.png);}
.nvMain li.nvNEW a{background-image: url(../img/common/nv_new.png);}
.nvMain li.nvLDY a{background-image: url(../img/common/nv_ladylist.png);}
.nvMain li.nvBBS a{background-image: url(../img/common/nv_bbs.png);}
.nvMain li.nvTDY a{background-image: url(../img/common/nv_news.png);}
.nvMain li.nvREC a{background-image: url(../img/common/nv_rec.png);}
.nvMain li.nvTWI a{background-image: url(../img/common/nv_twitter.png);}

.sp .nvMain li.nvENR a{background-image: url(../img/common/nv_enroll_sp.png);}
.sp .nvMain li.nvALL a{background-image: url(../img/common/nv_all_sp.png);}
.sp .nvMain li.nvNEW a{background-image: url(../img/common/nv_new_sp.png);}
.sp .nvMain li.nvLDY a{background-image: url(../img/common/nv_ladylist_sp.png);}
.sp .nvMain li.nvBBS a{background-image: url(../img/common/nv_bbs_sp.png);}
.sp .nvMain li.nvTDY a{background-image: url(../img/common/nv_news_sp.png);}
.sp .nvMain li.nvREC a{background-image: url(../img/common/nv_rec_sp.png);}

.sm .nvMain li.nvENR a{background-image: url(../img/common/nv_enroll_sm.png);}
.sm .nvMain li.nvALL a{background-image: url(../img/common/nv_all_sm.png);}
.sm .nvMain li.nvNEW a{background-image: url(../img/common/nv_new_sm.png);}
.sm .nvMain li.nvLDY a{background-image: url(../img/common/nv_ladylist_sm.png);}
.sm .nvMain li.nvBBS a{background-image: url(../img/common/nv_bbs_sm.png);}
.sm .nvMain li.nvTDY a{background-image: url(../img/common/nv_news_sm.png);}
.sm .nvMain li.nvREC a{background-image: url(../img/common/nv_rec_sm.png);}

.fl .nvMain li.nvENR a{}
.fl .nvMain li.nvALL a{}
.fl .nvMain li.nvNEW a{}
.fl .nvMain li.nvLDY a{}
.fl .nvMain li.nvBBS a{}
.fl .nvMain li.nvTDY a{}
.fl .nvMain li.nvREC a{}

.wn .nvMain li.nvENR a{}
.wn .nvMain li.nvALL a{}
.wn .nvMain li.nvNEW a{}
.wn .nvMain li.nvLDY a{}
.wn .nvMain li.nvBBS a{}
.wn .nvMain li.nvTDY a{}
.wn .nvMain li.nvREC a{}*/

.nvOther{
	border-top: 1px solid #cb9e9b;
	margin-bottom: 10px;
}
.nvOther > li{border-bottom: 1px solid #cb9e9b;}
.nvOther > li > a{
	padding: 10px 5px 10px 11px;
	display: block;
	position: relative;
	text-decoration: none;
	color: #4b0000;
	background-color: #fff;
/*	padding: 10px 5px 10px 30px;
	background-position: 0 50%;
	background-repeat: no-repeat;
	-webkit-background-size: 28px 28px;
	background-size: 28px 28px;*/
}
/*.nvSys a{background-image: url(../img/common/nv_sys.png);}
.nvMap a{background-image: url(../img/common/nv_map.png);}
.nvEnq a{background-image: url(../img/common/nv_enq.png);}

.sp .nvSys a{background-image: url(../img/common/nv_sys_sp.png);}
.sp .nvMap a{background-image: url(../img/common/nv_map_sp.png);}
.sp .nvEnq a{background-image: url(../img/common/nv_enq_sp.png);}
.sm .nvSys a{background-image: url(../img/common/nv_sys_sm.png);}
.sm .nvMap a{background-image: url(../img/common/nv_map_sm.png);}
.sm .nvEnq a{background-image: url(../img/common/nv_enq_sm.png);}
.fl .nvSys a{}
.fl .nvMap a{}
.fl .nvEnq a{}
.wn .nvSys a{}
.wn .nvMap a{}
.wn .nvEnq a{}*/

.nvOther > li > a:after {
	content:'';
	position: absolute;
	top:50%;
	right: 10px;
	margin:-5px 0 0 0;
	width:0;
	height:0;
	border-style: solid;
	border-width: 5px 0 5px 10px;
	border-color: transparent transparent transparent #cb9e9b;
}
.sp .nvOther > li > a:after {border-color: transparent transparent transparent #abcc9b;}
.sm .nvOther > li > a:after {border-color: transparent transparent transparent #8fc7cc;}
.fl .nvOther > li > a:after {border-color: transparent transparent transparent #ffb088;}
.wn .nvOther > li > a:after {border-color: transparent transparent transparent #babafb;}

.nvlower ul{
	display: -webkit-flex;
	display: flex;
	flex-flow: row wrap;
}
.nvlower ul li{
	flex: 1 1 33%;
	text-align: center;
}
.nvlower ul li:not(:first-child){border-left: 1px solid #cb9e9b;}
.nvlower ul li a{
	line-height: 22px;
	padding: 10px 0;
	display: block;
	background: #fff;
	text-decoration: none;
	color: #4b0000;
}

.nvQzn{padding: 5px;}
.nvQzn a{
	display: block;
	border: 1px solid #2d9c0f;
	background-color: #90cb3e;
	border-radius: 1.5em;
	text-decoration: none;
	color: #fff;
	font-weight: bold;
	font-size: 1.25rem;
	position: relative;
	text-align: center;
}
.nvQzn a p{
	padding: 15px;
	display: inline-block;
/*	padding: 15px 15px 15px 40px;
	background-image: url(../img/common/nv_qzin.png);
	background-position: 10px 50%;
	background-repeat: no-repeat;
	-webkit-background-size: 28px 28px;
	background-size: 28px 28px;*/
}
.nvQzn a p span{
	padding: 0 15px;
	margin-left: 5px;
	display: inline-block;
	background: #fff;
	color:#6bb25e;
	border-radius: 1em;
	font-size: 1rem;
	vertical-align: middle;
}
#drawer .nvStf{margin-bottom: 70px;}
.nvStf{
	padding: 5px;
}
.nvStf a{
	display: block;
	border: 1px solid #ad1532;
	background-color: #d62e4e;
	border-radius: 1.5em;
	text-decoration: none;
	color: #fff;
	font-weight: bold;
	font-size: 1.25rem;
	position: relative;
	text-align: center;
}
.nvStf p{
	padding: 15px 10px;
	display: inline-block;
}

.nvQzn a:after,
.nvStf a:after{
	content:'';
	position: absolute;
	top:50%;
	right: 10px;
	margin:-5px 0 0 0;
	width:0;
	height:0;
	border-style: solid;
	border-width: 5px 0 5px 10px;
	border-color: transparent transparent transparent #fff;
}
#overlay{
	width: 100%;
	height: 120vh;
	background: rgba(0,0,0,0.3);
	position: fixed;
	top: 0;
	left: 0;
	z-index: -999;
	opacity: 0;
	text-indent: -9999px;
	transition: opacity .4s;
}

/*-----open動作-----*/
.open {
	position: fixed;
	width: 100%;
	height: 100%;
}
.open #overlay{
	z-index: 999;
	display: block;
	opacity: 1;
}
.open #drawer{
	margin-right: 0;
}
.open #contents,
.open footer{
	-webkit-transform: translate3d(-100vw, 0 ,0);
	transform: translate3d(-100vw, 0 ,0);
}
#drawer{
	transition: margin 0.5s ease-in-out;
}
#contents,
footer{
	transition: transform 0.5s ease-in-out;
}
.open header ul{box-shadow: none;}
/*------------ドロワーメニューここまで-------------*/



/* footer
------------------------------------------------------------*/
footer{padding-top: 10px;}
#shopLink {
	padding: 5px;
	background: #8b7a58;
	text-align: center;
}	
#shopLink p{margin-bottom: 5px; font-weight: bold; color: #fff;}
#shopLink ul{
	display: -webkit-flex;
	display: flex;
	flex-flow: row wrap;
}
#shopLink ul li{
	flex : 1 1 33%;
	padding: 0 2px;
	border-radius: 3px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#shopLink ul li a{
	/*padding: 10px 0;
	display: block;*/
	height: 40px;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	align-items: center;

	text-decoration: none;
	background: #fff;
	border-radius: 3px;
	font-size: .81rem;
	color: #4b0000;
}
#shopLink ul li.ns a:after{
	width: 24px;
	height: 24px;
	margin-left: 2px;
	content: '';
	display: block;
	background-image: url(../img/common/ft_nosmoke.png);
	-webkit-background-size: 24px 24px;
	background-size: 24px 24px;
}
#fc{margin: 15px 0 10px;}


.refLink{padding: 5px 0;text-align: center;}
.refLink a{display: inline-block;}

#footlink{text-align: center;}
#footlink li{display: inline-block;}
#footlink li:not(:first-child):before{
	content: '｜';
	display: inline-block;
}

#footlink li a{
	padding: 10px;
	color: #8b7a58;
	text-decoration: none;
	display: inline-block;
	font-size: 0.94em;
}
#footlink li:first-child a{
	padding-left: 30px;
	background: url(../img/common/icn_home.png);
	background-position: 0 50%;
	background-repeat: no-repeat;
	-webkit-background-size: 25px 22px;
	background-size: 25px 22px;
	display: block;
}

#chgGgt{
	border-width: 1px 0;
	border-style: solid;
	border-color: #8b7a58;
	display: -webkit-flex;
	display: flex;
	text-align: center;
}
#chgGgt li{flex: 1 1 0%;}
#chgGgt li:not(:first-child){border-left: 1px solid #8b7a58;}
#chgGgt li a{display: block;}
#chgGgt li a span{
	padding: 10px 0 10px 30px;
	text-decoration: none;
	display: inline-block;
	color: #8b7a58;
	background-position: 0 50%;
	background-repeat: no-repeat;
	-webkit-background-size: 24px 24px;
	background-size: 24px 24px;
}
#chgGgt li#pcIdx a span{background-image: url(../img/common/icn_pc.png);}
#chgGgt li#mbIdx a span{background-image: url(../img/common/icn_mb.png);}

footer #pagetop{
	margin-bottom: 10px;
	text-align: center;
}
footer #pagetop a{
	padding-top: 25px;
	color: #333;
	font-size: .75rem;
	text-decoration: none;
	display: block;
	position: relative;
}
footer #pagetop a:after{
	content: '';
	width: 25px;
	height: 25px;
	margin-left: -12px;
	border-width: 3px 3px 0 0;
	border-style: solid;
	border-color: #000;
	transform: rotate(-45deg);
	display: block;
	position: absolute;
	top: 5px;
	left: 50%;
}
footer small{
	padding: 10px 0;
	text-align: center;
	font-size: .75rem;
	color: #8b7a58;
	display: block;
	border-top: 2px solid #8b7a58;
}
footer small a{color: #8b7a58; text-decoration: none;}

/* arrow
---------------------------------------  */
.arR{position: relative;}
.arR:after{
	content: '';
	width: 10px;
	height: 10px;
	margin-top: -5px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #000;
	transform: rotate(45deg);
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
}
.arL{position: relative;}
.arL:before{
	content: '';
	width: 10px;
	height: 10px;
	margin-top: -5px;
	border-width: 2px 0 0 2px;
	border-style: solid;
	border-color: #000;
	transform: rotate(-45deg);
	display: block;
	position: absolute;
	top: 50%;
	left: 10px;
}

.arTriR{position: relative;}
.arTriR:after {
	content:'';
	position: absolute;
	top:50%;
	right: 10px;
	margin:-10px 0 0 0;
	width:0;
	height:0;
	border-style: solid;
	border-width: 8px 0 8px 14px;
	border-color: transparent transparent transparent #000;
}

.cross{position: relative;}
.cross:before,
.cross:after{
	width: 16px;
	height: 3px;
	margin-top: -2px;
	background: #000;
	border-radius: 4px;
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
}
.cross:before{	transform: rotate(45deg);}
.cross:after{	transform: rotate(-45deg);}


/* テーブルレイアウトセット
---------------------------------------  */
.tbl{
	width: 100%;
	border: 1px solid #775e3e;
	border-collapse: collapse;
}
.tbl th{
	padding: 3px;
	color:#333;
	background: #f5f4f2;
	border: 1px solid #775e3e;
	font-weight: normal;
}
.tbl td{
	padding: 3px;
	color: #333;
	background: #fff;
	border: 1px solid #775e3e;
	text-align: right;
}
.tbl th span,
.tbl td span{font-weight: bold;}

.loading{
  color: #000;
  font-size: 10px;
  margin: 100px auto;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: loadAnimation 1.3s infinite linear;
  animation: loadAnimation 1.3s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}

/* radio checkbox
-> label > input+[span[.rb||.cb] || div[.rb||.cb]]
---------------------------------------*/
input[type="checkbox"],
input[type="radio"]{display: none;}
label{
	cursor: pointer;
	display: block;
}
label > span,
label > div{
	padding-left: 30px;
	position: relative;
	display: block;
}
label .cb:before{
	content: "";
	width: 20px;
	height: 20px;
	margin-top: -10px;
	display: block;
	position: absolute;
	top: 50%;
	left: 5px;
	border-radius: 3px;
	background: #f6f8fc;
	border: 2px solid #ddd;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
label .cb:after{
	content: "";
	width: 8px;
	height: 14px;
	margin-top:-9px; 
	display: block;
	position: absolute;
	top: 50%;
	left: 11px;
	transform: rotate(40deg);
	border-width: 0 3px 3px 0;
	border-style: solid;
	border-color: #ddd;
}
label input:checked + .cb:before{background: #f6f8fc; border: 2px solid #f12b5e;}
label input:checked + .cb:after{border-color: #f12b5e;}

label .rb:before{
	content: "";
	width: 16px;
	height: 20px;
	margin-top: -10px;
	display: block;
	position: absolute;
	top: 50%;
	left: 8px;
	border-radius: 50%;
	background: #f6f8fc;
	border: 2px solid #ddd;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	
}
label input:checked + .rb:before{background: #f6f8fc; border: 2px solid #f12b5e;}
label input:checked + .rb:after{
	content: "";
	width: 10px;
	height: 10px;
	margin-top:-5px; 
	display: block;
	position: absolute;
	top: 50%;
	left: 10px;
	border-radius: 50%;
	background: #f12b5e;
}
label > div > span{
	display: block;
	font-size: .75rem;
}

@-webkit-keyframes loadAnimation {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
@keyframes loadAnimation {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}



#modalInfo{
	max-width: 375px;
	padding: 0;
	background: transparent;
}
#modalInfo dl{
	/*width: 300px;*/
	background: #ffeceb;
	padding: 40px 20px;
	text-align: center;
	border-radius: 10px;
}
.sp #modalInfo dl{background: #f1ffeb;}
.sm #modalInfo dl{background: #ebfdff;}
.fl #modalInfo dl{background: #ffe7d3;}
.wn #modalInfo dl{background: #e0e0ff;}

#modalInfo dt{
	padding: 5px 0;
	font-size: 1.34rem;
	background: #ff688c;
	color: #fff;
	border-top: 2px solid #ff7092;
}
.sp #modalInfo dt{
	background: #87bf4e;
	border-top: 2px solid #87bf4e;
}
.sm #modalInfo dt{
	background: #37c4c4;
	border-top: 2px solid #37c4c4;
}
.fl #modalInfo dt{
	background: #f67f44;
	border-top: 2px solid #f67f44;
}
.wn #modalInfo dt{
	background: #a2a2ef;
	border-top: 2px solid #a2a2ef;
}

#modalInfo dd{
	padding: 3px 5px;
	background: #fff;
	border: 2px solid #ff7092;
}
.sp #modalInfo dd{border: 2px solid #87bf4e;}
.sm #modalInfo dd{border: 2px solid #37c4c4;}
.fl #modalInfo dd{border: 2px solid #f67f44;}
.wn #modalInfo dd{border: 2px solid #a2a2ef;}

#modalInfo dd div{
	margin: 4px;
	display: -webkit-flex;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: center;
	text-align: center;
}
#modalInfo dd div#mdlTime{}
#modalInfo dd div#mdlTel{font-size: 1.5rem;}
#modalInfo dd div#mdlTel span{
	padding-left: 40px;
	position: relative;
}
#modalInfo dd div#mdlTel span:before{
	width: 36px;
	height: 31px;
	margin-top: -15px;
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	background: url(../img/common/mdl_tel.png) 0 0 no-repeat;
	-webkit-background-size: 36px 31px;
	background-size: 36px 31px;
}
.sp #modalInfo dd div#mdlTel span:before{background: url(../img/common/mdl_tel_sp.png) 0 0/36px 31px no-repeat;}
.sm #modalInfo dd div#mdlTel span:before{background: url(../img/common/mdl_tel_sm.png) 0 0/36px 31px no-repeat;}
.fl #modalInfo dd div#mdlTel span:before{background: url(../img/common/mdl_tel_fl.png) 0 0/36px 31px no-repeat;}
.wn #modalInfo dd div#mdlTel span:before{background: url(../img/common/mdl_tel_wn.png) 0 0/36px 31px no-repeat;}

#modalInfo .remodal-close {
	top: 0;
	left: 0;
	width: 35px;
	height: 35px;
	margin: 0;
	padding: 0;
	color: #95979c;
}

#modalInfo .remodal-close:before {
  border: none;
	color: #95979c;
  background: none;
}



/* -------------------------------------------------
####################################################
####################################################
####################################################
------------------------------------------------- */


@media screen and (min-width: 768px){
	body{background-image: url(../img/common/bg_pattern.jpg);}
	body.sp{background-image: url(../img/common/bg_pattern_sp.jpg);}
	body.sm{background-image: url(../img/common/bg_pattern_sm.jpg);}
	body.fl{background-image: url(../img/common/bg_pattern_fl.jpg);}
	body.wn{background-image: url(../img/common/bg_pattern_wn.jpg);}

	#wrapper {
		width: 375px;
		margin: 0 auto;
		background: #fff;
	}
	header ul{
		width: 375px;
		margin: 0 auto;
	}
	footer{
		width: 375px;
		margin: auto auto 0;
		background: #fff;
	}
	#nfBox footer{width: auto;}

#drawer,
#contents,
footer{transition: none;}

	#drawer{
		width: 450px;
		padding: 0 40px;
		margin-left: 0;
		left: 100vw;
		z-index: 9800;
		/*transition: left 0.5s ease-in-out;*/
		transform: translate3d(0, 0 ,0);

	}
	.open #drawer{
		margin-left: -225px;
		left: 50%
	}

	.open #contents,
	.open footer{
		-webkit-transform: none;
		transform: none;
	}
}

