body {
    position: relative;
}
#main_header,section {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
}
img {
    width: 1920px;
    height: auto;
    vertical-align: bottom;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
div#cta_button,
div#float {
    background: #fff;
}
a:hover {
    opacity: 0.8;
}
#main_header { height: 1010px; }
#content1 { height: 2700px; }
#content2 { height: 2725px; }
#content3 { height: 565px; }
#content4 { height: 11116px; }
#content5 { height: 3801px; }
#content6 { height: 1401px; }
#content7 { height: 2756px; }
#content8 { height: 1149px; }
#content9 { height: 2093px; }
#content10 { height: 1476px; }
#content11 { height: 3642px; }
#content10 div:nth-of-type(2){
    position: absolute;
    height: 150px;
    bottom: 400px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 75%;
}
#content10 a,
#content10 span {
    display: block;
    width: 70%;
    max-width: 600px;
    text-align: center;
    margin: 0 auto 10%;
}
#content10 a img,
#content10 span img {
    height: 100%;
    width: auto;
}
/*コンテンツ間の画像の余白を埋めるCSS*/
#content1,#content8 {
    margin-top: -3px;
}
/*コンテンツ間の画像の余白を埋めるCSS*/
#content6 {
    margin-top: -2px;
}

footer {
    background-color: #a88e37;
    padding: 50px 0 200px;
}
footer .copyright {
    text-align: center;
}
footer .copyright .flink {
    margin: 20px 0;
}
footer p {
    color: #fff;
}
footer .copyright a,
footer .copyright a:visited {
    color: #fff;
    text-decoration: none;
}
footer .copyright .flink a {
    display: inline-block;
    margin: 0 10px;
}

#sub_header {
    width: 90%;
    max-width: 700px;
    margin: 80px auto 0;
}
#sub_contents {
    width: 90%;
    max-width: 700px;
    margin: 80px auto;
}
#sub_header h1 {
    font-size: 28px;
    text-align: center;
}
#sub_contents h2 {
    margin: 40px 0 10px;
    font-size: 20px;
}
#sub_contents p {
    line-height: 1.6;
}
#sub_contents {
    position: static;
}
#sub_contents img {
    width: 100%;
    position: static;
    transform: inherit;
}
#float {
    position: fixed;
    bottom: 170px;
    left: 50%;
    transform: translateX(-50%);
    width: 95%;
    max-width: 1020px;
    height: auto;
    vertical-align: bottom;
}
#float img {
    width: 100%;
}
@media (max-width:1080px) {
    #main_header,#content1,#content2,#content3,#content4,#content5,#content6,#content7,#content8,#content9,#content10,#content11 {
        position: static;
        height: auto;
    }
    #main_header img,section img {
        position: static;
        width: 190%;
        transform: translateX(-45vw);
    }
    #content9 img {
        width: 170%;
        transform: translateX(-35vw);
    }
    #content10 {
        position: relative;
    }
    #content10 div:nth-of-type(2){
        bottom: 24%;
        height: unset;
    }
    #content10 a,
    #content10 span {
        width: 100%;
    }
    #content10 a img,
    #content10 span img {
        width: 100%;
        transform: none;
    }
    #float {
        bottom: 170px;
    }
}
@media (max-width:768px) {
    #float {
        bottom: 14.5vh ;
    }
    footer {
        padding: 50px 0 150px;
    }
    #content10 a,
    #content10 span {
        margin: 1% auto 4%;
    }
}
@media (max-width:600px) {
    #float {
        bottom: 12vh ;
    }
}
@media (max-width:500px) {
    #sub_header h1 {
        font-size: 22px;
    }
    #sub_header {
        margin: 40px auto 0;
    }
    #sub_contents {
        margin: 40px auto;
    }
    #float {
        bottom: 10vh ;
    }
}
@media (max-width:425px) {
    #float {
        bottom: 9vh ;
    }
    footer {
        padding: 50px 0 100px;
    }
}
@media (max-width:375px) {
    #float {
        bottom: 8vh ;
    }
}
@media (max-width:320px) {
    #float {
        bottom: 6vh ;
    }
}