@charset "UTF-8";
/****************************************
        ベース（基本設定）
****************************************/
/**
カラー
*/
.color01 {
  color: #917b61;
}

.color02 {
  color: #b187ce;
}

.color03 {
  color: #fcf6fd;
}

.color04 {
  color: #fdfbf7;
}

.color05 {
  color: #9d8baa;
}

.bgcolor01 {
  background-color: #917b61;
}

.bgcolor02 {
  background-color: #b187ce;
}

.bgcolor03 {
  background-color: #fcf6fd;
}

.bgcolor04 {
  background-color: #fdfbf7;
}

.bgcolor05 {
  background-color: #9d8baa;
}

/*********************************************
    汎用クラス
*********************************************/
/**
エリア
*/
.area {
  padding: 80px 0;
}

.area80 {
  padding: 80px 0;
}

.area60 {
  padding: 60px 0;
}

.area40 {
  padding: 40px 0;
}

.area20 {
  padding: 20px 0;
}

.areab {
  padding-bottom: 80px;
}

.area80b {
  padding-bottom: 80px;
}

.area60b {
  padding-bottom: 60px;
}

.area40b {
  padding-bottom: 40px;
}

.area20b {
  padding-bottom: 20px;
}

.areat {
  padding-top: 80px;
}

.area80t {
  padding-top: 80px;
}

.area60t {
  padding-top: 60px;
}

.area40t {
  padding-top: 40px;
}

.area20t {
  padding-top: 20px;
}

@media only screen and (max-width: 1024px) {
  .area {
    padding: 40px 0;
  }

  .area80 {
    padding: 60px 0;
  }

  .area60 {
    padding: 40px 0;
  }

  .area40 {
    padding: 20px 0;
  }

  .areab {
    padding-bottom: 40px;
  }

  .area80b {
    padding-bottom: 60px;
  }

  .area60b {
    padding-bottom: 40px;
  }

  .area40b {
    padding-bottom: 20px;
  }

  .areat {
    padding-top: 40px;
  }

  .area80t {
    padding-top: 60px;
  }

  .area60t {
    padding-top: 40px;
  }

  .area40t {
    padding-top: 20px;
  }
}
/**
マージン
*/
.mt10 {
  margin-top: 10px;
}

.mb50 {
  margin-bottom: 50px;
}

/**
幅
*/
.w80a {
  width: 80%;
  margin: 0 auto;
}

.w70a {
  width: 70%;
  margin: 0 auto;
}

@media only screen and (max-width: 599px) {
  .w80a {
    width: 100%;
    margin: 0 auto 2%;
  }

  .w70a {
    width: 100%;
    margin: 0 auto 2%;
  }
}
/**
テキスト
*/
.tac {
  text-align: center;
}

.tar {
  text-align: right;
}

/*文字をまとめて落とす*/
.group {
  display: inline-block;
}

/*打消し線*/
.strike {
  text-decoration: line-through;
}

/**
heightLineリセット
*/
@media only screen and (max-width: 1024px) {
  .reseth-tb {
    height: auto !important;
  }
}
@media only screen and (max-width: 599px) {
  .reseth-sp {
    height: auto !important;
  }
}
/**
その他
*/
/*トリミングする要素のブロック化*/
.trim {
  display: block;
}

/*モバイル時に順序を並べ替え*/
@media only screen and (max-width: 599px) {
  .change-sp {
    flex-direction: column-reverse;
  }
}
/*PC時のみ非表示*/
@media only screen and (min-width: 1025px) {
  .no-pc {
    display: none;
  }
}

/*tb以下非表示*/
@media only screen and (max-width: 1024px) {
  .no-tb {
    display: none;
  }
}

/*sp時のみ非表示*/
@media only screen and (max-width: 599px) {
  .no-sp {
    display: none;
  }
}

/*ポジション*/
.position {
  position: relative;
}

/*********************************************
    汎用レイアウト（全ページ共通）
*********************************************/
/*汎用レイアウト1（全ページ共通）*/
.layout-cmn01 .ttl {
  margin-bottom: 40px;
}
.layout-cmn01 .cap {
  margin-bottom: 10px;
}
.layout-cmn01 .fig {
  margin-bottom: 5px;
}
@media only screen and (max-width: 599px) {
  .layout-cmn01 .ttl {
    margin-bottom: 20px;
  }
}

/*汎用レイアウト2（全ページ共通）*/
.layout-cmn02 .ttl {
  margin-bottom: 20px;
}
.layout-cmn02 .cap {
  margin-bottom: 10px;
}
.layout-cmn02 .fig {
  margin-bottom: 5px;
}
@media only screen and (max-width: 599px) {
  .layout-cmn02 .ttl {
    margin-bottom: 20px;
  }
}

/*2カラムコンテンツ
（サイドメニューとメインコンテンツ）*/
.column2 {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
.column2 .side {
  width: 240px;
}
.column2 .main {
  width: calc(100% - 260px);
}
@media only screen and (max-width: 1024px) {
  .column2 {
    flex-wrap: wrap;
  }
  .column2 .side {
    order: 3;
    width: 100%;
    margin-bottom: 5%;
  }
  .column2 .main {
    order: 2;
    width: 100%;
    margin-bottom: 5%;
  }
}

/*左右の要素を入れ替え*/
.change {
  flex-direction: row-reverse;
}

/*左右の要素を順に入れ替え*/
.alternate .flexb:nth-of-type(even) {
  flex-direction: row-reverse;
}

/*********************************************
    汎用画像クラス　img
*********************************************/
.img {
  text-align: center;
}

/*背景画像*/
.bgimg {
  position: relative;
}

.img.-bgimg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.img.-bgimg img {
  /*IE対策*/
  font-family: "object-fit: cover; object-position: 50% 50%;";
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

/*フィルター*/
.img.-filter:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  opacity: .8;
  background: #fff;
}

/*object-fit(cover)IE対応*/
.img.-cover img {
  /*IE対策*/
  font-family: "object-fit: cover; object-position: 50% 50%;";
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

/*object-fit(contain)IE対応*/
.img.-contain img {
  /*IE対策*/
  font-family: "object-fit: contain; object-position: 50% 50%;";
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 50% 50%;
}

/*モバイル時に小さめに表示*/
.img.-smallsp {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 599px) {
  .img.-smallsp {
    width: 80%;
  }
}

/*モバイル時により小さめに表示*/
.img.-smallersp {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 599px) {
  .img.-smallersp {
    width: 50%;
  }
}

/*正円画像*/
.img.-circle {
  overflow: hidden;
  border-radius: 50%;
}

/*角丸画像*/
.img.-round {
  overflow: hidden;
  border-radius: 20px;
}

/**
アスペクト比固定
*/
/*基本アスペクト
（下に続く比率クラスと合わせて使用）*/
.img.-aspect {
  position: relative;
}
.img.-aspect:before {
  display: block;
  content: "";
}
.img.-aspect img {
  /*IE対策*/
  font-family: "object-fit: cover; object-position: 50% 50%;";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

/*比率30％*/
.img.-ratio30:before {
  padding-top: 30%;
}

/*比率35％*/
.img.-ratio35:before {
  padding-top: 35%;
}

/*比率40％*/
.img.-ratio40:before {
  padding-top: 40%;
}

/*比率45％*/
.img.-ratio45:before {
  padding-top: 45%;
}

/*比率50％*/
.img.-ratio50:before {
  padding-top: 50%;
}

/*比率65％*/
.img.-ratio65:before {
  padding-top: 65%;
}

/*比率65％*/
.img.-ratio75:before {
  padding-top: 75%;
}

/*比率100％*/
.img.-ratio100:before {
  padding-top: 100%;
}

/*比率150％*/
.img.-ratio150:before {
  padding-top: 150%;
}

/*********************************************
    共通ボックス　box-cmn
*********************************************/
/*共通ボックス１（記事詳細ページ）*/
.box-cmn01 .category li {
  line-height: 1.3em;
  display: inline-block;
  min-width: 100px;
  margin: 0 5px 5px;
  padding: 0 5px;
  text-align: center;
  color: #fff;
  background: #b187ce;
}
.box-cmn01 .head {
  font-size: 18px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  color: #917b61;
  border-bottom: 1px solid #917b61;
}
.box-cmn01 .btn {
  margin-top: 50px;
}

/*********************************************
    共通ブロック　block-cmn
*********************************************/
/*********************************************
    共通タイトル　ttl-cmn
*********************************************/
/*共通タイトル1*/
.ttl-cmn01 {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
}
.ttl-cmn01:after {
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/tit_deco01.png);
  text-align: center;
}
.ttl-cmn01 .ttlin {
  font-size: 14px;
  line-height: 1.3em;
  display: block;
}
@media only screen and (max-width: 599px) {
  .ttl-cmn01 {
    font-size: 24px;
  }
}

/*共通タイトル２*/
.ttl-cmn02 {
  font-size: 24px;
  line-height: 1.3em;
  position: relative;
  color: #b187ce;
}
.ttl-cmn02 .ttlin {
  display: block;
  padding-bottom: 10px;
  border-bottom: 1px solid #b187ce;
}
.ttl-cmn02.-left {
  padding-left: 60px;
}
.ttl-cmn02.-left:before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/deco07_left.png);
  transform: translate(0, 50%);
}
.ttl-cmn02.-right {
  padding-right: 60px;
}
.ttl-cmn02.-right:before {
  position: absolute;
  right: 0;
  bottom: 0;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/deco07_right.png);
  transform: translate(0, 50%);
}
@media only screen and (max-width: 599px) {
  .ttl-cmn02 {
    font-size: 20px;
  }
  .ttl-cmn02.-left {
    padding-left: 30px;
  }
  .ttl-cmn02.-left:before {
    transform: translate(0, 50%) scale(0.5);
    transform-origin: left;
  }
  .ttl-cmn02.-right {
    padding-right: 30px;
  }
  .ttl-cmn02.-right:before {
    transform: translate(0, 50%) scale(0.5);
    transform-origin: right;
  }
}

