html {overflow-y: scroll;}
body, div, dl, dt, dd, ul, ul li, h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, blockquote, th, td,
section, nav, article, hgroup, header, address,
figure, figcaption {
	margin: 0;
	padding: 0;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	min-width: 80%;
	margin: 0 1em 2em;
}
td{
	padding: 4px;
}

caption, th {
	text-align: left;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}
img, abbr, acronym, fieldset {
	border: 0;
}
img {
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}
ul li {
	list-style-type: none;
}

body {
	font-family: "lucida grande", tahoma, verdana, arial, "hiragino kaku gothic pro",meiryo,"ms pgothic",sans-serif;
	color: #555;
	font-size: 12px;
	line-height: 1.6;
	text-align: left;
	-webkit-text-size-adjust: 100%;
}

*:first-child+html body {
	font-family: 'メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}

* html body, .win body {
	font-family: 'メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}

a:link{color: #08c;}

html {
	-webkit-text-size-adjust: none;
}

img {
	max-width: 100%;
	height: auto;
	width /***/: auto; /* for ie8 */
}

#wrapper{
	width: 640px;
	margin: 0 auto;
}

header {
	width: 100%;
	color:#fff;
	position: relative;
	background-color:#366ed1;
}
header h1{
	font-size: 1.2em;
	padding: .5em 1em;
	display: block;
	margin: 0 auto;
	text-align: center;
}

header a#to_home{
	position: absolute;
	right: 0;
	bottom: 0;
	margin: 0 .5em .5em 0;
	padding: .3em .7em;
	background-color:#ff6666;
	text-align: right;
	display: block;
	color:#FFF;
	text-decoration: none;
	border-radius: 4px;
}
header a#to_home:hover{
	background-color:#f88;
}

p{
	padding: 0 .5em .5em;
}

footer {
	background-color:#EEE;
	color:#666;
	border-top:solid 1px #999;
	text-align:center;
	margin: 20px 0 0;
	padding: 1em 0;
}

.footer_link{
	text-align: center;
	padding: 0 .5em .5em;
}

.footer_link a{
	display: inline-block;
	padding: .2em;
}
#main_area{
	background-color:#FFF;
	padding: 0 20px;
}

.block{
	background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 1px rgba(0,0,0,.05);
  box-shadow: 0 1px 1px rgba(0,0,0,.05);
}

.block i{
	margin-right: .75em;
}

button.submit_button i{
	margin-right: 0;
	margin-left: .75em;
}

.block_body{
	padding: .8em;
}

#top_message{
	margin-top: 20px;
	border-color: #d6e9c6;
}

#main_area h2{
	font-size: 1.2em;
	padding: .8em .75em;
	color: #3c763d;
	background-color: #dff0d8;
	border-color: #d6e9c6;
}

.red{
	color:#F33;
}

#salon_block{
	margin-top: 20px;
  border-color: #faebcc;
}

#salon_block h2{
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}

.t_big td{
	font-size: 120%;
}

/* カレンダー */
#calendar_block{
	margin-top: 20px;
	border-color: #bce8f1;
}

#calendar_block h2{
	color: #31708f;
	background-color: #d9edf7;
	border-color: #bce8f1;
}

.calendar_body{
	width: 100%;
	max-width: 460px;
	margin: 0 auto;
}

/* カレンダー本体 */
.calendar{
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
	font-size:14px;
	border-collapse: collapse;
}
.calendar td {
	border: 1px solid #999;
	width: 13%;
	vertical-align: middle;
	font-weight:bold;
	color: #666;
	cursor: pointer;
	text-align: center;
}
.calendar td a,
.calendar td span{
	display: block;
	padding: 1em 0;
}
.calendar td.today{
	color:#99bb5f;
	font-size:16px;
	padding: .3em .6em;
	height: 2em;
	border: 4px solid #CCC;
}
.calendar td.sun{
	background-color:#ffe4e1;
}
.calendar td.sat{
	background-color:#f0ffff;
}
.calendar td.past_day{
	background-color:#EEE;
	opacity: 0.5;
}
.calendar td.sun p{
	color:#F33;
}
.calendar td.sat p{
	color:#2c4a8a;
}
.calendar td p.shukujitu{
	margin-top: 1em;
	font-size:12px;
}
.calendar td.yasumi{
	background-color:#FF6666;
	color: #FFF;
}
.calendar td a{
}
span.yasumi{
	background-color:#FF6666;
	color: #FFF;
	display: inline-block;
	cursor: pointer;
}
.calendar th {
	padding: .5em;
	border: 1px solid #999;
	background-color:#66cdaa;
	text-align: center;
	color: #FFF;
}
.calendar th.sun{
	background-color:#ff6666;
}
.calendar th.sat{
	background-color:#99ccff;
}
.calendar_pager{
	margin: 0 0 1em;
	text-align: center;
}

