@charset "utf-8";
@import 'https://fonts.googleapis.com/css?family=Halant';
/* ---------------------------------------------------------------------------------
Copyright 2014.HAIR CATALOG.JP ALL RIGHTS RESERVED.

HTML CSS Selectors brand

$Revision: 1.0 $
--------------------------------------------------------------------------------- */

#contents-wrapper {
	width: 100%;
	min-width: 1400px;
	padding-top: 0;
}


/*---------------------------------------------------------------------------------
一覧
--------------------------------------------------------------------------------- */
#contents-wrapper.list {
	padding-bottom: 165px;
}
/*ブランドヘッダー*/
#brand-header-wrapper {
	width: 100%;
	min-width: 1400px;
	padding-top: 80px;
	padding-bottom: 12px;
	position: relative;
	z-index: 2;
	
}
#brand-header-wrapper h1 {
	font-size: 12px;
	line-height: 1;
	color: #333;
	text-align: center;
	padding-top: 55px;
	padding-bottom: 35px;
}
#brand-header-wrapper h1 .en {
	display: block;
	font-family: 'Cinzel', serif;
	font-size: 26px;
	letter-spacing: 0.12em;
	padding-bottom: 18px;
}
#brand-header-wrapper nav {
	width: 100%;
	min-width: 1400px;
	background-color: #FFD9DA;
	text-align: center;
}
#brand-header-wrapper nav ul {
	width: 1200px;
	/*width: 710px;*/
	border-left: 1px solid #EECFCE;
	border-right: 1px solid #fff;
	margin: 0 auto;
	position: relative;
}
#brand-header-wrapper nav > ul:after {
	content: ""; 
	display: block;
	clear: both;
	height: 0;
}
#brand-header-wrapper nav ul li {
	width: 109px;
	float: left;
	position: relative;
	padding: 4px 0;
}
#brand-header-wrapper nav ul li a {
	display: block;
	padding: 4px 0px;
	font-family: 'Cinzel', serif;
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.12em;
	border-left: 1px solid #fff;
	border-right: 1px solid #EECFCE;
	color: #666;
}
#brand-header-wrapper nav ul li a:hover {
	opacity:0.5;
}

#brand-header-wrapper nav ul ul {
	width: 140px;
	border: none;
	position: absolute;
	top: 28px;
	left: 0;
	display: none;
}
#brand-header-wrapper nav ul ul li {
	border-top: 2px solid #fbe2e2;
	background-color: #FFD9DA;
}
#brand-header-wrapper nav ul ul li a {
	border: none;
}


.brand-area {
	width: 100%;
	min-width: 1400px;
	position: relative;
	padding-bottom: 90px;
	background-image: url(../images/brand/area_sep.jpg);
	background-repeat: repeat-x;
	background-position: center bottom;
}
.brand-area:last-child {
	padding-bottom: 0;
	background-image: none;
}
.brand-area h2 {
	padding-top: 60px;
	padding-bottom: 32px;
	font-family: 'Cinzel', serif;
	font-size: 22px;
	line-height: 1;
	letter-spacing: 0.12em;
	color: #333;
	text-align: center;
	background-image: url(../images/brand/line_sep.png);
	background-repeat: repeat-x;
	background-position: center bottom;
}
.brand-area h2 .anchor {
	display: block;
	position: relative;
	top: -160px;
}
.brand-area ul {
	width: 1060px;
	margin: 0 auto;
	padding: 40px 0 0px;
	overflow:hidden;
}
.brand-area ul li {
	width: 470px;
	padding: 0 30px 80px;
	float: left;
	position: relative;
}
.brand-area ul li:nth-of-type(2n+1) {
	clear: left;
}
.brand-area ul li a:hover {
	opacity:0.5;
}

.brand-area ul li .image {
	display: table;
}
.brand-area ul li .image .photo {
	display: table-cell;
	width: 235px;
}
.brand-area ul li .image .logo {
	display: table-cell;
	width: 235px;
	text-align: center;
	vertical-align: middle;
	background-color: #fff;
}