/*********************************************
    共通リスト　list-cmn
*********************************************/
/*ページネーション*/
.list-pagenation {
  text-align: center;
}
.list-pagenation .listitem {
  position: relative;
  margin: 0 5px;
}
.list-pagenation .present,
.list-pagenation .listitem a:hover {
  opacity: 1;
  color: #917b61;
}
.list-pagenation a,
.list-pagenation .present {
  font-size: 18px;
  display: inline-block;
  padding: 0 5px;
  text-align: center;
}
.list-pagenation .prev a {
  width: 50px;
  height: 30px;
}
.list-pagenation .prev a:before {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 100%;
  height: 1px;
  content: "";
  transform: translateY(-50%);
  background: #000;
}
.list-pagenation .prev a:after {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 10px;
  content: "";
  transform: translate(-50%, -100%) rotate(45deg);
  transform-origin: left bottom;
  background: #000;
}
.list-pagenation .next a {
  width: 50px;
  height: 30px;
}
.list-pagenation .next a:before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  content: "";
  transform: translateY(-50%);
  background: #000;
}
.list-pagenation .next a:after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 10px;
  content: "";
  transform: translate(50%, -100%) rotate(-45deg);
  transform-origin: right bottom;
  background: #000;
}

/*共通リスト1(ニュースリスト)
「トップ、ニュース」*/
.list-cmn01 .item {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #c9c9c9;
}
.list-cmn01 .meta {
  margin-bottom: 10px;
}
.list-cmn01 .time {
  margin-right: 10px;
}
.list-cmn01 .category li {
  display: block;
  display: inline-block;
  margin-right: 10px;
  padding: 0 1em;
  color: #fff;
  background: #b187ce;
}
@media only screen and (max-width: 599px) {
  .list-cmn01 .time {
    width: 100%;
    margin-bottom: 5px;
  }
}

/*共通リスト２（ブログリスト）*/
.list-cmn02 .img {
  margin-bottom: 10px;
}
.list-cmn02 .img a {
  display: block;
}
.list-cmn02 .category li {
  font-size: 14px;
  display: inline-block;
  margin-right: 5px;
  color: #917b61;
}
.list-cmn02 .head {
  font-size: 18px;
}

/*共通リスト３（一般リスト）*/
.list-cmn03 .item {
  display: flex;
  flex-wrap: nowrap;
  padding: 10px 0;
  border-bottom: 1px solid #e6e6e6;
}
.list-cmn03 .datattl {
  flex-shrink: 0;
  width: 150px;
}
@media only screen and (max-width: 599px) {
  .list-cmn03 .item {
    flex-wrap: wrap;
  }
  .list-cmn03 .datattl {
    width: 100%;
    margin-bottom: 10px;
  }
}

/*共通リスト４（番号付きリスト）
「バレエの魅力」*/
.list-cmn04 {
  counter-reset: item;
}
.list-cmn04 .item {
  position: relative;
  padding-top: 40px;
  padding-bottom: 40px;
  background-repeat: no-repeat;
}
.list-cmn04 .item:not(:last-child) {
  margin-bottom: 50px;
}
.list-cmn04 .item:nth-of-type(odd) {
  padding-left: 80px;
  background-image: url(/import/tenant_1/133.167.33.124/html/images/05fascination/deco02_topleft.png);
  background-position: top left;
}
.list-cmn04 .item:nth-of-type(even) {
  padding-right: 80px;
  background-image: url(/import/tenant_1/133.167.33.124/html/images/05fascination/deco02_topright.png);
  background-position: top right;
}
.list-cmn04 .item:nth-of-type(even) .flexb {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.list-cmn04 .ttl {
  font-size: 28px;
  position: relative;
  margin-bottom: 20px;
  padding-left: 1em;
  color: #9d8baa;
}
.list-cmn04 .ttl:before {
  position: absolute;
  left: 0;
  content: counter(item) ".";
  counter-increment: item;
}
.list-cmn04 .img {
  border: 2px solid #917b61;
}
@media only screen and (max-width: 1024px) {
  .list-cmn04 .item:nth-of-type(odd) {
    padding-left: 50px;
  }
  .list-cmn04 .item:nth-of-type(even) {
    padding-right: 50px;
  }
}
@media only screen and (max-width: 599px) {
  .list-cmn04 .item {
    background-size: 70px;
  }
  .list-cmn04 .item:not(:last-child) {
    margin-bottom: 30px;
  }
  .list-cmn04 .item:nth-of-type(odd) {
    padding-right: 20px;
    padding-left: 20px;
  }
  .list-cmn04 .item:nth-of-type(even) {
    padding-right: 20px;
    padding-left: 20px;
  }
  .list-cmn04 .ttl {
    font-size: 20px;
  }
}

.list-cmn04.-type01 .item:nth-of-type(odd) {
  background-image: url(/import/tenant_1/133.167.33.124/html/images/05fascination/deco01.png);
}
.list-cmn04.-type01 .ttl {
  padding-left: 0;
  color: #917b61;
}
.list-cmn04.-type01 .ttl:before {
  content: none;
}

/*共通リスト５（ページ内リンク）
「クラス紹介、」*/
.list-cmn05 .item {
  padding: 10px;
}
.list-cmn05 a {
  display: block;
  width: 250px;
  padding: 10px;
  text-align: center;
  color: #fff;
  background: #9d8baa;
}

/*共通リスト６（ギャラリー）
「トップ、ギャラリー、ギャラリー詳細」*/
.list-cmn06 .item {
  padding: 0 10px;
}
.list-cmn06 .img {
  margin-bottom: 10px;
}
.list-cmn06 .img a {
  display: block;
}
.list-cmn06 .head {
  text-align: center;
}
.list-cmn06 .headin {
  display: block;
}
.list-cmn06 .slick-list {
  width: 90%;
  margin: 0 auto;
}

[data-element-id] .list-cmn06 {
  max-height: 370px;
  overflow: hidden;
}

/*********************************************
    共通ボタン　btn-cmn
*********************************************/
/*ボタン１*/
.btn-cmn01 a {
  position: relative;
  display: block;
  width: 250px;
  margin: 0 auto;
  padding: 10px;
  text-align: center;
  color: #fff;
  background: #917b61;
}
.btn-cmn01 a:after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  content: "";
  transform: translate(-50%, -50%);
  border: 1px solid #fff;
}

