@charset "UTF-8";

/* 共通部分 --------------- */
html {
    font-size: 100%;
}

body{
    font-family: "小塚ゴシック Pr6N","BIZ UDGothic","A-OTF じゅん Pro";
    line-height: 1.7;
    color: #000;
    margin: 0;
}

a{
    text-decoration: none;
}

.tree-img img{
    padding-left: 20px;
}
/*img{
    max-width: 100%;
}*/
/* CSSコード */
.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 20px;
    background: #fff;
}
/* HEADER -----------*/
.logo{
    width: 210px;
    margin-top: 14px;
    font-size: 24px;
    margin-left: auto;
}

/* ハンバーガーメニュー */
.drawer-hidden{
    display: none;
}/* チェックボックス非表示 */
/* ハンバーガーメニュー位置 */
.drawer-open{
    display: flex;
    height: 100x;
    width: 100px;
    justify-content: center;
    align-items: center;
    position: fixed;
    right: 30px;
    z-index: 100;/* 重なり順を一番上にする */
    cursor: pointer;
}
.nav{
    margin-top: 70px;
}
/* ハンバーガーメニューアイコン */
.drawer-open span,
.drawer-open span:before,
.drawer-open span:after{
    content: '';
    display: block;
    height: 4px;
    width: 35px;
    border-radius: 3px;
    background: #333;
    transition: 0.5s;
    position: absolute;
}
/* 三本線一番上 */
.drawer-open span:before{
    bottom: 12px;
}
/* 三本線一番した */
.drawer-open span:after{
    top: 12px;
}
/* アイコンがクリックされたら真ん中の線透過 */
#drawer-input:checked ~ .drawer-open span{
    background: rgba(255, 255, 255, 0);
}
/* アイコンがクリックされたらアイコンが✖️印になるようにする */
#drawer-input:checked ~ .drawer-open span:before{
    bottom: 0;
    transform: rotate(45deg);
}

#drawer-input:checked ~ .drawer-open span:after{
    top: 0;
    transform: rotate(-45deg);
}
/* メニューデザイン */
.nav-content{
    width: 200px;
    height: 100%;
    position: fixed;
    top: 0;
    right: 100%;/*メニューを外に外す*/
    z-index: 99;
    background: rgb(237, 169, 235, .8);
    text-align: left;
    padding: 20px;
    padding-top: 100px;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
    line-height: 70px;
}

.nav-list li a{
    color: #000;
}

.nav-list img{
    height: 15px;
    width: 10px;
    margin-right: 10px;
}

li .nav-item{
    display: flex;
}

.nav-list li a:hover{
    background-color: #fff;
    color: #333;
    padding: 10px;
    background-size: 10px;
    height: 20px;
    text-align: center;
    border-radius: 10px;
}

/* メニューの黒ポチをけす */
.nav-list{
    list-style: none;
    
}
/* アイコンがクリックされたらメニューの表示 */
#drawer-input:checked ~ .nav-content{
    right: 0;/*メニューを画面に入れる*/

}

.page-header{
    display: flex;
    justify-content: space-between;
}

.wrapper{
    max-width: 1100px;
    margin: 0 auto;
    padding: 0.4%;
}

/* キャッチコピー */
.home-content{
    display: flex;
    justify-content: space-between;
    margin: 110px auto;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
    width: 880px;
    }
/* TOP 背景画像 */
.big-bg{
    background-size: cover;
    background-position: center top;
    height: 780px;
}

#home{
    background-image: url(../images/top.jpg);
    min-height: auto;
}

#home .pagetitle{
    text-transform: none;
}
/* 共通タイトル部分 */
.hurt{
    display: flex;
    justify-content: center;
    padding-top: 100px;
}

.page-title{
    text-align: center;
    color: #d5007f;
    text-shadow: 2px 4px 0 #000;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
    }

/* ボタン */
.more-buttom{
    font-size: 1.375rem;
    background-image: url(../images/botomm.png);
    background-position: center;
    color: #000;
    display: flex;
    padding: 18px 32px;
    justify-content: center;
    background-repeat: no-repeat;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
}

#bu

.more-buttom:hover{
    color: blue;
    opacity: 0.8;
}

/* ABOUT */
.content-abou{
    width: 880px;
    margin: 0 auto;
}

.face img{
    width: 400px;
    height: 400px;
    border-radius: 40px;
}

.panel-about{
    display: flex;
    justify-content: space-between;
   }

article{
    width: 40%;
    background-color: #fff;
    background-color: rgba(255, 255, 255, .7);
    width: 400px;
    height: 360px;
    padding: 20px;
    border-radius: 40px;
    }

article p{
    font-size: 18px;
}

