/*
Theme Name: akarikunimi-child
Version: 1.0
Template: akarikunimi
*/

.apart_firstview_wrap {
    position: relative;
}
.apart_firstview_cont {
    overflow: hidden;
    width: 100%;
    height: min(100vh, 840px);
    position: relative;
}
.apart_firstview_bgimg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}
.apart_firstview_overtitle {
    position: absolute;
    left: 6%;
    top: 208px;
    z-index: 30;
    width: 330px;
    padding-top: 16px;
    padding-bottom: 24px;
    background-color: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    text-align: center;
}
.apart_firstview_overtitle p {
    position: relative;
    margin: 28px 0;
    font-size: 15px;
    letter-spacing: 0.24em;
}
.apart_firstview_overtitle p::before {
    content: '';
    width: 40px;
    height: 1px;
    display: inline-block;
    background-color: #231815;
    position: absolute;
    top: -18px;
    left: calc(50% - 20px);
}
/*.apart_firstview_yane::before {
    width: 330px;
    height: 127px;
    background-color: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    content: "";
    clip-path: polygon(50% 0%, 0% 127px, 330px 127px);
    position: absolute;
    left: 0;
    top: -127px;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}*/
.apart_firstview_yane {
    position: absolute;
    left: 6%;
    top: 81px;
    z-index: 29;
    width: 330px;
    height: 127px;
    position: relative;
    overflow: hidden;
}

.apart_firstview_yane::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

.apart_firstview_flow {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 40;
    background-color: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}
.apart_firstview_flow ul {
    margin: 40px 100px 40px 76px;
}
.apart_firstview_flow ul li {
    list-style: none;
    font-size: 15px;
    position: relative;
    height: 40px;
    display: flex;
    align-items: center;
}
.apart_firstview_flow ul::before {
    content: '';
    width: 1px;
    height: calc(100% - 128px);
    background-color: #008868;
    position: absolute;
    left: 92px;
    top: 50%;
    transform: translateY(-50%);
}
.apart_firstview_flow ul li::before {
    content: '';
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background-color: #008868;
    position: absolute;
    left: -30px;
    display: flex;
    align-items: center;
}
.apart_firstview_flow ul li.flow_future::before {
    background-color: transparent;
    border: solid 3px #008868;
    box-sizing: border-box;
}
.apart_firstview_leaf {
    position: absolute;
    z-index: 10;
    width: 100%;
    height: 100%;
}
.apart_firstview_leaf_wrap {
    position: relative;
    width: 100%;
    height: 100%;
}
.apart_firstview_leaf_wrap .leaf_left {
    width: 700px;
    position: absolute;
    left: -257px;
    top: -516px;
    transform:rotate(-74deg);
}
.apart_firstview_leaf_wrap .leaf_right{
    width: 540px;
    position: absolute;
    right: -380px;
    bottom: -68px;
    transform:rotate(46deg);
}

@media screen and (max-width: 680px) {
    .apart_firstview_overtitle {
        left: 50%;
        transform: translateX(-50%);
        top: 220px;
        width: 256px;
    }
    .apart_firstview_yane {
        left: 50%;
        transform: translateX(-50%);
        width: 256px;
        height: 100px;
        top: 120px;
    }
    .apart_firstview_overtitle img {
        width: 185px;
    }
    .apart_firstview_overtitle p {
        font-size: 12.5px;
        margin: 24px 0 16px 0;
    }
    .apart_firstview_leaf_wrap .leaf_left {
        width: 600px;
        left: -200px;
        top: -150px;
    }
    .apart_firstview_leaf_wrap .leaf_right {
        width: 280px;
        right: -160px;
        bottom: 0;
    }
    .apart_firstview_flow {
        position: relative;
        bottom: 0;
    }
    .apart_firstview_flow ul {
        margin: 0;
        padding: 56px 6% 56px 76px;
        border-bottom: solid 1px #D9D9D9;
    }
    .apart_firstview_flow ul::before {
        left: 52px;
        height: calc(100% - 165px);
    }
    .apart_bg_position {
        object-position: 40% 0%;
    }
}