@charset "utf-8";

/*----------------------------------------------------------
/* 基本定義
/* last 2025.5.20
-----------------------------------------------------------*/
/*フォント設定*/
html {
  font-size: 10px;
  /* initial 10px */
}

body {
  font-family: "Noto Sans JP", "Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
  font-weight: 400;
  line-height: 1.6;
  font-size: 1.6rem;
  color: #505050;
}

#wrapper {
  position: relative;
}

@media screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 768px) {
  body {
    font-size: 1.6rem;
  }

}

/*** サイト内キーカラー ***/
/* スクール各校 */
.col_izumi-pk {
  color: #aaa;
}

.col_izumi-nomura {
  color: #aaa;
}

.col_taihaku {
  color: #aaa;
}

.col_nagamachi {
  color: #aaa;
}

.col_miyagino {
  color: #aaa;
}

.col_arai {
  color: #aaa;
}

.col_natori {
  color: #aaa;
}

.col_sennan {
  color: #aaa;
}

.col_furukawa {
  color: #aaa;
}

.col_kurihara {
  color: #aaa;
}

.col_ishinomaki {
  color: #aaa;
}

.col_aoba {
  color: #aaa;
}


/*----------------------------------------------------------
/* リセット
-----------------------------------------------------------*/
article {
  position: relative;
}

/* 段落 */
p {
  margin: 0.5em 0 1.5em 0;
}

/* 空の値は表示しない */
p:empty,
a:empty {
  display: none !important;
}

/* アンカー */
a,
a:link,
a:visited {
  text-decoration: none;
  color: #505050;
}

a:active,
a:hover {
  text-decoration: none;
}

.hovefct:hover img {
  opacity: 0.7;
  transition: all .2s ease-out;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}


/*----------------------------------------------------------
/* 汎用クラス
-----------------------------------------------------------*/
/* 英字 */
.txt-osw {
  font-family: 'Oswald', 'Noto Sans JP', sans-serif;
}


/* ボトムマージン */
.btm0 {
  margin-bottom: 0px !important;
}

.btm5 {
  margin-bottom: 5px !important;
}

.btm10 {
  margin-bottom: 10px !important;
}

.btm15 {
  margin-bottom: 15px !important;
}

.btm20 {
  margin-bottom: 20px !important;
}

.btm25 {
  margin-bottom: 25px !important;
}

.btm30 {
  margin-bottom: 30px !important;
}

.btm35 {
  margin-bottom: 35px !important;
}

.btm40 {
  margin-bottom: 40px !important;
}

.btm45 {
  margin-bottom: 45px !important;
}

.btm50 {
  margin-bottom: 50px !important;
}

.btm60 {
  margin-bottom: 60px !important;
}

.btm70 {
  margin-bottom: 70px !important;
}

.btm80 {
  margin-bottom: 80px !important;
}

/* インデント */
.indent1 {
  padding-left: 1em;
  text-indent: -1em;
}

/* ボールド */
.txt_bold {
  font-weight: bold;
}

.txt_hevybold {
  font-weight: bold;
}

/* BGストライプ */
.bg_stripe {
  background: repeating-linear-gradient(0deg, rgba(241, 245, 255, 1), rgba(241, 245, 255, 1) 5px, rgba(210, 220, 255, 1) 0, rgba(210, 220, 255, 1) 10px);
}

/* 未入稿チェック用 */
.wait-col {
  color: #ff0000;
}

.notes-color{
  color:#ff0000;
}

@media screen and (max-width: 767px) {}

@media screen and (min-width: 768px) {}

@media print,
(min-width: 1110px) {}




/*--------------------------------------------------
/* 共通部品
----------------------------------------------------*/
/* 白→青ボタン */
.cmn-linkbtn {
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 0;
  padding: 10px;
  max-width: 760px;
  font-size: 2rem;
  font-weight: bold;
  color: #2c4198 !important;
  border-radius: 30px;
  background-color: #fff;
  border: solid 1px #2c4198;
  transition: all ease-out .1s;
}

.cmn-linkbtn:hover {
  color: #fff !important;
  background-color: #2c4198;
  border: solid 1px #2c4198;
}

/*** 横並び角丸ボタン ***/
.cmn-navi-btn {
  margin: 0 auto 0;
  width: 100%;
}

.cmn-navi-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 10px;
  width: 100%;
  height: 60px;
  font-size: 1.8rem;
  font-weight: 900;
  border-radius: 50px;
}

.cmn-navi-btn a span {
  display: block;
  margin-right: 15px;
  color: #2c4198;
}

/* スクールをさがすボタン */
.cmn-navi-btn .soccer-search-btn {
  background-color: #fcc800;
}

.cmn-navi-btn .cheer-search-btn {
  background-color: #2c4198;
}

.cmn-navi-btn .cheer-search-btn span {
  color: #fff;
}

/* 体験・入会、会員サイトログインボタン */
.cmn-navi-btn .entry-login-btn {
  background-color: #fff;
  border: solid 2px #2c4198;
}

@media screen and (max-width: 767px) {
.cmn-navi-btn a img {
  width:22px;
}

  /* 横並び角丸ボタン */
  .cmn-navi-btn a:nth-of-type(2) {
    margin-top: 15px;
  }
}

@media screen and (min-width: 768px) {

  /* 横並び角丸ボタン */
  .cmn-navi-btn {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }

  .cmn-navi-btn.single {
    justify-content: center;
  }

  .cmn-navi-btn.single a {
    width: 100%;
  }

  .cmn-navi-btn a {
    width: 48%;
    height: 70px;
    font-size: 2rem;
  }

}

@media print,
(min-width: 1110px) {
  .cmn-navi-btn a {
    font-size: 2rem;
  }

}


/*--------------------------------------------------
/* 基本包含
----------------------------------------------------*/
#wrapper,
article {
  margin: 0 auto 0;
  width: 100%;
}

article {
  margin-bottom: 30px;
}

.cmn-block {
  margin: 0 auto 0;
  padding: 0 15px;
  width: 100%;
  max-width: 800px;
}

@media screen and (max-width: 767px) {
  article .cmn-block:nth-of-type(n+2) {
    margin-top: 50px;
  }
}

@media screen and (min-width: 768px) {
  article {
    margin-bottom: 50px;
  }

  article .cmn-block:nth-of-type(n+2) {
    margin-top: 50px;
  }
}

@media print,
(min-width: 1110px) {
  .cmn-block {
    padding: 0 0;
  }

}


/*--------------------------------------------------
/* 見出し基本
----------------------------------------------------*/
h1 {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 40px 0;
  padding:0 15px;
  width: 100%;
  height: 300px;
  font-size: 2.8rem;
  font-weight: 900;
  color: #fff;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  text-shadow: 0px 0px 7px rgba(0, 0, 0, 0.8);
}

/**** ページ毎設定 ****/
/* OB選手 */
.title.obplayer {
  background-image: url('./images/pagetitle/titlebg_obplayer_sd_s.jpg');
  background-position: center top;
}

/* 地域連携 */
.title.chiren {
  background-image: url('./images/pagetitle/titlebg_chiren_sd_s.jpg');
  background-position: right top;
}

/* コーチングスタッフ */
.title.coach {
  background-image: url('./images/pagetitle/titlebg_coach_sd_2025.jpg');
  background-position: center top;
}

/* スクールをさがす */
.title.search-school {
  background-image: url('./images/pagetitle/titlebg_search-school_sd_s.jpg');
  background-position: right top;
}

/* サッカースクールの特徴 */
.title.school-course-cmn {
  background-image: url('./images/pagetitle/titlebg_school-feature_sd_s.jpg');
  background-position: center top;
}

@media screen and (max-width: 767px) {}

@media screen and (min-width: 768px) {
  h1 {
    margin: 0 0 80px 0;
    font-size:3.8rem;
  }

  /* OB選手 */
  .title.obplayer {
    background-image: url('./images/pagetitle/titlebg_obplayer_ld_s.jpg');
    background-position: center top;
  }

  /* 地域連携 */
  .title.chiren {
    background-image: url('./images/pagetitle/titlebg_chiren_ld_s.jpg');
    background-position: center top;
  }

  /* コーチングスタッフ */
  .title.coach {
    background-image: url('./images/pagetitle/titlebg_coach_ld_2025.jpg');
    background-position: center top;
  }

  /* スクールをさがす */
  .title.search-school {
    background-image: url('./images/pagetitle/titlebg_search-school_ld_s.jpg');
    background-position: center top;
  }

  /* サッカースクールの特徴 */
  .title.school-course-cmn {
    background-image: url('./images/pagetitle/titlebg_school-feature_ld_s.jpg');
    background-position: center top;
  }

}

@media print,
(min-width: 1110px) {
  h1 {
    height: 280px;
    padding:0 0;
  }
}


/*----------------------------------------------------------
/* ヘッダー
-----------------------------------------------------------*/
header {
  position: relative;
  padding: 12px 10px;
  width: 100%;
  height: 54px;
  background-color: #fff;
  z-index: 100;
}

header.toppage {
  position: absolute;
  top: 0;
  left: 0;
  background-color: transparent;
}

#hd-logo img {
  display: inline-block;
}

/*** fixedアイテム ***/
#hd-fixed-items {
  position: fixed;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 100;
}

/* 体験・入会ボタン */
#hd-entry-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 5px;
  padding: 4px 4px 4px;
  font-size: 1.4rem;
  font-weight: 900;
  background-color: #fff;
  border: solid 1px #505050;
  border-radius: 10px;
}

@media screen and (max-width: 767px) {
  #hd-logo img {
    width: 178px;
  }

}

@media screen and (min-width: 768px) {
  header {
    padding: 14px 30px;
    height: 102px;
  }

  #hd-logo img {
    width: 413px;
  }

  #hd-fixed-items {
    top: 0;
    right: 0;
  }

  /* 体験・入会ボタン */
  #hd-entry-btn {
    margin-right: 15px;
    padding: 6px 20px 8px;
    font-size: 1.8rem;
  }

}

@media print,
(min-width: 1110px) {}


/*----------------------------------------------------------
/* LD／SD共通 サイトナビ
-----------------------------------------------------------*/
/* メニュー表示マスク */
.sd-menu-fade {
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 1);
  /*
  background: url('./images/common/modal-bg_sd.png') center center /contain repeat-y;
  */
  opacity: 0;
  transition: all .3s ease-out;
  z-index: 25;
}

/* コンテンツメニューマスク */
.sd-menu-fade.active {
  visibility: visible;
  opacity: 1;
}

/* メニュー包含 */
.sitemenu-wrap {
  position: fixed;
  top: 10%;
  left: 0;
  padding: 20px 15px;
  width: 100%;
  height: 70vh;
  background-color: #fff;
  overflow-y: auto;
}


/* ナビ開閉ボタン */
.sitemenu-openbtn {
  display: block;
  position: relative;
  padding: 10px;
  width: 54px;
  height: 54px;
  cursor: pointer;
  text-align: center;
  background-color: #2c4198;
}

.sitemenu-openbtn span:nth-child(1),
.sitemenu-openbtn span:nth-child(2),
.sitemenu-openbtn span:nth-child(3) {
  display: block;
  position: absolute;
  width: 30px;
  height: 3px;
  left: 12px;
  background: #fff;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.sitemenu-openbtn span:nth-child(1) {
  top: 12px;
}

.sitemenu-openbtn span:nth-child(2) {
  top: 25px;
}

.sitemenu-openbtn span:nth-child(3) {
  top: 38px;
}

.sitemenu-openbtn.active span:nth-child(1) {
  top: 27px;
  left: 12px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.sitemenu-openbtn.active span:nth-child(2),
.sitemenu-openbtn.active span:nth-child(3) {
  top: 27px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media screen and (max-width: 767px) {}

@media screen and (min-width: 768px) {

  /* ナビ開閉ボタン */
  .sitemenu-openbtn {
    width: 66px;
    height: 66px;
  }

  .sitemenu-openbtn span:nth-child(1),
  .sitemenu-openbtn span:nth-child(2),
  .sitemenu-openbtn span:nth-child(3) {
    width: 30px;
    left: 18px;
  }

  .sitemenu-openbtn span:nth-child(1) {
    top: 16px;
  }

  .sitemenu-openbtn span:nth-child(2) {
    top: 32px;
  }

  .sitemenu-openbtn span:nth-child(3) {
    top: 48px;
  }

  .sitemenu-openbtn.active span:nth-child(1) {
    top: 33px;
    left: 18px;
  }

  .sitemenu-openbtn.active span:nth-child(2),
  .sitemenu-openbtn.active span:nth-child(3) {
    top: 33px;
  }

  /* メニュー表示マスク */
  /*
  .sd-menu-fade {
    background: url('./images/common/modal-bg_ld.png') center center /contain repeat-y;
  }
*/

  /* メニュー包含 */
  .sitemenu-wrap {
    padding: 40px 20px;
    height: auto;
  }

}

@media print,
(min-width: 1110px) {}


/*----------------------------------------------------------
/* メインスライド
-----------------------------------------------------------*/
#main-slide .photobox img {
  margin: 0 auto 0;
}

@media screen and (max-width: 767px) {
  #main-slide {
    padding-top: 54px;
  }
}

@media screen and (min-width: 768px) {}

@media print,
(min-width: 1110px) {}


/*----------------------------------------------------------
/* トップページ
-----------------------------------------------------------*/
/*** トップページレイアウト ***/
#toppage article>div:nth-of-type(n+2) {
  margin: 35px auto 0;
}

/*** 導入 ***/
.site-intro-box {
  margin: 0 auto 20px;
  padding: 30px 15px;
}

.site-intro {
  position: relative;
  margin: -60px auto 0;
  padding: 20px;
  width: 100%;
  max-width: 1110px;
  background-color: #fff;
  border-radius: 30px;
  z-index: 1;
}

#toppage h1 {
  display: block;
  margin: 0 auto 20px;
  padding: 0;
  height: auto;
  text-align: center;
}

#toppage h1 picture img {
  width: 100%;
  height: auto;
}

.site-intro p {
  margin: 0 0 0 0;
  font-weight: bold;
}


/*** 理念 ***/
.philosophy-block {
  padding: 0 15px;
}

/* ボタン */
.philosophy-menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
}

.philosophy-menu .item-box {
  width: 100%;
}

.philosophy-menu .item-box .openbtn {
  cursor: pointer;
  position: relative;
  padding-top: 38%;
  width: 100%;
  border-radius: 30px;
  overflow: hidden;
}

