@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap");
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  background: transparent;
  border: 0;
  font-size: 100%;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
}

body {
  line-height: 1;
}

main {
  display: block;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  background: transparent;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

img {
  vertical-align: bottom;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  border: 0;
  border-top: 1px solid #cccccc;
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body {
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 100%;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;
}

body.js-navopen {
  height: 100%;
  position: fixed;
  width: 100%;
}

main {
  display: block;
}

a {
  color: #333333;
  text-decoration: none;
  -webkit-transition: all .25s ease;
  -o-transition: all .25s ease;
  transition: all .25s ease;
}

a:before, a:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all .25s ease;
  -o-transition: all .25s ease;
  transition: all .25s ease;
}

a img {
  -webkit-transition: all .25s ease;
  -o-transition: all .25s ease;
  transition: all .25s ease;
}

img {
  max-width: 100%;
}

li {
  list-style: none;
}

.container {
  padding-bottom: 120px;
  position: relative;
}

.pc {
  display: none;
}

.sp {
  display: block;
}

.breadcrumb {
  border-bottom: 1px solid #cccccc;
  margin-bottom: 70px;
}

.menu .breadcrumb {
  margin-bottom: 110px;
}

.breadcrumb__list {
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding: 20px 60px 20px;
  width: 100%;
}

.breadcrumb__item {
  display: inline-block;
  line-height: 1.4;
}

.breadcrumb__item:after {
  content: '＞';
  margin: 0 0.6em 0 1em;
}

.breadcrumb__item:nth-last-of-type(1):after {
  display: none;
}

.breadcrumb__item a {
  color: #6a2566;
  text-decoration: underline;
}

.breadcrumb__item a:hover {
  text-decoration: none;
}

.btn, .page__menu__link {
          align-items: center;
  background: #ffffff;
  border: solid 1px #6a2566;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  color: #6a2566;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
      -ms-flex-pack: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
          justify-content: center;
  line-height: 1.4;
  margin: 0 auto;
  max-width: 300px;
  padding: 18px 40px;
  position: relative;
  text-align: center;
  text-decoration: none !important;
  width: 100%;
}

.btn:before, .page__menu__link:before {
  border: solid 1px #6a2566;
  content: '';
  display: block;
  height: calc(100% - 4px);
  left: 2px;
  position: absolute;
  top: 2px;
  width: calc(100% - 4px);
}

.btn:after, .page__menu__link:after {
  background: url("../img/arrow_purple.svg") no-repeat center right;
  content: '';
  display: block;
  height: 20px;
  margin-top: -10px;
  position: absolute;
  right: 20px;
  top: 50%;
  width: 20px;
}

.btn__inner {
  padding: 27px 0 26px;
}

.btn:hover, .page__menu__link:hover {
  background: #6a2566;
  color: #ffffff;
}

.btn:hover:before, .page__menu__link:hover:before {
  border-color: #ffffff;
}

.btn:hover:after, .page__menu__link:hover:after {
  background-image: url("../img/arrow_white.svg");
}

.btn__wrap {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.btn--image {
  color: #ffffff;
  font-size: 35px;
  max-width: 696px;
  padding: 51px 0 52px;
}

.btn--image:before {
  background: url("https://placehold.jp/686x144.png") no-repeat center/cover;
  border: 0;
  height: calc(100% - 10px);
  left: 5px;
  top: 5px;
  width: calc(100% - 10px);
}

.btn--image:after {
  background: url("../img/arrow_white_large.svg") no-repeat center right;
  height: 36px;
  margin-top: -18px;
  right: 60px;
  width: 36px;
}

.btn--image span {
  position: relative;
  z-index: 1;
}

.btn--image:hover {
  background: transparent;
  opacity: 0.8;
}

.btn--image:hover:after {
  background-image: url("../img/arrow_white_large.svg");
}

.btn--image.-publication:before {
  background-image: url("../img/img_top_publication.jpg");
  background-size: cover;
}

.mb0em {
  margin-bottom: 0em;
}

.mb25em {
  margin-bottom: 0.25em;
}

.mb50em {
  margin-bottom: 0.5em;
}

.mb75em {
  margin-bottom: 0.75em;
}

.mb100em {
  margin-bottom: 1em;
}

.mb125em {
  margin-bottom: 1.25em;
}

.mb150em {
  margin-bottom: 1.5em;
}

.mb175em {
  margin-bottom: 1.75em;
}

.mb200em {
  margin-bottom: 2em;
}

.mb225em {
  margin-bottom: 2.25em;
}

.mb250em {
  margin-bottom: 2.5em;
}

.mb275em {
  margin-bottom: 2.75em;
}

.mb300em {
  margin-bottom: 3em;
}

.mb325em {
  margin-bottom: 3.25em;
}

.mb350em {
  margin-bottom: 3.5em;
}

.mb375em {
  margin-bottom: 3.75em;
}

.mb400em {
  margin-bottom: 4em;
}

.mb425em {
  margin-bottom: 4.25em;
}

.mb450em {
  margin-bottom: 4.5em;
}

.mb475em {
  margin-bottom: 4.75em;
}

.mb500em {
  margin-bottom: 5em;
}

.mb525em {
  margin-bottom: 5.25em;
}

.mb550em {
  margin-bottom: 5.5em;
}

.mb575em {
  margin-bottom: 5.75em;
}

.mb600em {
  margin-bottom: 6em;
}

.mb625em {
  margin-bottom: 6.25em;
}

.line-01 {
  background: url("../img/line_03.svg") no-repeat center/contain;
  border: 0;
  height: 16px;
  margin: 6.25em 0;
}

.pagenavi {
  bottom: 40px;
  height: 50px;
  opacity: 0;
  position: fixed;
  right: 40px;
  -webkit-transition: all .25s ease;
  -o-transition: all .25s ease;
  transition: all .25s ease;
  visibility: hidden;
  width: 50px;
  z-index: 997;
}

.pagenavi.js-active {
  opacity: 1;
  visibility: visible;
}

.pagenavi.js-footer {
  bottom: 60px;
  position: absolute;
}

.pagenavi__link {
  background: #6a2566;
  border: 1px solid #ffffff;
  color: transparent;
  display: block;
  font-size: 0;
  height: 100%;
  line-height: 0;
  position: relative;
  width: 100%;
}

.pagenavi__link:before {
  border-left: 1px solid #ffffff;
  border-top: 1px solid #ffffff;
  content: '';
  display: block;
  height: 16px;
  left: 50%;
  margin-left: -8px;
  margin-top: -3px;
  position: absolute;
  top: 50%;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  transform: rotate(45deg);
  width: 16px;
}

.pagenavi__link:hover {
  opacity: 0.8;
}

.pagination {
          align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
      -ms-flex-pack: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: center;
  margin: 60px 0 100px;
  text-align: center;
}

.pagination span {
  display: inline-block;
  margin: 0 8px;
}

.pagination span a, .pagination .current {
  border: 1px solid #cccccc;
  color: #333333;
  display: inline-block;
  line-height: 14px;
  padding: 12px 16px;
  text-decoration: none;
}

.pagination span a:hover, .pagination span a:focus, .pagination .current:hover, .pagination .current:focus {
  background: #6a2566;
  border: 1px solid #6a2566;
  color: #ffffff;
}

.pagination .disabled {
  display: none;
}

.pagination .current {
  background: #6a2566;
  border: 1px solid #6a2566;
  color: #ffffff;
}

.bgb-title {
  margin-top: 100px;
  margin-top: 6.25rem;
}

.bgb-title:first-child {
  margin-top: 0;
}

.bge-ckeditor h2 {
  margin-bottom: 1em;
}

.bge-ckeditor h3 {
  margin-bottom: 1em;
}

.bge-ckeditor h4 {
  margin-bottom: 1em;
}

.bge-ckeditor h5 {
  margin-bottom: 1em;
}

.bge-ckeditor h6 {
  margin-bottom: 1em;
}

.bge-ckeditor > *:last-child {
  margin-bottom: 0;
}

.bge-ckeditor p {
  line-height: 2;
  margin-bottom: 1em;
}

.bge-ckeditor ul {
  line-height: 1.7;
  margin-bottom: 1em;
  padding-left: 1em;
}

.bge-ckeditor ul li {
  list-style: none;
  padding-left: 0.5em;
  text-indent: -1.2em;
}

.bge-ckeditor ul li + li {
  margin-top: 8px;
}

.bge-ckeditor ul li:before {
  border-right: 1px solid #9e2928;
  border-top: 1px solid #9e2928;
  content: '';
  display: inline-block;
  height: 5px;
  margin-right: 0.8em;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  vertical-align: middle;
  width: 5px;
}

.bge-ckeditor ul ol {
  margin-bottom: 0;
}

.bge-ckeditor ul ol li {
  list-style: inherit;
  margin-top: 8px;
}

.bge-ckeditor ul ul {
  margin-bottom: 0;
}

.bge-ckeditor ul ul li {
  margin-top: 8px;
}

.bge-ckeditor ol {
  line-height: 1.7;
  margin-bottom: 1em;
  padding-left: 1.6em;
}

.bge-ckeditor ol li {
  list-style: inherit;
}

.bge-ckeditor ol li + li {
  margin-top: 8px;
}

.bge-ckeditor ol ol {
  margin-bottom: 0;
}

.bge-ckeditor ol ol li {
  margin-top: 8px;
}

.bge-ckeditor ol ul {
  margin-bottom: 0;
}

.bge-ckeditor ol ul li {
  list-style: none;
  margin-top: 8px;
}

.bge-ckeditor table {
  border-right: 1px solid #bca7bb;
  border-top: 1px solid #bca7bb;
  line-height: 2;
  min-width: 280px;
  width: 100%;
}

.bge-ckeditor table th, .bge-ckeditor table td {
  border-bottom: 1px solid #bca7bb;
  border-left: 1px solid #bca7bb;
  padding: 8px 16px;
  text-align: left;
}

.bge-ckeditor table thead th {
  background: #d7cfd7;
  font-weight: normal;
  text-align: center;
}

.course__item .bge-ckeditor p {
  margin-bottom: 21px;
  margin-top: 0;
}

.bgb-table-normal table {
  border-right: 1px solid #bca7bb;
  border-top: 1px solid #bca7bb;
  line-height: 2;
  min-width: 280px;
  width: 100%;
}

.bgb-table-normal table th, .bgb-table-normal table td {
  border-bottom: 1px solid #bca7bb;
  border-left: 1px solid #bca7bb;
  padding: 8px 16px;
  text-align: left;
}

.bgb-table-normal table th {
  background: #d7cfd7;
  font-weight: normal;
}

.bgb-table table {
  border-top: 1px solid #8d4a8a;
  width: 100%;
}

.bgb-table table tr {
  border-bottom: 1px solid #8d4a8a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 10px 20px;
}

.bgb-table table th {
  border-right: 1px solid #8d4a8a;
  color: #6a2566;
  font-weight: normal;
  line-height: 2;
  padding: 4px 0;
  text-align: left;
  width: 180px;
}

.bgb-table table td {
  line-height: 2;
  padding: 4px 30px;
  width: calc(100% - 180px);
}

.bgb-faq-box + .bgb-title2-2 {
  margin-top: 100px;
  margin-top: 6.25rem;
}

.bgt-button-container {
  display: block !important;
}

.bgt-download-file .bgt-download-file__link {
          align-items: center;
  background: #ffffff;
  border: solid 1px #6a2566;
  -webkit-box-align: center;
  color: #6a2566;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
      -ms-flex-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
  line-height: 1.4;
  padding: 17px 20px;
  text-decoration: none !important;
}

.bgt-download-file .bgt-download-file__link > span {
  text-align: left !important;
}

.bgt-download-file .bgt-download-file__link:hover {
  background: #6a2566;
  color: #ffffff;
}

.bgt-download-file-text .bgt-download-file__link {
  display: inline-block;
  line-height: 1.7;
  padding-left: 1.6em;
  text-indent: -1.6em;
}

.bgt-link__icon {
  margin-right: 0.5em;
  vertical-align: text-bottom;
}

.bgt-box__caption {
  margin-top: 0.5em;
  text-align: center;
}

.bgb-image1-left .bgt-image__link .bgt-box__image-container img {
  margin: 0 0 auto 0;
}

.bgb-image1-left .bgt-box__caption {
  text-align: left;
}

.bgb-image-link1-left .bgt-image-link__link .bgt-box__image-container img {
  margin: 0 0 auto 0;
}

.bgb-image-link1-left .bgt-box__caption {
  text-align: left;
}

.page .bgb-image1 a {
  text-decoration: none;
}

.page .bgb-trimmed-image1 a {
  text-decoration: none;
}

.page .bgb-image2 a {
  text-decoration: none;
}

.page .bgb-trimmed-image2 a {
  text-decoration: none;
}

.page .bgb-image3 a {
  text-decoration: none;
}

.page .bgb-trimmed-image3 a {
  text-decoration: none;
}

.page .bgb-image4 a {
  text-decoration: none;
}

.page .bgb-trimmed-image4 a {
  text-decoration: none;
}

.page .bgb-image5 a {
  text-decoration: none;
}

.page .bgb-trimmed-image5 a {
  text-decoration: none;
}

.title--borderMiddle {
  font-family: "Noto Serif JP", serif;
  font-size: 40px;
  letter-spacing: 0.1em;
  margin-bottom: 25px;
  text-align: center;
}

.title--borderMiddle span {
  color: #777777;
  display: block;
  font-size: 14px;
  letter-spacing: 0.05em;
}

.title--borderMiddle span:before {
  background: #6a2566;
  content: '';
  display: block;
  height: 1px;
  margin: 18px auto 19px;
  width: 40px;
}

.title--lineTop {
  font-family: "Noto Serif JP", serif;
  font-size: 40px;
  letter-spacing: 0.1em;
  line-height: 1.5;
  margin-bottom: 51px;
  text-align: center;
}

.title--lineTop:before {
  background: url("../img/line_01.svg") no-repeat center top;
  content: '';
  display: block;
  height: 42px;
  margin: 0 auto 17px;
  width: 300px;
}

.title--purple {
  color: #6a2566;
  font-family: "Noto Serif JP", serif;
  font-size: 30px;
  line-height: 1.5;
}

.title--borderB {
  font-size: 28px;
  letter-spacing: 0.1em;
  margin-bottom: 50px;
}

.title--borderB:after {
  background: #6a2566;
  content: '';
  display: block;
  height: 2px;
  margin-top: 30px;
  width: 100px;
}

.title--borderL {
  background: #eeeeee;
  border-left: 4px solid #6a2566;
  font-size: 22px;
  letter-spacing: 0.1em;
  line-height: 1.5;
  margin-bottom: 30px;
  padding: 8px 30px 9px;
}

.award .title--borderL {
  margin-top: 10px;
}

.title__content {
  font-size: 40px;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin-bottom: 60px;
  position: relative;
  text-align: center;
}

.topInfo .title__content {
  margin-bottom: 23px;
  top: -23px;
}

.-gray .title__content {
  margin-bottom: 40px;
  top: -23px;
}

.title__content__small {
  display: block;
  font-size: 18px;
  font-weight: normal;
  letter-spacing: 0.1em;
  line-height: 1;
}

.title__content__small:before {
  background: #333333;
  content: '';
  display: block;
  height: 1px;
  margin: 12px auto 27px;
  width: 100px;
}

.title__bg--green {
  color: #ffffff;
  font-weight: normal;
}

.title__bg--green span {
  background: #6a2566;
  display: inline-block;
  padding: 8px 12px;
}

.title__bg--green + .table__dd__text {
  margin-top: 1px;
}

.club {
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding: 0 60px 0;
  width: 100%;
}

.club + .club {
  margin-top: 80px;
}

.club__list {
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-pack: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: center;
  padding-top: 40px;
}

.club__list.-sport {
  background: url("../img/bg_stripe_pink.png");
}

.club__list.-culture {
  background: url("../img/bg_stripe_blue.png");
}

.club__list .bgt-container {
  margin: 0 4% 40px;
  max-width: 244px;
  width: 28%;
}

.club__link {
  display: block;
  text-decoration: none !important;
}

.club__link:hover .club__name {
  background: #6a2566;
  color: #ffffff;
}

.club__link:hover .club__image {
  opacity: 0.8;
}

.club__image {
  border-radius: 50%;
  margin-bottom: 10px;
  overflow: hidden;
  padding-top: 100%;
  position: relative;
  -webkit-transition: all .25s ease;
  -o-transition: all .25s ease;
  transition: all .25s ease;
  width: 100%;
}

.club__image img {
  font-family: 'object-fit: cover;';
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}

.club__name {
          align-items: center;
  background: #ffffff;
  border: 1px solid #6a2566;
  border-radius: 23px;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  color: #6a2566;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
      -ms-flex-pack: center;
  height: 46px;
          justify-content: center;
  -webkit-transition: all .25s ease;
  -o-transition: all .25s ease;
  transition: all .25s ease;
}

.club--detail {
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding: 0 60px 0;
  width: 100%;
}

.bgb-club-item-sport1 + * {
  margin-top: 80px;
}

.bgb-club-item-sport1 + .bgb-club-item-sport1,
.bgb-club-item-sport1 + .bgb-club-item-sport2,
.bgb-club-item-sport1 + .bgb-club-item-sport3,
.bgb-club-item-sport1 + .bgb-club-item-sport4,
.bgb-club-item-sport1 + .bgb-club-item-sport5,
.bgb-club-item-sport1 + .bgb-club-item-sport6 {
  margin-top: 0;
}

.bgb-club-item-sport1 + .bgb-club-item-sport1 .club__list,
.bgb-club-item-sport1 + .bgb-club-item-sport2 .club__list,
.bgb-club-item-sport1 + .bgb-club-item-sport3 .club__list,
.bgb-club-item-sport1 + .bgb-club-item-sport4 .club__list,
.bgb-club-item-sport1 + .bgb-club-item-sport5 .club__list,
.bgb-club-item-sport1 + .bgb-club-item-sport6 .club__list {
  padding-top: 0;
}

.bgb-club-item-culture1 + * {
  margin-top: 80px;
}

.bgb-club-item-culture1 + .bgb-club-item-culture1,
.bgb-club-item-culture1 + .bgb-club-item-culture2,
.bgb-club-item-culture1 + .bgb-club-item-culture3,
.bgb-club-item-culture1 + .bgb-club-item-culture4,
.bgb-club-item-culture1 + .bgb-club-item-culture5,
.bgb-club-item-culture1 + .bgb-club-item-culture6 {
  margin-top: 0;
}

.bgb-club-item-culture1 + .bgb-club-item-culture1 .club__list,
.bgb-club-item-culture1 + .bgb-club-item-culture2 .club__list,
.bgb-club-item-culture1 + .bgb-club-item-culture3 .club__list,
.bgb-club-item-culture1 + .bgb-club-item-culture4 .club__list,
.bgb-club-item-culture1 + .bgb-club-item-culture5 .club__list,
.bgb-club-item-culture1 + .bgb-club-item-culture6 .club__list {
  padding-top: 0;
}

.bgb-club-item-sport2 + * {
  margin-top: 80px;
}

.bgb-club-item-sport2 + .bgb-club-item-sport1,
.bgb-club-item-sport2 + .bgb-club-item-sport2,
.bgb-club-item-sport2 + .bgb-club-item-sport3,
.bgb-club-item-sport2 + .bgb-club-item-sport4,
.bgb-club-item-sport2 + .bgb-club-item-sport5,
.bgb-club-item-sport2 + .bgb-club-item-sport6 {
  margin-top: 0;
}

.bgb-club-item-sport2 + .bgb-club-item-sport1 .club__list,
.bgb-club-item-sport2 + .bgb-club-item-sport2 .club__list,
.bgb-club-item-sport2 + .bgb-club-item-sport3 .club__list,
.bgb-club-item-sport2 + .bgb-club-item-sport4 .club__list,
.bgb-club-item-sport2 + .bgb-club-item-sport5 .club__list,
.bgb-club-item-sport2 + .bgb-club-item-sport6 .club__list {
  padding-top: 0;
}

.bgb-club-item-culture2 + * {
  margin-top: 80px;
}

.bgb-club-item-culture2 + .bgb-club-item-culture1,
.bgb-club-item-culture2 + .bgb-club-item-culture2,
.bgb-club-item-culture2 + .bgb-club-item-culture3,
.bgb-club-item-culture2 + .bgb-club-item-culture4,
.bgb-club-item-culture2 + .bgb-club-item-culture5,
.bgb-club-item-culture2 + .bgb-club-item-culture6 {
  margin-top: 0;
}

.bgb-club-item-culture2 + .bgb-club-item-culture1 .club__list,
.bgb-club-item-culture2 + .bgb-club-item-culture2 .club__list,
.bgb-club-item-culture2 + .bgb-club-item-culture3 .club__list,
.bgb-club-item-culture2 + .bgb-club-item-culture4 .club__list,
.bgb-club-item-culture2 + .bgb-club-item-culture5 .club__list,
.bgb-club-item-culture2 + .bgb-club-item-culture6 .club__list {
  padding-top: 0;
}

.bgb-club-item-sport3 + * {
  margin-top: 80px;
}

.bgb-club-item-sport3 + .bgb-club-item-sport1,
.bgb-club-item-sport3 + .bgb-club-item-sport2,
.bgb-club-item-sport3 + .bgb-club-item-sport3,
.bgb-club-item-sport3 + .bgb-club-item-sport4,
.bgb-club-item-sport3 + .bgb-club-item-sport5,
.bgb-club-item-sport3 + .bgb-club-item-sport6 {
  margin-top: 0;
}

.bgb-club-item-sport3 + .bgb-club-item-sport1 .club__list,
.bgb-club-item-sport3 + .bgb-club-item-sport2 .club__list,
.bgb-club-item-sport3 + .bgb-club-item-sport3 .club__list,
.bgb-club-item-sport3 + .bgb-club-item-sport4 .club__list,
.bgb-club-item-sport3 + .bgb-club-item-sport5 .club__list,
.bgb-club-item-sport3 + .bgb-club-item-sport6 .club__list {
  padding-top: 0;
}

.bgb-club-item-culture3 + * {
  margin-top: 80px;
}

.bgb-club-item-culture3 + .bgb-club-item-culture1,
.bgb-club-item-culture3 + .bgb-club-item-culture2,
.bgb-club-item-culture3 + .bgb-club-item-culture3,
.bgb-club-item-culture3 + .bgb-club-item-culture4,
.bgb-club-item-culture3 + .bgb-club-item-culture5,
.bgb-club-item-culture3 + .bgb-club-item-culture6 {
  margin-top: 0;
}

.bgb-club-item-culture3 + .bgb-club-item-culture1 .club__list,
.bgb-club-item-culture3 + .bgb-club-item-culture2 .club__list,
.bgb-club-item-culture3 + .bgb-club-item-culture3 .club__list,
.bgb-club-item-culture3 + .bgb-club-item-culture4 .club__list,
.bgb-club-item-culture3 + .bgb-club-item-culture5 .club__list,
.bgb-club-item-culture3 + .bgb-club-item-culture6 .club__list {
  padding-top: 0;
}

.bgb-club-item-sport4 + * {
  margin-top: 80px;
}

.bgb-club-item-sport4 + .bgb-club-item-sport1,
.bgb-club-item-sport4 + .bgb-club-item-sport2,
.bgb-club-item-sport4 + .bgb-club-item-sport3,
.bgb-club-item-sport4 + .bgb-club-item-sport4,
.bgb-club-item-sport4 + .bgb-club-item-sport5,
.bgb-club-item-sport4 + .bgb-club-item-sport6 {
  margin-top: 0;
}

.bgb-club-item-sport4 + .bgb-club-item-sport1 .club__list,
.bgb-club-item-sport4 + .bgb-club-item-sport2 .club__list,
.bgb-club-item-sport4 + .bgb-club-item-sport3 .club__list,
.bgb-club-item-sport4 + .bgb-club-item-sport4 .club__list,
.bgb-club-item-sport4 + .bgb-club-item-sport5 .club__list,
.bgb-club-item-sport4 + .bgb-club-item-sport6 .club__list {
  padding-top: 0;
}

.bgb-club-item-culture4 + * {
  margin-top: 80px;
}

.bgb-club-item-culture4 + .bgb-club-item-culture1,
.bgb-club-item-culture4 + .bgb-club-item-culture2,
.bgb-club-item-culture4 + .bgb-club-item-culture3,
.bgb-club-item-culture4 + .bgb-club-item-culture4,
.bgb-club-item-culture4 + .bgb-club-item-culture5,
.bgb-club-item-culture4 + .bgb-club-item-culture6 {
  margin-top: 0;
}

.bgb-club-item-culture4 + .bgb-club-item-culture1 .club__list,
.bgb-club-item-culture4 + .bgb-club-item-culture2 .club__list,
.bgb-club-item-culture4 + .bgb-club-item-culture3 .club__list,
.bgb-club-item-culture4 + .bgb-club-item-culture4 .club__list,
.bgb-club-item-culture4 + .bgb-club-item-culture5 .club__list,
.bgb-club-item-culture4 + .bgb-club-item-culture6 .club__list {
  padding-top: 0;
}

.bgb-club-item-sport5 + * {
  margin-top: 80px;
}

.bgb-club-item-sport5 + .bgb-club-item-sport1,
.bgb-club-item-sport5 + .bgb-club-item-sport2,
.bgb-club-item-sport5 + .bgb-club-item-sport3,
.bgb-club-item-sport5 + .bgb-club-item-sport4,
.bgb-club-item-sport5 + .bgb-club-item-sport5,
.bgb-club-item-sport5 + .bgb-club-item-sport6 {
  margin-top: 0;
}

.bgb-club-item-sport5 + .bgb-club-item-sport1 .club__list,
.bgb-club-item-sport5 + .bgb-club-item-sport2 .club__list,
.bgb-club-item-sport5 + .bgb-club-item-sport3 .club__list,
.bgb-club-item-sport5 + .bgb-club-item-sport4 .club__list,
.bgb-club-item-sport5 + .bgb-club-item-sport5 .club__list,
.bgb-club-item-sport5 + .bgb-club-item-sport6 .club__list {
  padding-top: 0;
}

.bgb-club-item-culture5 + * {
  margin-top: 80px;
}

.bgb-club-item-culture5 + .bgb-club-item-culture1,
.bgb-club-item-culture5 + .bgb-club-item-culture2,
.bgb-club-item-culture5 + .bgb-club-item-culture3,
.bgb-club-item-culture5 + .bgb-club-item-culture4,
.bgb-club-item-culture5 + .bgb-club-item-culture5,
.bgb-club-item-culture5 + .bgb-club-item-culture6 {
  margin-top: 0;
}

.bgb-club-item-culture5 + .bgb-club-item-culture1 .club__list,
.bgb-club-item-culture5 + .bgb-club-item-culture2 .club__list,
.bgb-club-item-culture5 + .bgb-club-item-culture3 .club__list,
.bgb-club-item-culture5 + .bgb-club-item-culture4 .club__list,
.bgb-club-item-culture5 + .bgb-club-item-culture5 .club__list,
.bgb-club-item-culture5 + .bgb-club-item-culture6 .club__list {
  padding-top: 0;
}

.bgb-club-item-sport6 + * {
  margin-top: 80px;
}

.bgb-club-item-sport6 + .bgb-club-item-sport1,
.bgb-club-item-sport6 + .bgb-club-item-sport2,
.bgb-club-item-sport6 + .bgb-club-item-sport3,
.bgb-club-item-sport6 + .bgb-club-item-sport4,
.bgb-club-item-sport6 + .bgb-club-item-sport5,
.bgb-club-item-sport6 + .bgb-club-item-sport6 {
  margin-top: 0;
}

.bgb-club-item-sport6 + .bgb-club-item-sport1 .club__list,
.bgb-club-item-sport6 + .bgb-club-item-sport2 .club__list,
.bgb-club-item-sport6 + .bgb-club-item-sport3 .club__list,
.bgb-club-item-sport6 + .bgb-club-item-sport4 .club__list,
.bgb-club-item-sport6 + .bgb-club-item-sport5 .club__list,
.bgb-club-item-sport6 + .bgb-club-item-sport6 .club__list {
  padding-top: 0;
}

.bgb-club-item-culture6 + * {
  margin-top: 80px;
}

.bgb-club-item-culture6 + .bgb-club-item-culture1,
.bgb-club-item-culture6 + .bgb-club-item-culture2,
.bgb-club-item-culture6 + .bgb-club-item-culture3,
.bgb-club-item-culture6 + .bgb-club-item-culture4,
.bgb-club-item-culture6 + .bgb-club-item-culture5,
.bgb-club-item-culture6 + .bgb-club-item-culture6 {
  margin-top: 0;
}

.bgb-club-item-culture6 + .bgb-club-item-culture1 .club__list,
.bgb-club-item-culture6 + .bgb-club-item-culture2 .club__list,
.bgb-club-item-culture6 + .bgb-club-item-culture3 .club__list,
.bgb-club-item-culture6 + .bgb-club-item-culture4 .club__list,
.bgb-club-item-culture6 + .bgb-club-item-culture5 .club__list,
.bgb-club-item-culture6 + .bgb-club-item-culture6 .club__list {
  padding-top: 0;
}

.column {
          align-items: center;
  -webkit-box-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.column__image {
  height: 536px;
  overflow: hidden;
  position: relative;
  width: 50%;
}

.column__image img {
  bottom: 0;
  display: block;
  height: auto;
  max-width: inherit;
  min-height: 100%;
  min-width: 100%;
  position: absolute;
  right: 0;
  width: auto;
}

.column__content {
  padding: 0 5%;
  width: 50%;
}

.column__content__text {
  line-height: 2;
  margin-bottom: 60px;
}

.content {
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding: 0 60px 0;
  width: 100%;
}

.course {
  margin: 0 auto;
  max-width: 1048px;
}

.course__list {
  margin-bottom: 51px;
}

.course__item__number {
  color: #a59250;
  display: block;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-style: italic;
  font-weight: bold;
  margin-right: 20px;
}

.course__item__text {
  display: block;
  font-size: 22px;
  line-height: 1.5;
  padding-top: 3px;
}

.course__item__text strong {
  color: #6a2566;
}

.course__item p {
  font-size: 22px;
  line-height: 1.5;
  margin-bottom: 21px;
  padding: 0 0 0 1.85em;
  text-indent: -1.85em;
}

.course__item p strong {
  color: #6a2566;
}

.course__item em {
  color: #a59250;
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  font-style: italic;
  font-weight: bold;
  margin-right: 20px;
}

.favorite {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: space-between;
  margin-bottom: 60px;
}

.favorite + .information {
  margin-top: 100px;
}

.favorite .btn, .favorite .page__menu__link {
  border: solid 2px #6a2566;
  font-size: 18px;
  margin: 0;
  max-width: 260px;
  padding: 30px 40px 31px;
  width: 23%;
}

.favorite .btn:before, .favorite .page__menu__link:before {
  height: calc(100% - 6px);
  left: 3px;
  top: 3px;
  width: calc(100% - 6px);
}

.footer {
  background: #6a2566;
  color: #ffffff;
  padding: 40px 0 0;
  position: relative;
}

.footer__title {
  margin-bottom: 40px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding: 0 60px 0;
  width: 100%;
}

.footer__title__inner {
          align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 310px;
}

.footer__title__logo {
  height: 40px;
  width: 40px;
}

.footer__title__logo img {
  width: 100%;
}

.footer__title__text {
  width: calc(100% - 50px);
}

.footer__title__text img {
  width: 100%;
}

.footer__nav, .footer__nav--bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding: 0 60px 0;
  width: 100%;
}

.footer__nav + .footer__nav, .footer__nav--bottom + .footer__nav, .footer__nav + .footer__nav--bottom, .footer__nav--bottom + .footer__nav--bottom {
  margin-top: 35px;
}

.footer__nav__item {
  width: 15%;
}

.footer__nav__item + .footer__nav__item {
  margin-left: 2%;
}

.footer__nav__link, .footer__nav--bottom__link {
  color: #ffffff;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.4;
  text-decoration: underline;
}

.footer__nav__link:hover, .footer__nav--bottom__link:hover {
  text-decoration: none;
}

.footer__nav__child__item {
  margin-top: 14px;
  padding-left: 0.95em;
  text-indent: -0.88em;
}

.footer__nav__child__link {
  color: #ffffff;
  font-size: 13px;
  line-height: 1.4;
}

.footer__nav__child__link:before {
  background: #ffffff;
  content: '';
  display: inline-block;
  height: 1px;
  margin-right: 0.8em;
  vertical-align: middle;
  width: 0.3em;
}

.footer__nav__child__link:hover {
  text-decoration: underline;
}

.footer__nav--bottom {
  border-top: 1px solid rgba(255, 255, 255, .5);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 35px;
  max-width: 100%;
  padding: 15px 0;
}

.footer__nav--bottom__item + .footer__nav--bottom__item {
  margin-left: 2.5%;
}

.footer__nav--bottom__link {
  font-size: 13px;
  font-weight: normal;
}

.copyright {
  background: #ffffff;
  color: #333333;
  display: block;
  font-size: 12px;
  letter-spacing: 0.05em;
  padding: 20px 0;
  text-align: center;
  width: 100%;
}

.gnav {
  padding: 20px 30px 60px;
  position: fixed;
  right: -375px;
  width: 375px;
}

.gnav__item {
  margin-left: 40px;
}

.gnav__item:nth-of-type(1) {
  margin-left: 0;
}

.gnav__link {
  display: block;
  font-size: 18px;
}

.gnav__link:hover {
  opacity: 0.8;
}

.gnav__link--access, .gnav__link--contact {
  background: url("../img/ico_access.svg") no-repeat 10px 7px;
  border: 1px solid #6a2566;
  color: #6a2566;
  display: block;
  padding: 7px 10px 7px 30px;
}

.gnav__link--access:hover, .gnav__link--contact:hover {
  background-color: #6a2566;
  background-image: url("../img/ico_access_white.svg");
  color: #ffffff;
  opacity: 1 !important;
}

.gnav__link--contact {
  background-image: url("../img/ico_mail.svg");
}

.gnav__link--contact:hover {
  background-image: url("../img/ico_mail_white.svg");
}

.gnav__btn {
  display: none;
}

.gnav__btn:hover {
  cursor: pointer;
}

.gnav__list {
  -webkit-box-pack: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-pack: end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: flex-end;
}

.gnav__list--sub {
          align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
      -ms-flex-pack: end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: flex-end;
  margin-bottom: 18px;
}

.gnav__list--sub__item {
  font-size: 14px;
  margin-left: 20px;
}

.gnav__list--sub__item:nth-of-type(1) {
  margin-left: 0;
}

.gnav__list--sub__item.-sp {
  display: none;
}

.gnav__list--sub__link:hover {
  opacity: 0.8;
}

.gnav__list--child {
  background: #cca6c9;
  border-bottom: 1px solid #6a2566;
  display: none;
}

.gnav__list--child__item + .gnav__list--child__item {
  border-top: 1px dashed #6a2566;
}

.gnav__list--child__link {
  display: block;
  line-height: 1.4;
  padding: 12px 60px 12px 20px;
  position: relative;
}

.gnav__list--child__link:after {
  background: url("../img/arrow_purple.svg") no-repeat center right;
  content: '';
  display: block;
  height: 20px;
  margin-top: -10px;
  position: absolute;
  right: 20px;
  top: 50%;
  width: 20px;
}

.navbg {
  background: #000000;
  background: rgba(0, 0, 0, .5);
  bottom: 0;
  display: block;
  left: 0;
  opacity: 0;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transition: .6s ease;
  -o-transition: .6s ease;
  transition: .6s ease;
  visibility: hidden;
  width: 100%;
  z-index: 2;
}

.navbg.js-active {
  opacity: 1;
  visibility: visible;
}

.guideline {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 60px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding: 0 60px 0;
  width: 100%;
}

.guideline__title {
  font-family: "Noto Serif JP", serif;
  font-size: 20px;
  line-height: 1.5;
  margin-bottom: 20px;
  padding: 0 15px;
  position: relative;
  text-align: center;
  z-index: 1;
}

.guideline__title__number {
  background: #fff;
  color: #6a2467;
  font-size: 42px;
  font-style: italic;
  line-height: 1;
  margin-bottom: 10px;
  padding: 0 20px;
  text-align: center;
}

.guideline__title__text {
  display: block;
  font-weight: bold;
  margin-top: 15px;
  text-align: center;
}

.guideline__title__subtext {
  color: #6a2467;
  display: block;
  font-size: 17px;
  font-weight: bold;
  text-align: right;
}

.guideline__title__subtext:before {
  background: #6a2467;
  content: '';
  display: inline-block;
  height: 1px;
  margin-right: 10px;
  vertical-align: middle;
  width: 30px;
}

.guideline__item {
  padding-bottom: 20px;
  position: relative;
  width: 31%;
}

.guideline__item:before, .guideline__item:after {
  border-left: 1px solid #000;
  border-right: 1px solid #000;
  content: '';
  height: 20px;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 0;
}

.guideline__item:before {
  border-top: 1px solid #000;
  top: 22px;
}

.guideline__item:after {
  border-bottom: 1px solid #000;
  bottom: 0;
}

.guideline__text {
  line-height: 2;
  padding: 0 15px;
}

.header {
          align-items: center;
  background: #ffffff;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
      -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: space-between;
  position: relative;
  width: 100%;
  z-index: 149;
}

.header__title {
  width: 320px;
}

.header__title__inner {
          align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.header__title__inner:hover {
  opacity: 0.8;
}

.header__title__logo {
  height: 52px;
  width: 52px;
}

.header__title__logo img {
  width: 100%;
}

.header__title__text {
  width: calc(100% - 62px);
}

.header__title__text img {
  width: 100%;
}

.important {
  margin-bottom: 60px;
}

.important__inner {
          align-items: center;
  border: solid 3px #9e2928;
  -webkit-box-align: center;
  color: #9e2928;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 17px 40px;
}

.important__title {
  font-family: "Noto Serif JP", serif;
  font-size: 18px;
  font-weight: bold;
}

.important__content {
  border-left: solid 1px #9e2928;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: 40px;
  padding: 18px 0 18px 40px;
  width: calc(100% - 166px);
}

.important__date {
  display: block;
  line-height: 1.5;
  margin-right: 40px;
}

.important__text {
  width: calc(100% - 147px);
}

.important__link {
  color: #9e2928;
  line-height: 1.5;
  text-decoration: underline;
}

.important__link:hover {
  text-decoration: none;
}

.information {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: space-between;
  margin-bottom: 100px;
}

.information__content {
  margin-bottom: 60px;
  width: 46.5%;
}

.information__list {
  border-top: 1px solid #cccccc;
  margin-bottom: 40px;
}

.information__list__item {
  border-bottom: 1px solid #cccccc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 20px 0 15px;
}

.information__list__item.-nopost {
  padding: 20px 0 20px;
}

.information__list__date, .posts--detail__header__date {
  display: block;
  margin-right: 20px;
}

.information__list__category, .posts--detail__header__category {
  color: #6a2566;
  font-size: 14px;
  text-decoration: none !important;
}

.information__list__category:before, .posts--detail__header__category:before {
  content: '[ ';
}

.information__list__category:after, .posts--detail__header__category:after {
  content: ' ]';
}

.information__list__title {
  margin-top: 10px;
  width: 100%;
}

.information__list__title a {
  line-height: 1.5;
  text-decoration: underline;
}

.information__list__title a:hover {
  text-decoration: none;
}

.information__nopost {
  text-align: center;
}

.category, .category .bc-blog-category-list {
  margin-bottom: 5px;
  text-align: center;
}

.category__item, .category .bc-blog-category-list__item {
  border: solid 1px #6a2566;
  display: inline-block;
  font-size: 14px;
  margin: 0 0 15px;
}

.category__item + .category__item, .category .bc-blog-category-list__item + .category__item, .category .category__item + .bc-blog-category-list__item, .category .bc-blog-category-list__item + .bc-blog-category-list__item {
  margin-left: 20px;
}

.category__link, .category .bc-blog-category-list a {
  color: #6a2566;
  display: block;
  padding: 8px 10px;
}

.category__link:hover, .category .bc-blog-category-list a:hover {
  background: #6a2566;
  color: #ffffff;
}

.interview__title {
  border-bottom: 2px solid #bca7bb;
  border-top: 2px solid #bca7bb;
  font-family: "Noto Serif JP", serif;
  font-size: 18px;
  line-height: 1.5;
  margin-bottom: 32px;
  padding: 12px 16px;
  text-align: center;
}

.interview__faq {
  padding: 0 30px;
}

.interview__faq__q {
  font-size: 24px;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-bottom: 23px;
  padding-left: 1.6em;
  text-indent: -1.6em;
}

.interview__faq__q:before {
  color: #6a2566;
  content: 'Q.';
  margin-right: 0.5em;
}

.interview__faq__a {
  line-height: 2;
  margin-bottom: 33px;
}

.interview--column {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: space-between;
}

.interview--column__content {
  width: calc(100% - 370px);
}

.interview--column__text {
  line-height: 2;
  margin-bottom: 63px;
}

.interview--column__name {
  line-height: 2;
  text-align: right;
}

.interview--column__image {
  width: 300px;
}

.kv {
  margin-bottom: 62px;
  overflow: hidden;
  width: 100%;
}

.kv__content {
  border: 1px solid #ffffff;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-family: "Noto Serif JP", serif;
  height: calc(100% - 40px);
          justify-content: center;
  padding: 25px;
  position: absolute;
  right: 40px;
  top: 20px;
  width: 40%;
  z-index: 1;
}

.kv__content:before {
  background: #ffffff;
  background: rgba(255, 255, 255, .9);
  content: '';
  display: block;
  height: calc(100% - 10px);
  position: absolute;
  right: 5px;
  top: 5px;
  width: calc(100% - 10px);
}

.kv__content__title {
  font-size: 30px;
  margin-bottom: 22px;
  position: relative;
  text-align: center;
  z-index: 1;
}

.kv__content__text {
  line-height: 2;
  margin-bottom: 21px;
  position: relative;
  text-align: center;
  z-index: 1;
}

.kv__slide {
  position: relative;
  z-index: 0;
}

.kv__slide__item {
  padding: 0 20px;
  position: relative;
}

.kv__slide__item img {
  width: 100%;
}

.kv__control {
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding: 0 60px 0;
  width: 100%;
}

.kv__control__inner {
  margin: 17px 0 0 auto;
  position: relative;
  width: 180px;
}

.kv__dots {
  font-size: 20px;
  text-align: center;
}

.kv__dots__current, .kv__dots__total {
  font-family: "Noto Serif JP", serif;
  margin: 0 0.7em;
}

.kv__dots__current {
  color: #6a2566;
  font-weight: bold;
}

.slick-slide {
  max-width: 1240px;
  position: relative;
}

.slick-slide:before {
  background: #ffffff;
  background: rgba(255, 255, 255, .5);
  content: '';
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 10;
}

.slick-slide.slick-active:before {
  display: none;
}

.slick-next, .slick-prev {
  height: 36px;
  width: 36px;
}

.slick-next:before, .slick-prev:before {
  background: url("../img/arrow_purple_large.svg") no-repeat center;
  content: '';
  display: block;
  height: 36px;
  opacity: 1;
  width: 36px;
}

.slick-next {
  right: 0;
}

.slick-prev {
  left: 0;
}

.slick-prev:before {
  background-image: url("../img/arrow_purple_large_prev.svg");
}

.navbtn {
  cursor: pointer;
  display: none;
  height: 60px;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
  width: 60px;
  z-index: 5;
}

.navbtn__inner {
  height: 25px;
  position: relative;
  width: 30px;
}

.navbtn__inner span {
  background: #6a2566;
  display: inline-block;
  height: 2px;
  position: absolute;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
  width: 100%;
}

.navbtn__inner span:nth-of-type(1) {
  top: 0;
}

.navbtn__inner span:nth-of-type(2) {
  margin-top: -1px;
  top: 50%;
}

.navbtn__inner span:nth-of-type(3) {
  bottom: 0;
}

.navbtn:hover .navbtn__inner span:nth-of-type(1) {
  top: 3px;
}

.navbtn:hover .navbtn__inner span:nth-of-type(3) {
  bottom: 3px;
}

.navbtn.js-active {
  position: absolute;
}

.navbtn.js-active .navbtn__inner span:nth-of-type(1) {
  top: 0;
  -webkit-transform: translateY(11px) rotate(30deg);
      -ms-transform: translateY(11px) rotate(30deg);
          transform: translateY(11px) rotate(30deg);
}

.navbtn.js-active .navbtn__inner span:nth-of-type(2) {
  opacity: 0;
}

.navbtn.js-active .navbtn__inner span:nth-of-type(3) {
  bottom: 0;
  -webkit-transform: translateY(-12px) rotate(-30deg);
      -ms-transform: translateY(-12px) rotate(-30deg);
          transform: translateY(-12px) rotate(-30deg);
}

.navbtn.js-active:hover .navbtn__inner span:nth-of-type(1) {
  top: 0;
}

.navbtn.js-active:hover .navbtn__inner span:nth-of-type(3) {
  bottom: 0;
}

.page__header, .page__header--detail {
          align-items: center;
  background: url("../img/img_page_bg_shadow.jpg") no-repeat center/cover;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
      -ms-flex-pack: center;
  font-family: "Noto Serif JP", serif;
  font-size: 50px;
  height: 400px;
          justify-content: center;
  letter-spacing: 0.1em;
  position: relative;
  text-shadow: 0 0 15px rgba(0, 0, 0, .4);
  width: 100%;
}

.page__header--detail {
  background: url("../img/img_page_bg.jpg") no-repeat center/cover;
  position: relative;
}

.page__header--detail__title {
  background: #fa5fb7;
  background: -webkit-linear-gradient(315deg, #f3b7bd, #b05fab);
  background: -o-linear-gradient(315deg, #f3b7bd, #b05fab);
  background: linear-gradient(135deg, #f3b7bd, #b05fab);
  bottom: 0;
  font-size: 40px;
  left: 0;
  letter-spacing: 0.05em;
  line-height: 1.2;
  max-width: 100%;
  padding: 84px 50px 48px;
  position: absolute;
  text-shadow: none;
  width: 870px;
}

.page__header--detail__title:before {
  background: #ffffff;
  content: '';
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  top: 50px;
  width: 300px;
}

.page__menu {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: space-between;
}

.page__menu + .page__menu {
  margin-top: 40px;
}

.page__menu > div {
  width: 48%;
}

.page__menu__link {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-weight: bold;
  height: 100px;
          justify-content: flex-start;
  max-width: 100%;
  padding: 0 60px 0 40px;
  text-align: left;
}

.page__menu__link:before {
  height: calc(100% - 6px);
  left: 3px;
  top: 3px;
  width: calc(100% - 6px);
}

.page__menu__link:after {
  right: 30px;
}

.page__content {
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding: 0 60px 0;
  width: 100%;
}

.page__content--small {
  margin-left: auto;
  margin-right: auto;
  max-width: 1120px;
  padding: 0 60px 0;
  width: 100%;
}

.page__h2, .bge-ckeditor h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 36px;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-align: center;
}

.page__h2:after, .bge-ckeditor h2:after {
  background: url("../img/line_02.svg") no-repeat center top;
  content: '';
  display: block;
  height: 27px;
  margin: 20px auto 0;
  width: 270px;
}

.page__h2__link {
  display: block;
  line-height: 0.7em;
  margin-top: 4px;
  text-align: center;
}

.page__h3, .bge-ckeditor h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 30px;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding-bottom: 9px;
  position: relative;
}

.page__h3:before, .bge-ckeditor h3:before, .page__h3:after, .bge-ckeditor h3:after {
  background: #bca7bb;
  bottom: 0;
  content: '';
  display: block;
  height: 1px;
  position: absolute;
  width: 100%;
}

.page__h3:after, .bge-ckeditor h3:after {
  background: #8d4a8a;
  width: 96px;
}

.page__h4, .bge-ckeditor h4 {
  color: #6a2566;
  font-family: "Noto Serif JP", serif;
  font-size: 24px;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.page__h5, .bge-ckeditor h5 {
  border-bottom: 1px dashed #8d4a8a;
  border-top: 1px solid #8d4a8a;
  display: inline-block;
  font-family: "Noto Serif JP", serif;
  font-size: 18px;
  letter-spacing: 0.05em;
  line-height: 1.5;
  min-width: 300px;
  padding: 9px 0 10px;
}

.page__h6, .bge-ckeditor h6 {
  border-left: 2px solid #8d4a8a;
  font-family: "Noto Serif JP", serif;
  font-size: 18px;
  line-height: 1.5;
  padding-left: 0.8em;
}

.page__text {
  line-height: 2;
}

.page__image {
          align-items: end;
  -webkit-box-align: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: end;
}

.page__image.-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: center;
}

.page__image img {
  margin: 10px;
  max-width: 100%;
}

.page__table {
  border-right: 1px solid #bca7bb;
  border-top: 1px solid #bca7bb;
  line-height: 2;
  width: 100%;
}

.page__table th, .page__table td {
  border-bottom: 1px solid #bca7bb;
  border-left: 1px solid #bca7bb;
  padding: 8px 16px;
  text-align: left;
}

.page__table th {
  background: #d7cfd7;
  font-weight: normal;
}

.page__table thead th {
  text-align: center;
}

.page__table--02 {
  border-top: 1px solid #8d4a8a;
}

.page__table--02__inner {
  border-bottom: 1px solid #8d4a8a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 10px 20px;
}

.page__table--02 dt {
  border-right: 1px solid #8d4a8a;
  color: #6a2566;
  line-height: 2;
  padding: 4px 0;
  width: 180px;
}

.page__table--02 dd {
  line-height: 2;
  padding: 4px 30px;
  width: calc(100% - 180px);
}

.page__ul {
  line-height: 1.7;
  padding-left: 1em;
}

.page__ul li {
  list-style: none;
  padding-left: 0.5em;
  text-indent: -1.2em;
}

.page__ul li:before {
  border-right: 1px solid #9e2928;
  border-top: 1px solid #9e2928;
  content: '';
  display: inline-block;
  height: 5px;
  margin-right: 0.8em;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  vertical-align: middle;
  width: 5px;
}

.page__ul li + li {
  margin-top: 8px;
}

.page__ul li > .page__ul li {
  margin-top: 8px;
}

.page__ol {
  line-height: 1.7;
  padding-left: 1.6em;
}

.page__ol li {
  list-style: decimal;
}

.page__ol li + li {
  margin-top: 8px;
}

.page__ol li > .page__ol li {
  list-style: lower-roman;
  margin-top: 8px;
}

.page__ol li > .page__ol li > .page__ol li {
  list-style: lower-alpha;
  margin-top: 8px;
}

.page__dl {
  line-height: 2;
}

.page__dl dt {
  background: #d7cfd7;
  border-bottom: 1px dotted #8d4a8a;
  font-weight: bold;
  margin-bottom: 8px;
  padding: 8px 16px;
}

.page__dl dd {
  margin-bottom: 8px;
  padding: 0 16px;
}

.page .-center {
  text-align: center;
}

.page a {
  text-decoration: underline;
}

.page a:hover {
  text-decoration: none;
}

.page__map {
  border: 6px solid #bca7bb;
  height: 540px;
}

.image {
  margin: 5px;
}

.image__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.image img {
  max-width: 100%;
}

.posts {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: space-between;
}

.posts__main {
  width: calc(100% - 282px);
}

.posts__events dl {
          align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-align: center;
      -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
          justify-content: space-between;
  width: 100%;
}

.posts__events dt {
  background: #6a2566;
  border-radius: 3px;
  color: #ffffff;
  font-size: 14px;
  margin-bottom: 10px;
  padding: 5px 10px;
  text-align: center;
  width: 6em;
}

.posts__events dt:nth-last-of-type(1) {
  margin-bottom: 5px;
}

.posts__events dd {
  margin-bottom: 10px;
  width: calc(100% - 94px);
}

.posts__events dd:nth-last-of-type(1) {
  margin-bottom: 5px;
}

.posts__events__title {
  font-weight: bold;
}

.posts__events__remarks {
  color: #6a2566;
  font-size: 14px;
}

.posts__side {
  width: 242px;
}

.posts__side__title {
  border: 1px solid #6a2566;
  color: #6a2566;
  font-family: "Noto Serif JP", serif;
  font-size: 20px;
  font-weight: normal;
  padding: 16px 20px;
}

.posts__side__title__small {
  color: #777777;
  font-size: 12px;
  margin-left: 20px;
}

.posts__side__list li {
  border-bottom: 1px solid #cccccc;
}

.posts__side__list a {
  display: block;
  padding: 15px 15px;
  position: relative;
  text-decoration: none;
}

.posts__side__list a:before {
  border-right: 1px solid #6a2566;
  border-top: 1px solid #6a2566;
  content: '';
  display: inline-block;
  height: 5px;
  margin-right: 0.8em;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  vertical-align: middle;
  width: 5px;
}

.posts__side__list a:hover {
  opacity: 0.8;
}

.posts--detail__header {
  margin-bottom: 60px;
}

.posts--detail__header__title {
  border-bottom: 2px solid #6a2566;
  font-size: 30px;
  line-height: 1.4;
  margin-bottom: 29px;
  padding-bottom: 15px;
}

.posts--detail__header__sub {
  -webkit-box-pack: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.posts--detail__header__date {
  font-weight: bold;
}

.posts--detail__main {
  line-height: 2;
  margin-bottom: 80px;
}

.posts--detail__main p + .image__wrap {
  margin-top: 60px;
}

.topLearn {
  margin-bottom: 120px;
}

.topLearn .title--purple {
  margin-bottom: 55px;
  text-align: center;
}

.topLearn .btn, .topLearn .page__menu__link {
  margin: 0;
  width: 48%;
}

.topSubject {
  margin-bottom: 120px;
}

.topSubject__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 auto 60px;
  max-width: 1600px;
}

.topSubject__list__item {
  width: 50%;
}

.topSubject__list__item a {
  display: block;
  position: relative;
  z-index: 1;
}

.topSubject__list__item a:before {
  border: 1px solid #ffffff;
  content: '';
  display: block;
  height: calc(100% - 20px);
  left: 9px;
  position: absolute;
  top: 9px;
  width: calc(100% - 20px);
}

.topSubject__list__item a:hover {
  opacity: 0.8;
}

.topSubject__list__item img {
  width: 100%;
}

.topLife {
  background: url("../img/img_top_life.jpg") no-repeat center/cover;
  height: 452px;
  margin: 0 auto;
  max-width: 1440px;
  padding: 25px 0;
  width: 100%;
}

.topLife__content {
  background: #ffffff;
  background: rgba(255, 255, 255, .9);
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: center;
  height: 100%;
          justify-content: center;
  margin: 0 auto;
  max-width: 620px;
}

.topLife .title--purple {
  margin-bottom: 16px;
  text-align: center;
}

.topLife__text {
  line-height: 2;
  margin-bottom: 32px;
  text-align: center;
}

@media screen and (min-width: 897px) {
  a[href^="tel:"] {
    color: #333333;
    pointer-events: none;
    text-decoration: none !important;
  }
  .tb {
    display: block;
  }
  .sp {
    display: none;
  }
}

@media screen and (min-width: 1221px) {
  .pc {
    display: block !important;
  }
  .tb {
    display: none;
  }
  .column__content {
    padding: 0 10%;
  }
  .gnav {
    -webkit-box-direction: reverse;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding: 0;
    position: relative;
    right: auto;
    width: calc(100% - 340px);
  }
  .header {
    height: 105px;
    padding: 0 60px 0 60px;
  }
  .kv__content {
    padding: 5px;
  }
  .kv__content__title {
    font-size: 50px;
    margin-bottom: 36px;
  }
  .kv__content__text {
    margin-bottom: 31px;
  }
}

@media screen and (min-width: 1375px) {
  .gnav {
    width: calc(100% - 404px);
  }
  .header__title {
    width: 404px;
  }
  .header__title__text {
    width: calc(100% - 72px);
  }
}

@media screen and (max-width: 896px) {
  body {
    font-size: 15px;
  }
  .container {
    padding-bottom: 60px;
  }
  .breadcrumb {
    margin-bottom: 40px;
  }
  .menu .breadcrumb {
    margin-bottom: 50px;
  }
  .breadcrumb__list {
    padding: 20px 25px 20px;
  }
  .breadcrumb__list {
    padding-bottom: 15px;
    padding-top: 15px;
  }
  .breadcrumb__item {
    font-size: 1em;
  }
  .btn, .page__menu__link {
    max-width: 375px;
  }
  .btn__wrap {
    display: block;
  }
  .btn--image {
    font-size: 25px;
    max-width: 375px;
    padding: 31px 0 32px;
  }
  .btn--image:after {
    background-image: url("../img/arrow_white.svg");
    right: 25px;
  }
  .btn--image:hover:after {
    background-image: url("../img/arrow_white.svg");
  }
  .mb0em {
    margin-bottom: 0em;
  }
  .mb25em {
    margin-bottom: 0.15em;
  }
  .mb50em {
    margin-bottom: 0.3em;
  }
  .mb75em {
    margin-bottom: 0.45em;
  }
  .mb100em {
    margin-bottom: 0.6em;
  }
  .mb125em {
    margin-bottom: 0.75em;
  }
  .mb150em {
    margin-bottom: 0.9em;
  }
  .mb175em {
    margin-bottom: 1.05em;
  }
  .mb200em {
    margin-bottom: 1.2em;
  }
  .mb225em {
    margin-bottom: 1.35em;
  }
  .mb250em {
    margin-bottom: 1.5em;
  }
  .mb275em {
    margin-bottom: 1.65em;
  }
  .mb300em {
    margin-bottom: 1.8em;
  }
  .mb325em {
    margin-bottom: 1.95em;
  }
  .mb350em {
    margin-bottom: 2.1em;
  }
  .mb375em {
    margin-bottom: 2.25em;
  }
  .mb400em {
    margin-bottom: 2.4em;
  }
  .mb425em {
    margin-bottom: 2.55em;
  }
  .mb450em {
    margin-bottom: 2.7em;
  }
  .mb475em {
    margin-bottom: 2.85em;
  }
  .mb500em {
    margin-bottom: 3em;
  }
  .mb525em {
    margin-bottom: 3.15em;
  }
  .mb550em {
    margin-bottom: 3.3em;
  }
  .mb575em {
    margin-bottom: 3.45em;
  }
  .mb600em {
    margin-bottom: 3.6em;
  }
  .mb625em {
    margin-bottom: 3.75em;
  }
  .line-01 {
    height: 8px;
  }
  .pagenavi {
    bottom: 20px;
    right: 20px;
  }
  .pagenavi.js-footer {
    bottom: 20px;
  }
  .pagination {
    font-size: 12px;
  }
  .pagination span {
    margin: 0 1px 10px;
  }
  .bgb-title {
    margin-bottom: 60px;
    margin-bottom: 3.75rem;
  }
  .bge-ckeditor table {
    width: 100% !important;
  }
  .bgb-table table tr {
    padding: 10px 0;
  }
  .bgb-table table th {
    border-right: 0;
    padding: 0;
    width: 100%;
  }
  .bgb-table table td {
    padding: 0;
    width: 100%;
  }
  .bgb-faq-box + .bgb-title2-2 {
    margin-top: 60px;
    margin-top: 3.75rem;
  }
  .title--lineTop {
    font-size: 30px;
    margin-bottom: 33px;
  }
  .title--lineTop:before {
    background-size: cover;
    height: 35px;
    margin-bottom: 20px;
    width: 250px;
  }
  .title--purple {
    font-size: 25px;
  }
  .title--borderB {
    font-size: 22px;
    margin-bottom: 40px;
  }
  .title--borderB:after {
    margin-top: 20px;
    width: 50px;
  }
  .title--borderL {
    font-size: 18px;
    padding: 10px 20px 11px;
  }
  .title__content {
    font-size: 27px;
    margin-bottom: 40px;
  }
  .topInfo .title__content {
    font-size: 27px;
    top: -14px;
  }
  .-gray .title__content {
    font-size: 27px;
    margin-bottom: 26px;
    top: -14px;
  }
  .title__content__small {
    font-size: 16px;
  }
  .title__content__small:before {
    margin: 13px auto 18px;
    width: 50px;
  }
  .club {
    padding: 0 25px 0;
  }
  .club {
    max-width: 100%;
    padding: 0;
  }
  .club .page__h2, .club .bge-ckeditor h2, .bge-ckeditor .club h2,
  .club .page__h3,
  .club .bge-ckeditor h3,
  .bge-ckeditor .club h3,
  .club .page__text {
    margin-left: 25px;
    margin-right: 25px;
    max-width: 100%;
  }
  .club .page__text {
    text-align: left;
  }
  .club__list {
    padding-left: 4%;
    padding-right: 4%;
  }
  .club__list .bgt-container {
    width: 40%;
  }
  .club__name {
    line-height: 1.2;
    padding: 0 20px;
    text-align: center;
  }
  .club--detail {
    padding: 0 25px 0;
  }
  .column {
    display: block;
  }
  .column__image {
    height: auto;
    margin-bottom: 22px;
    width: 100%;
  }
  .column__image img {
    height: auto;
    min-height: auto;
    min-width: auto;
    position: relative;
    width: 100%;
  }
  .column__content {
    padding: 0 25px;
    width: 100%;
  }
  .column__content__text {
    margin-bottom: 22px;
  }
  .content {
    padding: 0 25px 0;
  }
  .course__list {
    margin-bottom: 32px;
  }
  .course__item {
    margin-bottom: 23px;
  }
  .course__item__number {
    font-size: 30px;
  }
  .course__item__text {
    font-size: 18px;
  }
  .course__item p {
    font-size: 18px;
    margin-bottom: 23px;
    padding: 0 0 0 2.1em;
    text-indent: -2.1em;
  }
  .course__item em {
    font-size: 30px;
    line-height: 1;
    margin-top: -2px;
  }
  .favorite {
    margin-bottom: 40px;
  }
  .favorite + .information {
    margin-top: 40px;
  }
  .favorite .btn, .favorite .page__menu__link {
    margin: 0 auto 20px;
    max-width: 100%;
    padding: 20px 0 21px;
    width: 100%;
  }
  .footer {
            align-items: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    height: auto;
    padding: 20px 0 0;
  }
  .footer__title {
    padding: 0 25px 0;
  }
  .footer__title {
    margin-bottom: 26px;
  }
  .footer__title__inner {
    margin: 0 auto;
    max-width: 225px;
  }
  .footer__title__logo {
    height: 29px;
    width: 29px;
  }
  .footer__title__text {
    width: calc(100% - 39px);
  }
  .footer__nav, .footer__nav--bottom {
    padding: 0 25px 0;
  }
  .footer__nav, .footer__nav--bottom {
    display: none;
  }
  .footer__nav--bottom {
    border-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 0 !important;
  }
  .footer__nav--bottom__item {
    display: none;
  }
  .footer__nav--bottom__item.-sp {
    display: block;
  }
  .footer__nav--bottom__item + .footer__nav--bottom__item {
    margin-left: 5%;
  }
  .copyright {
    margin-top: 35px;
    padding: 10px 0;
  }
  .gnav {
    right: -100%;
    width: 100%;
  }
  .guideline {
    padding: 0 25px 0;
  }
  .guideline {
    display: block;
    margin-bottom: 40px;
  }
  .guideline__title {
    font-size: 20px;
  }
  .guideline__title__text {
    margin-top: 10px;
  }
  .guideline__item {
    width: 100%;
  }
  .guideline__item + .guideline__item {
    margin-top: 25px;
  }
  .header__title {
    width: 246px;
  }
  .header__title__logo {
    height: 32px;
    width: 32px;
  }
  .header__title__text {
    width: calc(100% - 42px);
  }
  .important__inner {
    display: block;
    padding: 15px 20px;
  }
  .important__title {
    text-align: center;
  }
  .important__title:after {
    background: #9e2928;
    content: '';
    display: block;
    height: 2px;
    margin: 20px auto 15px;
    width: 30px;
  }
  .important__content {
    border-left: 0;
    display: block;
    margin-left: 0;
    padding: 0;
    width: 100%;
  }
  .important__date {
    margin-bottom: 9px;
    margin-right: 0;
  }
  .important__text {
    width: 100%;
  }
  .important__link {
    line-height: 1.8;
  }
  .information {
    margin-bottom: 90px;
  }
  .information__content {
    margin-bottom: 40px;
    width: 100%;
  }
  .information__content + .information__content {
    margin-top: 10px;
  }
  .information__list {
    margin-bottom: 30px;
  }
  .information__list__title {
    margin-top: 13px;
  }
  .information__list__title a {
    line-height: 1.8;
  }
  .category__item + .category__item, .category .bc-blog-category-list__item + .category__item, .category .category__item + .bc-blog-category-list__item, .category .bc-blog-category-list__item + .bc-blog-category-list__item {
    margin-left: 15px;
  }
  .interview__faq {
    padding: 0 10px;
  }
  .interview__faq__q {
    font-size: 18px;
  }
  .interview--column__content {
    margin-bottom: 30px;
    width: 100%;
  }
  .interview--column__text {
    margin-bottom: 13px;
  }
  .interview--column__image {
    text-align: center;
    width: 100%;
  }
  .interview--column__image img {
    max-width: 100%;
  }
  .kv {
    margin-bottom: 42px;
  }
  .kv__content {
    background: #ffffff;
    background: rgba(255, 255, 255, .6);
    border: 0;
    bottom: 0;
    display: block;
    height: auto;
    padding: 20px 28px;
    right: 8px;
    top: auto;
    width: calc(100% - 16px);
  }
  .kv__content:before {
    display: none;
  }
  .kv__content__title {
    font-size: 22px;
    margin-bottom: 13px;
  }
  .kv__content__text {
    font-size: 13px;
    margin-bottom: 13px;
  }
  .kv__slide__item {
    padding: 0 8px;
  }
  .kv__control {
    padding: 0 25px 0;
  }
  .kv__control__inner {
    width: 115px;
  }
  .kv__dots {
    font-size: 15px;
  }
  .slick-next, .slick-prev {
    height: 20px;
    width: 20px;
  }
  .slick-next:before, .slick-prev:before {
    background-image: url("../img/arrow_purple.svg");
    height: 20px;
    width: 20px;
  }
  .slick-prev:before {
    background-image: url("../img/arrow_purple_prev.svg");
  }
  .page__header, .page__header--detail {
    background: url("../img/img_page_bg_sp_shadow.jpg") no-repeat center bottom/cover;
    font-size: 30px;
    height: 235px;
  }
  .page__header--detail {
    background: url("../img/img_page_bg_sp.jpg") no-repeat center bottom/cover;
    display: block;
    overflow: hidden;
  }
  .page__header--detail__title {
    bottom: 0;
    font-size: 24px;
    padding: 37px 20px 23px;
    position: absolute;
    text-align: center;
  }
  .page__header--detail__title:before {
    top: 25px;
    width: 150px;
  }
  .page__menu {
    display: block;
  }
  .page__menu + .page__menu {
    margin-top: 20px;
  }
  .page__menu > div {
    margin-top: 20px;
    width: 100%;
  }
  .page__menu__link {
    display: block;
    font-size: 18px;
    font-weight: bold;
    height: auto;
    padding: 17px 40px 18px 20px;
    text-align: left;
  }
  .page__menu__link:after {
    right: 20px;
  }
  .page__content {
    padding: 0 25px 0;
  }
  .page__content--small {
    padding: 0 25px 0;
  }
  .page__h2, .bge-ckeditor h2 {
    font-size: 30px;
  }
  .page__h2:after, .bge-ckeditor h2:after {
    background-size: cover;
    height: 20px;
    margin-top: 12px;
    width: 196px;
  }
  .page__h3, .bge-ckeditor h3 {
    font-size: 24px;
    padding-bottom: 5px;
  }
  .page__h3:after, .bge-ckeditor h3:after {
    width: 30px;
  }
  .page__h4, .bge-ckeditor h4 {
    font-size: 18px;
  }
  .page__h5, .bge-ckeditor h5 {
    display: block;
    font-size: 16px;
    padding: 4px 0 5px;
    text-align: center;
  }
  .page__h6, .bge-ckeditor h6 {
    font-size: 16px;
  }
  .page__table--02__inner {
    padding: 10px 0;
  }
  .page__table--02 dt {
    border-right: 0;
    padding: 0;
    width: 100%;
  }
  .page__table--02 dd {
    padding: 0;
    width: 100%;
  }
  .page__map {
    border-width: 4px;
    height: 230px;
  }
  .image + .image {
    margin-top: 20px;
  }
  .posts__main {
    margin-bottom: 40px;
    width: 100%;
  }
  .posts__side {
    width: 100%;
  }
  .posts__side__title {
    font-size: 22px;
  }
  .posts--detail__header {
    margin-bottom: 30px;
  }
  .posts--detail__header__title {
    font-size: 18px;
    margin-bottom: 13px;
    padding-bottom: 17px;
  }
  .posts--detail__main {
    margin-bottom: 40px;
  }
  .posts--detail__main p + .image__wrap {
    margin-top: 30px;
  }
  .topLearn {
    margin-bottom: 90px;
  }
  .topLearn .title--purple {
    margin-bottom: 11px;
  }
  .topLearn .btn, .topLearn .page__menu__link {
    margin: 0 auto;
    width: 100%;
  }
  .topLearn .btn + .btn, .topLearn .page__menu__link + .btn, .topLearn .btn + .page__menu__link, .topLearn .page__menu__link + .page__menu__link {
    margin-top: 20px;
  }
  .topSubject {
    margin-bottom: 90px;
  }
  .topSubject__list {
    display: block;
    margin-bottom: 30px;
  }
  .topSubject__list__item {
    width: 100%;
  }
  .topSubject__btn {
    padding: 0 25px;
  }
  .topLife {
    height: 296px;
    padding: 30px;
  }
  .topLife__content {
    max-width: 100%;
    padding: 0 20px;
  }
  .topLife__text {
    margin-bottom: 22px;
  }
}

@media screen and (max-width: 1220px) {
  .footer__title {
    width: 100%;
  }
  .gnav {
    background: #deb9dc;
    bottom: 0;
    display: block;
    overflow-y: scroll;
    top: 60px;
    -webkit-transition: .6s ease;
    -o-transition: .6s ease;
    transition: .6s ease;
    z-index: 148;
  }
  .gnav.js-active {
    right: 0;
  }
  .gnav__item {
    margin-left: 0;
    width: 100%;
  }
  .gnav__link {
    display: none;
  }
  .gnav__link--access, .gnav__link--contact {
    background: none;
    border: 0;
    color: #333333;
    display: inline;
    padding: 0;
  }
  .gnav__link--access:hover, .gnav__link--contact:hover {
    background: none;
    color: #333333;
  }
  .gnav__btn {
    border-bottom: 1px solid #6a2566;
    display: block;
    font-size: 16px;
    margin: 0 auto;
    padding: 20px 10px;
    position: relative;
    text-align: left;
    width: 100%;
  }
  .gnav__btn:before, .gnav__btn:after {
    background: #6a2566;
    content: '';
    display: block;
    position: absolute;
  }
  .gnav__btn:before {
    height: 14px;
    right: 16px;
    top: 22px;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease;
    width: 2px;
  }
  .gnav__btn:after {
    height: 2px;
    right: 10px;
    top: 28px;
    width: 14px;
  }
  .gnav__btn.js-archive:before {
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  .gnav__list {
    display: block;
    margin-bottom: 30px;
  }
  .gnav__list--sub {
    -ms-flex-pack: distribute;
        justify-content: space-around;
    margin-bottom: 0;
  }
  .gnav__list--sub__item {
    font-size: 16px;
    margin-bottom: 30px;
    margin-left: 0;
    text-align: center;
    width: 50%;
  }
  .gnav__list--sub__item.-sp {
    display: block;
  }
  .gnav__list--sub__link:hover {
    opacity: 1;
  }
  .header {
    height: 60px;
    padding: 0 15px;
  }
  .navbtn {
            align-items: center;
    -webkit-box-align: center;
    -webkit-box-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        -ms-flex-align: center;
        -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
            justify-content: center;
  }
}
