@charset "utf-8";
/* 共通 */
.section-py{
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.lh-22{
  line-height: 2.2;
}
@media all and (min-width: 768px) {
  .section-py{
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
  }
}


.fv-wrap{
  position: relative;
}
.scrolldown{
position:absolute;
bottom:0px;
left:50%;
}
.scrolldown:before {
  content: "";
  position: absolute;
  bottom:0;
  left:-4px;
width:10px;
height:10px;
border-radius: 50%;
background:#D6A91F;
animation:
  circlemove 2.0s ease-in-out infinite,
  cirlemovehide 2.0s ease-out infinite;
  z-index: 1;
}

@keyframes circlemove{
    0%{bottom:45px;}
   100%{bottom:-5px;}
}

@keyframes cirlemovehide{
    0%{opacity:0}
   50%{opacity:1;}
  80%{opacity:0.9;}
100%{opacity:0;}
}

.scrolldown:after{
content:"";
position: absolute;
bottom:0;
left:0;
width:2px;
height: 50px;
background:#fff;
}
/* スライダー */
.fv-wrap {
  overflow: hidden;
  height: calc(100svh - 42.5px);/* CSS変数をサポートしていないブラウザ用。"- 42.5px"はヘッダーの高さ。ファーストビューの上にヘッダー分の余白を設けない場合は引き算の必要なし。 */
  min-height: 300px;
}
.mainslider, .mainslider2, .fv-wrap .splide__track {
    height: 100%;
}
.splide__slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}
.fv-1 .fv-copy, .fv-3 .fv-copy{
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  width: 100%;
  z-index: 10;
}
.fv-2 .fv-copy {
  position: relative;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  width: 100%;
  text-align: left;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-right: 1.2rem;
  padding-left: 1.2rem;
  z-index: 10;
}
.fv-1 .fv-subtitle, .fv-2 .fv-subtitle, .fv-3 .fv-subtitle{
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}
.fv-1 .fv-title{
  font-size: 4rem;
  font-weight: 700;
  margin-bottom: 1.25rem;
  line-height: 1.14;
}
.fv-2 .fv-title .arial{
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 1.25rem;
  line-height: 1.14;
}

.fv-1 .fv-desc1{
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}
.fv-1 .fv-desc2, .fv-3 .fv-desc1{
  font-size: 1.25rem;
  letter-spacing: 0.02em;
}
.fv-2 .fv-title .arial{
  padding-right: 1.5rem;
}
.fv-2 .fv-title{
  font-size: 1.1375rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  margin-bottom: 8px;
}
.fv-2 .fv-desc1{

}
.fv-3 .fv-title{
  font-size: 3rem;
  font-weight: 900;
}
.eventslider .splide__track{
  position: relative;
  z-index: 100;
}
.mainslider2::before{
  content: "";
  position: absolute;
  top: 3%;
  right: 0;
  background: url(../images/top/fv-icon2.png) no-repeat center center / contain;
  width: 30%;
  height: 30%;
  z-index: 1;
}
.mainslider2::after{
  content: "";
  position: absolute;
  bottom: 2%;
  left: 0%;
  background: url(../images/top/fv-icon3.png) no-repeat center center / contain;
  width: 30%;
  height: 30%;
  z-index: 1;
}
.fv-icon{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    width: 200px;
    height: 200px;
    background: url(../images/top/fv-icon1.png) no-repeat center center / contain;
    z-index: 1;
}
.fv-2 .fv-icon{
  top: unset;
  bottom: 15px;
  right: 0;
  left: unset;
  transform: unset;
  -webkit-transform: unset;
}
@media all and (min-width: 576px) {
  .fv-3 .fv-title{
    font-size: 4rem;
  }
}

@media all and (min-width: 768px) {
}
@media all and (min-width: 992px) {
  .fv-wrap {
    height: calc(100svh - 97px);/* "- 97px"はヘッダーの高さ */
  }
  .fv-1 .fv-subtitle, .fv-2 .fv-subtitle, .fv-3 .fv-subtitle{
    font-size: 1.75rem;
  }
  .fv-1 .fv-title{
    font-size: 8.5rem;
  }
  .fv-1 .fv-desc1{
    font-size: 1.75rem;
  }
  .fv-2 .fv-title .arial{
    font-size: 5rem;
    padding-right: 3rem;
  }
  .fv-2 .fv-title{
    font-size: 2.5rem;
  }
  .fv-3 .fv-title{
    font-size: 5rem;
  }
  .fv-3 .fv-title{
    font-size: 7.5rem;
  }
  .fv-1 .fv-desc2, .fv-2 .fv-desc1, .fv-3 .fv-desc1{
    font-size: 1.75rem;
  }
  .fv-2 .fv-copy {
    padding-right: var(--bs-gutter-x, 0.75rem);
    padding-left: var(--bs-gutter-x, 0.75rem);
  }

}
@media all and (min-width: 1400px) {
  .scrolldown:after{
    height: 100px;
  }
  @keyframes circlemove{
    0%{bottom:95px;}
    100%{bottom:-5px;}
  }
  
  @keyframes cirlemovehide{
    0%{opacity:0}
    50%{opacity:1;}
    80%{opacity:0.9;}
    100%{opacity:0;}
  }
}
@media all and (max-width: 360px) {
  .fv-1 .fv-desc2, .fv-3 .fv-desc1{
    font-size: 1rem;
  }
}

