:root{
    /* 基本となる初期値 */
    --text-color     : #040404;
    --font-default   :18px;
    --font-default-sp:14px;
    --font-h1        :calc(var(--font-default)*2.0);
    --font-h1-sp     :calc(var(--font-default-sp)*1.8);
    --font-h2        :calc(var(--font-default)*1.5);
    --font-h2-sp     :calc(var(--font-default-sp)*1.4);
    --font-h3        :calc(var(--font-default)*1.25);
    --font-h3-sp     :calc(var(--font-default-sp)*1.1);

    /* テーマ */
    /* --theme-color: #0054A7; */
    --theme-color : #DDDDDD;
    --theme-color2: #00A0F6;
    --theme-fc    : #333;
    --theme-fc2   : #FFF;

}

@font-face {
	font-family: 'MyFont';
	src: url(./font/NotoSansJP-VariableFont_wght.ttf);
}
body {font-family: MyFont;}
p,span{font-size:var(--font-default);}
h2{font-size:var(--font-h2); text-align: center;}
h3{font-size:var(--font-h3); text-align: center;}
.no-br{display: inline-block;}
.ta-right{text-align: right !important;}
.blues{
    color           : var(--theme-fc);
    background-color: var(--theme-color);
    padding-top:5px;
    padding-bottom:25px;
}
@media screen and (max-width: 767px) {
/*ウィンドウ幅が0～767pxの場合にCSSを適用*/
    p,span{font-size:var(--font-default-sp);}
    h2{font-size:var(--font-h2-sp);text-align: center;}
    h3{font-size:var(--font-h3-sp);}
}
/*** top_img ***/
/* TOP画像の隙間埋め(bodyのマージンもついでに埋める) */
body,.top_imgs>img{margin:0;}

/* TOP画像 */
.top_imgs>img{width:100%;}

/*-----PC<->スマホ(タブレット)間切替記述-----*/
.top_imgs>.sp-mode{display:none;}
@media screen and (max-width: 767px) {/*ウィンドウ幅が0～767pxの場合にCSSを適用*/
    .top_imgs>.pc-mode{display:none;}
    .top_imgs>.sp-mode{display:block;}
}

/* button_area */
.button_area{
    width:100%;
    max-width:1500px;
    margin:auto;
    display:flex;
    padding-bottom: 25px;
}
.button_area>div{
    /* width:50%; */
    width:100%;

    display:flex;
    padding-top:15px;
}
.button_area .jump_button{
    transition:0.25s;
}
.button_area .jump_button:hover{
    opacity: 0.8;
}
.jump_button a{
    text-decoration: none;
    color:var(--theme-fc2);
}
.jump_button.douki a{
    color:var(--theme-color2);
}
.button_area .jump_button{
    width:30%;
    max-width: 350px;

    text-align: center;
    line-height:calc(var(--font-h3));
    color:var(--theme-fc2);
    background-color: var(--theme-color2);
    font-weight: bold;
    border-radius: 40px;
    margin:auto;
}
/*-----PC<->スマホ(タブレット)間切替記述-----*/
@media screen and (max-width: 767px) {
/*ウィンドウ幅が0～767pxの場合にCSSを適用*/
    .button_area{display:block;}
    .button_area{display:block;}
    /* .button_area>div{width:90%;margin:auto;} */
    .button_area>div{width:100%;margin:auto;}
    .button_area .jump_button{
        width:30%;
        max-width: 125px;
        margin:auto;
    }
}

/* catch */
.catch1{padding-bottom: 50px;}
.catch1>h2{font-size: var(--font-h1);}
.catch1>p{width:90%;margin:auto; text-align: center; font-size: var(--font-h3);}
/*-----PC<->スマホ(タブレット)間切替記述-----*/
@media screen and (max-width: 767px) {
    /*ウィンドウ幅が0～767pxの場合にCSSを適用*/
    .catch1>h2{font-size: var(--font-h1-sp);}
    .catch1>p{width:95%; margin:auto; font-size: var(--font-h3-sp);}
}
    

