@charset "UTF-8";
/* --

 post.css

-- */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Noto+Serif);
@import url(https://fonts.googleapis.com/css?family=Amatic+SC&display=swap);
@import url("https://fonts.googleapis.com/css?family=Kosugi&display=swap");
@import url(https://fonts.googleapis.com/css?family=Playfair+Display);
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
/* --

 * clearfix............float解除
 * font-size...........フォントサイズ指定（px指定はIE8対策）
 * layout-baseSize.....基本のコンテンツサイズ
 * layout-posMiddle....天地中央配置
 * moving-base.........基本のアニメーション
 * FontAwesome.........アイコンフォント使用（FontAwesome）
 * opacity.............透明度設定（IE対応含む）
 * tablet..............ブレイクポイント設定（タブレット）
 * mobile..............ブレイクポイント設定（スマホ）

-- */
/*-----------------------------------

 keyframes - アニメーションキーフレーム集

-----------------------------------*/
@-webkit-keyframes fade {
  100% {
    opacity: 1;
    padding: 0;
  }
}
@keyframes fade {
  100% {
    opacity: 1;
    padding: 0;
  }
}
@-webkit-keyframes fadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes fadeDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px);
  }
}
@keyframes fadeDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px);
  }
}
@-webkit-keyframes fadeinRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(80px);
            transform: translateX(80px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes fadeinRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(80px);
            transform: translateX(80px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes fadeinLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-80px);
            transform: translateX(-80px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes fadeinLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-80px);
            transform: translateX(-80px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes scroll {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(33px);
            transform: translateY(33px);
  }
}
@-webkit-keyframes scroll {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(33px);
            transform: translateY(33px);
  }
}
/*
@-webkit-keyframes toggle-top {
	0% {
		-webkit-transform: translateY(0px) rotate(-45deg);
		transform: translateY(0px) rotate(-45deg);
	}
	50% {
		-webkit-transform: translateY(0px) rotate(0deg);
		transform: translateY(0px) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(-10px) rotate(0deg);
		transform: translateY(-10px) rotate(0deg);
	}
}

@keyframes toggle-top {
	0% {
		-webkit-transform: translateY(0px) rotate(-45deg);
		transform: translateY(0px) rotate(-45deg);
	}
	50% {
		-webkit-transform: translateY(0px) rotate(0deg);
		transform: translateY(0px) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(-10px) rotate(0deg);
		transform: translateY(-10px) rotate(0deg);
	}
}

@-webkit-keyframes toggle-bottom {
	0% {
		-webkit-transform: translateY(-4px) rotate(45deg);
		transform: translateY(-4px) rotate(45deg);
	}
	50% {
		-webkit-transform: translateY(0px) rotate(0deg);
		transform: translateY(0px) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(8px) rotate(0deg);
		transform: translateY(8px) rotate(0deg);
	}
}

@keyframes toggle-bottom {
	0% {
		-webkit-transform: translateY(-2px) rotate(45deg);
		transform: translateY(-2px) rotate(45deg);
		//-webkit-transform: translateY(-4px) rotate(45deg);
		//transform: translateY(-4px) rotate(45deg);
	}
	50% {
		-webkit-transform: translateY(0px) rotate(0deg);
		transform: translateY(0px) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(4px) rotate(0deg);
		transform: translateY(4px) rotate(0deg);
		//-webkit-transform: translateY(8px) rotate(0deg);
		//transform: translateY(8px) rotate(0deg);
	}
}

@-webkit-keyframes toggle-top-close {
	0% {
		-webkit-transform: translateY(-17px) rotate(0deg);
		transform: translateY(-17px) rotate(0deg);
	}
	50% {
		-webkit-transform: translateY(0px) rotate(0deg);
		transform: translateY(0px) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(0px) rotate(-45deg);
		transform: translateY(0px) rotate(-45deg);
	}
}

@keyframes toggle-top-close {
	0% {
		-webkit-transform: translateY(-17px) rotate(0deg);
		transform: translateY(-17px) rotate(0deg);
	}
	50% {
		-webkit-transform: translateY(0px) rotate(0deg);
		transform: translateY(0px) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(0px) rotate(-45deg);
		transform: translateY(0px) rotate(-45deg);
	}
}

@-webkit-keyframes toggle-bottom-close {
	0% {
		-webkit-transform: translateY(15px) rotate(0deg);
		transform: translateY(15px) rotate(0deg);
	}
	50% {
		-webkit-transform: translateY(0px) rotate(0deg);
		transform: translateY(0px) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(-4px) rotate(45deg);
		transform: translateY(-4px) rotate(45deg);
	}
}

@keyframes toggle-bottom-close {
	0% {
		-webkit-transform: translateY(15px) rotate(0deg);
		transform: translateY(15px) rotate(0deg);
	}
	50% {
		-webkit-transform: translateY(0px) rotate(0deg);
		transform: translateY(0px) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(-4px) rotate(45deg);
		transform: translateY(-4px) rotate(45deg);
	}
}
*/
/*-----------------------------------

	$news

-----------------------------------*/
/* --

 post.css

-- */
/**======================================
	setting
======================================**/
.news .bg-round__wrap {
  padding-top: 5rem;
  padding-bottom: 3rem;
}
.news__wrap {
  width: 80%;
  max-width: 88.3rem;
  margin: auto;
}
@media screen and (max-width: 640px) {
  .news .bg-round__wrap {
    padding-top: 3rem;
    padding-bottom: 4rem;
  }
  .news__wrap {
    width: 90%;
  }
}

