@media screen and (min-width: 768px) {
    .catch-copy {
        font-size: 16px;
        margin-top: 60px;
    }
    
    .title {
        font-size: 28px;
        margin-top: 80px;
    }
    
    .service .text {
        line-height: 1.5;
        letter-spacing: 0.1em;
        font-size: 18px;
		margin-top: 10px;
    }
    
    .top-image {
        position: relative;
        margin-top: 150px;
        min-height: 325px;
        height: 30vw;
    }
    
    .top-image .background {
        width: 85%;
        height: 100%;
        object-fit: cover;
    }
    
    .top-image .title-image {
        position: absolute;
        right: 13vw;
        top: -73px;
        height: 350px;
    }
    
    .main {
        width: 100%;
        max-width: 1250px;
        margin: auto;
    }
    
    .mihon {
        position: relative;
        margin-top: 100px;
        height: 1000px;
    }
    
    .mihon .background {
        position: absolute;
        top: 0;
        left: 0;
        background: #DA251D;
        color: #1D2051;
        width: 60%;
        height: 500px;
        padding-left: 5%;
    }
    
    .mihon .image {
        position: absolute;
        top: 200px;
        left: 11%;
        width: 79%;
        height: 500px;
        font-size: 17px;
    }
    
    .mihon .image img {
        width: 100%;
        height: 550px;
        object-fit: cover;
    }
    
    .insatu {
        position: relative;
        margin-top: 140px;
        height: 1000px;
    }
    
    .insatu .background {
        width: 90%;
        height: 400px;
        background: #1d2051;
        color: #da251d;
        padding-left: 10%;
    }
    
    .insatu .catch-copy {
        padding-top: 40px;
    }
    
    .insatu .image-1 {
        position: absolute;
        right: 5%;
        top: -5%;
        height: 305px;
        width: 45%;
        object-fit: cover;
    }
    
    .insatu .image-2 {
        position: absolute;
        left: 5%;
        top: 250px;
        width: 80%;
        height: 500px;
    }
    
    .insatu .image-2 img {
        width: 85%;
        height: 500px;
        object-fit: cover;
    }
    
    .seihin {
        position: relative;
        height: 1050px;
    }
    
    .seihin .background {
        width: 60%;
        height: 770px;
        background: #da251d;
        color: #1d2051;
    }
    
    .seihin .catch-copy {
        position: absolute;
        right: 4.3%;
        margin-top: 20px;
    }
    
    .seihin .title {
        position: absolute;
        right: 5%;
        margin-top: 40px;
    }
    
    .seihin .main-images {
        display: flex;
        position: absolute;
        top: 110px;
        right: 0;
        width: 95%;
    }
    
    .seihin .main-images .image-1 {
        width: 70%;
        height: 530px;
        object-fit: cover;
    }
    
    .seihin .main-images .image-2 {
        width: calc(100% - 70% - 12px);
        height: 530px;
        margin-left: auto;
        object-fit: cover;
    }
    
    .seihin .sub-images {
        position: absolute;
        top: 651px;
        left: 5%;
        display: flex;
        flex-wrap: wrap;
    }
    
    .seihin .sub-images img {
        width: 266px;
        height: 201px;
        object-fit: cover;
        margin-right: 12px;
    }
    
    .seihin .sub-images .text {
        margin-top: 10px;
        width: 95%;
    }
    
    .torisetu {
        position: relative;
        height: 950px;
        width: 100%;
    }
    
    .torisetu .background {
        color: #1d2051;
        margin-left: 5%;
    }
    
    .torisetu .color-back {
        background: #1d2051;
        position: absolute;
        top: 140px;
        left: 0;
        height: 600px;
        width: 65%;
    }
    
    .torisetu img {
        position: absolute;
    }
    
    .torisetu .image-1 {
        width: 65%;
        height: 457px;
        object-fit: cover;
        top: 213px;
    }
    
    .torisetu .image-2 {
        position: absolute;
        width: 34%;
        height: 355px;
        object-fit: cover;
        right: 0;
        top: -55px;
    }
    
    .torisetu .image-3 {
        position: absolute;
        width: 34%;
        height: 355px;
        object-fit: cover;
        right: 0;
        top: 312px;
    }
    
    .torisetu .text {
        position: absolute;
        left: 5%;
        top: 748px;
    }
    
    .jisseki {
        background: #F3F1EE;
        padding: 75px 5% 80px;
        font-size: 17px;
        line-height: 1.8;
        margin: 80px 0 50px;;
    }
}