/* pr-area */
.pr-table,.pr-col{display: flex;}
.pr-bloc{width:40%; margin:20px auto; display: table;}
.pr-col.col1>.pr-bloc>.pr-h3{height:150px;}
/* .pr_area>h2{font-size: var(--font-h1);} */
.pr-bloc.main_pr{
    /* width:70%;  */
    width: 703px; 
    margin:auto;}
.pr-bloc.main_pr h3{
    /* font-size: 40px; */
    margin:0;
}
.pr-bloc.main_pr ol{
    width:100%;
    /* font-size: 36px; */
    padding:10px;

}
.pr-bloc.main_pr p{
    width:100%;
    /* font-size:var(--font-h2); */
    /* font-weight: bold; */
    margin:0;
    /* margin-left:auto;
    margin-right:auto; */
}
.syuyou3{max-width:650px;margin:auto;}
p.line_p{width:522px !important; margin:0 auto !important;}
.jump_link{
    width:50%;
    max-width: 260px;
    border: 3px solid var(--theme-color2);
    border-radius: 25px;

    margin:auto;
    margin-bottom: 50px;
    
    transition: 0.2s;
}
.jump_link:hover{background-color: var(--theme-color2);}
.jump_link:hover a{color: var(--theme-fc2);}
.jump_link a{
    text-decoration:none;
    color: var(--theme-color2);
}

.youtube_01{width:80%;height: 30vh; max-width: 560px; max-height:315px; margin:auto; padding-bottom: 25px;}
.youtube_01>iframe{width:100%; height:100%;}

.video_area{width:55%; margin: 20px auto; display:flex;}
.video_area .video_col{
    width:30%;
    max-width: 225px;
    margin:auto;
}
.video_window{
    width:100%;
    /* border-radius: 15px;
    border:5px solid var(--theme-color); */
}
.video_area .video_col>iframe{
    width:100%;
    height:auto;
    aspect-ratio: 410 / 729;
}

/*-----PC<->スマホ(タブレット)間切替記述-----*/
@media screen and (max-width: 767px) {
    /*ウィンドウ幅が0～767pxの場合にCSSを適用*/
    .pr_area>h2{font-size: var(--font-h2-sp);}
    .pr-col,.pr-table{display: block;}
    .pr-bloc{width:95%;margin:auto; margin-bottom:15px;}
    .pr-col.col1>.pr-bloc>.pr-h3{height:auto;}
    .pr-bloc.main_pr{width:95%;}
    .pr-bloc.main_pr>*{max-width:100vw; margin:auto;}
    /* .pr-bloc.main_pr h2{font-size: 20px;} */
    /* .pr-bloc.main_pr .pr-h3{font-size: 20px;} */
    /* .pr-bloc.main_pr h3{font-size:var(--font-h3-sp);} */
    /* .pr-bloc.main_pr p{width:100%; max-width:100vw; font-size: 3vw; font-weight: bold;} */
    .pr-bloc.main_pr p{width:100%; max-width:96vw; }
    .pr-bloc.main_pr span{font-size:13px;}
    .pr-bloc.main_pr 
    .syuyou3{max-width:auto;margin:auto;}
    .jump_link{width: 75%; margin-bottom:1vh;}

    .video_area{width:100%; margin: 20px 0; display:block;}
    .video_area .video_col{
        width:60%;
        max-width: 225px;
        margin:auto;
    }
    .video_window{
        width:100%;
        /* border-radius: 15px; */
    }
    .video_area .video_col>iframe{
        width:100%;
        height:auto;
        aspect-ratio: 410 / 729;
    }
}

/* act_pr */
.act_pr>p{text-align: center;}
.sns_icons{width:288px; margin:auto; display:flex;}
.x_logo_img,.insta_logo_img,.yt_logo_img,.tiktok_logo_img{
    width:40px;
    padding:16px;
}


/* profile */
.profile{
    padding-bottom:50px;
    /* background-image: url(../img/prof.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; */
  
}
.prof_sum{position:relative; display:flex;}
/* .prof_sum>img{width:100%;} */
.prof_sum>img{
    
    margin:0;
}

