.p-mainv__title img{
  width: 100%;
}

.p-navi {
  padding: 55px 0 65px
}

@media screen and (min-width:768px) {
  .p-navi {
    padding: 65px 0 85px
  }
}

.p-navi .p-navi__list {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 12px 10px
}

@media screen and (min-width:768px) {
  .p-navi .p-navi__list {
    gap: 0;
    width: 104%;
    margin: 0 -2% -20px
  }
}

@media screen and (min-width:1081px) {
  .p-navi .p-navi__list {
    width: 101%;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0;
    margin: 0 -1% -20px
  }
}

.p-navi .p-navi__item a {
  position: relative;
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
  background: #0024ac;
  padding: 14px 0;
  text-align: center;
  border-radius: 5em;
  width: 100%
}

@media screen and (min-width:768px) {
  .p-navi .p-navi__item a {
    font-size: 15px;
    padding: 17px 0
  }
}

@media screen and (min-width:768px) {
  .p-navi .p-navi__item a:hover {
    opacity: .8
  }
}

.p-navi .p-navi__item a.__scroll::before {
  content: "";
  position: absolute;
  right: 1em;
  top: calc(50% - 3px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 4px 0 4px;
  border-color: #fff rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
}

@media screen and (min-width:768px) {
  .p-navi .p-navi__item a.__scroll::before {
    right: 1.5em;
    top: calc(50% - 4px);
    border-width: 8px 6px 0 6px
  }
}

.p-navi .p-navi__item.__text {
  width: calc((100% - 10px)/2)
}

@media screen and (min-width:768px) {
  .p-navi .p-navi__item.__text {
    width: 46%;
    margin: 0 2% 20px
  }
}

@media screen and (min-width:992px) {
  .p-navi .p-navi__item.__text {
    max-width: 240px;
    width: 18%;
    margin: 0 1% 0
  }
}

@media screen and (min-width:1081px) {
  .p-navi .p-navi__item.__text {
    width: 240px;
    margin: 0 1% 0
  }
}

.p-navi .p-navi__item.__margin {
  margin: 0 15px 0 1%
}

@media screen and (min-width:768px) {
  .p-navi .p-navi__item.__margin {
    margin: 0 20px 0 2%
  }
}

@media screen and (min-width:1081px) {
  .p-navi .p-navi__item.__margin {
    margin: 0 5px 0 20px
  }
}

@media screen and (min-width:1441px) {
  .p-navi .p-navi__item.__margin {
    margin: 0 10px 0 40px
  }
}

.p-navi .p-navi__item.__img {
  width: 60px
}

.p-navi .p-navi__item.__img a {
  background: none;
  border-radius: 0;
  padding: 0
}

.p-news__list {
  background: #fff;
  border-radius: 3px;
  padding: 0 25px;
  border: 1px solid #ddd
}

@media screen and (min-width:768px) {
  .p-news__list {
    border-radius: 6px;
    padding: 35px 60px;
    border: none
  }
}

.p-news__list .p-news__item {
  padding: 18px 0 22px
}

@media screen and (min-width:768px) {
  .p-news__list .p-news__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 25px 0
  }
}

.p-news__list .p-news__item+.p-news__item {
  border-top: 1px dotted #0024ac
}

.p-news__list .p-news__item_date {
  line-height: 1.6;
  display: block;
  margin-bottom: 5px
}

@media screen and (max-width:768px) {
  .p-news__list .p-news__item_date {
    font-size: 14px
  }
}

@media screen and (min-width:768px) {
  .p-news__list .p-news__item_date {
    width: 135px
  }
}

.p-news__list .p-news__item_text {
  font-size: 14px;
  display: block
}

@media screen and (max-width:768px) {
  .p-news__list .p-news__item_text {
    line-height: 1.5
  }
}

@media screen and (min-width:768px) {
  .p-news__list .p-news__item_text {
    width: calc(100% - 135px);
    font-size: 16px
  }
}

.p-info__list {
  background: #fff;
  border-radius: 3px;
  border: 2px solid #0024ac
}

@media screen and (min-width:768px) {
  .p-info__list {
    border-radius: 6px
  }
}

.p-info__inner {
  padding: 0 20px
}

@media screen and (min-width:641px) {
  .p-info__inner {
    padding: 10px 30px
  }
}

@media screen and (min-width:768px) {
  .p-info__inner {
    padding: 15px 40px
  }
}

@media screen and (min-width:1081px) {
  .p-info__inner {
    padding: 20px 60px
  }
}

.p-info__title {
  background: #0024ac;
  color: #fff;
  text-align: center;
  padding: 12px 0 14px;
  font-weight: 700;
  font-size: 18px;
  letter-spacing: .08em
}

@media screen and (min-width:768px) {
  .p-info__title {
    padding: 6px 0 8px;
    font-size: 24px
  }
}

.p-info__item {
  padding: 15px 0 18px
}

@media screen and (min-width:641px) {
  .p-info__item {
    padding: 15px 0 18px
  }
}

@media screen and (min-width:992px) {
  .p-info__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 25px 0
  }
}

.p-info__item+.p-info__item {
  border-top: 1px dotted #0024ac
}

.p-info__item_title {
  letter-spacing: .08em;
  line-height: 1.5;
  font-weight: 700;
  padding: 0;
  width: 100%;
  margin-bottom: 8px
}

@media screen and (min-width:768px) {
  .p-info__item_title {
    line-height: 1.6
  }
}

