/*
ここに独自の CSS を追加することができます。

詳しくは上のヘルプアイコンをクリックしてください。
*/

/*contact-form*/

.wpcf7 {
	margin: 96px 0;
}
.asterisk {
	margin: 0 0 0 0.2em;
	color: #f5637a;
}
.wpcf7 span.wpcf7-not-valid-tip {
	font-size: 80%;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 textarea {
	background-color: #fff;
	color: #333;
	width: 95%;
	border: 1px solid #ddd;
	font-size: 100%;
	padding: 0.5em;
	border-radius: 4px;
	box-shadow: 1px 1px 3px rgba(0,0,0,.1) inset;
}
.wpcf7 input[type="submit"] {
	font-size: 100%;
	padding: 0.2em 0.4em;
	background: #eee;
	color: #333;
	border-radius: 4px;
	cursor: pointer;
	box-shadow: 0 0 1px rgba(0,0,0,.2);
	border: 1px solid #ccc;
	text-shadow: -1px 1px 0 rgba(255,255,255,1);
}
.wpcf7 input[type="submit"]:hover {
	box-shadow: 0 0 1px rgba(0,0,0,.2) inset;
}


.box30 {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box30 .box-title {
    font-size: 1em;
    background: #254795;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box30 p {
    padding: 5px 10px;
    margin: 0;
}

.concept__wrapper {
    text-align: center;
	 margin-bottom: 3rem;
}

.js-appear.visible {
    opacity: 1;
}
.concept__text {
    width: 94%;
    line-height: 2.5rem;
    margin: 2rem auto 3rem;
        margin-top: 2rem;
        margin-right: auto;
        margin-bottom: 3rem;
        margin-left: auto;
    letter-spacing: 2px;
    padding-left: 2px;
}
.js-appear {
    opacity: 0;
}



.btn--more, .access__more, .blog__more, .concept__more, .news__more, .instagram__more {
    width: 210px;
    padding-top: 1rem;
    padding-bottom: 1rem;
}


.btn, .btn--more, .access__more, .blog__more, .concept__more, .news__more, .instagram__more {
    font-family: "Montserrat","Noto Sans JP","游ゴシック","Yu Gothic",YuGothic,Meiryo,sans-serif;
    display: inline-block;
    background-color: #fff;
    color: #B7956D;
    text-align: center;
    
    transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    border: 1px solid rgba(184,150,110,0.3);
    letter-spacing: 2px;
    padding-left: 2px;
}

/*
メニュー
*/



.replace-txt, .global-header__title, .global-footer__logo, .access__title, .blog__thumb, .mainvisual__wrapper--shinsaibashi .mainvisual__title span, .course__menu__image, .course__option__thumb, .shinsaibashi__image, .media__thumb {
    display: block;
    text-indent: 150%;
    white-space: nowrap;
    overflow: hidden;
}


.js-appear.visible {
    opacity: 1;
}

course {
  margin-bottom: 7rem;
  border-bottom: 1px solid #e2dcd3;
}

.course:last-child {
  margin-bottom: 0;
  border-bottom: none;
}

.course.noborder {
  border-bottom: none;
}

.course__title,.profile__title,.room__title,.flow__title,.qa__title,.voice__title {
  text-align: center;
  font-family: "Montserrat","Noto Sans JP","游ゴシック","Yu Gothic",YuGothic,Meiryo,sans-serif;
  color: #B7956D;
  letter-spacing: 3px;
  margin-left: 3px;
}

.course__subtitle,.profile__subtitle,.room__subtitle,.flow__subtitle,.qa__subtitle,.voice__subtitle {
  text-align: center;
  color: #B7956D;
  padding-top: 0;
  padding-bottom: 3rem;
}

.course__description,.course__description--middle {
  width: 94%;
  margin: 0 auto 5rem;
  text-align: center;
}

.course__description--middle {
  padding-top: 3rem;
}

.course__examnple {
  text-align: center;
  margin-bottom: 5rem;
}

.course__catch {
  text-align: center;
  font-size: 18px;
  letter-spacing: 2px;
  margin-left: 2px;
}

.course__catch::after {
  content: '';
  display: block;
  width: 21px;
  height: 2px;
  background-color: #4D4D4D;
  margin: 20px auto 30px;
}

.course__catch--ordermade {
  text-align: center;
  font-size: 18px;
  letter-spacing: 3px;
  margin-left: 3px;
  margin-bottom: 2rem;
}

.course__menu {
  margin-bottom: 4rem;
}

.course__menu__name,.course__menu__name--icon {
  color: #fff;
  font-size: 16px;
  line-height: 4rem;
  padding: 4px 0 9px;
  letter-spacing: 2px;
  padding-left: 2px;
  text-align: center;
  margin-bottom: 2rem;
  background-color: #cebba1;
}

.course__menu__name--icon h2 {
  display: inline;
}

.course__menu__name--icon .icon {
  display: inline-block;
  width: 50px;
  padding: 9px 0;
  margin-right: 4px;
  border-radius: 50%;
  background-color: #fff;
  color: #B7956D;
  font-size: 10px;
  line-height: 16px;
  vertical-align: middle;
}

.course__menu__name--icon .icon span {
  font-size: 12px;
  line-height: 1em;
}

.course__menu__information {
  width: 94%;
  max-width: 1100px;
  margin: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.course__menu__image {
  width: 16rem;
  height: 16rem;
  background-size: cover;
  background-repeat: no-repeat;
  margin-right: 3rem;
  background-position: left center;
}

.course__menu__image.bgright {
  background-position: right center;
}

.course__menu__image.bgcenter {
  background-position: center center;
}

.course__menu__details {
  margin: 1rem 0 0.5rem;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.course__menu__flow {
  font-size: 14px;
  margin-bottom: 1rem;
}

.course__menu__flow span {
  display: inline-block;
}

.course__menu__tag span {
  display: inline-block;
  color: #B7956D;
  border: 2px solid #B7956D;
  margin-right: 1rem;
  margin-bottom: 0.5rem;
}

.course__menu__tag span.tag1 {
  padding: 0 3rem;
}

.course__menu__tag span.tag2 {
  padding: 0 2rem;
}

.course__menu__tag span.tag3 {
  padding: 0 2rem;
}

.course__menu__coupon {
  font-size: 12px;
}

.course__menu__price,.course__menu__price--top,.course__option__price {
  font-size: 12px;
  line-height: 3rem;
}

.course__menu__price .yen,.course__menu__price--top .yen,.course__option__price .yen {
  display: inline-block;
  font-size: 20px;
  margin-right: 4px;
  font-smoothing: antialiased;
}

.course__menu__price .num,.course__menu__price--top .num,.course__option__price .num {
  font-family: "Helvetica Neue",-apple-system,BlinkMacSystemFont,"Yu Gothic",YuGothic,Verdana,Meiryo,sans-serif;
  display: inline-block;
  font-size: 20px;
  letter-spacing: 0;
}

.course__menu__price .unit,.course__menu__price--top .unit,.course__option__price .unit {
  font-size: 18px;
}

.course__menu__price .arrow,.course__menu__price--top .arrow,.course__option__price .arrow {
  font-size: 20px;
}

.course__menu__price--top {
  margin-top: 4rem;
}

.course__menu__price__special {
  display: inline-block;
  position: relative;
}

.course__menu__price__special p {
  position: absolute;
  width: 100%;
  top: -1rem;
  left: 0;
  color: #B7956D;
  font-size: 11px;
  line-height: 1em;
}

.course__menu__price__special.red p {
  color: #992323;
}

.course__menu__price__specialred {
  color: #992323;
}

.course__menu__arrow {
  width: 100%;
  border-top: 2px solid #e2dcd3;
  background-size: 25px 25px;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNSAyNSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNiM2IzYjM7fS5jbHMtMntmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjx0aXRsZT5Bc3NldCA3PC90aXRsZT48ZyBpZD0iTGF5ZXJfMiIgZGF0YS1uYW1lPSJMYXllciAyIj48ZyBpZD0i44Os44Kk44Ok44O8XzIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDIiPjxjaXJjbGUgY2xhc3M9ImNscy0xIiBjeD0iMTIuNSIgY3k9IjEyLjUiIHI9IjEyLjUiLz48cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik0xNy45MiAxMGwtNS40MiA2LjVMNy4wOCAxMCIvPjwvZz48L2c+PC9zdmc+");
  padding: 2rem 0;
}

.course__menu__month-plan {
  width: 94%;
  max-width: 1100px;
  margin: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: #B7956D;
  margin-top: 3rem;
}

.course__menu__month-plan__name {
  display: block;
  color: #B7956D;
  min-width: 30rem;
  padding: 80px 0;
  background-color: #fff;
  -webkit-box-flex: 13;
  -webkit-flex: 13;
  -ms-flex: 13;
  flex: 13;
  margin-right: 1rem;
  -webkit-transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.course__menu__month-plan__name:hover {
  background-color: #B7956D;
  color: #fff;
}

.course__menu__month-plan__arrow {
  -webkit-box-flex: 4;
  -webkit-flex: 4;
  -ms-flex: 4;
  flex: 4;
}

.course__menu__month-plan__arrow span {
  display: block;
  height: 3rem;
  padding: 0.5rem 0;
  margin: 10px 0;
  background-size: 140px 9px;
  background-repeat: no-repeat;
  background-position: right center;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDMuNjQgOS41OCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOm5vbmU7c3Ryb2tlOiNhMjg5Njk7c3Ryb2tlLW1pdGVybGltaXQ6MTA7c3Ryb2tlLXdpZHRoOjAuNXB4O308L3N0eWxlPjwvZGVmcz48dGl0bGU+QXNzZXQgODwvdGl0bGU+PGcgaWQ9IkxheWVyXzIiIGRhdGEtbmFtZT0iTGF5ZXIgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8yIiBkYXRhLW5hbWU9IuODrOOCpOODpOODvCAyIj48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xNDMgNC43OUgwTTE0My41IDQuNzlMMTM3IDkuMzhNMTM3IC4ybDYuNSA0LjU5Ii8+PC9nPjwvZz48L3N2Zz4=");
}

.course__menu__month-plan__times {
  min-width: 74px;
  -webkit-box-flex: 2;
  -webkit-flex: 2;
  -ms-flex: 2;
  flex: 2;
  margin-right: 1.5rem;
  text-align: right;
}

.course__menu__month-plan__times span {
  display: block;
  padding: 0.5rem 0;
  margin: 10px 0;
}

.course__menu__month-plan__description {
  -webkit-box-flex: 10;
  -webkit-flex: 10;
  -ms-flex: 10;
  flex: 10;
}

.course__menu__month-plan__description a {
  display: block;
  padding: 0.5rem 0;
  margin: 10px 0;
  background-color: #fff;
  color: #B7956D;
  -webkit-transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1),color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.course__menu__month-plan__description a:hover {
  background-color: #B7956D;
  color: #fff;
}

.course__title--example {
  text-align: center;
  font-size: 14px;
  width: 21rem;
  padding: 0.5rem 0;
  border-top: 1px solid rgba(76,76,76,0.3);
  border-bottom: 1px solid rgba(76,76,76,0.3);
  margin: auto auto 5rem;
}

.course__option {
  width: 94%;
  max-width: 1100px;
  margin: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.course__option__item {
  width: 32%;
  max-width: 27rem;
}

.course__option__thumb {
  width: 100%;
  height: 1px;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin-bottom: 1rem;
}

.course__option__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid rgba(76,76,76,0.3);
}

.course__option__name {
  font-size: 16px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.course__option__description {
  margin-bottom: 1rem;
}

.course__option__image {
  margin-top: 2rem;
}

.course__option__image img {
  display: block;
  width: 100%;
  height: auto;
}

  .course {
    margin-bottom: 4rem;
    padding-bottom: 1rem;
  }

  .course__subtitle,.profile__subtitle,.room__subtitle,.flow__subtitle,.qa__subtitle,.voice__subtitle {
    padding-top: 0;
    padding-bottom: 2rem;
  }

  .course__description,.course__description--middle {
    line-height: 1.5rem;
    margin: 0 auto 2rem;
  }

  .course__description--middle {
    padding-top: 1rem;
  }

  .course__examnple {
    margin-bottom: 3rem;
  }

  .course__catch::after {
    margin: 17px auto 17px;
  }

  .course__catch--ordermade {
    font-size: 14px;
    margin-bottom: 1rem;
  }

  .course__menu {
    margin-bottom: 2rem;
  }

  .course__menu__name,.course__menu__name--icon {
    font-size: 14px;
    line-height: 3rem;
    padding: 5px 0 8px 2px;
  }

  .course__menu__name--icon {
    padding: 4px 0 4px;
  }

  .course__menu__name--icon .icon {
    width: 44px;
    padding: 8px 0;
    line-height: 14px;
    font-size: 12px;
  }

  .course__menu__name--icon .icon span {
    font-size: 10px;
  }

  .course__menu__information {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    max-width: 50rem;
  }

  .course__menu__image {
    width: 100%;
    height: 18rem;
    margin-right: 0;
  }

  .course__menu__details {
    margin: 1rem 0 0;
  }

  .course__menu__flow {
    font-size: 13px;
    line-height: 1.5rem;
  }

  .course__menu__flow span {
    display: inline;
  }

  .course__menu__text {
    line-height: 1.5rem;
  }

  .course__menu__tag {
    margin-bottom: 1rem;
    line-height: 1.5rem;
  }

  .course__menu__price--top {
    margin-top: 1rem;
  }

  .course__menu__price__special {
    display: block;
  }

  .course__menu__price__special p {
    display: inline-block;
    position: relative;
    width: auto;
    top: inherit;
    left: inherit;
    margin-right: 0.5rem;
    letter-spacing: 0;
  }

  .course__menu__month-plan {
    margin-top: 2rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    max-width: 50rem;
  }

  .course__menu__month-plan__name {
    margin: 0 0 1rem;
    min-width: inherit;
    width: 100%;
    padding: 1.5rem 0;
  }

  .course__menu__month-plan__description {
    width: 100%;
  }

  .course__menu__month-plan__description a {
    width: 100%;
  }

  .course__menu__month-plan__description a span {
    display: inline-block !important;
    font-size: 12px;
    margin-right: 4px;
  }

  .course__title--example {
    margin: auto auto 3rem;
    font-size: 13px;
  }

  .course__option {
    max-width: 50rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .course__option__item {
    width: 100%;
    max-width: inherit;
    padding-top: 2rem;
  }

  .course__option__thumb {
    height: 18rem;
    padding-top: 0;
  }

  .course__option__description {
    line-height: 1.5rem;
    margin-bottom: 0.5rem;
  }

.body-btn {
    background-color: #992323;
    border-radius: 6px;
    color: #fff;
    display: block;
    line-height: 1;
    padding: 1pc 0;
    position: relative;
    text-align: center;
    width: 100%;
}

@media only screen and (device-width: 320px) and (-webkit-min-device-pixel-ratio: 2) {
  .twitter iframe  {
   width: 538px !important;
  }
}

/* Landscape */
@media only screen and (min-device-width: 480px) and (max-device-width: 568px) and (-webkit-min-device-pixel-ratio: 2) {
  .twitter iframe  {
    width: 290px !important;
  }
}