@charset "UTF-8";
#wrap {
  background-color: unset;
}

/*=================================================================*/
/*	contents
/*=================================================================*/
.contents::before, .contents::after {
  position: fixed;
  content: "";
  width: calc(100% - 240px);
  height: 100%;
  left: 0;
  top: 0;
  margin: 0 0 0 240px;
}
.contents::before {
  background: url(../img/top/white_mesh.png) repeat 0 0;
  background-size: 10px 10px;
  z-index: -1;
}
.contents::after {
  background: url(../img/top/bg_top.jpg) no-repeat center center;
  background-size: cover;
  z-index: -2;
}

/*=================================================================*/
/*	トップ共通
/*=================================================================*/
h2.blueBackTitle {
  background: url(../img/top/bg_top_title02.jpg) no-repeat center center;
  padding: 45px 65px 50px;
  background-size: cover;
}
h2.blueBackTitle span {
  display: block;
  font-size: 1.6rem;
  color: #FFF;
  font-weight: normal;
  margin-top: 15px;
  position: relative;
}
h2.blueBackTitle span::after {
  position: absolute;
  content: "";
  width: 30px;
  height: 1px;
  background-color: #FFF;
  left: 0;
  bottom: -15px;
}

/*=================================================================*/
/*	topMain
/*=================================================================*/
.topMain {
  background-image: linear-gradient(135deg, #00bef2, #afe6fa);
}
.topMain .charm {
  max-width: 1400px;
  margin: 0 auto;
  z-index: 1;
  padding: 0 30px 60px;
  position: relative;
}
.topMain .charm::after {
  position: absolute;
  content: "";
  width: 200%;
  height: 100%;
  background-color: #FFF;
  left: -50%;
  top: -50%;
  border-radius: 0 0 100% 100%;
  z-index: -1;
}
.topMain .charm .main_img {
  position: relative;
}
.topMain .charm .main_img::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-image: linear-gradient(90deg, rgba(255, 255, 255, 0) 60%, rgba(0, 0, 0, 0.2));
  border-radius: 0 0 50px 50px;
  z-index: 1;
}
.topMain .charm .main_img img {
  border-radius: 0 0 50px 50px;
}
.topMain .charm .four_charm {
  position: absolute;
  top: 2%;
  right: 70px;
  width: 42%;
  min-width: 350px;
  z-index: 10;
}
.topMain .charm .four_charm .charm_position {
  position: relative;
}
.topMain .charm .four_charm .topTxt {
  position: relative;
  width: 24vw;
  margin: 0 auto -12%;
  z-index: 10;
  text-align: center;
  max-width: 510px;
}
.topMain .charm .four_charm .charmList {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  padding: 13% 4% 9%;
}
.topMain .charm .four_charm .charmList li {
  font-weight: bold;
  font-size: min(1.7vw, 3rem);
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: relative;
  padding: 1.5% 0 1.5% 14%;
  letter-spacing: 0.05em;
  line-height: 1.2;
}
.topMain .charm .four_charm .charmList li:nth-child(4) {
  padding: 2.7% 2% 3.2% 14%;
}
.topMain .charm .four_charm .charmList li:nth-child(5) {
  padding: 2.7% 2% 2% 14%;
}
.topMain .charm .four_charm .charmList li .num {
  font-family: "shippori mincho";
  position: absolute;
  left: 6px;
  top: 4px;
  font-size: min(2.6vw, 4.3rem);
  transform: skewX(-10deg);
  display: inline-block;
  color: #eaf5ff;
  letter-spacing: 0;
}
.topMain .charm .four_charm .charmList li .num.n01 {
  color: #e867aa;
}
.topMain .charm .four_charm .charmList li .num.n02 {
  color: #00afec;
}
.topMain .charm .four_charm .charmList li .num.n03 {
  color: #f1b42a;
}
.topMain .charm .four_charm .charmList li .num.n04 {
  color: #74ca4e;
  top: 0px;
}
.topMain .charm .four_charm .charmList li .num.n05 {
  color: #954fce;
  top: 0px;
}
.topMain .charm .four_charm .charmList li .small {
  display: block;
  font-size: min(1vw, 2rem);
}
.topMain .charm .four_charm .detailLink {
  position: absolute;
  left: 50%;
  margin-left: -124px;
  bottom: -28px;
  border-radius: 6px;
  background: #1b539e url(../img/union/icon_white_circle.svg) no-repeat left 30px center;
  filter: drop-shadow(2px 0px 4px rgba(0, 0, 0, 0.2));
  padding: 17px 30px 17px 64px;
  font-weight: bold;
  color: #fff;
  display: inline-block;
  margin-top: -50px;
}
.topMain .slogan {
  text-align: center;
  padding: 0 20px 40px;
}
.topMain .slogan img {
  border-radius: 12px;
  overflow: hidden;
}
.topMain .slogan .bn_first {
  margin: 0 0 20px;
}
.topMain .slogan p {
  background-color: #FFF;
  max-width: 880px;
  border-radius: 12px;
  box-sizing: border-box;
  padding: 10px;
  margin: 0 auto;
}

