@charset "UTF-8";
/* CSS Document */
@import url(https://fonts.googleapis.com/earlyaccess/roundedmplus1c.css);
@import url(https://fonts.googleapis.com/earlyaccess/hannari.css);
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);
.wf-roundedmplus1c {
  font-family: "Rounded Mplus 1c";
}

.wf-hannari {
  font-family: "Hannari";
}

.wf-sawarabimincho {
  font-family: "Sawarabi Mincho";
}

.disno {
  display: none;
}

@media screen and (max-width: 640px) {
  .pc {
    display: none;
  }
}
@media screen and (min-width: 640px) {
  .sp {
    display: none;
  }
}
@media only screen and (max-width: 640px) {
  .annai_read,
  .schedule_read,
  .facial_read,
  .profile_read,
  .lympa_read,
  .medical_read,
  .price_read,
  .contact_read {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
    margin-left: 0.5em !important;
    margin-right: 0.5em !important;
  }
}
/*　タグ指定　START　*/
body {
  font-family: "Lucida Grande", "segoe UI", "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", Meiryo, Arial, sans-serif;
  /*letter-spacing: -0.8px;*/
  background-color: #527306;
}

/*　タグ指定　END　  */
/*　共通設定　START　*/
/* ---------- 要素が画面内に入ったらフェードイン START ---------- */
.fadein {
  opacity: 0.1;
  transform: translate(0px, 150px);
  transition: all 500ms;
}

.fadein.scrollin {
  opacity: 1;
  transform: translate(0px, 0px);
}

.fade_effect .fadein:nth-of-type(2) {
  -moz-transition-delay: 200ms;
  -webkit-transition-delay: 200ms;
  -o-transition-delay: 200ms;
  -ms-transition-delay: 200ms;
}

.fade_effect .fadein:nth-of-type(3) {
  -moz-transition-delay: 400ms;
  -webkit-transition-delay: 400ms;
  -o-transition-delay: 400ms;
  -ms-transition-delay: 400ms;
}

/* ---------- 要素が画面内に入ったらフェードイン END ---------- */
.b {
  font-weight: bold !important;
}

.c {
  text-align: center !important;
}

.l {
  text-align: left   !important;
}

.n {
  font-weight: normal !important;
}

.fn {
  font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
}

.mtop0 {
  margin-top: 0 !important;
}

.mtop0h {
  margin-top: 0.5em !important;
}

.mtop1 {
  margin-top: 1em   !important;
}

.mtop1h {
  margin-top: 1.5em !important;
}

.mtop2 {
  margin-top: 2em   !important;
}

.mtop2h {
  margin-top: 2.5em !important;
}

.mtop3 {
  margin-top: 3em   !important;
}

.mtop4 {
  margin-top: 4em   !important;
}

.mbtm0 {
  margin-bottom: 0     !important;
}

.mbtm0h {
  margin-bottom: 0.5em !important;
}

.mbtm1 {
  margin-bottom: 1em   !important;
}

.mbtm1h {
  margin-bottom: 1.5em !important;
}

.mbtm2 {
  margin-bottom: 2em   !important;
}

.mr0h {
  margin-right: 0.5em !important;
}

.mr1 {
  margin-right: 1em !important;
}

.mr1h {
  margin-right: 1.5em !important;
}

.ml0h {
  margin-left: 0.5em !important;
}

.ml1 {
  margin-left: 1em !important;
}

.ml1h {
  margin-left: 1.5em !important;
}

.sage1 {
  padding-left: 1em !important;
}

.sage1-0h {
  padding-left: 1em;
  text-indent: -0.5em !important;
}

.sage1-1 {
  padding-left: 1em;
  text-indent: -1em !important;
}

.sage2 {
  padding-left: 2em !important;
}

.sage2-0h {
  padding-left: 2em;
  text-indent: -0.5em !important;
}

.sage2-1 {
  padding-left: 2em;
  text-indent: -1em !important;
}

.sage2-1h {
  padding-left: 2em;
  text-indent: -1.5em !important;
}

.sage2-2 {
  padding-left: 2em;
  text-indent: -2em !important;
}

.f140 {
  font-size: 140% !important;
}

.f130 {
  font-size: 130% !important;
}

.f120 {
  font-size: 120% !important;
}

.f110 {
  font-size: 110% !important;
}

.f90 {
  font-size: 90% !important;
}

.f80 {
  font-size: 80% !important;
}

.f70 {
  font-size: 70% !important;
}

.f60 {
  font-size: 60% !important;
}

.c_red {
  color: #c20994 !important;
}

.bodywrap {
  background-color: white;
}

/*　共通設定　END　*/
/*　ヘッダ　START　*/
header.index {
  position: relative;
}

header.pagetop {
  position: relative;
  height: 150px;
  border-bottom: 1px solid #8cc209;
  background-size: cover;
  background-image: url(../img/headback.jpg);
  background-repeat: no-repeat;
  background-position: center center;
}

@media screen and (max-width: 640px) {
  header.pagetop {
    position: relative;
    height: 240px;
    border-bottom: 1px solid #8cc209;
  }
}
.pagetopline {
  height: 5px;
  background-color: #8cc209;
}

.indexbtn {
  position: absolute;
  top: -5px;
  right: 5px;
  z-index: 100;
  position: fixed;
}

.indexlogo {
  position: absolute;
  top: 222px;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 2;
  background-image: url(../img/indexlogo.png);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 0;
  width: 410px;
  height: 410px;
  width: 85%;
  max-width: 380px;
  background-size: contain;
}

@media screen and (max-width: 420px) {
  .indexlogo {
    /*
    		width: 98%;
    		background-size: contain;
    */
  }
}
.index_h1 {
  position: absolute;
  top: 24%;
  left: 50%;
  width: 14em;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  /*	padding-top: 23%;	*/
  color: #5e5e5e;
  font-weight: normal;
  font-size: 75%;
}

.pagetoplogo {
  position: absolute;
  top: 80px;
  left: 130px;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 2;
}
.pagetoplogo .pagetop_h1 {
  color: #5e5e5e;
  font-weight: normal;
  font-size: 80%;
  vertical-align: top;
}
.pagetoplogo .pagetop_h1 a img {
  /*				width: 100%;	*/
  max-width: 228px;
}
.pagetoplogo .pagetop_h1 a:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
}
.pagetoplogo .pagetop_h1 .pagetop_cap {
  position: absolute;
  top: 46px;
  display: inline-block;
  text-align: left;
  left: 370px;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.pagetoplogo .pagetop_h1 .pagetop_cap p {
  text-align: left;
}

@media screen and (max-width: 640px) {
  .pagetoplogo {
    position: absolute;
    top: 120px;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 2;
  }
  .pagetoplogo .pagetop_h1 .pagetop_cap {
    position: absolute;
    top: 125px;
    display: inline-block;
    text-align: center;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  .pagetoplogo .pagetop_h1 .pagetop_cap p {
    text-align: center;
  }
}
@media screen and (max-width: 340px) {
  .index_h1 {
    top: 20%;
  }
}
/*　ヘッダ　END　*/
/*　メニュー　START　*/
.indexbtn .navibtn {
  background: transparent;
  /*
  	margin: 0;
  	padding: 0;
  */
  font-size: 110%;
  line-height: 150%;
  white-space: nowrap;
  vertical-align: baseline;
  text-decoration: none;
}

.indexbtn nav {
  /*	max-width: 1180px;	*/
  height: 80px;
  margin: 0px auto;
  display: -webkit-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
}

.indexbtn ul {
  display: -webkit-flex;
  display: flex;
  display: none;
  list-style: none;
  font-size: 80%;
}

.indexbtn ul li a {
  color: #FFF;
  margin: 0px 10px;
  padding: 0.4em 0.5em;
  border-radius: 5px;
}

.indexbtn .nav_icon,
.indexbtn .nav_icon span {
  /*	display: none;	*/
}

.indexbtn .name {
  color: #FFF;
  font-size: 24px;
  display: inline-block;
  position: absolute;
  top: 11px;
  left: 55px;
  line-height: 1;
}

.indexbtn .nav_icon {
  /*	width: 36px;	*/
  min-width: 9em;
  height: 48px;
  margin-right: 0px;
  position: relative;
  cursor: pointer;
  background-color: #8cc209;
  border-radius: 5px;
  border: 1px solid #FFF;
  padding: 5px;
}

.indexbtn .nav_icon:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
}

.indexbtn .nav_icon:hover::before {
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
}

.indexbtn .nav_icon .nav_line {
  background: white;
  position: absolute;
  left: 0;
  /*	width: 100%;	*/
  width: 36px;
  height: 4px;
}

.indexbtn .nav_icon span:nth-of-type(1) {
  top: 9px;
  left: 10px;
}

.indexbtn .nav_icon span:nth-of-type(2) {
  top: 21px;
  left: 10px;
}

.indexbtn .nav_icon span:nth-of-type(3) {
  bottom: 9px;
  left: 10px;
}

.indexbtn .nav_icon.active span:nth-of-type(1) {
  -webkit-transform: translateY(12px) rotate(-45deg);
  transform: translateY(12px) rotate(-45deg);
}

.indexbtn .nav_icon.active span:nth-of-type(2) {
  display: none;
}

.indexbtn .nav_icon.active span:nth-of-type(3) {
  -webkit-transform: translateY(-12px) rotate(45deg);
  transform: translateY(-12px) rotate(45deg);
}

/*
@media only screen and (max-width: 700px) {
*/
/*
header {
		position: relative;
		z-index: 999;
	}
*/
/*
.indexbtn .name {
		margin: 0 auto;
}
*/
.indexbtn ul {
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  background: rgba(140, 194, 9, 0.94);
  border-radius: 5px;
  border: 1px solid #FFF;
  position: absolute;
  top: 70px;
  left: -143px;
  /*	width: 100%;	*/
  z-index: 900;
}

.indexbtn ul li {
  padding: 2px 2px;
  text-align: left;
}

.indexbtn ul li a {
  display: block;
  background: transparent;
  margin: 0px;
  padding: 0.4em 0.5em;
  transition: all .3s;
}

.indexbtn ul li a:hover {
  color: #8cc209;
  background: #fff;
}

.indexbtn .nav_icon,
.indexbtn .nav_icon .nav_line {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
  z-index: 900;
}

/*	}	*/
/*　メニュー　END　*/
/*　slide swiper　START　*/
.swiper-slide {
  width: 100%;
  height: 500px;
  position: relative;
}

.sw01 {
  background-image: url(../img/slide/p_01.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.sw02 {
  background-image: url(../img/slide/p_02.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.sw03 {
  background-image: url(../img/slide/p_03.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.sw_txt {
  color: #FFF;
  position: absolute;
  top: 85%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 90%;
}

.sw_txt p {
  text-align: center;
  font-size: 150%;
  text-shadow: 1px 1px 1px black;
  z-index: 99;
  line-height: 130%;
}

@media only screen and (max-width: 405px) {
  .swiper-slide .sw_txt {
    top: 77%;
  }
}
@media only screen and (max-width: 420px) {
  .sw_txt p {
    font-size: 150%;
    z-index: 99;
  }
}
/*　slide swiper　END　*/
/*　コンテンツ　START　*/
h2 {
  color: white;
  background-color: #8cc209;
  text-align: center;
  font-weight: normal;
  padding: 0.8em 0 0.7em;
  font-size: 170%;
  line-height: 100%;
}
h2 span {
  display: block;
  font-size: 60%;
}

h3 {
  color: #6d9908;
  font-size: 170%;
  line-height: 100%;
  padding-left: 0.2em;
  padding-bottom: 0.2em;
  font-weight: normal;
  border-bottom: #8cc209 solid 1px;
}

@media only screen and (max-width: 800px) {
  h3 {
    padding-top: 70px;
  }
}
h4 {
  color: #FFF;
  background: #8cc209;
  font-size: 110%;
  line-height: 100%;
  padding: 0.5em;
  font-weight: normal;
  border-bottom: #8cc209 solid 1px;
  border-radius: 5px 5px 0 0 / 5px 5px 0 0;
}

h5 {
  color: #6d9908;
  line-height: 100%;
  padding: 0.5em;
  font-weight: normal;
  border-bottom: #8cc209 solid 1px;
  border-radius: 5px 5px 0 0 / 5px 5px 0 0;
}

h6 {
  color: #6d9908;
  line-height: 100%;
  font-weight: normal;
}

.contents {
  max-width: 980px;
  margin-top: 2em;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
}

.tadori {
  margin-bottom: 1.5em;
  color: #5e5e5e;
}
.tadori a {
  text-decoration: underline;
  color: #5e5e5e;
}
.tadori a:hover {
  text-decoration: none;
}

.cont_btmline {
  margin-bottom: 4em;
  border-top: solid 1px #8cc209;
}

/*　コンテンツ　END　*/
/*　新着情報　START　*/
.fbox {
  display: -webkit-flex;
  display: flex;
}

.infoimg {
  margin-right: auto;
}

.infotxt {
  width: 100%;
  margin-left: 2em;
}
.infotxt span {
  margin-right: 1em;
}
.infotxt p {
  margin-bottom: 1em;
  padding-left: 1em;
  border-bottom: 1px solid #c8c8c8;
  font-size: 90%;
}
.infotxt p span {
  font-size: 80%;
}
.infotxt a {
  text-decoration: underline;
}
.infotxt a:hover {
  color: #8cc209;
}

@media only screen and (max-width: 800px) {
  .infoimg {
    display: none;
  }

  .infotxt {
    margin-left: 0;
  }
}
/*　新着情報　END　*/
/*　トップページ用案内　START　*/
.topguide {
  margin-top: 2em;
  padding: 2em 0;
  background: #e1e6d5;
}
.topguide .topguidetitle {
  text-align: center;
  padding: 1em 1em 0;
  color: #8cc209;
  font-size: 140%;
}
.topguide .topguideback {
  border-radius: 5px;
  background-color: white;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.topguide .topguideback .topguideimg {
  display: inline-block;
  margin: 1em;
  -webkit-flex: 1;
  /*			flex: 1;	*/
  width: 270px;
  text-align: center;
  transition: 0.3s;
}
.topguide .topguideback .topguideimg div {
  width: 270px;
  height: 269px;
  display: inline-block;
  overflow: hidden;
  border-radius: 50%;
  position: relative;
}
.topguide .topguideback .topguideimg img {
  transition: 0.3s;
}
.topguide .topguideback .topguideimg p.imgcap {
  position: absolute;
  top: 55%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.topguide .topguideback .topguideimg p.imgcap span {
  display: block;
  color: white;
  line-height: 150%;
  transition: 0.2s;
}
.topguide .topguideback .topguideimg p.imgcap .t01 {
  font-size: 130%;
  width: 240px;
}
.topguide .topguideback .topguideimg p.cap {
  font-size: 80%;
  color: #5e5e5e;
  width: 60%;
  margin: 0 auto;
  transition: 0.3s;
}
.topguide .topguideback .topguideimg:hover > div img {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  transform: scale(1.2);
}
.topguide .topguideback .topguideimg:hover > .cap {
  color: #8cc209;
}
.topguide .topguideback .topguideimg:hover > div p span {
  font-size: 130%;
}

@media only screen and (max-width: 1030px) {
  .topguideback {
    margin-left: 1em;
    margin-right: 1em;
  }
}
/*　トップページ用案内　END　*/
/*　ご案内ページ用　START　*/
.annai {
  background-image: url(../img/annai_back.jpg);
  background-repeat: repeat;
  background-position: center top;
  padding-top: 1em;
  padding-bottom: 2em;
}
.annai .annai_title_top {
  text-align: center;
  padding: 1em 1em 0;
  color: #8cc209;
  font-size: 140%;
}
.annai .annaiguideback {
  border-radius: 5px;
  background-color: white;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 980px;
  width: 90%;
}
.annai .annaiguideback .topguidediv {
  display: inline-block;
  margin: 1em;
  -webkit-flex: 1;
  /*			flex: 1;	*/
  width: 270px;
  text-align: center;
  transition: 0.3s;
}
.annai .annaiguideback .topguidediv img {
  width: 270px;
  height: 269px;
  display: inline-block;
  overflow: hidden;
  border-radius: 50%;
  position: relative;
}
.annai .annai_txt_btm {
  max-width: 980px;
  padding: 0 1em 1em;
  font-size: 100%;
  color: #5e5e5e;
}

.annai_fbox .annai_read {
  margin: 1em 2em;
  padding: 0.5em;
}
.annai_fbox .annai_read p {
  color: #5e5e5e;
}
.annai_fbox .annai_read .bf_txt {
  color: #6d9908;
}
.annai_fbox .annai_read .bf_fbox {
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.annai_fbox .annai_read .bf_fbox .bf_parts {
  display: inline-block;
  margin: 1em;
  -webkit-flex: 1;
  flex: 1;
  text-align: left;
  justify-content: center;
  /* 3 */
  align-items: center;
  transition: 0.3s;
}
.annai_fbox .annai_read .bf_fbox .bf_parts img {
  width: 100%;
}
.annai_fbox .annai_read .bf_fbox .bf_parts p {
  color: #6d9908;
}
.annai_fbox .annai_read .bf_txt_btm {
  margin-top: 2em;
  color: #8cc209;
  font-size: 120%;
}

@media only screen and (max-width: 800px) {
  .annai_fbox .annai_read p {
    margin-bottom: 1em;
  }
  .annai_fbox .annai_read .bf_txt {
    text-align: left;
  }
  .annai_fbox .annai_read .bf_fbox .bf_parts {
    flex: none;
  }
  .annai_fbox .annai_read .bf_fbox .bf_parts p {
    margin-bottom: 0;
  }
  .annai_fbox .annai_read .bf_fbox .imgbox {
    text-align: center;
    max-width: 418px;
    width: 100%;
  }
  .annai_fbox .annai_read .bf_txt_btm {
    text-align: center;
  }
}
/*　ご案内ページ用　END　*/
/*　レッスンページ　START　*/
.lesson_plan_fbox {
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.lesson_plan_fbox .lesson_plan {
  display: inline-block;
  margin: 1em;
  -webkit-flex: 1;
  flex: 1;
  width: 270px;
  text-align: center;
  color: #5e5e5e;
  transition: 0.3s;
}

.plan_btm {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  border-top: 1px solid #8cc209;
  padding-top: 1em;
  padding-bottom: 1em;
  text-align: center;
  color: #8cc209;
  font-size: 120%;
}
.plan_btm p {
  display: inline-block;
  text-align: left;
}

.studio_box {
  margin: 1em 2em;
  padding: 0.5em;
  color: #5e5e5e;
}
.studio_box .studio_read {
  margin-bottom: 2em;
}
.studio_box .gmap_inline {
  position: relative;
  width: 100%;
  /* 左右に余白が必要なら値を変更してもOK */
  height: 0;
  padding-bottom: 56.25%;
  /* padding-topでもOK */
  overflow: hidden;
  margin-bottom: 0em;
}
.studio_box .gmap_inline iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  /* 必要であれば!importantを付けてください */
  height: 100%;
  /* 必要であれば!importantを付けてください */
}
.studio_box .img_txt_box {
  margin-top: 0em;
  margin-bottom: 1em;
  border-top: 1px dotted #a3b084;
  border-radius: 0 0 5px 5px / 0 0 5px 5px;
  background: #edf1e3;
  padding: 1em;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.studio_box .img_txt_box .imgbox {
  display: inline-block;
  -webkit-flex: 1;
  flex: 1;
  max-width: 264px;
}
.studio_box .img_txt_box .imgbox .imgfrm img {
  width: 100%;
  overflow: hidden;
}
.studio_box .img_txt_box .txtbox {
  display: inline-block;
  -webkit-flex: 1;
  flex: 1;
}
.studio_box .img_txt_box .txtbox p {
  padding-left: 1em;
}
.studio_box .img_txt_box .txtbox p span {
  display: block;
  font-size: 90%;
  padding-left: 1em;
}
.studio_box .img_txt_box .txtbox p span.title {
  color: #6d9908;
  font-size: 110%;
  padding-left: 0;
}
.studio_box .img_txt_box .txtbox p .f70title {
  display: block;
  padding-left: 1em;
  font-size: 70%;
}
.studio_box .img_txt_box .txtbox p .f70 {
  display: block;
  padding-left: 2em;
  font-size: 70%;
}

@media only screen and (max-width: 640px) {
  .studio_box {
    margin: 0.5em 0.5em !important;
  }
  .studio_box .img_txt_box {
    flex-direction: column;
  }
  .studio_box .img_txt_box .txtbox p {
    padding-left: 0;
  }
}
.weekly_box {
  margin: 1em 2em;
  padding: 0.5em;
  color: #5e5e5e;
}
.weekly_box table.week tr td {
  border-right: solid 1px #c8c8c8;
  border-bottom: solid 1px #c8c8c8;
  text-align: center;
  vertical-align: middle;
  padding: 0.5em 1.5em;
  transition: 0.3s;
}
.weekly_box table.week tr.day td {
  background-color: #c8c8c8;
  color: #FFF;
}
.weekly_box table.week tr.day td:first-child {
  background-color: #FFF;
}
.weekly_box table.week tr.am td {
  color: #8cc209;
  font-weight: bold;
}
.weekly_box table.week tr.am td:first-child {
  background-color: #c8c8c8;
  color: #FFF;
  font-weight: normal;
}
.weekly_box table.week tr.pm td {
  color: #8cc209;
  font-weight: bold;
}
.weekly_box table.week tr.pm td:first-child {
  background-color: #c8c8c8;
  color: #FFF;
  font-weight: normal;
}
.weekly_box p {
  margin-top: 1em;
}

@media only screen and (max-width: 640px) {
  .weekly_box {
    margin: 0.5em 0.5em !important;
  }
  .weekly_box table.week tr td {
    padding: 0.2em 0.5em;
  }
}
/*　レッスンページ　END　*/
/*　スケジュールページ　START　*/
.schedule_fbox .schedule_read {
  margin: 1em 2em;
  padding: 0.5em;
  color: #5e5e5e;
  font-size: 90%;
}
.schedule_fbox .schedule_read p a {
  text-decoration: underline;
  color: #6d9908;
}
.schedule_fbox .schedule_read p a:hover {
  text-decoration: none;
  color: #8cc209;
}
.schedule_fbox .schedule_one {
  margin: 1em 2em;
  padding: 0.5em;
  border: solid 1px #7eaf08;
  border-radius: 5px;
  background: #f4f4f4;
}
.schedule_fbox .schedule_one .boshu {
  color: #c20994;
  font-weight: bold;
  display: block;
}
.schedule_fbox .schedule_one .title {
  margin-bottom: 0.5em;
  padding-left: 1em;
  color: #6d9908;
  font-weight: bold;
}
.schedule_fbox .schedule_one .subtitle {
  margin-top: 0.5em;
  padding-left: 1.5em;
  color: #6d9908;
}
.schedule_fbox .schedule_one .ditail_txt {
  padding-left: 2em;
  color: #5e5e5e;
}
.schedule_fbox .schedule_one .ditail_txt_sub {
  padding-left: 2.5em;
  color: #5e5e5e;
  font-size: 80%;
}

h3#old {
  margin-top: 2em;
}

.schedule_btmline {
  margin-top: 2em;
  border-top: solid 1px #8cc209;
}

/*　スケジュールページ　END　*/
/*　顔ヨガとはページ　START　*/
.facial_fbox .facial_read {
  margin: 1em 2em;
  padding: 0.5em;
}
.facial_fbox .facial_read p {
  color: #5e5e5e;
}
.facial_fbox .facial_read .bf_txt {
  color: #6d9908;
}
.facial_fbox .facial_read .bf_fbox {
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.facial_fbox .facial_read .bf_fbox .bf_parts {
  display: inline-block;
  margin: 1em;
  -webkit-flex: 1;
  flex: 1;
  text-align: left;
  justify-content: center;
  /* 3 */
  align-items: center;
  transition: 0.3s;
}
.facial_fbox .facial_read .bf_fbox .bf_parts img {
  width: 100%;
}
.facial_fbox .facial_read .bf_fbox .bf_parts p {
  color: #6d9908;
}
.facial_fbox .facial_read .bf_txt_btm {
  margin-top: 2em;
  color: #8cc209;
  font-size: 120%;
}

@media only screen and (max-width: 800px) {
  .facial_fbox .facial_read p {
    margin-bottom: 1em;
  }
  .facial_fbox .facial_read .bf_txt {
    text-align: center;
  }
  .facial_fbox .facial_read .bf_fbox .bf_parts {
    flex: none;
  }
  .facial_fbox .facial_read .bf_fbox .bf_parts p {
    margin-bottom: 0;
  }
  .facial_fbox .facial_read .bf_fbox .imgbox {
    text-align: center;
    max-width: 418px;
    width: 100%;
  }
  .facial_fbox .facial_read .bf_txt_btm {
    text-align: center;
  }
}
/*　顔ヨガとはページ　END　*/
/*　プロフィールページ　START　*/
.profile_fbox .profile_read {
  margin: 1em 2em;
  padding: 0.5em;
}
.profile_fbox .profile_read p {
  color: #5e5e5e;
}
.profile_fbox .profile_read p a {
  text-decoration: underline;
  color: #6d9908;
}
.profile_fbox .profile_read p a:hover {
  text-decoration: none;
  color: #8cc209;
}
.profile_fbox .profile_read .fuukei_img {
  max-width: 100%;
}
.profile_fbox .profile_read .fuukei_img img {
  width: 100%;
  max-width: 500px;
}
.profile_fbox .profile_read .bf_fbox {
  margin-top: 1em;
  margin-bottom: 1em;
  background: #e7e8d6;
  border-radius: 5px;
  display: -webkit-flex;
  display: flex;
  /*			justify-content: center;	*/
  flex-wrap: wrap;
}
.profile_fbox .profile_read .bf_fbox .bf_parts {
  display: inline-block;
  margin: 0.5em;
  /*
  				-webkit-flex: 1;
  				flex: 1;
  */
  text-align: left;
  transition: 0.3s;
}
.profile_fbox .profile_read .bf_fbox .bf_parts img {
  max-width: 200px;
  width: 100%;
}
.profile_fbox .profile_read .bf_fbox .bf_parts p {
  color: #6d9908;
}
.profile_fbox .profile_read .bf_fbox .bf_parts .txt {
  color: #5e5e5e;
  padding-left: 1em;
  font-size: 80%;
}
.profile_fbox .profile_read .bf_fbox .imgbox {
  padding: 0.5em;
  border-radius: 5px;
  background: #FFF;
  justify-content: center;
  align-items: center;
}

@media only screen and (max-width: 800px) {
  .profile_fbox .profile_read .bf_fbox .bf_parts {
    flex: none;
  }
  .profile_fbox .profile_read .bf_fbox .bf_parts p {
    margin-bottom: 0;
  }
  .profile_fbox .profile_read .bf_fbox .imgbox {
    text-align: center;
    max-width: 154px;
    width: 100%;
  }
}
/*　プロフィールページ　END　*/
/*　リンパケアピラティスとはページ　START　*/
.lympa_fbox .lympa_read {
  margin: 1em 2em;
  padding: 0.5em;
}
.lympa_fbox .lympa_read p {
  color: #5e5e5e;
}

/*　リンパケアピラティスとはページ　END　*/
/*　メディカルヨガとはページ　START　*/
.medical_fbox .medical_read {
  margin: 1em 2em;
  padding: 0.5em;
}
.medical_fbox .medical_read p {
  color: #5e5e5e;
}

/*　メディカルヨガとはページ　END　*/
/*　料金ページ　START　*/
.price_fbox .price_read {
  margin: 1em 2em;
  padding: 0.5em;
}
.price_fbox .price_read p {
  color: #5e5e5e;
}
.price_fbox .price_read .imgdiv {
  max-width: 100%;
}
.price_fbox .price_read .imgdiv img {
  width: 100%;
  max-width: 100%;
}
.price_fbox .price_read .pricebox {
  margin-top: 2em;
}
.price_fbox .price_read .pricebox .priceimg {
  max-width: 100%;
}
.price_fbox .price_read .pricebox .priceimg img {
  width: 100%;
  max-width: 100%;
}
.price_fbox .price_read .pricebox h5 {
  font-size: 110%;
}
.price_fbox .price_read .pricebox .detaildiv {
  background: white;
}
.price_fbox .price_read .pricebox .detaildiv .pricetxt {
  color: #5e5e5e;
  font-size: 90%;
  margin-left: 1em;
}
.price_fbox .price_read .pricebox .detaildiv .pricetxtdetail {
  color: #5e5e5e;
  font-size: 70%;
  margin-left: 2em;
}

@media only screen and (max-width: 640px) {
  .price_fbox .price_read h6 {
    line-height: 140%;
  }
  .price_fbox .price_read .imgdiv {
    height: 100px;
    max-width: 100%;
    background-image: url(../img/price_img.jpg);
    background-position: right center;
    background-size: cover;
  }
  .price_fbox .price_read .imgdiv img {
    display: none;
    width: auto;
    overflow-x: hidden;
    max-width: 100%;
    height: 100px;
  }
  .price_fbox .price_read .pricebox {
    border: solid 1px #e7e8d6;
    background-color: #f4f5e9;
    box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.2);
  }
  .price_fbox .price_read .pricebox .priceimg {
    max-width: 100%;
  }
  .price_fbox .price_read .pricebox img {
    width: auto;
    overflow-x: hidden;
    max-width: 100%;
  }
  .price_fbox .price_read .pricebox h5 {
    font-weight: 500;
    text-align: center;
    border-bottom: none;
    border-radius: 0;
    padding-bottom: 0;
    margin-top: 1em;
  }
  .price_fbox .price_read .pricebox .pricetxt {
    background: #f4f5e9;
    padding-top: 0.1em;
    padding-bottom: 1em;
    border-bottom: solid 1px #e7e8d6;
    text-align: center;
    margin-left: 0 !important;
    color: #979797 !important;
  }
  .price_fbox .price_read .pricebox .pricetxtdetail {
    text-align: center;
    margin-left: 0 !important;
    padding-top: 0.5em;
    padding-bottom: 1.4em;
  }
}
/*　リンパケアピラティスとはページ　END　*/
/*　お問い合わせページ　START　*/
input, button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.contact_fbox .contact_read {
  margin: 1em 2em;
  padding: 0.5em;
}
.contact_fbox .contact_read p {
  color: #5e5e5e;
}
.contact_fbox .contact_read .contact_tel {
  padding: 1em 0;
}
.contact_fbox .contact_read .contact_tel .tel {
  font-size: 140%;
  color: #8cc209;
}
.contact_fbox .contact_f {
  margin: 1em 1em 1em 1em;
  padding: 1em 1.5em;
  border-radius: 5px;
  background: #e7e8d6;
}
.contact_fbox .contact_f .input .cont {
  margin: 0 0 0.5em;
  padding-bottom: 0.5em;
  vertical-align: top;
  color: #5e5e5e;
  display: block;
  border-bottom: solid 1px white;
}
.contact_fbox .contact_f .input .cont .title {
  display: block;
  margin-bottom: 0;
  text-align: left;
  font-size: 120%;
  line-height: 100%;
  text-indent: -1em;
  padding-left: 1em;
}
.contact_fbox .contact_f .input .cont .item {
  width: 8em;
  display: inline-block;
  font-size: 120%;
}
.contact_fbox .contact_f .input .cont .naiyou {
  vertical-align: top;
}
.contact_fbox .contact_f .input .cont .entry {
  padding-left: 0.5em;
}
.contact_fbox .contact_f .input .cont .entry .f_txt {
  display: inline-block;
  border-radius: 5px;
  border: solid 1px #FFF;
  background: #FFF;
  max-width: 30em;
  width: 90%;
  padding: 0.4em;
  outline: none;
  font-size: 100%;
  font-family: "Lucida Grande", "segoe UI", "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", Meiryo, Arial, sans-serif;
}
.contact_fbox .contact_f .input .cont .entry .disa {
  background: #a3b084;
  color: white;
}
.contact_fbox .contact_f .input .cont .entry textarea {
  width: 100%;
  max-width: 10em;
  height: 8em;
}
.contact_fbox .contact_f .input .cont .entry .f_txt:focus {
  box-shadow: 0 0 7px #8cc209;
  border: 1px solid #8cc209;
  border-radius: 5px;
}
.contact_fbox .contact_f .input .cont .rbox {
  display: block;
  text-align: right;
  line-height: 100%;
  font-size: 100%;
}
.contact_fbox .contact_f .input .cont .rbox .regframe {
  display: inline-block;
  text-align: left;
  line-height: 100%;
}
.contact_fbox .contact_f .input .cont .reg {
  color: deeppink;
  font-size: 70%;
  line-height: 100%;
}
.contact_fbox .contact_f .input .cont .regsub {
  color: deepskyblue;
  font-size: 70%;
  line-height: 100%;
}
.contact_fbox .contact_f .input .btndiv {
  text-align: center;
}
.contact_fbox .contact_f .input .btndiv .formbtn {
  display: inline-block;
  margin: 1em auto;
  padding: 1em 2em;
  border-radius: 5px;
  border: none;
  background: #8cc209;
  color: white;
  font-size: 120%;
  outline: none;
  cursor: pointer;
}
.contact_fbox .contact_f .input .btndiv .formbtn:focus {
  box-shadow: 0 0 7px #FFF;
  border: 1px solid #FFF;
  border-radius: 5px;
}
.contact_fbox .contact_f .input .btndiv .formbtn:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
}
.contact_fbox .contact_f .input .btndiv .rtnbtn {
  display: inline-block;
  margin: 1em auto 1em auto;
  padding: 0.5em 1em;
  border-radius: 5px;
  border: none;
  background: #a5af08;
  color: white;
  font-size: 80%;
  outline: none;
  cursor: pointer;
}
.contact_fbox .contact_f .input .btndiv .rtnbtn:focus {
  box-shadow: 0 0 7px #FFF;
  border: 1px solid #FFF;
  border-radius: 5px;
}
.contact_fbox .contact_f .input .btndiv .rtnbtn:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
}

/*　お問い合わせページ　END　*/
/*　ページトップへ戻る　START　*/
#topbutton {
  /* ▼表示位置を画面の右下に固定 */
  display: inline-block;
  position: fixed;
  /* ←表示場所を固定 */
  bottom: 10px;
  /* ←下端からの距離 */
  right: 10px;
  /* ←右端からの距離 */
  z-index: 99;
  /* ▼最初は非表示にしておく */
  display: none;
  /* ▼配色・配置・文字の装飾など */
  background-color: #7eaf08;
  /* ←背景色 */
  opacity: 0.9;
  /* ←透明度 */
  border-radius: 5px;
  /* ←角丸の半径 */
  border: solid 1px #FFF;
  text-align: center;
  /* ←文字の位置 */
  font-size: 100%;
  /* ←文字サイズ */
  line-height: 100%;
  margin: 0px;
  /* ←外側の余白 */
  padding: 0.2em 0.5em 0.5em;
  /* ←内側の余白 */
  color: white;
  /* ←文字色 */
  text-decoration: none;
  /* ←下線なし */
}
#topbutton .icon_up {
  font-size: 200%;
}

#topbutton:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
}

/*　ページトップへ戻る　END　*/
/*　フッターブログボタン　START　*/
.footblogbtn {
  margin-top: 4em;
  margin-bottom: 4em;
}
.footblogbtn a {
  border-radius: 5px;
  display: flex;
  align-items: center;
  background: #e7e8d6;
  padding: 1em 3em;
}
.footblogbtn a img {
  width: auto;
  max-height: 100%;
}
.footblogbtn a p {
  margin-left: 1em;
  color: #5e5e5e;
}
.footblogbtn a:hover {
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  opacity: 0.8;
}
.footblogbtn a:hover > p {
  color: #8cc209;
}

@media only screen and (max-width: 540px) {
  .footblogbtn {
    margin-top: 2em;
    margin-bottom: 2em;
  }
  .footblogbtn a {
    display: block;
    padding-left: 1em;
    padding-right: 1em;
  }
  .footblogbtn a div {
    text-align: center;
  }
  .footblogbtn a p {
    margin-top: 0.5em;
    margin-left: 0;
    font-size: 80%;
  }
}
/*　フッターブログボタン　END　*/
/*　フッタ　START　*/
footer {
  color: white;
}
footer .ft_top {
  background: #8cc209;
}
footer .ft_top .ft_namecap {
  padding-top: 1em;
  color: #527306;
  font-size: 90%;
}
footer .ft_top .ft_box {
  margin-top: 0.5em;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
}
footer .ft_top .ft_box .ft_logo {
  display: inline-block;
  -webkit-flex: 1;
  flex: 1;
  transition: 0.3s;
  margin-left: 0;
}
footer .ft_top .ft_box .ft_logo a:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
}
footer .ft_top .ft_box .ft_tel {
  display: inline-block;
  -webkit-flex: 1;
  flex: 1;
  transition: 0.3s;
  text-align: right;
  margin-right: 0;
}
footer .ft_top .ft_box .ft_tel .tel_frame {
  display: inline-block;
  -webkit-flex: 1;
  flex: 1;
  transition: 0.3s;
  border-radius: 5px;
  border: solid 1px white;
  margin-top: 1em;
  margin-bottom: 0.5em;
  background-color: white;
}
footer .ft_top .ft_box .ft_tel .tel_frame .ft_tel_top {
  padding-top: 2px;
  padding-left: 1em;
  color: white;
  text-align: left;
  font-size: 80%;
  background-color: #8cc209;
  border-radius: 5px 5px 0 0;
}
footer .ft_top .ft_box .ft_tel .tel_frame .ft_tel_btm {
  padding-right: 0.5em;
  padding-left: 2em;
  padding-bottom: 0;
  display: inline-block;
  background: white;
  color: #8cc209;
  text-align: right;
  font-size: 120%;
  white-space: nowrap;
  border-radius: 0 0 4px 4px / 0 0 4px 4px;
}
footer .ft_top .ft_box .ft_tel .tel_frame .ft_tel_btm span {
  padding-top: 4px;
  padding-left: 0.2em;
  display: inline-block;
  font-size: 140%;
  line-height: 100%;
}
footer .ft_top .ft_box .ft_tel .tel_frame .ft_tel_btm:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
}
footer .ft_btm {
  background: #8cc209;
}
footer .ft_btm .ft_btm_cont {
  margin-top: 0;
  border-top: solid 1px #527306;
}
footer .ft_btm .ft_btm_cont .ft_map_box {
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
footer .ft_btm .ft_btm_cont .ft_map_box .ft_map_one {
  display: block;
  -webkit-flex: 1;
  /*					flex: 1;	*/
  margin: 0.5em;
  padding: 0.5em;
  background: #8cc209;
  border-radius: 5px;
  font-size: 80%;
  transition: 0.3s;
  border: 1px solid #abda38;
}
footer .ft_btm .ft_btm_cont .ft_map_box .ft_map_one p {
  display: block;
  white-space: nowrap;
}
footer .ft_btm .ft_btm_cont .ft_map_box .ft_map_one p a {
  color: white;
}
footer .ft_btm .ft_btm_cont .ft_map_box .ft_map_one p a:hover {
  text-decoration: underline;
}
footer .ft_btm .ft_btm_cont .ft_map_box .ft_map_one p .mark {
  color: #527306;
}
footer .ftcp {
  background: #527306;
  font-size: 80%;
  font-weight: normal;
  line-height: 120%;
  text-align: center;
  padding: 1em 0.5em;
}

@media only screen and (max-width: 560px) {
  footer .ft_top .ft_namecap {
    text-align: center;
  }
  footer .ft_top .ft_box .ft_logo {
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
    flex: none;
  }
  footer .ft_top .ft_box .ft_tel {
    display: inline-block;
    margin: 0.5em auto 1em;
    flex: none;
  }
  footer .ftcp {
    padding: 2em 1em;
  }
}
@media only screen and (max-width: 470px) {
  footer .ftcp {
    padding: 2em 1em 8em;
  }
}
/*　フッタ　END　*/
/*------------------------------
　　トップページ swiper　START　
------------------------------*/
/*------------------------------
　　トップページ swiper　END
------------------------------*/
