body{
    font-size: 0;
    font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.main_wrap{
    max-width: 900px;
    margin: auto;
    overflow-x: hidden;
}

img{
    width: 100%;
}

*{
    position: relative;
    font-size: 0;
}

.absolute{
    position: absolute;
}

.right_content{
    text-align: right;
}

.cta{
    position: absolute;
    bottom: 5%;
    width: 96%;
    z-index: 2;
    left: 0;
    margin: 0 2%;
}

.cta.relative{
    position: relative;
    display: block;
}

.background_wrap{
    background-size: 100%;
    background-repeat: no-repeat;
    width: 100%;
}

.top_wrap{
    position: fixed;
    top: 0;
    z-index: 100;
}

@media screen and (min-width: 900px) {
    .top_wrap{
        width: 900px;
    }
}


.fv_main{
    width: 100%;
}
.fv_1{
    padding: 3% 2%;
    position: relative;
    z-index: 1;
}


.cta_back{
    background-image: url(../images/cta_back.png);
}
.cta_btn_1 {
    position: relative;
    display: block;
    z-index: 2;
    padding: 1.5% 2% 1.5% 2%;
}
.cta_btn_2 {
    position: relative;
    display: block;
    z-index: 2;
    padding: 1% 2% 12% 5%;
}
.cta_btn_3 {
    position: relative;
    display: block;
    z-index: 2;
    padding: 0% 2% 0% 2%;
}
#footer_cta{
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 10;
    display: none;
}

@media screen and (min-width: 900px) {
    #footer_cta{
        width: 500px;
        bottom: 0;
        right: 0;
        left: auto;
    }
}


.fv_back{
    background-image: url("../images/fv_back.png");
    width: 100%;
    position: relative;
    z-index: 2;
}
.content1_back{
    background-image: url("../images/content1_back.png");
    width: 100%;
    position: relative;
    z-index: 2;
}
.content2_back{
    background-image: url();
    position: relative;
    z-index: 1;
    margin-top: -110%;
}
.content3_back{
    background-image: url("../images/content3_back.png");
}
.content4_back{
    background-image: url();
}
.content5_back{
    background-image: url("../images/content5_back.png");
}
.content6_back{
    background-image: url("../images/content6_back.png");
    z-index: 1;
}
.content7_back{
    background-image: url("../images/content7_back.png");
    z-index: 2;
    margin-top: -6%;
}
.content8_back{
    background-image: url("../images/content8_back.png");
    padding: 3% 3%;
}
.content9_back{
    background-image: url("../images/content9_back.png");
}


.content1_mov{
    width: 100%;
    position: absolute;
}
.content1_1{
    padding: 40% 26% 2% 4%;
}
.content1_2{
    padding: 0 9% 5%;
}
.content1_3 {
    position: absolute;
    top: 26.5%;
    left: 4%;
    width: 29%;
    height: auto;
    display: block;
}
.content1_4{
    position: absolute;
    top: 26.5%;
    left: 35.75%;
    width: 29%;
    height: auto;
    display: block;
}
.content1_5{
    position: absolute;
    top: 26.5%;
    right: 4%;
    width: 29%;
    height: auto;
    display: block;
}


.content2_1{
    padding: 57% 9% 1% 9%;
}
.content2_2{
    padding: 0 4%;
}
.content2_3{
    padding: 2% 4% 0% 4%;
}
.content2_4{
    padding: 2% 4% 17% 4%;
}



.content3_1 {
    padding: 46% 3% 24% 3%;
}
.content3_2 {
    padding: 0% 7% 4% 36%;
    margin-top: -25%;
}
.content3_3{
    padding: 0% 1% 31% 1%;
    margin-top: -2%;
}


.content4_1{
    padding: 0% 15% 3% 15%;
    margin-top: -1%;
}
.content4_2 {
    padding: 0 8% 3% 0;
    margin: 0 0 0 -1%;
}
.content4_3{
    padding: 0 0% 3% 8%;
    margin: 0 -1% 0 0%;
}
.content4_4 {
    padding: 0 8% 4% 0;
    margin: 0 0 0 -1%;
}
.content4_5{
    padding: 0% 8% 13.5% 8%;
}


.content5_1{
    padding: 13% 8% 61% 8%;
}
.content5_2{
    position: absolute;
    top: 44.5%;
    left: 3.5%;
    width: 29%;
    height: auto;
    display: block;
}
.content5_3{
    position: absolute;
    top: 44.5%;
    left: 34.75%;
    width: 29%;
    height: auto;
    display: block;
}
.content5_4{
    position: absolute;
    top: 44.5%;
    right: 3.5%;
    width: 29%;
    height: auto;
    display: block;
}


.content6_1{
    padding: 34% 13% 1% 14%;
}
.content6_2{
    padding: 0% 7% 4% 7%;
}
.content6_3{
    padding: 0% 7% 4% 7%;
}
.content6_4{
    padding: 0% 7% 14% 7%;
}

.content7_1{
    padding: 7% 20% 53% 20%;
}
.content7_2 {
    position: absolute;
    top: 35.5%;
    left: 4.5%;
    width: 44%;
    height: auto;
    display: block;
}
.content7_3 {
    position: absolute;
    top: 35.5%;
    right: 4.5%;
    width: 44%;
    height: auto;
    display: block;
}

.content8_1{
    padding: 36% 0% 4% 0%;
}
.content8_2, .content8_3, .content8_4, .content8_5 {
    padding: 0% 0% 4% 0%;
}
.content8_6 {
    padding: 0% 0% 5% 0%;
}


.content9_1 {
    padding: 3% 12% 7% 12%;
}
.content9_2 {
    padding: 2% 25% 1.5% 3%;
}


.responsive-img,
.responsive-video {
  width: 100%;
  height: auto;
  display: block;
  max-width: 100%;
}


.animate__delay-01s {
    animation-delay: calc(var(--animate-delay) * 0.2);
}
.animate__delay-03s {
    animation-delay: calc(var(--animate-delay) * 0.3);
}
.animate__delay-06s {
    animation-delay: calc(var(--animate-delay) * 0.6);
}
.animate__delay-09s {
    animation-delay: calc(var(--animate-delay) * 0.9);
}
.animate__delay-12s {
    animation-delay: calc(var(--animate-delay) * 1.2);
}

@keyframes blink-simple {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}
.blink {
  animation: blink-simple 1s step-start infinite;
}