@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@font-face {
	font-family: 'gotham';
	src: url('./fonts/gotham-book.otf');
	font-weight: 300;
}
@font-face {
	font-family: 'gotham';
	src: url('./fonts/gotham-bold.otf');
	font-weight: 600;
}

/* !-------------------- メイン共通 -- */
main > section {
  padding: 90px 0;
}
@media screen and (max-width: 560px){
  main > section {
    padding: 60px 0;
  }
}

/* 個別 */
@media screen and (max-width: 560px){
  main > section.top_menu {
    padding: 40px 0 60px;
  }
}

/* !-------------------- メイン共通 _ タイトル -- */
.h2_top {
  font: 600 72px/1em 'gotham';
  letter-spacing: .05em;
  display: inline-block;
  margin: 0 0 40px;
  position: relative;
  z-index: 1;
}
.h2_top img {
  display: block;
  vertical-align: bottom;
  height: 20px;
  margin: 0 0 5px;
  width: auto;
}
@media screen and (max-width: 768px){
  .h2_top {
    font-size: 56px;
  }
}
@media screen and (max-width: 560px){
  .h2_top {
    font-size: 48px;
  }
}

/* 個別設定 */
.top_price .h2_top img {
  margin: 0 auto 5px;
}
.top_contact .h2_top {
  font-size: 56px;
}
@media screen and (max-width: 640px){
  .top_service {
    padding-top: 20px;
  }
}
@media screen and (max-width: 560px){
  .top_contact .h2_top {
    font-size: 48px;
  }
}
@media screen and (max-width: 480px){
  .top_service {
    padding-bottom: 0;
  }
}

/* !-------------------- メイン共通 _ タイトル線 -- */
.h2_line {
  content: "";
  display: block;
  background: #000;
  position: absolute;
}

/* 個別指定 */
.top_notice .h2_line {
  width: 100%;
  height: 2px;
  bottom: -20px;
  left: 0;
}
.top_about .h2_line {
  width: 100%;
  height: 2px;
  bottom: -20px;
  left: 0;
}
.top_schedule .h2_line {
  width: 2px;
  height: 100%;
  left: -30px;
}
.top_service .h2_line {
  height: 2px;
  width: 100%;
  left: 0;
  bottom: -20px;
}
.top_menu .h2_line {
  height: 2px;
  width: 100%;
  left: 0;
  bottom: -20px;
}
.top_price .h2_line {
  height: 2px;
  width: 100%;
  left: 50%;
  bottom: -20px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.top_contact .h2_line {
  height: 2px;
  width: 100%;
  left: 0;
  bottom: -20px;
  background: #000;
}

/* !-------------------- メイン共通 _ 写真背景 -- */
.bg_square {
  position: relative;
}
.bg_square_item {
  content: "";
  width: 100%;
  height: 100%;
  background: #A7C3CE;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.bg_square > img {
  -webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,.2);
  box-shadow: 0px 3px 10px 0px rgba(0,0,0,.2);
}
@media screen and (max-width: 640px){
  .top_service .bg_square,
  .top_service .bg_square_item {
    max-width: 400px;
  }
}

/* 個別指定 */
.top_about .bg_square_item {
  -webkit-transform: translate3d(50px,50px,0);
  transform: translate3d(50px,50px,0);
}
.top_schedule .bg_square_item {
  -webkit-transform: translate3d(0,50px,0);
  transform: translate3d(0,-50px,0);
}
.menu_01 .bg_square_item {
  -webkit-transform: translate3d(-40px,80px,0);
  transform: translate3d(-40px,80px,0);
  background: #A7C3CE url(images/img_01.svg) no-repeat right 20px bottom 20px;
  background-size: 80px 40px;
}
.menu_02 .bg_square_item {
  -webkit-transform: translate3d(120px,40px,0);
  transform: translate3d(120px,40px,0);
  background: #A7C3CE url(images/img_02.svg) no-repeat right 20px bottom 40px;
  background-size: 80px 40px;
}
.menu_03 .bg_square_item {
  -webkit-transform: translate3d(-120px,80px,0);
  transform: translate3d(-120px,80px,0);
  background: #A7C3CE url(images/img_03.svg) no-repeat left 20px bottom 40px;
  background-size: 80px 40px;
}
.menu_03 {
	padding-top: 20px;
}
.menu_03 .staffbox {
	margin: 2%;
	padding: 10px;
	height: 100%;
	-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,.1);
	box-shadow: 0px 3px 10px 0px rgba(0,0,0,.1);
}
.staffbox .container {
	padding: 0px;
}
@media screen and (max-width: 640px){
  .service_03 .bg_square_item {
    background-position: left 20px bottom 20px;
    -webkit-transform: translate3d(-40px,80px,0);
    transform: translate3d(-40px,80px,0);
  }
}
@media screen and (max-width: 560px){
  .top_about .bg_square_item {
    -webkit-transform: translate3d(20px,50px,0);
    transform: translate3d(20px,50px,0);
  }
}
@media screen and (max-width: 480px){
  .menu_01 .bg_square_item,
  .menu_02 .bg_square_item,
  .menu_03 .bg_square_item {
    background-size: 60px 30px;
  }
}

