@charset "UTF-8";

.l-contents {
    overflow: hidden;
}

/*-------------------------------------------------------------------------
#
-------------------------------------------------------------------------*/

[class*="pentagon--"]{
    position: absolute;
    margin: 100px auto;
    animation: rotate 5s linear infinite;
}
  [class*="pentagon--"] svg {
      width: 100%;
      height: 100%;
  }
  [class*="pentagon--"] polygon {
      fill: none;
      stroke: yellow;
      stroke-width: 0.2px;
  }

@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
.pentagon--item01 {
    width: 267px;
    height: 267px;
    top  : 50px;
    right: 30px;
}
.pentagon--item02 {
    width: 191px;
    height: 191px;
    top: 500px;
    right: 0;
    left: 0;
    margin: auto;
}
.pentagon--item03 {
    width: 191px;
    height: 191px;
    top: 450px;
    left: -190px;
}

/*-------------------------------------------------------------------------
#
-------------------------------------------------------------------------*/

.mv {
    height: 850px;
    position: relative;
    display        : flex;
    align-items    : center;
    justify-content: center;
}
    .mv__catch {
        width: 800px;
        max-width: 100%;
        order: 1;
        display        : flex;
        align-items    : center;
        justify-content: center;
        padding: 0 30px;
        position: relative;
        z-index: 1;
    }
        .mv__catch img {
            width: 650px;
        }
    .mv__slider img {
        width: 100%;
        height: 850px;
        object-fit: cover;
        object-position: center;
    }
    .mv__slider {
        width: 100%;
        height: 850px;
        position: absolute;
        top     : 0;
        left    : 0;
    }
        .mv__items {
            position: relative;
        }
        .mv__items:before {
            content: "";
            width: 100%;
            height: 100%;
            background: linear-gradient(to bottom, rgba(56 168 254 / 44%), rgba(35  204 255 / 44%));
            mix-blend-mode: overlay;
            position: absolute;
            top     : 0;
            left    : 0;
        }
@media screen and (max-width: 768px){
    .mv,
    .mv__slider,
    .mv__slider img {
        height: clamp(400px, 111vw, 850px);
    }
}

/* SVGアニメーション用
--------------------------- */
 .cls-1 {
    fill: none;
    stroke: #fff;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 25px;
}

/*-------------------------------------------------------------------------
#
-------------------------------------------------------------------------*/

.top__contents {
    width: 1200px;
    margin: auto;
    padding: 128px 30px 0;
    position: relative;
}
.top__description {
    margin: 0 0 150px;
}
.top__description > * + * {
    margin: 50px 0 0;
}
    .description-text {
        line-height: 2.77;
        color: #043E7A;
        word-break: auto-phrase;
        opacity: 0;
        transform: translateY(20px);
        transition: .5s ease;
    }
    .description-text.is-active {
        opacity: 1;
        transform: translateY(0);
    }

/* #
--------------------------- */
.top__hgroup {
    display: grid;
    margin: 0 0 177px;
}
.top__hgroup > * {
    grid-area: 1 / 1;
}
    .top__ttl {
        order: 1;
        align-content: flex-end;
        margin: 0 0 0 38px;
        position: relative;
        z-index : 1;
        font-family: var(--open-sans);
        font-size  : 80px;
        font-weight: 500;
        color      : var(--main-color);
        line-height: 1;
        text-transform: uppercase;
    }
    .top__hgroup > img {
        position: relative;
        left    : -30px;
    }

@media screen and (max-width: 1140px){
    .top__contents {
        width: 100%;
    }
}
@media screen and (max-width: 768px){
    .top__contents {
        padding-top: 30px;
    }
    .top__description {
        margin-bottom: 100px;
    }
    .top__hgroup {
        margin-bottom: 100px;
    }
    .top__ttl {
        margin-left: 0;
        font-size: clamp(40px, 17vw, 80px);
    }
}
@media screen and (max-width: 480px){
    .top__contents {
        padding-inline: 20px;
    }
}

/*-------------------------------------------------------------------------
#
-------------------------------------------------------------------------*/