/* .img_default{display: none;} */
/* @media screen and (max-width:1200px) { */
.profile_img_sp{display: none;}
@media screen and (max-width:767px) {
    .profile_img{display: none;}
    .profile_img_sp{
        width:100%;
        display: block;
    }
}
.prof_sum>h2{
    font-weight: bold;
    margin:0 !important;
    position:absolute;
    
    /* transform: rotate(90deg); */
}
.profile_img{
    /* max-height: 100%; */
    max-height:100%;
    /* width:89vw; */
    width:100vw;
    /* padding-left:11vw; */
    /* width:46vw; */
    /* position: absolute;
    bottom:0;
    right:0; */
}

.PROF_logo{
    color:var(--theme-fc2);
    
    writing-mode: vertical-rl;
    font-size: min(12vw,150px);
    line-height: min(12vw,150px);
    /* top:min(3vw,30px); */
    top :5px;
    left:0px;
}
.PROF_name{
    /* color:var(--theme-color2); */
    color:var(--theme-fc2);
    writing-mode: vertical-rl;
    font-size: min(11vw,80px);
    /* font-size: 80px; */
    line-height: min(11vw,80px);
    top:13vh;
    right:12.5vw;
}
.PROF_name2{
    /* color:var(--theme-color2); */
    color:var(--theme-fc2);
    writing-mode: vertical-rl;
    font-size: min(5vw,20px);
    line-height: min(5vw,20px);
    top:13.5vh;
    right: 10vw;
}
.PROF_name2 em{
    text-combine-upright: all;
    font-style: normal;
  }
.PROF_name3{
    color:var(--theme-fc2);
    font-size: min(6vw,22px);
    line-height: min(6vw,22px);
    top:10vh;
    right: 10.5vw;
}
.PROF_name4{
    color:var(--theme-fc2);
    font-size: min(5vw,20px);
    line-height: min(5vw,20px);
    top:min(65vw);
    right: 10vw;
}
.PROF_logo,.PROF_name,.PROF_name2,
.PROF_name3,.PROF_name4{
    user-select: none;
    z-index: 1;

}
.PROF_name,.PROF_name2,.PROF_name3,.PROF_name4{
    text-shadow: #252525 1px 0 10px;
}
.prof_box{display:flex; margin-top: 5px;}
.prof_box>h3{
    width:25%;
    min-width:140px;
}
.prof_box p{
    margin:0;
}
.prof_box>div{
    width:74%;

    margin:auto;
    padding-left:20px;
    border-left:solid 1px var(--theme-fc2);
}
.prof_field,
.prof_field *{z-index: 2;}
.prof_field{
    height:100%;
    width:42%;
    color:var(--theme-fc2);
    /* color:var(--theme-fc2); */
    /* min-width: 500px; */
    /* height:60%; */
    /* max-height:63vw; */
    /* height:65vw; */
    margin-top:min(3%,2px);
    /* padding-left:5px; */
    padding-left:11vw;
    padding-right:1vw;
    /* padding-bottom:35px; */
    /* overflow-y: scroll; */
    position:absolute;
    top:0;
    left:0;
    /* left:min(15vw,35px); */
    background-color:rgba(0,0,0,0.35);

}
/* .prof_field.pc_ver *{text-shadow: #333 1px 0 10px;} */
.box_top{margin-top:min(50%,50px);}
.box_bottom{margin-bottom:50%;}
.prof_field::-webkit-scrollbar{
    display: none;
}
.prof_field>.prof_box{width:100%;}
.prof_field h3{
    font-size: clamp(16px, 1.3vw, 22px) !important;
    text-align: left;
}
.prof_field span{
    /* white-space:nowrap; */
    font-size: clamp(10px, 1vw, 18px) !important;
}

.prof_field-sp{
    padding-bottom:20px;

    display: none;
}