/* !-------------------- スライダー -- */
.slider {
  margin-top: 76px;
  position: relative;
  min-height: 500px;
}
.top_info {
  width: 100%;
  position: absolute;
  bottom: 30px;
  left: 0;
  background: rgba(0,0,0,.1);
  -webkit-box-shadow: 0px -1px 1px 0px rgba(255,255,255,.3);
  box-shadow: 0px -1px 1px 0px rgba(255,255,255,.3);
}
.top_info .container {
  max-width: 900px;
}
.top_info p {
  color: #fff;
  font: 600 11px/1.5em 'noto sans japanese';
  letter-spacing: .1em;
  padding: 8px 0 8px 80px;
  position: relative;
}
.top_info p .date {
  font: 300 10px/1em 'noto sans japanese';
  margin: 0 10px 0 0;
  position: absolute;
  top: .9em;
  left: 0;
}
@media screen and (max-width: 800px){
  .slider {
    min-height: auto;
  }
}
@media screen and (max-width: 768px){
  .slider {
    margin-top: 54px;
  }
}
@media screen and (min-width:370px) and ( max-width:375px) {
  .slider {
    min-height: 460px;
  }
}
@media screen and (min-width:355px) and ( max-width:360px) {
  .slider {
    min-height: 415px;
  }
}

@keyframes down {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-50%,-90%,0);
    transform: translate3d(-50%,-90%,0);
  }
  10% {
    opacity: .5;
  }
  50% {
    opacity: .5;
  }
  90% {
    opacity: 0;
    -webkit-transform: translate3d(-50%,-10%,0);
    transform: translate3d(-50%,-10%,0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-50%,-10%,0);
    transform: translate3d(-50%,-10%,0);
  }
}

/* スクロールアイコン02 */
.mouse_scroll {
  padding: 3px;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50% , 50px);
  -ms-transform: translate(-50% , 50px);
  transform: translate(-50% , 50px);
  animation: move 3s ease infinite;
}
.mouse_scroll img {
  height: 24px;
}
.mouse_scroll span {
  font: 300 10px/1em 'gotham';
  letter-spacing: .1em;
  text-align: center;
  margin: 3px;
  display: block;
}
@keyframes move {
  0% {
    opacity: 0;
    -webkit-transform: translate(-50% , 50px);
    -ms-transform: translate(-50% , 50px);
    transform: translate(-50% , 50px);
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate(-50% , 64px);
    -ms-transform: translate(-50% , 64px);
    transform: translate(-50% , 64px);
  }
}


/* !-------------------- お知らせとは -- */
.top_notice {
  margin: 80px 0 0;
  position: relative;
  background: #DE6B48;
  background-size: contain;
}

.top_notice .container {
  position: relative;
}

textarea {
	font: 300 18px/1em 'gotham';
	letter-spacing: .1em;
	text-align: left;
	height: 15%;
	border: 0px;
}

@media screen and (max-width: 768px){
  textarea {
    font-size: 14px;
  }
}
@media screen and (max-width: 560px){
  textarea {
    font-size: 12px;
  }
}
/* !-------------------- baton⁺²とは -- */
.top_about {
  margin: 80px 0 0;
  position: relative;
  background: url(images/bg_top_about.jpg)no-repeat right top;
  background-size: contain;
}
.top_about .container {
  position: relative;
}