.brand-area ul li span {
	display: block;
}
.brand-area ul li .name {
	padding-top: 20px;
	padding-bottom: 15px;
	font-family: 'Halant', serif;
	font-size: 21px;
	line-height: 1;
	letter-spacing: 0.12em;
}
.brand-area ul li .tel {
	padding-bottom: 10px;
	font-size: 13px;
	line-height: 1;
}
.brand-area ul li .add {
	font-size: 13px;
}
.brand-area ul li .add a {
	display: inline-block;
	padding: 2px 15px 2px 7px;
	padding-left: 7px;
	padding-right: 15px;
	font-size: 9px;
	line-height: 1;
	color: #999;
	text-decoration: underline;
	background-image: url(../images/brand/icon_map_list.png);
	background-repeat: no-repeat;
	background-position: right top;
}
.brand-area ul li .btn {
	position: absolute;
	top: 180px;
	right: 30px;
}

.brand-area .sep {
	width: 100%;
	min-width: 1400px;
	height: 2px;
	background-image: url(../images/brand/line_sep.png);
	background-repeat: repeat-x;
	background-position: center bottom;
}
.brand-area .sep:last-child {
	display: none;
}




/*---------------------------------------------------------------------------------
詳細
--------------------------------------------------------------------------------- */
#brand-visual-area {
	padding-top: 80px;
	width: 100%;
	min-width: 960px;
	border-bottom: 1px solid #808080;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
#brand-visual-area #visual-block {
	position: relative;
}
#brand-visual-area  h2 {
	height: 220px;
	width: 200px;
	position: absolute;
	left: 30px;
	top: 50%;
	z-index: 3;
	margin-top: -110px;
}
#brand-visual-area #logo-slider span {
	display: block;	
}
#brand-visual-area #logo-slider img {
	display: block;
	float: left;
	height: 220px;
	width: 200px;
}

#brand-visual-area #visual-slider {
	position: relative;
	z-index: 2;
}
#brand-visual-area #visual-slider img {
	float: left;
	height: auto;
	width: 100%;
}

#brand-visual-area #logo-slider:after,
#brand-visual-area #visual-slider:after {
	content: ""; 
	display: block;
	clear: both;
	height: 0;
}

#contents-wrapper.info {
	padding-top: 55px;
}

#contents-wrapper.info nav {

}
#contents-wrapper.info nav ul {
  letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
  text-align: center;
}
#contents-wrapper.info nav ul.info {
	padding: 9px;
  border: 1px solid #CBCBCB;
  border-bottom: 1px solid #CBCBCB;
  letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
  text-align: center;
}
#contents-wrapper.info nav ul li {
	display: inline-block;
  letter-spacing: normal; /* 文字間を通常に戻す */
	color: #666;
	text-align: center;
	cursor: pointer;
}
#contents-wrapper.info nav ul li a {
  color: #666;
}
#contents-wrapper.info nav ul.info li {
	padding: 0px 44px;
	font-size: 14px;
	line-height: 1;
	font-weight: normal;
  border-left: 1px solid #CBCBCB;
}
#contents-wrapper.info nav ul.info li:last-child {
  border-right: 1px solid #CBCBCB;
}

#contents-wrapper.info nav ul li .icon {
  display: inline-block;
  padding-right: 10px;
  line-height: 1;
  position: relative;
}
#contents-wrapper.info nav ul li:nth-of-type(1) .icon {
    font-size: 14px;
    top: 2px;
}
#contents-wrapper.info nav ul li:nth-of-type(2) .icon {
    font-size: 17px;
    top: 3px;
}
#contents-wrapper.info nav ul li:nth-of-type(3) .icon {
    font-size: 18px;
    top: 3px;
}
#contents-wrapper.info nav ul li:nth-of-type(4) .icon {
    font-size: 18px;
    top: 3px;
}
#contents-wrapper.info nav ul li:nth-of-type(5) .icon {
    font-size: 20px;
    top: 0px;
}
#contents-wrapper.info nav ul li:hover {
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	text-decoration: none;
}

#contents-wrapper.info h3 {
  padding-top: 50px;
  padding-bottom: 38px;
  font-family: Cinzel, serif;
  font-size: 30px;
  line-height: 1;
  letter-spacing: 0.12em;
  text-align: center;
  color: #333;
}


#brand-info-column {
/*	width: 860px;
	margin-right: auto;
	margin-left: auto;	*/
}
#side-info-column {
	float: left;
	width: 100px;
	padding-left: 60px;
}
#side-info-column li {
	padding: 0px;
	margin-top: 0px;
	padding-bottom: 25px;
}
#side-info-column li a {
	display: block;
	padding-bottom: 15px;
	font-family: 'Cinzel', serif;
	font-size: 13px;
	line-height: 13px;
	font-weight: normal;
	color: #666;
}
#side-info-column li a:hover {
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	text-decoration: none;
}
#side-info-column ul li.current a {
	border-bottom: 1px solid #999999;
}


