
/* common------------------------------- */
.c-tit01{ display: flex; flex-direction: column; align-items: flex-start; font-size: 2.2rem; font-weight: 600; color: var(--sub-color01); letter-spacing: 0.3em; line-height: 2.27; margin-bottom: 5rem; padding-top: 3.5rem; position: relative; z-index: -1; }
.c-tit01--eng{ display: block; align-items: center; font-family: var(--en-font); font-size: 3rem; color: var(--base-color); letter-spacing: 0; line-height: 1; margin-bottom: 4.5rem; position: relative; }
.c-tit01--eng::first-letter{ font-size: 5rem; font-weight: 500;  }
.c-tit01--eng::after{ content: ""; display: block; width: 5rem; height: 1px; background-color: var(--base-color); position: absolute; right: -6rem; top: 1.2em; }
.c-tit01:after{ content: ""; width: 30rem; height: 30rem; background: linear-gradient(45deg,#fff 60%,#e6e6e6); position: absolute; top: 0; left: 0; z-index: -1; }

/* img画像アニメーション */
.inview-image__wrap .image,
.inview-image__wrap .image img{transition-delay: 0; width: 100%; height: 100%; object-fit: cover; }
.inview-image__wrap .image{
    display: block;
    transform: translateX(-100%);
    overflow: hidden;
}
.inview-image__wrap .image img { transform: translateX(100%); }
.inview-image__wrap.is-active .image,
.inview-image__wrap.is-active img{
    transition-delay: 0.5s;
    transition-duration: 1.5s;
    transition-timing-function: cubic-bezier(.23,1,.32,1);
    transform: translateX(0%);
}

/*　フェードインアニメーション　*/
.inview-fade{ transform: translateY(5rem); opacity: 0; }
.inview-fade.is-active{ transition-duration: 1.5s;
    transition-timing-function: ease;
    transform: translateY(0); opacity: 1; }

/* MV------------------------------- */
.p-mv{ position: relative; height: calc(100vh - 10rem); margin-bottom: 40rem; }
.p-mv__slide{ position: absolute; }
.p-mv-A__slide{ right: 0; top: 0; height: calc(100% - 12.5vh); }
.p-mv-B__slide{ left: 0; bottom: 0; height: calc(100% - 25vh); }

.p-mv-A__slide-wrap{ width: 58vw; height: 100%; }
.p-mv-B__slide-wrap{ width: 12.5vw; height: 100%; }

.swiper-slide{opacity: 1 !important;}
.swiper-slide .image,
.swiper-slide .image img{transition-delay: 0.5s; width: 100%; height: 100%; object-fit: cover;}
.swiper-slide .image{
    transform: translateX(-100%);
    overflow: hidden;
}
.swiper-slide .image img { transform: translateX(100%); }
.swiper-slide-active { z-index: 2; }
.swiper-slide-active .image,
.swiper-slide-active .image img {
    transition-delay: 0s;
    transition-duration: 1.5s;
    transition-timing-function: cubic-bezier(.23,1,.32,1);
    transform: translateX(0%);
}

.p-mv__txt{ position: absolute; left: calc(15rem + 8vw); top: 50%; z-index: 5; transform: translateY(calc(-50% - 7rem)); }
.p-mv__txt-main{ margin-bottom: 2.8rem; }
.p-mv__txt-main span{ display: block; font-size: 5rem; letter-spacing: 0.4em; line-height: 1; transform:scaleX(.75) skew(-30deg); transform-origin: 0; }

.p-mv__txt-sub{ font-size: 1.6rem; font-weight: 600; letter-spacing: 0.3em; color: var(--sub-color01); margin-bottom: 4.5rem; }
.p-mv__btn{ font-size: 1.5rem; font-family: var(--base-font); font-weight: 400; }

.p-mv__txt{ transform: translateY(-50%); opacity: 0; }
.p-mv__txt.is-active{ transition-duration: 1.5s;
    transition-timing-function: ease;
    transform: translateY(calc(-50% - 7rem)); opacity: 1; }

.p-mv__scroll{ position: absolute; left: 18rem; bottom: 0; height: 9rem; }
.p-mv__scroll-item{ display: block; font-size: 1.2rem; writing-mode: vertical-rl; -ms-writing-mode: tb-rl; -moz-font-feature-settings: "vkrn", "vpal"; -webkit-font-feature-settings: "vkrn", "vpal";  font-feature-settings: "vkrn", "vpal"; line-height: 1; position: absolute; top: -1rem; left: 50%; transform: translateX(-50%); }
.p-mv__scroll:after{ content: ""; position: absolute; top: 0; left: 50%; width: 1px;
	height: 4rem; background: var(--base-color);
    animation: pathmove 1.4s ease-in-out infinite; opacity:0; }
    @keyframes pathmove{
        0%{ height:0; top: 3rem; opacity: 0; }
        30%{ height: 3.5rem; opacity: 1; }
        100%{ height:0; top:9rem; opacity: 0; }
    }

/* p-concept---------------------------- */
.p-concept{ position: relative; z-index: 0; margin-bottom: 30rem; }
.p-concept__txt{ width: 40rem; padding-bottom: 15rem; position: relative; margin-bottom: 6rem; }
.p-concept__sign{ position: absolute; right: -5rem; bottom: 0; }

.p-concept__image--01{ width: 30rem; height: 55rem; position: absolute; top: -10rem; right: 15rem; z-index: -1; }
.p-concept__image--02{ width: 15rem; height: 54.8rem; position: absolute; top: 10rem; right: 0; z-index: -1; }

.sec-bg{ height: 35rem; background-image: url("../images/index/webp/sec-bg.webp"); background-repeat: no-repeat; background-size: cover; background-attachment: fixed; margin-bottom: 30rem; }
::-webkit-full-page-media, _:future, :root .sec-bg{  background-attachment: unset; }

/* p-culture---------------------------- */
.p-culture{ position: relative; z-index: 0; margin-bottom: 53rem; }

.p-culture__tit{ margin-left: auto; width: 30rem; }
.p-culture__txt{ margin-left: auto; width: 45rem; margin-bottom: 5.5rem; }
.p-culture__list{ font-size: 1.6rem; letter-spacing: 0.25em; margin-bottom: 5.5rem; }
.p-culture__list-item{ padding-left: 4rem; background-image: url("../images/common/check.png");
    background-repeat: no-repeat; background-position: top left; background-size: 2.95rem; }
.p-culture__list-item:not(:last-child){ margin-bottom: 3.5rem; }


.p-culture__image--01{ width: 35rem; height: 55rem; position: absolute; top: 10rem; left: 0; z-index: -1; }
.p-culture__image--02{ width: 20rem; height: 55rem; position: absolute; top: 24.5rem; left: 25rem; z-index: -1; }
.p-culture__image--03{ width: 20rem; height: 50rem; position: absolute; bottom: -68rem; right: 0; z-index: -1; }

/* p-member---------------------------- */
.p-member{ margin-bottom: 29rem; }
.p-member__wrap{ margin-bottom: 10rem; }
.p-member__list{ display: flex; overflow: auto; padding-bottom: 4.5rem;}
.p-member__list-item{ width: 30rem; height: 50rem; flex-shrink: 0; }
.p-member__list-link{ display: flex; flex-direction: column; justify-content: flex-end; width: 100%; height: 100%; background-color: #f2f2f2; padding: 2.5rem; box-sizing: border-box; position: relative; z-index: 0; }

.p-member__list-txt{ background-color: rgba(255,255,255,.85); background-image: url("../images/common/arrow-bl.png"); background-repeat: no-repeat; background-position: right 2rem bottom 2.5rem; background-size: 0.6rem; padding: 2rem 1.5rem; }

.p-member__list-catch{ font-size: 1.8rem; font-style: italic; font-weight: 600; letter-spacing: 0.2rem; line-height: 2; transform: scaleX(.9); transform-origin: left; margin-bottom: 1rem; }
.p-member__list-name{ font-size: 2.4rem; line-height: 1; }
.p-member__list-post{ display: table; background-color: var(--base-color); color: #fff; font-size: 1.2rem; line-height: 1.8; padding: 0 0.8rem; margin-bottom: 1rem; }

.p-member__list-img{ width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: -1; transition: .5s; filter: grayscale(1); }
.p-member__list-img--img{ width: 100%; height: 100%; object-fit: cover; }

.p-member__list-link:hover{ opacity: 1; }
.p-member__list-link:hover .p-member__list-img{ filter: grayscale(0); }

.p-member__list::-webkit-scrollbar{ height: 3px; }
.p-member__list::-webkit-scrollbar-button{ display: block; width: calc((50vw - 40rem)/2); }
.p-member__list::-webkit-scrollbar-track{ background: #f2f2f2; border-radius: 10px; }
.p-member__list::-webkit-scrollbar-thumb{ background: var(--base-color); border-radius: 10px; }

/* p-entry---------------------------- */
.p-entry{ background-image: url("../images/index/webp/entry-bg.webp"); background-repeat: no-repeat; background-position: center; background-size: cover; margin-bottom: 16rem; }

.p-entry__wrap{ padding: 24rem 2.5rem 16rem; }

.p-entry__tit{ width: 100%; text-align: center; font-size: 3rem; position: absolute; left: 0; top: -6rem; }
.p-entry__tit::before{ content: attr(data-eng); display: block; font-family: var(--en-font); font-weight: 500; font-size: 14rem; line-height: 0.9; }

.p-entry__list{ display: flex; flex-wrap: wrap; justify-content: space-between; }
.p-entry__list-item{ flex-basis: 40rem; }
@media(min-width: 769px){
.p-entry__list-item:nth-child(n+3){ margin-top: 5rem; }
}
.p-entry__list-link{ display: flex; align-items: center; justify-content: space-between; width: 100%; height: 20rem; font-weight: 400; font-size: 2rem; color: #fff; padding: 0 2.5rem; position: relative; z-index: 0; background-color: var(--base-color); overflow: hidden; }

.p-entry__list-link::before{ content: ""; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center; background-size: cover; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: -1; transition: .5s; }

.p-entry__list-item:nth-child(1) .p-entry__list-link::before{ background-image: url("../images/index/webp/entry01.webp"); }
.p-entry__list-item:nth-child(2) .p-entry__list-link::before{ background-image: url("../images/index/webp/entry02.webp"); }
.p-entry__list-item:nth-child(3) .p-entry__list-link::before{ background-image: url("../images/index/webp/entry03.webp"); }
.p-entry__list-item:nth-child(4) .p-entry__list-link::before{ background-image: url("../images/index/webp/entry04.webp"); }


.p-entry__list-link::after{ content: "View More"; font-family: var(--en-font); font-weight: 500; font-size: 1.8rem; padding-right: 2.5rem; background-image: url("../images/common/arrow-wt.png"); background-repeat: no-repeat; background-position: center right; background-size: 0.6rem; }

.p-entry__list-link:hover{ opacity: 1; }
.p-entry__list-link:hover::before{ width: 120%; height: 120%; }

/* p-news---------------------------- */
.p-news{ margin-bottom: 16.5rem; }
.p-news__wrap{ padding: 0 2.5rem; }
.p-news__tit{ font-size: 3.4rem; margin-bottom: 1rem; }
.p-news__more{ font-size: 1.8rem; padding-right: 2.5rem; background-image: url("../images/common/arrow-bl.png"); background-repeat: no-repeat; background-position: center right; background-size: 0.6rem; position: absolute; top: 1.5rem; right: 4rem; }

.p-news__list{ border-top: 1px solid #f2f2f2; }
.p-news__list-item{ border-bottom: 1px solid #f2f2f2; }
.p-news__link{ display: flex; align-items: center; padding: 1.5rem 0; font-size: 1.3rem; background-image: url("../images/common/arrow-bl.png"); background-repeat: no-repeat; background-position: center right 1.5rem; background-size: 0.6rem; }
.p-news__cate{ font-size: 1.2rem; background-color: #f2f2f2; padding: 0.5rem 0.7rem; margin-right: 2.5rem; }
.p-news__date{ margin-right: 2rem; }
.p-news__post{ width: 60rem; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

/* p-end---------------------------- */
.p-end{ text-align: center; }
.p-end__wrap{ padding: 15rem 0 42rem; background-image: url("../images/index/webp/end.webp"); background-repeat: no-repeat; background-position: center bottom; background-size: cover; }
.p-end__tit{ font-size: 3rem; color: var(--sub-color01); letter-spacing: 0.2em; margin-bottom: 4rem; }
.p-end__link{ display: flex; align-items: center; justify-content: center; height: 20rem; background: linear-gradient(45deg,#142952 10%,#34304B 40%,#F15A24); color: #fff; position: relative; z-index: 0; }
.p-end__link::before{ content: ""; width: 100%; height: 100%; background-color: #999; position: absolute; top: 0; left: 0; z-index: -1; mix-blend-mode: multiply; transition: .5s; opacity: 0; }
.p-end__link-item{ display: flex; justify-content: center; align-items: center; width: 35rem; height: 8rem; font-weight: 500; font-size: 4rem; border: 1px solid; background-image: url("../images/common/arrow-wt.png"); background-repeat: no-repeat; background-position: center right 8rem; background-size: 0.6rem; }

.p-end__link:hover{ opacity: 1; }
.p-end__link:hover::before{ opacity: 1; }