/* 写真 */
.top_about_img {
  width: 50vw;
  position: relative;
  z-index: 1;
}
.top_about_img img {
  -webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,.2);
  box-shadow: 0px 3px 10px 0px rgba(0,0,0,.2);
}
@media screen and (max-width: 560px){
  .top_about_img {
    width: 64vw;
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 480px){
  .top_about_img {
    margin-bottom: 100px;
  }
}

/* テキスト */
.top_about .container {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1;
}
.top_about_text {
  width: 54%;
  padding: 160px 0 0;
  margin-left: auto;
  position: relative;
  z-index: 1;
}
.top_about_text_main {
  margin: 20px 0 0 90px;
  padding: 40px;
  background: rgba(255,255,255,.8);
  -webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,.1);
  box-shadow: 0px 3px 10px 0px rgba(0,0,0,.1);
}
.top_about_text_main p + p {
  margin: 10px 0 0 ;
}
@media screen and (max-width: 840px){
  .top_about_text {
    padding: 80px 0 0;
  }
}
@media screen and (max-width: 768px){
  .top_about_text {
    padding: 36px 0 0;
  }
  .top_about_text_main{
    margin: 20px 0 0 40px;
  }
}
@media screen and (max-width: 640px){
  .top_about_text {
    width: 64%;
  }
}
@media screen and (max-width: 560px){
  .top_about .container {
    -webkit-transform: translate(-50% , -20%);
    -ms-transform: translate(-50% , -20%);
    transform: translate(-50% , -20%);
  }
  .top_about_text {
    width: 100%;
  }
  .top_about_text .h2_top {
    margin: 0 0 40px 38%;
    -webkit-transform: translateY(70px);
    -ms-transform: translateY(70px);
    transform: translateY(70px);
  }
  .top_about_text_main {
    margin: 40vw 0 0;
    background: rgba(255,255,255,.9);
  }
}

/* !-------------------- サービスメイン -- */
.top_service {
	background: #f5f5f5;
  padding-top: 160px;
  padding-bottom: 20px;
}
.top_service_main {
  padding: 60px 0;
  background: url(images/img02_sp.png)no-repeat right bottom;
  background-size: cover;
  position: relative;
}
.top_service_main .container {
  margin: -140px 0 0;
}
.top_service_text > p {
  padding: 0 0 0 30px;
}
.top_service_text .copy {
  color: #000;
  font: 600 28px/1.1em 'noto sans japanese';
  margin: 60px 0 0;
}
.top_service_text .copy span {
  font-size: .9em;
  margin: 0 2px;
}
.top_service_text strong {
  font: 900 1.5em/1.3em 'gotham';
}
.top_service_text .copy_sub {
  font: 300 13px/1.5em 'noto sans japanese';
  margin: 8px 0 0;
}