/*MAP*/
#access-block {
  width: 980px;
  margin: 0 auto;
}
#access-block .salon-wrap {
  padding-bottom: 80px;
  overflow:hidden;
}
#access-block .salon-wrap .detail {
  width: 350px;
  float: left;
}
#access-block .salon-wrap .map {
  width: 590px;
  float: right;
}
#access-block .salon-wrap .map iframe {
  width: 590px;
  height: 380px;
}
#access-block .salon-wrap .map p {
  padding-top: 15px;
  text-align: right;
	font-size: 15px;
	line-height: 1;
  color: #333;
}
#access-block .salon-wrap .map p a {
  font-family: 'Halant', serif;
  color: #333;
}

#access-block .detail h4 {
  padding-bottom: 10px;
  font-family: 'Halant', serif;
	font-size: 24px;
	line-height: 1;
	font-weight: normal;
	color: #666;
  letter-spacing: 0.12em;
}
#access-block .detail p {
	font-size: 14px;
	line-height: 22px;
	font-weight: normal;
	color: #666;
}
#access-block .detail p.reserve {
  padding-top: 24px;
}
#access-block .detail p.site {
  width: 178px;
  padding-top: 10px;
}
#access-block .detail a {
  display: block;
  background-color: #fff;
  position: relative;
  line-height: 1;
  color: #666;
}
#access-block .detail a:before {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  border-top: 1px solid #666;
  border-right: 1px solid #666;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#access-block .detail p.reserve a {
  height: 20px;
  padding: 15px 15px 13px 64px;
  font-size: 20px;
  font-weight: 200;
}
#access-block .detail p.reserve a .icon {
  display: block;
  width: 30px;
  height: 26px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 17px;
  margin: auto;
}
#access-block .detail p.reserve a:before {
  width: 8px;
  height: 8px;
  right: 19px;
}
#access-block .detail p.site a {
  height: 13px;
  padding: 11px 11px 9px 43px;
  font-family: 'Halant', serif;
  font-size: 15px;
}
#access-block .detail p.site a .icon {
  display: block;
  width: 15px;
  height: 15px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 17px;
  margin: auto;
  font-size: 15px;
}
#access-block .detail p.site a:before {
  width: 5px;
  height: 5px;
  right: 12px;
}
#access-block .detail p.photo {
  padding-top: 30px;
}
#access-block a:hover {
  opacity: 0.5;
}

/*MENU*/
#menu-block {
  width: 700px;
  margin: 0 auto;
  padding-bottom: 70px;
}
#contents-wrapper.info nav ul.menu {
  padding-bottom: 48px;
}
#contents-wrapper.info nav ul.menu li {
  padding: 4px 27px 4px;
  position: relative;
  font-family: 'Cinzel', serif;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.12em;
  color: #999;
	cursor: pointer;
  border-left: 1px solid #CBCBCB;
}
#contents-wrapper.info nav ul.menu li.current {
  color: #000;
}
#contents-wrapper.info nav ul.menu li:last-child {
  border-right: 1px solid #CBCBCB;
}

#menu-block .content_wrap3 ul {
  border-top: 1px solid #CBCBCB;
}
#menu-block .content_wrap3 li {
  padding: 17px 10px 17px 5px;
  border-bottom: 1px solid #CBCBCB;
	font-size: 15px;
	line-height: 1;
  position: relative;
}
#menu-block .content_wrap3 li span.name {
  display: inline-block;
  width: 320px;
}
#menu-block .content_wrap3 li span.price {
  display: inline-block;
  width: 160px;
  text-align: right;
}
#menu-block .content_wrap3 li span.desc {
	display: block;
  padding-top: 15px;
  font-size: 13px;
  line-height: 1.5;
}
#menu-block .content_wrap3 li span:empty {
  display: none;
}
#menu-block .content_wrap3 li a {
  display: block;
  width: 168px;
  height: 13px;
  padding: 12px 0px 8px 42px;
  background-color: #fff;
  font-size: 13px;
  line-height: 1;
  color: #666;
  position: absolute;
  top: 7px;
  right: 0;
}
#menu-block .content_wrap3 li a:before {
  width: 5px;
  height: 5px;
  right: 15px;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  border-top: 1px solid #666;
  border-right: 1px solid #666;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#menu-block .content_wrap3 li a .icon {
  display: block;
  width: 22px;
  height: 22px;
  padding: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 12px;
  margin: auto;
  font-size: 22px;
  line-height: 1;
}
#menu-block .content_wrap3 li a:hover {
  opacity: 0.5;
}
#menu-block .content_wrap3 p {
  padding-top: 46px;
  font-size: 13px;
}
#menu-block .content_wrap3 li a:not([href^="http"]) {
  display: none;
}