/*-----------------------------------

	$news

-----------------------------------*/
/*-----------------------------------

	$info

-----------------------------------*/
.info__unit {
  border-bottom: 1px solid #989B9B;
}
.info__unit a {
  display: block;
  padding: 1.6rem 1.8rem;
}
.info__unit a:hover {
  background: #fcfecf;
}
.info__unit:first-child {
  border-top: 1px solid #989B9B;
}
.info__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#news .info__wrap {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.info__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.info__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#news .info__text {
  padding-left: 9.3rem;
}
.info__date {
  width: 9rem;
}
.info__cate {
  margin-right: 1.3rem;
}
.info__cate span {
  display: inline-block;
  width: 10.9rem;
  border-radius: 100px;
  text-align: center;
  font-size: 1.2rem;
  padding: 0.2em;
  background: #DBDBDB;
}
.info__cate.cat-item-info span {
  background: #FFD5E7;
}
.info__cate.cat-item-exam span {
  background: #A3EBEB;
}
.info__cate.cat-item-important span {
  background: #D6BBED;
}
.info__btn {
  text-align: center;
  margin-top: 3rem;
}
@media screen and (max-width: 1024px) {
  .info__unit {
    padding-left: 0;
    padding-right: 0;
  }
  .info__date {
    width: 8rem;
  }
}
@media screen and (max-width: 640px) {
  .info__unit a {
    padding: 2.6rem 1.8rem;
  }
  .info__unit:first-child {
    border-top: none;
  }
  .info__wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .info__date {
    font-weight: 700;
  }
  .info__cate {
    margin-right: 0;
  }
  .info__cate span {
    font-size: 1.1rem;
    padding: 0.1em;
  }
  .info__title {
    line-height: 1.5333333333;
  }
}