/* 私の動機ボタン */
.profile .jump_button{
    width:35%;
    max-width: 200px;
    line-height:calc(var(--font-h3)*0.5);
    
    text-align: center;
    color:var(--theme-color2) !important;
    border:4px solid var(--theme-color2);
    font-weight: bold;
    border-radius: 25px;
    margin:0 auto;
    margin-bottom:50px;

    position:absolute;
    top:clamp(450px,55vw,500px);
    right:5vw;
}
/* お知らせ/活動スケジュール */
.news_field{
    width:90%;
    max-width: 80vw;
    margin:auto;
    padding:20px;
    background:var(--theme-fc2);
    border-radius: 20px;
}
.news_field th{
    width:35%;
    min-width:270px;
    vertical-align: top;
    text-align: left;
}

.news_field th>span{margin-top:5px;}
.news_field td p{margin:5px; white-space:nowrap;}
.news_field td span{white-space:nowrap;}
div.news_field{
    display:none;
}
div.news_field>div{
    margin-top:5px;
}
div.news_field>div>div>span{
    font-weight: bold;
}
div.news_field>div>p{
    margin:6px;
}
.hiduke{min-width:258px;}

.sittehosiikoto>div>ol{
    list-style-position: outside;
    width:70vw;
    margin:auto;
}
.sittehosiikoto>div>ol>li{
    margin-bottom:20px ;
}
.sittehosiikoto>div>ol::marker{
    vertical-align: top;
}

@media screen and (max-width: 767px) {
    /*ウィンドウ幅が0～767pxの場合にCSSを適用*/
    .prof_box{display:block;}
    .prof_box>h3,
    .prof_box>div{width:99%;}
    .prof_box>div{font-size: 14px;border-left:none; padding: 0;}
    .PROF_logo{
        bottom:auto;
        top:0vw;
    }

    .PROF_name{
        top:15vw;
        right: 10vw;
    }
    .PROF_name2{
        font-size: min(4vw,16px);
        line-height: min(4vw,16px);
        top:15vw;
        right: min(6vw,15px);
    }
    .PROF_name3{
        font-size: min(3vw,16px);
        line-height: min(3vw,16px);
        top:10vw;
        right: min(6vw,15px);
    }

    .prof_field{display: none;}
    .prof_field-sp{
        display: block;
    }
    .prof_field-sp p{
        text-align: center;
    }

    .profile .jump_button{width:50%; position:static;}
    .hiduke{min-width:30%;}

    .sittehosiikoto>div>ol{
        width:80vw;
        margin:0;
    }
    div.news_field{display:block;}
    div.news_field p{
       padding-left:10px;
    }
    table.news_field {
        width:100%;
        max-width: 90vw;
        padding:5px;
        display:none;
    }
    table.news_field th{
        width:40%;

    }
}
.my_douki{max-height: 1527px; position:relative; overflow: hidden;}
.my_douki>a{margin:0 !important; padding: 0 !important;;}
.my_douki>a>img{width:100%;}
.my_douki>a>h2{
    color: var(--theme-color);
    font-size:25vw;
    margin:0;
    position:absolute;
    writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
    /*ウィンドウ幅が0～767pxの場合にCSSを適用*/
    .my_douki{max-height: 396px;}
    h2.watasino{top:5vw;right:0vw;}
    h2.douki{bottom:5vw;left:0vw;}
}
/* カンパ */
/* .campa{
    margin-top:-10.5%;
    padding-top: 7.5%;
} */
.campa p{width:90%; margin:auto;}
.banc_box{display: flex;}
.banc_box h3{margin:5px 0;}
.banc{
    width: 270px !important;;
    /* text-align: center; */
}
/* .banc b{text-align: center;} */
/* .box_c1{margin-left: auto;margin-right: 25px !important;}
.box_c2{margin-right: auto;margin-left: 25px !important;} */
.access{
    width:90%;
    margin:auto;
    display:flex;
}
.access>*{margin:0 auto;}
/* .access>div{width:60%; max-width: 400px; margin-top:0; margin-right:0;} */
.access>div{width:100%; max-width: 500px;}
/* .access>div>p{min-width: 320px; margin:0 auto;} */
/* .access>iframe{width:40%; margin-left:5px;} */
.button_line_none{text-decoration: none;}
.jump_button.forms{
    width:60%;
    font-size: var(--font-h3);
    line-height: calc(var(--font-h3)*1.5);
    text-align: center;
    font-weight: bold;
    padding:25px;
    color: var(--theme-color);
    background-color: var(--theme-fc);
    border-radius: 100px;

}