/*HAIR STYLE*/
#hairstyle-block .content_wrap2 {
  padding: 0px 70px 70px;
}
#grid-content {
	position: relative;
	padding-top: 15px;
	padding-bottom: 20px;
}
#grid-content:after {
	content: ""; 
	display: block;
	clear: both;
	height: 0;
}
#grid-content .item {
	float: left;
	margin-right: 20px;
	margin-bottom: 30px;
  position: relative;
}
#grid-content .item:nth-of-type(4n) {
	padding-right: 0px;
}
#grid-content .item > a {
	display: block;
	position: relative;
}
#grid-content .item > a img {
	display: block;
}
#grid-content .item > a span {
	display: block;
	height: 110px;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	text-align: center;
	padding-top: 90px;
	color: #454545;
	font-size: 14px;
	z-index: 2;
	background: rgba(256,256,256,0.7);
	filter: alpha(opacity=00);
	-moz-opacity:0;
	opacity:0;
}
#grid-content .item .count {
	width: 32px;
	height: 32px;
	padding-top: 8px;
	position: absolute;
	top: 183px;
	right: -1px;
	z-index: 2;
	font-family:'Lato';
	font-size: 12px;
	line-height: 1;
	color: #666;
	text-align: center;
	border-radius: 16px 16px 0px 0px;
	background-color: #fbe2e2;
	
}
#grid-content .item .count .icon {
	font-size: 16px;
	padding-bottom: 2px;
	display: block;
}
#grid-content .item .share-box {
  top: 147px;
}

#contents-wrapper.info nav ul.style {
  padding: 2px 0px 50px;
}
#contents-wrapper.info nav ul.style li {
  padding: 0px 30px 0px 23px;
  position: relative;
  font-family: 'Cinzel', serif;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.12em;
  color: #999;
	cursor: pointer;
}
#contents-wrapper.info nav ul.style li:before {
  display: block;
  width: 10px;
  height: 10px;
  border: 1px solid #999;
  content:"";
  position: absolute;
  top: 0;
  left: 0;
}
#contents-wrapper.info nav ul.style li:last-child {
  padding-right: 0;
}
#contents-wrapper.info nav ul.style li.current {
	color: #000;
}
#contents-wrapper.info nav ul.style li.current:before {
  border: 1px solid #666;
}
#contents-wrapper #pagenation {
	margin-right: 0px;
	margin-left: 0px;
}


/*STYLIST*/
#stylist-block {
  width: 1200px;
  margin: 0 auto;
}
#stylist-block h4 {
  padding-bottom: 15px;
  font-family: 'Halant', serif;
	font-size: 24px;
	line-height: 1;
	font-weight: normal;
	color: #666;
  letter-spacing: 0.12em;
}
#stylist-block ul {
  padding-bottom: 50px;
  overflow:hidden;
}
#stylist-block li {
  width: 270px;
  padding: 0 0 50px 40px;
  float: left;
}
#stylist-block li:nth-of-type(4n+1) {
  clear: left;
  padding-left: 0;
}
#stylist-block li span {
  display: block;
  padding-bottom: 14px;
  text-align: center;
  font-size: 16px;
  line-height: 1;
}
#stylist-block li .en {
  padding-top: 18px;
  padding-bottom: 12px;
  font-family: 'Cinzel', serif;
  font-size: 12px;
}
#stylist-block li img {
  width: 100%;
  height: auto;
}
#stylist-block li a.reserve {
  display: block;
  height: 13px;
  padding: 12px 0px 8px 60px;
  background-color: #fff;
  font-size: 13px;
  line-height: 1;
  color: #666;
  position: relative;
}
#stylist-block li a.reserve:before {
  width: 5px;
  height: 5px;
  right: 15px;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  border-top: 1px solid #666;
  border-right: 1px solid #666;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#stylist-block li a .icon {
  display: block;
  width: 22px;
  height: 20px;
  padding: 0;
  position: absolute;
  top: 0px;
  bottom: 0;
  left: 29px;
  margin: auto;
  line-height: 1;
}
#stylist-block li a:hover {
  opacity: 0.5;
}