.tab__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 2rem;
}
.tab__list li {
  line-height: inherit;
}
.tab__item span {
  display: inline-block;
  width: 10.9rem;
  border-radius: 100px;
  text-align: center;
  font-size: 1.2rem;
  padding: 0.2em;
  background: #DBDBDB;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}
.tab__item span:hover {
  cursor: pointer;
}
.tab__item.cat-item-all span {
  background: #DBDBDB;
}
.tab__item.cat-item-info span {
  background: #FFD5E7;
}
.tab__item.cat-item-exam span {
  background: #A3EBEB;
}
.tab__item.cat-item-important span {
  background: #D6BBED;
}
.tab__item.cat-item-all span:hover {
  background: #c2c2c2;
}
.tab__item.cat-item-info span:hover {
  background: #ffa2ca;
}
.tab__item.cat-item-exam span:hover {
  background: #79e2e2;
}
.tab__item.cat-item-important span:hover {
  background: #be93e2;
}
@media screen and (max-width: 640px) {
  .tab__list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.panel {
  display: none;
}
.panel.active {
  display: block;
}

/*-----------------------------------

	$news

-----------------------------------*/
/*-----------------------------------

	$contents

-----------------------------------*/
.contents {
  overflow: visible !important;
}
@media screen and (max-width: 1024px) {
  .contents {
    margin-top: 0;
  }
  #top .contents, .course .contents {
    margin: 0 !important;
  }
}
.contents__title h2 {
  margin: 0 0 5rem;
}
@media screen and (max-width: 1024px) {
  .contents__title h2 {
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 640px) {
  .contents__title h2 {
    margin-bottom: 1.5rem;
  }
}
.course .contents__wrap, .schooldays .contents__wrap {
  padding: 8rem 0 10rem;
}
#liberty .contents__wrap {
  background: #FFF5FA;
}
#international .contents__wrap {
  background: #E5F6FC;
}
#sbc .contents__wrap {
  background: #E9F8F8;
}
#music .contents__wrap {
  background: #FFEDEB;
}
#schooldays .contents__wrap {
  background: #fdeff5;
}
@media screen and (max-width: 640px) {
  .course .contents__wrap {
    padding: 0;
    position: relative;
  }
  .course .contents__wrap::before {
    content: "";
    display: block;
    width: 100%;
    height: 100px;
    background: #fff;
    position: absolute;
  }
  .schooldays .contents__wrap {
    padding: 3rem 0;
  }
}
.contents__mv {
  width: 100%;
  max-width: 108rem;
  aspect-ratio: 1080/600;
  border-radius: 9rem;
  overflow: hidden;
}
.contents__mv img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 640px) {
  .contents__mv {
    border-radius: 6rem;
  }
}
.contents__lead {
  width: 90%;
  max-width: 77rem;
  margin: 0 auto 5rem;
}
.contents__lead-ttl {
  font-size: 3.3rem;
  line-height: 2.8787878788;
  color: #E881C9;
  text-align: center;
  margin: 0 0 3rem;
}
@media screen and (max-width: 1024px) {
  .contents__lead-ttl {
    font-size: 2.8rem;
    line-height: 1.5151515152;
  }
}
@media screen and (max-width: 640px) {
  .contents__lead-ttl {
    font-size: 2.3rem;
    line-height: 1.6;
  }
}

.breadcrumbs {
  margin: 1rem 0 2.5rem;
}
.breadcrumbs a, .breadcrumbs span {
  font-size: 1.2rem;
  line-height: 1;
}
.breadcrumbs > span {
  display: inline-block;
}
.breadcrumbs > span:not(:first-child)::before {
  content: "＞";
  color: #8D8D8D;
  padding: 0 0.5em;
}

.pagelink {
  width: 96%;
  max-width: 108rem;
  margin: 4rem auto 0;
}
.pagelink ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border: 1px solid #ccc;
  padding: 1em 0;
}
.pagelink li {
  display: inline-block;
}
.pagelink li:not(:last-child) {
  border-right: 1px solid #ccc;
}
.pagelink li a {
  display: block;
  padding: 0.2em 1em;
  text-align: center;
}
.pagelink li a:hover {
  color: #eb6ea5;
}
@media screen and (max-width: 640px) {
  .pagelink ul {
    padding: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .pagelink li:not(:last-child) {
    border-right: none;
    border-bottom: 1px solid #ccc;
  }
  .pagelink li a {
    display: block;
    padding: 1em 0;
  }
}

/*-----------------------------------

	$news

-----------------------------------*/
/*-----------------------------------

	$archive

-----------------------------------*/
.archive__inner {
  width: 90%;
  margin: 4.2rem auto 0;
}
#news .archive__inner {
  max-width: 88rem;
}
#pickup .archive__inner {
  max-width: 108rem;
}
@media screen and (max-width: 640px) {
  .archive__inner {
    margin-top: 2rem;
  }
}
.archive__unit {
  border-bottom: 1px solid #989B9B;
}
.archive__unit a {
  display: block;
  padding: 1.6rem 1.8rem;
}
.archive__unit a:hover {
  background: #fcfecf;
}
.archive__unit:first-child {
  border-top: 1px solid #989B9B;
}
@media screen and (max-width: 640px) {
  .archive__unit {
    padding-left: 0;
    padding-right: 0;
  }
}
.archive__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 0.5em;
}
.archive__date {
  width: 9rem;
}
@media screen and (max-width: 640px) {
  .archive__date {
    width: 8rem;
  }
}
.archive__cate {
  margin-right: 0.5rem;
}
.archive__cate span {
  display: inline-block;
  width: 10.9rem;
  border-radius: 10rem;
  text-align: center;
  font-size: 1.2rem;
  padding: 0.2em;
  background: #DBDBDB;
}
.archive__cate.cat-item-info span {
  background: #FFD5E7;
}
.archive__cate.cat-item-exam span {
  background: #A3EBEB;
}
.archive__cate.cat-item-important span {
  background: #D6BBED;
}
@media screen and (max-width: 640px) {
  .archive__cate span {
    font-size: 1.1rem;
    padding: 0.1em;
  }
}
.archive__text {
  padding-left: 9rem;
}
@media screen and (max-width: 640px) {
  .archive__text {
    padding-left: 0;
  }
}

