.area img{
    width: 100%;
 }

.layout{
    width: 100%;
    min-width: 1200px;
    max-width: 1600px;
    position: relative;
    margin: 0 auto;
}

.layout-s{
    width: 80%;
    max-width: 1000px;
    margin: auto;
}


.main-area{
    position: relative;
    padding: 0 0 48px;
}

.main-area::before{
    content: '';
    width: 80%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background: url(../image/racing-park_imfomation/main-photo-back.jpg) no-repeat 50%;
    background-size: cover; 
}

.area1 .main{
    width: 83.5%;
    padding-bottom:40%; 
    position: relative;
    background: url(../image/racing-park_imfomation/main-photo.jpg) no-repeat 50%;
    background-size: cover; 
}

.b-title{
    width: 40%;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    font-size: 0;
}

.b-title::before{
    content: '';
    width: 0;
    height: 100%;
    display: inline-block;
    vertical-align: middle;
}

.b-title img{
   vertical-align: middle;
}

.area2{
    margin: 48px 0 0;
    font-size: 0;
    overflow: hidden;
}

.top-line{
    background: #ffeff1; 
}

.bottom-line{
    position: relative;
    text-align: right;
    padding: 0 0 48px;
}

.bottom-line::before{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 48px;
    left: 0;
    background: #f2f2f2; 
}

.inner{
    width: 83.5%;
    background: #fff;
    display: inline-block;
}

.area2 .photo{
    width: 60%;
    display: inline-block;
    vertical-align: top;
}

.area2 .text{
    width: 40%;
    display: inline-block;
    vertical-align: top;
    background: #fff;
    padding: 36px;
    box-sizing: border-box;
    text-align: left;
}

.area2 .text h3{
    font-size: 14px;
    line-height: 2;
    letter-spacing: 1px;
    color: #333;
}

.s-title{
    width: 220px;
    margin:  0 0 24px;
}

.s-title img{
   width: auto;
   height: 25px;
}

.area3{
    padding: 48px 0;
    background: #212121;
    font-size: 0;
}

.area3 .s-title{
    margin:  0 auto 24px;
}

.area3 h2{
    font-size: 15px;
    line-height: 2;
    letter-spacing: 1px;
    color: #fff;
    text-align: center;
}

.area3 h3{
    font-size: 16px;
    line-height: 2;
    letter-spacing: 1px;
    color: #fff;
}

.area3 h4{
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 1px;
    color: #fff;
}

.all-road{
    margin: 24px auto;
}

.area3 .item{
    width: 33.3%;
    display:inline-block;
    vertical-align: top;
    padding: 24px;
    box-sizing: border-box;
}

.area3 .box{
    width: 100%;
    position: relative;
}

.area3 .box::before{
    content: '';
    width: 100%;
    height: 3px;
    display: block;
    margin: 0 0 16px;
    background: #fff;
}

.area3 .box.yellow::before{
    background: #f7e921;
}

.area3 .box.yellow h3{
    color: #f7e921;
}

.area3 .box.blue::before{
    background: #3cc1f8;
}

.area3 .box.blue h3{
    color: #3cc1f8;
}

.area3 .box.red::before{
    background: #f7403f;
}

.area3 .box.red h3{
    color: #f7403f;
}

.map{
    margin: 24px 0;
}

.map .left{
    width: 66.6%;
    display: inline-block;
    vertical-align: middle;
}

.map .right{
    width: 33.3%;
    display: inline-block;
    vertical-align: middle;
    padding: 24px;
    box-sizing: border-box;
}

.area4 .top-line{
    background: #f2f2f2; 
}

.area4 .bottom-line::before{
    background: #ffeff1; 
}





@media screen and (min-width: 1024px)  {
    .bottom-line .photo{
        transform: translate(67%);
    }

    .bottom-line .text{
        transform: translate(-150%);
    }
}



@media screen and (min-width: 1024px) and (max-width: 1279px) {

    .layout{
        min-width: 900px;
    }

    .inner {
        width: 95%;
    }

}

@media screen and (max-width: 1023px) {
    
    .container{
        padding: 80px 0 0;
    }

    .layout{
        width: 100%;
        min-width: 300px;
    }

    .layout-s {
        width: 90%;
    }

    .area1 .main{
        width: 100%;
        padding-bottom:120%; 
    }

    .b-title {
        width: 70%;
    }

    .inner {
        width: 100%;
        background: transparent;
    }

    .area2 {
        margin: 24px 0 0;
    }

    .area2 .photo {
        width: 90%;
    }

    .area2 .text {
        width: 100%;
        padding: 18px;
    }

    .bottom-line {
        padding: 0 0 24px
    }

    .bottom-line::before {
        top:0;
    }

    .area3 .item{
        width: 100%;
        padding: 12px;
    }

    .area3 h2 {
        text-align: left;
    }

    .map .left {
        width: 100%;
    }

    .map .right {
        width:100%;
        padding: 12px;
    }

    .area3 {
        padding: 24px 0;
    }

    
    @media screen and (min-width: 768px) and (max-width: 1023px) {

        .area1 .main{
            width: 90%;
            padding-bottom:56%; 
        }

        .b-title {
            width: 40%;
        }

        .inner {
            width: 90%;
        }

        .area2 .text {
            padding: 36px;
        }

        .area3 .item {
            width: 33.3%;
        }

        .map .left {
            width: 66.6%;
        }

        .map .right {
            width: 33.3%;
        }
       
    }
}