.dnI {
    display: none!important;
}
html {
  font-size: calc(100vw / 1920);
}
@media screen and (max-width: 1024px) {
  html {
  font-size: calc(100vw / 1024);
}  
}
@media screen and (max-width: 767px) {
  html {
  font-size: calc(100vw / 375);
}  
}
:root {
    --cl-yellow: #ffda39;
    --cl-blue: #1484c8;
    --cl-red: #e0252f;
    --cl-txt: #42210b;
}
.forSp {
    display: none;
}
.forTablet {
    display: none;
}
.forPc {
    display: block;
}
.forPcT {
    display: block;
}
@media screen and (max-width: 1024px) {
    .forTablet {
    display: block;
}
.forPcT {
    display: none;
}
}
@media screen and (max-width: 767px) {
    .forSp {
    display: block;
}
    .forPc {
    display: none;
}
}
main {
    color: var(--cl-txt);
}

/*----------
TOPページ2025
----------*/

.pageHead {
    background-image: url(../img/2025/header_bg_pattern.svg);
    padding: 20rem 50rem;
}
.pageHead h1 {}
.pageHead img {
    width: 396rem;
}
.mvVer01 {
     max-height: 1080rem;
     padding-top: 60rem;
    padding-bottom: 100rem;
    position: relative;
    background-image: url(../img/2025/kv_all_top.webp);
    background-size: cover;
    background-position: center;
}

.mvVer01 h2 {
    height: 100%;
    text-align: center;
}
.mvVer01 img {
    object-fit: cover;
    width: 900rem;
    max-width: 1120rem;
    max-width: inherit;
    position: relative;
    z-index: 1;
}
.mvVer01::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 0;
    padding-top: min(9%, 146rem);
    padding-top: 146rem;
    background-image: url(../img/2025/wave_yellow.svg);
    background-size: cover;
    background-repeat: repeat no-repeat;
    position: absolute;
    bottom: -60rem;
    left: 0;
}
/* comming soon */
.commingSoon {
    margin: 80rem 0;
    padding: 80rem;
    background-color: #f6ab00;
}
.commingSoon__inner {
    max-width: 800rem;
    margin: 0 auto;
    text-align: center;
    background-color: #fff;
    padding: 80rem;
    border-radius: 10rem;
}
.commingSoon img {
    max-width: 500rem;
}

@media screen and (max-width: 1024px) {
    .pageHead img {
        width: 280rem;
    }
    .mvVer01 {
        height: 600rem;
        background-image: url(../img/2025/kv_all_top_sp.webp);
        background-position: 50% 0;
    }
    .mvVer01 img {
        width: 650rem;
    }
    .mvVer01::after {
        padding-top: 23rem;
        bottom: -1rem;
    }
    .commingSoon {
        margin: 60rem 0;
        padding: 60rem;
    }
    .commingSoon__inner {
        max-width: 500rem;
        padding: 60rem;
    }
}
@media screen and (max-width: 767px) {
    .pageHead {
        padding: 20rem;
    }
    .pageHead img {
        width: 240rem;
    }
    .mvVer01 {
        height: 400rem;
    }
    .mvVer01 img {
        width: 100%;
        max-width: 375rem;
    }
    .mvVer01::after {
        padding-top: 23rem;
    }
    .commingSoon {
        margin: 30rem 0;
        padding: 40rem;
    }
    .commingSoon__inner {
        max-width: 500rem;
        padding: 40rem;
    }
}
.bgYellow {
    background-color: var(--cl-yellow);
}