/*ボタン２*/
.btn-cmn02 a {
  display: block;
  width: 250px;
  padding: 5px;
  text-align: center;
  color: #917b61;
  border: 1px solid #917b61;
}
.btn-cmn02.-small a {
  width: 80%;
  max-width: 200px;
  padding: 5px 10px;
}
.btn-cmn02.-smallest a {
  width: 100px;
  padding: 0;
}

/*ボタン３*/
.btn-cmn03 a {
  display: block;
  width: 250px;
  margin: 0 auto;
  padding: 5px;
  text-align: center;
  color: #fff;
  background: #bdb0c7;
}

/*********************************************
    他共通エレメント　txt-cmn img-cmn
*********************************************/
/*共通テキスト１（電話番号）*/
.txt-cmn01 .tel {
  font-size: 28px;
  position: relative;
  padding-left: 35px;
}
.txt-cmn01 .tel:before {
  position: absolute;
  top: 50%;
  left: 0;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/icon01.png);
  transform: translateY(-50%);
}
.txt-cmn01 a {
  color: #b187ce;
}

/*共通画像１*/
.img-cmn01 {
  position: relative;
  z-index: 1;
  border: 2px solid #917b61;
}
.img-cmn01:before {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/deco06_left.png);
}
.img-cmn01:after {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/deco06_right.png);
}

/*共通画像２*/
.img-cmn02 {
  border: 2px solid #917b61;
}

/*********************************************
    モジュール（共通機能群）
*********************************************/
/*フォーム*/
.form dl {
  flex-wrap: nowrap;
  padding: 20px 0;
  border-bottom: 2px solid #eee;
}

.form dt {
  font-weight: bold;
  width: 200px;
  margin-right: 20px;
}

.form dt .reqw {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3em;
  display: block;
  margin-left: 5px;
  color: red;
}

.form dd {
  width: 100%;
}

.form dd input {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  margin-top: 5px;
  margin-bottom: 5px;
  padding: 5px;
  border: none;
  background: #eee;
}

.form .phone input {
  max-width: 400px;
}

.form dd select {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5px;
}

.form dd input[type="radio"] {
  display: none;
}

.form dd input[type="radio"] + label {
  line-height: 200%;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: 20px;
  padding-left: 20px;
}

.form dd input[type="radio"] + label::before {
  position: absolute;
  top: 4px;
  left: 0;
  display: block;
  width: 10px;
  height: 10px;
  content: "";
  border: 1px solid #303841;
  border-radius: 50%;
  background: #fff;
  box-shadow: inset 1px 1px 0 1px #999;
}

.form dd input[type="radio"]:checked + label::after {
  position: absolute;
  top: 7px;
  left: 3px;
  display: block;
  width: 7px;
  height: 7px;
  content: "";
  border-radius: 50%;
  background: #303841;
}

.form dd input[type="radio"]:checked + label {
  -webkit-transition: .6s;
  transition: .6s;
}

.form dd input[type="number"] {
  width: 70px;
  margin-right: 10px;
}

.form dd textarea {
  font-family: "游ゴシック", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 14px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 150px;
  margin-top: 5px;
  margin-bottom: 5px;
  padding: 5px;
  border: none;
  background: #eee;
}

.formbtn li button {
  display: block;
  width: 250px;
  margin: 0 auto;
  margin-top: 50px;
  padding: 5px;
  text-align: center;
  color: #fff;
  border: none;
  background: #bdb0c7;
}

.formbtn li button:hover {
  cursor: pointer;
  opacity: .6;
}

.formbtn li {
  margin: auto;
}

@media only screen and (max-width: 1024px) {
  .form dl {
    flex-wrap: wrap;
  }

  .form dt {
    width: 100%;
    padding-bottom: 0;
  }

  .form dd {
    width: 100%;
  }
}
@media only screen and (max-width: 599px) {
  .formbtn li {
    width: 100%;
  }

  .formbtn li button {
    font-size: 14px;
    width: 140px;
    margin-top: 30px;
  }
}
/**************************************
    共通要素
**************************************/
/**
ヘッダー
header
*/
.header {
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  padding: 30px 0;
  background: url(/import/tenant_1/133.167.33.124/html/images/common/header_bg.png) no-repeat center bottom;
  background-size: cover;
}
.header .logo {
  text-align: center;
}
.header .logoin {
  font-weight: bold;
  display: block;
}
@media only screen and (max-width: 1024px) {
  .header {
    padding: 10px 0;
  }
}
@media only screen and (max-width: 599px) {
  .header img {
    height: 40px;
  }
}

.header-fixed {
  position: fixed;
  z-index: 10;
  bottom: 0;
  width: 100%;
  height: 50px;
  background: url(/import/tenant_1/133.167.33.124/html/images/01home/bg01.png);
}
.header-fixed .phone {
  line-height: 0;
  width: 50%;
  margin: 0 auto;
  text-align: center;
}
.header-fixed .tel {
  font-size: 28px;
  position: relative;
  display: inline-block;
  padding-left: 35px;
}
.header-fixed .tel:before {
  position: absolute;
  top: 50%;
  left: 0;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/icon01.png);
  transform: translateY(-50%) scale(0.7);
}
.header-fixed .tel a {
  color: #b187ce;
}
.header-fixed .contact {
  width: 50%;
}
.header-fixed .contact a {
  display: block;
  max-width: 150px;
  margin: 0 auto;
  padding: 5px 10px;
  text-align: center;
  color: #fff;
  background: #917b61;
}
.header-fixed .contact a:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 400;
  margin-right: 5px;
  content: "\f0e0";
}
@media only screen and (max-width: 599px) {
  .header-fixed .phone {
    width: 55%;
  }
  .header-fixed .tel {
    font-size: 20px;
    padding-left: 30px;
  }
  .header-fixed .contact {
    width: 45%;
  }
  .header-fixed .contact a {
    padding: 5px;
  }
}

[data-element-id] .header-fixed {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.totop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  cursor: pointer;
  text-align: center;
  color: #917b61;
  text-shadow: 1px 0 1px #fff, 0 1px 1px #fff, -1px 0 1px #fff, 0 -1px 1px #fff;
}
.totop:after {
  display: block;
  margin-top: -15px;
  content: url(/import/tenant_1/133.167.33.124/html/images/common/footer_deco.png);
}
@media only screen and (max-width: 1024px) {
  .totop {
    bottom: 45px;
  }
}