.calendar_pager li{
	width: 25%;
	display: inline-block;
	text-align:center;
	padding: .5em 0;
	font-size: 1.5em;
}

.calendar_pager li:nth-child(2){
	width: 45%;
}


.calendar_pager li i{
	padding: 0 .3em;
}

.calendar_pager li a{
	display: block;
}

.scroll{
	overflow: auto;
	white-space: nowrap;
	margin-bottom: .5em;
}
.scroll::-webkit-scrollbar{
	height: 8px;
}
.scroll::-webkit-scrollbar-track{
	background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb {
	background: #BCBCBC;
}

.scroll table{
	width: 100%;
	margin: 0;
	padding: 0;
}

.scroll table th{
	padding: 1em .5em;
	font-size: 0.9em;
	text-align: center;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
}

.scroll table td{
	padding: .1em 0;
	text-align: center;
	border-right: 1px solid #CCC;
}

.scroll table td.ok{
	font-size: 1.5em;
	color: #008000;
}

.scroll table td.ng{
	font-size: 2em;
	color: #f08080;
}



.menus{
	margin: 0;
}

.menus label{
	display: inline-block;
	padding: .8em 1em;
	margin-right: 1em;
	margin-bottom: 1em;
	background-color:#f6f7f8;
	border-radius: 4px;
}

.menus label span,
.select_menus span{
	font-size: 110%;
}


.menus label:hover {
  background-color: #e2edd7;
}

.menus label.highlight{
	background-color: #e2edd7;
}

#cut_option{
	display: none;
}

#notice{
	color:#F33;
	font-size: 1.2em;
	display: block;
	padding-top: .5em;
}

#cut_option p{
	font-size: 1.2em;
	padding: .8em .75em;
	color: #3c763d;
	background-color: #dff0d8;
	border-color: #d6e9c6;
	margin: 1em 0 0;
}

#cut_option label{
	display: inline-block;
	padding: .8em 1em;
	margin-right: 1em;
	margin-top: 1em;
	background-color: #f6f7f8;
	border-radius: 4px;
}

#cut_option input[type=radio]{
	margin-right: .5em;
}

.menus input[type=checkbox]{
	display: inline-block;
	margin-right: .3em;
	vertical-align: middle;
}

.submit_button{
	margin-top: 20px;
	padding: .5em 1em;
	margin-right: 2em;
}

a.submit_button{
	border: 1px solid #999;
	display: inline-block;
}

.error{
	font-weight:bold;
	color:#F33;
	padding: .5em;
}

.yoyaku_form{
	padding: 20px;
}

.yoyaku_form th,
.yoyaku_form td{
	padding: .5em;
}

.yoyaku_form select,
.yoyaku_form input{
	padding: .5em;
	border-radius: 4px;
	border: 1px solid #ccc;
}



.shadow{
	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.2), 0 1px 5px 0 rgba(0,0,0,0.12);
}

/* レスポンシブ */
@media(max-width:640px){
	
	#wrapper{
		max-width: 100%;
	}
	
	.calendar_pager li{
		font-size: 1.2em;
	}
	
	.calendar{
		font-size: 1em;
	}
	
	.calendar td a,
	.calendar td span{
		padding: .5em;
	}
	
	#salon_block th{
		width: 6em;
	}
	
	.menus label{
		margin-bottom: 1em;
	}
	
	.yoyaku_form th,
	.yoyaku_form td{
		display:block;
	}
}