.philosophy-menu .item-box .soccer-philosophy-btn {
  background: url('./images/top/philosophy-soccer-image.jpg') center center /cover no-repeat;
}

.philosophy-menu .item-box .cheer-philosophy-btn {
  background: url('./images/top/philosophy-cheer-image.jpg') center center /cover no-repeat;
}

.philosophy-menu .item-box .openbtn::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  filter: brightness(55%)saturate(57%);
  z-index: 0;
  transition: all ease-out .2s;
}

.philosophy-menu .item-box .openbtn:hover::after,
.philosophy-menu .item-box .openbtn.active::after {
  filter: none;
}

.philosophy-menu .item-box .openbtn .labelset {
  position: absolute;
  top: 50%;
  left: 50%;
  line-height: 1.4;
  text-align: center;
  color: #fff;
  font-weight: 900;
  transform: translate(-50%, -50%);
  z-index: 1;
  text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.9);
}

.philosophy-menu .item-box .openbtn .labelset {
  display: block;
  margin: 0 auto 0;
  font-size: 1.8rem;
}

.philosophy-menu .item-box .openbtn .labelset span {
  font-size: 3.2rem;
}

.philosophy-menu .item-box .openbtn .labelset img {
  display: block;
  margin: 10px auto 0;
  transition: all ease-out .2s;
}

.philosophy-menu .item-box .openbtn.active .labelset img {
  transform: rotateZ(180deg);
}



/* 各理念内容／ フェードイン・アウト */
.philosophy-box {
  visibility: hidden;
  width: 100%;
  height: 0;
  opacity: 0;
  transition: all .1s ease-in;
  z-index: -10;
}

.philosophy-box .philosophy-wrap,
.philosophy-box nav,
.philosophy-box .philosophy-close {
  display: none;
}


/* フェードイン（表示） */
.soccer-philosophy-box.active,
.cheer-philosophy-box.active {
  visibility: visible;
  padding: 40px 15px;
  height: auto;
  opacity: 1;
  z-index: 1;
}

.philosophy-box.active .philosophy-wrap,
.philosophy-box.active nav,
.philosophy-box.active .philosophy-close {
  display: block;
}


/** 理念共通 **/
/* 包含 */
.philosophy-inner {
  margin: 0 auto 0;
  padding: 30px 15px 30px 15px;
  width: 100%;
  max-width: 800px;
}

.cheer-philosophy-box .philosophy-inner {
  padding: 60px 15px 250px 15px;
}

.philosophy-cont {
  margin: 0 auto 0;
  padding: 50px 20px;
  width: 100%;
  background-color: #fff;
  border-radius: 30px;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.7);
}

.philosophy-cont img {
  display: block;
  margin: 0 auto 0;
}

/*** サッカースクール理念 ***/
.soccer-philosophy-box .philosophy-wrap {
  background: url('./images/top/soccer-philosophy-bg-upper_sd.jpg') center top /contain no-repeat, url('./images/top/soccer-philosophy-bg-bottom_sd.jpg') center bottom /contain no-repeat, #fff;
}

.cheer-philosophy-box .philosophy-wrap {
  background: url('./images/top/cheer-philosophy-bg-upper_sd.jpg') center top /contain no-repeat, url('./images/top/cheer-philosophy-bg-bottom_sd.jpg') center bottom /contain no-repeat, #fff;
}

.philosophy-inner h2 {
  margin: 0 auto 40px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 900;
  color: #fff;
}

.philosophy-inner h2 span {
  display: block;
  margin: 0 auto 0;
  font-size: 4rem;
  font-weight: normal;
}

.philosophy-inner h3 {
  margin: 0 auto 40px;
  text-align: center;
}

.philosophy-inner h3 span {
  display: inline-block;
  padding-bottom: 4px;
  font-size: 2.4rem;
  font-weight: 900;
  color: #2c4198;
  border-bottom: solid 3px #2c4198;
}

.philosophy-cont .cont-block .subtitle {
  margin: 0 auto 40px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  color: #2c4198;
}

.philosophy-btm-image {
  margin: 0 auto 0;
  border-radius: 30px;
}

/* 理念 閉じるボタン */
.philosophy-close {
  margin: 30px auto 0;
}

.philosophy-close a {
  text-decoration: none;
  display: block;
  margin: 0 auto 0;
  padding: 10px;
  width: 80%;
  max-width: 350px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  color: #2c4198;
  border: solid 1px #2c4198;
  border-radius: 50px;
}

@media screen and (max-width: 767px) {
  .philosophy-cont .cont-block:nth-of-type(n+2) {
    margin-top: 30px;
  }
}

@media screen and (min-width: 768px) {

  /* 包含 */
  .soccer-philosophy-box .philosophy-wrap {
    background: url('./images/top/soccer-philosophy-bg-upper_ld.jpg') center top /contain no-repeat, url('./images/top/soccer-philosophy-bg-bottom_ld.jpg') center bottom /contain no-repeat, #fff;
  }

  .cheer-philosophy-box .philosophy-wrap {
    background: url('./images/top/cheer-philosophy-bg-upper_ld.jpg') center top /contain no-repeat, url('./images/top/cheer-philosophy-bg-bottom_ld.jpg') center bottom /contain no-repeat, #fff;
  }

  .philosophy-inner {
    padding: 60px 15px;
  }

  .cheer-philosophy-box .philosophy-inner {
    padding: 60px 15px 380px 15px;
  }

  .philosophy-cont {
    margin: 0 auto 0;
    padding: 40px 40px;
  }

  .philosophy-cont .cont-block:nth-of-type(n+2) {
    margin-top: 40px;
  }

  .philosophy-inner h2 {
    margin: 0 auto 25px;
    font-size: 2.5rem;
  }

  .philosophy-inner h2 span {
    font-size: 4rem;
  }

  .philosophy-inner h3 {
    margin: 0 auto 25px;
  }

  .philosophy-inner h3 span {
    font-size: 3rem;
  }

  .philosophy-cont .cont-block .subtitle {
    margin: 0 auto 20px;
    font-size: 2rem;
  }

}

@media print,
(min-width: 1110px) {
  .philosophy-inner {
    padding: 40px 0 80px 0;
  }

  .cheer-philosophy-box .philosophy-inner {
    padding: 60px 0 650px 0;
  }

}


/*** ページ中段ナビ ***/
.top-middle-navi-block {
  margin: 0 auto 0;
  padding: 20px 15px;
  width: 100%;
  background: url('./images/common/cmn-sitenavi-bg_sd.jpg') center center /cover no-repeat;
}

  .top-middle-navi .md{
  margin: 0 auto 15px;
  width:100%;
  text-align: center;
  font-size: 2rem;
  font-weight: 900;
  color: #fff;
  text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.9);
  }

.top-middle-navi {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto 0;
  width: 100%;
  max-width: 800px;
}

.top-middle-navi div {
  margin: 0 0 15px 0;
  width: 100%;
}

.top-middle-navi ul {
  margin: 0 0 0 0;
  width: 100%;
}

.top-middle-navi ul>li:nth-of-type(n+2) {
  margin-top: 15px;
}

.top-middle-navi a {
  text-decoration: none;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  padding: 12px 20px;
  width: 100%;
  font-size: 1.8rem;
  color: #2c4198;
  font-weight: 900;
  background-color: #fff;
  border-radius: 20px;
  transition: all ease-out .2s;
}

.top-middle-navi a span {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 1.4rem;
  color: #fcc800;
}

.top-middle-navi a:hover {
  color: #fff;
  background-color: #2c4198;
}


/*** 下部ナビ ***/
.top-lower-navi .cmn-navi-btn {
  margin: 0 auto 0;
  width: 100%;
  max-width: 800px;
}

/** スクールをさがす **/
.top-lower-search {
  padding: 0 15px 30px 15px;
}

.lower-navi-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin: 0 auto 15px;
  max-width: 800px;
}

.lower-navi-title p {
  position: relative;
  display: block;
  line-height: 1.3;
  text-align: center;
  font-weight: bold;
}

.lower-navi-title p::before,
.lower-navi-title p::after {
  content: '';
  position: absolute;
  top: 50%;
  width: 2px;
  height: 120%;
  background-color: #505050;
}

.lower-navi-title p::before {
  left: 15px;
  transform: translateY(-50%) rotateZ(-25deg);
}

.lower-navi-title p::after {
  right: 15px;
  transform: translateY(-50%) rotateZ(25deg);
}

.lower-navi-title img {
  width: 60px;
}

.lower-navi-title img:nth-of-type(1) {
  padding: 0 0 15px 0;
}

.lower-navi-title img:nth-of-type(2) {
  padding: 15px 0 0 0;
}

/** 体験・入会 会員ログイン **/
.entry-login-info {
  padding: 30px 15px;
  background-color: #D2DCFF;
}

.entry-login-info .cmn-navi-btn div {
  text-align: center;
}

.entry-login-info .cmn-navi-btn div,
.entry-login-info .cmn-navi-btn div a {
  width: 100%;
}

.entry-login-info .cmn-navi-btn div .pr {
  display: inline-block;
  position: relative;
  margin: 0 auto 30px;
  padding: 0 0 6px 0;
  font-size: 1.8rem;
  font-weight: bold;
  color: #2c4198;
  border-bottom: solid 3px #2c4198;
}

.entry-login-info .cmn-navi-btn div .pr::before {
  content: '';
  position: absolute;
  bottom: -17px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 17.3px 8px 0 8px;
  border-color: #D2DCFF transparent transparent transparent;
  transform: translateX(-50%);
  z-index: 1;
}

.entry-login-info .cmn-navi-btn div .pr::after {
  content: '';
  position: absolute;
  bottom: -23px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 22px 11px 0 11px;
  border-color: #2c4198 transparent transparent transparent;
  transform: translateX(-50%);
}

@media screen and (max-width: 767px) {

  /*** 理念 ***/
  .philosophy-menu .soccer-btn {
    margin-bottom: 15px;
  }

  .philosophy-menu .item-box .openbtn .labelset img {
    margin: 5px auto 0;
    width: 40px;
  }

  /*** 下部ナビ ***/
  /** スクールをさがす **/
  .lower-navi-title p {
    margin: 0 0 0 0;
    width: 100%;
  }

  .entry-login-info .cmn-navi-btn div:nth-of-type(1) {
    margin-bottom: 30px;
  }

}

@media screen and (min-width: 768px) {

  /*** トップページレイアウト ***/
  #toppage article>div:nth-of-type(n+2) {
    margin: 50px auto 0;
  }

  /*** 導入 ***/
  .site-intro-box {
    margin: 0 auto 40px;
  }

  #toppage h1 {
    margin: 0 auto 30px;
  }

  #toppage h1 picture img {
    max-width: 980px;
  }

  .site-intro p {
    line-height: 1.8;
    font-size: 1.7rem;
  }

  /*** 理念／
/*** ラージデバイスではボタン横並び、ボタン下にw100で理念展開 ***/
  /* ボタン */
  .philosophy-menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
  }

  .philosophy-menu .item-box {
    padding: 0 20px;
    max-width: 400px;
  }

  .philosophy-menu .item-box .openbtn {
    padding-top: 49%;
  }

  .philosophy-menu .soccer-btn {
    order: 1;
  }

  .philosophy-menu .cheer-btn {
    order: 2;
  }

  .philosophy-menu .soccer-philosophy {
    order: 3;
  }

  .philosophy-menu .cheer-philosophy {
    order: 4;
  }

  /* 理念内容はw100 */
  .philosophy-menu .soccer-philosophy,
  .philosophy-menu .cheer-philosophy {
    width: 100%;
  }

  .philosophy-menu .item-box .openbtn {
    padding-top: 44%;
  }

  /* ボタン文字 */
  .philosophy-menu .item-box .openbtn .labelset {
    font-size: 2rem;
  }

  .philosophy-menu .item-box .openbtn .labelset span {
    font-size: 4rem;
  }

  .philosophy-menu .item-box .openbtn .labelset img {
    width: 40px;
  }


  /*** ページ中段ナビ ***/
  .top-middle-navi-block {
    padding: 40px 15px;
    background: url('./images/common/cmn-sitenavi-bg_ld.jpg') center center /cover no-repeat;
  }

  .top-middle-navi .md{
  font-size: 2.5rem;
  }

  .top-middle-navi a {
    font-size: 2rem;
  }

  .top-middle-navi a span {
    font-size: 1.6rem;
  }

  .top-middle-navi div {
    margin: 0 0 0 0;
    width: 48%;
  }

  .top-middle-navi div a {
    height: 100%;
  }

  .top-middle-navi ul {
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    justify-content: center;
    width: 48%;
  }

  .top-middle-navi ul li {
    width: 100%;
  }


  /*** 下部ナビ ***/
  .lower-navi-title p {
    margin: 0 15px 0 15px;
    padding: 0 25px 0 25px;
  }

  /** スクールをさがす **/
  .top-lower-search {
    padding: 0 15px 60px 15px;
  }

  /** 体験・入会 会員ログイン **/
  .entry-login-info {
    padding: 60px 15px;
  }

  .entry-login-info .cmn-navi-btn div {
    width: 48%;
  }

}

@media print,
(min-width: 1110px) {

  /*** 導入 ***/
  .site-intro-box {
    padding: 60px 0;
  }

  .site-intro {
    margin: -140px auto 0;
    padding: 60px;
  }

  /*** 理念 ***/
  .philosophy-block {
    padding: 0 0;
  }

  /* 各理念内容／ フェードイン・アウト */
  /* フェードイン（表示） */
  .soccer-philosophy-box.active,
  .cheer-philosophy-box.active {
    padding: 40px 0;
  }


  /*** 中段ナビ ***/
  .top-middle-navi-block {
    padding: 40px 0;
  }


  /*** 下部ナビ ***/
  .lower-navi-title img {
    padding: 0 0 0 0;
    width: 110px;
  }

  /** スクールをさがす **/
  .top-lower-search {
    padding: 0 0 60px 0;
  }

  /** 体験・入会 会員ログイン **/
  .entry-login-info {
    padding: 60px 0;
  }

  .entry-login-info .cmn-navi-btn div .pr {
    font-size: 2rem;
  }
}


/*----------------------------------------------------------
/* スクール出身選手
-----------------------------------------------------------*/
/* 冒頭導入文／ 他ページでも共通使用 */
.cmn-contents-intro {
  margin: 0 auto 0;
  width: 100%;
  max-width: 1110px;
  font-size: 1.7rem;
}