/*----------
info
----------*/
.infoBlock {
    max-width: 1300rem;
    margin: 0 auto;
    padding: 100rem 50rem;
    display: flex;
    align-items: stretch;
    gap: 70rem;
}
.infoBlock__listWrapper {}
.infoBlock__list {
    display: flex;
    border-radius: 27rem;
    overflow: hidden;
        background-color: #fff;
        margin-bottom: 25rem;
}
.infoBlock__list:last-of-type {
    margin-bottom: 0;
}
.infoBlock__list__ttl {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5rem;
    width: 168rem;
    flex-shrink: 0;
    padding: 15rem;
    background-color: var(--cl-blue);
    font-size: 25rem;
    font-weight: 500;
    color: #fff;
}
.icon--time {
    width: 54rem;
}
.icon--place {
    width: 44rem;
}
.icon--member {
    width: 52rem;
}
.infoBlock__list__body {
    padding: 25rem;
}
.infoBlock__list__body p {
    font-size: 30rem;
    font-weight: 600;
    line-height: 1.4;
}
.infoBlock__list--time p .small {
    font-size: 18rem;
}
.infoBlock__list__body .placeName {
    display: flex;
    flex-wrap: wrap;
    gap: 10rem;
    margin-bottom: 5rem;
}
.infoBlock__list__body .placeName img {
    width: 150rem;
}

.infoBlock__list__body .placeAdd {
    font-weight: 500;
    font-size: 14rem;
}
.infoBlock__list__body__col {
    display: flex;
    align-items: center;
    gap: 10rem;
    height: 100%;
}
.memberNum {
    flex-shrink: 0;
}
.infoBlock__list__body .memberDesc {
    font-size: 14rem;
    font-weight: 500;
    padding-left: 1em;
    text-indent: -1em;
}
.infoBlock__contact {
    width: 485rem;
    /* height: 410rem; */
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20rem;
    background-image: url(../img/2025/header_bg_pattern.svg);
    border-radius: 35rem;
    position: relative;
}

.infoBlock__contact::before {
    content: "";
    display: inline-block;
    width: 186rem;
    height: 108rem;
    background-image: url(../img/2025/icon_logo.svg);
    background-size: cover;
    position: absolute;
    left: 50%;
    top: -54rem;
    transform: translateX(-50%);
    z-index: 1;
}
.infoBlock__contact::after {
    content: "";
    display: inline-block;
    width: calc(100% - 60rem);
    height: calc(100% - 60rem);
    position: absolute;
    top: 30rem;
    left: 30rem;
    z-index: 0;
    background-color: #fff;
    border-radius: 20rem;
}

.infoBlock__contact__para {
    font-size: 30rem;
    text-align: center;
    font-weight: 600;
    color: #F8AA04;
    position: relative;
    z-index: 1;
}
.infoBlock__contact__para--sub {
    position: relative;
    z-index: 1;
    margin-bottom: 10rem;
    text-align: center;
    font-size: 20rem;
}
.infoBlock__contact__btn {
    position: relative;
    z-index: 1;
}
.btn {
        background-color: var(--cl-red);
        border: solid 3rem var(--cl-red);
            width: 340rem;
    border-radius: 60rem;
    overflow: hidden;
    color: #fff;
    font-size: 25rem;
    font-weight: 600;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 10rem 1.5em;
    transition: color ease .4s, background-color ease .4s;
    position: relative;
}
.btn__arrow {
  position: absolute;
  right: 15rem;
  display: inline-block;
  width: 10rem;
  height: 20rem;
}

.btn__arrow::before,
.btn__arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 2rem);
  right: 0;
  width: 20rem;
  height: 4rem;
  border-radius: 9999rem;
  background-color: #fff;
  transform-origin: calc(100% - 2rem) 50%;
  transition: right ease .4s,background-color ease .4s;
}

.btn__arrow::before {
  transform: rotate(45deg);
}

.btn__arrow::after {
  transform: rotate(-45deg);
}
/* hover */
.btn:hover {
    background-color: #fff;
    color: var(--cl-red);
}
.btn:hover .btn__arrow::before,
.btn:hover .btn__arrow::after  {
    background-color: var(--cl-red);
    right: -4rem;
}

.infoBlock__contact {

}
.infoBlock__contact::after {
}

.infoBlock__contact__para--sub {
}
.infoBlock__contact__btn {
}

