@charset "utf-8";
#mv {  
	width: 1200px;
  height: 500px;
  margin: 0 auto;
  border-radius: 20px;
  /*box-shadow: 0 0 20px #f1f1f1;*/
  background: url("../images/top/mv.svg") 50% 70% no-repeat #fdfaf5;
}
#mv > h2 {
  padding-top: 70px;
  font-size: 3.3rem;
  font-weight: 500;
  font-family: var(--font-zenmaru);
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (max-width:768px) {
  #mv {  
    width: 100%;
    height: 50vw;
    margin: 0;
    border-radius: 0;
    background: url("../images/top/mv.svg") 50% 70% no-repeat #fdfaf5;
    background-size: contain;
  }
  #mv > h2 {
    padding-top: 7vw;
    font-size: 4vw;
  }
}

/***** swiper *****/
.swiper {
}
.swiper-slide {
  width: 22%!important;
  margin: 0 1.5%;
}
.swiper-slide > a {
  text-decoration: none;
  color: #000;
}
.swiper-slide > a > p:nth-of-type(1) {
  margin-top: 15px;
  font-weight: 700;
  font-family: var(--font-zenmaru);
}
.swiper-slide > a > p:nth-of-type(2) {
  margin-top: 15px;
  font-family: var(--font-zenmaru);
  text-align: right;
}
.swiper-slide > a > figure {
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
}
.swiper-slide > a > figure > img {
  width: 100%;
  height: 100%;
  border-radius: 10px;
  transition: 0.5s;
}
.swiper-slide > a > figure > img:hover {
  transform:scale(1.1,1.1);
}
.swiper-pagination-bullet-active {
  background: var(--base-color)!important;
}
.swiper-button-next,
.swiper-button-prev {
  color: var(--base-color)!important;
}
.swiper-button-next {
  right: 0!important;
}
.swiper-button-prev {
  left: 0!important;
}
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  margin-top: 20px;
  position: relative!important;
}
.swiper-button-prev, .swiper-button-next {
  display: grid!important;
  place-content: center!important;
  width: 6.4rem!important;
  height: 6.4rem!important;
  cursor: pointer!important;
  -webkit-transition: var(--transition)!important;
  transition: var(--transition)!important;
}
.swiper-button-prev::before, .swiper-button-next::before {
  position: absolute!important;
  top: 0!important;
  right: 0!important;
  bottom: 0!important;
  left: 0!important;
  content: ""!important;
  border-radius: 50%!important;  
  background: rgba(243,163,74,0.8);
}
.swiper-button-prev::after, .swiper-button-next::after {
  width: 1.2rem!important;
  height: 1.2rem!important;
  content: ""!important;
  border: solid #fff!important;
  border-width: 3px 3px 0 0!important;
}
.swiper-button-prev::after {
  margin-left: 0.4rem!important;
  -webkit-transform: rotate(-135deg)!important;
          transform: rotate(-135deg)!important;
}
.swiper-button-next::after {
  margin-right: 0.4rem!important;
  -webkit-transform: rotate(45deg)!important;
          transform: rotate(45deg)!important;
}
.swiper-button-disabled {
  pointer-events: none!important;
  opacity: 0!important;
}
@media screen and (max-width:768px){
  .swiper {
    padding: 0 15px!important;
  }
  .swiper-slide {
    width: 96%!important;
    margin: 0 2%;
  }
  .swiper-button-prev, .swiper-button-next {
    width: 4rem!important;
    height: 4rem!important;
  }
  .swiper-button-prev::after, .swiper-button-next::after {
    width: 0.8rem!important;
    height: 0.8rem!important;
  }
  .swiper-button-next {
    right: 10px!important;
  }
  .swiper-button-prev {
    left: 10px!important;
  }
}

