@charset "UTF-8";

@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomoon.eot?m6hxal');
  src:  url('../fonts/icomoon.eot?m6hxal#iefix') format('embedded-opentype'),
    url('../fonts/icomoon.ttf?m6hxal') format('truetype'),
    url('../fonts/icomoon.woff?m6hxal') format('woff'),
    url('../fonts/icomoon.svg?m6hxal#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}

/* Body
--------------------------------*/
body {
	font-family: "Hiragino Mincho ProN", "游明朝", serif;
}

body:before {
	background: #8e1152;
	background: linear-gradient(#8e1152, #d4a5be);
}

body:after {
	z-index: 10000;
	box-shadow: 0 -1px #8e1152 inset;
	background: #fff;
}

/* Table
--------------------------------*/
th,
td {
	padding: 12px;
	border-width: 0 0 1px;
}

th {
	font-weight: normal;
}

/* Heading
--------------------------------*/
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	font-family: inherit;
}

.entry-title {
	border-color: #8e1152;
	border-width: 0 0 2px;
	font-weight: normal;
	font-size: 1.875em;
}

article h2 {
	border-bottom: 1px solid #9c722b;
	font-size: 1.625em;
}

article h2:before {
	margin-right: 10px;
	color: #9c722b;
	font-family: icomoon;
	content: "\e900";
}

.entry-content section > h2 {
	margin-top: 0;
}

.card-title:before {
	content: none;
}

/* Footer
--------------------------------*/
.site-footer {
	background: #8e1152;
	background: linear-gradient(#8e1152, #a54378);
	color: #fff;
}

.follow-us a,
.footer-copyright {
	color: inherit;
}

.back-to-top {
	background: #fff;
	color: #8e1152;
}

/* Content
--------------------------------*/
.entry-content {
	font-family: inherit;
}

.link {
	text-align: center;
}

.btn,
input[type="submit"] {
	display: inline-block;
	-webkit-appearance: none;
	appearance: none;
	position: relative;
	box-shadow: none;
	max-width: 100%;
	min-width: 300px;
	padding: 10px;
	border: 0;
	background: #8e1152;
	background: linear-gradient(#8e1152, #a54378);
	color: #fff;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
}

.btn:after {
	position: absolute;
	right: 10px;
	font-family: FontAwesome;
	content: "\f105";
}

/* Home
--------------------------------*/
.salon-info th {
	white-space: nowrap;
}

.no-image:after {
	top: 15px;
	right: 15px;
	bottom: 15px;
	left: 15px;
	height: auto;
	opacity: .4;
	background: url(/wp-content/uploads/2016/08/logo.svgz) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

.google-map > iframe {
	height: 360px;
}

/* Treatment
--------------------------------*/
.service-menu-block {
	position: relative;
	margin: 40px 0;
	padding: 20px;
	border: 2px solid;
	border-image: url(../images/border.svgz) 60/60px round;
	background: #fef9f9;
	background: url(../images/deco_flower.svgz) no-repeat right 22px bottom 22px #fef9f9;
	background-clip: content-box;
	color: #9c722b;
}

.service-menu-block:before {
	position: absolute;
	top: -15px;
	right: 0;
	left: 0;
	width: 234px;
	height: 78px;
	margin: auto;
	content: url(../images/ribbon.svgz);
}

.service-menu-block > figcaption {
	margin: 40px 25px 0;
	border-bottom: 1px solid;
	font-family: "Great Vibes", serif;
	font-size: 50px;
	text-align: center;
}

.service-menu-block p {
	margin: 0 40px 160px 0;
	color: #000;
	text-align: right;
}

.service-name {
	display: block;
	font-size: 20px;
	text-transform: lowercase;
}

.service-menu-list {
	list-style: none;
	overflow: hidden;
	margin: 0 50px 20px;
	padding: 0;
	font-size: 1.125em;
}

.service-menu-list > li {
	display: table;
	float: left;
	clear: both;
	width: 45%;
	margin-top: 20px;
}

.service-menu-list > li:nth-child(2n) {
	float: right;
	clear: none;
}

.service-menu-list > li > span {
	display: table-cell;
}

.service-menu-name > small {
	display: inline-block;
}

.service-menu-fee {
	text-align: right;
	white-space: nowrap;
}

.service-menu-time {
	display: inline-block;
	font-size: .85em;
}


/* School
--------------------------------*/
h3.leasson-title {
	margin-bottom: 10px;
	font-size: 1.375em;
}

.lesson-data {
	overflow: hidden;
	margin: 0 0 0 45px;
	color: #8e1152;
}

.lesson-data > dt {
	float: left;
	font-weight: normal;
}

.lesson-data > dt:after {
	content: "：";
}

.lesson-data > dd {
	overflow: hidden;
	padding: 0;
}

.lesson-description {
	margin-left: 45px;
	font-size: .875em;
}

.lesson-description > p {
	margin: 0;
}

/* Therapist
--------------------------------*/
.certificate-area {
	float: left;
	width: 46.875%;
	margin-top: 20px;
}

.skill-area {
	float: right;
	width: 46.875%;
	margin-top: 20px;
}

.link-area {
	clear: both;
}

.certificate-list,
.skill-list,
.link-list {
	list-style: none;
	padding: 0;
}

.certificate-list > li,
.skill-list > li {
	position: relative;
	margin: 10px 0;
	padding-left: 1.5em;
}

.certificate-list > li:before,
.skill-list > li:before {
	position: absolute;
	left: 0;
	color: #e9d1dd;
	content: "■";
}

.skill-list > li:before {
	color: #ddcfb6;
}

.link-list > li {
	margin: 10px 0;
}

/* Contact
--------------------------------*/
.wpcf7-form {
	display: block;
	max-width: 500px;
	margin: auto;
}

.form-group {
	margin-bottom: 30px;
}

.form-group .wpcf7-form-control-wrap {
	display: block;
	padding-top: 10px;
	border-top: 1px solid #8e1152;
}

.wpcf7-text,
.wpcf7-textarea {
	width: 100%;
}

.acceptance,
.submit {
	margin-top: 20px;
	text-align: center;
}

/* Social
--------------------------------*/
.follow-us,
.share-buttons {
	font-family: Roboto, sans-serif;
}

@media screen and (max-width: 960px) {
	.service-menu-list {
		margin-right: 30px;
		margin-left: 30px;
	}
	
	.service-menu-fee {
		line-height: 1.2;
		white-space: normal;
	}
	
	.service-menu-time {
		display: block;
	}
}

@media screen and (max-width: 767px) {
	.front-content-area img.alignright  {
		display: block;
		float: none;
		max-width: 100%;
		margin: auto;
	}
	
	.service-menu-block {
		padding: 10px;
		background-image: none;
	}
	
	.service-menu-block > figcaption {
		margin-right: 10px;
		margin-left: 10px;
		font-size: 38px;
	}
	
	.service-menu-list {
		margin: 0 10px 20px;
		font-size: 1em;
	}
	
	.service-menu-list > li,
	.service-menu-list > li:nth-child(2n) {
		float: none;
		width: 100%;
	}
	
	.lesson-data,
	.lesson-description {
		margin-left: 20px;
	}
	
	.certificate-area,
	.skill-area {
		float: none;
		width: auto;
	}
}