/**
グローバルナビ
nav-global
*/
.gnav {
  position: relative;
  padding: 20px 100px;
  background: url(/import/tenant_1/133.167.33.124/html/images/common/gnav_bg.png);
  background-size: cover;
}

.nav-global .item {
  text-align: center;
}
.nav-global .item01 {
  position: relative;
  flex-grow: 1;
}
.nav-global .item01:after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 1.5em;
  content: "";
  transform: translateY(-50%);
  background: #d2d2d2;
}
.nav-global .item01:nth-last-child(3):after {
  content: none;
}
.nav-global a {
  display: block;
  padding: 1em .5em;
}
.nav-global a:hover {
  color: #917b61;
}
.nav-global .contact {
  position: absolute;
  right: 0;
  bottom: 0;
}
.nav-global .contact:before {
  position: absolute;
  top: 0;
  left: 0;
  content: url(/import/tenant_1/133.167.33.124/html/images/common/gnav_icon.png);
  transform: translate(-50%, -50%);
}
.nav-global .contact a {
  display: block;
  padding: 20px 15px;
  color: #fff;
  background-color: #db67a1;
  background-image: url(/import/tenant_1/133.167.33.124/html/images/common/gnav_deco01.png), url(/import/tenant_1/133.167.33.124/html/images/common/gnav_deco02.png);
  background-repeat: no-repeat;
  background-position: top left, bottom right;
}

.gnav.fixed {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  cursor: pointer;
  background: #fff;
  box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.1);
}
[data-element-id] .gnav .no-pc {
  display: block;
}
[data-element-id] #wrapper {
  padding-top: 0 !important;
}
[data-element-id] .gnav.fixed {
  position: relative;
}
[data-element-id] .nav-second {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (max-width: 1024px) {
  .gnav {
    padding: 0;
  }

  .nav-logo {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    padding-top: 20px;
  }
  .nav-logo a {
    display: block;
    text-align: center;
  }

  .nav-global {
    height: calc(100% - 190px);
    margin-top: 120px;
  }
  .nav-global a {
    display: block;
    padding: 10px 0;
  }
  .nav-global .item01:after {
    content: none;
  }
  .nav-global .item02 {
    margin-top: 20px;
  }
  .nav-global .contact {
    position: fixed;
    width: 300px !important;
  }
  .nav-global .contact:before {
    transform: translate(0, -50%);
  }
}
/**
フッター
footer
*/
.footer {
  position: relative;
  padding-top: 70px;
  background: #b187ce;
}

.lowerpage .footer {
  margin-top: 80px;
}

.footer-logo {
  position: absolute;
  top: 40px;
  left: 50%;
  width: 200px;
  height: 200px;
  padding-top: 30px;
  transform: translate(-50%, -50%);
  text-align: center;
  border-radius: 50%;
  background: #b187ce;
}

.nav-footer {
  position: relative;
  z-index: 2;
}
.nav-footer a {
  display: block;
  padding: .5em 1em;
  color: #fff;
}
@media only screen and (max-width: 599px) {
  .nav-footer .item {
    width: 50%;
  }
  .nav-footer .top,
  .nav-footer .about {
    width: 100%;
    text-align: center;
  }
}

.copy {
  padding: 30px 0;
  text-align: center;
  color: #fff;
}

@media only screen and (max-width: 1024px) {
  .footer {
    padding-bottom: 40px;
  }
}
@media only screen and (max-width: 599px) {
  .footer {
    padding-bottom: 80px;
  }
}
/**
サイドメニュー
side
*/
.side {
  display: flex;
  align-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: space-between;
}
.side .list {
  position: relative;
  width: 100%;
  margin-bottom: 100px;
  padding: 10px 10px 30px;
  background: url(/import/tenant_1/133.167.33.124/html/images/11news/bg02.png);
}
.side .list:last-child {
  margin-bottom: 0;
}
.side .datatitle {
  font-size: 20px;
  position: relative;
  text-align: center;
}
.side .datatitle:before {
  position: absolute;
  top: -50px;
  display: block;
  width: 100%;
  padding-top: 10px;
  content: url(/import/tenant_1/133.167.33.124/html/images/11news/deco01.png);
  background: url(/import/tenant_1/133.167.33.124/html/images/11news/bg01.png) no-repeat top center;
  background-size: cover;
}
.side .data {
  text-align: center;
  border-bottom: 1px solid #917b61;
}
.side a {
  display: inline-block;
  padding: 10px;
}

@media only screen and (max-width: 1024px) {
  .side .list {
    width: 48%;
  }

  .list.-archive {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .list.-archive .datatitle {
    width: 100%;
  }
  .list.-archive .data {
    width: 48%;
  }
}
@media only screen and (max-width: 599px) {
  .side .list {
    width: 100%;
  }

  .list.-archive .data {
    width: 100%;
  }
}
/*********************************************
    各個別コンテンツ
*********************************************/
/**
オープニング
*/
.load-screen {
  position: fixed;
  z-index: 10000;
  top: 0;
  left: 0;
  display: none;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  background: #1b1b1b;
  background-color: #fff;
}

.load-screen .trimmingInner {
  padding-top: 100vh !important;
}

.load-screen .trimmingInner img {
  width: 100%;
  max-width: 100%;
  height: 100%;
}

.load-screen .greyscale .trimmingInner img {
  -webkit-transition: 1s linear;
  transition: 1s linear;
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}

.load-screen .screen-logo {
  position: absolute;
  top: 60%;
  right: 0;
  left: 50%;
  display: none;
  width: 35rem;
  margin: auto;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  text-align: center;
}

.lower-screen .screen-logo {
  top: 50%;
  left: 0;
}

.entry-btn {
  font-weight: bold;
  position: absolute;
  right: 0;
  bottom: 10%;
  left: 60%;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 20rem;
  max-width: 60%;
  margin: auto;
  padding: 1rem;
  -webkit-transition: .3s linear;
  transition: .3s linear;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  text-align: center;
  color: #4e4540;
  border: 2px solid #4e4540;
  background-color: #fff;
}

.entry-btn:hover {
  cursor: pointer;
  opacity: 1;
  color: #4e4540;
  background-color: #fff;
}

@media (max-width: 1024px) {
  .load-screen img {
    position: absolute;
    top: 0;
    left: 50%;
    width: auto !important;
    max-width: none !important;
    height: 105% !important;
    transform: translateX(-50%);
  }

  .load-screen .screen-logo {
    top: 62%;
    left: 60%;
    width: 20rem;
  }

  .lower-screen .screen-logo {
    top: 50% !important;
    left: 0;
    margin: auto;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .entry-btn {
    bottom: 0;
    left: 60%;
  }
}
@media (max-width: 599px) {
  .load-screen .screen-logo {
    top: 10%;
    left: 0;
    width: 20rem;
  }

  .entry-btn {
    left: 0;
  }
}
/**
トップページ
*/
/*ホームビジュアル（トップ）*/
.homevisual .img {
  min-height: 300px;
}

/*ヤマダチエサニーバレエスクールについて（トップ）*/
.home02 {
  position: relative;
}
.home02:before {
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  display: block;
  width: 100px;
  height: 100px;
  content: "";
  background: url(/import/tenant_1/133.167.33.124/html/images/01home/deco01_bottomleft.png) no-repeat bottom left;
  background-size: contain;
}
.home02:after {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  display: block;
  width: 100px;
  height: 100px;
  content: "";
  background: url(/import/tenant_1/133.167.33.124/html/images/01home/deco01_topright.png) no-repeat top right;
  background-size: contain;
}
.home02 .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 50vw;
  height: 100%;
}

.home02box {
  position: relative;
  z-index: 1;
  width: 70%;
  margin-left: auto;
  padding: 100px 0 100px 15%;
}
.home02box:before {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  content: "";
  background: linear-gradient(to right, rgba(252, 246, 253, 0) 0%, #fcf6fd 10%, #fcf6fd 100%);
}
.home02box .block-txt {
  position: relative;
  z-index: 3;
  padding-left: 50px;
}

@media only screen and (max-width: 599px) {
  .home02 .img {
    position: relative;
    width: 100%;
  }
  .home02 .img:before {
    display: block;
    padding-top: 40%;
    content: "";
  }
  .home02 .img img {
    position: absolute;
    top: 0;
    left: 0;
  }

  .home02box {
    width: 100%;
    margin-top: -20px;
    padding: 40px 0;
  }
  .home02box:before {
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(to bottom, rgba(252, 246, 253, 0) 0%, #fcf6fd 5%, #fcf6fd 100%);
  }
  .home02box .block-txt {
    padding-left: 20px;
  }
  .home02box .btn a {
    margin: 0 auto;
  }
}
/*バレエの魅力（トップ）*/
.home03 {
  position: relative;
}
.home03:before {
  position: absolute;
  z-index: 2;
  right: 0;
  bottom: 0;
  display: block;
  width: 100px;
  height: 100px;
  content: "";
  background: url(/import/tenant_1/133.167.33.124/html/images/01home/deco02_bottomright.png) no-repeat bottom left;
  background-size: contain;
}
.home03:after {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  display: block;
  width: 100px;
  height: 100px;
  content: "";
  background: url(/import/tenant_1/133.167.33.124/html/images/01home/deco02_topleft.png) no-repeat top right;
  background-size: contain;
}
.home03 .img {
  position: absolute;
  top: 0;
  right: 0;
  width: 50vw;
  height: 100%;
}

.home03box {
  position: relative;
  z-index: 1;
  width: 70%;
  padding: 100px 15% 100px 0;
}
.home03box:before {
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  width: 100vw;
  height: 100%;
  content: "";
  background: linear-gradient(to left, rgba(255, 255, 255, 0) 0%, white 10%, white 100%);
}
.home03box .block-txt {
  position: relative;
  z-index: 3;
  padding-right: 50px;
}

@media only screen and (max-width: 599px) {
  .home03 .img {
    position: relative;
    width: 100%;
  }
  .home03 .img:before {
    display: block;
    padding-top: 40%;
    content: "";
  }
  .home03 .img img {
    position: absolute;
    top: 0;
    left: 0;
  }

  .home03box {
    width: 100%;
    margin-top: -20px;
    padding: 40px 0;
  }
  .home03box:before {
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 5%, white 100%);
  }
  .home03box .block-txt {
    padding-right: 20px;
  }
  .home03box .btn a {
    margin: 0 auto;
  }
}
/*クラス紹介等（トップ）*/
.list-home04 .item {
  width: 33.333%;
}
.list-home04 .img a {
  display: block;
}
.list-home04 .item:not(:last-of-type) .block-txt:after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 1px;
  height: 60%;
  content: "";
  transform: translateY(-50%);
  background: #917b61;
}
.list-home04 .block-txt {
  position: relative;
  z-index: 1;
  padding: 30px 20px;
  background: url(/import/tenant_1/133.167.33.124/html/images/01home/bg01.png);
  background-size: cover;
}
.list-home04 .block-txt:before {
  line-height: 70px;
  position: absolute;
  z-index: -2;
  top: 0;
  left: 50%;
  display: block;
  width: 180px;
  height: 70px;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/deco02.png);
  transform: translate(-50%, -50%);
  text-align: center;
  border-radius: 50% 50% 0 0 / 70% 70% 0 0;
  background: url(/import/tenant_1/133.167.33.124/html/images/01home/bg01.png);
  background-size: cover;
}
.list-home04 .ttl {
  font-size: 20px;
  margin-bottom: 10px;
}
.list-home04 .btn a {
  margin: 0 auto;
}
@media only screen and (max-width: 599px) {
  .list-home04 .item {
    width: 100%;
  }
  .list-home04 .item:not(:last-of-type) .block-txt:after {
    content: none;
  }
}

/*各スタジオ（トップ）*/
.list-home05 .block-img {
  position: relative;
  margin-bottom: 20px;
}
.list-home05 .block-img:before {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 50%;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/deco03_top.png);
  transform: translate(-50%, -50%);
}
.list-home05 .block-img:after {
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 50%;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/deco03_bottom.png);
  transform: translate(-50%, 80%);
}
.list-home05 .block-img a {
  position: relative;
  display: block;
}
.list-home05 .block-img a:before {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  opacity: .5;
  background: #757575;
}
.list-home05 .img:after {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 50%;
  display: block;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  content: "";
  transform: translate(-50%, -50%);
  border: 1px solid #917b61;
}
.list-home05 .cap {
  font-size: 28px;
  position: absolute;
  z-index: 4;
  top: 50%;
  width: 100%;
  transform: translateY(-50%);
  text-align: center;
  color: #fff;
}
.list-home05 .capin {
  font-size: 14px;
  line-height: 1.3em;
  display: block;
}
.list-home05 .disc {
  text-align: center;
}