@media screen and (max-width: 767px) {
    .infoBlock {
        padding: 40rem 20rem;
        flex-direction: column;
        align-items: center;
        gap: 60rem;
    }
    .infoBlock__list {
    border-radius: 10rem;
         margin-bottom: 20rem;
   }
   .infoBlock__list__ttl {
    font-size: 16rem;
    width: 98rem;
    padding: 10rem;
   }
   .icon--time {
    width: 32rem;
}
.icon--place {
    width: 26rem;
}
.icon--member {
    width: 31rem;
}
.infoBlock__list__body {
    padding: 15rem 10rem;
}
.infoBlock__list__body p {
    font-size: 17rem;
}
.infoBlock__list--time p .small {
    font-size: 11rem;
}
.infoBlock__list__body .placeName {
    gap: 0;
    margin-bottom: 5rem;
}
.infoBlock__list__body .placeName img {
    width: 90rem;
}
.infoBlock__list__body .placeAdd {
    font-size: 12rem;
}
.infoBlock__list__body__col {
    gap: 5rem;
}
.infoBlock__list__body .memberDesc {
    font-size: 12rem;
}
.infoBlock__contact {
    width: 100vw;
    height: 270rem;
    gap: 15rem;
    border-radius: 0;
}
.infoBlock__contact::before {
    width: 115rem;
    height: 66rem;
    top: -23rem;
}
.infoBlock__contact::after {
    width: calc(100% - 50rem);
    height: calc(100% - 50rem);
    top: 25rem;
    left: 25rem;
}
.infoBlock__contact__para {
    font-size: 25rem;
}
.infoBlock__contact__para--sub {
    font-size: 16rem;
}
.infoBlock__contact__btn {
    width: 75%;
}
.btn {
    border: solid 2rem var(--cl-red);
    font-size: 15rem;
    width: 137rem;
    width: 100%;
    max-width: 300rem;
}
.btn__arrow::before,
.btn__arrow::after {
  width: 14rem;
  height: 3rem;
}
.btn__arrow::before {
        top: calc(50% - 3rem);
}

}
/*----------
section common
----------*/
.container {
    max-width: 1620rem;
    margin: 0 auto;
    padding: 0 50rem;
}
.section__ttl_ja {
    font-size: 25rem;
    font-weight: 500;
}
.section__ttl_ja::before {
    display: inline-block;
    content: "";
    width: 21rem;
    height: 20rem;
    background-image: url(../img/2025/icon_secttl_blue.svg);
    background-size: cover;
    margin-right: 8rem;
}
.section__ttl_en {
    font-size: 60rem;
    font-weight: 800;
    color: var(--cl-blue);
}
@media screen and (max-width: 767px) {
    .container {
        padding: 0 20rem;
    }
    .section__ttl_ja {
    font-size: 20rem;
    text-align: center;
}
.section__ttl_ja::before {
    width: 16rem;
    height: 15rem;
}
p.section__ttl_en {
    font-size: 35rem;
    text-align: center;
}
}
/*----------
event theme
----------*/
.secTheme {
    padding: 80rem 0;
    position: relative;
}
.secTheme::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 0;
    padding-top: min(9%, 146rem);
    padding-top: 146rem;
    background-image: url(../img/2025/wave_yellow_under.svg);
    background-size: cover;
    background-repeat: repeat no-repeat;
    position: absolute;
    bottom: -145rem;
    left: 0;
}
.secTheme__inner {
    display: flex;
}
.secTheme__head {
    width: 49%;
    padding-right: 110rem;
}
.secTheme__image {
    text-align: center;
    margin: 40rem 0;
    position: relative;
}