@media screen and (max-width: 768px){
  .top_service_main {
    background-position: right -70px bottom;
  }
}
@media screen and (max-width: 640px){
  .top_service {
    padding-top: 200px;
  }
  .top_service_main {
    /* background: url(images/img03_sp.png)no-repeat top right; */
    background-size: auto 250px;
    padding: 60px 0 0;
  }
  .top_service_main:before {
    content: "";
    width: 100%;
    height: 100%;
    background: -moz-linear-gradient(left, rgba(255,255,255,0.6) 20%, rgba(255,255,255,0) 90%);
    background: -webkit-linear-gradient(left, rgba(255,255,255,0.6) 20%,rgba(255,255,255,0) 90%);
    background: linear-gradient(to right, rgba(255,255,255,0.6) 20%,rgba(255,255,255,0) 90%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#99ffffff', endColorstr='#00ffffff',GradientType=1 );
    position: absolute;
    top: 0;
    left: 0;
  }
  .top_service_text > p {
    color: #000;
    font-size: 14px;
    margin: 40px 0 0;
    padding: 0;
  }
  .top_service_text .copy {
    font-size: 22px;
  }
}
@media screen and (max-width: 480px){
  .top_service {
    margin-bottom: 0;
  }
  .top_service_main {
    background-position: top right -20px;
  }
  .top_service_text > p {
    letter-spacing: .01em;
    padding: 0;
  }
  .top_service_text .copy {
    margin: 40px 0 0;
  }
  .top_service_text .copy_sub {
    font-size: 12px;
    margin: 12px 0 0;
  }
}

/* ポイントリスト */
.list_service_point {
  color: #000;
  width: 100%;
  margin: 40px 0 0;
}
.list_service_point li {
  padding: 30px 0;
}
.list_service_point li article {
  padding: 0 0 0 30px;
  position: relative;
}
.list_service_point p {
  line-height: 1.5em;
}
.list_service_point li article:before {
  content: "";
  width: 30vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
}
@media screen and (max-width: 640px){
  .list_service_point {
    color: #000;
    width: -webkit-calc((100% - 70px));
    width: calc((100% - 70px));
    margin: 120px 0 0;
  }
  .list_service_point p {
    font-weight: 400;
  }
  .list_service_point li {
    padding: 20px 0;
  }
}
@media screen and (max-width: 560px){
  .list_service_point li {
    padding: 15px 0;
  }
}
@media screen and (max-width: 480px){
  .list_service_point {
    margin: 80px 0 0;
  }
}

/* ３本ライン */
.list_service_point li:nth-of-type(1) article:before {
  background: #A7C3CE;
}
.list_service_point li:nth-of-type(2) article:before {
  background: #A7C3CE;
}
.list_service_point li:nth-of-type(3) article:before {
  background: #A7C3CE;
}
.list_service_point li article:after {
  content: "";
  width: 90px;
  height: 90px;
  position: absolute;
  top: 0;
  right: -20px;
  background-size: contain !important;
  -webkit-transform: translateX(150%);
  -ms-transform: translateX(150%);
  transform: translateX(150%);
  opacity: .8;
}

.list_service_point h4 {
  font: 600 24px/1em 'gotham';
  letter-spacing: .05em;
  margin: 0 0 14px;
  padding: 0 0 0 40px;
  position: relative;
}
.list_service_point h4:before {
  content: "";
  color: #fff;
  font: 900 15px/1em 'gotham';
  width: 24px;
  height: 24px;
  display: -webkit-flex; display: flex;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: center; justify-content: center;
  background: #A7C3CE;
  position: absolute;
  top: 0;
  left: 0;
}
.list_service_point li:nth-of-type(1) h4:before {
  content: "1";
  background: #A7C3CE;
}
.list_service_point li:nth-of-type(2) h4:before {
  content: "2";
  background: #A7C3CE;
}
.list_service_point li:nth-of-type(3) h4:before {
  content: "3";
  background: #A7C3CE;
}
.h3_top {
	-webkit-transform: translateX(-10px);
	-ms-transform: translateX(-10px);
	transform: translateX(-10px);
}
@media screen and (max-width: 480px){
  .list_service_point h4 {
    font-size: 19px;
  }
}

/* !-------------------- トップメニュー -- */
.h3_top {
  margin: 0 0 15px;
  display: inline-block;
  position: relative;
  z-index: 1;
}
.h3_top span {
  color: #fff;
  letter-spacing: .1em;
  padding: .2em 40px .2em 10px;
  background: #182B4A;
  display: block;
}
.menu_02 .h3_top span {
  padding: .2em 0 .2em 40px;
 }
.h3_top span.h3_top_main {
  font: 600 32px/1em 'gotham';
  display: block;
  position: relative;
}
.h3_top span.h3_top_sub {
  font: 600 18px/1em 'gotham';
  display: inline-block;
  margin: 0 0 3px;
  position: relative;
}
.h3_top span.h3_top_main:before,
.h3_top span.h3_top_sub:before {
  content: "";
  width: 50vw;
  height: 100%;
  background: #182B4A;
  /* position: absolute; */
	position: relative;
  top: 0;
  left: 0;
  -webkit-transform: translateX(-99%);
  -ms-transform: translateX(-99%);
  transform: translateX(-99%);
  z-index: -1;
}
.menu_02 .h3_top span.h3_top_main:before,
.menu_02 .h3_top span.h3_top_sub:before {
  left: auto;
  right: 0;
  -webkit-transform: translateX(99%);
  -ms-transform: translateX(99%);
  transform: translateX(99%);
}
@media screen and (max-width: 1000px){
}
@media screen and (max-width: 560px){
  /* .h3_top {
    -webkit-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    transform: translateX(-20px);
  } */
  .service_02 .h3_top {
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px);
  }
  .h3_top span {
    padding: .1em 20px;
  }
  .h3_top span.h3_top_main {
    font-size: 24px;
  }
  .h3_top span.h3_top_sub {
    font-size: 11px;
  }
}
@media screen and (max-width: 480px){
  .h3_top span.h3_top_main {
    font-size: 20px;
  }
}

/* サブタイトル */
.ttl_sub {
  font: 700 17px/1em 'noto sans japanese';
  letter-spacing: .1em;
  display: block;
  color: #A7C3CE;
  margin: 0 0 20px;
}
.ttl_sub span {
  font-size: .9em;
  margin: 0 2px;
}

/* タグリスト */
.list_tag {
  /* display: -webkit-flex; display: flex; */
  margin: 0 0 20px;
}
.list_tag li {
  padding: 3px;
}
.list_tag span {
  color: #182B4A;
  font: 500 10px/1em 'noto sans japanese';
  border: 1px solid #182B4A;
  background: #fff;
  padding: .3em 1em;
  display: inline-block;
}