.obplayer-introbox {
  margin: 0 auto 0;
  width: 100%;
  max-width: 920px;
}

.obplayer-introbox .photo {
  position: relative;
  margin: 0 0 15px 0;
}

.obplayer-introbox .photo img {
  margin: 0 auto 0;
  border-radius: 30px;
}
/* 出身校表記／ 2025.3改編 */
.obplayer-introbox .photo .school-career {
  position: absolute;
  left:0;
  bottom:60px;
  padding:8px 20px 8px 10px;
  width:74%;
  font-size:1.8rem;
  color:#fff;
  background-color: #091548;
  border-bottom: solid 5px #9d860b;
}
.obplayer-introbox.x-replace .photo .school-career {
  right:0;
  left:auto;
  padding:8px 10px 8px 20px;
  text-align: right;
}




/** プロフィール **/
.obplayer-introbox .profile-box {
  width: 100%;
}

.obplayer-introbox .profile-box>p:nth-of-type(n+2) {
  margin-top: 30px;
}

.obplayer-introbox .profile-box .position-num {
  margin: 0 0 10px 0;
  padding: 0 0 10px 0;
  line-height: 1;
  font-size: 4rem;
  font-weight: 900;
  color: #2c4198;
  border-bottom: solid 1px #2c4198;
}

.obplayer-introbox .profile-box .position-num span {
  font-size: 6rem;
}

.obplayer-introbox .profile-box .name {
  margin: 0 0 0 0 !important;
  line-height: 1.1;
  font-size: 3rem;
  font-weight: bold;
}

.obplayer-introbox .profile-box .name span {
  display: block;
  margin-top: 2px;
  font-size: 1.6rem;
}

.obplayer-introbox .profile-box .link {
  margin: 0 0 0 0;
}


@media screen and (max-width: 767px) {}

@media screen and (min-width: 768px) {

  /* 冒頭導入文／ 他ページでも共通使用 */
  .cmn-contents-intro {
    text-align: center;
  }

  .obplayer-introbox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .obplayer-introbox>div {
    width: 48% !important;
  }

  /* 偶数段は左右入替 */
  .obplayer-introbox.x-replace .photo {
    order: 2;
  }

  .obplayer-introbox.x-replace .profile-box {
    order: 1;
  }
}

@media print,
(min-width: 1110px) {}


/*----------------------------------------------------------
/* 地域連携活動
-----------------------------------------------------------*/
#chiren .cmn-contents-intro {
  margin: 0 auto 30px;
}

.chiren-pr {
  margin: 0 auto 0;
}

.chiren-pr span {
  display: inline-block;
  margin: 0 auto 0;
  padding: 0 0 4px 0;
  font-size: 2rem;
  font-weight: bold;
  color: #2c4198;
  border-bottom: solid 3px #fee391;
}

/*** 活動紹介 ***/
.chiren-introbox .photo {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto 30px 0;
  width: 100%;
}
.chiren-introbox .photo img {
  width: 100%;
  border-radius: 10px;
}

/* 横2枚の時用／例2023
.chiren-introbox .photo {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto 30px 0;
  width: 100%;
}
.chiren-introbox .photo img {
  width: 49%;
  border-radius: 30px;
}
*/

.chiren-introbox .intro-box {
  margin: 0 auto 0;
  width: 100%;
  max-width: 880px;
}

.chiren-introbox .intro-box h2 {
  margin: 0 auto 20px;
  text-align: center;
}

.chiren-introbox.soccer-caravan h2 {
  padding-bottom: 10px;
  border-bottom: solid 1px #2c4198;
}

.chiren-introbox .intro-box h2 img {
  display: inline-block;
}

.chiren-introbox .intro-box p {
  margin: 0 auto 20px;
  max-width: 760px;
}

@media screen and (max-width: 767px) {}

@media screen and (min-width: 768px) {
  #chiren .cmn-contents-intro {
    margin: 0 auto 50px;
  }

.chiren-pr {
  text-align: center;
}
  .chiren-pr span {
    font-size: 2.4rem;
  }

  .chiren-introbox .photo {
    margin: 0 auto 40px 0;
  }

  .chiren-introbox .intro-box h2 {
    margin: 0 auto 40px;
  }

  .chiren-introbox .intro-box p {
    margin: 0 auto 30px;
  }

/*** 活動紹介 ***/
.chiren-introbox .photo img {
  width: 70%;
  border-radius: 30px;
}

}

@media print,
(min-width: 1110px) {}


/*----------------------------------------------------------
/* FAQ・お問い合わせ
/* 2024.6 FAQ追記
-----------------------------------------------------------*/
#faq h1 {
  padding: 20px 10px 10px 10px;
  height: auto !important;
  color: #2c4198 !important;
  text-shadow: none !important;
  border-bottom: solid 3px #2c4198;
}

#faq h2 {
  margin: 0 auto 30px;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  color: #2c4198;
}

/** ページ内ナビ **/
.faq-pagenavi ul {
  margin: 0 auto 0;
  width: 100%;
}

/** FAQ部分 **/
.faq-box .cmn-tglmenu {
  width: 100%;
}

.faq-box .cmn-tglmenu>li:nth-of-type(n+2) {
  margin-top: 30px;
}

.faq-box .cmn-tglmenu li .switch {
  cursor: pointer;
  margin: 0 0 10px 0;
  padding: 0 20px 10px 30px;
  position: relative;
  line-height: 1.3;
  font-size: 1.6rem;
  font-weight: bold;
  color: #2c4198;
  border-bottom: solid 1px #2c4198;
}

.faq-box .cmn-tglmenu li .switch span {
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1;
  font-size: 2rem;
  font-weight: bold;
  color: #2c4198;
}

.faq-box .cmn-tglmenu li .switch::before {
  position: absolute;
  top: 0;
  right: 0;
  content: '＋';
  font-size: 1.8rem;
  font-weight: 900;
  color: #2c4198;
  transition: all ease-out .2s;
}

.faq-box .cmn-tglmenu li .switch.open::before{
  transform: rotateZ(180deg);
  opacity: 0;
}
.faq-box .cmn-tglmenu li .switch::after {
  position: absolute;
  top: 0;
  right: 0;
  content: '－';
  font-size: 1.8rem;
  font-weight: 900;
  color: #2c4198;
  transition: all ease-out .1s;
  opacity: 0;
}
.faq-box .cmn-tglmenu li .switch.open::after {
  opacity: 1;
}

.faq-box .cmn-tglmenu li #sukusukukesseki-switch.open::after{
  opacity: 1;
}
.faq-box .cmn-tglmenu li #sukusukukesseki-switch.open::before{
  opacity: 0;
}




.faq-box .cmn-tglmenu li .detailbox {
  margin: 0 0 0 0;
  padding: 0 0 0 30px;
  position: relative;
  line-height: 1.3;
}

.faq-box .cmn-tglmenu li .detailbox .a-label {
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1;
  font-size: 2rem;
  font-weight: bold;
  color: #d7000f;
}

.faq-box .cmn-tglmenu li .detailbox p {
  margin: 0 0 0 0;
}
.faq-box .cmn-tglmenu li .detailbox p:nth-of-type(n+2) {
  margin-top: 8px;
}
.faq-box .cmn-tglmenu li .detailbox p .emp{
  font-weight: bold;
  color: #2c4198;
}
.faq-box .cmn-tglmenu li .detailbox p a{
  display: inline-block;
  padding:1px 6px 2px 6px;
  font-weight: bold;
  color: #fff;
  background-color: #2c4198;
  border:solid 1px #2c4198;
  transition: all ease-out .2s;
  border-radius: 4px;
}
.faq-box .cmn-tglmenu li .detailbox p a:hover{
  color: #2c4198;
  background-color: #fff;
  border:solid 1px #2c4198;
}
/* リンクボタン 縦並び余白 */
.faq-box .cmn-tglmenu li .detailbox p a:nth-of-type(n+2){
  margin-top: 8px;
}

/* FAQの答えは初期状態非表示 */
.detailbox {
  display: none;
}

/* サッカースクールの特徴ページ 欠席の振り替えはこちらからの直リンクは展開させる */
#sukusukukesseki-detailbox.open {
  display: block;
}

/** 2024.6 各リスト **/
/* QAリスト用 */
.qa-suskusuku,
.qa-school-websys{
  margin: 0.5em 0 15px 0;
}
.qa-suskusuku > li:nth-of-type(n+2),
.qa-school-websys > li:nth-of-type(n+2){
  margin-top: 10px;
}
.qa-suskusuku > li,
.qa-school-websys > li{
  text-indent: -1em;
  padding-left: 1em;
}

/** ページ下お問い合わせ **/
.faq-btm-info .md {
  margin: 0 auto 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  font-size: 2rem;
  font-weight: 900;
  color: #2c4198;
  background-color: #d2dcff;
  border-radius: 25px;
}

.contact-info.btm-info-box .btminfo {
  text-align: center;
}


@media screen and (max-width: 767px) {
  #faq h1 {
    margin: 0 auto 30px;
    font-size: 3rem;
  }

  .faq-pagenavi ul>li:nth-of-type(n+2) {
    margin-top: 10px;
  }
}

@media screen and (min-width: 768px) {

  /** ページ内ナビ **/
  .faq-pagenavi ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .faq-pagenavi ul>li {
    width: 49%;
  }

  .faq-pagenavi ul>li:nth-of-type(n+3) {
    margin-top: 10px;
  }

  #faq h2 {
    margin: 0 auto 50px;
    font-size: 3.6rem;
  }

  /** FAQ部分 **/
  .faq-box .cmn-tglmenu li .switch {
    padding: 0 40px 10px 50px;
    font-size: 2.2rem;
  }

  .faq-box .cmn-tglmenu li .switch span {
    top: -5px;
    font-size: 3.5rem;
  }

  .faq-box .cmn-tglmenu li .switch::before,
  .faq-box .cmn-tglmenu li .switch::after{
    font-size: 3rem;
  }

  .faq-box .cmn-tglmenu li .detailbox {
    padding: 0 0 0 50px;
  }

  .faq-box .cmn-tglmenu li .detailbox .a-label {
    font-size: 3.5rem;
  }

  /** ページ下お問い合わせ **/
  .faq-btm-info .md {
    margin: 0 auto 40px;
    font-size: 2.2rem;
  }

  .contact-info.btm-info-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 0 0 0;
  }

  .contact-info.btm-info-box .btminfo {
    width: 45%;
  }
}

@media print,
(min-width: 1110px) {

  /** ページ下お問い合わせ **/
  .contact-info.btm-info-box .btminfo {
    width: 40%;
  }

}


/*----------------------------------------------------------
/* コーチングスタッフ
-----------------------------------------------------------*/
/* 共通 */
.coach-introbox {
  margin: 0 auto 0;
  max-width: 750px;
}

.coach-introbox>div:nth-of-type(n+3) {
  margin-top: 30px;
}

.coachintro-md {
  margin: 0 auto 8px;
  line-height: 1.2;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  color: #2c4198;
}

.coachintro-md.underline {
  margin-bottom: 15px;
  padding-bottom: 15px;
  color: #2c4198;
  border-bottom: solid 1px #2c4198;
}

/* 写真 */
.coach-introbox .photo {
  position: relative;
  margin: 0 0 20px 0;
  text-align: center;
}

.coach-introbox .mainphoto {
  border-radius: 30px;
}

.coach-introbox .photo .comment {
  position: absolute;
  top: 20px;
  right: -10px;
  width: 35%;
}

/* 名前・役職・生年月日 */
.coach-profile {
  text-align: center;
}

.coach-profile .name {
  margin: 0 auto 15px;
  font-size: 2.4rem;
  font-weight: bold;
}

.coach-profile .name span {
  display: block;
  margin: -5px auto 15px;
  font-size: 1.6rem;
}

/* 経歴、QA */
.coach-career tr td,
.coach-qa tr td{
  line-height: 1.3;
}

/* 資格 */
.coach-qualification {
  width: 100%;
}

.coach-qualification>li:nth-of-type(n+2) {
  margin-top: 8px;
}

/* Q&A */
.coach-qa tr td {
  line-height: 1.3;
}


@media screen and (max-width: 767px) {

  /* 経歴、QA */
  .coach-career,
  .coach-career tbody,
  .coach-career tr,
  .coach-career tr td,
  .coach-qa,
  .coach-qa tbody,
  .coach-qa tr,
  .coach-qa tr td{
    display: block;
    width: 100%;
  }

  .coach-career tr:nth-of-type(n+2),
  .coach-qa tr:nth-of-type(n+2){
    margin-top: 18px;
  }

  .coach-career tr td:nth-of-type(1),
  .coach-qa tr td:nth-of-type(1){
    margin-bottom: 8px;
    padding-bottom: 2px;
    border-bottom: dashed 1px #505050;
  }

}

@media screen and (min-width: 768px) {
  .coach-introbox .photo {
    position: relative;
    margin: 0 0 30px 0;
  }

  .coach-introbox>div:nth-of-type(n+3) {
    margin-top: 32px;
  }

  /* 写真 */
  .coach-introbox .photo .comment {
    top: 40px;
    right: -5px;
  }

  /* 名前・役職・生年月日 */
  .coach-profile .name {
    font-size: 3rem;
  }

  /* 経歴、QA */
  .coach-career,
  .coach-qa{
    width: 100%;
  }

  .coach-career tr td,
  .coach-qa tr td{
    padding: 4px 0;
    width: 100%;
    vertical-align: top;
  }

  .coach-career tr td:nth-of-type(1){
    width: 30%;
  }

  .coach-career tr td:nth-of-type(2){
    width: 68%;
  }

  /* Q&A */
  .coach-qa tr td {
    padding:8px 10px;
    width: 50%;
    vertical-align: middle;
    border-bottom: solid 1px #a0a0a0;
  }

  .coach-qa tr:last-of-type td {
    border-bottom: none;
  }
  .coach-qa tr td:nth-of-type(1) {
    width: 50%;
    background-color: #efefef;
  }

  .coach-qa tr td:nth-of-type(2) {
    width: 50%;
  }

}

@media print,
(min-width: 1110px) {
    /* 写真 */
  .coach-introbox .photo .comment {
    top: 40px;
    right: -30px;
  }

}


/*----------------------------------------------------------
/* スクール・コースの紹介／ サッカースクールの特徴
-----------------------------------------------------------*/
/* ページレイアウト */
.scholl-intropage-uppernavi {
  margin: 50px auto 0;
}