/*
.pickup {
 &__list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.4rem 4%;
  @include setting.mobile {
   flex-direction: column;
  }
 }

 &__unit {
  width: calc((100% - 12%) / 4);
  @include setting.tablet {
   width: calc((100% - 8%) / 2);
  }
  @include setting.mobile {
   width: 100%;
  }
 }

 &__thumbnail {
  aspect-ratio: 1;
  border-radius: 3rem;
  border: 2px solid setting.color(pink);
  overflow: hidden;
  img {
   object-fit: cover;
   width: 100%;
   height: 100%;
   aspect-ratio: 1;
  }
  @include setting.tablet {
   aspect-ratio: 335 / 226;
  }
 }

 &__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 1rem;
  @include setting.mobile {
   justify-content: flex-start;;
   padding-top: .6em;
  }
 }

 &__date {
  font-size: 2rem;
  font-weight: 700;
  @include setting.mobile {
   margin-right: 1.4rem;
  }
 }

 &__title {
  font-size: 1.8rem;
  line-height: calc( 30 / 18);
  padding-top: .5rem;
 }

 &__cate {
  margin-right: .5rem;
  span {
   display: inline-block;
   width: 10.9rem;
   border-radius: 10rem;
   text-align: center;
   font-size: 1.2rem;
   padding: .2em;
   background: #fff;
   border-width: 1px;
   border-style: solid;
  }
  &.cat-item-report span {
   border-color: setting.color(pink);
   color: setting.color(pink);
  }
  &.cat-item-event span {
   border-color: setting.color(green);
   color: setting.color(green);
  }
 }
}

.category {
 &__list {
  max-width: 88rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 2rem;
  .cat-item {
   line-height: inherit;
   a {
    display: inline-block;
    width: 10.9rem;
    border-radius: 100px;
    text-align: center;
    font-size: 1.2rem;
    padding: .2em;
    background: setting.color(all);
    @include setting.moving-base;
    &:hover {
     cursor: pointer;
     background: darken(setting.color(all), 10%)
    }
   }
   //&.cat-item-all a { background: setting.color(all) };
   &.cat-item-info a { background: setting.color(info) };
   &.cat-item-exam a { background: setting.color(exam) };
   &.cat-item-important a { background: setting.color(important) };
   &.cat-item-report a { background: setting.color(report) };
   &.cat-item-event a { background: setting.color(event) };

   //&.cat-item-all a:hover { background: darken(setting.color(all), 10%) };
   &.cat-item-info a:hover { background: darken(setting.color(info), 10%) };
   &.cat-item-exam a:hover { background: darken(setting.color(exam), 10%) };
   &.cat-item-important a:hover { background: darken(setting.color(important), 10%) };
   &.cat-item-report a:hover { background: darken(setting.color(report), 10%) };
   &.cat-item-event a:hover { background: darken(setting.color(event), 10%) };
  }

  &.news-category {
  li {
   &:not(:first-child):not(.cat-item-info):not(.cat-item-exam):not(.cat-item-important) {
    display: none;
   }
  }
  }
  @include setting.mobile {
   margin-bottom: 3rem;
  }
 }

 @include setting.mobile {
  &__list {
   display: grid;
   grid-template-columns:auto auto;
   justify-content: center;
  }
 }
}

.monthly {
 padding-bottom: 4rem;
 max-width: 88rem;
 margin-left: auto;
 margin-right: auto;

 &__wrap {
  display: flex;
 }

 &__unit{}

 &__title {
  width: 6em;
 }

 &__list {
  flex: 1;
  display: grid;
  //grid-template-columns: repeat(auto-fit, minmax(7em, 1fr));
  grid-template-columns: repeat(auto-fill, minmax(7em, 1fr));

  gap: 1rem;
  text-align: center;

  dl {
   position: relative;
   &:not(:nth-child(-n + 6)):not(:last-child) {
    display: none;
   }
  }

  dt {
   background: #DBDBDB;
   padding: .25em;
   position: relative;
   @include setting.moving-base;
   &::before,
   &::after {
    content: "";
    display: inline-block;
    background: #8D8D8D;
    width: .7rem;
    height: .1rem;
    position: absolute;
    right: .8rem;
    top: 50%;
    transform: translateY(-50%);
   }
   &::after {
    transform: rotate(90deg);
    margin-top: -.05rem;
   }
   &:hover {
    cursor: pointer;
    background: darken(#DBDBDB, 10%);
   }
  }

  dd {
   span {
    position: relative;
    &::before,
    &::after {
     content: "";
     position: absolute;
     top: 50%;
     width: 5px;
     height: 1px;
     border-radius: 9999px;
     background: #8D8D8D;
     transform-origin: 100% 50%;
     right: .8rem;
    }
    &::before {
     transform: rotate(45deg);
    }
    &::after {transform: rotate(-45deg);
      margin-top: -.05rem;
    }
   }
   a {
    display: block;
    background: #F0F0F0;
    border-top: 1px solid #fff;
    padding: .5em;
    font-size: 1.2rem;
    &:hover {
     background: darken(#F0F0F0, 10%);
    }
   }
  }
 }

 &__drawer {
  position: absolute;
  width: 100%;
  top: 100%;
  z-index: 99;
  display: none;
 }

 &__old {
  li {
   &:nth-child(-n + 6) {
    display: none;
   }
   &:not(:last-child) {
    a {
     &::after {
      content: "年";
     }
    }
   }
  }
 }

 &.sp {
  display: none;
 }

 @include setting.mobile {
  &.pc {
   display: none;
  }
  &.sp {
   display: block;
   padding-top: 4rem;
  }

  &__wrap {
   flex-direction: column;
   width: 80%;
   margin: auto;
  }

  &__title {
   width: 100%;
   margin-bottom: 1rem;
  }

  &__list {
   grid-template-columns: 1fr;
  }

  &__drawer {
   position: static;
  }
 }

}

.pagination {
 padding-top: 3rem;

 .screen-reader-text {
  display: none;
 }

 .nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  text-align: center;
  gap: .5rem;
  @include setting.mobile {
   font-size: 1.2rem;
  }
 }

 .page-numbers {
  display: inline-block;
  padding: .5em;
 }

 a {
  &:hover {
   color: setting.color(pink) ;
  }
 }

 .current {
  width: 4.5rem;
  height: 4.5rem;
  background: url("../images/common/bg-pagenav.svg") no-repeat 50% 50% / cover;
  color: #fff;
  @include setting.mobile {
   width: 3.6rem;
   height: 3.6rem;
  }

 }

 .prev,
 .next {
  position: relative;
  &::before,
  &::after {
   content: "";
   position: absolute;
   top: 50%;
   width: 5px;
   height: 1px;
   border-radius: 9999px;
   background: #8D8D8D;
   transform-origin: 100% 50%;
   @include setting.moving-base;
  }
  &:hover {
   &::before,
   &::after {
    background: setting.color(pink);
   }
  }
 }

 .prev {
  &::before {
   transform: rotate(135deg);
   left: -1rem;
  }
  &::after {
   transform: rotate(-135deg);
   margin-top: -.05rem;
   left: -1rem;
  }
 }

 .next {
  &::before {
   transform: rotate(45deg);
   right: -1rem;
  }
  &::after {
   transform: rotate(-45deg);
   margin-top: -.05rem;
   right: -1rem;
  }
 }
}
*/
/*-----------------------------------

	$news

-----------------------------------*/
/*-----------------------------------

	$pickup

-----------------------------------*/
.pickup__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.4rem 4%;
}
@media screen and (max-width: 640px) {
  .pickup__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.pickup__unit {
  width: 22%;
}
@media screen and (max-width: 1024px) {
  .pickup__unit {
    width: 46%;
  }
}
@media screen and (max-width: 640px) {
  .pickup__unit {
    width: 100%;
  }
}
.pickup__thumbnail {
  aspect-ratio: 1;
  border-radius: 3rem;
  border: 2px solid #E881C9;
  overflow: hidden;
}
.pickup__thumbnail img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
}
@media screen and (max-width: 1024px) {
  .pickup__thumbnail {
    aspect-ratio: 335/226;
  }
}
.pickup__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 1rem;
}
@media screen and (max-width: 640px) {
  .pickup__meta {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding-top: 0.6em;
  }
}
.pickup__date {
  font-size: 2rem;
  font-weight: 700;
}
@media screen and (max-width: 640px) {
  .pickup__date {
    margin-right: 1.4rem;
  }
}
.pickup__title {
  font-size: 1.8rem;
  line-height: 1.6666666667;
  padding-top: 0.5rem;
}
.pickup__cate {
  margin-right: 0.5rem;
}
.pickup__cate span {
  display: inline-block;
  width: 10.9rem;
  border-radius: 10rem;
  text-align: center;
  font-size: 1.2rem;
  padding: 0.2em;
  background: #fff;
  border-width: 1px;
  border-style: solid;
}
.pickup__cate.cat-item-report span {
  border-color: #E881C9;
  color: #E881C9;
}
.pickup__cate.cat-item-event span {
  border-color: #27B9B9;
  color: #27B9B9;
}

