/*----------------------------------------------------------*/
/* header
/*----------------------------------------------------------*/

#header {
    color: var(--dark-gray);
    text-align: center;
    position: sticky;
    top: 25px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 5px;
    margin-left: 15px;
    margin-right: 5px;
    padding: 20px;
    z-index: 9999;
    transition: all 0.2s linear;
}
@media screen and (max-width: 780px) {
    #header {
        margin-left: 6.25%;
        margin-right: 6.25%;
        position: relative;
        margin-top: 11.0vw;
        padding: 0;
        top: 0;
    }
}

#header.scroll {
    background-color: var(--off-white);
    /* background-color: rgba(253, 252, 245, 0.2);
    backdrop-filter: blur(50px);
    -webkit-backdrop-filter: blur(50px); */
    border-radius: 20px;
    margin-left: 5px;
    padding: 20px 20px 20px 30px;
    top: 5px;
}

@media screen and (max-width: 780px) {
    #header.scroll {
        background: none;
    }
}

header>nav{
    display: flex;
    align-items: center;
    position: relative;
    gap: 20.58px;
}

@media screen and (max-width: 780px) {
    .nav-left {
        display: none;
    }
}


/******** nav-top ナビメニュー ********/

.nav-top{
    font-size: 1.4rem;
    margin-bottom: 23px;
    display: flex;
    font-family: 'Noto_Sans_JP';
    font-weight: 700;
    /* justify-content: space-between; */
    justify-content: flex-end;
    gap: 20px;
    transition: all 0.2s linear;
}

#header.scroll .nav-top{
    margin-bottom: 15px;
    gap: 15px;
}

.nav-top>div{
    display: flex;
    align-items: center;
    gap: 30px;
}

.nav-top .font-size{
    display: flex;
    align-items: center;
    gap: 5px;
}

.nav-top .background{
    display: flex;
    align-items: center;
    gap: 10px;
}

.nav-top .font-size p{
    margin-right: 5px;
}

.nav-top button {
    border-radius: 5px;
    padding: 4px 9px;
}

.nav-top .btn-normal{
    background-color: var(--primary-green);
    border: solid 1px var(--primary-green);
    color: #fff;
}

.nav-top .btn-big{
    border: solid 1px var(--gray);
    background-color: #fff;
}

.nav-top .background button{
    border-radius: 5px;
    padding: 5px 10px;
    color: #fff;
    background-color: var(--dark-gray);
}

/* ダークモード */
.dark-mode{
    background-color: #000 !important;
    color: #fff !important;
}

/******** nav-top サーチフォーム等 ********/

.search_form{
    position: relative;
    /* margin: auto; */
    background-color: var(--pale-gray);
    color: var(--gray-2);
    border-radius: 50px;;
    text-align: left;
}

/* 一旦非表示 */
.search-ranking{
    display: none;
}

.search-ranking ol{
    display: flex;
    align-items: center;
    gap: 40px;
    margin-left: 20px;
}

.search_form input{
    /* transform: translateX(15px); */
    height: 31px;
    width: 210px;
    padding-left: 20px;
}

.search_form img{
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

/******** nav-bottom ナビメニュー ********/

header h1 a{
    width: 193.5px;
    display: block;
    transition: all 0.2s linear;
}

#header.scroll h1 a{
    width: 150px;
}

header h1 img{
    width: 100%;
}

@media screen and (max-width: 780px) {
    header h1{
        width: 44%;
    }
    header h1 a{
        width: 100%;
    }
}

header nav .nav-bottom{
    display: flex;
    gap: 40px;
    font-family: 'Noto_Sans_JP';
    font-weight: 700;
    font-size: 1.7rem;
}

header nav .cat1>li a{
    position: relative;
    padding-bottom: 25px;
}

header nav .cat1>li a::after{
    content: "";
    display: block;
    background-image: url(../image/common/arrow_d.svg);
    background-size: cover;
    width: 12.31px;
    height: 7.57px;
    position: absolute;
    right: -20px;
    top: 9px;
}

header nav ul.cat1:last-child {
    margin-right: 25px;
}

@media screen and (max-width: 780px) {
    header nav ul.cat1:last-child {
        margin-right: 0;
    }
}