/* 見出し／ スクール・コース紹介、チアスクール 一部共通 */
.school-course-cmn h2,
.school-course-detailcmn h2,
.cheer-school h2 {
  margin: 0 auto 40px;
  text-align: center;
  font-size: 2.8rem;
  font-weight: 900;
  color: #2c4198;
}

#school-feature h3 {
  display: flex;
  align-items: center;
  margin: 0 auto 40px;
  padding: 8px;
  font-size: 2rem;
  font-weight: 900;
  color: #fff;
  background-color: #2c4198;
  border-radius: 40px;
}

#school-feature h3 img {
  display: inline-block;
  margin-right: 15px;
  width: 35px;
  vertical-align: middle;
}

#school-feature h4 {
  margin: 0 auto 20px;
  padding: 16px 4px;
  line-height: 1.2;
  text-align: center;
  font-size: 1.4rem;
  font-weight: bold;
  color: #fff;
  background: url('./images/school-intro/h4bg_sd.gif') center center /cover no-repeat;
  border-radius: 30px;
}

#school-feature h4 span {
  display: inline-block;
  font-size: 3rem;
  font-weight: 900;
}

/* 冒頭 年間スケジュール（PDF）リンク */
.cmn-nenkan-schedule-pdf{
  margin: 30px auto 0;
  text-align: center;
}
.cmn-nenkan-schedule-pdf a{
  display: inline-block;
  padding:1px 6px 2px 12px;
  font-size:1.7rem;
  font-weight: bold;
  color: #fff;
  background-color: #2c4198;
  border:solid 1px #2c4198;
  transition: all ease-out .2s;
  border-radius: 4px;
}
.cmn-nenkan-schedule-pdf a:hover{
  color: #2c4198;
  background-color: #fff;
  border:solid 1px #2c4198;
}




/* 入会特典 */
.more-benefit {
  position: relative;
  margin: 0 auto 0;
  padding-bottom: 30px;
  max-width: 600px;
  text-align: center;
}

.more-benefit .bnefit-more {
  width: 30%;
}

.more-benefit .bnefit-ltaana {
  position: absolute;
  right: 0;
  bottom: -22px;
  width: 30%;
  z-index: -1;
}
  .benefit-ticket{
    margin: 0 0 0 0;
    font-weight: bold;
    color:#2c4198;
}

.plus-benefit{
  margin: 15px 0;
  text-align: center;
}


/*** スクール・コース紹介ナビ／ 共通 ***/
/* ページ上ナビ包含 */
.scholl-intropage-uppernavi {
  margin: 40px auto 0;
  border-bottom: solid 1px #2c4198;
}

.scholl-intropage-uppernavi .cmn-school-intronavi {
  padding: 0 15px;
}

.scholl-intropage-uppernavi .cmn-school-intronavi ul {
  border-bottom: none !important;
}

.cmn-school-intronavi {
  margin: 0 auto 0;
  width: 100%;
  max-width: 800px;
}

.cmn-school-intronavi ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  border: solid 1px #2c4198;
  border-right: none !important;
}

.cmn-school-intronavi ul li {
  width: 25%;
  transition: all ease-out .2s;
}

.cmn-school-intronavi ul li {
  border-right: solid 1px #2c4198;
}

.cmn-school-intronavi ul li a {
  display: block;
  background-color: #fff;

  transition: all ease-out .2s;
}

.cmn-school-intronavi ul li a:hover,
#school-feature .cmn-school-intronavi ul li:nth-of-type(1) a,
#school-course .cmn-school-intronavi ul li:nth-of-type(2) a,
#school-place .cmn-school-intronavi ul li:nth-of-type(3) a,
#school-fee .cmn-school-intronavi ul li:nth-of-type(4) a {
  opacity: 0;
}

.cmn-school-intronavi ul li:nth-of-type(1) {
  background: url('./images/school-intro/btn01-select.svg') center center /cover no-repeat, #2c4198;
}

.cmn-school-intronavi ul li:nth-of-type(2) {
  background: url('./images/school-intro/btn02-select.svg') center center /cover no-repeat, #2c4198;
}

.cmn-school-intronavi ul li:nth-of-type(3) {
  background: url('./images/school-intro/btn03-select.svg') center center /cover no-repeat, #2c4198;
}

.cmn-school-intronavi ul li:nth-of-type(4) {
  background: url('./images/school-intro/btn04-select.svg') center center /cover no-repeat, #2c4198;
}

/*** 紹介ブロック ***/
.schoolfeature-cont {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.h3-lower-event-notes {
  margin: -30px auto 30px;
  text-align: center;
  font-size: 1.4rem;
  color: #2c4198;
}

/* 写真 */
.schoolfeature-cont .photo {
  margin: 0 0 10px 0;
}
.schoolfeature-cont .infobox.paral .photo{
  margin: 0 0 0 0;
}

.schoolfeature-cont .photo img {
  border-radius: 30px;
}

.schoolfeature-cont .photo span {
  display: block;
  margin-top: 5px;
  line-height: 1.3;
  text-align: center;
  font-weight: bold;
  color: #2c4198;
}

/*** 紹介部 ***/
/* 並列レイアウトは紹介を写真上下センタリング */
.schoolfeature-cont .infobox.paral .detail {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
}
.schoolfeature-cont .detail .md {
  position: relative;
  margin: 0 0 12px 0;
  line-height: 1.3;
  font-size: 1.8rem;
  font-weight: 900;
  color: #2c4198;
}

.schoolfeature-cont .detail .md img {
  width:80px;
}

.schoolfeature-cont .infobox.paral .detail .md.illust {
  padding-top: 30px;
}

.schoolfeature-cont .detail .md.paral img {
  position: absolute;
  top: 0;
  right: 0;
}

.schoolfeature-cont .detail .intro {
  margin: 0 0 15px 0;
  line-height: 1.3;
  font-size:1.5rem;
  font-weight: bold;
  color:#2c4198;
}

.schoolfeature-cont .detail .intro a{
  text-decoration: underline;
  color:#2c4198;
}

.schoolfeature-cont .detail p:last-of-type {
  margin: 0 0 0 0;
}

/* ページ下ナビ */
.school-feature-btmnavi .cmn-navi-btn:nth-of-type(1) {
  margin: 0 0 30px 0;
}

.school-feature-btmnavi .cmn-navi-btn .entry-login-btn {
  width: 100%;
}

/* 年間スケジュール */
.schedule-pdf-link{
  margin: 30px 0 0 0;
  width:100%;
}
.schedule-pdf-link a{
  text-decoration: none;
  display: block;
  margin: 0 auto 0;
  padding:4px 6px 5px 6px;
  width:100%;
  text-align: center;
  color:#fff;
  background-color: #2c4198;
  border:solid 1px #2c4198;
  border-radius: 4px;
  transition: all ease-out .2s;
}

.schedule-pdf-link_s{
  margin: 50px 0 0 0;
  width:100%;
}
.schedule-pdf-link_s a{
  text-decoration: none;
  display: block;
  margin: 0 auto 0;
  padding:15px 6px 30px 6px;
  width:100%;
  text-align: center;
  font-size:2.4rem;
  font-weight: bold;
  color:#fff;
  background-color: #2c4198;
  border:solid 1px #2c4198;
  border-radius: 10px;
  transition: all ease-out .2s;
}
.schedule-pdf-link_s a span{
  border-bottom: solid 6px #fcc800;
}

.schedule-pdf-link a:hover,
.schedule-pdf-link_s a:hover{
  color:#2c4198;
  background-color: #fff;
}

@media screen and (max-width: 767px) {

  /*** 紹介ブロック ***/
  .schoolfeature-cont .infobox:nth-of-type(n+2) {
    margin-top: 40px;
  }

  .schoolfeature-cont .infobox.paral > div:nth-of-type(n+2){
    margin-top: 15px;
  }
.schoolfeature-cont .detail .md.paral img {
  top:-10px;
  width:20%;
}
/* カリキュラムの3写真部のみ上下余白調整 */
.schoolfeature-cont .infobox.paral.curriculum-photo{
  margin-top: 15px !important;
}


}

@media screen and (min-width: 768px) {

  /* ページレイアウト */
  .scholl-intropage-uppernavi {
    margin: 50px auto 0;
  }

  /* 見出し */
  .school-course-cmn h2,
  .school-course-detailcmn h2,
  .cheer-school h2 {
    margin: 0 auto 40px;
    font-size: 3rem;
  }

  #school-feature h3 {
    justify-content: center;
    margin: 0 auto 50px;
    font-size: 2.5rem;
  }

  #school-feature h3 img {
    width: 60px;
  }

  #school-feature h4 {
    font-size: 3rem;
    background: url('./images/school-intro/h4bg_ld.gif') center center /cover no-repeat;
  }

  #school-feature h4 span {
    font-size: 5rem;
  }

  /*** 紹介ブロック ***/
  /* カリキュラムの上下センタリング調整 */
.schoolfeature-cont .infobox.paral .detail.curriculum{
  transform: translateY(-9%);
}

  /* 特殊横並びパターン1 */
  .schoolfeature-cont .infobox.paral {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 0 30px 0;
    width: 100%;
  }

  .schoolfeature-cont .infobox.paral .photo,
  .schoolfeature-cont .infobox.paral .detail,
  .schoolfeature-cont .infobox {
    width: 48%;
  }

  .schoolfeature-cont .infobox.paral > div:nth-of-type(n+3){
    margin-top: 20px;
  }

  /* 特殊横並びパターン3 */
  .schoolfeature-cont.paral3 .infobox {
    width: 31%;
  }

  /* 入会特典 */
  .more-benefit .bnefit-more {
    width: 188px;
  }

  .more-benefit .bnefit-ltaana {
    bottom: -42px;
    width: 200px;
  }
  .benefit-ticket{
  text-align: center;
}

.plus-benefit img{
  width:50px;
}

/* レッスン欠席の振り替え機能PDF */
.schedule-pdf-link.sukusuku-furikae{
  margin-top: 0;
}
}

@media print,
(min-width: 1110px) {

  /*** スクール・コース紹介ナビ／ 共通 ***/
  .scholl-intropage-uppernavi .cmn-school-intronavi {
    padding: 0 0;
  }

  .schoolfeature-cont .detail .md {
    font-size: 2rem;
  }

}


/*----------------------------------------------------------
/* スクール・コースの紹介
-----------------------------------------------------------*/
/* レイアウト */
.school-course-block.sepapoint{
  margin-bottom: 50px !important;
}

/* 見出し */
.school-course-block h3 {
  margin: 0 auto 30px;
  padding: 10px 10px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  color: #2c4198;
  border: solid 2px #2c4198;
  border-radius: 40px;
}

.school-course-photo {
  margin: 0 0 20px 0;
}

.school-course-photo img {
  border-radius: 30px;
}

.school-course-info h4 {
  margin: 0 0 15px 0;
  padding-bottom: 18px;
  font-size: 2.2rem;
  font-weight: 900;
  color: #2c4198;
  border-bottom: solid 1px #2c4198;
}

.school-course-block-pr{
  margin: 0 0 25px 0;
  width:100%;
  line-height: 1.4;
  font-weight: bold;
  color:#2c4198;
}

.school-course-info p {
  margin: 0 0 25px 0;
}

.school-course-info .btm-hints {
  position: relative;
  margin: 0 0 0 0;
}

.school-course-info .btm-hints span {
  display: inline-block;
  padding: 6px 10px;
  text-align: center;
  font-size: 1.3rem;
  font-weight: bold;
  color: #2c4198;
  border: solid 1px #2c4198;
  border-radius: 10px;
}

.school-course-info .btm-hints span:nth-of-type(n+2) {
  margin-left: 8px;
}

.school-course-info .btm-hints a {
  display: block;
  margin: 15px 0 0 0;
}

.school-course-info.wide .btm-hints a{
  position: absolute;
  right:0;
  bottom: 0;
}

@media screen and (max-width: 767px) {
  .school-course-info .btm-hints {
    padding-bottom: 55px;
  }

  .school-course-info .btm-hints a {
    left: 0;
  }

}

@media screen and (min-width: 768px) {
/* レイアウト */
.school-course-block.sepapoint{
  margin-bottom: 80px !important;
}

  /* 見出し */
  .school-course-block h3 {
    margin: 0 auto 40px;
    font-size: 2rem;
  }

  .school-course-info h4 {
    font-size: 2.5rem;
  }

.school-course-block-pr{
  margin: 0 0 35px 0;
  text-align: center;
  font-size: 2.5rem;
}

  /* ワイドレイアウト */
  .school-course-photo.wide {
    margin: 0 0 50px 0;
  }

  .school-course-info.wide {
    margin: 0 auto 0;
    width: 90%;
  }

  /* 横並びレイアウト */
  /* 写真左 インフォ右 */
  .school-course-block.paral {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }

  .school-course-block.paral .school-course-photo {
    width: 40%;
  }

  .school-course-block.paral .school-course-info {
    width: 56%;
  }

  /* 写真右 インフォ左 */
  .school-course-block.paral.reverse .school-course-photo {
    order: 2;
  }

  .school-course-block.paral.reverse .school-course-info {
    order: 1;
  }

  .school-course-info .btm-hints span {
    padding: 6px 20px;
    font-size: 1.5rem;
  }

  .school-course-info .btm-hints span:nth-of-type(n+2) {
    margin-left: 15px;
  }

  .school-course-info .btm-hints a {
    right: 0;
  }

  .school-course-block.paral .school-course-info .btm-hints {
    padding-bottom: 55px;
  }

  .school-course-block.paral .school-course-info .btm-hints a {
    left: 0;
    right: inherit;
  }
}

@media print,
(min-width: 1110px) {
  .school-course-info .btm-hints {
    padding-bottom: 0 !important;
  }

  .school-course-block.paral .school-course-info .btm-hints a {
    left: inherit;
    right: 0;
  }
}


/*----------------------------------------------------------
/* スクール 各コースの紹介（コース詳細ページ）
-----------------------------------------------------------*/
/* 見出し */
.school-course-detailcmn h1 {
  height: auto;
}

.school-course-detailcmn h1 img {
  border-radius: 30px;
}

.school-course-detailcmn h3 {
  margin: 0 auto 20px;
  padding-bottom: 15px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 900;
  color: #2c4198;
  border-bottom: solid 1px #2c4198;
}

/* スクール特徴 */
.pr-course-feature {
  margin: 0 auto 30px;
  text-align: center;
}

