@charset "UTF-8";

.c-textSlide{

}

/*　
---------------------------------------------------------*/


.outline{
    position: relative;
    z-index: 1;
}
.outline_inner{
    padding-top: 18rem;
    padding-bottom: 18rem;
    position: relative;
    z-index: 5;
}
.outline_img{
    border-radius: var(--radius-m);
    overflow: hidden;
}
.outline_mes{
    font-size: var(--f16);
    margin-top: 3rem;
    display: grid;
    gap: 3.5rem 0;
}
.outline_name{
    text-align: right;
    font-size: var(--f18);
    margin-top: 2rem;
}

.outline .c-textSlide2{
    top: 10rem;
}
.outline .c-textSlide2_main{
    width: 512rem;
}

/* hover  */
@media (hover: hover) and (pointer: fine) {
}

/* sp */
@media only screen and (max-width: 767px) {
    .outline{}
    .outline_inner{
    padding-top: 7rem;
    padding-bottom: 6rem;
}
    .outline_img{}
    .outline_mes{
    font-size: 1.4rem;
    margin-top: 2rem;
}
    .outline .c-textSlide2{
    top: 4rem;
}
    .outline .c-textSlide2_main{
    width: 256rem;
}
}


/*　
---------------------------------------------------------*/

.greeting{
    position: relative;
    z-index: 1;    
}
.greeting_inner{
    padding-top: 18rem;
    padding-bottom: 18rem;
    position: relative;
    z-index: 5;    
}
.greeting_data{
    display: flex;
}
.greeting_mes{
    flex: 1;
    font-size: var(--f16);
    display: grid;
    gap: 2rem 0;    
}
.greeting_photo{
    width: 40rem;
    margin-left: 10rem;
}
.greeting_img{
    margin-bottom: 2.5rem;
    overflow: hidden;
    border-radius: var(--radius-m);
}
.greeting_post{
    font-size: var(--f16);
    line-height: 1;
    margin-bottom: 1.3rem;
}
.greeting_name{
    display: flex;
    align-items:flex-end;
    line-height: 1;
}
.greeting_name_ja{
    font-size: var(--f28);
}
.greeting_name_en{
    flex: 1;
    font-weight: 300;
    font-size: var(--f14);
    line-height: 1.2;
    opacity: 0.3;
    margin-left: 2.3rem;
    text-transform: uppercase;    
}

.greeting .c-textSlide2{
    top: 10rem;
}
.greeting .c-textSlide2_main{width: 594rem;}


/* hover  */
@media (hover: hover) and (pointer: fine) {
}

/* sp */
@media only screen and (max-width: 767px) {
    .greeting{}
    .greeting_inner{
    padding-top: 7rem;
    padding-bottom: 6rem;
}
    .greeting_data{
    display: block;
}
    .greeting_mes{
    font-size: 1.4rem;
}
    .greeting_photo{
    width: auto;
    margin: 2rem 0 0;
}
    .greeting_img{
    margin-bottom: 1.5rem;
}
    .greeting_post{
    font-size: 1.4rem;
    margin-bottom: .5rem;
}
    .greeting_name{}
    .greeting_name_ja{
    font-size: 1.8rem;
}
    .greeting_name_en{
    font-size: 1.2rem;
    margin-left: 1rem;
}
    .greeting .c-textSlide2{
    top: 3rem;
}
    .greeting .c-textSlide2_main{
    width: 298rem;
}
}


/*　
---------------------------------------------------------*/

.history{
    position: relative;
    z-index: 1;     
}
.history_inner{
    padding-top: 18rem;
    padding-bottom: 18rem;
    position: relative;
    z-index: 5;    
}
.history_mes{
    border: 1px solid rgba(51, 51, 51, 0.4);
    font-size: var(--f16);
    padding: 7rem 9rem;
    display: grid;
    gap: 2rem 0;    
}
.history_list{
    /* max-width: 60rem; */
    margin-left: 31rem;
    margin-top: 10rem;
}
.history_list dl{
    display: flex;
    font-size: var(--f16);
    padding-bottom: 4.7rem;
    position: relative;
    z-index: 1;
}
.history_list dl:before{
    content: "";
    z-index: 1;
    position: absolute;
    background: rgba(51, 51, 51, 0.4);
    height: 100%;
    width: 1px;
    top: 1.7rem;
    /* bottom: 0; */
    left: max(18.3rem, 116px);
}
.history_list dl:after{
    content: "";
    z-index: 1;
    position: absolute;
    top: 1.7rem;
    left: max(18.3rem, 116px);
    width: .92rem;
    height: .92rem;
    background: #13162D;
    border-radius: 100px;
    transform: translate(-50%, -50%);
}
.history_list dl:last-child{
    padding-bottom: 0;
}
.history_list dl:last-child:before{
    display: none;
}
.history_list dt{
    display: flex;
    width: max(18.3rem, 100px);
    margin-right: 6rem;
}
.history_list_y{}
.history_list_m{
    margin-left: 2.5rem;
}
.history_list_t{}

.history_list dd{
    flex: 1;
}