@media screen and (max-width: 767px) {
    .slide-items .slick-prev {
        left: 1vw;
        z-index: 99;
    }
    
    .slide-items .slick-prev {
        left: 1vw;
        z-index: 99;
    }
    
    .slide-items .slick-next {
        right: 1vw;
        z-index: 99;
    }
    
    .catch-copy {
        font-size: 3.3vw;
    }
    
    .title {
        font-size: 5.6vw;
    }
    
    .text {
        font-size: 3.1vw;
    }
    
    .top-image {
        margin-top: 11vw;
    }
    
    .top-image .background {
        width: 100vw;
        height: 50vw;
        object-fit: cover;
        object-position: -16vw;
        margin: 13vw 0 7vw;
    }
    
    .top-image .title-image {
        width: 7vw;
        position: absolute;
        right: 11vw;
        top: 16vw;
    }
    
    .mihon {
        position: relative;
        height: 150vw;
    }
    
    .mihon .background {
        background: #da251d;
        color: #1d2051;
        padding: 9vw 5vw;
        width: 100vw;
        height: 67vw;
    }
    
    .mihon .image {
        width: 95vw;
        position: absolute;
        top: 26vw;
        right: 0;
    }
    
    .mihon .image img {
        width: 100%;
        height: 75vw;
        object-fit: cover;
    }
    
    .mihon .text {
        margin: 2vw 5vw 0 0;
    }
    
    .insatu {
        position: relative;
        height: 135vw;
    }
    
    .insatu .background {
        text-align: center;
        background: #1d2051;
        color: #da251d;
        height: 70vw;
        padding-top: 5vw;
    }
    
    .insatu .image-2 {
        position: absolute;
        top: 20vw;
        margin: 0 5vw;
    }
    
    .insatu .image-2 img {
        width: 90vw;
        margin: auto;
    }
    
    .seihin {
        position: relative;
        height: 155vw;
    }
    
    .seihin .background {
        text-align: right;
        background: #da251d;
        color: #1d2051;
        height: 94vw;
        width: 60vw;
        padding-top: 5vw;
    }
    
    .seihin .catch-copy,
    .seihin .title {
        position: absolute;
    }
    
    .seihin .catch-copy {
        right: 3.5%;
        top: 12vw;
    }
    
    .seihin .title {
        right: 5%;
        top: 18vw;
    }
    
    .seihin .sub-images {
        position: absolute;
        top: 29vw;
        margin: 0 5vw;
        width: 90vw;
    }
    
    .seihin .sub-images img {
        width: 90vw;
        margin: auto;
        object-fit: cover;
    }
    
    .seihin .sub-images .text {
        margin-top: 5vw;
        width: 100%;
    }
    
    .seihin .slide-items {
        height: 75vw;
        width: 90vw;
    }
    
    .seihin .slide-items img {
        width: 90vw;
        height: 67vw;
        object-fit: cover;
    }
    
    .torisetu {
        position: relative;
        height: 160vw;
    }
    
    .torisetu .background {
        background: #1d2051;
        color: #da251d;
        padding: 9vw 0 0 5vw;
        width: 90vw;
        height: 67vw;
    }
    
    .torisetu .images {
        width: 90vw;
        position: absolute;
        top: 26vw;
        left: 5vw;
    }
    
    .torisetu .images img {
        width: 100%;
        height: 75vw;
        object-fit: cover;
    }
    
    .torisetu .text {
        margin-top: 2vw;
    }
    
    .jisseki {
        background: #f3f1ee;
        padding: 8vw;
        font-size: 3.9vw;
        line-height: 1.8;
    }
}