.pr-course-feature span {
  display: inline-block;
  padding: 6px 10px;
  text-align: center;
  font-size: 1.3rem;
  font-weight: bold;
  color: #2c4198;
  border: solid 1px #2c4198;
  border-radius: 10px;
}

.pr-course-feature span:nth-of-type(n+2) {
  margin-left: 8px;
}

.school-course-detail-block-p {
  margin: 0 0 0 0;
}

/*** 対象学年 ***/
/* リスト表示基本 */
.course-school-grade-list {
  margin: 0 0 0 0;
}

.course-school-grade-list>li {
  padding: 15px 0;
  border-bottom: solid 1px #ccc;
}

.course-school-grade-list>li .course-grade {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.course-school-grade-list>li .course-grade .schoolplace-openbtn {
  cursor: pointer;
  margin: 0;
}

.course-school-grade-list>li .course-grade .schoolplace-openbtn span {
  font-weight: 900;
  color: #2c4198;
}

.course-school-grade-list>li .course-grade .schoolplace-openbtn img {
  padding-bottom: 2px;
  vertical-align: middle;
  transition: all ease-out .2s;
}

.course-school-grade-list>li .course-grade .schoolplace-openbtn.open img {
  transform: rotateZ(90deg);
}

.course-school-grade-list>li .course-grade .linkbtn {
  display: inline-block;
  padding: 6px 8px 8px 8px;
  line-height: 1;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
  color: #2c4198;
  background-color: #fcc800;
}

/* トグル処置 初期非表示 */
.course-school-grade-list>li .cmn-school-place-info-wrap {
  display: none;
}

.course-school-grade-list>li .cmn-school-place-info-wrap {
  margin-top: 15px;
  width: 100%;
}


/* スクール校 マップ 基本情報雄／ コース詳細・スクール会場ページ共通 */
.cmn-school-place-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

/* google map */
.cmn-school-place-info .gglmap-wrap {
  position: relative;
  width: 100%;
  height: 350px;
  margin: 0 0 15px 0;
}

.cmn-school-place-info .gglmap-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* 会場基本情報 */
.cmn-school-place-info .info {
  width: 100%;
}

.cmn-school-place-info .info dl {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.cmn-school-place-info .info dl dt {
  display: block;
  padding: 6px 8px 8px 8px;
  text-align: center;
  font-weight: bold;
  color: #fff;
  background-color: #2c4198;
}

.cmn-school-place-info .info dl dd {
  padding: 6px 8px 8px 8px;
}

/** 活動内容一例 **/
.course-training-menu{
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 0 0 0;
  width:100%;
}
.course-training-menu > dt,
.course-training-menu > dd{
  margin: 0 0 0 0;
  padding:10px 12px 12px 12px;
  width:100%;
}
.course-training-menu > dt{
  position: relative;
  margin: 0 0 5px 0;
  text-align: center;
  color:#fff;
  background-color: #2c4198;
  border-radius: 15px;
}

/* 活動内容一例 写真紹介レイアウト／未使用
.course-detail-katsudou-rei {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin: 0 0 0 0;
}

.course-detail-katsudou-rei .detail-box .photo {
  margin: 0 0 15px 0;
}

.course-detail-katsudou-rei .detail-box .photo img {
  border-radius: 30px;
}

.course-detail-katsudou-rei .detail-box p {
  margin: 0 0 0 0;
}

.course-detail-katsudou-rei .detail-box .active-md {
  margin: 0 0 12px 0;
  font-size: 1.8rem;
  font-weight: bold;
  color: #2c4198;
}*/


/* ページ下部体験ボタン */
.school-course-detail-block .entry-login-btn {
  width: 100%;
}

@media screen and (max-width: 767px) {

  /** 活動内容一例 **/
.course-training-menu > li{
  width:100%;
}
.course-training-menu > li:nth-of-type(n+2){
  margin-top: 8px;
}
  /* 活動内容一例 写真紹介レイアウト／未使用
  .course-detail-katsudou-rei .detail-box:nth-of-type(n+2) {
    margin-top: 30px;
  }*/

  .course-school-grade-list>li .course-grade .schoolplace-openbtn {
    margin-bottom: 15px;
  }

  /* スクール校 マップ 基本情報雄／ コース詳細・スクール会場ページ共通 */
  /* 会場基本情報 */
  .cmn-school-place-info .info dl:nth-of-type(n+2) {
    margin-top: 10px;
  }

  .cmn-school-place-info .info dl dt {
    margin: 0 0 8px 0;
    width: 100%;
  }

  .cmn-school-place-info .info dl dd {
    width: 100%;
  }

/** 活動内容一例 **/
.course-training-menu > dt:nth-of-type(n+2){
  margin-top: 20px;
}
}

@media screen and (min-width: 768px) {
  .school-course-detailcmn h3 {
    font-size: 2.4rem;
  }

  /* スクール特徴 */
  .pr-course-feature {
    margin: 0 auto 60px;
  }

  .pr-course-feature span {
    padding: 6px 20px;
    font-size: 1.5rem;
  }

  .pr-course-feature span:nth-of-type(n+2) {
    margin-left: 15px;
  }


  /* スクール校 マップ 基本情報雄／ コース詳細・スクール会場ページ共通 */
  /* google map */
  .cmn-school-place-info .gglmap-wrap {
    position: relative;
    width: 49%;
  }

  /* 会場基本情報 */
  .cmn-school-place-info .info {
    width: 49%;
  }

  .cmn-school-place-info .info dl {
    width: 100%;
  }

  .cmn-school-place-info .info dl dt {
    width: 100px;
  }

  .cmn-school-place-info .info dl dd {
    width: calc(100% - 115px);
  }

  /** 活動内容一例 **/
.course-training-menu > dt{
  position: relative;
  margin: 0 0 0 0;
  width:30%;
}
.course-training-menu > dt::after{
  content:'';
  position: absolute;
  top:48%;
  right:-35px;
  width:30px;
  height:4px;
  border-top: dotted 4px #2c4198;
}
.course-training-menu > dd{
  width:calc(100% - (30% + 40px));
}

.course-training-menu > dt:nth-of-type(n+2),
.course-training-menu > dd:nth-of-type(n+2){
  margin-top: 15px;
}

  /* 活動内容一例 写真紹介レイアウト／未使用
  .course-detail-katsudou-rei .detail-box {
    width: 48%;
  }

  .course-detail-katsudou-rei .detail-box:nth-of-type(n+3) {
    margin-top: 40px;
  }

  .course-detail-katsudou-rei .detail-box p {
    padding: 0 20px;
  }

  .course-detail-katsudou-rei .detail-box .active-md {
    font-size: 2.4rem;
  }*/

}

@media print,
(min-width: 1110px) {

  /** 活動内容一例 **/


  /* 活動内容一例 写真紹介レイアウト／未使用
  .course-detail-katsudou-rei .detail-box p {
    padding: 0 30px;
  }*/

}


/*----------------------------------------------------------
/* スクール・コースの紹介／ スクール会場
-----------------------------------------------------------*/
/* 見出し */
.school-place-block h3 {
  display: flex;
  align-items: center;
  margin: 0 0 15px 0;
  padding: 0 0 5px 0;
  line-height: 1;
  font-size: 1.6rem;
  color: #2c4198;
  font-weight: bold;
  border-bottom: solid 1px #2c4198;
}

.school-place-block h3 span {
  display: inline-block;
  padding: 0 10px 0 5px;
  font-size: 3rem;
  font-weight: 900;
  font-family: 'Oswald', 'Noto Sans JP', sans-serif;
}

/* 写真 */
.school-place-block .school-photo {
  margin: 0 0 20px 0;
}
.school-place-block .school-photo img {
  border-radius: 30px;
}

/*** 会場ナビ ***/
.school-place-navi {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.school-place-navi .school-place-menu {
  width: 100%;
}

.school-place-navi .school-place-menu li {
  width: 100%;
}

.school-place-navi .school-place-menu li a {
  display: flex;
  align-items: center;
  padding: 10px 5px 15px 5px;
  width: 100%;
  line-height: 1;
  font-size: 1.4rem;
  color: #fff;
  font-weight: 900;
  background-color: #2c4198;
}

.school-place-navi .school-place-menu li a:hover {
  color: #fcc800;
}

.school-place-navi .school-place-menu li a span {
  padding-right: 5px;
  font-size: 3rem;
  font-weight: bold;
  font-family: 'Oswald', 'Noto Sans JP', sans-serif;
}

.school-place-navi .school-place-menu li a img {
  display: inline-block;
  margin-left: 10px;
}

.school-place-block .entry-login-btn {
  width: 100%;
}

@media screen and (max-width: 767px) {

  /*** 会場ナビ ***/
  /* レイアウト */
  .school-place-navi .school-place-menu {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }

  .school-place-navi .school-place-menu.menu1 {
    order: 2;
  }

  .school-place-navi .school-place-menu.menu2 {
    margin-top: 8px;
    order: 3;
  }

  .school-place-navi .school-place-menu li {
    width: 49%;
  }

  .school-place-navi .school-place-menu li:nth-of-type(n+3) {
    margin-top: 8px;
  }

  .school-place-navi .school-place-menu li a img {
    width: 16px;
  }

  .school-place-navi .area-map {
    width: 100%;
    order: 1;
  }

}

@media screen and (min-width: 768px) {

  /* 見出し */
  .school-place-block h3 {
    font-size: 3.6rem;
  }

  .school-place-block h3 span {
    padding: 0 20px 0 10px;
    font-size: 6rem;
  }

  /*** 会場ナビ ***/
  /* レイアウト */
  .school-place-navi .school-place-menu {
    width: 30%;
  }

  .school-place-navi .school-place-menu li:nth-of-type(n+2) {
    margin-top: 8px;
  }

  .school-place-navi .area-map {
    width: 39%;
  }

  .school-place-navi .school-place-menu li a {
    padding: 6px 5px 11px 11px;
    font-size: 1.8rem;
  }

  .school-place-navi .school-place-menu li a span {
    padding-right: 10px;
    font-size: 4rem;
  }
}

@media print,
(min-width: 1110px) {

  /*** 会場ナビ ***/
  /* レイアウト */
  .school-place-navi .school-place-menu li a {
    padding: 10px 10px 15px 15px;
  }
}


/*----------------------------------------------------------
/* スクール・コースの紹介／ 月会費について
-----------------------------------------------------------*/
/* 包含／ 月会費ページのコンテンツ幅 他ページより狭い */
.school-fee-block {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  max-width: 760px;
}

.school-fee-block.wide {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  max-width: 1110px;
}

/* 見出し */
.school-fee-block h3 {
  margin: 0 auto 20px;
  text-align: center;
  font-size: 2rem;
  font-weight: 900;
  color: #2c4198;
}

/* 共通リスト／入会時年度登録料・月会費・年度更新料 */
.school-fee-list {
  margin: 0 0 0 0;
  width: 100%;
}

.school-fee-list li {
  padding: 15px 5px;
  text-align: center;
  font-weight: bold;
  border-top: solid 1px #ccc;
}

.school-fee-list.paral li {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.school-fee-list li .sml {
  font-size: 1.4rem;
}

.school-fee-list li:last-of-type {
  border-bottom: solid 1px #ccc;
}

/* 購入品 */
.purchase-item {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 0 25px 0;
}

.purchase-item .item-intro span {
  display: block;
  margin: 4px 0 0 0;
  font-size: 1.4rem;
}

/* 購入品 補足 */
.purchase-item-notes {
  margin: 0 0 25px 0;
}

.purchase-item-notes li {
  line-height: 1.3;
}

.purchase-item-notes li:nth-of-type(n+2) {
  margin-top: 8px;
}

/* 購入品 リンク */
.purchase-item-link {
  margin: 0 0 0 0;
}

.purchase-item-link li {
  display: flex;
  align-items: center;
  line-height: 1;
}

.purchase-item-link li img {
  display: inline-block;
  margin-right: 5px;
  padding-top: 3px;
}

.purchase-item-link li a {
  font-size: 1.8rem;
  font-weight: bold;
  color: #2c4198;
  margin: 0 0 0 0;
}

/* 補足・リンク 共通 */
.purchase-item-notes li:nth-of-type(n+2),
.purchase-item-link li:nth-of-type(n+2) {
  margin-top: 8px;
}

/*** 割引制度について ***/
.discount-announce {
  margin: 0 0 30px 0;
  text-align: center;
}

.school-fee-block .discount-block:nth-of-type(n+2) {
  margin-top: 30px;
}

.discount-block .discount-md {
  margin: 0 0 20px 0;
  padding-bottom: 8px;
  font-size: 1.8rem;
  font-weight: 900;
  color: #2c4198;
  border-bottom: solid 1px #ccc;
}

.discount-block .discount-intro {
  margin: 0 0 1em 0;
}

.discount-block p:last-of-type {
  margin: 0 0 0 0 !important;
}

/** 割引表 **/
.discout-hyo-wrap {
  margin: 5px 0 0 0;
  padding-bottom: 15px;
  width: 100%;
  overflow-x: auto;
}

.discout-hyo {
  margin: 0 0 0 0;
  width: 100%;
  border: solid 1px #aaa;
}

.discout-hyo tr th,
.discout-hyo tr td {
  padding: 6px 4px;
  text-align: center;
  color: #000;
  border: solid 1px #aaa;
}

.discout-hyo tr th {
  font-weight: bold;
  background-color: #efefef;
}

.discout-hyo-sd-guide {
  margin: 0 0 5px 0;
  text-align: right;
  font-size: 1.3rem;
}

@media screen and (max-width: 767px) {

  /* 購入品 */
  .purchase-item .item-intro:nth-of-type(n+2) {
    margin-top: 15px;
  }

  /** 割引表 **/
  .discout-hyo {
    width: 600px;
  }
}

@media screen and (min-width: 768px) {

  /* 見出し */
  .school-fee-block h3 {
    margin: 0 auto 40px;
    font-size: 2.5rem;
  }

  /* 共通リスト／入会時年度登録料・月会費・年度更新料 */
  .school-fee-list li {
    padding: 15px;
    font-size: 2.4rem;
  }

  .school-fee-list li .sml {
    font-size: 1.6rem;
  }

  /* 購入品 */
  .purchase-item {
    margin: 0 0 30px 0;
  }

  .purchase-item .item-intro {
    padding: 10px;
    width: 33%;
  }

  .purchase-item .item-intro:nth-of-type(n+4) {
    margin-top: 20px;
  }

  .purchase-item .item-intro span {
    font-size: 1.6rem;
  }

  /* 購入品 リンク */
  .purchase-item-link li a {
    font-size: 2.2rem;
  }

  /*** 割引制度について ***/
  .discount-announce {
    margin: 0 0 40px 0;
    text-align: center;
  }

  .school-fee-block .discount-block:nth-of-type(n+2) {
    margin-top: 40px;
  }

  .discount-block .discount-md {
    font-size: 2rem;
  }

}

@media print,
(min-width: 1110px) {}


/*----------------------------------------------------------
/* 体験・入会までの流れ
-----------------------------------------------------------*/
/* 見出し */
#taiken h1,
#nyukai h1 {
  padding: 20px 10px 10px 10px;
  height: auto !important;
  color: #2c4198 !important;
  text-shadow: none !important;
  border-bottom: solid 3px #2c4198;
}
#taiken h2,
#nyukai h2 {
  margin:0 0 20px 0;
  padding: 0 0 10px 0;
  text-align: center;
  font-size:2rem;
  color: #2c4198;
  font-weight: bold;
  border-bottom: solid 2px #2c4198;
}
/* フロー */
.cmn-entry-flow{
  margin: 0 0 0 0;
  width:100%;
}
.cmn-entry-flow .entry-step{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width:100%;
}
.cmn-entry-flow .entry-step:nth-of-type(n+2){
  margin-top: 15px;

}
.cmn-entry-flow .entry-step .step-num{
  width:50px;
}
.cmn-entry-flow .entry-step:nth-of-type(-n+3) .step-num{
  background: url('./images/taiken-nyukai/step-arrow.svg') 45% bottom /18% no-repeat;
}

.cmn-entry-flow .entry-step .step-num{
  padding-bottom: 40px;
}
.cmn-entry-flow .entry-step .step-num:last-of-type{
  padding-bottom: 0;
}
.cmn-entry-flow .entry-step .step-num img{
  width:100%;
}

.cmn-entry-flow .entry-step .detail{
  padding-top: 12px;
  width:calc(100% - 60px);
}
.cmn-entry-flow .entry-step .detail p:nth-of-type(1){
  margin: 0 0 0 0;
  font-weight:bold;
}
.cmn-entry-flow .entry-step .detail p:nth-of-type(n+2){
  margin-top: 1em;
}

.cmn-entry-flow .entry-step .detail p a{
  text-decoration: underline;
  color:#2c4198;
  font-weight: bold;
}

.cmn-entry-flow .entry-step .detail .entry-notes{
  margin: 15px 0 0 0;
  width:100%;
}
.cmn-entry-flow .entry-step .detail .entry-notes li{
  text-indent: -1em;
  padding-left:1em;
  line-height: 1.4;
}
.cmn-entry-flow .entry-step .detail .entry-notes li:nth-of-type(1){
  margin-bottom: 6px;
  font-weight: bold;
}
.cmn-entry-flow .entry-step .detail .entry-notes li:nth-of-type(n+2){
  margin-top: 3px;
}

/* スクール会員ページの操作 */
.member-site-intro{
  display: flex;
  width:100%;
}
.member-site-intro .step .guide{
  text-indent: -1em;
  margin: 6px 0 0 0;
  padding-left:1em;
  line-height: 1.3 !important;
  font-size:1.3rem !important;
}
.member-site-intro .next{
  display: flex;
  align-items: center;
}
.member-site-intro .next span{
  font-size:1.8rem;
  transform: rotateZ(90deg);
}

/* 申し込みボタン */
.taiken-nyukai-navi-btn {
  margin: 0 auto 0;
  width: 100%;
}

.taiken-nyukai-navi-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 10px;
  width: 100%;
  height: 76px;
  text-align: center;
  font-size: 2rem;
  font-weight: 900;
  color: #2c4198;
  border-radius: 50px;
  border: solid 2px #2c4198;
  transition: all ease-out .2s;
}

.taiken-nyukai-navi-btn a span {
  display: inline-block;
  vertical-align: baseline;
  color: #2c4198;
}
.taiken-nyukai-navi-btn a .sml {
  margin-left: 10px;
  padding-top: 10px;
  font-size:1.6rem;
}

.taiken-nyukai-navi-btn a:hover,
#taiken .taiken-nyukai-navi-btn .taiken-btn,
#nyukai .taiken-nyukai-navi-btn .nyukai-btn,
#cheerpage-taiken .taiken-nyukai-navi-btn .taiken-btn,
#cheerpage-nyukai .taiken-nyukai-navi-btn .nyukai-btn{
  background-color: #fcc800;
  border:solid 2px #fcc800;
}


