/* safariの崩れ対策 */
.nav-link-wrapper {
    min-width: 100px;
}


.header-pc .header__btn-register {
    font-weight: 400;
}
.header-pc nav > ul > li:nth-child(4), .header-pc nav > ul > li:nth-child(5) {
    width: auto;
}
.header-pc nav > ul {
    padding: 0 20px;
    justify-content: space-between;
    grid-gap: normal;
    padding-left: 87px;
}
.header-pc .header__logo {
    height: 45px;
    margin-top: 12px;
}
.header-pc .header__content {
    height: 104px;
}
.header-pc.expand nav > ul {
    margin-top: 14px
}
.header-pc.expand .header__btn-register {
    margin-top: auto;
}
.sec-top .topic__ttl {
    margin: 0 30px 0 0;
}
@media screen and (min-width: 801px) {
    .sec-top .topic__ttl {
        letter-spacing: -0.01em;
    }
}

.sec-top .topic__wrap {
-webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.25);
box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.25);
}

@media screen and (min-width: 801px) {
    .sec-top .topic__wrap {
        display: flex;
        align-items: center;
    }
}
.sec-top .kv .kv__wrap {
    margin-bottom: 70px;
}
@media screen and (min-width: 801px) {
    .sec-top .kv__ttl img {
        padding-left: 20px;
    }
    .sec-top {
        margin-bottom: 80px;
    }
}
.sec-top .kv__img video {
    width: 100%;
    height: 760px;
    object-fit: cover;
}

.sec-system__heading, .sec-system__service {
    margin-bottom: 80px;
}

main {
    overflow: hidden;
}
/* 動画の調整と、携帯の調整ここから */
@media screen and (max-width: 767px) {
    .sec-top .kv__img video {
        height: 280px;
        width: 100vw;
        max-height: auto;
    }
    .sec-top .kv__ttl {
        top: 280px;
        width: 300px;
		font-size: 36px;
    line-height: 1.3;
    color: #ffffff;
    }
    .sec-top::before {
        padding-top : 180px
    }
    .sec-top:after {
        /* top: 50px; */
        width: 100vw;
        height: 960px;
        left: 0;
    }
    .sec-top .topic {
        margin-top: 130px;
    }
    .sec-top .topic .item__url {
        font-size: 16px;
    }
    .main {
        margin-top: 94px;
    }
    .sec-top .topic__ttl {
        font-size: 21px;
        padding-bottom: 10px;
    }
    .sec-top .advantage .heading__ja {
        font-size: 26px;
        line-height: 1.3;
    }
    .sec-top .advantage .btn a {
        font-size: 19px;
    }
    .sec-top .advantage {
        margin-top: 83px;
    }
    .sec-top .advantage__wrap:after {
        top: -63px;
    }
    .sec-top {
        padding-bottom: 19px;
    }
    .sec-system__heading .ttl img {
        width: 290px;
    }
    .sec-system__heading {
        margin-bottom: 54px;
    }
    .sec-system .ttl-primary__en {
        font-size: 17px;
    }
    .sec-system .ttl-primary__ja {
        font-size: 27px;
    }
    .sec-system .ttl-primary span:not(:last-child) {
        margin-bottom: 7px;
    }
    .sec-system__service .ttl-primary,.sec-system__case .ttl-primary {
        margin-bottom: 16px;
    }
    .sec-system__service .list .img {
        margin-bottom: 14px;
    }
    .sec-system__service .list .txt {
        font-size: 20px;
        line-height: 1.4;
    }
    .sec-top .advantage__wrap:after {
        background: url(../img/advantage_img.svg) no-repeat center/contain;
        opacity: 0.6;
    }
    .footer {
        margin-top: 0;
        padding-top: 100px !important;
    }
}

@media screen and (min-width:801px) and (max-width: 1355px) {
    .sec-top .kv__img video {
        width: auto;
        height: 100%;
        max-height: 800px;
    }
}
/* 動画の調整と、携帯の調整ここまで */

.header-sp .header__logo {
    height: 39px;
}
.header-sp .hamburger-menu {
    width: 44px;
}
.header-sp .header__content {
    height: 94px;
}
.header-sp .header__row {
    margin-top: 12px;
}
.menu-mob {
    z-index: 99;
    height: calc(100vh - 94px);
    top: 94px;
}

.header-pc.expand .header__content {
    border-radius: 0;
}
.header-pc .header__content {
    background: rgb(255 255 255 / 85%);
}
.footer {
    margin-top: 0;
    padding-top: 280px;
}
.sec-top .advantage .btn a {
    font-weight: 700;
}
.subnav-pc {
    opacity: 0;
    z-index: -1;
}
.subnav-pc.show{
    opacity: 1;
}
.reveal {
    position: relative;
    transform: translateY(150px);
    opacity: 0;
    transition: 0.5s all ease;
}
  
.reveal.active{
    transform: translateY(0);
    opacity: 1;
}