.l-main{
    overflow:hidden
}
section:not(:nth-of-type(1)){
    padding-top:100px

}
section p{
    font-size:14px;
    font-size:.875rem
}
section .textIndent{
    text-indent:-1em;
    padding-left:1em
}
section .mb-1em{ 
    margin-bottom:1em
}
section .note{
    font-size:13px;
    font-size:.8125rem
} 
section .fontbold{ 
    font-weight:700
}
.red-title__h2{ 
    font-weight:700;
    font-size:20px;
    font-size:1.25rem;
    line-height:1.65;
    border-bottom:1px solid #9e9e9f;
    margin-bottom:40px
}
.red-title__h2::before{
    content:"";
    width:17px;
    height:17px;
    background-color:#000;
    display:inline-block;
    margin-right:.2em
}
.biz-plan-note{
    color:#e50012;
    font-size:24px;
    font-size:1.5rem;
    font-weight:700
}
.biz-plan--list{
    margin-top:50px;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    gap:10px
}
.biz-plan--list .m-cardItem{ 
    max-width:282px
}
.businessPlan__list--item .title_lead{ 
    font-size:16px;
    font-size:1rem;
    font-weight:500
}
.businessPlan__list--item .text{ 
    font-size:14px;
    font-size:.875rem
}
.businessPlan--heading{ 
    font-size:20px;
    font-size:1.25rem
}
.businessPlan__content{ 
    margin-top:1em;
    padding:8px 35px;
    border:1px solid #000;
    position:relative;
    margin-bottom:10px
}
.businessPlan__content::after,.businessPlan__content::before{
    content:"";
    width:96%;
    height:3px;
    background-color:#fff;
    position:absolute;
    left:50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%)
}
.businessPlan__content::before{ 
    top:-2px
}
.businessPlan__content::after{ 
    bottom:-2px
}
.businessPlan__item:not(:nth-of-type(1)){
    margin-top:20px
}
.region__list{ 
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    margin-top:70px;
    margin-bottom:50px
}

.region__list--item{
    text-align:center;
    border-left:1px solid #9e9e9f;
    width:33%;
    height: 500px;
    padding-inline:2%
}