header nav .cat2-wrapper{
    text-align: left;
    opacity: 0;
    height: 0;
    line-height: 0;
    transform: scaleY(0);
    transition: opacity .5s;
    position: absolute;
    top: calc(100% + 22px);
    left: 0;
    padding: 40px;
    background-color: #fff;
    z-index: 10;
    border-radius: 10px;
    width: 100%;
}

header nav .cat2-wrapper.active{
    opacity: 1;
    height: auto;
    line-height: 1.6;
    transform: scaleY(1);
}

header nav .cat2-wrapper>li {
    text-align: left;
}

header nav .cat2-wrapper>li a{
    display: inline-block;
    text-align: left;
    margin-bottom: 12px;
    position: relative;
    font-size: 2.0rem;
}

header nav .cat2-wrapper>li a::before{
    content: "";
    display: block;
    position: absolute;
    bottom: -13px;
    left: 0;
    height: 1px;
    width: 56px;
    background-color: var(--primary-green);
}

header nav .cat2-wrapper>li a::after{
    content: "";
    display: block;
    background-image: url(../image/common/arrow_gr_cir.svg);
    background-size: cover;
    position: absolute;
    top: 50%;
    right: -44px;
    transform: translateY(-50%);
    height: 17px;
    width: 34px;
}

header nav .cat2{
    /* display: flex;
    text-align: left;
    justify-content: left;
    flex-wrap: wrap;
    gap: 30px; */
    margin-top: 12px;
    border-bottom: dashed 1px #D3D3D3;
    padding-bottom: 11px;
}

header nav .cat2:first-of-type{
    margin-top: 0;
    border-top: solid 1px #D3D3D3;
    padding-top: 11px;
}

header nav .cat2>li a{
    display: block;
    font-size: 1.6rem;
    /* text-decoration: underline; */
    text-underline-offset: 0.3rem;
    text-decoration-color: var(--dark-gray);
    margin-bottom: 2px;
}

header nav .cat3{
    display: inline-block;
    margin-right: 10px;
    margin-top: 10px;
}

header nav .cat3>li a{
    font-size: 1.4rem;
    /* text-decoration: underline; */
    text-underline-offset: 0.3rem;
    text-decoration-color: var(--dark-gray);
    font-weight: 400;
    display: block;
    border-radius: 3px;
    border: 1px solid var(--primary-green);;
    padding: 3px 5px;
}

header nav .cat4{
    display: none;
}

#header-bg{
    opacity: 0;
    pointer-events: none;
    transition: all .5s;
    background-color: var(--black);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

#header-bg.active{
    opacity: 0.2;
}

/******** ハンバーガーメニュー ********/

.nav-right{
    display: flex;
}
@media screen and (max-width: 780px) {
    .nav-right{
        position: fixed;
        z-index: 100;
        top: 6.25vw;
        right: 6.25%;
    }
}

.tel{
    background-color: var(--brown);
    color: #fff;
    font-family: 'Overpass'; 
    font-weight: 700;
    display: flex;
    padding: 21px 23px 21px 15.63px;
    border-radius: 10px 0px 0px 10px;
    align-items: center;
    transition: all 0.2s linear;
}

@media screen and (max-width: 780px) {
    .tel {
        display: none;
    }
}

#header.scroll .tel{
    padding: 15px 23px 15px 15.63px;
}

.tel img{
    margin-right: 5px;
    width: 27px;
}

.tel p{
    font-size: 1.8rem;
}

.tel p span{
    display: block;
    font-size: 1.1rem;
    padding-top: 3px;
}

.ham-btn{
    background-color: var(--primary-green);
    padding: 25px 23px 15px 23px;
    border-radius: 0 10px 10px 0;
    color: #fff;
    position: relative;
    transition: all .5s;
}

@media screen and (max-width: 780px) {
    .ham-btn{
        border-radius: 10px;
        padding: 20px 20px 15px 20px;
    }
}

#header.scroll .ham-btn{
    padding: 16px 23px 9px 23px;
}

.ham-btn>div{
    height: 20px;
    position: relative;
    margin-bottom: 8px;
}

#header.scroll .ham-btn>div{
    height: 17px;
}

.ham-btn>div>span{
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background-color: #fff;
    display: block;
    transition: all .5s;
}

@media screen and (max-width: 780px) {
    .ham-btn>div>span{
        width: 80%;
        left: 10%;
    }
}

