@charset "UTF-8";

*{
    margin: 0;
    padding: 0;
}

.main-visual {
    height: 44vw;
    background-size: cover;
    background-image: url(../images/smile.jpg);
} 

header h1 a {
    font-size: 24px;
    text-decoration: none;
    color: #ffffff;
    padding-left: 30px;
}

header nav {
    width: 100%;
}

header nav ul li a {
    font-size: 16px;
    text-decoration: none;
    color: #ffffff;
    padding-left: 30px;
}

h2 {
    text-align: center;
    color: #545454;
    margin-top: 15px;
}

main {
    max-width: 100%;
    width: 90%;
    margin: 0 auto;
}

main p {
    color: #7f7f7f;
}

/* PC版の「.grid-container」の指定と同じ強さで上書き */
main .grid-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    justify-content: center;
    align-items: center;
    gap: 15px;
}

main .work-item {
    margin: 0 auto;
    width: 100%;
    text-align: center;
}

main .work-item img {
    display: block;
    margin: 0 auto;
    width: 100%;
    object-fit: scale-down;
}

/* PC版の個別指定と同じ記述（詳細度）で高さを上書き */
#logo-design .work-item img { height: 160px; }
#business-card .work-item img { height: 120px; }
#web-banner .work-item img { height: 100px; }
#poster-design .work-item img { height: 220px; }
#poster-design .work-item:nth-child(5) img { height: 140px; }

/* カフェサイト中央 */
main .grid-container.cafe-container {
    display: flex;
    justify-content: center;
}

.cafe-container .work-item {
    max-width: 100%;        
}

.cafe-container .work-item img { 
    height: 240px; 
}

footer {
    width: 100%;
    padding: 40px 20px;
    background-color: #a9a9a9;
}

.parent {
    display: flex;
    justify-content: center; 
}

.footer-address {
    text-align: center;
    color: #ffffff;
    padding-bottom: 15px;
}

.footer-address .first-line {
    margin-bottom: 15px;
    font-size: 16px;
    color: #ffffff;
}

.sns-links {
    text-align: center;
    color: #ffffff;
}

.sns-links a {
    font-size: 20px;
    color: #a9a9a9;
}

footer p {
    text-align: center;
    color: #ffffff;
    font-style: normal;
}