.history .c-textSlide2{
    top: 10rem;
}
.history .c-textSlide2_main{
    width: 646rem;
}
/* hover  */
@media (hover: hover) and (pointer: fine) {
}

/* sp */
@media only screen and (max-width: 767px) {
    .history{}
    .history_inner{
    padding-top: 7rem;
    padding-bottom: 6rem;
}
    .history_mes{
    font-size: 1.4rem;
    padding: 2rem 2rem;
}
    .history_list{
    margin-left: 0;
    margin-top: 4rem;
}
    .history_list dl{
    display: block;
    padding-left: 2rem;
    font-size: 1.4rem;
    padding-bottom: 1.7rem;
}
    .history_list dl:before{
    left: 4px;
    top: 0.7rem;
}
    .history_list dl:after{
    left: 4px;
    top: 0.7rem;
}
    .history_list dl:last-child{}
    .history_list dl:last-child:before{}
    .history_list dt{
    width: auto;
    margin: 0;
    line-height: 1;
}
    .history_list_y{}
    .history_list_m{
    margin-left: 1.5rem;
}
    .history_list_t{}
    .history_list dd{}
    .history .c-textSlide2{
    top: 3rem;
}
    .history .c-textSlide2_main{
    width: 322rem;
}
}


/*　
---------------------------------------------------------*/

.organization{
    position: relative;
    z-index: 1;      
}
.organization_inner{
    padding-top: 18rem;
    padding-bottom: 18rem;
    position: relative;
    z-index: 5;        
}
.organization_box{}
.organization_box + .organization_box{
    margin-top: 9.5rem;
}
.organization_zu1{
    max-width: 59.5rem;
    margin: 0 auto;
}

.organization_zu2{max-width: 101.2rem;margin: 0 auto;}

html[lang="en"] .organization_zu1{
    max-width: 65.9rem;
}

html[lang="en"] .organization_zu2{
    max-width: 122.5rem;
}

.organization .c-textSlide2{
    top: 10rem;
}
.organization .c-textSlide2_main{
    width: 655rem;
}

/* hover  */
@media (hover: hover) and (pointer: fine) {
}

/* sp */
@media only screen and (max-width: 767px) {
    .organization{}
    .organization_inner{
    padding-top: 7rem;
    padding-bottom: 6rem;
}
    .organization_box{}
    .organization_box + .organization_box{
    margin-top: 4.5rem;
}
    .organization_zu1{}
    .organization_zu2{}
    .organization .c-textSlide2{
    top: 3rem;
}
    .organization .c-textSlide2_main{
    width: 333rem;
}
}


/*　
---------------------------------------------------------*/

.members{
    position: relative;
    z-index: 1;  
}
.members_inner{
    padding-top: 18rem;
    padding-bottom: 18rem;
    position: relative;
    z-index: 5;  
}
.members_link{
    position: relative;
    z-index: 1;
    overflow: hidden;
    border-radius: var(--radius-m);
    display: block;
}
.members_link:before{
    content: "";
    z-index: 2;
    position: absolute;
    background: linear-gradient(180deg, rgba(28, 55, 150, 0) 0%, rgba(28, 55, 150, 0.7) 100%);    
    top:0;
    bottom: 0;
    right:0;
    left: 0;
}
.members_mes{
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 0;
    right: 0;
    text-align: center;
    transform: translate(0, -50%);
    color: #fff;
    font-size: var(--f24);
    line-height: var(--line-height-sub);
}


html[lang="en"] .members_mes{
    padding: 0 11%;
}

.members_img{}

.members_arrow {
    background: url(../img/common/arrow2_w.svg) 0 0 no-repeat;
    background-size: contain;
    position: absolute;
    z-index: 6;
    width: 5vw;
    height: 5vw;
    top: 3rem;
    right: 3rem;
  transition: transform var(--duration-main) var(--easing-transform);

}



.members .c-textSlide2{
    top: 10rem;
}
.members .c-textSlide2_main{
    width: 457rem;
}



/* hover  */
@media (hover: hover) and (pointer: fine) {

  a:hover .members_arrow{
    transform: translate(1rem,-1rem);
  }
}

/* sp */
@media only screen and (max-width: 767px) {
    .members{}
    .members_inner{
    padding-top: 7rem;
    padding-bottom: 6rem;
}
    .members_link{}
    .members_link:before{}
    .members_mes{
    font-size: 1.1rem;
    position: 0;
}
html[lang="en"] .members_mes{
    padding: 0 4%;
}


    .members_img{}

    .members_arrow {
        width: 8vw;
        height: 8vw;
        top: 1rem;
        right: 1rem;
    }

    .members .c-textSlide2{
    top: 3rem;
}
    .members .c-textSlide2_main{
    width: 235rem;
}

}


/*　
---------------------------------------------------------*/


.gallery_bg{
    background: var(--color-blue);
    color: #fff;
    padding-top: 24rem;
    padding-bottom: 9rem;
}
.c-gallery_inner{

}

/* hover  */
@media (hover: hover) and (pointer: fine) {
}

/* sp */
@media only screen and (max-width: 767px) {

    .gallery_bg{
    padding-bottom: 3rem;
    padding-top: 7rem;
}
    .c-gallery_inner{}
}