/* サービス共通 */
.list_top_menu {
  margin: 10px 0 0;
	padding: 0 10%;
}
/* .list_top_menu > li + li {
  padding-top: 100px;
} */
.list_top_menu article {
  position: relative;
}
.list_menu_img img {
  /*-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,.2);*/
  /*box-shadow: 0px 3px 10px 0px rgba(0,0,0,.2);*/
}
.list_menu_text {
  position: relative;
  z-index: 1;
}
.list_menu_text_main {
  padding: 40px;
  background: rgba(255,255,255,.8);
  -webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,.1);
  box-shadow: 0px 3px 10px 0px rgba(0,0,0,.1);
}
.list_menu_text p {
  letter-spacing: .05em;
  position: relative;
  z-index: 1;
}
.list_menu_text p + p {
  margin-top: 10px;
}
.marker {
  background: linear-gradient(transparent 40%, rgba(247,247,113,.8) 40%);
}
@media screen and (max-width: 960px){
  .list_top_menu {
    margin: 30px 0 0;
  }
}
@media screen and (max-width: 840px){
  .list_top_menu {
    margin: 50px 0 0;
  }
}
@media screen and (max-width: 768px){
  .list_menu_text_main {
    padding: 20px;
  }
}
@media screen and (max-width: 640px){
  .list_top_menu {
    margin: 0;
		padding: 0;
  }
}
@media screen and (max-width: 560px){
  .list_menu_text p {
    line-height: 1.9em;
  }
}
/* @media screen and (max-width: 480px){
  .list_top_menu > li + li {
    padding-top: 60px;
  }
} */