.block-home05 {
  position: relative;
  width: 80%;
  min-width: 280px;
  margin: 0 auto;
  padding: 20px 0;
  background: #fff;
}
.block-home05:before {
  position: absolute;
  top: 0;
  left: 50%;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/deco04.png);
  transform: translate(-50%, -50%);
}
.block-home05 .txt {
  margin-bottom: 10px;
  text-align: center;
}

/*生徒・卒業生の声（トップ）*/
.block-home06 {
  width: 80%;
  margin: 0 auto;
}
.block-home06 .img {
  width: 60%;
  min-width: 280px;
  margin: 0 auto 40px;
}
.block-home06 .data {
  font-size: 18px;
  line-height: 1.3em;
  position: relative;
  padding: 0 60px;
  text-align: center;
}
.block-home06 .data .datain {
  display: block;
  padding-bottom: 10px;
  border-bottom: 1px solid #917b61;
}
.block-home06 .data:before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/deco05_left.png);
  transform: translate(0, 50%);
}
.block-home06 .data:after {
  position: absolute;
  right: 0;
  bottom: 0;
  content: url(/import/tenant_1/133.167.33.124/html/images/01home/doco05_right.png);
  transform: translate(0, 50%);
}
@media only screen and (max-width: 599px) {
  .block-home06 {
    width: 100%;
  }
  .block-home06 .data {
    padding: 0 30px;
  }
  .block-home06 .data:before {
    transform: translate(0, 50%) scale(0.5);
    transform-origin: left;
  }
  .block-home06 .data:after {
    transform: translate(0, 50%) scale(0.5);
    transform-origin: right;
  }
}

/*ギャラリー（トップ）*/
.home08 {
  padding-bottom: 120px;
  background: url(/import/tenant_1/133.167.33.124/html/images/01home/bg01.png);
}