@media screen and (min-width:992px) {
  .p-info__item_title {
    width: 330px;
    font-size: 22px;
    padding: 0 25px;
    margin-bottom: 0
  }
}

.p-info__item_text {
  width: 100%;
  font-size: 14px;
  display: block
}

@media screen and (max-width:768px) {
  .p-info__item_text {
    line-height: 1.5
  }
}

@media screen and (min-width:992px) {
  .p-info__item_text {
    width: calc(100% - 330px);
    font-size: 16px
  }
}

.p-recently {
  padding-bottom: 75px
}

@media screen and (min-width:768px) {
  .p-recently {
    padding-bottom: 100px
  }
}

.p-recently__item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: #fff;
  border-radius: 3px;
  padding: 25px;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.p-recently__item a.is-link:hover .p-recently__item_img img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.p-recently__item a.is-nokink {
  pointer-events: none;
  background-color: #f7f7f7
}

@media screen and (min-width:768px) {
  .p-recently__item a {
    border-radius: 6px;
    padding: 15px;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
  }
}

.p-recently__item+.p-recently__item {
  margin-top: 10px
}

.p-recently__item_img {
  position: relative;
  padding-top: 45vw;
  display: block;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  overflow: hidden
}

@media screen and (min-width:768px) {
  .p-recently__item_img {
    width: 250px;
    height: 150px;
    padding-top: 0
  }
}

.p-recently__item_img img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 3px;
  -webkit-transition: -webkit-transform .3s ease;
  transition: -webkit-transform .3s ease;
  transition: transform .3s ease;
  transition: transform .3s ease, -webkit-transform .3s ease
}

@media screen and (min-width:768px) {
  .p-recently__item_img img {
    border-radius: 6px
  }
}

.p-recently__item_detail {
  padding: 0
}

@media screen and (min-width:768px) {
  .p-recently__item_detail {
    padding: 0 30px;
    width: calc(100% - 250px)
  }
}

@media screen and (min-width:992px) {
  .p-recently__item_detail {
    padding: 0 50px
  }
}

.p-recently__item_title {
  line-height: 1.5;
  margin-top: 20px
}

@media screen and (min-width:992px) {
  .p-recently__item_title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 0
  }
}

.p-recently__item_title span {
  font-size: 18px;
  font-weight: 700;
  display: block
}

@media screen and (min-width:768px) {
  .p-recently__item_title span {
    font-size: 24px
  }
}

.p-recently__item_title time {
  color: #ff498c;
  border: 1px solid #ff498c;
  font-size: 12px;
  padding: 0 10px 0 15px;
  border-radius: 3em;
  display: inline-block;
  text-align: center;
  margin: 12px 0;
  letter-spacing: .08em
}

@media screen and (min-width:992px) {
  .p-recently__item_title time {
    min-width: 12.5em;
    padding: 0 0 0 5px;
    font-size: 14px;
    margin: 10px 0 0 25px
  }
}

.p-recently__item_text {
  line-height: 1.5;
  color: #666;
  font-size: 14px
}

@media screen and (min-width:768px) {
  .p-recently__item_text {
    font-size: 16px
  }
}

.p-program__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -2% -25px
}

@media screen and (min-width:768px) {
  .p-program__list {
    margin: 0 -1.5% -40px
  }
}

@media screen and (min-width:1081px) {
  .p-program__list {
    margin: 0 -1% -40px
  }
}

.p-program__item {
  width: 46%;
  margin: 0 2% 25px
}

@media screen and (min-width:768px) {
  .p-program__item {
    width: 30.333%;
    margin: 0 1.5% 40px
  }
}

@media screen and (min-width:1081px) {
  .p-program__item {
    width: 23%;
    margin: 0 1% 40px
  }
}

.p-program__item_img {
  border: 1px solid #ddd;
  overflow: hidden;
  border-radius: 3px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center
}

@media screen and (min-width:768px) {
  .p-program__item_img {
    border-radius: 6px
  }
}

.p-program__item_title {
  font-size: 15px;
  margin: 14px 0 10px;
  line-height: 1.5
}

@media screen and (max-width:768px) {
  .p-program__item_title br {
    display: none
  }
}

@media screen and (min-width:768px) {
  .p-program__item_title {
    font-size: 20px;
    margin: 15px 0 8px
  }
}

.p-program__item_text {
  color: #666;
  font-size: 14px;
  line-height: 1.5
}

@media screen and (max-width:768px) {
  .p-program__item_text {
    letter-spacing: 0
  }
}

@media screen and (min-width:768px) {
  .p-program__item_text {
    font-size: 15px
  }
}

.p-program__item_backnumber {
  color: #ff498c;
  font-weight: 700;
  display: inline-block;
  margin-top: 8px;
  font-size: 13px
}

@media screen and (min-width:768px) {
  .p-program__item_backnumber {
    font-size: 15px;
    margin-top: 15px
  }
}

@media screen and (min-width:641px) {
  .p-sns__box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
}

.p-sns__twitter {
  overflow: hidden;
  border-radius: 3px;
  margin-bottom: 30px
}

@media screen and (min-width:641px) {
  .p-sns__twitter {
    width: 46.3%;
    margin-bottom: 0
  }
}

@media screen and (min-width:768px) {
  .p-sns__twitter {
    border-radius: 6px
  }
}

.p-sns__banner {
  width: 100%
}

.p-sns__banner ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px 20px
}

.p-sns__banner ul li {
  width: 100%
}

@media screen and (min-width:768px) {
  .p-sns__banner ul li {
    width: calc((100% - 20px) / 2)
  }
}