/* サービス01 */
/* サービス01_画像 */
.menu_01 {
  background: url(images/img02_sp.jpg)no-repeat right bottom;
  background-size: auto 60%;
}
.menu_01 .list_menu_img {
  width: 44%;
  margin-left: auto;
}
.menu_01 .list_menu_img img {
  -webkit-transform: translateX(-80px);
  -ms-transform: translateX(-80px);
  transform: translateX(-80px);
}
.menu_01 .list_menu_img span {
  display: block;
  margin-top: -40px;
  max-width: 360px;
  -webkit-transform: translateX(-40px);
  -ms-transform: translateX(-40px);
  transform: translateX(-40px);
  position: relative;
  z-index: -1;
}
@media screen and (max-width: 768px){
  .menu_01 .list_menu_img {
    width: 48%;
  }
  .menu_01 .list_menu_img img {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}
@media screen and (max-width: 640px){
  .menu_01 {
		background: url(images/img02_sp.png)no-repeat top right;
		background-size: auto 250px;
  }
  .menu_01 .list_menu_img {
    margin-top: 20px;
    width: 100%;
    max-width: 400px;
  }
  .menu_01 .list_menu_img img {
  }
  .menu_01 .list_menu_img span {
    -webkit-transform: translateX(-20%);
    -ms-transform: translateX(-20%);
    transform: translateX(-20%);
  }
}
@media screen and (max-width: 480px){
  .menu_01 .list_menu_img {
    width: 80vw;
    -webkit-transform: translateX(40px);
    -ms-transform: translateX(40px);
    transform: translateX(40px);
  }
  .menu_01 .list_menu_img span {
    -webkit-transform: translateX(-26vw);
    -ms-transform: translateX(-26vw);
    transform: translateX(-26vw);
  }
}

/* サービス01_テキスト */
.menu_01 .list_menu_text {
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 40px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: -webkit-calc((100% - 80px));
  width: calc((100% - 80px));
}
.menu_01 .list_menu_text_main {
  max-width: 50%;
}
@media screen and (max-width: 768px){
/*
  .menu_01 .list_menu_text_main {
    max-width: 100%;
  }
  .menu_01 .list_menu_text {
    position: static;
  }
*/
}
@media screen and (max-width: 640px){
  .menu_01 .list_menu_text_main {
    max-width: 100%;
  }
  .menu_01 .list_menu_text {
    position: static;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    width: 100%;
    position: relative;
    left: 0;
  }
}


/* サービス02 */
/* サービス02_画像 */
.menu_02 .list_menu_img {
  width: 56%;
  padding: 0 0 120px;
}
.menu_02 .list_menu_img img {
  -webkit-transform: translate(40px , 100px);
  -ms-transform: translate(40px , 100px);
  transform: translate(40px , 100px);
}
/* サービス02_テキスト */
.menu_02 .list_menu_text {
  display: -webkit-flex; display: flex;
  -webkit-flex-direction: column; flex-direction: column;
  -webkit-align-items: flex-end; align-items: flex-end;
  position: absolute;
  top: 50%;
  right: 40px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.menu_02 .h3_top {
  text-align: right;
}
.menu_02 .list_menu_text p {
  max-width: 320px;
}
@media screen and (max-width: 640px){
  .menu_02 article {
    display: -webkit-flex; display: flex;
    /* -webkit-flex-direction: column-reverse; flex-direction: column-reverse; */
		-webkit-flex-direction: column; flex-direction: column;
  }
  .menu_02 .list_menu_text {
    position: static;
/*
		-webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
*/
-webkit-transform: translateY(-100px);
-ms-transform: translateY(-100px);
transform: translateY(-100px);
  }
  .menu_02 .list_menu_text p {
    max-width: 100%;
  }
  .menu_02 .list_menu_img {
    width: 80%;
    padding: 0;
  }
  .menu_02 .list_menu_img img{
    -webkit-transform: translate(40px , -10px);
    -ms-transform: translate(40px , -10px);
    transform: translate(40px , -10px);
  }
}
/*
@media screen and (max-width: 480px){
  .menu_02 .list_menu_img {
    width: 120%;
  }
}
*/

/* サービス03 */
/* サービス03_画像 */
.list_top_menu > li.service_03 {
  padding-top: 100px;
}
.service_03 .list_menu_img {
  width: 62%;
  margin: 40px 0 0 auto;
}
.service_03 .list_menu_text p {
  width: 62%;
}
@media screen and (max-width: 640px){
  .service_03 .list_menu_img {
    width: -webkit-calc((100% - 40px));
    width: calc((100% - 40px));
    margin-top: 30px;
  }
  .service_03 .list_menu_text p {
    width: 100%;
  }
}

.lessonPrice {
	padding: 20px;
	text-align: center;
	background-color: rgb(167,195,206);
	outline: 1px solid #fff;
	outline-style: dashed;
}



/* !-------------------- ライセンス -- */
.top_schedule {
  background: #f5f5f5;
  padding-bottom: 0;
  position: relative;
  z-index: 0;
}
.top_schedule .container {
  position: relative;
  z-index: 1;
}
.top_schedule_main {
  width: 84%;
  margin-left: auto;
}
@media screen and (max-width: 768px){
  .top_schedule_main {
    width: -webkit-calc((100% - 40px));
    width: calc((100% - 40px));
  }
}

/* ライセンス一覧 */
.top_schedule_cnt {
  display: -webkit-flex; display: flex;
  margin: 20px 0 0 50px;
}
@media screen and (max-width: 768px){
  .top_schedule_cnt {
    margin: 20px 0 0;
  }
}
/* リストライセンス-テキスト */
.list_license_text {
  margin: -8px 0;
  font: 500 12px/1.3em 'noto sans japanese';
}
.list_license_text > li {
  padding: 8px 0;
  padding-left: 24px;
  position: relative;
}
.list_license_text > li:before {
  content: "";
  width: 3px;
  height: 3px;
  background: #000;
  border-radius: 100px;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate3d(0,-50%,0);
  transform: translate3d(0,-50%,0);
}

/* リストライセンス-画像 */
.list_license_img {
  display: -webkit-flex; display: flex;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: center; justify-content: center;
}
.list_license_img > li {
  padding: 0 20px;
}
.list_license_img > li img {
  max-height: 100px;
  width: auto;
}
@media screen and (max-width: 560px){
  .list_license_img {
    margin: -10px;
    -webkit-flex-direction: column; flex-direction: column;
  }
  .list_license_img > li{
    padding: 10px;
  }
}

/* リストライセンス-写真 */
.top_schedule_photo {
  margin: 80px 0 0;
  min-height: 300px;
  background: url(images/img01_sp.jpg)no-repeat top center;
  background-size: cover;
  position: relative;
}
@media screen and (max-width: 560px){
  .top_schedule_photo {
    margin: 40px 0 0;
    min-height: 200px;
  }
}


/* !-------------------- プライステーブル -- */
.top_price {
  background: #f5f5f5;
}
.top_price .container {
  text-align: center;
}
/* リスト */
.list_price {
  text-align: left;
  margin: 60px -2px 0;
}
.list_price > li {
  padding: 2px;
  display: -webkit-flex; display: flex;
  -webkit-flex-direction: column; flex-direction: column;
}
.list_price > li article {
  display: -webkit-flex; display: flex;
  -webkit-flex-direction: column; flex-direction: column;
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
  -webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,.1);
  box-shadow: 0px 3px 10px 0px rgba(0,0,0,.1);
}
.list_price h3 {
  color: #000;
  font: 600 20px/1em 'gotham';
  letter-spacing: .05em;
  text-align: center;
  height: 160px;
  display: -webkit-flex; display: flex;
  -webkit-flex-direction: column; flex-direction: column;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: center; justify-content: center;
  background: rgb(167,195,206);
}
.list_price h3 span {
  font: 300 11px/1em 'noto sans japanese';
  margin: 12px 0 0;
}
.list_price h3 span.time {
  font: 500 10px/1em 'gotham';
  letter-spacing: .05em;
  margin: 24px 0 0;
}
.list_price h3 span.time strong {
  font-size: 16px;
  font-weight: 900;
  margin: 0 2px 0 0;
}
@media screen and (max-width: 640px){
  .list_price {
    margin: -5px;
  }
  .list_price > li {
    padding: 5px;
  }
}
@media screen and (max-width: 560px){
  .list_price {
    margin-top: 30px;
  }
  .list_price h3 {
    font-size: 13px;
    height: 120px;
  }
  .list_price h3 span.time {
    margin: 12px 0 0;
  }
}

/* ヨガ */
.list_price .yoga h3 {
  background: rgb(167,195,206);
}

/* 料金部分 */
.list_price_text {
  background: #fff;
  padding: 40px;
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
  display: -webkit-flex; display: flex;
  -webkit-flex-direction: column; flex-direction: column;
}
.list_price .times {
  color: #182B4A;
  font: 500 13px/1em 'noto sans japanese';
  letter-spacing: .1em;
  text-align: center;
  display: block;
  width: 200px;
  margin: 0 auto 20px;
  border-left: 3px solid #182B4A;
  border-right: 3px solid #182B4A;
}
.list_price .times.second {
  margin-top: 40px;
}
.list_price .time {
  color: #000;
  font: 500 11px/1em 'noto sans japanese';
  text-align: center;
  letter-spacing: .1em;
  padding: 3px 0;
  width: 70px;
  margin: 0 16px 0 0;
  display: inline-block;
  border: 1px solid #000;
}
.list_price .money {
  text-align: center;
  width: 100%;
  font: 600 24px/1em 'gotham';
  margin: 8px 0 0;
}
.list_price .money.first {
  font-size: 28px;
}
.list_price .yen {
  font-size: 17px;
  margin: 0 3px 0 0;
}
.list_price .tax {
  font: 300 10px/1em 'noto sans japanese';
  margin: 0 0 0 8px;
}
.list_price .explainbox {
  text-align: right;
}
.list_price .explain {
  font: 300 10px/1.7em 'noto sans japanese';
  margin: 10px 0 0;
  padding: 15px;
  border: 1px dashed #A7C3CE;
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
}
.list_price_main {
  text-align: center;
  padding: 24px 0;
}
.list_price_main > li {
  padding: 15px 0;
  display: -webkit-flex; display: flex;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: center; justify-content: center;
}
.list_price .again .money {
  font-size: 19px;
}
@media screen and (max-width: 768px){
  .list_price_text {
    padding: 20px;
  }
  .list_price .time {
    width: 70px;
    margin: 0 8px 0 0;
  }
  .list_price .money {
    font-size: 22px;
  }
  .list_price .money.first {
    font-size: 25px;
  }
}
@media screen and (max-width: 560px){
  .list_price_main {
    padding: 10px 0;
  }
  .list_price_main > li {
    padding: 10px 0;
  }
}

.top_price small {
  font: 300 10px/1em 'noto sans japanese';
  color: #999;
  text-align: right;
  display: block;
  margin: 10px 0 0;
  margin-left: auto;
}

/* !-------------------- コンタクト -- */
.top_contact {
  color: #000;
  background-size: cover;
  position: relative;
}
.top_contact:before {
  content: "";
  height: 100%;
  width: 50vw;
  background: #A7C3CE;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 768px){
  .top_contact {
    background-position: center right -400px;
  }
  .top_contact:before {
    width: 100vw;
    height: 100%;
    opacity: .8;
  }
}
@media screen and (max-width: 560px){
  .top_contact {
    background-position: center right -500px;
  }
}

/* リスト */
.list_contact {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}
.list_contact > li {
  width: 50%;
}
@media screen and (max-width: 768px){
  .list_contact {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
  }
  .list_contact > li {
    width: 100%;
  }
}

/* インフォメーション */
/* フォーム_インフォ */
.contact_info {
  padding: 40px 80px 0 0;
}
.contact_info_text {
  margin: 0 0 60px;
}
.contact_info_text p {
  font: 600 16px/1em 'noto sans japanese';
}
.contact_info_text small {
  font: 300 11px/1.5em 'noto sans japanese';
  display: block;
  margin: 15px 0 0;
}
.logo_contact {
  width: 240px;
}
.list_info {
  margin: 20px 0 0;
  padding: 20px 0 0;
  border-top: 1px dotted rgba(255,255,255,.5);
}
.list_info > li {
  padding: 15px 0;
  padding-left: 32px;
  position: relative;
}
.list_info > li a,
.list_info > li p {
  color: #000 !important;
  font: 600 14px/1em 'gotham';
  letter-spacing: .05em;
}
.list_info > li.map p {
  font: 700 13px/1.4em 'noto sans japanese';
}
.list_info > li:before {
  content: "";
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  top: 1.8em;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.list_info > li.map:before {
  background: url(images/ico_map_black.svg) no-repeat center center;
}
.list_info > li.phone:before {
  background: url(images/ico_phone.svg) no-repeat center center;
}
.list_info > li.mail:before {
  height: 16px;
  background: url(images/ico_mail_black.svg) no-repeat center center;
}
.list_info > li.line:before {
  height: 16px;
  background: url(images/ico_line.svg) no-repeat center center;
	background-size: 16px;
}
@media screen and (max-width: 768px){
  .contact_info {
    padding: 40px 0 0;
  }
  .contact_info_text + .info_baton {
    display: none;
  }
  .info_baton {
    margin: 60px 0 0;
  }
  .logo_contact {
    display: block;
    margin: 0 auto;
  }
}

/* フォーム */
.contact_form {
  color: #000;
}
.contact_form_main {
  background: rgba(255,255,255,.9);
  padding: 40px;
  margin-left: -40px;
  -webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,.2);
  box-shadow: 0px 3px 10px 0px rgba(0,0,0,.2);
}
@media screen and (max-width: 768px){
  .contact_form_main {
    margin-left: 0;
  }
}
@media screen and (max-width: 560px){
  .contact_form_main {
    padding: 20px;
  }
}

.contact_form_main + .info_baton {
  display: none;
}
@media screen and (max-width: 768px){
  .contact_form_main + .info_baton {
    display: block;
  }
}

/* ! トップアクセス ================================================== */
.top_access {
  padding: 0;
}
.top_access iframe {
  width: 100%;
  vertical-align: bottom;
}


/* !-------------------- インスタグラム -- */
.top_instagram {
  padding: 40px 0 20px;
  background: #eee;
}
.top_instagram .logo {
  display: block;
  width: 30px;
  margin: 0 auto;
}
.top_instagram h2 {
  text-align: center;
  padding: 16px 0 40px;
  font: 600 19px/1em 'gotham';
}
.top_instagram h2 a {
  display: block;
  font: 300 12px/1em 'gotham';
  margin: 10px auto 0;
}
@media screen and (max-width: 480px){
  .top_instagram .logo {
    width: 24px;
  }
  .top_instagram h2 {
    font-size: 15px;
    padding: 12px 0 40px;
  }
}

/* PC/SP */
.snapwidget-widget.sp {
  display: none;
}
@media screen and (max-width: 480px){
  .snapwidget-widget.pc {
    display: none;
  }
  .snapwidget-widget.sp {
    display: block;
  }
}
.snapwidget-widget.sp {
/*
  -webkit-transform:scale(.5);
  transform:scale(.5);
*/
  -webkit-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}
.snapwidget_wrap {
  position: relative;
  height: auto;
}
.snapwidget_wrap > a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 480px){
  .snapwidget_wrap:before {
    content: "";
    width: 100%;
    padding-top:50%;
    display: block;
  }
  .snapwidget_cnt {
    overflow: hidden;
    width: 100vw;
    position: absolute;
    top: 0;
    left: 0;
  }
}