/* #
--------------------------- */
.interview__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
    .interview__items {
        width: 499px;
    }
    .interview__items:nth-child(2n){
        margin: 341px 0 0;
    }
        .interview__link {
            display: grid;
            position: relative;
            z-index : 0;
            transition: .1s ease;
        }
        .interview__link > * {
            grid-area: 1 / 1;
        }
            .interview__information {
                order: 1;
                position: relative;
                margin: 14px 0 0;
            }
                .interview__num {
                    margin: 0 0 5px;
                    font-size  : 70px;
                    font-weight: 500;
                    color      : var(--main-color);
                }
                .interview__info {
                    line-height: 1.8;
                    text-shadow: 0 0 10px rgb(255 255 255);
                }
            .interview__img {
                width: fit-content;
                mask-repeat: no-repeat;
                mask-size  : 100% auto;
                margin: auto;
                position: relative;
                text-align: center;
            }
            .interview__items:nth-child(1) .interview__img { mask-image : url("/images/newgrad/img_staff01_x2.webp");}
            .interview__items:nth-child(2) .interview__img { mask-image : url("/images/newgrad/img_staff02_x2.webp");}
            .interview__items:nth-child(3) .interview__img { mask-image : url("/images/newgrad/img_staff03_x2.webp");}
            .interview__items:nth-child(4) .interview__img { mask-image : url("/images/newgrad/img_staff04_x2.webp");}
            .interview__items:nth-child(5) .interview__img { mask-image : url("/images/newgrad/img_staff05_x2.webp");}
            .interview__items:nth-child(6) .interview__img { mask-image : url("/images/newgrad/img_staff06_x2.webp");}
            .interview__items:nth-child(7) .interview__img { mask-image : url("/images/newgrad/img_staff07_x2.webp");}
            .interview__items:nth-child(8) .interview__img { mask-image : url("/images/newgrad/img_staff08_x2.webp");}
            
            .interview__img:before {
                content: "";
                width: 0;
                height: 100%;
                background-color: #fff;
                position: absolute;
                top     : 0;
                left    : 0;
                z-index: 1;
                mix-blend-mode: hue;
            }
            .is-active .interview__img:before {
                animation: slide1 1s ease forwards;
            }
            .interview__img img{
                position: relative;
                opacity: 0;
            }
            .is-active .interview__img img{
                animation: slide2 1s ease forwards;
            }
            .interview__comment {
                height: fit-content;
                display       : flex;
                gap           : 6px;
                flex-direction: column;
                position: absolute;
                right   : 0;
                writing-mode: tb-rl;
            }
                .interview__comment span {
                    width: fit-content;
                    height: fit-content;
                    background-color: var(--main-color);
                    padding: 15px 0;
                    font-weight: 400;
                    color      : #fff;
                    letter-spacing: 0.5em;
                    text-orientation: upright;
                    font-feature-settings: normal;
                }
                .interview__items:nth-child(1) .interview__comment span:nth-child(2){
                    align-self: end;
                    margin: 0 0 -3em;
                }
                .interview__items:nth-child(2) .interview__comment span:nth-child(2){
                    align-self: end;
                    margin: 0 0 -6em;
                }
                .interview__items:nth-child(3) .interview__comment span:nth-child(2){
                    margin: 3em 0 0;
                }
                .interview__items:nth-child(4) .interview__comment span:nth-child(2){
                    margin: 1em 0 0;
                }
                .interview__items:nth-child(5) .interview__comment span:nth-child(2){
                    align-self: end;
                    margin: 0 0 -4em;
                }
                .interview__items:nth-child(6) .interview__comment span:nth-child(2){
                    margin: 3em 0 0;
                }
                .interview__items:nth-child(7) .interview__comment span:nth-child(2){
                    margin: 2em 0 0;
                }
                .interview__items:nth-child(8) .interview__comment span:nth-child(2){
                    margin: 2em 0 0;
                }
            .interview__bg {
                width: 389px;
                height: 374px;
                background-color: #FAFF6A;
                clip-path: polygon(37% 0, 97% 14%, 100% 80%, 42% 100%, 0 59%);
                position: absolute;
                top     : 0;
                bottom  : 0;
                left    : 10px;
                z-index : -1;
                margin  : auto;
                transition: 2s ease;
            }
            .interview__link:hover .interview__bg {
                background-color: var(--main-color);
                rotate: 360deg;
            }