/*-----------------------------------

	$news

-----------------------------------*/
/*-----------------------------------

	$category

-----------------------------------*/
.category__list {
  max-width: 88rem;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 2rem;
}
.category__list .cat-item {
  line-height: inherit;
}
.category__list .cat-item a {
  display: inline-block;
  width: 10.9rem;
  border-radius: 100px;
  text-align: center;
  font-size: 1.2rem;
  padding: 0.2em;
  background: #DBDBDB;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}
.category__list .cat-item a:hover {
  cursor: pointer;
  background: #c2c2c2;
}
.category__list .cat-item.cat-item-info a {
  background: #FFD5E7;
}
.category__list .cat-item.cat-item-exam a {
  background: #A3EBEB;
}
.category__list .cat-item.cat-item-important a {
  background: #D6BBED;
}
.category__list .cat-item.cat-item-report a {
  background: #FED5E7;
}
.category__list .cat-item.cat-item-event a {
  background: #A3EBEB;
}
.category__list .cat-item.cat-item-info a:hover {
  background: #ffa2ca;
}
.category__list .cat-item.cat-item-exam a:hover {
  background: #79e2e2;
}
.category__list .cat-item.cat-item-important a:hover {
  background: #be93e2;
}
.category__list .cat-item.cat-item-report a:hover {
  background: #fda3cb;
}
.category__list .cat-item.cat-item-event a:hover {
  background: #79e2e2;
}
@media screen and (max-width: 640px) {
  .category__list {
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 640px) {
  .category__list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto auto;
    grid-template-columns: auto auto;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

/*-----------------------------------

	$news

-----------------------------------*/
/*-----------------------------------

	$archive

-----------------------------------*/
.monthly {
  padding-bottom: 4rem;
  max-width: 88rem;
  margin-left: auto;
  margin-right: auto;
}
.monthly__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.monthly__title {
  width: 6em;
}
.monthly__list {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(7em, 1fr));
  gap: 1rem;
  text-align: center;
}
.monthly__list dl {
  position: relative;
}
.monthly__list dl:not(:nth-child(-n+6)):not(:last-child) {
  display: none;
}
.monthly__list dt {
  background: #DBDBDB;
  padding: 0.25em;
  position: relative;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}
.monthly__list dt::before, .monthly__list dt::after {
  content: "";
  display: inline-block;
  background: #8D8D8D;
  width: 0.7rem;
  height: 0.1rem;
  position: absolute;
  right: 0.8rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.monthly__list dt::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  margin-top: -0.05rem;
}
.monthly__list dt:hover {
  cursor: pointer;
  background: #c2c2c2;
}
.monthly__list dd span {
  position: relative;
}
.monthly__list dd span::before, .monthly__list dd span::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 5px;
  height: 1px;
  border-radius: 9999px;
  background: #8D8D8D;
  -webkit-transform-origin: 100% 50%;
          transform-origin: 100% 50%;
  right: 0.8rem;
}
.monthly__list dd span::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.monthly__list dd span::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-top: -0.05rem;
}
.monthly__list dd a {
  display: block;
  background: #F0F0F0;
  border-top: 1px solid #fff;
  padding: 0.5em;
  font-size: 1.2rem;
}
.monthly__list dd a:hover {
  background: #d7d7d7;
}
.monthly__drawer {
  position: absolute;
  width: 100%;
  top: 100%;
  z-index: 99;
  display: none;
}
.monthly__old li:nth-child(-n+6) {
  display: none;
}
.monthly__old li:not(:last-child) a::after {
  content: "年";
}
.monthly.sp {
  display: none;
}
@media screen and (max-width: 640px) {
  .monthly.pc {
    display: none;
  }
  .monthly.sp {
    display: block;
    padding-top: 4rem;
  }
  .monthly__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 80%;
    margin: auto;
  }
  .monthly__title {
    width: 100%;
    margin-bottom: 1rem;
  }
  .monthly__list {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
  .monthly__drawer {
    position: static;
  }
}