/**
下層ページ共通要素
*/
/*トップビジュアル*/
.topvisual {
  position: relative;
}
.topvisual .img {
  position: relative;
  min-height: 300px;
}
.topvisual .img:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  opacity: .3;
  background: #000;
}
.topvisual .ttl {
  font-size: 38px;
  position: absolute;
  top: calc(50% + 70px);
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
}
.topvisual .ttlin {
  font-size: 18px;
  line-height: 1.3em;
  display: block;
}
@media only screen and (max-width: 599px) {
  .topvisual .img {
    min-height: 250px;
  }
  .topvisual .ttl {
    font-size: 28px;
    top: calc(50% + 30px);
  }
}

/*パンくずリスト*/
@media only screen and (max-width: 599px) {
  .breadcrumb {
    display: none;
  }
}

.list-breadcrumb {
  margin-top: 10px;
}
.list-breadcrumb .item {
  display: inline-block;
  color: #b187ce;
}
.list-breadcrumb .item:not(:last-of-type):after {
  display: inline-block;
  margin-right: 5px;
  margin-left: 10px;
  content: "｜";
}
.list-breadcrumb .item:last-of-type {
  color: #917b61;
}

/*マップ*/
.map {
  max-height: 600px;
}

/*フィルター付き画像*/
.img.-filter01 {
  position: relative;
}
.img.-filter01:before {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  opacity: .5;
  background: #757575;
}

/**
下層ページ各コンテンツ
*/
/*当スクールについて*/
.about03 {
  position: relative;
  background: #fcf6fd;
}
.about03:before {
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  display: block;
  width: 100px;
  height: 100px;
  content: "";
  background: url(/import/tenant_1/133.167.33.124/html/images/01home/deco01_bottomleft.png) no-repeat bottom left;
  background-size: contain;
}
.about03:after {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  display: block;
  width: 100px;
  height: 100px;
  content: "";
  background: url(/import/tenant_1/133.167.33.124/html/images/01home/deco01_topright.png) no-repeat top right;
  background-size: contain;
}
@media only screen and (max-width: 599px) {
  .about03:before {
    width: 70px;
    height: 70px;
  }
  .about03:after {
    width: 70px;
    height: 70px;
  }
}

/*指導方針*/
.list-guide01 {
  counter-reset: item;
}
.list-guide01 .item {
  margin-bottom: 80px;
}
.list-guide01 .item:nth-of-type(odd) .block-img {
  margin-right: -5%;
}
.list-guide01 .item:nth-of-type(odd) .block-txt {
  margin-left: auto;
}
.list-guide01 .item:nth-of-type(even) {
  flex-direction: row-reverse;
  padding-left: 30px;
}
.list-guide01 .item:nth-of-type(even) .block-img {
  margin-left: -5%;
}
.list-guide01 .item:nth-of-type(even) .block-txt {
  margin-right: auto;
}
.list-guide01 .block-img {
  width: 40%;
}
.list-guide01 .block-txt {
  position: relative;
  width: 65%;
  margin-top: 50px;
  padding: 30px 60px;
  background: url(/import/tenant_1/133.167.33.124/html/images/03guidance/bg01.png);
}
.list-guide01 .block-txt:before {
  position: absolute;
  top: 40px;
  left: 0;
  content: url(/import/tenant_1/133.167.33.124/html/images/03guidance/deco03.png);
  transform: translate(-50%, -50%);
}
.list-guide01 .block-txt:after {
  position: absolute;
  z-index: 2;
  right: 0;
  bottom: 0;
  display: block;
  width: 100px;
  height: 100px;
  content: "";
  background: url(/import/tenant_1/133.167.33.124/html/images/03guidance/deco02.png) no-repeat top right;
  background-size: contain;
}
.list-guide01 .head {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
}
.list-guide01 .head:before {
  font-size: 14px;
  position: absolute;
  top: 15px;
  left: 0;
  content: "Guidance";
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  background: url(/import/tenant_1/133.167.33.124/html/images/03guidance/deco03.png) no-repeat center;
  background-size: contain;
}
.list-guide01 .head:after {
  font-size: 40px;
  position: absolute;
  top: 50px;
  left: 0;
  content: counter(item);
  counter-increment: item;
  transform: translate(-50%, -50%);
  color: #fff;
}
@media only screen and (max-width: 1024px) {
  .list-guide01 .block-img {
    width: 80%;
  }
  .list-guide01 .block-txt {
    width: 80%;
    margin-top: -30px;
  }
}
@media only screen and (max-width: 599px) {
  .list-guide01 .item:nth-of-type(even) {
    padding-left: 0;
  }
  .list-guide01 .block-img {
    width: 100%;
  }
  .list-guide01 .block-txt {
    width: 100%;
    margin-top: 0;
    padding: 70px 20px;
  }
  .list-guide01 .block-txt:before {
    position: absolute;
    top: 0;
    left: 50%;
    content: url(/import/tenant_1/133.167.33.124/html/images/03guidance/deco03.png);
    transform: translate(-50%, -50%);
  }
  .list-guide01 .head:before {
    top: -20px;
    left: 50%;
  }
  .list-guide01 .head:after {
    font-size: 40px;
    top: 15px;
    left: 50%;
  }
}

/*講師紹介*/
.instruct02 {
  padding-bottom: 80px;
  background: url(/import/tenant_1/133.167.33.124/html/images/04instructor/bg01.png);
}

.list-instruct02a .item {
  position: relative;
}
.list-instruct02a .item:after {
  display: block;
  height: 30px;
  margin: 50px 0;
  content: "";
  background-image: url(/import/tenant_1/133.167.33.124/html/images/04instructor/deco01_left.png), url(/import/tenant_1/133.167.33.124/html/images/04instructor/deco01_right.png);
  background-repeat: no-repeat;
  background-position: left, right;
}
.list-instruct02a .item:before {
  position: absolute;
  bottom: 10px;
  left: 50%;
  display: block;
  width: calc(100% - 150px);
  height: 1px;
  content: "";
  transform: translateX(-50%);
  background: #917b61;
}
.list-instruct02a .head {
  font-size: 28px;
  margin-bottom: 1em;
  color: #836d93;
}
.list-instruct02a .headin {
  font-size: 16px;
  line-height: 1.3em;
  display: block;
  text-align: right;
  color: #917b61;
}

/*クラス紹介*/
.list-class02a {
  border: 1px solid #c9c9c9;
  background: #fff;
}
.list-class02a > .item {
  display: flex;
}
.list-class02a > .item:not(:last-child) {
  border-bottom: 1px solid #c9c9c9;
}
.list-class02a .datattl {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  justify-content: center;
  width: 180px;
  padding: 10px;
  background: #ded4e5;
}
.list-class02a .data {
  padding: 10px 20px;
}
@media only screen and (max-width: 599px) {
  .list-class02a > .item {
    flex-wrap: wrap;
  }
  .list-class02a .datattl {
    width: 100%;
  }
  .list-class02a .data {
    width: 100%;
  }
}

.list-class02b .item {
  position: relative;
  padding-left: 1.2em;
}
.list-class02b .item:before {
  position: absolute;
  top: 5px;
  left: 0;
  display: block;
  width: 15px;
  height: 15px;
  content: "";
  background: #836d93;
}

.list-class03 .item {
  display: flex;
}
.list-class03 .item:nth-child(odd) {
  background: #eee9f1;
}
.list-class03 .datattl {
  font-size: 18px;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  justify-content: center;
  width: 250px;
  padding: 20px 5px;
  color: #8d7a9c;
}
.list-class03 .data {
  padding: 20px;
}
@media only screen and (max-width: 1024px) {
  .list-class03 .item {
    flex-wrap: wrap;
  }
  .list-class03 .datattl {
    width: 100%;
    padding-bottom: 0;
  }
}