.region__list--item:nth-last-of-type(1){
 
border-right:1px solid #9e9e9f
}
.region__list--title{
 
font-family:Oswald,sans-serif;
font-optical-sizing:auto;
font-weight:600;
font-style:normal;
font-size:35px;
font-size:2.1875rem
}
.region__list--text{
 
font-size:16px;
font-size:1rem
}
.region--text{
 
font-size:14px;
font-size:.875rem;
line-height:1.4285714286;
background-color:#000;
color:#fff;
border-radius:18px;
padding:15px 10px
}
.entry-info .entry-info--list li{
 
margin-bottom:1em
}
.entry-info .entry-info--note{
 
color:#e50012;
font-size:20px;
font-size:1.25rem;
font-weight:700
}
.schedule__list{
 
position:relative
}
.schedule__list::before{
 
position:absolute;
top:0;
left:8px;
content:"";
height:100%;
width:8px;
background-color:#000
}
.schedule__list .schedule__item{
 
padding-left:34px;
padding-top:50px
}
.schedule__list .schedule__item p{
 
font-size:14px;
font-size:.875rem;
line-height:1.5714285714
}
.schedule__list .schedule__item .p-bold{
 
font-weight:700;
font-size:20px;
font-size:1.25rem
}
.schedule__list .schedule__item .table-wrap{
 
overflow:inherit!important
}
.schedule--heading{ 
line-height:1.3333333333;
font-size:30px;
font-size:1.875rem;
font-weight:700;
position:relative
}
.schedule--heading::before{
 
position:absolute;
top:50%;
left:-34px;
-webkit-transform:translateY(-50%);
transform:translateY(-50%);
content:"";
width:24px;
height:24px;
border-radius:50%;
background-color:#000;
display:inline-block
}
.schedule--heading .year{
 
font-size:20px;
font-size:1.25rem;
line-height:2
}
.schedule--note{
 
color:#e50012;
font-size:20px;
font-size:1.25rem;
font-weight:700
}
.red__table{
 
width:623px
}
.red__table td,.red__table th{
 
font-size:14px;
font-size:.875rem;
text-align:center;
border:1px solid #a9aaaa;
padding:3px 5px
}
.red__table th{
 
background-color:#ececec;
font-weight:400;
width:100px
}
.red__table td:nth-of-type(2){
 
width:100px
}
.notice .notice--heading{
 
font-size:16px;
font-size:1rem;
font-weight:500
}
.notice .notice--list{
 
margin-top:1em
}
.notice .notice--list li{
 
margin-bottom:1em
}
.faq .faq__item{
 
font-size:14px;
font-size:.875rem;
border-top:1px solid #000
}
.faq .answer,.faq .question{
 
padding:25px 3em 25px 5em;
position:relative
}
.faq .answer::before,.faq .question::before{
 
content:"";
font-family:Oswald,sans-serif;
font-optical-sizing:auto;
font-weight:600;
font-style:normal;
line-height:1.0136;
font-size:25px;
font-size:1.5625rem;
position:absolute;
top:50%;
left:1em;
-webkit-transform:translateY(-50%);
transform:translateY(-50%)
}
.faq .question{
 
cursor:pointer
}
.faq .question::before{
 
content:"Q"
}
.faq .question::after{
 
content:"";
right:2em;
background-repeat:no-repeat;
background-size:cover;
background-image:url(../../img/ico_plus.svg);
width:16px;
height:16px;
position:absolute;
top:50%;
-webkit-transform:translateY(-50%);
transform:translateY(-50%);
-webkit-transition:all .3s;
transition:all .3s
}
.faq .question.open::after{
 
-webkit-transform:translateY(-50%) rotate(-45deg);
transform:translateY(-50%) rotate(-45deg)
}
.faq .answer{
 
color:#fff;
background-color:#000
}
.faq .answer::before{
 
content:"A"
}
.faq .faq__content{
 
display:none
}
.l-footer{
 
padding-block:100px 80px
}
.entry-fixed{
 
width:235px;
position:fixed;
bottom:10px;
right:10px;
z-index:2
}
.project-member{
 
position:relative;
z-index:1;
padding-top:50px
}
.project-member--wrapper{
 
margin-inline:auto;
max-width:1200px
}
.project-member--slider{
 
margin-bottom:20px
}
.modalOpenBtn{
 
position:relative;
z-index:1;
width:100%;
height:100%;
-o-object-fit:cover;
object-fit:cover
}
.modal{
 
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100dvh;
z-index:12;
overflow:auto
}
.modal.is-active .modal-contents{
 
-webkit-animation:slideinBottom .9s forwards;
animation:slideinBottom .9s forwards
}
@-webkit-keyframes slideinBottom{
 
0%{
 
-webkit-transform:translateY(300px);
transform:translateY(300px)
}
100%{
 
-webkit-transform:translateY(0);
transform:translateY(0)
}

}
@keyframes slideinBottom{
 
0%{
 
-webkit-transform:translateY(300px);
transform:translateY(300px)
}
100%{
 
-webkit-transform:translateY(0);
transform:translateY(0)
}

}
.modal .overlay{
 
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background-color:rgba(0,0,0,.8);
-webkit-backdrop-filter:blur(4px);
backdrop-filter:blur(4px)
}
.modal .modal-image{
 
border-radius:30px;
overflow:hidden;
text-align:center
}
.modal .modal-image img{
 
-o-object-fit:cover;
object-fit:cover
}
.modal .modal-contents{
 
margin-block:100px;
width:100%;
height:100%;
background-color:#fff;
position:relative;
padding:79px 83px 120px;
border-radius:30px
}
.modal .modal-contents .modal-close{
 
width:38px;
height:38px;
border-radius:50%;
background-color:#000;
display:block;
margin:60px auto 0;
position:relative
}
.modal .modal-contents .modal-close:hover{
 
opacity:.75
}
.modal .modal-contents .modal-close::after,.modal .modal-contents .modal-close::before{
 
content:"";
width:20px;
height:4px;
background-color:#fff;
position:absolute;
left:43%
}
.modal .modal-contents .modal-close::before{
 
-webkit-transform:rotate(-45deg) translateX(-50%);
transform:rotate(-45deg) translateX(-50%);
top:10px
}
.modal .modal-contents .modal-close::after{
 
top:24px;
-webkit-transform:rotate(45deg) translateX(-50%);
transform:rotate(45deg) translateX(-50%)
}
.modal .profile{
 
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack:justify;
-ms-flex-pack:justify;
justify-content:space-between;
margin-top:56px;
gap:20px
}
.modal .profile__content{
 
width:48%
}
.modal .profile--name{
 
font-size:30px;
font-size:1.875rem;
letter-spacing:.2em;
margin-bottom:20px
}
.modal .profile--mainPosition{
 
font-size:18px;
font-size:1.125rem;
font-family:Oswald,sans-serif;
font-optical-sizing:auto;
font-weight:600;
font-style:normal
}
.modal .profile--position{
 
font-size:13px;
font-size:.8125rem;
line-height:1.5384615385
}
.modal .profile--text{
 
width:50%;
font-size:14px;
font-size:.875rem;
line-height:1.6428571429
}
.pdf_dl_btn{
 
margin:1em 0
}
.pdf_dl_btn a{
 
width:100%;
display:block;
border-radius:15px;
background-color:#000;
color:#fff;
position:relative;
padding:10px 25px 8px;
font-size:30px;
font-size:1.875rem;
font-weight:800
}
.pdf_dl_btn a:hover{
 
text-decoration:none
}
.pdf_dl_btn a::after{
 
content:"";
position:absolute;
background-image:url(../../img/ico_plus_c.png);
background-size:contain;
background-repeat:no-repeat;
width:30px;
height:30px;
right:20px;
top:50%;
-webkit-transform:translateY(-50%);
transform:translateY(-50%)
}
.pdf_dl_btn_fix{
 
position:fixed;
left:0;
z-index:8;
bottom:-20px
}
@media screen and (max-width:768px){
 
.red-title__h2{
 
margin-bottom:20px
}
.biz-plan-note{
 
font-size:18px;
font-size:1.125rem
}
.biz-plan--list{
 
gap:15px 10px;
-ms-flex-wrap:wrap;
flex-wrap:wrap
}
.biz-plan--list .m-cardItem{
 
max-width:48%
}
.businessPlan__content{
 
padding:5px 20px
}
.region__list{
 
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column
}
.region__list--item{
 
border-left:none;
border-top:1px solid #9e9e9f;
width:100%;
padding:20px 10px
}
.region__list--item:nth-last-of-type(1){
 
border-right:none;
border-bottom:1px solid #9e9e9f
}
.region--text{
 
font-size:13px;
font-size:.8125rem;
line-height:1.5
}
.entry-info .entry-info--note{
 
font-size:16px;
font-size:1rem
}
.schedule__list::before{
 
left:4px;
width:4px
}
.schedule__list .schedule__item{
 
padding-left:24px
}
.schedule__list .schedule__item .table-wrap{
 
overflow:auto!important
}
.schedule--heading{
 
font-size:18px;
font-size:1.125rem
}
.schedule--heading::before{
 
width:14px;
height:14px;
left:-25px
}
.schedule--heading .year{
 
font-size:14px;
font-size:.875rem
}
.schedule--note{
 
font-size:16px;
font-size:1rem
}
.red__table{
 
width:530px
}
.red__table td,.red__table th{
 
font-size:12px;
font-size:.75rem
}
.faq .answer,.faq .question{
 
padding:15px 3.5em
}
.faq .answer::before,.faq .question::before{
 
font-size:20px;
font-size:1.25rem
}
.faq .question::after{
 
width:12px;
height:12px
}
.l-footer{
 
padding-block:100px 60px
}
.entry-fixed{
 
width:30%
}
.project-member--wrapper{
 
max-width:89.3%
}
.modal .modal-image{
 
border-radius:15px
}
.modal .modal-contents{
 
padding:25px 20px 35px;
margin-block:60px;
border-radius:15px
}
.modal .modal-contents .modal-close{
 
margin:45px auto 0
}
.modal .profile{
 
margin-top:25px;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column;
gap:2em
}
.modal .profile__content{
 
width:100%
}
.modal .profile--name{
 
font-size:25px;
font-size:1.5625rem;
margin-bottom:10px
}
.modal .profile--mainPosition{
 
font-size:16px;
font-size:1rem
}
.modal .profile--position{
 
font-size:12px;
font-size:.75rem
}
.modal .profile--text{
 
width:100%;
font-size:13px;
font-size:.8125rem
}
.pdf_dl_btn a{
 
width:100%;
font-size:19px;
font-size:1.1875rem
}
.pdf_dl_btn_fix{
 
bottom:-8px;
top:initial;
width:40%
}

}


.p-margin{
 

 margin-bottom: 50px;


}


.red-logoItem{
 

    overflow: hidden;

    position: relative;

    max-width: 144px;

    width: 100%;

    aspect-ratio: 1 / 1;

    -webkit-transition: all .2s cubic-bezier(0,0,.5,1);

    transition: all .2s cubic-bezier(0,0,.5,1);


}


.red-logoItem img{
 

    width: 80%;



}