/*-----------------------------------

	$news

-----------------------------------*/
/*-----------------------------------

	$pagination

-----------------------------------*/
.pagination {
  padding-top: 3rem;
}
.pagination .screen-reader-text {
  display: none;
}
.pagination .nav-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  text-align: center;
  gap: 0.5rem;
}
@media screen and (max-width: 640px) {
  .pagination .nav-links {
    font-size: 1.2rem;
  }
}
.pagination .page-numbers {
  display: inline-block;
  padding: 0.5em;
}
.pagination a:hover {
  color: #E881C9;
}
.pagination .current {
  width: 4.5rem;
  height: 4.5rem;
  background: url("../images/common/bg-pagenav.svg") no-repeat 50% 50%/cover;
  color: #fff;
}
@media screen and (max-width: 640px) {
  .pagination .current {
    width: 3.6rem;
    height: 3.6rem;
  }
}
.pagination .prev,
.pagination .next {
  position: relative;
}
.pagination .prev::before, .pagination .prev::after,
.pagination .next::before,
.pagination .next::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 5px;
  height: 1px;
  border-radius: 9999px;
  background: #8D8D8D;
  -webkit-transform-origin: 100% 50%;
          transform-origin: 100% 50%;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}
.pagination .prev:hover::before, .pagination .prev:hover::after,
.pagination .next:hover::before,
.pagination .next:hover::after {
  background: #E881C9;
}
.pagination .prev::before {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  left: -1rem;
}
.pagination .prev::after {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  margin-top: -0.05rem;
  left: -1rem;
}
.pagination .next::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  right: -1rem;
}
.pagination .next::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-top: -0.05rem;
  right: -1rem;
}