.ham-btn>div>span:nth-of-type(1){
    position: absolute;
    top: 0;
}

.ham-btn>div>span:nth-of-type(2){
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.ham-btn>div>span:nth-of-type(3){
    position: absolute;
    bottom: 0;
}

.ham-btn::after{
    content: 'MENU';
    display: block;
    /* xdとの大きさ調整 */
    /* font-size: 1.2rem; */
    font-size: 1rem;
    font-family: 'Overpass';
    font-weight: 700;
    width: 36px;
}

.ham-area{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 0;
    opacity: 0;
    height: 0;
    line-height: 0;
    transform: scaleY(0);
    transition: opacity .5s;
    padding-top: 192.35px;
    /* padding: 192.35px 100px 178px; */
    padding: 12.25% 6.25% 5%;
    pointer-events: none;
}

.open .ft_show{
    visibility: hidden;
    display: none;
}

.open .ham-area{
    opacity: 1;
    height: 100%;
    line-height: normal;
    transform: unset;
    background-color: #ECF2EE;
    width: 100%;
    overflow-y: scroll;
    pointer-events: auto;
}

@media screen and (max-width: 780px) {
    .open .ham-area{
        padding-top: 120px;
    }
}

.open .ham-btn{
    z-index: 1;
    border-radius: 10px;
}

.open .ham-btn>div>span:nth-of-type(1){
    position: absolute;
    top: 7px;
    transform: rotate(-35deg);
}

#header.scroll .open .ham-btn>div>span:nth-of-type(1){
    transform: rotate(-28deg);
}

.open .ham-btn>div>span:nth-of-type(2){
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
}

.open .ham-btn>div>span:nth-of-type(3){
    position: absolute;
    bottom: 11px;
    transform: rotate(35deg);
}

#header.scroll .open .ham-btn>div>span:nth-of-type(3){
    bottom: 8px;
    transform: rotate(25deg);
}

.open .ham-btn::after{
    content: 'CLOSE';
}

/* headerのmenuの設定 */

@media screen and (max-width: 780px) {
    .search_sp {
        margin-bottom: 30px;
    }
    .search_sp .search_form input {
        height: 60px;
        width: 100%;
        font-size: 1.6rem;
        font-weight: 500;
    }
    .search_sp .search_form img{
        width: 40px;
        right: 10px;
    }
}

.ham-area .menu_right_head_bottom{
    color: #fff;
}

.ham-area .menu_right_head_bottom a:nth-of-type(2){
    background-color: var(--brown);
    border: transparent;
}

.ham-area .menu_wrapper .cat1>a {
    border-bottom: solid 1px #D3D3D3;
}

.ham-area .menu_wrapper .cat1>a::before{
    background-color: var(--primary-green);
}

.ham-area .menu_wrapper .cat3>a {
    color: #4E4E4E;
}

#header .menu_information,#header .copyright{
    text-align: left;
}
@media screen and (max-width: 780px) {
    #header .menu_information{
        text-align: center;
    }
    #header .copyright{
        text-align: center;
        font-size: 1.2rem;
        margin-bottom: 20px;
        font-weight: 500;
        color: #999;
    }
}

.ham-area .menu_right_head_top::before {
    /* border-top: dashed 1px #707070; */
}

.ham-area .menu_right_head_top {
    /* border-top: dashed 1px #707070; */
}

.ham-area .menu_wrapper .cat3>li>a{
    color: #4e4e4e;
    font-weight: 400;
}
@media screen and (max-width: 780px) {
    .ham-area .menu_wrapper .cat3>li>a{
        font-weight: 500;
        color: var(--black);
    }
}

.ham-area .menu_wrapper .cat1>li a{
    position: relative;
}

.ham-area .menu_wrapper .cat1>li a::before{
    content: "";
    display: block;
    width: 4px;
    height: 20px;
    background-color: var(--primary-green);
    position: absolute;
    top: 50%;
    left: -13px;
    transform: translateY(-50%);
    border-radius: 5px;
}

.ham-area .menu_wrapper .cat1>li a::after{
    content: "";
    display: block;
    background-image: url(../image/common/arrow_gr_cir.svg);
    background-size: cover;
    position: absolute;
    top: 50%;
    right: -44px;
    transform: translateY(-50%);
    height: 17px;
    width: 34px;
}

