@charset "utf-8";

#salonmenu_h1 {
	background: url(../img/sub/salonmenu_h1.jpg) no-repeat;
}
#concept_h1 {
	background: url(../img/sub/concept_h1.jpg) no-repeat;
}
#access_h1 {
	background: url(../img/sub/access_h1.jpg) no-repeat;
}
#inquire_h1 {
	background: url(../img/sub/inquire_h1.jpg) no-repeat;
}

#salonmenu_h1, #concept_h1, #access_h1, #inquire_h1  {
	background-position: center center;
	height: 240px;
}
#salonmenu_h1 h1, #concept_h1 h1, #access_h1 h1, #inquire_h1 h1 {
	font-size: 72px;
	padding-top: 90px;
	margin-right: 18%;
	text-align: right;
}
#salonmenu_h1 h1 {
	color: #ffffff;
}
#privacy_h1, #sitemap_h1 {
	font-size: 45px;
	text-align: center;
	margin: 120px 0 9px 0;
}



.sub_h2 {
	text-align: center;
	margin: 27px 0 18px;
	display: flex;
	align-items: center;
}
.sub_h2:before, .sub_h2:after {
	border-top: 1px solid;
	content: "";
	flex-grow: 1;
}
.sub_h2:before {
	margin-right: 12px;
}
.sub_h2:after {
	margin-left: 12px;
}



/**********　Salon menu　**********/
#sub_salonmenu {
	width: 72%;
	margin: 0 auto;
}
#sub_salonmenu dl dd {
	border: none;
}
#sub_salonmenu .button_1 {
	line-height: 36px;
}


/**********　Concept　**********/
#sub_concept_section_1 {
	width: 100%;
	margin: 0 auto;
	background: #ffffff;
	height: auto;
}

.sub_concept_h2 {
	display: inline-block;
	width: 45%;
	vertical-align: top;
	margin-top: 6%;
	margin-right: 2%;
}
.sub_concept_h2 p {
	margin-bottom: 36px;
}
.sub_concept_section_img {
	display: inline-block;
	width: 51%;
	vertical-align: top;
}
.sub_concept_section_2_h2 {
	margin-bottom: 18%;
}

#sub_concept_section_3 {
	width: 100%;
	margin: 0 auto;
	background: #ffffff;
	height: auto;
}


/**********　Access　**********/
#sub_access {
	width: 72%;
	margin: 0 auto;
}
#sub_access dl dd {
	border: none;
}
#access_map {
	height: 400px;
}


/**********　Mail　**********/
#sub_inquire {
	width: 72%;
	margin: 0 auto;
}
select, input, textarea {
	border: none;
	line-height: 27px;
}
.fs18 {
	font-size: 18px;
}
.l_spacing {
	letter-spacing: 1px;
}
.w100per {
	width: 100%;
}
.imeon {
  ime-mode: active; /* 全角モード */
}
.imeoff {
  ime-mode: inactive; /* 半角モード */
}
.error {
	border: #9f517d solid 3px;
	padding: 6px 18px;
	line-height: 18px;
	margin: 18px 0;
}
.error_i {
	font-size: 12px;
	color: #9f517d;
	margin-right: 3px;
}
.inq_req::after {
	margin-left: 15px;
	font-size: 11px;
	content: "必須";
	color: #ffffff;
	background-color: #9f517d;
	border-radius: 2px;
	padding: 2px 9px;
	letter-spacing: 2px;
	vertical-align: top;
	font-weight: bolder;
}
.input_button {
	text-align: center;
	margin-top: 54px;
}
.input_button input {
	background: #111111;
	color: #ffffff;
	padding: 6px 36px;
}
.input_button input:hover {
	opacity: 1;
	background: #8a8a8a;
	transition: 0.3s linear;	
}

/**予約**/
#sub_booking h2{
	font-size: 26px;
}
#sub_booking .sub_h2 .active{
	background-color: #ededed;
}
.web_desc{
	display: block;
	font-size: 12px;
	margin-left: 20px;
	margin-top: 5px;
}
.sub_booking_detail{
	background-color: #ededed;
	margin-left: 10px;
	margin-right: 10px;
	border-left-color: #111111;
	border-left-style: solid;
	border-left-width: 6px;
	padding: 10px;
	margin-bottom: 20px;
	line-height: 1.5rem;
}
#calender {
	margin: auto;	
	margin-bottom: 30px;
	line-height: 1.7rem;
}
#calender th{
	background-color: #e5abcc;
	padding: 10px;
	border-color: #111111;
	border-style: solid;
	border-width: 1px;
	font-size: 20px;
}
#calender td{
	padding: 10px;
	font-size: 20px;
	text-align: center;
	border-color: #111111;
	border-style: solid;
	border-width: 1px;
	vertical-align: middle;
}
#calender tr:nth-child(even){
	background-color: #ededed;
}
.navi_area{
	text-align: center;
	margin:30px;
}
.navi_area button{
	display: inline-block;
	font-size: 27px;
	margin-left: 30px;
	margin-right: 30px;
	padding-top: 5px;
    padding-left: 10px;
    padding-right: 10px;
}
#calender .selected_date{
	box-shadow: 0 0 8px #ff0000;	
}
.a_btn1{
    font-size: 30px;
    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 50px;
    padding-right: 50px;
}