@media screen and (max-width: 767px) {
/* 見出し */
  #taiken h1 {
    margin: 0 auto 30px;
    font-size: 3rem;
  }
/* スクール会員ページの操作 */
.member-site-intro{
  flex-wrap: wrap;
}
.member-site-intro .step{
  width:38%;
}
.member-site-intro .next{
  width:10%;
}
.member-site-intro div:nth-of-type(n+5){
  margin-top: 20px;
}
/* 申し込みボタン */
  .taiken-nyukai-navi-btn a:nth-of-type(2) {
    margin-top: 15px;
  }

}

@media screen and (min-width: 768px) {
#taiken h2,
#nyukai h2 {
  font-size:3rem;
}
/* フロー */
.cmn-entry-flow .entry-step .step-num{
  width:60px;
}
.cmn-entry-flow .entry-step .step-num{
  padding-bottom: 50px;
}
.cmn-entry-flow .entry-step .detail{
  padding-top: 7px;
  width:calc(100% - 90px);
}
.cmn-entry-flow .entry-step .detail p{
  font-size:1.8rem;
}

/* 申し込みボタン */
  .taiken-nyukai-navi-btn {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  .taiken-nyukai-navi-btn a {
    width: 48%;
    height: 100px;
    font-size: 2.8rem;
  }

}

@media print,
(min-width: 1110px) {}



/*----------------------------------------------------------
/* サイトメニュー／ モーダル・フッター共通
-----------------------------------------------------------*/
.basis-menu-box {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  background-color: #fff;
}

/*** 共通定義 ***/
/* リスト */
.contents-menu-box ul li {
  line-height: 1.1;
}

.contents-menu-box .school-course-menu-box dl .menulabel a,
.contents-menu-box ul li a {
  text-decoration: none;
  font-size: 1.4rem;
  font-weight: bold;
}

.contents-menu-box .school-course-menu-box dl .menulabel a:hover,
.contents-menu-box ul li a:hover {
  text-decoration: underline;
}

/* 包含 */
.contents-menu-box,
.btm-info-box {
  width: 100%;
  max-width: 1110px;
}

/* メニュー主タイトル */
.basis-menu-title {
  margin: 0 auto 25px;
  line-height: 1.2;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  color: #2c4198;
}

/*** コンテンツメニュー ***/
.contents-menu-box {
  margin: 0 auto 40px;
}



/** レギュラーメニュー **/
.contents-menu-box .regular-menu {
  width: 100%;
}

/** スクール・コースメニュー **/
.school-course-menu-title {
  margin: 0 0 14px 0;
  padding: 0 0 2px 0;
  width: 100%;
  font-size: 1.5rem;
  font-weight: bold;
  border-bottom: solid 1px #505050;
}

/*** 問い合わせインフォ／ フッターとFAQページ ***/
.btm-info-box {
  position: relative;
  margin: 0 auto 0;
  width: 100%;
}

.btm-info-box .btminfo {
  width: 100%;
}

.btm-info-box .btminfo:nth-of-type(1) {
  margin: 0 0 20px 0;
}

.btm-info-box .btminfo p {
  line-height: 1.2;
}

/* 事務局 */
.btm-info-box .btminfo p:nth-of-type(1) {
  margin: 0 0 3px 0;
  font-size: 1.6rem;
  font-weight: 900;
}

/* TEL */
.btm-info-box .btminfo p:nth-of-type(2) {
  margin: 0 0 0 0;
  font-size: 2rem;
  font-weight: 900;
}

/* 受付日時 */
.btm-info-box .btminfo p:nth-of-type(3) {
  margin: 0 0 5px 0;
  font-size: 1.2rem;
}

/* メールアドレス */
.btm-info-box .btminfo p:nth-of-type(4) {
  margin: 0 0 0 0;
  font-size: 1.4rem;
  font-weight: bold;
}

/* コピーライト・著作権について */
.btm-info-box .ft-copyrightbox {
  margin: 40px 0 0 0;
  text-align: center;
}

.btm-info-box .ft-copyrightbox p {
  margin: 15px 0 0 0;
  line-height: 1.3;
  font-size: 1rem;
}

.sitemenu-wrap .ft-copyrightbox p {
  display: none;
}

@media screen and (max-width: 767px) {

  /** メニュー共通 **/
  .contents-menu-box ul {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }

  .contents-menu-box ul>li {
    width: 100%;
  }

  .contents-menu-box ul>li>a {
    text-decoration: none !important;
    display: block;
    padding:6px 6px 8px 6px;
    width: 100%;
    line-height: 1;
    text-align: center;
    border:solid 1px #505050;
    border-radius: 6px;
    transition: all ease-out .2s;
  }
  .contents-menu-box ul>li>a:hover {
    color:#fff;
    background-color: #505050;
  }

/*** SDの表示調整 ***/
/* レギュラーメニューとスクール・コースの紹介メニューの分離／LD用メニュー一部非表示＆下部に非表示分を表示 */
.contents-menu-box .regular-menu.ld >li:nth-of-type(n+4),
.contents-menu-box .sc-menu-kihon > li:nth-of-type(2){
  display: none;
}
/* コースとスクール名称の先頭ハイフン消す */
  .contents-menu-box .sc-menu dd ul>li>a .hyphen {
    display: none;
}

  .contents-menu-box ul>li:nth-of-type(n+2) {
    margin-top: 10px;
  }

  /** レギュラーメニュー **/
  .contents-menu-box .regular-menu {
    margin: 0 auto 25px;
  }
  /* スクール・コースの紹介基本メニュー分離表示 */
  .contents-menu-box .sc-menu-kihon.sp{
    margin: 0 0 25px 0;
  }

  /** スクール・コースメニュー **/
  /* 特徴・月会費 */
  .school-course-menu-box{
    margin: 0 0 25px 0;
  }

  .school-course-menu-box .sc-menu-kihon,
  .school-course-menu-box .sc-menu.course,
  .school-course-menu-box .sc-menu.school {
    margin: 0 0 20px 0;
    width: 100%;
  }

  .school-course-menu-box .sc-menu.school {
    margin: 0 0 0 0;
  }

  /* コースメニュー／スクール会場メニュー 共通 */
  .school-course-menu-box .sc-menu.course dl,
  .school-course-menu-box .sc-menu.school dl {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }

  .school-course-menu-box .sc-menu.course dt,
  .school-course-menu-box .sc-menu.school dt {
    margin: 0 0 8px 0;
    width: 100%;
  }

}