@media screen and (max-width: 780px) {
    .ham-area .menu_wrapper .cat2>li>a{
        color: var(--primary-green);
    }
}

@media screen and (max-width: 780px) {
    .ham-area .menu_wrapper .cat3>li>a{
        border: 1px solid var(--primary-green);
        color: var(--black);
    }
}


/*----------------------------------------------------------*/
/* footer
/*----------------------------------------------------------*/

footer {
    background: var(--brown);
    color: #fff;
    font-family: 'Noto_Sans_JP';
    /* padding: 102px 100px 60px 100px; */
    padding: 6.25% 6.25% 5%;
}
@media screen and (max-width: 780px) {
    footer {
        padding: 8.25% 6.25% 5%;
    }
}

footer a{
    color: #fff;
}

footer .mn_show{
    visibility: hidden;
    display: none;
}

/*----------------------------------------------------------*/
/* menu
/*----------------------------------------------------------*/

.menu_wrapper{
    display: flex;
    justify-content: space-between;
    gap: 4%;
}
@media screen and (max-width: 780px) {
    .menu_wrapper{
        flex-direction: column-reverse;
        gap: 0;
        flex-wrap: wrap;
    }
}

/******** menuの左側 ********/

.menu_left{
    /* max-width: 600px; */
    /* width: 100%; */
    width: 44%;
}
@media screen and (max-width: 780px) {
    .menu_left{
        width: 100%;
        margin-top: 50px;
        padding-top: 40px;
        border-top: 1px dotted var(--soft-black);
    }
}

.menu_left_top{
    margin-bottom: 40px;
}

.menu_information{
    font-family: 'Overpass'; 
    font-weight: 400;
    font-size: 1.6rem;
}
@media screen and (max-width: 780px) {
    .menu_information{
        text-align: center;
    }
}

.menu_information img{
    width: 66.6%;
}
@media screen and (max-width: 780px) {
    .menu_information img{
        width: 75%;
    }
}

.menu_information p:first-of-type{
    margin-top: 20.5px;
    margin-bottom: 10.5px;
}

@media screen and (max-width: 780px) {
    .menu_information p{
        line-height: 1.25;
    }
}

.menu_sns{
    margin-top: 29.74px;
    display: flex;
    gap: 15px;
}
@media screen and (max-width: 780px) {
    .menu_sns{
        margin-top: 20px;
        justify-content: center;
    }
}

.menu_sns img{
    width: 46px;
    height: 46px;
}

.menu_left_center{
    margin-bottom: 40px;
}

.menu_left_item>a{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 30px 12px 25px;
    margin-bottom: 15px;
    /* font-size: 2.3rem; */
    font-size: clamp(1.5rem, 1.43vw, 2.3rem);
    font-family: 'Noto_Sans_JP'; 
    font-weight: 700;
    color: #fff;
    /* max-width: 600px;
    width: 100%; */
}

.menu_left_item:nth-of-type(1){
    background-color: var(--yellow);
    border-radius: 10px;
}

.menu_left_item:nth-of-type(1)>a{
    color: var(--dark-gray);
}

.menu_left_item:nth-of-type(2){
    background-color: var(--primary-green);
    border-radius: 10px;
}

.menu_left_item:nth-of-type(3){
    background-color: var(--blue);
    margin-bottom: 0;
    border-radius: 10px;
}

.menu_left_item div{
    display: flex;
    align-items: center;
    /* justify-content: space-between; */
    justify-content: flex-start;
    gap: 5%;
    width: 90%;
}

.menu_left_item div img{
    width: 30%;
}
@media screen and (max-width: 780px) {
    .menu_left_item div img{
        width: 25%;
    }
}

.menu_left_item div+img{
    width: 7.8%;
    margin-right: 3%;
}

.menu_left_item div p{
    line-height: 1.25;
}

@media screen and (max-width: 780px) {
    .menu_left_item div p{
        text-align: left;
    }
}

.menu_left_item div p>span{
    display: block;
    font-size: 1.4rem;
    margin-top: 10px;
    font-weight: 400;
}
@media screen and (max-width: 780px) {
    .menu_left_item div p>span{
        margin-top: 5px;
        font-size: 1.2rem;
    }
}

