@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
}

/* ヘッダーここから */
/*  ナビここから */
header nav {
    width: 80%;
    padding: 2%;
    margin-left: auto;
    margin-right: auto;
}

header nav ul {
    display: flex;
    list-style-type: none;
}

header nav ul li {
    width: calc( 100% / 4 );
}

header nav ul li a {
    display: block;
    font-size: 3.5vw;
    text-align: center;
    text-decoration: none;
    color: #664b4f;
    transition: 0.5s
}

header nav ul li a:hover {
    border-radius: 0.5vw;
    color: #806C59;
    transition: 0.5s;
}

.index {
    position: relative;
    font-size: 1vw;
}

.index:hover::before {
    width: 100%;
    transition: 0.5s;
}

.index::before {
    position: absolute;
    bottom: 0;
    display: block;
    content: "";
    width: 0%;
    height:  0.1vw;
    background-color: #664b4f;
    transition: 0.5s;
}

.about {
    position: relative;
    font-size: 1vw;
}

.about:hover::before {
    width: 100%;
    transition: 0.5s;
}

.about::before {
    position: absolute;
    bottom: 0;
    display: block;
    content: "";
    width: 0%;
    height:  0.1vw;
    background-color: #664b4f;
    transition: 0.5s;
}

.works {
    position: relative;
    font-size: 1vw;
}

.works:hover::before {
    width: 100%;
    transition: 0.5s;
}

.works::before {
    position: absolute;
    bottom: 0;
    display: block;
    content: "";
    width: 0%;
    height:  0.1vw;
    background-color: #664b4f;
    transition: 0.5s;
}

.contact {
    position: relative;
    font-size: 1vw;
}

.contact:hover::before {
    width: 100%;
    transition: 0.5s;
}

.contact::before {
    position: absolute;
    bottom: 0;
    display: block;
    content: "";
    width: 0%;
    height:  0.1vw;
    background-color: #664b4f;
    transition: 0.5s;
}
/* ナビここまで */

p.line0 {
   border-bottom: 2px solid #664b4f;
}

/*メインビジュアル*/
header .main-visual {
    height: 15vh;
    background-image: url(../images/portfolio.jpg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

/* works */
header h1 {
    padding-top:5%;
    font-weight: 500;
    font-size: 4.5vw;
    text-align: center;
    letter-spacing: 0.1em;
    color: #664b4f;
}

header p {
    font-size: 2vw;
    text-align: center;
    letter-spacing: 0.1em;
    color: #664b4f;  
}
/* ヘッダーここまで */

p.line1 {
   border-bottom: 2px solid #664b4f;
}

/* セクションここから */
.title-flex {
    display: flex;
}

.works-flex {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}

.works h2 {
    margin-top: 7%;
    margin-bottom: 3%;
    margin-left: 10%;
    padding-top: 1%;
    font-size: 4vw;
    font-weight: 400;
    color: #664b4f;
    line-height: 1;
}

.title-flex p:nth-of-type(1) {
    margin-top: 8.5%;
    margin-left: 2%;
    font-size: 2.5vw;
    color: #664b4f;
    line-height: 1;
    text-shadow: 0px 0px 0px #fff;
}

.works h3 {
    padding-top: 70%;
    padding-left: 3%;
    font-size: 2vw;
    color: #fff6ee;
    line-height: 1;
}

.works p {
    padding: 1%;
    display: block;
    font-size: 1.3vw;
    color: #fff6ee;
    text-align: center;
    text-shadow: 4px 4px 5px #664b4f;
}

.image-box1 {
    width: 60%;
    height: 45vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-cafe.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box1:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box2 {
    width: 60%;
    height: 45vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-home.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box2:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box3 {
    width: 60%;
    height: 45vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-teeth.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box3:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box4 {
    width: 60%;
    height: 45vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/shiba.jpg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box4 h3 {
    color: #664b4f;
}

.image-box4:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box5 {
    width: 60%;
    height: 45vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-bear.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box5 h3 {
    color: #664b4f;
}

.image-box5:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box6 {
    width: 60%;
    height: 45vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-cream.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box6:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box7 {
    width: 60%;
    height: 45vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-house.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box7:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box8 {
    width: 45%;
    height: 55vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-koikatsu.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box8 h3 {
    padding-top: 118%;
    padding-left: 3%;
    font-size: 2vw;
    color: #fff6ee;
    line-height: 1;
}

.image-box8:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box9 {
    width: 45%;
    height: 55vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-heisei.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box9 h3 {
    padding-top: 118%;
    padding-left: 3%;
    font-size: 2vw;
    color: #fff6ee;
    line-height: 1;
}

.image-box9:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box10 {
    width: 60%;
    height: 40vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-ten.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box10:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box10 h3 {
    padding-top: 63%;
    padding-left: 3%;
    font-size: 2vw;
    color: #fff6ee;
    line-height: 1;
}
.image-box11 {
    width: 60%;
    height: 45vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-bb.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box11:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box12 {
    width: 50%;
    height: 50vw;
    margin-bottom: 5%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-card1.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box12 h3 {
    padding-top: 90%;
    padding-left: 10%;
    font-size: 2vw;
    color: #fff6ee;
    line-height: 1;
}

.image-box12:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box13 {
    width: 54%;
    height: 51vw;
    margin-bottom: 5%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-card2.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box13 h3 {
    padding-top: 90%;
    padding-left: 12%;
    font-size: 2vw;
    color: #664b4f;
    line-height: 1;
}

.image-box13:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box14 {
    width: 50%;
    height: 48vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-tenkuu.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box14 h3 {
    padding-top: 90%;
    padding-left: 7%;
    font-size: 2vw;
    color: #fff6ee;
    line-height: 1;
}

.image-box14:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.image-box15 {
    width: 50%;
    height: 48vw;
    margin-bottom: 7%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../images/works-wine.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
    transition: 0.5s;
}

.image-box15 h3 {
    padding-top: 90%;
    padding-left: 5%;
    font-size: 2vw;
    color: #664b4f;
    line-height: 1;
}

.image-box15:hover {
   background-size: 110% 110%;
   transition: 0.5s;
}

.line2 {
   border-bottom: 2px solid #664b4f;
}

/* Topへ戻る */
html {
    scroll-behavior: smooth;
}

.return {
    position: fixed;
    text-align: center;    
    line-height: 2.5;
    font-size: 2vw;
    right: 50px;
    bottom: 50px;
    width: 5vw;
    height: 5vw;
    color: #664b4f;
    background-color: #fff6ee;
    border: 2px solid #dc9f95;
    border-radius: 5vw;
    white-space: pre-wrap;
}

.return a {
    color: #806C59;
    text-decoration: none;
}

/* フッターここから */
footer {
    padding-top: 1%;
    padding-right: 6%;
    padding-bottom: 1%;
    padding-left: 6%;
    background-image: url(../images/free2.jpg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    color: #664b4f;
}

.footer-flexbox {
    width: 80%;
    padding: 2%;
    margin-left: auto;
    margin-right: auto;
}

footer  ul {
    display: flex;
    list-style-type: none;
}

footer ul li {
    width: calc( 100% / 4 );
}

footer ul li a {
    display: block;
    font-size: 3.5vw;
    text-align: center;
    text-decoration: none;
    color: #806C59;
    transition: 0.5s
}

footer ul li a:hover {
    border-radius: 0.5vw;
    color: #664b4f;
    transition: 0.5s;
}

footer span {
    margin-right: 1%;
}

footer p {
    margin-top: 2%;
    text-align: center;
    font-size: 2vw;
}
/* フッターここまで */