@charset "utf-8";

html, body, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p,
header, hgroup, section, article, aside, hgroup, footer, figure, figcaption, nav {
 margin: 0;
 padding: 0;
 font-size: 100%;
}

body {
 line-height: 1.0;
 -webkit-text-size-adjust: none;
}

article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary { 
 display:block;
}

ul, ol {
 list-style: none;
}
img {
 max-width : 100%;
 height:auto;
 vertical-align:bottom;
}

h1{margin:0px; text-decoration:none;}
h2{margin:0px;}
h3{margin:0px;}

.top-h{display:none;}

.font-b{font-weight:bold;}
.red{ color:#ff0000; }
.red-b{ color:#ff0000; font-weight:bold; }
.blue-b{color:#0000ff; font-weight:bold;}
.orange-b{color:#ff6600; font-weight:bold;}




/*=================================================
 * サイト全体の基本スタイル
 * ================================================= */

body {
 background-color: #fff;
 font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
 font-size: 17px;
 line-height: 1.6;
 color:#493333;
 padding: 0; 
}

a:link { color: #fa4c4c; } 
a:visited { color: #666666; } 
a:active { color: #ff0000; } 


/* ヘッダー */

.header{
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 80px;
  z-index:999;
}
.content-header{
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 80px;
  z-index:999;
  background-color: #f4efec;
}
.header_inner {
  position: relative;
  padding: 15px;
}
.logo{
  position: absolute;
  top: 0;
  left: 0;
  padding: 10px;
  z-index:111;
  height:80px;
}
.title{
  font-size: 20px;
  height:60px;
  padding:10px;
}
.header.change-color {
  background-color: #f5f4f5;
  animation-name: fadein-header;
  animation-duration: 2s;
}
.header.change-color a {
  color: #493333;
}

@media only screen and (max-width: 768px) {
  .header{
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 70px;
    z-index:999;
  }
  .header {
    background-color: #fff;
  }
  .title{
    width:100px;
  }
  
  .nav {
    position: fixed;
    right: -320px; /* 右から出てくる */
    top: 0;
    width: 300px; /* スマホに収まるサイズ */
    height: 100vh;
    padding-top: 60px;
    background-color: #493333;
    transition: all .6s;
    z-index: 200;
    overflow-y: auto; /* メニューが多くなったらスクロールできるように */
  }
  .hamburger {
    position: absolute;
    right: 15px;
    top: 8px;
    width: 40px; /* クリックしやすい幅 */
    height: 40px; /* クリックしやすい高さ */
    cursor: pointer;
    z-index: 300;
    background-color: #493333;
  }
  .nav_list {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .nav_item {
    text-align: center;
    padding: 0 14px;
    color: #fff;
  }
  .nav_item a {
    display: block;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
    text-decoration: none;
    color: #fff;
  }
  .nav_item a:hover {
    background-color: #493333;
  }
  .hamburger_border {
    position: absolute;
    left: 11px;
    width: 18px;
    height: 2px;
    background-color: #fff;
    transition: all .6s;
  }
  .hamburger_border_top {
    top: 14px;
  }
  .hamburger_border_center {
    top: 20px;
  }
  .hamburger_border_bottom {
    top: 26px;
  }
  .black_bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 100;
    background-color: #493333;
    opacity: 0;
    visibility: hidden;
    transition: all .6s;
    cursor: pointer;
  }
  /* 表示された時用のCSS */
  .nav-open .nav {
    right: 0;
  }
  .nav-open .black_bg {
    opacity: .8;
    visibility: visible;
  }
  .nav-open .hamburger_border_top {
    transform: rotate(45deg);
    top: 20px;
  }
  .nav-open .hamburger_border_center {
    width: 0;
    left: 50%;
  }
  .nav-open .hamburger_border_bottom {
    transform: rotate(-45deg);
    top: 20px;
  }

.header.change-color a {
  color: #fff;
}
}/* sp */

@media only screen and (min-width: 769px) {
  .header_inner{
    max-width: 1400px;
    width: 94%;
    padding: 30px 30px;
    margin-left: auto;
    margin-right: auto;
  }
  .logo{
    padding: 10px;
    width:140px;
  }

  .nav_list{
    text-align: right;
  }
  .nav_list li{
    display: inline-block;
    text-align: right;
    padding-left: 20px;
  }
  .nav_list li a{
    color: #493333;
    font-weight: 200;
    text-decoration:none;
  }
  .nav_list li a:hover{
    color: #ff9900;
    font-weight: 200;
    text-decoration:none;
  }

  .nav_item {
    text-align: center;
    padding: 0 14px;
  }
.content-header li a {
  color: #000;
}
}/* pc */






/* スマホ　start */

@media screen and (max-width: 768px) {

.main-contents {
 margin: 60px auto 0 auto;
 padding:0;
 width:100%;
 height:100%;
 background-color:#fff;
}

.top-wrapper {
	height:100%;
	min-height:240px;
	background-size:cover;
	position:relative;
	background-repeat:no-repeat;
}
.top-image.lazyloaded {
  background-image:url('../images/main-image-sp.jpg');
  animation-name: fadein-top;
  animation-duration: 2s;
}
.top-cp {
 width:80%;
 padding:0;
 min-width:200px;
 position:absolute;
 top:55%;
 left:50%;
 -webkit-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 text-align:center;
}
@keyframes fadein-header {
from {
  opacity: 0;
  transform: translateY(20px);
}
to {
  opacity: 1;
  transform: translateY(0);
}
}


.opening-staff {
 width:90%;
 margin: 60px auto ;
 padding: 10px;
 text-align:center;
 border:#e24d4d solid 2px;
 background:#faf3f3;
}
.opening-staff h2 {
  margin: 0 auto;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#e24d4d;
}

.opening-nav li {
  -moz-border-radius: 20px;    /* Firefox */
  -webkit-border-radius: 20px; /* Safari,Chrome */
  border-radius: 20px;
  background-color: #e66a6a; 
  text-align:center;
  width:300px;
  margin:20px auto;
}
.opening-nav a {
  -moz-border-radius: 20px;    /* Firefox */
  -webkit-border-radius: 20px; /* Safari,Chrome */
  border-radius: 20px;
  margin:0;
  padding: 10px;
  display: block;
  text-decoration: none;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color:#fff;
  font-size:16px;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.opening-staff p {
  margin: 20px 0 0 0;
  padding:0;
  font-size:16px;
  text-align:left;
}

.about-wrapper {
 width:90%;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
}
.about-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.about-left {
  width:100%;
  margin: 0 auto;
  padding: 0;
  text-align:left;
}
.about-right {
  width:100%;
  margin: 20px auto;
  padding: 0;
  text-align:center;
}
.about-left-concept {
  margin: 0;
  padding:0;
  font-size:16px;
  text-align:left;
  color:#8d7c7c;
  font-weight:bold;
}
.about-left h2 {
  margin: 20px 0 0 0;
  padding:0;
  font-size:22px;
  text-align:left;
  color:#493333;
}
.about-left p {
  margin: 30px 0 0 0;
  padding:0;
  font-size:16px;
  text-align:left;
  color:#333;
  line-height:2.0;
}

.about-wrapper p {
  margin: 30px 0 0 0;
  padding:0;
  font-size:16px;
  text-align:left;
}

.campaign-block {
 width:90%;
 margin: 60px auto ;
 padding: 10px;
 text-align:center;
 border:#f7ef13 solid 2px;
 background:#fbfad6;
}
.campaign-block h3 {
  margin: 0 auto;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#e24d4d;
}
.campaign-block p {
  margin: 20px auto;
  padding:0;
  font-size:17px;
  text-align:center;
}

.top-line-wrapper {
 width:94%;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
}
.top-line-wrapper:after {
 content: '';
 display: block;
 clear: both;
}

.top-line-wrapper h3 {
  margin: 30px auto 0 auto;
  padding:0;
  font-size:24px;
  text-align:center;
  color:#493333;
}
.top-line-wrapper p {
  margin: 20px auto;
  padding:0;
  font-size:17px;
  text-align:center;
}
.service-wrapper {
 width:90%;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
 font-size:0;
}
.service-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.service-wrapper h3 {
  margin: 30px auto 0 auto;
  padding:0;
  font-size:24px;
  text-align:center;
  color:#333;
}


.recommend-wrapper {
 width:90%;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
 font-size:0;
}
.recommend-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.recommend-wrapper h3 {
  margin: 30px auto 0 auto;
  padding:0;
  font-size:24px;
  text-align:center;
  color:#493333;
}
.recommend-image {
  margin: 20px auto;
  padding: 0;
  text-align:center;
  width:200px;
}
.recommend-image img {
  border-radius:20px;
}

.service-block {
  margin: 30px auto;
  padding: 0;
  text-align:center;
  width:90%;
}
.service-block p {
  margin: 20px auto 10px;
  padding: 0;
  text-align:center;
  font-size:17px;
  font-weight:bold;
  color:#333;
}

.news-wrapper {
 width:90%;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
}
.news-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.news-wrapper h3 {
  margin: 30px auto 0 auto;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#493333;
}

.news {
 margin: 30px auto;
 padding: 0;
 text-align:center;
 width:100%;
 max-width:1200px;
}
.news dl {
 padding: 10px 0;
 border-bottom: 1px solid #ccc;
 vertical-align:top;
}
.news dt {
 text-align:left;
}
.news dd {
 margin: 4px 0 0 0;
 text-align:left;
}


div#contents-maker-news * {
	margin: 0;
	padding: 0;
	box-sizing: content-box;
}

div#contents-maker-news div.cm-box {
	padding: 25px 0;
	border-bottom: 1px dotted #333333;
}

div#contents-maker-news dl dt {
	font-weight: bold;
	margin: 0 0 3px;
  text-align:left;
}

div#contents-maker-news dd {
	margin: 0 0 3px;
  text-align:left;
}

.tw-wrapper {
 margin: 60px auto ;
 padding: 30px 0 60px 0;
 text-align:center;
}
.tw-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.tw-block {
 width:90%;
 margin: 0 auto;
 padding: 0;
 text-align:center;
}
.tw-block:after {
 content: '';
 display: block;
 clear: both;
}
.tw-block p {
 margin: 0 auto;
 padding: 0;
 text-align:center;
}

.tw-icon {
  margin: 10px auto;
  padding: 0;
  text-align:center;
  width:70px;
}


.banner-wrapper {
  width:90%;
 margin: 60px auto ;
 padding: 0;
 text-align:center;
 font-size:0;
}
.banner-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.banner-box {
 width:100%;
 margin: 20px auto;
 padding: 0;
 text-align:center;
}

.global-footer {
 margin: 0px ;
 padding: 10px 10px 0 10px;
 background-color:#f5f4f4;
 font-size: 16px;
 text-align: center;
}

.copyright {
	margin: 0px auto 0px auto;
	font-size:13px;
	color:#333;
}
.copyright a {
	color:#333;
	text-decoration:none;
}
.footer-block {
  width:80%;
  margin: 10px auto;
  background-color:#f3f3f3;
  text-align:center;
}
.footer-block:after {
  content: '';
  display: block;
  clear: both;
}
.footer-logo {
  width:200px;
  margin: 20px auto;
  text-align:center;
  font-size:20px;
}

.footer-tel {
  margin: 20px auto;
  text-align:center;
  color:#493333;
  font-size:18px;
  font-weight:bold;
}
.footer-tel a {
  color:#493333;
  text-decoration:none;
}
.footer-time {
  margin: 0 auto;
  text-align:center;
  color:#493333;
  font-size:16px;
}

.fix_menu_smartphone{
  position: fixed;
  bottom: 0px;
  left: 0px;
  z-index: 10000;
  background:#fff;
  width:100%;
  font-size:0;
}

/* コンテンツ */
.content-wrapper {
 width:94%;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
}
.content-wrapper:after {
 content: '';
 display: block;
 clear: both;
}


.content-title {
 width:100%;
 margin: 0 auto ;
 padding: 30px 0 20px 0;
 text-align:center;
 background:#493333;
}
.content-title h1 {
  margin: 0 auto;
  padding:0;
  font-size:24px;
  text-align:center;
  color:#fff;
}


.content-block {
 margin: 100px auto ;
 padding: 0;
 text-align:center;
}
.content-block:after {
 content: '';
 display: block;
 clear: both;
}
.content-block h2 {
  margin: 0;
  padding:0;
  font-size:20px;
  text-align:left;
  color:#333;
}
.content-block p {
  margin: 20px 0 0 0;
  padding:0;
  font-size:16px;
  text-align:left;
}



.therapist-wrap {
 margin: 30px auto ;
 padding: 0;
 text-align:center;
 font-size:0;
}
.therapist-wrap:after {
 content: '';
 display: block;
 clear: both;
}
.therapist-box {
  margin: 40px auto;
  padding:0 ;
  text-align:center;
  width:80%;
}
.therapist-image {
  margin: 0 auto;
  padding:0 ;
  text-align:center;
}
.therapist-name {
  margin: 10px auto 0;
  padding:0 ;
  text-align:center;
  color:#493333;
  font-size:18px;
  font-weight:bold;
}
.therapist-size {
  margin: 0px auto;
  padding:0 ;
  text-align:center;
  color:#493333;
  font-size:16px;
}

.content-block-image {
  margin: 20px auto;
  padding:0 ;
  text-align:center;
  width:300px;
}


.therapist-detail-wrap {
 margin: 30px auto ;
 padding: 0;
 text-align:center;
 width:90%;
}
.therapist-detail-wrap:after {
 content: '';
 display: block;
 clear: both;
}
.therapist-detail-left {
  margin: 0;
  padding:0 ;
  text-align:center;
}
.therapist-detail-left img {
  margin: 0 auto;
  padding:0 ;
  text-align:center;
  width:240px;
}
.therapist-detail-right {
  margin: 20px auto;
  padding:0 ;
  text-align:left;
}
.therapist-detail-right h2 {
  margin: 0;
  text-align:left;
  color:#493333;
  font-size:18px;
}
.therapist-detail-right p {
  margin: 20px 0 0 0;
  text-align:left;
  font-size:16px;
}

.therapist-detail-schedule {
 margin: 0px auto ;
 padding: 30px 0 0 0;
 text-align:center;
 width:100%;
}
.therapist-schedule-table {
  border: 1px solid #999;
  border-collapse: collapse;
  width: 90%;
  margin: 30px auto ;
  font-size:15px;
}
.therapist-schedule-table thead {
  display: none;
}
.therapist-schedule-table th {
  display: block;
  padding:5px;
}
.therapist-schedule-table td {
  display: block;
  text-align: right;
  border-bottom:1px solid #999;
  padding:5px;
}
.therapist-schedule-table td:last-child {
  display: block;
  text-align: right;
  border-bottom:none;
  padding:5px;
}
.therapist-schedule-table td::before {
  content: attr(data-label);
  float: left;
  font-weight: bold;
}

.therapist-back li {
  -moz-border-radius: 20px;    /* Firefox */
  -webkit-border-radius: 20px; /* Safari,Chrome */
  border-radius: 20px;
  background-color: #e66a6a; 
  text-align:center;
  width:300px;
  margin:60px auto;
}
.therapist-back a {
  -moz-border-radius: 20px;    /* Firefox */
  -webkit-border-radius: 20px; /* Safari,Chrome */
  border-radius: 20px;
  margin:0;
  padding: 10px;
  display: block;
  text-decoration: none;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color:#fff;
  font-size:16px;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}


.price-block {
 margin: 30px auto ;
 padding: 0;
 text-align:center;
}
.price-block:after {
 content: '';
 display: block;
 clear: both;
}
.price-block h3 {
  margin: 0;
  padding:0;
  font-size:18px;
  text-align:left;
  color:#333;
  color:#493333;
}
.price-block p {
  margin: 20px 0 0 0;
  padding:0;
  font-size:16px;
  text-align:left;
}

.price-course {
  margin: 60px auto 0;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#493333;
  font-weight:bold;
  display:block;
}
.price-table {
  border-collapse: collapse;
  width: 98%;
  margin:10px auto ;
  text-align:center;
}
.price-table th {
  background-color: #f1f0ef;
  padding: 15px;
  border: 1px solid #999;
  border-bottom:dotted #999 1px;
  text-align: center;
  display:block;
}
.price-table td {
  padding: 15px;
  border: 1px solid #999;
  border-top:none;
  text-align:center;
  display:block;
  margin:0 0 30px 0;
}


.manual-block {
 width:90%;
 margin: 60px auto ;
 padding: 0;
 text-align:center;
}
.manual-block:after {
 content: '';
 display: block;
 clear: both;
}
.manual-block h2 {
  margin: 0;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#493333;
  border-bottom:1px #ccc solid;
}
.manual-image-block {
 width:90%;
 margin: 10px auto;
 padding: 0;
 text-align:center;
}
.manual-text-block {
 margin: 10px 0 0 0;
 padding: 0;
 text-align:left;
}
.manual-text-block p {
  margin: 16px 0 0 0;
  padding:0;
  text-align:left;
}
.manual-next {
  margin: 20px auto;
  padding:0;
  text-align:center;
  width:120px;
}

.manual-rule-block {
 width:90%;
 margin: 120px auto ;
 padding: 0;
 text-align:center;
}
.manual-rule-block:after {
 content: '';
 display: block;
 clear: both;
}
.manual-rule-block h3 {
  margin: 0;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#493333;
}
.manual-rule-block p {
  margin: 16px 0 0 0;
  padding:0;
  text-align:left;
}

ul.manual-rule li {
  list-style-type: disc;
  margin: 12px 0 0 20px;
  padding:0;
  font-size:16px;
  text-align:left;
}


.recruit-wrapper {
	height:100%;
	min-height:240px;
	background-size:cover;
	position:relative;
	background-repeat:no-repeat;
}
.recruit-image.lazyloaded {
  background-image:url('../recruit/images/recruit-main-sp.jpg');
  animation-name: fadein-top;
  animation-duration: 2s;
}
.recruit-cp {
 width:60%;
 padding:0;
 min-width:200px;
 position:absolute;
 top:50%;
 left:60%;
 -webkit-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 text-align:center;
}

.recruit-wrapper {
	height:100%;
	min-height:300px;
  margin: 0 auto;
  text-align:center;
	background-size:cover;
	position:relative;
	background-repeat:no-repeat;
}
.recruit-image.lazyloaded {
	background-image:url('../recruit/images/recruit-main-sp.jpg');
 animation-name: fadein-top;
 animation-duration: 2s;
}
.recruit-cp {
 width:60%;
 padding:0px;
 min-width:200px;
 position:absolute;
 top:50%;
 left:60%;
 -webkit-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 text-align:center;
}



.recruit-block {
 width:90%;
 margin: 60px auto ;
 padding: 0;
 text-align:center;
}
.recruit-block:after {
 content: '';
 display: block;
 clear: both;
}
.recruit-block h1 {
  margin: 0;
  padding:0;
  font-size:24px;
  text-align:center;
  color:#493333;
}
.recruit-block p {
  margin: 20px auto;
  padding:0;
  font-size:16px;
  text-align:center;
}

.recruit-detail-block {
 width:100%;
 margin: 60px auto ;
 padding: 0;
 text-align:center;
}
.recruit-detail-block:after {
 content: '';
 display: block;
 clear: both;
}
.recruit-detail-block h3 {
  margin: 0;
  padding:0;
  font-size:20px;
  text-align:left;
  color:#e56eaa;
}
.recruit-detail-block p {
  margin: 10px 0 0 0;
  padding:0;
  font-size:17px;
  text-align:left;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.recruit-line {
 margin: 60px auto ;
 padding: 0;
 text-align:center;
 line-height:2.0;
}
.recruit-boshu-block {
 margin: 60px auto ;
 padding: 0;
 text-align:center;
}
.recruit-boshu-block:after {
 content: '';
 display: block;
 clear: both;
}

.recruit-boshu-block h2 {
  margin: 0 auto 10px;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#493333;
}
.recruit-boshu-block dl{
  flex-flow: column;
}
.recruit-boshu-block dt {
flex-basis: 15%;
padding: 10px;
background-color: #f1f1f1;
border-top: 1px solid #ccc;
}
.recruit-boshu-block dd {
flex-basis: 80%;
padding: 10px;
background-color: #fff;
text-align:left;
margin:0 0 30px 0;
}

.recruit-icon-wrap {
 margin: 10px auto;
 padding: 0;
 text-align:center;
 font-size:0;
}
.recruit-icon-wrap:after {
 content: '';
 display: block;
 clear: both;
}
.recruit-icon {
  margin: 0 10px;
  padding: 0;
  text-align:center;
  width:60px;
  display:inline-block;
}
.contact-table {
  border-collapse: collapse;
  width: 90%;
  margin:40px auto;
  text-align:center;
}
.contact-table td {
  padding: 5px;
  text-align:left;
  color:#333;
  display:block;
  margin-bottom:30px;
}
.contact-table th {
  padding: 5px;
  text-align: center;
  color:#333;
  display:block;
}
input, select, textarea {
font-size: 100%;
}

 .waku-long{width:100%;}
 .waku1{width:100%;}
 .waku-min{width:100px;}
.submit-block {
 margin: 40px auto;
 text-align:center;
 font-size:16px;
}
.submit-block p {
 margin: 40px auto;
 text-align:center;
 font-size:16px;
}
.submit {
 margin: 20px 0 0 0;
 text-align:center;
}

.submit-button {
  display       : inline-block;
  font-size     : 16px;
  text-align    : center;
  padding       : 8px 20px;
  background    : #493333; 
  color         : #fff;
  line-height   : 1em;
  transition    : .3s;
  border:none;
}
}
/* スマホ　end */



/* PC　start */
@media screen and (min-width: 769px) {


.main-contents {
 margin: 0 auto 0px auto;
 padding:0;
 width:100%;
}

.top-wrapper {
	height:100%;
	min-height:800px;
  margin: 0 auto;
  text-align:center;
	background-size:cover;
	position:relative;
	background-repeat:no-repeat;
}
@media screen and (max-width: 1024px) {
.top-wrapper {
	height:100%;
	min-height:500px;
	background-attachment: fixed;
	background-size:contain;
	position:relative;
}
}
.top-image.lazyloaded {
	background-image:url('../images/main-image.jpg');
 animation-name: fadein-top;
 animation-duration: 2s;
}
.top-cp {
 width:40%;
 padding:0px;
 min-width:300px;
 position:absolute;
 top:50%;
 left:38%;
 -webkit-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 text-align:center;
}
@media screen and (max-width: 1024px) {
.top-cp {
 width:50%;
 padding:0px;
 position:absolute;
 top:20%;
 left:70%;
 -webkit-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 text-align:center;
}
}




@keyframes fadein-header {
from {
    opacity: 0;
    transform: translateY(0px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}

.opening-staff {
 width:50%;
 margin: 60px auto ;
 padding: 10px;
 text-align:center;
 border:#e24d4d solid 2px;
 background:#faf3f3;
}
.opening-staff h2 {
  margin: 0 auto;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#e24d4d;
}

.opening-nav li {
  -moz-border-radius: 20px;    /* Firefox */
  -webkit-border-radius: 20px; /* Safari,Chrome */
  border-radius: 20px;
  background-color: #e66a6a; 
  text-align:center;
  width:300px;
  margin:20px auto;
}
.opening-nav a {
  -moz-border-radius: 20px;    /* Firefox */
  -webkit-border-radius: 20px; /* Safari,Chrome */
  border-radius: 20px;
  margin:0;
  padding: 10px;
  display: block;
  text-decoration: none;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color:#fff;
  font-size:16px;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.opening-nav a:hover {
  -moz-border-radius: 20px;    /* Firefox */
  -webkit-border-radius: 20px; /* Safari,Chrome */
  border-radius: 20px;
  margin:0;
  padding: 10px;
  display: block;
  text-decoration: none;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color:#fff;
  font-size:16px;
  background-color:#d44848;
}
.opening-staff p {
  margin: 20px 0 0 0;
  padding:0;
  font-size:16px;
  text-align:left;
}

.about-wrapper {
 width:80%;
 min-width:960px;
 max-width:1400px;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
}
.about-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.about-left {
  width:60%;
  margin: 0;
  padding: 0;
  text-align:left;
  float:left;
}
.about-right {
  width:40%;
  margin: 0;
  padding: 0;
  text-align:right;
  float:right;
}
.about-left-concept {
  margin: 0;
  padding:0;
  font-size:20px;
  text-align:left;
  color:#8d7c7c;
  font-weight:bold;
}
.about-left h2 {
  margin: 20px 0 0 0;
  padding:0;
  font-size:30px;
  text-align:left;
  color:#493333;
}
.about-left p {
  margin: 30px 0 0 0;
  padding:0;
  font-size:16px;
  text-align:left;
  color:#333;
  line-height:2.0;
}

.about-wrapper p {
  margin: 30px 0 0 0;
  padding:0;
  font-size:16px;
  text-align:left;
}

.campaign-block {
 width:50%;
 margin: 60px auto ;
 padding: 10px;
 text-align:center;
 border:#f7ef13 solid 2px;
 background:#fbfad6;
}
.campaign-block h3 {
  margin: 0 auto;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#e24d4d;
}
.campaign-block p {
  margin: 20px auto;
  padding:0;
  font-size:17px;
  text-align:center;
}
.top-line-wrapper {
 width:80%;
 min-width:960px;
 max-width:1400px;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
}
.top-line-wrapper:after {
 content: '';
 display: block;
 clear: both;
}

.top-line-wrapper h3 {
  margin: 30px auto 0 auto;
  padding:0;
  font-size:24px;
  text-align:center;
  color:#493333;
}
.top-line-wrapper p {
  margin: 20px auto;
  padding:0;
  font-size:17px;
  text-align:center;
}


.recommend-wrapper {
 width:90%;
 min-width:960px;
 max-width:1400px;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
 font-size:0;
}
.recommend-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.recommend-wrapper h3 {
  margin: 30px auto 0 auto;
  padding:0;
  font-size:24px;
  text-align:center;
  color:#493333;
}
.recommend-image {
  margin: 20px auto;
  padding: 0;
  text-align:center;
  width:200px;
}
.recommend-image img {
  border-radius:20px;
}




.service-wrapper {
 width:90%;
 min-width:960px;
 max-width:1400px;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
 font-size:0;
}
.service-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.service-wrapper h3 {
  margin: 30px auto 0 auto;
  padding:0;
  font-size:24px;
  text-align:center;
  color:#493333;
}

.service-block {
  margin: 20px 20px ;
  padding: 0;
  text-align:center;
  width:28%;
  display:inline-block;
}

.news-wrapper {
 width:100%;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
}
.news-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.news-wrapper h3 {
  margin: 30px auto 0 auto;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#493333;
}

.news {
 margin: 30px auto;
 padding: 0;
 text-align:center;
 width:70%;
 max-width:1200px;
}
.news dl {
 padding: 10px 0;
 border-bottom: 1px solid #ccc;
 vertical-align:top;
}
.news dt {
 clear: left;
 float: left;
 width: 10%;
 text-align:left;
}
.news dd {
 margin-left: 24%;
 text-align:left;
}


div#contents-maker-news * {
	margin: 0;
	padding: 0;
	box-sizing: content-box;
}


div#contents-maker-news div.cm-box {
	padding: 20px 0;
	border-bottom: 1px dotted #333333;
}

div#contents-maker-news dl dt {
	font-weight: bold;
	margin: 0 0 3px;
  text-align:left;
}

div#contents-maker-news dd {
	margin: 0 0 3px;
  text-align:left;
}


.tw-wrapper {
 margin: 60px auto ;
 padding: 30px 0 60px 0;
 text-align:center;
}
.tw-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.tw-block {
 width:60%;
 min-width:960px;
 margin: 0 auto;
 padding: 0;
 text-align:center;
}
.tw-block:after {
 content: '';
 display: block;
 clear: both;
}
.tw-block p {
 margin: 0 auto;
 padding: 0;
 text-align:center;
}

.tw-icon {
  margin: 10px auto;
  padding: 0;
  text-align:center;
  width:70px;
}


.global-footer {
 margin: 0px ;
 padding: 10px;
 background-color:#f5f4f4;
 font-size: 16px;
 text-align: center;
}


.banner-wrapper {
  width:90%;
 margin: 60px auto ;
 padding: 30px 0 60px 0;
 text-align:center;
 font-size:0;
}
.banner-wrapper:after {
 content: '';
 display: block;
 clear: both;
}
.banner-box {
 width:250px;
 margin: 20px auto;
 padding: 0;
 text-align:center;
 display:inline-block;
}


.copyright {
	margin: 0px auto 0px auto;
	font-size:13px;
	color:#333;
}
.copyright a {
	color:#333;
	text-decoration:none;
}
.footer-block {
  width:80%;
  margin: 10px auto;
  background-color:#f3f3f3;
  text-align:center;
}
.footer-block:after {
  content: '';
  display: block;
  clear: both;
}
.footer-logo {
  width:200px;
  margin: 20px auto;
  text-align:center;
  font-size:20px;
}

.footer-tel {
  margin: 20px auto;
  text-align:center;
  color:#493333;
  font-size:18px;
  font-weight:bold;
}
.footer-tel a {
  color:#493333;
  text-decoration:none;
}
.footer-time {
  margin: 0 auto;
  text-align:center;
  color:#493333;
  font-size:16px;
}


/* コンテンツ */

.content-title {
 width:100%;
 margin: 100px auto ;
 padding: 30px 0 30px 0;
 text-align:center;
 background:#493333;
}
.content-title h1 {
  margin: 0 auto;
  padding:0;
  font-size:24px;
  text-align:center;
  color:#fff;
}



.content-wrapper {
 width:80%;
 min-width:960px;
 max-width:1400px;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
}
.content-wrapper:after {
 content: '';
 display: block;
 clear: both;
}

.content-block {
 width:90%;
 margin: 100px auto ;
 padding: 0;
 text-align:center;
}
.content-block:after {
 content: '';
 display: block;
 clear: both;
}
.content-block h2 {
  margin: 0;
  padding:0;
  font-size:20px;
  text-align:left;
  color:#333;
}
.content-block p {
  margin: 20px 0 0 0;
  padding:0;
  font-size:16px;
  text-align:left;
}

.therapist-wrap {
 margin: 30px auto ;
 padding: 0;
 text-align:center;
 font-size:0;
}
.therapist-wrap:after {
 content: '';
 display: block;
 clear: both;
}
.therapist-box {
  margin: 40px 20px;
  padding:0 ;
  text-align:center;
  vertical-align:top;
  width:240px;
  display:inline-block;
}
.therapist-image {
  margin: 0 auto;
  padding:0 ;
  text-align:center;
}
.therapist-name {
  margin: 10px auto 0;
  padding:0 ;
  text-align:center;
  color:#493333;
  font-size:18px;
  font-weight:bold;
}
.therapist-size {
  margin: 0px auto;
  padding:0 ;
  text-align:center;
  color:#493333;
  font-size:16px;
}



.therapist-detail-wrap {
 margin: 30px auto ;
 padding: 0;
 text-align:center;
 width:70%;
 max-width:1200px;
}
.therapist-detail-wrap:after {
 content: '';
 display: block;
 clear: both;
}
.therapist-detail-left {
  margin: 0;
  padding:0 ;
  text-align:left;
  width:35%;
  float:left;
}
.therapist-detail-left img {
  margin: 0;
  padding:0 ;
  text-align:left;
  width:240px;
}
.therapist-detail-right {
  margin: 0;
  padding:0 ;
  text-align:left;
  width:65%;
  float:left;
}
.therapist-detail-right h2 {
  margin: 0;
  text-align:left;
  color:#493333;
  font-size:18px;
}
.therapist-detail-right p {
  margin: 20px 0 0 0;
  text-align:left;
  font-size:16px;
}

.therapist-detail-schedule {
  clear: both;
 margin: 30px auto ;
 padding: 30px 0 0 0;
 text-align:center;
 width:100%;
}
.therapist-schedule-table {
  border-top: 1px solid #999;
  border-right: 1px solid #999;
  border-collapse: collapse;
  width: 100%;
  margin: 30px auto ;
}
.therapist-schedule-table th,
.therapist-schedule-table td {
  border-left: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 5px;
  font-size:14px;
  text-align: center;
}
.therapist-schedule-table th {
  background-color: #eae5e1;
  color: #493333;
  text-align: center;
  font-size:14px;
}



.therapist-back li {
  -moz-border-radius: 20px;    /* Firefox */
  -webkit-border-radius: 20px; /* Safari,Chrome */
  border-radius: 20px;
  background-color: #e66a6a; 
  text-align:center;
  width:300px;
  margin:60px auto;
}
.therapist-back a {
  -moz-border-radius: 20px;    /* Firefox */
  -webkit-border-radius: 20px; /* Safari,Chrome */
  border-radius: 20px;
  margin:0;
  padding: 10px;
  display: block;
  text-decoration: none;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color:#fff;
  font-size:16px;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.therapist-back a:hover {
  -moz-border-radius: 20px;    /* Firefox */
  -webkit-border-radius: 20px; /* Safari,Chrome */
  border-radius: 20px;
  margin:0;
  padding: 10px;
  display: block;
  text-decoration: none;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color:#fff;
  font-size:16px;
  background-color:#d44848;
}



.price-block {
 margin: 30px auto ;
 padding: 0;
 text-align:center;
}
.price-block:after {
 content: '';
 display: block;
 clear: both;
}
.price-block h3 {
  margin: 0;
  padding:0;
  font-size:18px;
  text-align:left;
  color:#493333;
}
.price-block p {
  margin: 20px 0 0 0;
  padding:0;
  font-size:16px;
  text-align:left;
}

.price-table {
  border-collapse: collapse;
  width: 700px;
  margin:20px auto ;
  text-align:center;
}

.price-course {
  margin: 60px auto 0;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#493333;
  font-weight:bold;
  display:block;
}
.price-table th {
  background-color: #f1f0ef;
  padding: 16px;
  border: 1px solid #999;
  text-align: center;
  width: 50%;
  font-size:17px;
}
.price-table td {
  padding: 16px;
  border: 1px solid #999;
  text-align:right;
  font-size:17px;
  width: 50%;
}

.manual-block {
 width:90%;
 margin: 60px auto ;
 padding: 0;
 text-align:center;
}
.manual-block:after {
 content: '';
 display: block;
 clear: both;
}
.manual-block h2 {
  margin: 0;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#493333;
  border-bottom:1px #ccc solid;
}
.manual-image-block {
 width:35%;
 margin: 10px 0 0 0;
 padding: 0;
 text-align:left;
 float:left;
}
.manual-text-block {
 width:65%;
 margin: 10px 0 0 0;
 padding: 0;
 text-align:left;
 float:right;
}
.manual-text-block p {
  margin: 16px 0 0 0;
  padding:0;
  text-align:left;
}
.manual-next {
  margin: 20px auto;
  padding:0;
  text-align:center;
  width:120px;
}

.manual-rule-block {
 width:90%;
 margin: 120px auto ;
 padding: 0;
 text-align:center;
}
.manual-rule-block:after {
 content: '';
 display: block;
 clear: both;
}
.manual-rule-block h3 {
  margin: 0;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#493333;
}
.manual-rule-block p {
  margin: 16px 0 0 0;
  padding:0;
  text-align:left;
}

ul.manual-rule li {
  list-style-type: disc;
  margin: 12px 0 0 20px;
  padding:0;
  font-size:16px;
  text-align:left;
}




.recruit-wrapper {
	height:100%;
	min-height:800px;
  margin: 0 auto;
  text-align:center;
	background-size:cover;
	position:relative;
	background-repeat:no-repeat;
}
.recruit-image.lazyloaded {
	background-image:url('../recruit/images/recruit-main.jpg');
 animation-name: fadein-top;
 animation-duration: 2s;
}
.recruit-cp {
 width:60%;
 padding:0px;
 min-width:300px;
 position:absolute;
 top:50%;
 left:60%;
 -webkit-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 text-align:center;
}



.recruit-block {
 width:80%;
 margin: 60px auto ;
 padding: 0;
 text-align:center;
}
.recruit-block:after {
 content: '';
 display: block;
 clear: both;
}
.recruit-block h1 {
  margin: 0;
  padding:0;
  font-size:24px;
  text-align:center;
  color:#493333;
}
.recruit-block p {
  margin: 20px auto;
  padding:0;
  font-size:16px;
  text-align:center;
}

.recruit-detail-block {
 width:100%;
 margin: 60px auto ;
 padding: 0;
 text-align:center;
}
.recruit-detail-block:after {
 content: '';
 display: block;
 clear: both;
}
.recruit-detail-block h3 {
  margin: 0;
  padding:0;
  font-size:20px;
  text-align:left;
  color:#e56eaa;
}
.recruit-detail-block p {
  margin: 10px 0 0 0;
  padding:0;
  font-size:17px;
  text-align:left;
}
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}


.recruit-boshu-block {
 margin: 60px auto ;
 padding: 0;
 text-align:center;
}
.recruit-boshu-block:after {
 content: '';
 display: block;
 clear: both;
}
.recruit-line {
 margin: 60px auto ;
 padding: 0;
 text-align:center;
 line-height:2.0;
}
.recruit-boshu-block h2{
  margin: 0 auto 10px;
  padding:0;
  font-size:20px;
  text-align:center;
  color:#493333;
}
.recruit-boshu-block dl{
  display: flex;
  flex-flow: row wrap;
  width: 100%;
}
.recruit-boshu-block dt {
flex-basis: 15%;
padding: 10px;
background-color: #f1f1f1;
border-top: 1px solid #ccc;
}
.recruit-boshu-block dd {
flex-basis: 80%;
padding: 10px;
background-color: #fff;
border-top: 1px solid #ccc;
text-align:left;
}
.recruit-icon-wrap {
 margin: 0;
 padding: 0;
 text-align:center;
 font-size:0;
}
.recruit-icon-wrap:after {
 content: '';
 display: block;
 clear: both;
}
.recruit-icon {
  margin: 0 5px;
  padding: 0;
  text-align:center;
  width:60px;
  display:inline-block;
}


.contact-table {
  border-collapse: collapse;
  width: 90%;
  margin:40px auto;
  text-align:center;
}
.contact-table td {
  padding: 5px;
  vertical-align:middle;
  text-align:left;
  color:#333;
}
.contact-table th {
  padding: 5px;
  text-align: center;
  vertical-align:middle;
  width: 18%;
  color:#333;
}
input, select, textarea {
font-size: 100%;
}
@media only screen and (min-width : 768px){
 .waku-long{width:30%;}
 .waku1{width:100%;}
 .waku-min{width:50px;}
}
.submit-block {
 margin: 40px auto;
 text-align:center;
 font-size:16px;
}
.submit-block p {
 margin: 40px auto;
 text-align:center;
 font-size:16px;
}
.submit {
 margin: 20px 0 0 0;
 text-align:center;
}

.submit-button {
  display       : inline-block;
  font-size     : 16px;
  text-align    : center;
  padding       : 8px 20px;
  background    : #493333; 
  color         : #fff;
  line-height   : 1em;
  transition    : .3s;
  border:none;
}
.submit-button:hover {
  color         : #fff;
  background    : #e56eaa;
}
}
/* PCメイン　end */







.contents-navi {
margin: 0;
padding: 2px;
text-align:left;
font-size:12px;
}
/* リスト */
ol.topic-path {
margin: 0; /* マージン（上下左右） */
padding: 2px 5px; /* パディング（上下、左右） */
list-style-type: none; /* リストマーク非表示 */
font-size: 13px; /* 文字サイズ */
color: #493333;
}
/* リスト項目 */
ol.topic-path li {
padding-left: 2px; /* 左パディング */
display: inline; /* 項目を横並び */
}
/* リスト項目（最初の項目） */
ol.topic-path li.first {
padding-left: 0px; /* 左パディング */
}
/* リンクエリア */
ol.topic-path li a {
padding-right: 15px; /* 右パディング */
}
/* リンク色 */
ol.topic-path li a {
color: #493333;
}
/* リンク色（マウスオーバー） */
ol.topic-path li a:hover {
color: #ff9900;
}