.menu_left_bottom iframe{
    width: 100%;
    border-radius: 10px;
    aspect-ratio: 5 / 4.7;
}

/******** menuの右側 ********/

.menu_right{
    text-align: left;
    /* ブラウザとXDのfont-familyの違いによる調整 */
    /* min-width: 720px; */
    /* min-width: 763px; */
    /* width: 100%; */
    width: 52%;
}
@media screen and (max-width: 780px) {
    .menu_right{
        width: 100%;
    }
}

.menu_right *{
    font-weight: 700;
}

.menu_right_head_top{
    /* position: relative;
    padding: 19.79px 0px 19.79px 19.79px; */
}

/* .menu_right_head_top::before,.menu_right_head_top::after{
    content: "";
    display: block; 
    width: 100%;
    left: 0;
    right: 0;
}

.menu_right_head_top::before{
    border-top: dashed 1px #B4B4B4;
    position: absolute;
    top: -1px;
}

.menu_right_head_top::after{
    border-bottom: dashed 1px #B4B4B4;
    position: absolute;
    bottom: -1px;
}

.menu_right_head_top div{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.menu_right_head_top p:nth-of-type(1){
    font-size: 1.8rem;
    text-align: center;
    line-height: 1.333;
    margin-right: 39.87px;
}

.menu_right_head_top p:nth-of-type(2){
    font-size: 4.2rem; 
    font-family: 'Overpass'; 
    font-weight: 800;
}

.menu_right_head_top p:nth-of-type(3){
    font-size: 1.6rem;
    font-family: 'Overpass'; 
    font-weight: 700;
    padding: 4px 23px;
    background-color: #E3E2DC;
    border-radius: 30px;
    margin-left: 26.2px;
    color: #222222;
}

.menu_right_head_top p:nth-of-type(3) span{
    font-size: 1.5rem;
} */
.menu_right_head_top div img{
    width: 100%;
}

.menu_right_head_bottom{
    display: flex;
    flex-wrap: wrap;
    /* font-size: 1.8rem; */
    padding-top: 15px;
}

.menu_right_head_bottom a:nth-of-type(1){
    background-color: var(--bright-green);
    /* padding: 29.5px 19.61px 29.5px 30px; */
    padding: 5%;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    /* max-width: 350px; */
    width: 49%;
    /* margin-right: 20px; */
    margin-right: 2%;
}

.menu_right_head_bottom a:nth-of-type(2){
    border: solid 1px #fff;
    /* padding: 29.5px 19.61px 29.5px 30px; */
    padding: 5%;
    border-radius: 10px;
    display: flex;
    justify-content: space-between;
    /* max-width: 350px; */
    width: 49%;
}

@media screen and (max-width: 780px) {
    .menu_right_head_bottom{
        display: block;
    }
    .menu_right_head_bottom a:nth-of-type(1),
    .menu_right_head_bottom a:nth-of-type(2){
        width: 100%;
        border-radius: 5px;
        margin: 0 auto 10px;
        padding: 5%;
    }
}

.menu_right_head_bottom a span {
    font-size: clamp(1.4rem, 1.12vw, 1.8rem);
    width: 90%;
}

.menu_right_head_bottom a img {
    width: 5.7%;
}

.menu_right_bottom{
    margin-top: 10px;
}

.menu_wrapper .cat1{
    margin-top: 30px;
}

.menu_wrapper .cat1>li{
    border-bottom: solid 1px var(--soft-black);
    position: relative;
    display: block;
    padding: 10px;
    padding-left: 14px;
    font-size: 1.8rem;
}

@media screen and (max-width: 780px) {
    .menu_wrapper .cat1>li{
        font-size: 2.0rem;
        padding: 10px 10px 15px;
    }
}

.menu_wrapper .cat1>li a{
    /* position: relative; */
}

.menu_wrapper .cat1>li a::before{
    content: "";
    display: block;
    width: 4px;
    height: calc(100% - 20px);
    background-color: var(--white);
    position: absolute;
    top: 50%;
    left: 0px;
    transform: translateY(-50%);
    border-radius: 5px;
}

.menu_wrapper .cat2{
    margin-top: 15px;
    margin-left: 15px;
}
@media screen and (max-width: 780px) {
    .menu_wrapper .cat2{
        margin-left: 0;
    }
}