@media screen and (min-width: 768px) {

  /* メニュータイトル */
  .basis-menu-title {
    margin: 0 auto 40px;
    font-size: 2.4rem;
  }

  /*** コンテンツメニュー ***/
  .contents-menu-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 20px;
  }

  /*** 共通定義 ***/
  /* リスト */
  .contents-menu-box .school-course-menu-box ul li:nth-of-type(n+2) {
    margin-top: 4px;
  }


  /** スクール・コースメニュー **/
  .school-course-menu-title {
    margin: 0 0 15px 0;
    padding: 0 0 15px 0;
  }

  .contents-menu-box .school-course-menu-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }

  /* コース・スクール会場／共通 */
  .contents-menu-box .school-course-menu-box .sc-menu {
    display: flex;
    flex-wrap: wrap;
  }

  .contents-menu-box .school-course-menu-box .sc-menu .menulabel {
    font-weight: bold;
  }

  .contents-menu-box .school-course-menu-box .sc-menu dd ul {
    margin: 0 0 0 0;
    width: 100%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.school dd ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.school dd ul>li {
    width: 46%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.school dd ul>li:nth-of-type(2) {
    margin-top: 0;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.school dd ul>li:nth-of-type(n+3) {
    margin-top: 4px;
  }

  /*** 問い合わせインフォ ***/
  .btm-info-box {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }

  .btm-info-box .btminfo {
    width: 38%;
  }

  /* コピーライト・著作権について */
  .btm-info-box .ft-copyrightbox {
    position: absolute;
    right: 0;
    bottom: 0;
    text-align: right;
  }

}

@media screen and (min-width: 768px) and (max-width: 1109px) {

  /*** 共通定義 ***/
  /* リスト */
  .contents-menu-box ul li a {
    font-size: 1.4rem;
  }

  /** レギュラーメニュー **/
  .contents-menu-box .regular-menu {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 20px;
    width: 100%;
  }

  .contents-menu-box .regular-menu>li {
    width: 25%;
  }

  .contents-menu-box .regular-menu>li:nth-of-type(n+5) {
    margin-top: 4px;
  }

  /** スクール・コースメニュー **/
  /* コース・スクール会場／共通 */
  .contents-menu-box .school-course-menu-box .sc-menu .menulabel {
    font-size: 1.4rem;
  }

  .contents-menu-box .school-course-menu-box .sc-menu dd ul li a {
    font-size: 1.3rem;
  }

  /* 特徴・月会費 */
  .school-course-menu-box .sc-menu-kihon {
    width: 16%;
  }

  /* コースメニュー */
  .contents-menu-box .school-course-menu-box .sc-menu.course {
    width: 33%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.course>dt {
    width: 27%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.course>dd {
    width: 72%;
  }

  /* スクール会場メニュー */
  .contents-menu-box .school-course-menu-box .sc-menu.school {
    width: 50%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.school>dt {
    width: 31%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.school>dd {
    width: 68%;
  }

  /*** 問い合わせインフォ ***/
  .btm-info-box {
    padding: 0 0 100px 0;
  }
}


@media print,
(min-width: 1110px) {

  /*** 共通定義 ***/
  /* リスト */
  .contents-menu-box ul li:nth-of-type(n+2) {
    margin-top: 4px;
  }


  /** レギュラーメニュー **/
  .contents-menu-box .regular-menu {
    width: 18%;
  }

  /** スクール・コースメニュー **/
  .contents-menu-box .school-course-menu-box {
    width: 80%;
  }

  /* コース・スクール会場／共通 */
  .contents-menu-box .school-course-menu-box .sc-menu .menulabel {
    line-height: 1.1;
    font-size: 1.5rem;
  }

  .contents-menu-box .school-course-menu-box .sc-menu dd ul li a {
    font-size: 1.4rem;
  }

  /* 特徴・月会費 */
  .school-course-menu-box .sc-menu-kihon {
    width: 25%;
  }

  /* コースメニュー */
  .contents-menu-box .school-course-menu-box .sc-menu.course {
    width: 30%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.course>dt {
    width: 25%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.course>dd {
    width: 74%;
  }

  /* スクール会場メニュー */
  .contents-menu-box .school-course-menu-box .sc-menu.school {
    width: 45%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.school>dt {
    width: 31%;
  }

  .contents-menu-box .school-course-menu-box .sc-menu.school>dd {
    width: 68%;
  }


}


/*----------------------------------------------------------
/* ページ下共通ページナビ
-----------------------------------------------------------*/
.cmn-btm-sitenavi {
  margin: 0 auto 40px;
  padding: 20px 15px;
  width: 100%;
  background: url('./images/common/cmn-sitenavi-bg_sd.jpg') center center /cover no-repeat;
}

.cmn-btm-sitenavi .md {
  margin: 0 auto 15px;
  text-align: center;
  font-size: 2rem;
  font-weight: 900;
  color: #fff;
  text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.9);
}

.cmn-btm-sitenavi ul {
  margin: 0 auto 0;
  width: 100%;
  max-width: 800px;
}

.cmn-btm-sitenavi ul li a {
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 20px;
  width: 100%;
  font-size: 2rem;
  color: #2c4198;
  font-weight: 900;
  background-color: #fff;
  border-radius: 20px;
  transition: all ease-out .2s;
}

.cmn-btm-sitenavi ul li a:hover {
  color: #fff;
  background-color: #2c4198;
}

@media screen and (max-width: 767px) {
  .cmn-btm-sitenavi ul {
    width: 100%;
  }

  .cmn-btm-sitenavi ul>li:nth-of-type(n+2) {
    margin-top: 15px;
  }

}

@media screen and (min-width: 768px) {
  .cmn-btm-sitenavi {
    margin: 0 auto 50px;
    padding: 40px 15px;
    background: url('./images/common/cmn-sitenavi-bg_ld.jpg') center center /cover no-repeat;
  }

  .cmn-btm-sitenavi .md {
    font-size: 2.4rem;
  }

  .cmn-btm-sitenavi ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .cmn-btm-sitenavi ul li:nth-of-type(1) {
    width: 100%;
  }

  .cmn-btm-sitenavi ul li:nth-of-type(n+2) {
    margin-top: 15px;
    width: 32%;
  }

}

@media print,
(min-width: 1110px) {
  .cmn-btm-sitenavi {
    padding: 30px 0;
  }

  .cmn-btm-sitenavi ul li a {
    font-size: 2rem;
  }

}


/*----------------------------------------------------------
/* フッター
-----------------------------------------------------------*/
/* チアスクールのみ上ボーダー */
.cheer-school footer{
  border-top:solid 2px #2c4198;
}

/* コンテンツメニュー包含 */
.footer-sitemenu-wrap {
  padding: 40px 20px;
  width: 100%;
  height: auto;
  background-color: #fff;
}

/* ページ先頭に戻るボタン */
#to-pagetop {
  display: none;
  position: fixed;
  right: 5px;
  bottom: 15%;
  padding: 4px 2px;
  width: auto;
  line-height: 1.1;
  text-align: center;
  font-size: 1.1rem;
  font-weight: bold;
  z-index: 20;
  opacity: 0.6;
}

#to-pagetop img {
  display: inline-block;
  width:70px;
}

#to-pagetop:hover {
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .footer-sitemenu-wrap nav .contents-menu-box {
    display: none;
  }
}

@media screen and (min-width: 768px) {

  /* ページ先頭に戻るボタン */
  #to-pagetop {
    right: 15px;
    bottom: 100px;
    padding: 10px 0;
    font-size: 1.6rem;
  }

  #to-pagetop img {
    width: 80px;
  }

}

@media print,
(min-width: 1110px) {

  /* ページ先頭に戻るボタン */
  #to-pagetop {
    right: 40px;
  }

  #to-pagetop img {
    width: 100px;
  }

}




/*----------------------------------------------------------
/* スクールをさがす
-----------------------------------------------------------*/
/* input非表示 */
input {
  display: none;
}

/*** スクール検索条件選択 ***/
/* 検索結果テキスト表示 */
.search-result-dsp {
  margin: 0 auto 30px;
  text-align: center;
}

.search-result-dsp .search-result-info {
  margin: 0 0 20px 0;
  font-size: 1.8rem;
  font-weight: bold;
  color: #2c4198;
}

.search-result-dsp .search-result-info span {
  display: inline-block;
  margin: 0 12px 0 12px;
  vertical-align: baseline;
  font-weight: 900;
  transform: scale(1.2, 1.5) translateY(-3px);
}

.search-result-dsp .search-result-info img {
  display: inline-block;
  margin-left: 20px;
  vertical-align: baseline;
}

.school-search-result {
  margin-bottom: 20px;
  text-align: center;
  color: #0073aa;
}

.course-data {
  display: none;
}

.course-data.status_selected {
  display: flex;
}

.school-select-box label {
  display: inline;
}

.select-box label .el_checkbox {
  position: relative;
  top: 3px;
  width: 14px;
  height: 14px;
  display: inline-block;
  margin-right: 5px;
  border: 1px solid #2c4198;
}

.select-box label .el_checkbox:after {
  content: '';
  position: absolute;
  top: 4px;
  left: 4px;
  bottom: 4px;
  right: 4px;
  display: block;

}

.select-box input[type=checkbox]:checked+label .el_checkbox:after {
  width: 20px;
  height: 10px;
  margin-top: -8px;
  top: 50%;
  left: -2px;
  transform: rotate(-45deg);
  border-bottom: 3px solid;
  border-left: 3px solid;
  border-color: #2c4198;
}

/*** 条件絞り込み選択BOX ***/
.school-select-box-cont {
  position: relative;
}

.school-select-box {
  position: relative;
  margin: 0 auto 30px;
  padding: 20px;
  margin-bottom: 30px;
  background-color: #fff;
  border: solid 2px #2c4198;
  border-radius: 20px;
  z-index: 1;
}

/** 絞り込み項目 **/
/* 包含 */
.selectbox-item-wrapper {
  margin: 0 0 0 0;
  width: 100%;
}

.selectbox-item-wrapper .selectbox-item:nth-of-type(n+2) {
  margin-top: 20px;
}

.selectbox-item {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  padding-top: 20px;
}

/* 項目名 */
.selectbox-item .item-label {
  margin: 0 0 10px 0;
  padding: 10px;
  width: 100%;
  text-align: center;
  line-height: 1;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  background-color: #2c4198;
  border-radius: 15px;
}

/* チェックボックス群 */
.checkbox-area {
  width: 100%;
}

.select-box label {
  cursor: pointer;
}

.select-box {
  display: inline-block;
  margin-right: 25px;
  margin-bottom: 20px;
}

.select-box:last-child {
  margin-right: 0;
}

/* 絞り込みリセット */
.check-reset {
  cursor: pointer;
  margin: 30px auto 0;
  padding: 10px;
  width: 60%;
  text-align: center;
  color: #fff;
  background-color: #bdbdbd;
}

/** 検索該当表示（※スクール会場ページ 各スクール紹介、チアスクールの活動日でも使用）**/
#result-list {
  margin: 0 0 0 0;
  width: 100%;
}

#result-list>li {
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 18px 0 18px 10px;
  border-top: solid 1px #ccc;
  border-left: solid 8px;
}

#result-list>li:last-of-type {
  /*
  padding: 18px 0 0 10px;
  */
  border-bottom: solid 1px #ccc;
}

#result-list>li p {
  margin: 0 0 15px 0;
}

/* チアスクール／活動日用 */
.cheerschool-practice #result-list .md h4{
  font-size:1.8rem;
  font-weight: bold;
  color:#2c4198;
}
.cheerschool-practice #result-list > li {
  border-left:none;
}
.cheerschool-practice #result-list > li:nth-of-type(1) {
  border-top:none;
}

/*** エリア色分け ***/
/* 泉パークタウン */
.course-data.izumi-pt {
  border-left-color: #1ca139 !important;
}
/* 泉野村 */
.course-data.izumi-nomura {
  border-left-color: #0679bb !important;
}
/* 青葉 */
.course-data.aoba {
  border-left-color: #2dc1d4 !important;
}
/* 青葉錦ケ丘 */
.course-data.nishikigaoka {
  border-left-color: #a5fbef !important;
}
/* 太白 */
.course-data.taihaku {
  border-left-color: #7753f7 !important;
}
/* 長町 */
.course-data.nagamachi {
  border-left-color: #e3f115 !important;
}
/* 宮城野 */
.course-data.miyagino {
  border-left-color: #f39c39 !important;
}
/* 荒井 */
.course-data.arai {
  border-left-color: #93b84e !important;
}
/* 名取 */
.course-data.natori {
  border-left-color: #813f45 !important;
}
/* 仙南 */
.course-data.sennan {
  border-left-color: #255e68 !important;
}
/* 古川 */
.course-data.furukawa {
  border-left-color: #ae8bee !important;
}
/* 栗原 */
.course-data.kurihara {
  border-left-color: #943417 !important;
}
/* 石巻 */
.course-data.ishinomaki {
  border-left-color: #c04fc4 !important;
}
/* 泉やまいちサステナパーク */
.course-data.izumi-yamaichi {
  border-left-color: #1ca186 !important;
}


/* リンクボタン */
#result-list>li .links {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0 auto 0;
}

#result-list>li .links a {
  display: flex;
  padding: 6px;
  line-height: 1;
  font-size: 1.5rem;
  font-weight: bold;
}

#result-list>li .links a:nth-of-type(1) {
  color: #2c4198;
  background-color: #fcc800;
}

#result-list>li .links a:nth-of-type(2) {
  color: #fff;
  background-color: #2c4198;
}

#result-list>li .links a:last-of-type {
  margin-left: 8px;
}

.accent-mascot {
  position: absolute;
  top: -95px;
  right: -8px;
  width: 95px;
  z-index: 0;
}


@media screen and (max-width: 767px) {

  /* 検索結果テキスト表示 */
  .search-result-dsp .search-result-info img {
    display: inline-block;
    margin: 15px 0 0 0;
    vertical-align: baseline;
  }

  .search-result-dsp .notes {
    text-align: left;
  }

  /** 絞り込み項目 **/
  .selectbox-item-wrapper .selectbox-item:nth-of-type(n+2) {
    padding-top: 20px;
    border-top: solid 1px #ccc;
  }

}

@media screen and (min-width: 768px) {

  /*** 条件絞り込み選択BOX ***/
  .school-select-box {
    padding: 40px;
  }

  /* マスコット */
  .accent-mascot {
    top: -110px;
    right: -5px;
    width: 110px;
  }

  /* チェックボックス群 */
  /* 項目名 */
  .selectbox-item {
    padding: 0 0 0 0;
  }

  .selectbox-item .item-label {
    margin: 0 0 0 0;
    width: 150px;
  }

  .selectbox-item-wrapper .selectbox-item .item-label {
    margin-top: 20px;
  }

  .selectbox-item-wrapper .selectbox-item .checkbox-area {
    padding-top: 25px;
  }

  .selectbox-item-wrapper .selectbox-item:nth-of-type(n+2) .checkbox-area {
    border-top: solid 1px #ccc;
  }

  .checkbox-area {
    width: calc(100% - 170px);
  }


  /* 検索結果テキスト表示 */
  .search-result-dsp .search-result-info {
    margin: 0 0 5px 0;
    font-size: 2.2rem;
  }

  #result-list>li p {
    margin: 0 0 0 0;
    width:100%;
  }

  /* リンクボタン */
  #result-list>li .links {
    justify-content: space-between;
    margin: 10px 0 0 0;
    width: auto;
  }

}

@media print,
(min-width: 1110px) {

  /* マスコット */
  .accent-mascot {
    top: -165px;
    right: -55px;
    width: 162px;
  }

}



/*----------------------------------------------------------
/* チアスクールページ／ 概要 ※スタイルはサッカースクールのものを一部共用
-----------------------------------------------------------*/
/* 包含 */
.cheer-school article{
  margin-bottom: 50px;
}

/* 見出し */
.cheer-school h1 {
  height: auto;
}

.cheer-school h1 img {
  border-radius: 30px;
}

.cheer-school .cheerschool-index-type1{
  margin: 0 auto 15px;
  padding:0;
  text-align: center;
  font-size: 1.6rem;
  color: #2c4198;
  border:none !important;
}
.cheerschool-index-type1 span{
  color: #fcc800;
}

.cheer-school h3 {
  margin: 0 auto 30px;
  padding-bottom: 15px;
  text-align: center;
  font-size: 2rem;
  font-weight: 900;
  color: #2c4198;
  border-bottom: solid 1px #2c4198;
}

/* 入会キャンペーンPR */
.cheerschool-nyukai-pr{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto 30px;
  width:100%;
}
.cheerschool-nyukai-pr span{
  display: inline-block;
  width:70%;
  text-align: center;
  font-size:1.6rem;
  font-weight: bold;
  color:#2c4198;
}
.cheerschool-nyukai-pr img{
  width:50px;
}

/* お約束 */
.cheer-promise{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto 40px;
  padding:15px;
  width:100%;
  border: solid 2px #fcc800;
  border-radius: 10px;
}
.cheer-promise > dt{
  font-weight: bold;
  color:#2c4198;
}
.cheer-promise > dt:nth-of-type(n+2),
.cheer-promise > dd:nth-of-type(n+2){
  margin-top: 10px;
}

.cheer-promise > dd{
  width:75%;
}

/* 入会アクセント写真 */
.cheer-promise-photo{
  margin: 0 auto 0;
  width:100%;
}
.cheer-promise-photo > li{
  text-align: center;
}
.cheer-promise-photo > li img{
  border-radius: 10px;
}

/*** スクール会場案内 ***/
/* 包含 */
.cheer-school-info{
  margin: 0 auto 0;
  width:100%;
}


/* 体験・入会ボタン */
.cmn-navi-btn.cheer-nyukai a{
  margin: 0 auto 0;
  background-color: #fcc800;
}