/***** タイトル *****/
.ttl {
  margin-bottom: 20px;
  font-size: 3rem;
  font-weight: 500;
  font-family: var(--font-zenmaru);
  letter-spacing: 0.1em;
}
.ttl > span {
  margin-left: 20px;
  font-size: 2.2rem;
  color: var(--base-color);
}
@media screen and (max-width:768px){
  .ttl {
    margin-bottom: 20px;
    font-size: 2.2rem;
    text-align: center;
  }
  .ttl > span {
    margin-left: 0;
    font-size: 1.6rem;
    display: block;
  }
  }


/***** お知らせ *****/
#new {
  width: 1200px;
  margin: 50px auto 0;
}
#new > h3 {
}
#new dl {
  padding-top: 20px;
  border-top: #ddd 1px solid;
}
#new dl dt {
  width: 15.5em;
  float: left;
  clear: left;
  display: flex;
  align-items: center;
}
#new dl dt span {
  width: 100px;
  margin-left: 2.5em;
  padding: 5px 0;
  font-size: 1.2rem;
  font-weight: 500;
  text-align: center;
  line-height: 1;
  color: #fff;
  background: var(--base-color);
  border-radius: 100px;
}
#new dl dd {
  margin-bottom: 20px;
  padding: 0 0 20px 13em;
  border-bottom: #ddd 1px solid;
}
#new dl dd:last-child {
  margin-bottom: 0;
}
#new dl dd a {
  color: #333;
}
@media screen and (max-width:768px){
  #new {
    width: 100%;
    margin: 30px 0 0;
    padding: 0 15px;
  }
  #new dl {
    padding-top: 20px;
    border-top: #ddd 1px solid;
  }
  #new dl dt {
    width: 100%;
    float: none;
  }
  #new dl dt span {
    width: 100px;
    margin-left: 20px;
    padding: 5px 0;
  }
  #new dl dd {
    padding: 5px 0 20px;
  }
  #new dl dd:last-child {
    margin-bottom: 0;
  }
}

/***** column *****/
#column {
  width: 1200px;
  margin: 70px auto 0;
}
#column .ttl {
  margin-bottom: 40px;
  text-align: center;
}
#column .ttl br {
  display: none;
}
#column .ttl > span {
  margin: 0;
  display: block;
}
@media screen and (max-width:768px){
  #column {
    width: 100%;
    margin: 50px 0 0;
  }
  #column .ttl {
    margin-bottom: 30px;
  }
  #column .ttl br {
    display: block;
  }
  #column .ttl > span {
    margin: 0;
    display: block;
  }
}

/***** 賛助会員 *****/
#member {
  width: 1200px;
  margin: 70px auto 0;
  position: relative;
}
#member .ttl {
  margin-left: 40px;
  padding-top: 20px;
  position: relative;
  z-index: 2;
}
#member .ttl > span {
  margin: 0;
  display: block;
  color: var(--sub-color1);
}
#member_ttl_bk {
  width: 200px;
  height: 17.8em;
  background: #F1FBDB;
  border-radius: 10px;
  position: absolute;
  top: 0;
  z-index: 1;
}
#bnr {
/*  margin: 40px 0 0 220px;*/
		margin-top: 40px;
  display: flex;
  flex-wrap: wrap;
}
#bnr li {
  width: 230px;
  /*height: 70px;*/
  margin-right: 10px;
  margin-bottom: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  /*background: #f5f5f5;*/
	border: 1px solid #e1e1e1;
}
#bnr li:nth-child(5n) {
  margin-right: 0;
}
@media screen and (max-width:768px){
  #member {
    width: 100%;
    margin: 30px auto 0;
    position: relative;
  }
  #member .ttl {
    margin-left: 0;
    padding-top: 0;
  }
  #member_ttl_bk {
    display: none;
  }
  #bnr {
    margin: 30px 0 0 0;
    padding: 0 15px;
    display: flex;
    flex-wrap: wrap;
  }
  #bnr li {
    width: 49%;
    /*height: 50px;*/
    margin-right: 2%;
    margin-bottom: 2%;
  }
  #bnr li img {
    width: 230px;
  }
  #bnr li:nth-child(2n) {
    margin-right: 0;
  }
  #bnr li:nth-child(5n) {
    margin-right: auto;
}
}