/**********　サイトマップ　**********/
.gnavi_pc_sitemap {
	position: fixed;
	z-index: 100;
	top: 0;
}
#sub_sitemap {
	width: 72%;
	margin: 0 auto;
	font-size: 27px;
	line-height: 45px;
}
.sitemap_i {
	margin-right: 12px;
}
#sitemap_submenu {
	font-size: 18px;
	line-height: 30px;
	margin-top: 45px;
}


/**********　プライバシーポリシー　**********/
.gnavi_pc_privacy {
	position: fixed;
	z-index: 100;
	top: 0;
}
#sub_privacy {
	width: 72%;
	margin: 0 auto;
}
#sub_privacy dl dd .privacy_i {
	margin-left: 18px;
	margin-right: 6px;
	line-height: 18px;
}


/*** media queries ***/
@media screen and (min-width: 751px) {
#sub_concept_section_2_sp {
	display: none;
}


}


@media screen and (max-width: 1000px) {
#sub_salonmenu {
	width: 100%;
}
#sub_privacy, #sub_sitemap {
	width: 100%;
}
#privacy_h1, #sitemap_h1 {
	font-size: 30px;
	margin: 110px 0 9px 0;
}






}


/*********************************************スマートフォン***********************************************/
@media screen and (max-width: 750px) {
#salonmenu_h1 {
	background-size: auto 100%;
	margin-top: 57px;
	height: 180px;
	background-position: -350px center;
}
#concept_h1, #access_h1, #inquire_h1 {
	background-size: auto 100%;
	margin-top: 57px;
	height: 210px;
}
#salonmenu_h1 h1, #concept_h1 h1, #access_h1 h1, #inquire_h1 h1 {
	font-size: 63px;
	padding-top: 81px;
	margin-right: 6%;
}

.sub_h2:before, .sub_h2:after {
	border-top: none;
	margin: 0 auto;
}


/**********　Access　**********/
#access_map {
	height: 360px;
}


/**********　Concept　**********/
#sub_concept_section_2_pc {
	display: none;
}
#sub_concept_section_2_sp {
	background: url(../img/sub/sub_section2_sp_bg.jpg) no-repeat;
	background-position: center top;
	border-bottom: 27px solid rgba(17, 17, 17, 0.7);
}
#sub_concept_section_2_sp .sub_concept_h2 {
	background: rgba(17, 17, 17, 0.7);
	width: 100vw;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	padding: 18px 36px 3px;
	margin-top: -36px;
	margin-bottom: 360px;
}
.sub_concept_h2 p, .sub_concept_h3 p {
	margin-top: -27px;
}
.sub_concept_h2 {
	display: block;
	width: 100%;
	text-align: center;
}
.sub_concept_section_img {
	display: block;
	width: 100%;
}



/**********　Mail　**********/
#sub_inquire {
	width: 100%;
}


/*予約フォーム*/
.navi_area{
	margin-left: 0px;
	margin-right: 0px;
}
#calender button,
.navi_area button{
	font-size: 13px;
	border-radius: 4px;
	background-color: #ededed;
}
#calender td,
#calender th{
	font-size: 13px;	
	padding-left: 2px;
	padding-right: 2px;
}
#calender {
	line-height: 1.2rem;
	width: 100%;
}
#calender button{
	font-size: 12px;
	padding: 1px;
}
#sub_booking .common_dl_1 dd{
	padding: 4px 6px !important;
}

}

@media screen and (max-width: 450px) {
#salonmenu_h1 {
	background-position: -350px center;
	height: 180px;
}
#access_h1 {
	background-position: -540px center;
	height: 180px;
}
#concept_h1, #inquire_h1 {
	background-position: -480px center;
	height: 180px;
}
#salonmenu_h1 h1, #concept_h1 h1, #access_h1 h1, #inquire_h1 h1 {
	font-size: 54px;
	padding-top: 63px;
}


/**********　Access　**********/
#access_map {
	height: 270px;
}


#sub_concept_section_2_sp {
	background-position: -250px -27px;
}
#sub_concept_section_2_sp .sub_concept_h2 {
	margin-top: 0;
	margin-bottom: 270px;
}





}