.menu_wrapper .cat2>li>a{
    font-size: 1.6rem;
}

@media screen and (max-width: 780px) {
    .menu_wrapper .cat2>li>a{
        line-height: 1.25;
        display: block;
        margin-bottom: 5px;
        font-size: 1.8rem;
    }
}

.menu_wrapper .cat3{
    margin-left: 23px;
    margin-top: 15px;
    display: inline-block;
}
@media screen and (max-width: 780px) {
    .menu_wrapper .cat3{
        margin-left: 0;
        margin-right: 10px;
        margin-top: 0;
    }
}

.menu_wrapper .cat3>li{
    display: inline-block;
}

.menu_wrapper .cat3>li>a{
    color: var(--gray-4);
    font-weight: 400;
    font-size: 1.4rem;
}

@media screen and (max-width: 780px) {
    .menu_wrapper .cat3>li>a{
        border: 1px solid var(--gray-4);
        border-radius: 5px;
        padding: 3px 5px 4px;
        margin-top: 10px;
        display: inline-block;
        font-size: 1.6rem;
    }
}

.menu_wrapper .cat4{
    display: none;
}

.copyright{
    margin-top: 40px;
    font-size: 1.4rem;
    font-family: 'Overpass'; 
    font-weight: 400;
}
@media screen and (max-width: 780px) {
    .copyright{
        text-align: center;
        font-size: 1.2rem;
        margin-bottom: 20px;
        font-weight: 500;
        color: #999;
    }
}


/* イベント一覧 */
.tribe-common-c-btn.tribe-events-c-search__button{
    background-color: var(--primary-green)!important;
}

.tribe-events-calendar-list__event-venue-title.tribe-common-b2--bold,
.tribe-events-calendar-day__event-venue-title.tribe-common-b2--bold{
    color: var(--primary-green);
}

.tribe-events-calendar-list__event-description.tribe-common-b2.tribe-common-a11y-hidden p{
    line-height: 1.6;
}

.tribe-common-c-btn-border.tribe-events-c-subscribe-dropdown__button{
    display: none;
}

.tribe-common-g-row.tribe-events-calendar-list__event-row{
    border-bottom: 1px dotted #ccc;
    padding-bottom: 30px;
}

.tribe-common-g-row.tribe-events-calendar-list__event-row:last-child{
    border: none;
    margin-bottom: 0!important;
}

.tribe-events-c-messages__message-list-item{
    line-height: 1.4;
}

/* イベント詳細 */

.tribe-events-notices ul li {
    color: #fff;
    background-color: #D30C1B;
    padding: 5px;
    border-radius: 5px;
    display: inline-block;
}

.tribe-events-single-section.tribe-events-event-meta{
    width: 100%;
}

.tribe-events-back a {
    color: var(--primary-green)!important;
}

#tribe-events-pg-template{
    margin-bottom: 100px;
}

@media screen and (max-width: 780px) {
    .tribe-events .tribe-events-l-container{
        padding: 0 6.25%;
    }
    .tribe-events-c-top-bar__datepicker-mobile{
        font-weight: 700;
        font-size: 2.2rem;
    }
    .tribe-events-calendar-list__event-title-link.tribe-common-anchor-thin{
        font-size: 2.0rem;
    }
    .tribe-events-c-nav__list li a,
    .tribe-events-c-nav__list li span{
        font-size: 1.6rem!important;
    }
    .tribe-events .tribe-events-c-nav__prev-icon-svg path{
        fill: var(--primary-green);
    }
    .tribe-events .tribe-events-c-nav__next:disabled .tribe-events-c-nav__next-icon-svg path, .tribe-events button.tribe-events-c-nav__next:disabled .tribe-events-c-nav__next-icon-svg path{
        fill: var(--primary-green);
    }
    .tribe-events address span {
        font-size: 1.4rem;
    }
}

/* loading */

.loading {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background-color: #ECF2EE;
    z-index: 10000;
}
@media screen and (max-width: 780px) {
    .loading {
        height: 100dvh;
    }
}

#loading_svg{
    width: 17%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

@media screen and (max-width: 780px) {
    #loading_svg{
        width: 40%;
    }
}

/* recaptcha */
.grecaptcha-badge { visibility: hidden; }