/*-----------------------------------

	$news

-----------------------------------*/
/*-----------------------------------

	$post

-----------------------------------*/
.post__inner {
  width: 90%;
  max-width: 88rem;
  margin: 4.2rem auto 0;
}
@media screen and (max-width: 640px) {
  .post__inner {
    margin-top: 2rem;
  }
}
.post__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.post__date {
  width: 9rem;
}
@media screen and (max-width: 640px) {
  .post__date {
    width: 8rem;
  }
}
.post__cate span {
  display: inline-block;
  width: 10.9rem;
  border-radius: 100px;
  text-align: center;
  font-size: 1.2rem;
  padding: 0.2em;
  background: #DBDBDB;
}
.post__cate.cat-item-info span {
  background: #FFD5E7;
}
.post__cate.cat-item-exam span {
  background: #A3EBEB;
}
.post__cate.cat-item-important span {
  background: #D6BBED;
}
@media screen and (max-width: 640px) {
  .post__cate span {
    font-size: 1.1rem;
    padding: 0.1em;
  }
}
.post__title {
  color: #E881C9;
  font-size: 2.2rem;
  font-weight: 500;
}
.post__body h2, .post__body h3, .post__body h4, .post__body h5, .post__body h6 {
  margin: 0 0 1em;
}
.post__body h2 {
  font-size: 2rem;
}
.post__body h3 {
  font-size: 1.8rem;
}
.post__body h4 {
  font-size: 1.6rem;
}
.post__body h5 {
  font-size: 1.5rem;
}
.post__body h6 {
  font-size: 1.5rem;
}
.post__body p + p {
  margin-top: 1.5em;
}
.post__body ul li {
  list-style: disc;
  margin-left: 2rem;
}
.post__body ol li {
  list-style: decimal;
  margin-left: 2rem;
}
.post__body img {
  width: auto;
  max-width: 100%;
}
.post__body img.alignleft {
  float: left;
  margin-right: 2rem;
  margin-bottom: 2rem;
}
.post__body img.alignright {
  float: right;
  margin-bottom: 2rem;
  margin-left: 2rem;
}
.post__body img.aligncenter {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

/*-----------------------------------

    print - 印刷設定

-----------------------------------*/
@media print {
  [id=wrapper] {
    width: 1060px;
    overflow: hidden;
  }
  .header {
    position: static;
  }
}