.wrapper{
    margin: 0 auto;
    width: 880px;
}

.img-wrapper{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin: 20px auto;
    width: 880px;
}

.pipe1{
    padding-right: 100px;
}

.people2{
    padding-left: 100px;
}

/*.people1{
    padding-right: 100px;
}
/* WARKS ------------*/
.wrapper-grid{
    display: grid;
    gap: 30px;
    width: 880px;
    grid-template-columns: 1fr 1fr;
    margin-top: 6%;
    margin-bottom: 50px;
    place-items: center;
    grid: 200px;
    margin: 50px auto;
}

.item img{
    background-color: #fff;
    background-color: rgba(255, 255, 255, .7);
    border-radius: 40px;
    text-align: center;
    padding: 30px;
    width: 360px;
    height: 200px;
    object-fit: scale-down;
}

.item p{
    text-align: center;
    color: #000;
}

.item :hover{
    color: blue;
    opacity: 0.9;
}
/* CONTACT */
form{
    background-color: rgba(255, 255, 255, .7);
    min-height: 50vh;
    width: 600px;
    margin: auto;
    padding: 20px;
    border-radius: 40px;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
}

label{
    font-size: 1.125rem;
    margin-top: 20px;
    margin-bottom: 10px;
    display: block;
    text-align: justify;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea{
    background: rgba(255, 255, 255, .5);
    border: 1px #000 solid;
    border-radius: 5px;
    padding: 10px;
    font-size: 1rem;
}

input[type="text"],
input[type="email"],
input[type="tel"]{
    width: 100%;
    max-width: 580px;
}

textarea{
    width: 100%;
    max-width: 580px;
    height: 6rem;
}

input[type="submit"]{
    border: none;
    cursor: pointer;
    line-height: 1;
    background-image: url(../images/botomm.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    padding: 18px 32px;
    font-size: 1.375rem;
}
.buttom{
    display: block;
    margin: 20px auto;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.buttom:hover{
    color: blue;
    opacity: 0.8;
}

.content-contact p{
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
    text-align: center;
    margin: 30px;
}

.contact-img{
    display: grid;
    place-items: center;
    gap: 26px;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 50px 40px;
}

/* フッター ----------------*/
footer{
    background:#ffd7e9;
    text-align: center;
    padding: 26px 0;
}

footer p{
    color: #000;
    font-size: 0.875rem;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
}
/* 背景画像 */
.top{
    background-image: url(../images/pinkback.png);
}

/* ABOUT ページーーーーーーーーーーーーーーーー*/
#about-home{
    height: 300px;
    background-image: url(../images/top.jpg);
}
/* 自己紹介 */
#container{
    display: flex;
    flex-direction: row;
    width: 880px;
    margin: 100px auto;
}

.itemtati{
    display: flex;
    flex-direction: column;
    margin: 0 100px;
    width: 50%;
}

.about-item{
    display: flex;
    flex-direction: row;
}

.about-item p{
    width: 300px;
    vertical-align: top;
}

.about-item li{
    width: 100px;
    margin: 16px 10px;
    list-style: none;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.about-item img{
    width: 20px;
    height: 20px;
    margin: 18px 0;
   /* padding: 0 10px;*/
}

ul{
    padding: 0;
}

.about-content{
    background-color: #fff;
    opacity: .8;
    border-radius: 20px;
    padding: 0 10px;
    margin-top: auto;
}

.about-face img{
    width: 400px;
    height: 400px;
    border-radius: 20px;
}

.about-name{
    margin: 0;
    padding: 0 10px;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
}

/* 経歴 */
.career-wrapper{
    width: 880px;
    margin: 100px auto;
}

.career-top h1{
    text-align: center;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;

}

.career-people-wrapper{
    display: flex;
    justify-content: space-around;
    align-items: first baseline;
}

.career-item{
    display: flex;
    flex-direction: row;
}

.career-item p{
    width: 100%;
    vertical-align: top;
    margin: 20px;
}

.career-item li{
    width: 150px;
    margin: 20px 10px;
    list-style: none;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.career-item img{
    width: 20px;
    height: 20px;
    margin: 22px 5px;
}

.career-container{
    background-color: #fff;
    opacity: .8;
    border-radius: 20px;
    padding: 0 10px 10px;
    margin: auto;
    width: 920px;
}

.career-wrapper h3{
    text-align: center;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
}
/* スキル */
.skill-top h1{
    text-align: center;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.tree-img{
    display: flex;
    justify-content: space-around;
}

.skill-wrapper{
    width: 880px;
    margin: 100px auto;
}

.skill-item{
    display: flex;
    flex-direction: row;
}

.skill-item p{
    width: 100%;
    vertical-align: top;
    margin: 20px;
}

.skill-item li{
    width: 150px;
    margin: 20px 10px;
    list-style: none;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.skill-item img{
    width: 20px;
    height: 20px;
    margin: 22px 5px;
}

.skill-container{
    background-color: #fff;
    opacity: .8;
    border-radius: 20px;
    padding: 0 10px 10px;
    margin: auto;
    width: 920px;
}

.contact{
    display: flex;
    flex-flow: column;
    text-align: center;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
    margin: 50px;
}

.contact img{
    width: 50px;
    height: 50px;
    margin: 10px auto;
    opacity: .7;
}

.contact a{
    color: #000;
    background-color: #00b7ee;
    border-radius: 10px;
    width: 300px;
    height: 50px;
    margin: 10px auto;
    opacity: .7;
    border: 2px solid #000;
    display: flex;
    justify-content: center;
    align-items: center;
}

.contact a:hover{
    color: blue;
    opacity: 0.5;
}
/* WORKSページ ----------------*/
.woeks-item{
    display: grid;
    gap: 30px;
    width: 880px;
    grid-template-columns: 1fr 1fr;
    place-items: center;
    grid: 200px;
    margin: 50px auto;
}

.woeks-item p{
    color: #000;
}

.woeks-item :hover{
    color: blue;
    opacity: 0.9;
}
/* WEBページ -------------------*/
.web-container{
    /*text-align: center;*/
    width: 880px;
    margin: 50px auto;
}

.web-container p{
    margin: 0 0 50px 50px;
    /*margin-left: 50px;
   margin-top: 50px;*/
}

.web-container img{
    background-color: rgba(255, 255, 255, .7);
    border-radius: 20px;
    width: 840px;
    object-fit: contain;
    padding: 30px
}
/* WEB セクション */
.web-section{
    display: flex;
    flex-direction: row;
    margin-top: 10px;
    height: 50px;
    /*width: 50px;*/
}

.web-container h1{
    text-align: center;
    color: #d5007f;
    text-shadow: 2px 2px 0 #000;
    /*font-size: 24px;*/
}

.web-section-group p{
    vertical-align: top;
    /*padding-left:40px;*/
    /*margin: 0;*/
}

.web-section li{
    width: 150px;
    margin: 5px 0px;
    list-style: none;
    font-family: "ab-megadot9", sans-serif;
    font-weight: 400;
    font-style: normal;
    padding: 6px 0;
}

.web-section-group{
    width: 880px;
    margin: 50px auto 70px;
}

.web-section img{
    width: 20px;
    height: 20px;
    /*margin: 22px 5px;*/
    background-color: transparent;
    padding: 10px;
}

.irare-container{
    text-align: center;
    width: 880px;
    margin: 50px auto;
}

.irare-container img{
    background-color: rgba(255, 255, 255, .7);
    border-radius: 30px;
    width: 840px;
    height:450px;
    object-fit: contain;
    padding: 20px;
}

.irare-container h1{
    text-align: center;
    color: #d5007f;
    text-shadow: 2px 2px 0 #000;
    /*font-size: 24px;*/
}

/* レスポンシブ -------------*/
@media (max-width: 880px) {
    body{
        line-height: 1rem;
    }

    .page-title{
        font-size: 2.5rem;
        margin: 20px auto 10px;
    }

    .more-buttom{
        background-size: 5rem;
        font-size: 1rem;
        margin: 10px 0;
        padding: 10px;
    }

    /* HEADER */
    .page-header img{
        width: 70px;
        height: 70px;
        margin: 10px 50px;
    }

    .nav-item img{
        width: .8rem;
        height: 1rem;
        margin: -2px 0;
    }

    .nav-item{
        width: 7rem;
        height: 5rem;
    }

    .nav-item{
        display: inline-block;
        vertical-align: top;
    }

    .nav-list li a{
        padding: 10px;
    }
    
    .big-bg{
        height: auto;
        width: auto;
    }

    /* ハンバーガーメニュー */
    .nav-content{
        width: 7em;
    }

    .home-content{
        width: auto;
        text-align: center;
        font-size: small;
        flex-direction: column;
        margin: 50px auto 0;
        padding-bottom: 50px;
    }

    .hurt{
        padding-top: 70px;
    }

    .hurt img{
        width: 3rem;
    }

    .panel-about{
        flex-direction: column;
        margin: 0 auto;
    }

    .wrapper{
        width: auto;
    }

    .face{
        display: flex;
        justify-content: center;
        margin: 40px 0;
    }

    .face img{
        width: 20rem;
        height: auto;
        /*display: block;
        text-align: center;*/
    }

    article{
        width: 18rem;
        height: auto;
        margin: 20px auto;
    }

    article h2{
        font-size: 1rem;
        margin: 0;
        text-align: center;
    }  

    article p{
        font-size: .8rem;
        margin-top: 10px;
    }

    .img-wrapper{
        width: auto;
        height: auto;
        margin: 0 17%;
    }

    .img-wrapper img{
        width: 2rem;
        padding: 10px;
    }

    .wrapper-grid{
        display: flex;
        flex-direction: column;
        grid-auto-flow: column;
        width: auto;
        margin-bottom: 20px;
        gap: 0;
    }

    .item img{
        width: 20rem;
        padding: 20px;
    }

    .castli{
        display: flex;
        align-items: flex-end;
    }

    .item p{
        margin-top: 15px;
        margin-bottom: 30px;
    }

    form{
        width: 80%;
    }

    label{
        font-size: 1rem;
        margin-top: 10px;
    }

    input[type="text"], input[type="email"], input[type="tel"]{
        max-width: initial;
        width: 95%;
        font-size: 1rem;
        height: 1rem;
    }

    textarea{
        max-width: initial;
        width: 95%;
    }

    
/*送信ボタン*/
    input[type="submit"]{
        background-size: 5rem;
        max-width: inherit;
        font-size: 1rem;
        margin: 0 auto;
    }

    .contact-img{
        width: auto;
        height: auto;
        margin: 0 10%;
        padding: 10% 0;
    }

    .contact-img img{
        width: 2rem;
        height: 2rem;
        padding-left: 10px;
    }
    /* aboutページ */
    #container{
        width: auto;
        flex-direction: column;
        margin: 0 auto;
    }

    .about-face img{
        width: 20rem;
        height: auto;
        display: block;
        margin: 50px auto;
    }

    .about-name{
        width: 20rem;
        margin: 0 20px 20px 0px;
        text-align: center;
    }

    .itemtati{
        font-size: .8rem;
        margin: 0 auto;
        width: 20rem;
        height: auto;
    }

    .about-item{
        height: 50px;
    }

    .about-item img{
        margin: 14px 0;
    }

    .about-content{
        padding: 0 15px;
    }
    /* 経歴 */
    .career-top{
        font-size: .8rem;
    }

    .career-container{
        font-size: .8rem;
        width: 18rem;
        margin: 0 auto;
        padding: 0 15px;
    }

    .career-top h1{
        max-width: initial;
        width: auto;
        margin-top: 80px;
    }

    .career-wrapper{
        width: auto;
        margin: 0 auto;
    }

    .career-item{
        width: 88%;
    }

    .career-item img{
        margin: 17px 0;
    }

    .career-item p{
        margin: 18px 15px 18px 0;
    }

    .career-item li{
        width: 140px;

    }

    .career-people-wrapper img{
        width: 2rem;
        padding: 10px;
    }

    .career-people-wrapper{
        justify-content: space-around;
    }

    .career ul{
        width: 22rem;
    }

    .career-wrapper h3{
        padding-bottom: 18px;
        font-size: .8rem;
    }
    /* スキル */
    .skill-wrapper{
        max-width: -webkit-fill-available;
        font-size: .8rem;
        margin-top: 80px;
    }

    .tree-img img{
        width: 2rem;
        padding: 10px;
    }

    .skill-item img{
        margin: 18px 0px;
    }

    .skill-container{
        width: 18rem;
        padding: 0 15px;
    }

    .contact{
        margin-top: 80px;
        font-size: .8rem;
    }
    /* works */
    .woeks-item{
        display: block;
        width: auto;   
    }
    /* 詳細ページ */
    .web-container{
        width: auto;
        font-size: .8rem;
        margin-top: 80px;
    }

    .works-top .img-wrapper{
        margin-top: 30px;
    }

    .web-container img{
        width: 65%;
        margin: 0 auto;
        padding: 20px;
    }

    .web-section-group{
        width: 23rem;
        font-size: .8rem;
    }

    .web-section img{
        margin-top: 17px;
    }

    .skill-item li{
        width: 170px;
        margin: 20px 10px;
    }

    .skill-item p{
        margin: 20px 0;
    }
    /* webページ */
    .web-section-group{
        width: 70%;
    }

    .web-section-group a{
        word-break: break-all;
    }

    .contact a{
        width: 85%;
    }

    .contact img{
        width: 2rem;
        height: 2rem;
    }

    /*  Instagramページ */
    .irare-container{
        width: 65%;
        font-size: .8rem;
    }

    .irare-container img{
        width: 60%;
        height: 12rem;
        padding: 20px 20%;
    }

}

div.wpcf7 .wpcf7-spinner {
    display: none !important;
}