.list-class04 {
  overflow: auto;
}
.list-class04 .head {
  font-size: 20px;
  margin-bottom: 15px;
  color: #836d93;
}
.list-class04 table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #c9c9c9;
}
.list-class04 th,
.list-class04 td {
  min-width: 100px;
  padding: 10px 5px;
  border: 1px solid #c9c9c9;
}
.list-class04 th {
  background: #ded4e5;
}
.list-class04 td {
  width: 16%;
  text-align: center;
  background: #fff;
}

.list-class04.-type01 td {
  width: 40%;
}

/*入学までの流れ*/
.list-flow01 {
  counter-reset: item;
}
.list-flow01 .item:not(:last-child) {
  margin-bottom: 100px;
}
.list-flow01 .head {
  font-size: 28px;
  margin-bottom: 10px;
  color: #917b61;
}
.list-flow01 .img {
  position: relative;
  border: 2px solid #917b61;
}
.list-flow01 .img:before {
  font-size: 14px;
  line-height: 80px;
  position: absolute;
  z-index: 1;
  top: 20px;
  left: 35px;
  width: 120px;
  height: 120px;
  content: "Flow";
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  background: url(/import/tenant_1/133.167.33.124/html/images/07flow/deco01.png) no-repeat center;
  background-size: contain;
}
.list-flow01 .img:after {
  font-size: 40px;
  position: absolute;
  z-index: 2;
  top: 35px;
  left: 35px;
  content: counter(item);
  counter-increment: item;
  transform: translate(-50%, -50%);
  color: #fff;
}
@media only screen and (max-width: 599px) {
  .list-flow01 .item:not(:last-child) {
    margin-bottom: 50px;
  }
  .list-flow01 .head {
    font-size: 20px;
  }
  .list-flow01 .img:before {
    line-height: 60px;
    left: 20px;
    width: 90px;
    height: 90px;
  }
  .list-flow01 .img:after {
    font-size: 32px;
    left: 20px;
  }
}

/*ボイス*/
.list-voice01 .item {
  position: relative;
  padding: 25px;
  background: url(/import/tenant_1/133.167.33.124/html/images/08voice/bg01.png);
}
.list-voice01 .item:after {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  display: block;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  content: "";
  transform: translate(-50%, -50%);
  border: 1px solid #917b61;
}
.list-voice01 .img {
  margin-bottom: 10px;
  margin: 0 auto;
  width: 80%;
  min-width: 230px;
}
.list-voice01 .datattl {
  font-size: 18px;
  position: relative;
  padding: 0 60px 10px;
  text-align: center;
}
.list-voice01 .datattl:before {
  position: absolute;
  bottom: 10px;
  left: 50%;
  display: block;
  width: calc(100% - 120px);
  height: 1px;
  content: "";
  transform: translateX(-50%);
  background: #917b61;
}
.list-voice01 .datattl:after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 30px;
  content: "";
  background-image: url(/import/tenant_1/133.167.33.124/html/images/08voice/deco01_left.png), url(/import/tenant_1/133.167.33.124/html/images/08voice/deco01_right.png);
  background-repeat: no-repeat;
  background-position: left center, right center;
  background-size: contain;
}
.list-voice01 .belong {
  font-size: 14px;
  margin-bottom: 5px;
  text-align: center;
  color: #917b61;
}
@media only screen and (max-width: 599px) {
  .list-voice01 .item {
    padding: 20px;
  }
  .list-voice01 .datattl {
    margin-bottom: 5px;
    padding: 0 20px 20px;
  }
  .list-voice01 .datattl:before {
    width: calc(100% - 80px);
  }
  .list-voice01 .datattl:after {
    background-size: 30px;
  }
}

/*ギャラリー詳細*/
.gallerydtl01box .block {
  padding: 30px 50px 40px;
}
.gallerydtl01box .ttl {
  font-size: 28px;
  position: relative;
  padding: 0 60px 10px;
  text-align: center;
  color: #836d93;
}
.gallerydtl01box .ttl:before {
  position: absolute;
  bottom: 10px;
  left: 50%;
  display: block;
  width: calc(100% - 140px);
  height: 1px;
  content: "";
  transform: translateX(-50%);
  background: #917b61;
}
.gallerydtl01box .ttl:after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 30px;
  content: "";
  background-image: url(/import/tenant_1/133.167.33.124/html/images/08voice/deco01_left.png), url(/import/tenant_1/133.167.33.124/html/images/08voice/deco01_right.png);
  background-repeat: no-repeat;
  background-position: left center, right center;
  background-size: contain;
}
.gallerydtl01box .ttlin {
  display: inline-block;
}
.gallerydtl01box .time {
  display: block;
  text-align: center;
  color: #917b61;
}
.gallerydtl01box .img {
  margin-bottom: 30px;
}
.gallerydtl01box .list {
  margin-bottom: 30px;
}
@media only screen and (max-width: 599px) {
  .gallerydtl01box .block {
    padding: 20px;
  }
  .gallerydtl01box .ttl {
    font-size: 20px;
    margin-bottom: 5px;
    padding: 0 20px 20px;
  }
  .gallerydtl01box .ttl:before {
    width: calc(100% - 80px);
  }
  .gallerydtl01box .ttl:after {
    background-size: 30px;
  }
}

.list-gallerydtl01 .item a {
  position: relative;
  display: block;
}
.list-gallerydtl01 .item:first-child {
  margin-right: 40px;
}
.list-gallerydtl01 .item:first-child a:before {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 1px;
  margin-right: 30px;
  content: "";
  vertical-align: middle;
  background: #000;
}
.list-gallerydtl01 .item:first-child a:after {
  position: absolute;
  top: 55%;
  left: 0;
  width: 1px;
  height: 10px;
  content: "";
  transform: translate(-50%, -100%) rotate(45deg);
  transform-origin: left bottom;
  background: #000;
}
.list-gallerydtl01 .item:last-child {
  margin-left: 40px;
}
.list-gallerydtl01 .item:last-child a:after {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 1px;
  margin-left: 30px;
  content: "";
  vertical-align: middle;
  background: #000;
}
.list-gallerydtl01 .item:last-child a:before {
  position: absolute;
  top: 55%;
  right: 0;
  width: 1px;
  height: 10px;
  content: "";
  transform: translate(50%, -100%) rotate(-45deg);
  transform-origin: left bottom;
  background: #000;
}
@media only screen and (max-width: 599px) {
  .list-gallerydtl01 .item:first-child {
    margin-right: 20px;
  }
  .list-gallerydtl01 .item:last-child {
    margin-left: 20px;
  }
}

.gallerydtl02 {
  padding-bottom: 150px;
  background: url(/import/tenant_1/133.167.33.124/html/images/gallery_detail/bg01.png);
}
text-align: right;
  color: #917b61;
}

/*クラス紹介*/
.list-class02a {
  border: 1px solid #c9c9c9;
}
.list-class02a > .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.list-class02a > .item:not(:last-child) {
  border-bottom: 1px solid #c9c9c9;
}
.list-class02a .datattl {
  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;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 180px;
  padding: 10px;
  background: #ded4e5;
}
.list-class02a .data {
  padding: 10px 20px;
}
@media only screen and (max-width: 599px) {
  .list-class02a > .item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .list-class02a .datattl {
    width: 100%;
  }
  .list-class02a .data {
    width: 100%;
  }
}

.list-class02b .item {
  position: relative;
  padding-left: 1.2em;
}
.list-class02b .item:before {
  position: absolute;
  top: 5px;
  left: 0;
  display: block;
  width: 15px;
  height: 15px;
  content: "";
  background: #836d93;
}