/* //スライダー */

/* イベント案内 */
.sec-event.lazyloaded {
  background: url(../images/top/bg-event.jpg) no-repeat center center/cover;
  }
  .sec-event{
    position: relative;
  }
  .event-container{
    max-width: 660px;
    margin-left: auto;
    margin-right: auto;
    padding-right: var(--bs-gutter-x, 0.75rem);
    padding-left: var(--bs-gutter-x, 0.75rem);
  }
  .event-card-item{
    transition: .3s;
  }
  .event-card-item.is-active{
    position: relative;
  }
  .event-card-inner{
    background-color: #fff;
    padding: 1.5rem 10px;
    height: 100%;
    position: relative;
    bottom: 0;
    right: 0;
    transition: .3s;
  }
  .event-card-item.is-active .event-card-inner{
    bottom: 10px;
    right: 10px;
  }
  .event-card-item.is-active::after{
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: calc(100% - 15px);
    background-color: #D6A920;
    z-index: -1;
  }
  .event-card-inner > *{
    padding-left: 10px;
    padding-right: 10px;
  }
  .event-card-ttl{
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 10px;
  }
  .event-card-dl dt{
    width: 70px;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
    border: 1px solid #D6A920;
    color: #D6A920;
    padding: 4px;
    border-radius: 18px;
    margin-bottom: 5px;
  }
  .event-card-dl dd{
    font-size: 14px;
    padding: 4px 4px 4px 8px;
    margin-bottom: 15px;
  }
  .event-card-dl dd .event_lecturer_desc{
    font-size: 10px;
  }
  .event_application{
    text-align: center;
    display: inline-block;
    padding: 9px;
    position: relative;
    font-weight: 700;
    letter-spacing: 0.05em;
    border-radius: 32px;
    width: 210px;
    max-width: 100%;
  }
  .event_application{
    border: 1px solid #D6A920;
    color: #D6A920;
  }
  .event_application:hover{
    color: #D6A920;
  }
  .event_application::before{
    content: "";
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
    width: 20px;
    height: 4px;
    background: url(../images/common/event-arrow.svg) no-repeat center center/contain;
  }
  .sec-event .splide__pagination{
    display: block!important;
    text-align: center;
    margin-top: 30px;
  }
  .sec-event .splide__pagination__page {
  background-color: #fff;
  height: 8px;
  width: 8px;
  border: 1px solid #D6A920;
  padding: 0;
  border-radius: 50%;
}
.sec-event .splide__pagination__page.is-active {
  background-color: #D6A920;
  opacity: 1;
}
.sec-event .splide__pagination li {
  margin-left: 5px;
  margin-right: 5px;
}
.event-card-thumbwrap{
  text-align: center;
  margin-bottom: 10px;
}
.eventslider  .splide__track{
  overflow: unset;
}
@media all and (min-width: 576px) {
  .event-card-inner{
    display: flex;
  }
  .event-card-inner{
    padding: 1.5rem;
  }
  .event-card-dl{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .event-card-dl dt{
    width: 70px;
    text-align: center;
  }
  .event-card-dl dd{
    width: calc(100% - 70px);
  }
  .event-card-thumbwrap{
    width: 37.5%;
  }
  .event-card-desc{
    width: 62.5%;
  }
  .event-card-dl dd{
    margin-bottom: 0.5rem;
  }
}
@media all and (min-width: 768px) {
}
@media all and (min-width: 992px) {
  .event-container{
    max-width: 1670px;
  }
  .event-card-item.is-active{
    padding-right: 0;
  }
  .event-card-item.is-active .event-card-inner{
    bottom: 15px;
    right: 15px;
  }
}
@media all and (min-width: 1200px) {
}
@media all and (min-width: 992px) and (max-width: 1199px) {
  .event-card-dl{
    display: block;
  }
  .event-card-dl dd{
    width: auto;
  }
  .event_application::before{
    right: 8px;
  }
  .event-card-inner {
    padding: 1.5rem 10px;
}
}
/* イベント案内 */

/* EO北陸について */
.sec-about.lazyloaded {
  background: url(../images/top/bg-about.jpg) no-repeat center center/cover;
}
.sec-about{
  position: relative;
  z-index: 10;
}
.sec-about::before{
  content: "";
  position: absolute;
  left: -15px;
  top: 0px;
  background: url(../images/top/event-deco.png) no-repeat center center/contain;
  width: 70vw;
  height: 33vw;
}
.sec-about::after{
  content: "";
  position: absolute;
  right: -57px;
  bottom: -80px;
  background: url(../images/top/about-deco.png) no-repeat center center / contain;
  width: 75vw;
  height: 36vw;
}
.sec-about-img2{
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  width: 40vw;
}
.sec-about .ttl-pattern_1.text-white::before {
  display: none;
}
.sec-about-img1{
  padding-top: 15vw;
  position: relative;
  z-index: 20;
}
.sec-about-desc{
  line-height: 2.2;
}
@media all and (min-width: 576px) {
  .sec-about::before{
    left: -50px;
    top: -8vw;
  }
  .sec-about::after{
    bottom: -130px;
    width: 68vw;
    height: 32.5vw;
  }
  .sec-about-img1{
    padding-top: 5rem;
  }
  .sec-about-img2{
    width: 29.67vw;
  }
}
@media all and (min-width: 768px) {
}
@media all and (min-width: 992px) {
  .sec-about::before {
    top: -12vw;
  }
}
@media all and (min-width: 1200px) {
  .sec-about .container{
    padding-top: 6.25rem;
  }
  .sec-about::before{
    top: -10vw;
  }
  .sec-about::after{
    bottom: -230px;
  }
}

@media all and (min-width: 1400px) {
  .sec-about .row{
    margin-left: -30px;
    margin-right: -30px;
  }
  .sec-about .row > *{
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media all and (min-width: 1600px) {
  .sec-about::before{
    top: -15vw;
  }
}
/* EO北陸について */

/* 会長メッセージ */
.sec-message.lazyloaded {
  background: url(../images/top/bg-message.jpg) no-repeat center center/cover;
}
.sec-message{
  position: relative;
}
.sec-message-img{
  position: relative;
  z-index: 20;
}
.sec-message-img::before{
  content: "";
  position: absolute;
  left: -161px;
  bottom: -233px;
  background: url(../images/top/message-deco.png) no-repeat center center / contain;
  width: 431px;
  height: 322px;
  z-index: -1;
}
.sec-message-chairman{
  margin-bottom: 2.5rem;
}
.sec-message-chairman-kana{

}
/* 会長メッセージ */
.sec-message .ttl-pattern_1::before {
  display: none;
}
.sec-message-chairman-kana{
  font-size: 1.375rem;
}
.sec-message-chairman-name{
  font-size: 2rem;
  font-weight: 700;
}
.sec-message-chairman-record{
  font-size: 1.375rem;
  font-weight: 700;
}
@media all and (min-width: 576px) {
}
@media all and (min-width: 768px) {
}
@media all and (min-width: 992px) {
}
@media all and (min-width: 1200px) {
}
@media all and (min-width: 1400px) {
}


/* 活動紹介 */
.sec-activities{
  position: relative;
}
.sec-activities::before{
  content: "";
  position: absolute;
  top: 60px;
  left: -20px;
  width: 155px;
  height: 120px;
  background: url(../images/top/activities-deco1.png) no-repeat center center / contain;
}
.sec-activities::after{
  content: "";
  position: absolute;
  top: -20px;
  right: -27px;
  width: 210px;
  height: 124px;
  background: url(../images/top/activities-deco2.png) no-repeat center center / contain;
  z-index: -1;
}
.sec-activities-title{
  font-size: 2.25rem;
  font-weight: 700;
  margin-bottom: 2rem;
}
.sec-activities .sec-activities-containerwrap:not(:last-of-type){
  margin-bottom: 4rem;
}
.sec-activities-img{
  position: relative;
}
.sec-activities-img1::before{
  content: "";
  position: absolute;
  bottom: -300px;
  right: -115px;
  width: 66vw;
  height: 31.5vw;
  background: url(../images/top/activities-deco3.png) no-repeat center center / contain;
  z-index: -1;
}
.sec-activities-containerwrap{
  position: relative;
}
.sec-activities-containerwrap2::before {
  content: "";
  position: absolute;
  bottom: -120px;
  right: -20px;
  width: 32vw;
  height: 27vw;
  background: url(../images/top/activities-deco2.png) no-repeat center center / contain;
  z-index: -1;
}
.sec-activities-containerwrap3::before {
  content: "";
  position: absolute;
  top: -240px;
  left: -130px;
  width: 31.8vw;
  height: 35.6vw;
  background: url(../images/top/activities-deco4.png) no-repeat center center / contain;
  z-index: -1;
}
.sec-activities-containerwrap4::before {
  content: "";
  position: absolute;
  top: 0px;
  right: -80px;
  width: 34vw;
  height: 48vw;
  background: url(../images/top/activities-deco5.png) no-repeat center center / contain;
  z-index: -1;
}
.sec-activities-containerwrap5::before {
  content: "";
  position: absolute;
  top: -30vw;
  left: -15vw;
  width: 79.5vw;
  height: 43vw;
  background: url(../images/top/activities-deco6.png) no-repeat center center / contain;
  z-index: -1;
}
.sec-activities-img5::before{
  content: "";
  position: absolute;
  bottom: -320px;
  right: -456px;
  width: 1339px;
  height: 639px;
  background: url(../images/top/activities-deco7.png) no-repeat center center / contain;
  z-index: -1;
}
@media all and (min-width: 576px) {
}
@media all and (min-width: 768px) {
  .sec-activities::before{
    top: 60px;
    left: -40px;
    width: 355px;
    height: 276px;
  }
  .sec-activities::after{
    top: -100px;
    right: -57px;
    width: 410px;
    height: 324px;
  }
}
@media all and (min-width: 992px) {
  .sec-activities-title{
    margin-bottom: 3.75rem;
  }
  .sec-activities-img1, .sec-activities-img3, .sec-activities-img5{
    right: 0;
  }
  .sec-activities-img2, .sec-activities-img4{
    left: 0;
  }
  .sec-activities-img{
    position: absolute;
    top: 50%;
    width: 55vw;
    transform: translateY(-50%);
    max-width: 1058px;
  }
  .sec-activities-img img{
    box-shadow: 0 0 12px rgba(128, 128, 128, 0.2);
  }
  .sec-activities-item{
    max-width: 490px;
  }
  .sec-activities-img1::before{
    content: "";
    position: absolute;
    bottom: -350px;
    right: -115px;
    width: 66vw;
    height: 31.5vw;
    background: url(../images/top/activities-deco3.png) no-repeat center center / contain;
    z-index: -1;
  }
  .sec-activities-containerwrap2::before{
    bottom: -220px;
    right: -220px;
    width: 32vw;
    height: 27vw;
  }
}
@media all and (min-width: 1200px) {
  .sec-activities::before{
    top: 100px;
    left: -40px;
    width: 455px;
    height: 376px;
  }
  .sec-activities::after{
    top: -100px;
    right: -57px;
    width: 610px;
    height: 524px;
  }
  .sec-activities-img1::before{
    bottom: -300px;
  }
  .sec-activities .sec-activities-containerwrap:not(:last-of-type){
    margin-bottom: 8.3vw;
  }
  .sec-activities .sec-activities-containerwrap.sec-activities-containerwrap3{
    margin-bottom: 10vw;
  }
  .sec-activities .sec-activities-containerwrap.sec-activities-containerwrap4{
    margin-bottom: 11vw;
  }
  .sec-activities-containerwrap4::before {
    top: -110px;
  }
}
@media all and (min-width: 1400px) {
  .sec-activities-containerwrap3::before {
    top: -440px;
    left: -230px;
    width: 31.8vw;
    height: 35.6vw;
  }
  .sec-activities .sec-activities-containerwrap.sec-activities-containerwrap5 {
    margin-bottom: 3vw;
}
}
@media all and (min-width: 1920px) {
  .sec-activities .sec-activities-containerwrap:not(:last-of-type) {
    margin-bottom: 10rem;
}
.sec-activities .sec-activities-containerwrap.sec-activities-containerwrap2{
  margin-bottom: 11vw;
}
.sec-activities .sec-activities-containerwrap.sec-activities-containerwrap3{
  margin-bottom: 11vw;
}
.sec-activities .sec-activities-containerwrap.sec-activities-containerwrap4{
  margin-bottom: 12vw;
}
}

/* 活動紹介 */

/* 活動報告 */
.sec-news.lazyloaded {
  background: url(../images/top/bg-news.jpg) no-repeat center center/cover;
}
.sec-news-wrap{
  padding: 3.75rem 1.5rem;
}
.newsslider img{
  display: block;
  margin-top: -1px;
}
@media all and (min-width: 576px) {
  .sec-news-wrap{
    padding: 3.75rem 3.125rem;
  }
}
/* 活動報告 */

@media all and (min-width: 576px) {
}
@media all and (min-width: 768px) {
}
@media all and (min-width: 992px) {
}
@media all and (min-width: 1200px) {
}
@media all and (min-width: 1400px) {
}