/*=================================================================*/
/*	important
/*=================================================================*/
.important {
  display: flex;
  justify-content: space-between;
}
.important h2 {
  width: 130px;
  background-color: #ff2525;
  color: #FFF;
  text-align: center;
  font-size: 1.4rem;
  padding: 10px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
}
.important h2 span {
  display: inline-block;
  background: url(../img/top/icon_important.png) no-repeat center top;
  padding: 34px 0 0;
}
.important ul {
  width: calc(100% - 130px);
  box-sizing: border-box;
  padding: 30px 25px 20px;
}
.important ul li {
  display: flex;
  justify-content: space-between;
  margin: 0 0 10px;
}
.important ul li .date {
  font-size: 1.6rem;
  font-family: "century gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  width: 110px;
  letter-spacing: 0.05em;
}
.important ul li a {
  font-weight: bold;
  font-size: 1.6rem;
  display: block;
  width: calc(100% - 110px);
}

/*=================================================================*/
/*	topics
/*=================================================================*/
.topics {
  background-color: #f3f3f3;
}
.topics .topicsWrap {
  background-color: #FFF;
  max-width: 1200px;
  margin: 0 auto;
}
.topics .topicsWrap .col2 {
  display: flex;
  justify-content: space-between;
}
.topics .topicsWrap .col2 > a {
  display: block;
  width: 50%;
  position: relative;
  overflow: hidden;
}
.topics .topicsWrap .col2 > a::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/top/black_grade.png) repeat-x left bottom;
  left: 0;
  bottom: 0;
  z-index: 1;
}
.topics .topicsWrap .col2 > a span.pu {
  position: absolute;
  width: 100px;
  height: 100px;
  background: url(../img/top/bg_pickup.svg) no-repeat 0 0;
  left: 0;
  top: 0;
  z-index: 2;
}
.topics .topicsWrap .col2 > a span.pu span {
  display: inline-block;
  color: #FFF;
  transform: rotate(-45deg);
  margin: 25px 0 0 5px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  font-weight: bold;
}
.topics .topicsWrap .col2 > a img {
  max-width: 100%;
  transition: transform 0.2s linear;
  width: 100%;
  height: 336px;
  -o-object-fit: cover;
  object-fit: cover;
  overflow: hidden;
}
.topics .topicsWrap .col2 > a:hover img {
  transform: scale(1.03);
}
.topics .topicsWrap .col2 > a .txt {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 0 20px 20px;
  color: #FFF;
  z-index: 2;
}
.topics .topicsWrap .col2 > a .txt .date {
  font-size: 1.5rem;
  font-weight: normal;
  font-family: "century gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.05em;
}
.topics .topicsWrap .col2 > a .txt > p {
  font-size: 2rem;
  font-weight: bold;
}
.topics .topicsWrap .col4 {
  display: flex;
  justify-content: space-between;
}
.topics .topicsWrap .col4 > a {
  display: block;
  width: 25%;
}
.topics .topicsWrap .col4 > a .img {
  overflow: hidden;
}
.topics .topicsWrap .col4 > a .img img {
  max-width: 100%;
  transition: transform 0.2s linear;
  width: 100%;
  height: 200px;
  -o-object-fit: cover;
  object-fit: cover;
  overflow: hidden;
}
.topics .topicsWrap .col4 > a:hover img {
  transform: scale(1.03);
}
.topics .topicsWrap .col4 > a:hover .txt {
  background-color: #f1f1f1;
}
.topics .topicsWrap .col4 > a .txt {
  padding: 13px 14px 20px;
  position: relative;
  transition: all 0.2s;
}
.topics .topicsWrap .col4 > a .txt .cat {
  position: absolute;
  right: 10px;
  top: 10px;
  background-color: #0660ba;
  color: #FFF;
  font-size: 1.3rem;
  display: inline-block;
  padding: 6px 20px;
  line-height: 1;
  letter-spacing: 0.05em;
}
.topics .topicsWrap .col4 > a .txt .date {
  font-size: 1.4rem;
  font-weight: normal;
  font-family: "century gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.05em;
}
.topics .topicsWrap .col4 > a .txt > p {
  font-weight: bold;
  margin: 5px 0 0;
}