.list-class03 .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.list-class03 .item:nth-child(odd) {
  background: #eee9f1;
}
.list-class03 .datattl {
  font-size: 18px;
  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;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 250px;
  padding: 20px 5px;
  color: #8d7a9c;
}
.list-class03 .data {
  padding: 20px;
}
@media only screen and (max-width: 1024px) {
  .list-class03 .item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .list-class03 .datattl {
    width: 100%;
    padding-bottom: 0;
  }
}

.list-class04 {
  overflow: auto;
}
.list-class04 .head {
  font-size: 20px;
  margin-bottom: 15px;
  color: #836d93;
}
.list-class04 table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #c9c9c9;
}
.list-class04 th,
.list-class04 td {
  min-width: 100px;
  padding: 10px 5px;
  border: 1px solid #c9c9c9;
}
.list-class04 th {
  background: #ded4e5;
}
.list-class04 td {
  width: 16%;
  text-align: center;
  background: #fff;
}

.list-class04.-type01 td {
  width: 40%;
}

/*入学までの流れ*/
.list-flow01 {
  counter-reset: item;
}
.list-flow01 .item:not(:last-child) {
  margin-bottom: 100px;
}
.list-flow01 .head {
  font-size: 28px;
  margin-bottom: 10px;
  color: #917b61;
}
.list-flow01 .img {
  position: relative;
  border: 2px solid #917b61;
}
.list-flow01 .img:before {
  font-size: 14px;
  line-height: 80px;
  position: absolute;
  z-index: 1;
  top: 20px;
  left: 35px;
  width: 120px;
  height: 120px;
  content: "Flow";
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  background: url(/import/tenant_1/133.167.33.124/html/images/07flow/deco01.png) no-repeat center;
  background-size: contain;
}
.list-flow01 .img:after {
  font-size: 40px;
  position: absolute;
  z-index: 2;
  top: 35px;
  left: 35px;
  content: counter(item);
  counter-increment: item;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
}
@media only screen and (max-width: 599px) {
  .list-flow01 .item:not(:last-child) {
    margin-bottom: 50px;
  }
  .list-flow01 .head {
    font-size: 20px;
  }
  .list-flow01 .img:before {
    line-height: 60px;
    left: 20px;
    width: 90px;
    height: 90px;
  }
  .list-flow01 .img:after {
    font-size: 32px;
    left: 20px;
  }
}

/*ボイス*/
.list-voice01 .item {
  position: relative;
  padding: 25px;
  background: url(/import/tenant_1/133.167.33.124/html/images/08voice/bg01.png);
}
.list-voice01 .item:after {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  display: block;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  content: "";
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border: 1px solid #917b61;
}
.list-voice01 .img {
  margin-bottom: 10px;
}
.list-voice01 .datattl {
  font-size: 18px;
  position: relative;
  padding: 0 60px 10px;
  text-align: center;
}
.list-voice01 .datattl:before {
  position: absolute;
  bottom: 10px;
  left: 50%;
  display: block;
  width: calc(100% - 120px);
  height: 1px;
  content: "";
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #917b61;
}
.list-voice01 .datattl:after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 30px;
  content: "";
  background-image: url(/import/tenant_1/133.167.33.124/html/images/08voice/deco01_left.png), url(/import/tenant_1/133.167.33.124/html/images/08voice/deco01_right.png);
  background-repeat: no-repeat;
  background-position: left center, right center;
  background-size: contain;
}
.list-voice01 .belong {
  font-size: 14px;
  margin-bottom: 5px;
  text-align: center;
  color: #917b61;
}
@media only screen and (max-width: 599px) {
  .list-voice01 .item {
    padding: 20px;
  }
  .list-voice01 .datattl {
    margin-bottom: 5px;
    padding: 0 20px 20px;
  }
  .list-voice01 .datattl:before {
    width: calc(100% - 80px);
  }
  .list-voice01 .datattl:after {
    background-size: 30px;
  }
}

/*ギャラリー詳細*/
.gallerydtl01box .block {
  padding: 30px 50px 40px;
}
.gallerydtl01box .ttl {
  font-size: 28px;
  position: relative;
  padding: 0 60px 10px;
  text-align: center;
  color: #836d93;
}
.gallerydtl01box .ttl:before {
  position: absolute;
  bottom: 10px;
  left: 50%;
  display: block;
  width: calc(100% - 140px);
  height: 1px;
  content: "";
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #917b61;
}
.gallerydtl01box .ttl:after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 30px;
  content: "";
  background-image: url(/import/tenant_1/133.167.33.124/html/images/08voice/deco01_left.png), url(/import/tenant_1/133.167.33.124/html/images/08voice/deco01_right.png);
  background-repeat: no-repeat;
  background-position: left center, right center;
  background-size: contain;
}
.gallerydtl01box .ttlin {
  display: inline-block;
}
.gallerydtl01box .time {
  display: block;
  text-align: center;
  color: #917b61;
}
.gallerydtl01box .img {
  margin-bottom: 30px;
}
.gallerydtl01box .list {
  margin-bottom: 30px;
}
@media only screen and (max-width: 599px) {
  .gallerydtl01box .block {
    padding: 20px;
  }
  .gallerydtl01box .ttl {
    font-size: 20px;
    margin-bottom: 5px;
    padding: 0 20px 20px;
  }
  .gallerydtl01box .ttl:before {
    width: calc(100% - 80px);
  }
  .gallerydtl01box .ttl:after {
    background-size: 30px;
  }
}

.list-gallerydtl01 .item a {
  position: relative;
  display: block;
}
.list-gallerydtl01 .item:first-child {
  margin-right: 40px;
}
.list-gallerydtl01 .item:first-child a:before {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 1px;
  margin-right: 30px;
  content: "";
  vertical-align: middle;
  background: #000;
}
.list-gallerydtl01 .item:first-child a:after {
  position: absolute;
  top: 55%;
  left: 0;
  width: 1px;
  height: 10px;
  content: "";
  -webkit-transform: translate(-50%, -100%) rotate(45deg);
      -ms-transform: translate(-50%, -100%) rotate(45deg);
          transform: translate(-50%, -100%) rotate(45deg);
  -webkit-transform-origin: left bottom;
      -ms-transform-origin: left bottom;
          transform-origin: left bottom;
  background: #000;
}
.list-gallerydtl01 .item:last-child {
  margin-left: 40px;
}
.list-gallerydtl01 .item:last-child a:after {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 1px;
  margin-left: 30px;
  content: "";
  vertical-align: middle;
  background: #000;
}
.list-gallerydtl01 .item:last-child a:before {
  position: absolute;
  top: 55%;
  right: 0;
  width: 1px;
  height: 10px;
  content: "";
  -webkit-transform: translate(50%, -100%) rotate(-45deg);
      -ms-transform: translate(50%, -100%) rotate(-45deg);
          transform: translate(50%, -100%) rotate(-45deg);
  -webkit-transform-origin: left bottom;
      -ms-transform-origin: left bottom;
          transform-origin: left bottom;
  background: #000;
}
@media only screen and (max-width: 599px) {
  .list-gallerydtl01 .item:first-child {
    margin-right: 20px;
  }
  .list-gallerydtl01 .item:last-child {
    margin-left: 20px;
  }
}

.gallerydtl02 {
  padding-bottom: 150px;
  background: url(/import/tenant_1/133.167.33.124/html/images/gallery_detail/bg01.png);
}
