﻿@charset "UTF-8";

@media screen and (max-width : 768px) {
/* ==================================================
shared
================================================== */
body {
	-webkit-text-size-adjust:none;
	min-width:320px;
    font-size:85.7%;
}
input[type="submit"],
input[type="button"],
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="reset"] {
	-webkit-appearance:none; /* 変更しない */
	-webkit-border-radius:0; /* Webkit */
	-moz-border-radius:0; /* Mozilla */
	border-radius:0; /* CSS3 */
}
img {
	max-width:100%;
	height:auto;
}  
.container {
	min-width:320px !important;
	max-width:100%;
	width:auto !important;
	padding:10px;
}
/* main
============================== */
#main {
	padding:0 !important;
}
/* header
============================== */
#header_inner {
	background-size:700px 250px;
	min-width:320px !important;
}
#header_name {
	float:none;
	margin-right:200px;
}
#header_name p {
	margin-bottom:5px;
}
#header_name .shop,
#header_account p,
#header_navi p {
	font-size:85.7%;
}
#header_name .shop_name {
	font-size:114.3%;
}
#header_navi p {
	padding:3px;
	min-width:90px;
}
#header_navi p a {
	height:60px;
	padding:25px 5px 2px;
}
#header_navi p a::before {
	width:18px;
	height:18px;
	background-size:18px 18px;
}
.reserve #header_name {
	padding:15px 10px 5px;
}
.reserve #header_name p {
	display:table-cell;
	vertical-align:middle;
}
.reserve #header_name .shop {
	white-space:nowrap;
	padding:0 10px;
}
.reserve #header_name .shop_name {
	padding-left:10px;
}
/* progress_bar
============================== */
.progress_bar {
	margin:0 0 20px;
	font-size:85.7%;
}
.progress_bar li:last-child {
	padding-bottom:32px;
}
.progress_bar li span {
	display:none !important;
}
.progress_bar li.is-active span {
	display:inline-block !important;
}
/* footer
============================== */
footer {
	min-width:320px;
}
footer address {
	font-size:11px;
}
/* topcontrol
============================== */
#topcontrol {
	width:30px;
	height:90px;
	right:0 !important;
}
#topcontrol p {
	width:30px;
	height:90px;
	background-size:30px 90px;
}
/* ==================================================
contents
================================================== */
#main h1 {
	font-size:143%;
	padding:15px 15px 20px;
}
#main p {
	font-size:85.7%;
}
/* col2
============================== */
#main .col2L,
#main .col2R {
	width:100%;
	float:none;
}
/* stylist
============================== */
#stylist .box_stylist {
	width:33%;
	padding:0 5px 10px;
}
#stylist .box_stylist .inner {
	padding:10px 15px;
}
#stylist .box_stylist .name {
	font-size:114.3%;
}
#stylist .box_stylist .rank{
    height:20px;
}
#stylist .box_stylist .rank,
#stylist .box_stylist .kana {
	font-size:71.4%;
}
#stylist .box_stylist .text {
	font-size:71.4%;
}
#stylist .box_stylist .btn {
	font-size:85.7%;
}
/* menu
============================== */
#main #menu_table table td {
	font-size:85.7% !important;
}
#main #menu_table table .select {
	padding-left:5px;
	padding-right:5px;
}
#main #menu_table table .time,
#main #menu_table table .price {
	width:10%;
}
/* cal_table
============================== */
#main #cal_table {
	overflow: auto;
	white-space: nowrap;
	padding:10px 0;
}
#main #cal_table table td.timeL,
#main #cal_table table td.timeR {
	padding-left:5px;
	padding-right:5px;
}
/* line_tbl
============================== */
#main .line_tbl {
	margin:0 0 30px;
}
#main .line_tbl caption {
	font-size:100%;
}
#main .line_tbl th {
	width:100px;
	padding:10px 5px 5px 10px;
}
#main .line_tbl td {
	font-size:85.7%;
	padding:10px 10px 5px 10px;
}
#main table input[type='text'],
#main table input[type='tel'],
#main table input[type='email'],
#main table input[type='password'],
#main table textarea {
	width:96% !important;
}
#main table .col2 p label {
	padding:0 5px;
}
/* box_btn
============================== */
#contents .box_btn {
	padding:20px 5px;
}
#contents .box_btn p {
	min-width:45%;
	font-size:100%;
	margin:0 1%;
}
#contents .box_btn p span {
	padding:3px 0 1px 25px;
	background-size:15px 15px;
}
#contents .reserve_no_btn {
	min-width:240px;
	margin:0;
}
#contents .box_btn.long .submit {
	min-width:inherit;
}

}

@media screen and (max-width : 800px) {
/* box_msg
============================== */
#main .wrap_box_msg {
	padding:5px;
	text-align:left;
	margin:0 0 20px;
}
#main .box_msg {
	padding:20px 15px 5px;
}
#main .box_msg p {
	font-size:100%;
}


}

@media screen and (max-width : 480px) {
/* header
============================== */
#header_inner {
	padding-bottom:10px;
}
#header_name {
	margin-right:0;
	padding-bottom:0;
}
#header_navi {
	position: static;
}
#header_navi p {
	float:left;
	min-width:inherit;
	text-align:left;
}
#header_navi p a {
	display:block;
	min-width:130px;
	height: inherit;
	padding:10px 10px 10px 27px;
}
#header_navi p br {
	display:none;
}
#header_navi p a::before {
	left:5px;
	right:auto;
	top:0;
	bottom:0;
}
/* stylist
============================== */
#stylist .box_stylist {
	width:50%;
}
#stylist .box_stylist .inner {
	padding:7px 10px;
}
#stylist .box_stylist .name {
	font-size:114.3%;
}
#stylist .box_stylist .rank{
    height:20px;
}
#stylist .box_stylist .rank,
#stylist .box_stylist .kana {
	font-size:71.4%;
}
#stylist .box_stylist .text {
	font-size:85.7%;
}
#stylist .box_stylist .btn {
	font-size:85.7%;
}
}