.secTheme__image img {
    width: 70%;
    margin-left: 133rem;
    margin-left: -17rem;
    max-width: 542rem;
}
.secTheme__image::after {
    content: "";
    display: inline-block;
    width: 185rem;
    height: 184rem;
    background-image: url(../img/2025/image_theme_hukidashi.svg);
    background-size: cover;
    position: absolute;
    top: -20rem;
    right: -40rem;
}
.secTheme__col {
    margin-top: 60rem;
    display: flex;
    gap: 15rem;
    position: relative;
}
.secTheme__col p {
    background-color: var(--cl-blue);
    color: #fff;
    text-align: center;
    font-size: 26rem;
    line-height: 1.5;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 18rem;
    padding: 1em;
    height: 178rem;
    width: 50%;
}
.secTheme__col::after {
    content: "";
    display: inline-block;
    width: 50rem;
    height: 50rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background-image: url(../img/2025/icon_cross.svg);
    background-size: cover;
}
.secTheme__txt {
    width: 51%;
}
.secTheme__catch {
    font-size: 50rem;
    line-height: 2;
    font-weight: 600;
    color: #fff;
    margin-bottom: 30rem;
}
.secTheme__catch .line {
    background-color: var(--cl-blue);
    padding: 0.15em 0.5em;
    box-decoration-break: clone;
     -webkit-box-decoration-break: clone;
}
.secTheme__txt__para {
    font-size: 20rem;
    line-height: 1.8;
    margin-bottom: 40rem;
}
.secTheme__txt__para.em {
    font-size: 28rem;
    font-weight: 700;
    color: var(--cl-red);
}
.secTheme__txt p:last-of-type {
    margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
        .secTheme::after {
        background-position: bottom;
                padding-top: 23rem;
                bottom: -22rem;
    }
    .secTheme__inner {
        flex-direction: column-reverse;
    }
        .secTheme__head {
    width: 100%;
    padding-right: 0;
}
.secTheme__txt {
    width: 100%;
}
.secTheme__catch {
    margin-top: 40rem;
}
}
@media screen and (max-width: 767px) {
    .secTheme {
        padding: 30rem 0;
    }

    .secTheme__inner {
        flex-direction: column-reverse;
    }
    .secTheme__head {
    width: 100%;
    padding-right: 0;
}
.secTheme__image {
    margin: 30rem 0;
}
.secTheme__image img {
    width: 80%;
    margin-left: 0;
    max-width: 542rem;
}
.secTheme__image::after {
    width: 85rem;
    height: 84.6rem;
    top: -40rem;
    right: 0rem;
}
.secTheme__col {
    margin-top: 40rem;
    flex-direction: column;
    align-items: center;
}
.secTheme__col p {
    width: 245rem;
    font-size: 20rem;
    height: 145rem;
}
.secTheme__col::after {
    width: 40rem;
    height: 40rem;
}
.secTheme__txt {
    width: 100%;
}
.secTheme__catch {
    font-size: 25rem;
    margin-top: 40rem;
    text-align: center;
}
.secTheme__txt__para {
    font-size: 16rem;
    margin-bottom: 30rem;
}
.secTheme__txt__para.em {
    font-size: 20rem;
}

}
/*----------
event details
----------*/
.bgBlue {
    background-color: var(--cl-blue);
    padding: 200rem 50rem 150rem;
}
.secDetails {
    border-radius: 100rem 100rem 0 0;
    padding: 120rem 150rem;
    max-width: 1920rem;
    margin: 0 auto;
    background-color: #fff;
  
background-image: linear-gradient(0deg, transparent 31px, #eeeeee 32px), linear-gradient(90deg,  transparent 31px, #eeeeee 32px);
background-size: 32px 32px;
}
.secDetails__col {
    display: flex;
    gap: 90rem;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 70rem;
}
.secDetails__head {
    flex-shrink: 0;
}
.secDetails__head .section__ttl_ja::before {
    background-image: url(../img/2025/icon_secttl_yellow.svg);
}
.secDetails__col__desc {
    font-size: 25rem;
    line-height: 1.8;
    font-weight: 600;
    color: #42210b;
}
.secDetails__list {}
.detailItem {
    padding: 60rem;
    margin-bottom: 80rem;
    display: flex;
    gap: 60rem;
    align-items: center;
    border-radius: 25rem;
    color: #fff;
    position: relative;
}
.detailItem:nth-of-type(2n) {
    flex-direction: row-reverse;
}
.detailItem--1 {
    background-color: #6cbb5a;
}
.detailItem--2 {
    background-color: #00a9e4;
}
.detailItem--3 {
    background-color: #e0252f;
}
.detailItem--4 {
    background-color: #f8aa12;
}
/* illust */
.detailItem::before,.detailItem::after {
    content: "";
    display: inline-block;
    position: absolute;
    background-size: cover;
}
.detailItem--1::before {
    width: 205rem;
    height: 220rem;
    background-image: url(../img/2025/icon_hel_left.svg);
    top: -60rem;
    right: 60rem;
}
.detailItem--1::after {
    width: 161rem;
    height: 182rem;
    background-image: url(../img/2025/icon_light.svg);
    bottom: -10rem;
    left: 0;
}
.detailItem--2::after {
    width: 118rem;
    height: 158rem;
    background-image: url(../img/2025/icon_beanslight.svg);
    bottom: 20rem;
    left: 10rem;
}
.detailItem--3::after {
    width: 174rem;
    height: 174rem;
    background-image: url(../img/2025/icon_pencil.svg);
    bottom: 30rem;
    right: 30rem;
}
.detailItem--4::after {
    width: 203rem;
    height: 216rem;
    background-image: url(../img/2025/icon_glasses.svg);
    bottom: -20rem;
    left: 10rem;
}
.detailItem__image {
    width: 54%;
    flex-shrink: 0;
}
.detailItem__image img {
    width: 100%;
}
.detailItem__txt {
    padding-left: 60rem;
}
.detailItem__num {
    font-size: 65rem;
}
.detailItem__ttl {
    font-size: 40rem;
    font-weight: 600;
    margin: 20rem 0;
}
.detailItem__desc {
    font-size: 20rem;
    margin-bottom: 20rem;
    line-height: 1.5;
}
.detailItem__desc .small {
    font-size: 0.6em;
    position: relative;
    top: -6rem;
}
.detailItem__remarks {
    font-size: 16rem;
    padding-left: 1em;
    text-indent: -1em;
     line-height: 1.5;
}
.secDetails__footer {
    display: flex;
    align-items: stretch;
    gap: 100rem;
    width: 90%;
    margin: 150rem auto 70rem;
}
.secDetails__footer__txt {
    /* background-color: var(--cl-blue); */
    border-radius: 48rem;
    padding: 50rem;
    width: 60%;
    position: relative;
    margin-bottom: 70rem;
    border: solid 5rem var(--cl-blue);
}
.secDetails__footer__txt::before {
  content: "";
  position: absolute;
  bottom: 1rem;
  left: 35%;
  border-style: solid;
  border-width: 60rem 0 0 80rem;
  border-color: var(--cl-blue) transparent transparent;
  translate: calc(-50% + 0.6rem) 100%;
  transform: skew(10deg);
  transform-origin: top;
  display: none;
}
.secDetails__footer__txt::after {
    content: "";
    display: inline-block;
    width: 236rem;
    height: 138rem;
    background-image: url(../img/2025/icon_logo.svg);
    background-size: cover;
    position: absolute;
    right: 50rem;
    bottom: -80rem;
}
.secDetails__footer__txt p {
    font-size: 22rem;
    line-height: 2;
    color: var(--cl-blue);
    font-weight: 500;
}
.secDetails__footer__txt p .em {
    font-size: 26rem;
    color: #F8AA04;
    font-weight: 600;
}
.secDetails__footer__contact {
    width: 485rem;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20rem;
    background-image: url(../img/2025/header_bg_pattern.svg);
    border-radius: 35rem;
    position: relative;
    flex-shrink: 0;
}
.secDetails__footer__contact::after {
    content: "";
    display: inline-block;
    width: calc(100% - 60rem);
    height: calc(100% - 60rem);
    position: absolute;
    top: 30rem;
    left: 30rem;
    z-index: 0;
    background-color: #fff;
    border-radius: 20rem;
}
.secDetails__footer__contact__para {
    font-size: 30rem;
    text-align: center;
    font-weight: 600;
    color: #F8AA04;
    position: relative;
    z-index: 1;
}
.secDetails__footer__contact__para--sub {
    position: relative;
    z-index: 1;
    margin-bottom: 10rem;
    text-align: center;
    font-size: 20rem;    
}
.secDetails__footer__contact__btn {
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 1024px) {
.secDetails {
    padding: 80rem 0;
}
    .secDetails__col {
        flex-direction: column;
        gap: 30rem;
        align-items: flex-start;
        margin-bottom: 60rem;
    }
    .secDetails__head {
        align-self: center;
    }
    .secDetails__list {
        display: flex;
        flex-wrap: wrap;
        gap: 30rem;
    }
        .detailItem {
            width: calc(50% - 15rem);
        flex-direction: column;
        padding: 30rem;
        gap: 30rem;
    }
        .detailItem:nth-of-type(2n) {
        flex-direction: column;
    }
    .detailItem__image {
        width: 100%;
    }
    .detailItem__txt {
        padding-left: 0;
        width: 100%;
    }
    /* illust */
    .detailItem--1::before {
            width: 140rem;
    height: 150rem;
    top: -50rem;
    right: -30rem;
    }
    .detailItem--1::after {
            width: 100rem;
    height: 113rem;
    bottom: -10rem;
    left: -70rem;
    }
.detailItem--2::after {
    width: 88rem;
    height: 120rem;
    bottom: 20rem;
    left: 320rem;
}
.detailItem--3::after {
    width: 124rem;
    height: 124rem;
    bottom: -50rem;
    right: -10rem;
}
.detailItem--4::after {
    width: 135rem;
    height: 146rem;
    bottom: 240rem;
    left: 310rem;
}
.secDetails__footer {
        gap: 50rem;
    margin: 80rem auto 70rem;
    flex-direction: column-reverse;
    align-items: center;
}
.secDetails__footer__txt {
    width: 100%;
}
.secDetails__footer__contact {
    width: 80%;
    height: 300rem;
}
}
@media screen and (max-width: 767px) {
    .bgBlue {
        padding: 120rem 0 0;
    }
    .secDetails {
        padding: 60rem 0 120rem;
        border-radius: 67rem 67rem 0 0;
    }

    .secDetails__list {
        display: block;
    }
    .detailItem {
        width: 100%;
        padding: 20rem;
        margin-bottom: 50rem;
    }
    .secDetails__col__desc {
        font-size: 20rem;
    }

    /* illust */
    .detailItem--1::before {
        width: 102rem;
        height: 109rem;
        transform: scaleX(-1);
        right: inherit;
        left: -15rem;
        top: -30rem;
    }
        .detailItem--1::after {
        width: 73rem;
        height: 83rem;
        transform: scaleX(-1);
        left: inherit;
        right: 10rem;
        bottom: inherit;
        top: 230rem;
    }
    .detailItem--2::after {
        width: 63rem;
        height: 84rem;
        transform: scaleX(-1);
        left: inherit;
        right: 20rem;
        bottom: inherit;
        top: 190rem;
    }
    .detailItem--3::after {
        width: 80rem;
        height: 81rem;
        right: 10rem;
        bottom: inherit;
        top: 240rem;
    }
    .detailItem--4::after {
        width: 94rem;
        height: 100rem;
        transform: scaleX(-1);
        left: inherit;
        right: 10rem;
        bottom: inherit;
        top: 190rem;
    }
    .detailItem__image {
        width: 100%;
    }
    .detailItem__txt {
        padding-left: 0;
    }
    .detailItem__num {
        font-size: 50rem;
    }
    .detailItem__ttl {
        font-size: 30rem;
    }
    .detailItem__desc {
        font-size: 16rem;
    }
    .detailItem__remarks {
        font-size: 14rem;
    }
    .secDetails__footer {
        width: 100%;
        align-items: center;
        gap: 60rem;
        margin: 60rem 0;
    }
    .secDetails__footer__txt {
        width: 100%;
        border-radius: 25rem;
        padding: 30rem 20rem 40rem;
        margin-bottom: 40rem;
            border: solid 3rem var(--cl-blue);
    }
    .secDetails__footer__txt::before {
        left: 28%;
            border-width: 40rem 0 0 60rem;
    }
    .secDetails__footer__txt::after {
            bottom: -60rem;
    width: 158rem;
    height: 92rem;
    right: 20rem;
    }
    .secDetails__footer__txt p {
        font-size: 16rem;
    }
    .secDetails__footer__txt p .em {
        font-size: 18rem;
    }
    .secDetails__footer__contact {
        width: 100vw;
        height: 270rem;
        gap: 15rem;
        border-radius: 0;
    }
    .secDetails__footer__contact__btn {
        width: 75%;
    }
    .secDetails__footer__contact__para {
        font-size: 25rem;
    }
    .secDetails__footer__contact__para--sub {
    font-size: 16rem;    
}
    .secDetails__footer__contact::after {
    width: calc(100% - 50rem);
    height: calc(100% - 50rem);
    top: 25rem;
    left: 25rem;
    }
}
/*----------
event about
----------*/
.bgYellow--foot {
    position: relative;
    margin-top: -100rem;
    padding-bottom: 280rem;
}
.bgYellow--foot::before {
        content: "";
    display: inline-block;
    width: 100%;
    height: 0rem;
    padding-top: min(9%, 146rem);
    padding-top: 146rem;
    background-image: url(../img/2025/wave_yellow_under_reverse.svg);
    background-size: cover;
    background-repeat: repeat-x;
    position: absolute;
    top: -145rem;
    left: 0rem;
}
.secAbout {
    padding-top: 80rem;
}
.secAbout__logo {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40rem;
    margin-bottom: 150rem;
}
.secAbout__logo img {
    width: 675rem;
}
.secAbout__col {
    display: flex;
    gap: 60rem;
}
.secAbout__txt {}
.secAbout__catch {
    font-size: 50rem;
    line-height: 2;
    font-weight: 600;
    color: #fff;
    margin-bottom: 30rem;
    margin-top: 30rem;
}
.secAbout__catch .line {
    background-color: var(--cl-blue);
    padding: 0.15em 0.5em;
    box-decoration-break: clone;
     -webkit-box-decoration-break: clone;
}
.secAbout__txt__para {
    font-size: 20rem;
    line-height: 1.8;
}
.secAbout__image {
    padding-top: 30rem;
    width: 45%;
    max-width: 656rem;
}
.secAbout__image img {
    width: 100%;
}
@media screen and (max-width: 1024px) {
    .bgYellow--foot {
        margin-top: -200rem;
    }
        .bgYellow--foot::before {
        padding-top: 23rem;
        top: -22rem;
    }
    .secAbout__col {
        flex-direction: column;
    }
    .secAbout__image {
        width: 100%;
        align-self: center;
    }

}
@media screen and (max-width: 767px) {
    .bgYellow--foot {
        margin-top: -100rem;
        padding-bottom: 120rem;
    }
    .secAbout {
        padding-top: 60rem;
    }
    .secAbout__logo {
        margin-bottom: 60rem;
    }
    .secAbout__logo img {
        width: 100%;
    }
    .secAbout__col {
        flex-direction: column;
        gap: 40rem;
    }
    .secAbout__catch {
        font-size: 25rem;
        text-align: center;
    }
    .secAbout__txt__para {
        font-size: 16rem;
    }
    .secAbout__image {
        width: 100%;
        padding-top: 0;
    }
}
/*----------
event past
----------*/
.secPast {
    margin-top: 120rem;
}
.secPast .section__ttl_ja {
    text-align: center;
}
.secPast .section__ttl_en {
    text-align: center;
}
.secPast__list {
    display: flex;
    gap: 40rem;
    margin-top: 90rem;
}
.pastItem {}
.pastItem__link {
    display: block;
    height: 100%;
    border-radius: 30rem;
    overflow: hidden;
    position: relative;
}
.pastItem img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.pastItem__txt {
    font-size: 50rem;
    color: #fff;
    position: absolute;
    bottom: 30rem;
    right: 40rem;
    z-index: 1;
    filter: drop-shadow(0 0 5rem #00000088);
}
.pastItem__txt__arrow {
    display: inline-block;
    width: 30rem;
    height: 28rem;
    margin-left: 10rem;
    background-image: url(../img/2025/icon_arrow_righttop.svg);
    background-size: cover;
}
.pastItem__link::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.3;
    position: absolute;
    top: 0;
    left: 0;
    transition: opacity ease .3s;
}
/* hover */
.pastItem__link:hover::before {
    opacity: 0;
}
@media screen and (max-width: 767px) {
    .secPast {
        margin-top: 60rem;
    }
    .secPast__list {
        max-width: 240rem;
        margin: 40rem auto;
        gap: 20rem;
        flex-direction: column;
    }
    .pastItem__link {
        border-radius: 25rem;
    }
    .pastItem__txt {
        font-size: 25rem;
            bottom: 20rem;
    right: 20rem;
    }
    .pastItem__txt__arrow {
        width: 22rem;
        height: 20rem;
    }
}
/*----------
footer
----------*/
.footer {
    background-color: #fff;
    border-radius: 116rem 116rem 0 0 ;
    position: relative;
    margin-top: -116rem;
    padding-top: 80rem;
    padding-bottom: 100rem;
}
.footer__listsCol {
    display: flex;
    gap: 70rem;
    flex-wrap: wrap;
    margin-bottom: 90rem;
}
.footer__list {
    display: flex;
    gap: 30rem;
    align-items: center;
}
.footer__list__head {
    background-color: var(--cl-blue);
    color: #fff;
    font-size: 22rem;
    font-weight: 500;
    text-align: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 10rem;
    height: 40rem;
    flex-shrink: 0;
}
.footer__list__body {
    display: flex;
    gap: 30rem;
}
.footer__list__body img {
    height: 107rem;
    width: auto;
}
.footer__col {
    display: flex;
    margin-bottom: 60rem;
}
.footer__image {
    width: 60%;
    margin-left: 40rem;
    margin-right: 180rem;
    max-width: 570rem;
}
.footer__image img {
    width: 100%;
}
.footer__contact {}
.footer__contact * {
    font-size: 20rem;
}
.footer__contact__head {
    border: solid 1rem #000;
    display: inline-block;
    padding: 0.1em 1em;
    margin-bottom: 10rem;
}
.footer__contact__name {
    line-height: 1.5;
}
.footer__contact__infoList {
    display: inline-flex;
    line-height: 1.5;
}
.footer__contact__infoList--main {
    margin-top: 20rem;
}
.footer__contact__infoList dt {
    font-weight: 400;
}
.footer__contact__infoList dt::after {
    content: "：";
}
.footer__contact__infoList dd {}
.footer__contact__infoList__dhwLink {
    margin: 20rem 0;
}
.footer__contact__infoList__dhwLink a {
    background-color: #f7701b;
    color: #fff;
    padding: 0.1em 1em;
    border-radius: 3rem;
}
.footer small {
    font-size: 15rem;
    background-color: #fff;
    color: #000;
}
.footer::after {
    content: "";
    display: block;
    height: 70rem;
    width: 100%;
    background-image: url(../img/2025/header_bg_pattern.svg);
    position: absolute;
    bottom: 0;
    left: 0;
}
@media screen and (max-width: 767px) {
    .footer {
        border-radius: 67rem 67rem 0 0;
        padding-top: 50rem;
        padding-bottom: 80rem;
        margin-top: -80rem;
    }
    .footer__listsCol {
        flex-direction: column;
        gap: 20rem;
        margin-bottom: 30rem;
    }
    .footer__list {}
    .footer__list__head {
        font-size: 16rem;
        padding: 0 5rem;
        height: 30rem;
        width: 50rem;
    }
    .footer__list__body {
    }
    .footer__list__body img {
        height: 50rem;
    }
    .footer__list__body--rethink img {
        height: 65rem;
    }
    .footer__col {
        flex-direction: column;
        gap: 30rem;
        margin-bottom: 30rem;
    }
    .footer__image {
        margin: 0;
        width: 100%;
    }
    .footer__contact * {
        font-size: 14rem;
    }
    .footer small {
        font-size: 12rem;
    }
    .footer::after {
        height: 40rem;
    }
}