.common_contents_inner {
    max-width: 1100px;
    margin: 0 auto;
    position: relative;
}

body {
    background-color: #1a2125;
}


header {
    border-bottom: 1px solid #e0e5f0;
    padding-top: 2rem;
    padding-bottom: 1.5rem;
    background-color: white;
}

header h1 .logo {
    background: url(logo.png) no-repeat center;
    background-size: cover;
    width: 1.5em;
    height: 1.5em;
    display: inline-block;
    border-radius: 20%;
}

header .policy {
    position: absolute; 
    right: 0;
    top: 0;
    transform: translateY(50%);
}

#main_contents_wrap {
    padding-top: 3rem;
    padding-bottom: 3rem;
    background-color: #f1f3fa;
}

#main_contents_wrap .intro_app{ 
    display: flex;
    align-items: center;
}


#main_contents_wrap .intro_app .device{
    width: 25%;
    text-align: center;
    margin: 0 auto;
    position: relative;
}

#main_contents_wrap .intro_app .device img {
    position: relative;
    z-index: 1;
}

#main_contents_wrap .intro_app .device::before{
    content: '';
    position: absolute;
    top: 2%;
    left: 5%;
    border-radius: 1.6rem;
    width: 93%;
    height: 96%;
   /* box-shadow: 0.2rem 0.2rem 1.1rem rgba(1, 1, 1, 0.4); */
}


#main_contents_wrap .intro_app .explain_text{
    width: 75%;
    padding-left: 6.6rem;
}


.intro_app .explain_text h3 {
    margin-bottom: 1.2rem;

}

.intro_app .explain_text ul li {
    margin-bottom: 1.1rem;
}


footer {
    background: #1a2125;
    padding: 1.2rem 0 1.2rem 0;
    color: #99a4a8;
}



/******************** subpage - private policy *********************/

#main_contents_wrap h2 {
    margin-bottom: 2.0rem;
}

#main_contents_wrap section article {
    margin-bottom: 1.5rem;
}


#main_contents_wrap section article h3{
    margin-bottom: 1.1rem;
}

#main_contents_wrap section .notice {
    margin-bottom: 1.1rem;
}



@media screen and (max-width: 768px) { 

    html {
        font-size: 19px;
    }

    #main_contents_wrap .intro_app{ 
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }



    #main_contents_wrap .intro_app .explain_text {
        width: 100%;
        padding-left: 0;
    }

    #main_contents_wrap .intro_app .explain_text h3 {
        margin-top: 2rem;
    }
}


@media screen and (max-width: 1100px) { 
    .common_contents_inner {
        padding-left: 1.2rem;
        padding-right: 1.2rem;
    }

    header .policy {
        right: 1.2rem;
    }
}