@keyframes rotate {
    0% {
        rotate: 0;
    }
    100% {
        rotate: 360deg;
    }
}
@keyframes slide1 {
    0% {
        width: 0;
    }
    50% {
        width: 100%;
    }
    100% {
        left: auto;
        right: 0;
    }
}
@keyframes slide2 {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@media screen and (max-width: 1140px){
    .interview__items {
        width: 44vw;
    }
}
@media screen and (max-width: 768px){
    .interview__list {
        gap: 100px;
        flex-direction: column;
    }    
    .interview__items:nth-child(2n){
        margin: auto;
    }
    .interview__items {
        width: 74vw;
        margin: auto;
    }
}
@media screen and (max-width: 480px){
    .interview__items {
        width: 100%;
    }
    .interview__bg {
        width: 100vw;
        height: 100vw;
        left: 0;
    }
}

/*-------------------------------------------------------------------------
#
-------------------------------------------------------------------------*/

.know {
    background-color: var(--main-color);
    padding: 73px 30px 158px;
}
    .know__inner {
        width: 1140px;
        margin: auto;
    }
        .know__ttl {
            position: relative;
            top: 50px;
        }
        .know__contents {
            display        : flex;
            gap            : 20px;
            justify-content: space-between;
        }
            .know__list {
                width: 100%;
                max-width: 600px;
            }
            .know__list > * + * {
                margin: 14px 0 0;
            }
                .know__link {
                    width: 100%;
                    max-width: 600px;
                    background-color: #fff;
                    display        : flex;
                    align-items    : center;
                    justify-content: center;
                    padding-block: 28px 25px;
                    position: relative;
                    z-index : 0;
                    overflow: hidden;
                    color: var(--main-color);
                }
                .know__link:before {
                    content: "";
                    width: 0;
                    height: 100%;
                    background-color: var(--point-color);
                    position: absolute;
                    top     : 0;
                    left    : 0;
                    z-index : -1;
                    transition: .3s ease;
                }
                .know__link:hover:before {
                    width: 100%;
                }
                .know__link:not(:hover):before {
                    left: auto;
                    right: 0;
                }
                    .know__link span {
                        position: relative;
                    }

@media screen and (max-width: 1200px){
    .know__inner {
        width: 100%;
    }
}
@media screen and (max-width: 768px){
    .know {
        padding-bottom: 80px;
    }
    .know__contents {
        flex-direction: column-reverse;
    }
    .know__list {
        margin: auto;
    }
    .know__img {
        text-align: center;
    }
}

/*-------------------------------------------------------------------------
#
-------------------------------------------------------------------------*/

.office {
    background-color: var(--main-color);
    overflow: hidden;
    padding: 0 0 128px;
}
.office__hgroup {
    padding: 0 0 40px;
    text-align: center;
}
    .office__ttl {
        font-weight: 500;
        color      : #fff;
        text-transform: uppercase;
    }
    .office__description {
        color: #fff;
        text-align: center!important;
    }
.photo-scroll {
    margin: 0 0 89px;
}
.office__link {
    width: 100%;
    max-width: 280px;
    border: 1px solid #fff;
    display: block;
    margin: auto;
    padding-block: 14px;
    color: #fff;
    text-align: center;
    text-transform: uppercase;
    speak: none;
}
.office__link:before {
    background-color: #fff;
}
.office__link:hover {
    color: var(--main-color);
}
.photo-list.is-right {
    direction: rtl;
}
@media screen and (max-width: 480px){
    .office {
        padding-bottom: 80px;
    }    
    .office__hgroup {
        padding-bottom: 30px;
    }
    .photo-scroll {
        margin-bottom: 50px;
    }
}