/*=================================================================*/
/*	info
/*=================================================================*/
.info .inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 80px 6% 100px;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
}
.info .inner .infoBox {
  width: 47%;
}
.info .inner .infoBox h2 {
  text-align: center;
  margin: 0 0 40px;
}
.info .inner .infoBox h2 span {
  display: inline-block;
  position: relative;
}
.info .inner .infoBox h2 span::before, .info .inner .infoBox h2 span::after {
  content: "";
  position: absolute;
  width: 28px;
  height: 1px;
  background-color: #000;
  top: 20px;
}
.info .inner .infoBox h2 span::before {
  left: -48px;
}
.info .inner .infoBox h2 span::after {
  right: -48px;
}
.info .inner .infoBox ul {
  margin: 0 0 24px;
}
.info .inner .infoBox ul li {
  padding: 13px 0;
  border-bottom: solid 1px #595959;
}
.info .inner .infoBox ul li a {
  display: block;
}
.info .inner .infoBox ul li a .date {
  font-size: 1.5rem;
  font-weight: normal;
  font-family: "century gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.05em;
  margin: 0 0 5px;
  display: inline-block;
}
.info .inner .infoBox ul li a p {
  font-size: 1.6rem;
  font-weight: bold;
}
.info .inner .infoBox ul li a:hover {
  opacity: 0.6;
}
.info .inner .infoBox .toList {
  text-align: right;
  padding: 0 10px;
}
.info .inner .infoBox .toList a {
  font-size: 1.5rem;
  font-weight: bold;
  display: inline-block;
  background: url(../img/union/icon_blue_arrow.svg) no-repeat left center;
  padding-left: 30px;
}