/* ID表示 */
.id_instagram {
  color: #fff;
  font: 300 19px/1em 'gotham';
  letter-spacing: .3em;
  text-align: center;
  margin: 30px 0 0;
  display: block;
}

/* 自己紹介トグル */
.intro_top label {
	width: 100%;
	font: 300 14px/1em 'gotham';
	letter-spacing: .1em;
	color: #fff;
	text-align: center;
}

.intro {
  width: 100%;
	background-color: #182B4A;
	padding: 5px 10px;
}

.intro_top input{
  display: none;
}

#intro01 input+.toggle{
	display: none;
}
#intro01 input:checked+.toggle{
  display: block;
	animation: moveShow 2s ease;
}

#intro02 input+.toggle{
	display: none;
}
#intro02 input:checked+.toggle{
  display: block;
	animation: moveShow 2s ease;
}

#intro03 input+.toggle{
	display: none;
}
#intro03 input:checked+.toggle{
  display: block;
	animation: moveShow 2s ease;
}

#intro04 input+.toggle{
	display: none;
}
#intro04 input:checked+.toggle{
  display: block;
	animation: moveShow 2s ease;
}

#intro05 input+.toggle{
	display: none;
}
#intro05 input:checked+.toggle{
  display: block;
	animation: moveShow 2s ease;
}

@keyframes moveShow {
  0% {
    -webkit-transform: translate(30% , 0px);
    -ms-transform: translate(30% , 0px);
    transform: translate(30% , 0px);
  }
  100% {
    -webkit-transform: translate(0px , 0px);
    -ms-transform: translate(0px , 0px);
    transform: translate(0px , 0px);
  }
}