@media screen and (max-width: 767px) {
    /*ウィンドウ幅が0～767pxの場合にCSSを適用*/
    .campa p{width:95%; font-size: var(--font-default-sp) !important;}
    .banc_box{display: block;}
    .jump_button.forms{
        width:80%;
        font-size: var(--font-h3-sp);
        line-height: calc(var(--font-h3-sp)*1.5);
        text-align: center;
        font-weight: bold;
        padding:15px;
        color: var(--theme-color);
        background-color: var(--theme-fc);
        border-radius: 100px;
    }
    .access{
        width:95%;
        margin:auto;
        display:block;
    }
    .box_c1,.box_c2{margin: auto !important;}
    .access>*{width:100%; margin:0 auto;}
    .access>div{width:100%; margin:25px 0; }
    .access>iframe{width:100%; margin:0;}
}

footer{
    text-align: center;
}



/******* 私の動機・ *******/
.douki_samne{
    position:relative;
}
.douki_img{
    width:100%;
    margin:auto;
    align-content: center;
}
/* .douki_samne>h2{

} */
.main_h2{
    width:100%;
    text-align: center;
    font-size: 4vw;
    line-height: 6vw;
    color:var(--theme-color2);
    background-color: rgba(255,255,255,0.8);
    /* border-top:1vh double rgba(255,255,255,0);
    border-bottom:1vh double rgba(255,255,255,0);
    box-sizing:content-box; */
    /* position:absolute;
    left:0;
    top:20vw; */
}
.sub_h2{
    font-size: 3vw;
    top:25vw;
}
.douki_content{
    width:699px;
    margin:auto;
}   
.cntnt{
    width:100%;
    /* margin:auto; */
}
.douki_content ol{
    width:60%;
    max-width: 60vw;
    list-style-type: none;
    list-style-position: outside;
    padding-left:30px;
    margin:10px auto;
}
.douki_content ol li{
    counter-increment: cnt;;
}
.douki_content ol li::marker{
    content: "("counter(cnt) ") ";
}
.douki_content h2{
    width:550px;
    text-align: center;
    margin:15px auto;
    color:var(--theme-color2);
}

.douki_content p{
    /* line-height: calc(var(--font-default)+4px); */
}
.douki_content>p>span,
.douki_content>div>span{
    line-height: calc(var(--font-default)+4px);
}
.douki_content>div>span{
    line-height: calc(var(--font-default)+4px);
}
.douki_content .blues{
    border-radius: 20px;
    padding:25px;
}
.douki_content h2>span{
    font-size: var(--font-h2);
}
@media screen and (max-width: 767px) {
    /*ウィンドウ幅が0～767pxの場合にCSSを適用*/
    /* .douki_samne>h2{
    } */
    .main_h2{
        font-size: 6vw;
        line-height: 8vw;
        /* top:15vw; */
        /* left:10vw; */
    }
    .douki_content h2{
        width:100%;
        text-align: left;
        margin:auto;
    }
    .douki_content h2>span{
        font-size: calc(var(--font-h2-sp) - 2px);
        text-align: center;
    }
    .douki_content{
        /* width:95%; */
        width:99%;
    }
    .cntnt{
        width:100%;
        margin:0;
    }
    .douki_content ol{
        width:auto;
        max-width:auto;
    }
    .douki_content p span{
        /* font-size: calc(var(--font-default-sp) - 3.4px); */
        font-size: calc(var(--font-default-sp));
    }
}

/* timer */
.timerHidden{ display: none;}
.timerVisible{ display: block;}