/*=================================================================*/
/*	features
/*=================================================================*/
.features {
  /*background-color: #FFF;*/
}
.features > a {
  display: block;
  box-sizing: border-box;
  padding: 6% 300px 6% 8%;
  position: relative;
  overflow: hidden;
  max-width: 1500px;
  margin: 0 auto;
  background-color: #FFF;
}
.features > a::before {
  position: absolute;
  content: "";
  width: 1000px;
  height: 600px;
  background-color: #000;
  opacity: 0.3;
  left: -500px;
  top: -140px;
  z-index: 1;
  transform: rotate(15deg);
}
.features > a::after {
  opacity: 0;
}
.features > a.on::after {
  /*animation: fadein02 1.5s both cubic-bezier(.22,.61,.36,1);*/
  animation: fadein02 1.5s ease-out forwards;
}
.features > a dl {
  color: #FFF;
  position: relative;
  z-index: 5;
  text-shadow: 0 0 18px rgba(0, 0, 0, 0.4);
}
.features > a dl dt {
  font-size: 5.6rem;
  font-weight: bold;
  font-weight: bold;
  margin: 0 0 10px;
}
.features > a dl dd {
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
.features > a .toDetail {
  position: absolute;
  right: 8%;
  top: 50%;
  text-align: center;
  display: block;
  border: solid 2px #FFF;
  border-radius: 100px;
  color: #FFF;
  padding: 15px 66px;
  letter-spacing: 0.1em;
  margin-top: -30px;
  background: #008fcf url(../img/union/icon_white_arrow.svg) no-repeat right 24px center;
  z-index: 5;
  transition: all 0.3s;
}
.features > a:hover .toDetail {
  background: #008fcf url(../img/union/icon_white_arrow.svg) no-repeat right 20px center;
}
.features .tani::after {
  content: "";
  background: url(../img/top/bg_tani02.jpg) no-repeat center center;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.features .dogran {
  padding: 6% 8% 6% 300px;
}
.features .dogran::after {
  content: "";
  background: url(../img/top/bg_dogran.jpg) no-repeat center center;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.features .dogran dl {
  text-align: right;
}
.features .dogran .toDetail {
  left: 8%;
  right: unset;
}
.features .dogran::before {
  right: -500px;
  left: unset;
  z-index: 1;
  transform: rotate(-15deg);
}
.features .domitory::after {
  content: "";
  background: url(../img/top/bg_domitory.jpg) no-repeat center center;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.features .horse {
  padding: 6% 8% 6% 300px;
}
.features .horse::after {
  content: "";
  background: url(../img/top/bg_horse.jpg) no-repeat center center;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.features .horse dl {
  text-align: right;
}
.features .horse .toDetail {
  left: 8%;
  right: unset;
}
.features .horse::before {
  right: -500px;
  left: unset;
  z-index: 1;
  transform: rotate(-15deg);
}

/*=================================================================*/
/*	social
/*=================================================================*/
.social {
  background: #FFF url(../img/top/bg_sns_media02.jpg) no-repeat right bottom;
  padding: 95px 40px 100px;
  background-size: cover;
}
.social .inner {
  max-width: 1100px;
  margin: 0 auto;
}
.social .inner h2 {
  font-size: 2.2rem;
  letter-spacing: 0.1em;
  margin: 0 0 34px;
}
.social .inner h2 strong {
  display: block;
  margin-top: 10px;
}
.social .inner .ttlTxt {
  margin: 0 0 78px;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.social .inner .snsWrap {
  display: flex;
  justify-content: space-between;
}
.social .inner .snsWrap .ttl {
  display: flex;
  justify-content: space-between;
  margin: 0 0 10px;
}
.social .inner .snsWrap .ttl h3 {
  padding: 6px 0 4px 40px;
  box-sizing: border-box;
  width: calc(100% - 124px);
  line-height: 1;
}
.social .inner .snsWrap .ttl .moreLink {
  width: 96px;
  background: url(../img/union/icon_blue_arrow.svg) no-repeat left top 4px;
  padding: 0 0 0 28px;
  display: inline-block;
  line-height: 1.4;
}
.social .inner .snsWrap .youtube {
  width: 54.5454%;
}
.social .inner .snsWrap .youtube h3 {
  background: url(../img/top/ttl_youtube.png) no-repeat left center;
  background-size: 33px auto;
}
.social .inner .snsWrap .youtube ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.social .inner .snsWrap .youtube ul li {
  margin: 0 0 15px;
  width: 48%;
}
.social .inner .snsWrap .youtube ul li .col {
  position: relative;
  height: 0;
  padding: 0 0 56.25%;
  overflow: hidden;
  margin: 0 0 5px;
}
.social .inner .snsWrap .youtube ul li .col iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.social .inner .snsWrap .youtube ul li p {
  font-weight: bold;
  letter-spacing: 0.05em;
}
.social .inner .snsWrap .instagram {
  width: 40%;
}
.social .inner .snsWrap .instagram h3 {
  background: url(../img/top/ttl_instagram.png) no-repeat left center;
  background-size: 28px auto;
}

.instaList {
  margin: -10px -10px 0;
}

/*=================================================================*/
/*	school
/*=================================================================*/
.school .menuWrap {
  padding: 64px 70px;
}
.school .menuWrap .inner {
  max-width: 1060px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.school .menuWrap .inner a {
  display: block;
  color: #FFF;
  position: relative;
  display: inline-block;
}
.school .menuWrap .inner a .txt {
  position: absolute;
  left: 30px;
  bottom: 26px;
  font-size: 4rem;
  line-height: 1.2;
  padding: 0 30px 0 0;
}
.school .menuWrap .inner a .txt span {
  font-size: 1.6rem;
  display: block;
  letter-spacing: 0.1em;
  margin: 0 0 10px;
  padding: 0 0 0 5px;
}
.school .menuWrap .inner .greeting {
  width: 49.05%;
  min-height: 280px;
  background: url(../img/top/black_grade.png) repeat-x left bottom, #000 url(../img/top/bg_greeting.jpg) no-repeat center center;
  background-size: 8px 138px, cover;
}
.school .menuWrap .inner .spirit {
  width: 49.05%;
  min-height: 280px;
  background: url(../img/top/black_grade.png) repeat-x left bottom, #000 url(../img/top/bg_founding.jpg) no-repeat center center;
  background-size: 8px 138px, cover;
}
.school .menuWrap .inner .access {
  background: url(../img/top/black_grade.png) repeat-x left bottom, #000 url(../img/top/bg_access.jpg) no-repeat center center;
  width: 100%;
  min-height: 186px;
  margin: 2% 0 0;
  background-size: 8px 138px, cover;
}

/*******************************************************************/
/* PC */
/*******************************************************************/
@media print, screen and (min-width: 769px) {
  /*<start>==========================================================*/
  /*<end>============================================================*/
}
/*******************************************************************/
/* Middle Size
/*******************************************************************/
@media screen and (max-width:980px) {
  /*<start>==========================================================*/
  /*=================================================================*/
  /*	contents
  /*=================================================================*/
  .contents::before, .contents::after {
    width: 100%;
    margin: 0;
  }
  /*=================================================================*/
  /*	topMain
  /*=================================================================*/
  .topMain .charm {
    padding-bottom: 0;
  }
  .topMain .charm::after {
    top: -44%;
  }
  .topMain .charm .main_img {
    margin-bottom: 6%;
  }
  .topMain .charm .main_img::before {
    display: none;
  }
  .topMain .charm .main_img img {
    border-radius: 0 0 30px 30px;
  }
  .topMain .charm .four_charm {
    top: 3%;
    min-width: 300px;
  }
  .topMain .charm .four_charm .charm_position .charmList {
    padding: 16% 4% 12%;
  }
  .topMain .charm .four_charm .charm_position .charmList li {
    font-size: 2.3vw;
    padding: 2% 2% 2% 16%;
  }
  .topMain .charm .four_charm .charm_position .charmList li .num {
    font-size: 3.4vw;
  }
  .topMain .charm .four_charm .charm_position .charmList li .num.n04 {
    top: 0;
  }
  .topMain .charm .four_charm .charm_position .charmList li .small {
    font-size: 1.4vw;
  }
  /*<end>============================================================*/
}
/*******************************************************************/
/* SP */
/*******************************************************************/
@media screen and (max-width: 768px) {
  /*<start>==========================================================*/
  /*=================================================================*/
  /*	contents
  /*=================================================================*/
  /*=================================================================*/
  /*	トップ共通
  /*=================================================================*/
  h2.blueBackTitle {
    padding: 5% 4% 40px 4%;
  }
  h2.blueBackTitle img {
    width: unset;
  }
  h2.blueBackTitle span {
    font-size: 1.4rem;
    margin-top: 10px;
    letter-spacing: 0.05em;
  }
  h2.blueBackTitle span::after {
    bottom: -10px;
  }
  /*=================================================================*/
  /*	topMain
  /*=================================================================*/
  .topMain .charm {
    margin-bottom: 6%;
    padding: 0 0 7%;
    display: block;
  }
  .topMain .charm .four_charm {
    position: static;
    margin: 0 auto;
    width: 90%;
  }
  .topMain .charm .four_charm .charm_position .topTxt {
    width: 70%;
    max-width: 383px;
  }
  .topMain .charm .four_charm .charm_position .charmList {
    padding: 16% 6% 12%;
  }
  .topMain .charm .four_charm .charm_position .charmList li {
    font-size: 4vw;
    padding: 2% 2% 2% 14%;
  }
  .topMain .charm .four_charm .charm_position .charmList li .num {
    font-size: 6vw;
  }
  .topMain .charm .four_charm .charm_position .charmList li .num.n04 {
    top: 0;
  }
  .topMain .charm .four_charm .charm_position .charmList li .small {
    font-size: 2.3vw;
  }
  .topMain .charm .four_charm .charm_position .charmList li {
    padding: 2% 0 2% 15%;
    font-size: 5.1vw;
  }
  .topMain .charm .four_charm .charm_position .charmList li .num {
    top: 4px;
  }
  .topMain .charm .four_charm .charm_position .charmList li .small {
    font-size: 2.6vw;
  }
  /*=================================================================*/
  /*	important
  /*=================================================================*/
  .important h2 {
    font-size: 1.2rem;
    width: 100px;
    padding: 5px;
  }
  .important h2 span {
    background: url(../img/top/icon_important.png) no-repeat center top;
    background-size: 20px auto;
    padding: 26px 0 0;
  }
  .important ul {
    width: calc(100% - 100px);
    padding: 15px 15px 5px;
  }
  .important ul li {
    display: block;
  }
  .important ul li .date {
    font-size: 1.4rem;
    display: block;
    margin: 0 0 5px;
  }
  .important ul li a {
    width: 100%;
  }
  /*=================================================================*/
  /*	topics
  /*=================================================================*/
  .topics h2 img {
    width: 156px;
  }
  .topics .topicsWrap .col2 {
    display: block;
  }
  .topics .topicsWrap .col2 > a {
    width: 100%;
  }
  .topics .topicsWrap .col2 > a span.pu {
    background: url(../img/top/bg_pickup.svg) no-repeat 0 0;
    background-size: 68px auto;
  }
  .topics .topicsWrap .col2 > a span.pu span {
    margin: 17px 0 0 2px;
    font-size: 1.2rem;
  }
  .topics .topicsWrap .col4 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .topics .topicsWrap .col4 > a {
    width: 50%;
  }
  .topics .topicsWrap .col4 > a .txt .cat {
    padding: 4px 8px;
  }
  /*=================================================================*/
  /*	info
  /*=================================================================*/
  .info .inner {
    padding: 60px 6% 40px;
    display: block;
  }
  .info .inner .infoBox {
    margin: 0 0 40px;
    width: 100%;
  }
  .info .inner .infoBox h2 {
    margin: 0 0 20px;
  }
  .info .inner .infoBox ul li:nth-child(n+4) {
    display: none;
  }
  /*=================================================================*/
  /*	features
  /*=================================================================*/
  .features h2 img {
    width: 210px;
  }
  .features > a {
    text-align: center;
    padding: 8% 4%;
  }
  .features > a::before {
    left: -540px;
    width: 800px;
    height: 400px;
  }
  .features > a .toDetail {
    position: relative;
    width: 240px;
    margin: 15px auto 0;
    z-index: 10;
    top: unset;
    right: unset;
    box-sizing: border-box;
    padding: 10px 66px;
  }
  .features > a.dogran {
    background: url(../img/top/sp/bg_dogran.jpg) no-repeat center center;
    background-size: cover;
    padding: 6% 4% 6%;
  }
  .features > a.dogran::before {
    right: -540px;
    width: 800px;
    height: 400px;
  }
  .features > a.dogran .toDetail {
    left: unset;
  }
  .features > a.dogran dl {
    text-align: center;
  }
  .features > a.horse {
    background: url(../img/top/sp/bg_horse.jpg) no-repeat center center;
    background-size: cover;
    padding: 6% 4% 6%;
  }
  .features > a.horse::before {
    right: -540px;
    width: 800px;
    height: 400px;
  }
  .features > a.horse .toDetail {
    left: unset;
  }
  .features > a.horse dl {
    text-align: center;
  }
  .features > a dl dt {
    font-size: 8vw;
  }
  .features > a dl dd {
    text-shadow: 0 0 8px rgba(0, 0, 0, 0.8);
    font-size: 2.8vw;
  }
  /*=================================================================*/
  /*	social
  /*=================================================================*/
  .social {
    padding: 50px 6% 60px;
  }
  .social .inner h2 {
    margin: 0 0 24px;
    font-size: 2rem;
  }
  .social .inner h2 strong {
    max-width: 320px;
  }
  .social .inner .ttlTxt {
    font-size: 1.5rem;
    line-height: 1.6;
    margin: 0 0 40px;
  }
  .social .inner .snsWrap {
    display: block;
  }
  .social .inner .snsWrap .youtube {
    width: 100%;
    margin: 0 0 40px;
  }
  .social .inner .snsWrap .instagram {
    width: 100%;
  }
  #sb_instagram {
    width: 100% !important;
  }
  #sb_instagram.sbi_col_3.sbi_mob_col_auto #sbi_images .sbi_item,
  #sb_instagram.sbi_col_4.sbi_mob_col_auto #sbi_images .sbi_item,
  #sb_instagram.sbi_col_5.sbi_mob_col_auto #sbi_images .sbi_item,
  #sb_instagram.sbi_col_6.sbi_mob_col_auto #sbi_images .sbi_item,
  #sb_instagram.sbi_col_7.sbi_mob_col_auto #sbi_images .sbi_item,
  #sb_instagram.sbi_col_8.sbi_mob_col_auto #sbi_images .sbi_item,
  #sb_instagram.sbi_col_9.sbi_mob_col_auto #sbi_images .sbi_item,
  #sb_instagram.sbi_col_10.sbi_mob_col_auto #sbi_images .sbi_item,
  #sb_instagram.sbi_mob_col_1 #sbi_images .sbi_item {
    width: 50% !important;
  }
  #sbi_images .sbi_item:nth-child(n+7) {
    display: none !important;
  }
  /*=================================================================*/
  /*	school
  /*=================================================================*/
  .school h2 img {
    width: 168px;
  }
  .school .menuWrap {
    padding: 40px 6%;
  }
  .school .menuWrap .inner {
    display: block;
  }
  .school .menuWrap .inner a {
    margin: 0 0 20px;
    padding: 100px 15px 15px;
    box-sizing: border-box;
  }
  .school .menuWrap .inner a.greeting, .school .menuWrap .inner a.spirit {
    min-height: unset;
    width: 100%;
  }
  .school .menuWrap .inner a.access {
    padding: 60px 15px 15px;
    min-height: unset;
    margin: 0;
  }
  .school .menuWrap .inner a .txt {
    position: static;
    font-size: 3rem;
  }
  .school .menuWrap .inner a .txt span {
    font-size: 1.4rem;
  }
  /*<end>============================================================*/
}/*# sourceMappingURL=top.css.map */