/*** チアスクールナビ ***/
/* 包含 */
.cheer-school-navi{
  margin: 0 auto 30px;
}
.cheer-school-navi ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto 0;
  width:100%;
}
.cheer-school-navi ul > li{
  width:49%;
}
.cheer-school-navi ul > li a{
  display: flex;
  align-items: center;
  justify-content: center;
  width:100%;
  height:40px;
  font-size:1.6rem;
  font-weight: bold;
  color:#2c4198;
  border:solid 1px #2c4198;
  border-radius: 8px;
  transition: all ease-out .2s;
}
.cheer-school-navi ul > li a:hover,
#cheerpage-index .cheer-school-navi ul > li:nth-of-type(1) a,
#cheerpage-class .cheer-school-navi ul > li:nth-of-type(2) a,
#cheerpage-activity .cheer-school-navi ul > li:nth-of-type(3) a,
#cheerpage-instructor .cheer-school-navi ul > li:nth-of-type(4) a,
#cheerpage-taiken .cheer-school-navi ul > li:nth-of-type(5) a,
#cheerpage-nyukai .cheer-school-navi ul > li:nth-of-type(5) a{
  color:#fff;
  background-color: #2c4198;
}


/*** スクール会場案内 ***/
/* 包含 */
.cheer-school-info{
  margin: 0 auto 0;
  width:100%;
}
.cheer-school-info .info-box:nth-of-type(1){
  margin: 0 0 30px 0;
}
/* 見出し */
.cheer-school-info .info-box h4{
  margin: 0 0 10px 0;
  width:100%;
  font-size:2.2rem;
  font-weight: bold;
  color:#2c4198;
}
.cheer-school-info .school-photo img{
  border-radius: 10px;
}
.cheer-school-info .info dl{
  margin: 0 0 8px 0;
}
.cheer-school-info .info dl dd{
  padding:0 0 0 0;
}
.cheer-school-info .info dl:last-of-type{
  margin: 0 0 15px 0;
}
.cheer-school-info .info dl dt{
  padding:0px 8px 2px 8px;
}
.cheer-school-info .gglmap-wrap{
  height:250px;
}

/* 購入品 */
.cheer-purchases{
  margin: 0 auto 25px;
  width:100%;
}
.cheer-purchases > li p{
  line-height: 1.4;
  letter-spacing: -0.05em;
}
.cheer-purchases > li .item{
  margin: 8px 0 6px 0;
  font-size:1.4rem;
}
.cheer-purchases > li .info{
  margin: 0 0 0 0;
  font-size:1.3rem;
  color:#ff0000;
}
.cheer-purchases > li .info a{
  text-decoration: underline;
  font-weight: bold;
  color:#2c4198;
}
.cheer-purchases > li .link{
  margin-top: 8px;
}
.cheer-purchases > li .link a{
  font-size:1.4rem;
  font-weight: bold;
  color:#2c4198;
}
.cheer-purchases > li .link img{
  width:14px;
}
.cheer-purchases-notes{
  margin: 0 0 0 0;
  width:100%;
}
.cheer-purchases-notes > li:nth-of-type(n+2){
  margin-top: 6px;
}

.guardian-nnotes{
  margin: 0 0 0 0;
}
/* ページ下体験・入会までの流れボタン */
.cheer-school .cmn-navi-btn{
  margin-bottom: 30px !important;
}
.cheer-school .cmn-navi-btn .entry-login-btn{
  width:100%;
}

/* 概要ページ 活動日の追加リンクテキスト用 */
#result-list > li .course-data-extarlink{
  margin: 14px 0 0 0;
}
#result-list > li .course-data-extarlink a{
  text-decoration: underline;
  color:#2c4198;
}
#result-list > li .course-data-extarlink a:hover{
  text-decoration: none;
  color:;
}


@media screen and (max-width: 767px) {
  .cheer-school-navi ul > li:nth-of-type(n+3){
    margin-top: 15px;
  }
/* 入会アクセント写真 */
.cheer-promise-photo > li:nth-of-type(n+2){
  margin-top: 10px;
}
.cheer-promise-photo > li img{
  width:80%;
}
/*** スクール会場案内 ***/
/* 包含 */
.cheer-school-info .school-photo{
  margin: 0 auto 15px;
}
/* 購入品 */
/*
/* 見出し未使用だけど保険で残す
.cheer-purchases > li h4{
  display: block;
  margin: 0 0 8px 0;
  padding:0 0 0 5px;
  font-size:1.7rem;
  font-weight: bold;
  color:#2c4198 !important;
  border-left:solid 5px #2c4198;
}
*/
.cheer-purchases > li:nth-of-type(n+2){
  margin-top: 20px;
}
/*
.cheer-purchases > li:last-of-type{
  margin-top: 36px;
}
*/
}

@media screen and (min-width: 768px) {
/* 包含 */
.cheer-school article{
  margin-bottom: 80px;
}
.cheer-school .cmn-block.btm-block{
  margin-top: 80px;
}

/*** 見出し ***/
.cheer-school .cheerschool-index-type1{
  font-size: 1.8rem;
}

/* 入会キャンペーンPR */
.cheerschool-nyukai-pr{
  margin: 0 auto 50px;
  width:72%;
}
.cheerschool-nyukai-pr span{
  width:70%;
  font-size:1.8rem;
}
.cheerschool-nyukai-pr img{
  width:80px;
}
/* お約束 */
.cheer-promise{
  margin: 0 auto 60px;
  padding:20px 4%;
  width:90%;
}
.cheer-promise > dt{
  font-size:1.8rem;
}
.cheer-promise > dd{
  width:80%;
  font-size:1.8rem;
}
/* 入会アクセント写真 */
.cheer-promise-photo{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.cheer-promise-photo > li{
  width:32%;
}

/*** スクール会場案内 ***/
/* 包含 */
.cheer-school-info .info-box{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width:100%;
}
.cheer-school-info .info-box .school-photo{
  width:45%;
}
.cheer-school-info .info-box .cmn-school-place-info{
  width:53%;
}
.cheer-school-info .info-box .cmn-school-place-info .info,
.cheer-school-info .info-box .cmn-school-place-info .gglmap-wrap{
  width:100%;
}


/*** チアスクールナビ ***/
/* 包含 */
.cheer-school-navi{
  margin: 0 auto 50px;
}
.cheer-school-navi ul > li{
  width:19%;
}

/* LDの上ナビだけタブ型デザイン */
.cheernavi-upper .cheer-school-navi{
  border-bottom: solid 2px #2c4198;
}

.cheernavi-upper .cheer-school-navi ul > li a{
  border-bottom:none;
  border-radius: 8px 8px 0 0 !important;
}
/* 購入品 */
.cheer-purchases{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
/* 購入品 */
/*
.cheer-purchases > li h4{
  display: none;
}
*/
.cheer-purchases > li{
  width:24%;
}
/* ページ下体験・入会までの流れボタン */
.cheer-school .cmn-navi-btn{
  margin-bottom: 50px !important;
}

}

@media print,
(min-width: 1110px) {
  
}

/*----------------------------------------------------------
/* チアスクールページ／ クラス詳細 ※スタイルはサッカースクールのものを一部共用
-----------------------------------------------------------*/
/*** 見出し ***/
#cheerpage-class h4{
  margin: 0 auto 15px;
  text-align: center;
  font-size:1.8rem;
  font-weight: bold;
  color:#2c4198;
}
/* 動画紹介用 */
#cheerpage-class .cheerclass-photo-moviebox h4{
  margin: 30px auto 10px;
}


/* 導入文 */
.cheer-class-block .cmn_class-intro{
  margin: 0 0 30px 0;
}
.cheer-class-block .cmn_lesson-intro{
  margin: 0 0 20px 0;
}
.cheer-class-block .cmn_entry{
  margin: 0 0 30px 0;
  text-align: center;
}
.cheer-class-block .cmn_entry a{
  text-decoration: none;
  display: inline-block;
  padding:2px 8px 4px 8px;
  text-align: center;
  font-size:1.8rem;
  font-weight: bold;
  color:#2c4198;
  background-color: #fcc800;
}

/* 活動の様子写真・動画 */
.cheerclass-photo-moviebox{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto 0;
  width:100%;
}
/* 写真 */
.cheerclass-photo-moviebox .photo{
  text-align: center;
}
.cheerclass-photo-moviebox .photo img{
  border-radius: 10px;
}
/* 動画 */
.cheerclass-photo-moviebox .movie-box{
  position: relative;
  padding-top:56%;
}
.cheerclass-photo-moviebox .movie-box iframe{
  position: absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

@media screen and (max-width: 767px) {
/* 活動の様子写真・動画 */
.cheerclass-photo-moviebox > div{
  width:100%;
}
.cheerclass-photo-moviebox > div:nth-of-type(1){
  margin-bottom: 15px;
}

}

@media screen and (min-width: 768px) {
/* 導入文 */
.cheer-class-block .cmn_class-intro,
.cheer-class-block .cmn_lesson-intro{
  text-align: center;
}
/* 活動の様子写真・動画 */
.cheerclass-photo-moviebox .photo{
  width:49%;
}
.cheerclass-photo-moviebox .movie-box{
  width:100%;
}

}

@media print,
(min-width: 1110px) {}



/*----------------------------------------------------------
/* チアスクールページ／ 出演・活動実績 ※スタイルはサッカースクールのものを一部共用
-----------------------------------------------------------*/
/* 見出し */
#cheerpage-activity h4{
  margin: 0 auto 30px;
  text-align: center;
  font-size:1.8rem;
  font-weight: bold;
  color:#2c4198;
}
/* 導入文 */
.cheer-activity-intro{
  margin: 0 0 40px 0;
}

/* 活動実績表 */
.cheer-results-of-activities{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 0 0 0;
  width:100%;
  border-bottom:solid 1px #ccc;
}
.cheer-results-of-activities dt,
.cheer-results-of-activities dd{
  margin: 0 0 0 0;
  padding:10px 8px;
  border-top:solid 1px #ccc;
}
.cheer-results-of-activities dt{
  padding-right: 10px;
  width:20%;
  text-align: right;
  font-weight: bold;
  color:#2c4198;
}
.cheer-results-of-activities dd{
  width:80%;
}

/* 活動写真 */
.cheer-activity-photo{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 0 0 0;
  width:100%;
}
.cheer-activity-photo li{
  text-align: center;
}
.cheer-activity-photo li img{
  border-radius: 10px;
}

@media screen and (max-width: 767px) {
/* 活動写真 */
.cheer-activity-photo li{
  width:100%;
}
.cheer-activity-photo li:nth-of-type(n+2){
  margin-top: 10px;
}

}

@media screen and (min-width: 768px) {
/* 導入文 */
.cheer-activity-intro{
  margin: 0 0 60px 0;
  text-align: center;
}
/* 活動写真 */
.cheer-activity-photo li{
  width:48%;
}
.cheer-activity-photo li:nth-of-type(n+3){
  margin-top: 25px;
}

}

@media print,
(min-width: 1110px) {}



/*----------------------------------------------------------
/* チアスクールページ／ インストラクター ※スタイルはサッカースクールのものを一部共用
/* 2025.5.14 メインインストラクター追記
-----------------------------------------------------------*/
/*** メインインストラクター 名前 ***/
.main-instructor-name{
  margin: 0 0 50px 0;
  text-align: center;
  font-size:2rem;
  font-weight: bold;
  color:#2c4198;
}

/*** インストラクター プロフィール ***/
.cheer-instructor-profile{
  margin: 0 0 40px 0;
  width:100%;
}
.cheer-instructor-profile > li{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 0 0 0;
  width:100%;
}
.cheer-instructor-profile > li:nth-of-type(n+2){
  margin-top: 30px;
}
.cheer-instructor-profile .photo,
.cheer-instructor-profile .profile{
  width:100%;
}
.cheer-instructor-profile .photo{
  text-align: center;
}
.cheer-instructor-profile .photo img{
  width: 80%;
  border-radius: 20px;
}
.cheer-instructor-profile .photo .sml{
  width: 60%;
}
.cheer-instructor-profile .profile h3,
.cheer-instructor-profile .profile h4{
  margin: 0 0 12px 0;
  padding:0;
  text-align: left;
  font-size:2rem;
  font-weight: bold;
  color:#2c4198;
  border:none;
}
.cheer-instructor-profile .profile .status{
  margin: 0 0 15px 0;
  padding:0 0 15px 0;
  line-height: 1.4;
  font-weight: bold;
  color:#2c4198;
  border-bottom: solid 2px #2c4198;
}
.cheer-instructor-profile .profile .comment{
  line-height: 1.4;
}


/*** 事務局 プロフィール ***/
.cheer-jimukyoku-profile{
  margin: 0 0 0 0;
  width:100%;
}
.cheer-jimukyoku-profile > li{
  width:100%;
}
.cheer-jimukyoku-profile li .photo{
  text-align: center;
}
.cheer-jimukyoku-profile .photo img{
  margin: 0 auto 10px;
  width: 60%;
  border-radius: 20px;
}
.cheer-jimukyoku-profile li h4{
  margin: 0 0 12px 0;
  padding:0;
  text-align: left;
  font-size:2rem;
  font-weight: bold;
  color:#2c4198;
  border:none;
}

.cheer-jimukyoku-profile li .status{
  margin: 0 0 0 0;
  padding:0 0 0 0;
  line-height: 1.4;
  font-weight: bold;
  color:#2c4198;
}



@media screen and (max-width: 767px) {
  .cheer-instructor-profile .photo{
    margin: 0 0 10px 0;
  }
/*** 事務局 プロフィール ***/
.cheer-jimukyoku-profile > li:nth-of-type(n+2){
  margin-top: 30px;
}

}

@media screen and (min-width: 768px) {
/*** インストラクター プロフィール ***/
.cheer-instructor-profile{
  margin: 0 0 60px 0;
}
.cheer-instructor-profile > li:nth-of-type(n+2){
  margin-top: 60px;
}
.cheer-instructor-profile .photo,
.cheer-instructor-profile .profile{
  width:49%;
}
.cheer-instructor-profile > li:nth-of-type(even) .profile{
  order:1;
}
.cheer-instructor-profile > li:nth-of-type(even) .photo{
  order:2;
}

/*** 事務局 プロフィール ***/
.cheer-jimukyoku-profile{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 0 0 0;
}
.cheer-jimukyoku-profile li{
  width:45%;
}
.cheer-jimukyoku-profile li:nth-of-type(n+3){
  margin-top: 30px;
}



}

@media print,
(min-width: 1110px) {}


/*----------------------------------------------------------
/* 
-----------------------------------------------------------*/
@media screen and (max-width: 767px) {}

@media screen and (min-width: 768px) {}

@media print,
(min-width: 1110px) {}
