@charset "utf-8";
/*----------------------------------
     positestAT-A Serial No.
    created: 2026.3.30
    update: 2026.4.9
------------------------------------*/

/*----------------------------------------
    title
-----------------------------------------*/
.title {
    background-color: #d9d9d9;
    max-width: 1530px;
    margin: 0 auto;
    padding: 32px 52px;
    gap: 30px 50px;
    color: black;
}

.title h1 {
    display: flex;
    align-items: center;
    column-gap: 30px;
}

.title figure img {
    max-height: 150px;
}

.title nav.rightNavi ul { font-size: 14px; }

.title nav.rightNavi ul li a { width: 100px; }

.title nav.rightNavi ul li.return a img { width: 90px; }


/*----------------------------------------
    contents
-----------------------------------------*/
.contents {
    max-width: 1530px;
    padding: 50px 0;
    margin: 0 auto;
    font-size: 1rem;
}

/* top image */
figure.topImg {
    display: flex;
    align-items: center;
    gap: 32px 32px;
}

figure.topImg  img { max-width: 200px;}

/* flow */
.flow {
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 50px 3%; 
    margin-top: 52px;
}

.flow a { text-decoration: none; }

.flow figure { flex-shrink: 0; }

.flow figure img { width: 100%; }

/* box */
.box { 
    flex-basis: 30%;
    display: flex;
    column-gap: 15px;
}

.box h2,
.box figcaption {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 1rem;
}

.box h2 { margin-bottom: 0.5rem; }

.box figcaption { 
    margin-top: 0.5rem;
    line-height: 1.7;
}

.box figcaption img {
    display: inline-block;
    vertical-align: middle; 
    width: 32px;
}

/* allow */
.allow { 
    padding-top: 30%;
    flex-basis: 20%;
}

@media only screen and (max-width: 1531px) {
    .contents { padding:  50px 32px;}
}

@media only screen and (max-width: 1025px) {
    figure.topImg  img { width: 50%; }
    
    .flow { gap: 50px 32px; }
}

@media only screen and (max-width: 769px) {
    .title figure {
        flex-wrap: wrap;
        gap: 10px;
    }
    
    .contents {
        max-width: 100%;
        padding: 50px 22px;
    }
    
        
    .box { 
        flex-basis: 46%;
        column-gap: 10px;
    }
    
    .box h2 { height: 2.5rem; }
    
    .allow {  flex-basis: 35%;  }
}

/* -SP- -599px */
@media screen and (max-width: 599px){
    
    .title h1 span  br { display: none; }
    
    figure.topImg  img { 
        flex-basis: 50%;
        max-width: 100%;
    }
    
    .flow { 
        font-size: 14px;
        gap: 50px 22px;
    }
    
    .box { flex-basis: 100%; }

    .allow { 
        flex-basis: 50%;
        padding-top: calc(2.5rem + 20%);
    }
    
}


