body {
    background: #fff;
}
* {
    box-sizing: border-box;
    &::before, &::after{
        box-sizing: border-box;
    }
}
img {
    width: 100%;
    height: auto;
}
a {
    transition: .2s;
}
a:hover {
    opacity: .8;
}
.wrapper {
    position: relative;
    max-width: 750px;
    margin: auto;
    padding-bottom: 150px
}
@media screen and (max-width: 749px) {
    .wrapper {
        padding-bottom: 22%;
    }
}
.wrapper::after {
    content: "";
    background: #629fa5;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-bottom: 150px
}
@media screen and (max-width: 749px) {
    .wrapper::after {
        padding-bottom: 22%;
    }
}
main {
    max-width: 750px;
    margin: 0 auto;
}
main > div {
    position: relative;
}
@keyframes scale_anime {
    from {
      transform: scale(0.9,0.9);
    }
    to {
      transform: scale(1,1);
    }
}
main .btn {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    width: 93%;
    animation: scale_anime 0.5s ease 0s infinite alternate;
    transform-origin:center;
}

.item_box1 .btn {
    bottom: 9%;
}
.item_box2 .btn {
    bottom: 7%;
}
.item_box3 .btn {
    bottom: 16%;
}
.item_box4 .btn {
    bottom: 11%;
}
.item_box4 .video {
    width: 93%;
    position: absolute;
    top: 4%;
    left: 0;
    right: 0;
    margin: auto;
    padding-top: 51.25%;
}
.item_box4 .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#floating {
    backdrop-filter: blur(10px);
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    max-width: 750px;
    margin: auto;
    padding: 16px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1;
    opacity: 0;
    transition: .3s;
}
@media screen and (max-width: 749px) {
    #floating {
        padding: 2.5% 0;
    }
}
#floating.show {
    opacity: 1;
}
#floating .btn {
    width: 93%;
}
#floating .btn a:hover {
    opacity: 1;
}