/*全体設定*/
*{
    box-sizing: border-box;
}
body{
    margin: 0;
    background-color: #eaf3f7;
    color: #2f3e4d;
    font-family: "Noto serif JP" , serif;
}

/*header*/
header{
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    border-bottom: 1px solid #dceaf2;
}

/*navi*/
.nav{
    display: flex;
    gap: 40px;
    margin-left: auto;
    margin-right: 40px;
}

/*rink*/
nav a{
    color: #2f3e4d;
    text-decoration: none;
    font-size: 14px;
}

/*hero*/
.hero{
    height: 520px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.hero h1{
    font-size: 64px;
    font-weight: normal;
    letter-spacing: 8px;
    color: #2f3e4d;
}
/*profile画像*/
.profile-image{
    width: 100%;
    max-width: 420px;
    height: 380px;
    object-fit: cover;
    display: block  ;
}
.profile-content{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 60px;
    max-width: 1000px;
    margin: 40px auto;
}


/*profile*/
#ProfileArea{
    min-height: 28px;
    font-weight: normal;
    letter-spacing: 5px;
    margin-bottom: 35px;
}
/*profile大文字*/
#ProfileArea h2{
    font-size: 28px;
    text-align: center;
    margin-bottom: 8px;
    color: #2f3e4d;
}
/*氏名*/
#ProfileArea h3{
font-size: 22px;
font-weight: normal;
letter-spacing: 2px;
margin-bottom: 8px;
}
/*profile内の文章*/
#ProfileArea p{
    font-size: 14px;
    line-height: 2;
    margin-bottom: 20px;
}

/*woksarea*/
#WorksArea {
    min-height: 600px;
    padding: 80px 60px;
    text-align: center;
}
/*woksarea見出し*/
#WorksArea h2{
    font-size: 28px;
    font-weight: normal;
    letter-spacing: 5px;
    margin-bottom: 50px;
    color: #2f3e4d;
}
/*作品一覧*/
.work-list{
    display: flex;
    gap: 40px;
    justify-content: center;
    max-width: 1100px;
    margin: 0 auto  ;
}
.work-card{
    flex: 1;
    min-width: 0;
}

/*作品画像*/
.work-image{
    width: 100%;
    height: auto;
    overflow: visible;
    background-color: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
}
.work-image img{
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
    border-radius: 15px;
}
.work-image.christmas img{
    border-radius: 0;
}
.work-image.cafe img{
    border-radius: 0;
}
/*作品情報*/
.work-info{
    padding-top: 15px;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows:  auto auto;
    text-align: left;
}
/*作品タイトル*/
.work-info h3{
    font-size: 16px;
    font-weight: normal;
    margin-bottom: 10px;
}
/*カテゴリー*/
.work-info p{
    font-size: 12px;
    color: #888;
    margin-bottom: 10px;
    grid-column: 1;
    grid-row: 2;
    text-align: left;
    justify-self: start;
}
/*やじるし*/
.work-link{
    display: block;
    text-align: right;
    font-size: 20px;
    color: #333;
    text-decoration: none;
    transition: transform 0.3s ease;
}
.work-link:hover{
    transform: translateX(6px);
}
 /*スキルアイコン*/
 #SKILLArea img{
    width: 50px;
    height: 50px;
    object-fit: contain;
    transform: translateY(20px);
 }
 #SKILLArea ul{
    display: flex;
    justify-content: space-between;
    gap: 30px;
    list-style: none;
    padding: 0;
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
 }
 #SKILLArea li{
    border-right: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    position: relative;
 }
 #SKILLArea li:last-child{
    border-right: none;
 }
 #SKILLArea li:not(:last-child)::after{
    content: "";
    position: absolute;
    right: 0;
    top: 25px;
    height: 180px;
    width: 1px;
    background-color: #d5dfe8;
 }
 #SKILLArea h2{
    font-size: 28px;
    text-align: center;
    margin-bottom: 35px;
 }
 #SKILLArea li span{
    font-size: 18px;
    transform: translateY(20px);
 }
 .star{
    color: #8aacc0;
    font-size: 20px;
    display: inline-block;
    letter-spacing: 2px;
    margin-top: -8px;
 }
 .skill-description{
    font-size: 12px;
    line-height: 1.8;
    color: #2f3e4d;
    margin: 8px auto;
    width: 90%;
    text-align: left;
    margin-top: 15px;
 }
 #CONTACTArea{
    margin-top: 60px;
    text-align: center;
    padding: 48px 0;
 }
 #CONTACTArea h2{
    margin-bottom: 8px;
    font-size: 28px;
 }
 .contact-description{
    margin-bottom: 24px;
 }
 .content-subtitle{
    margin-bottom: 8px;
 }
 .content-subtitle{
    margin-bottom: 12px;
 }
 .content-from{
    width: 460px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 0;
 }
 .content-from input{
    height: 48px;
    padding: 0 12px;
    border: 1px solid #dceaf2;
    background-color: #fff;
    font-family: inherit;
    font-size: 12px;
    box-sizing: border-box;
 }
 .content-from textarea{
    height: 120px;
    padding: 12px;
    border: 1px solid #dceaf2;
    background-color: #fff;
    font-family: inherit;
    font-size: 12px;
    resize: vertical;
    box-sizing: border-box;
 }
 .content-from button{
    height: 48px;
    margin-top: 8px;
    border: none;
    background-color: #88a7b8;
    color: #fff;
    font-family: inherit;
    font-size: 12px;
    cursor: pointer;
 }
 .content-from input,
 .content-from textarea{
    width: 100%;
    border: 1px solid #dceaf2;
    color: #2f3e4d;
    text-align: left;
 }
 .content-from input::placeholder,
 .content-from textarea::placeholder{
    color: #7a8792;
 }

 /*フッダー*/
footer{
height: 80px;
display: flex;
justify-content: center;
align-items: center;
border-top: 1px solid #dceaf2;
font-size: 12px;
color: #2f3e4d;
}

