.l-footer, .l-contact, .l-info{
    padding: 20px
}


.l-inner {
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
    padding-bottom: 20px;
    width: 100%
}

.l-inner.-min {
    max-width: 600px
}
.footer-info__access {
    text-align: left;
    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 30px;
    padding-right: 30px

}

.footer-info__contact {
    padding-top: 60px;
    padding-bottom: 20px;
    padding-left: 30px;
    padding-right: 30px
}
 
.footer-info__contact .wpcf7 {
    font-size: 1.3rem;
    margin-top: 1.5em;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.footer-info__contact .wpcf7-form p {
    text-align: center;
    padding-top: 12px;
    padding-bottom: 12px
}

.footer-info__contact .wpcf7-form p:nth-last-child(2) {
    position: relative;
    margin-top: 40px
}

.footer-info__contact .wpcf7-form p:nth-last-child(2)::before {
    content: "";
    position: absolute;
    display: inline-block;
    top: 0;
    bottom: 6px;
    left: 150px;
    right: 0;
    margin: auto;
    width: 61px;
    height: 6px;
    background-image: url(img/nav_next.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% auto
}

.footer-info__contact .wpcf7-text, .footer-info__contact .wpcf7-textarea {
    font-size: 1.4rem;
    margin-top: 7px;
    padding: 5px 1em;
    padding-top: 5px;
    padding-bottom: 5px;
    width: 100%;
    border: #ccc solid 1px
}
  
.footer-info__contact .wpcf7-textarea {
    resize: vertical
}

/* main用 */

.topimgspace{
    position: relative;
    width: auto;
    height: auto;
}

.topimgspace::before{
    content: "";         /* 疑似要素に必須 */
    width: 100%;         /* 幅いっぱい */
    height: 100%;        /* 高さいっぱい */
    display: block;      /* 高さを指定するためにブロック要素にする */
    background: linear-gradient(to bottom, transparent 0%, transparent 80%, #fff 99%);
    position: absolute;  /*  */
    top: 0;
    left: 0;
}



.sumaho{ display: block !important; 
    vertical-align: bottom;
    width: 100%;
    height: auto;
       padding-bottom: 5px;
}
.sumaho-word{ display: block !important; 
       text-align: center;
       color: #ECE5EE; 
       font-size: 2.0rem;
       padding-bottom: 70px;}

.relative {
padding-top: 20%;
position: relative;
display: none !important; 
}

.absolute {
position: absolute;
left: 58%;
bottom: 40%;
display: none !important; 
}

.relative2 {
padding-top: 10%;
left: 8%;
position: relative;
max-width: 100%;
display: none !important; 
}

.absolute2 {
position: absolute;
left: 42%;
bottom: 30%;
max-width: 100%;
display: none !important; 
}

.relative3 {
padding-top: 10%;
position: relative;
max-width: 100%;
display: none !important; 
}

.absolute3 {
position: absolute;
left: 50%;
bottom: 40%;
max-width: 100%;
display: none !important; 
}

.absolute4 {
position: absolute;
left: 42%;
top: -60%;
max-width: 100%;
}

.absolute-word {
color: #ECE5EE;
position: absolute;
margin-top: 1em;
font-size: 2.5rem;
margin-left: auto;
margin-right: auto;
display: none !important; 
}

.absolute-word2 {
color: #ECE5EE;
position: absolute;
margin-top: 1em;
font-size: 2.5rem;
left: 58%;
bottom: 33%;
margin-left: auto;
margin-right: auto;
display: none !important; 
}

.absolute-word3 {
color: #ECE5EE;
position: absolute;
margin-top: 1em;
font-size: 2.5rem;
margin-left: auto;
margin-right: auto;
display: none !important; 
}

.absolute-word4 {
color: #ECE5EE;
position: absolute;
margin-top: 1em;
font-size: 2.5rem;
left: 42%;
bottom: 18%;
margin-left: auto;
margin-right: auto;
display: none !important; 
}

.absolute-word5 {
color: #ECE5EE;
position: absolute;
margin-top: 1em;
font-size: 2.5rem;
left: 50%;
bottom: 28%;
margin-left: auto;
margin-right: auto;
display: none !important; 
}

.absolute-word6 {
color: #ECE5EE;
position: absolute;
margin-top: 1em;
font-size: 2.5rem;
left: 58%;
bottom: 28%;
margin-left: auto;
margin-right: auto;
display: none !important; 
}

.absolute-word7 {
color: #ECE5EE;
position: absolute;
margin-top: 1em;
font-size: 2.5rem;
left: 42%;
bottom: -150%;
margin-left: auto;
margin-right: auto;
}

.img3 {
    padding-top: 35px;
    vertical-align: bottom;
    width: 100%;
    height: auto;
    padding-bottom: 50px;
  }
  /* .img {
    vertical-align: bottom;
    width: 100%;
    height: auto;
    padding-bottom: 50px;
  } */
  
  .img2{
    vertical-align: bottom;
    width: 68%;
    height: 100%;
    display: block;
    margin: auto;
    padding-bottom: 50px;
  }
  
  .pdf{
    vertical-align: bottom;
    width: 50%;
    height: 50%;
    padding-top: 50px;
    display: block;
    margin: auto;
  }
  
  .subtitle{
      font-size: 1rem;
      font-weight: normal;
      margin: 0;
      padding-top: 30px;
  }
  

/* about用CSS */

.about{
    margin-top: 6%;
    width: 100%;
    /* height: 119vh; */
    text-align: center;
}

.aboutimg{
    width: auto;
    height: auto;
    padding-left: 5%;
    /* padding-right: 30%; */
    /* padding-top: 11%; */
    position: relative;
    /* left: 25%;*/
}

.caption{
    width: auto;
    height: auto;
    padding-left: 18%;
    padding-right: 34%;
    margin-top: 1%;
    position: relative;
    /* left: -18%; */
    bottom: 47em;
    font-size: 1.5em;
    font-family: "Sawarabi Mincho";
}

.caption2{
    position: relative;
    margin-top: -3.2%;
}

/* info用CSS */

.info{
    margin-top: 3%;
    width: auto;
    height: auto;
    text-align: center;
}

p.instagram img {
    width: 40%;
    height: 50%;
}


.instagram_architecture {
    width: auto;
    height: auto;
}

.instagram_personal{
    width: auto;
    height: auto;
}

.note{
    width: auto;
    height: auto;
    position: relative;
    padding: 0px 17px;
}

.pcmynote{
    width: auto;
    height: auto;
    padding-bottom: 15px;
}

/* .spmynote{
    display: none !important;
} */

.mynote{
    width: auto;
    height: auto;
    padding-bottom: 15px;
}

.snsunder_note{
    width: auto;
    height: auto;
    margin-top: 7vh;
}

.contact{
    margin-top: 6%;
}

/* PCでは横並び、SPでは縦並び */

.PC_Flex_container{
    display: flex;
    justify-content: space-evenly;
    margin-left: 20%;
    margin-right: 20%;
    margin-top: 5%;
}
/* .PC_Flex_container {
    background-color: #cddc39;
    color: #444;
    display: block;
    padding: 20px;
    margin: 10px;
    text-align: center;
    border: 3px solid #444;
} */

@media screen and (max-width:1000px){
    .PC_Flex_container{
        display: flex;
        flex-direction :column;
        text-align: center;
    }
    .PC_Flex_container a{
        width: 50%;
        margin: 10px auto;
    }
    .info{
    /* margin-top: 75%; */
    width: auto;
    height: auto;
    justify-content: center;
    }
    .snsunder_note{
        width: auto;
        height: auto;
        position: relative;
        bottom: 6vh;
    }

    .topimgspace{
        position: relative;
        width: auto;
        height: auto;
        /* top: -11vh; */
    }
}
/* PCでは横並び、SPでは縦並びここまで */

/*  */
.sumaho{ display: none !important; }
.sumaho-word{ display: none !important; }

	.relative { display: block !important; }

	.absolute  { display: block !important; }

	.relative2  { display: block !important; }

	.absolute2  { display: block !important; }

	.relative3  { display: block !important; }

	.absolute3  { display: block !important; }

	.absolute-word { display: block !important; }

	.absolute-word2 { display: block !important; }

	.absolute-word3 { display: block !important; }

	.absolute-word4  { display: block !important; }

	.absolute-word5  { display: block !important; }

	.absolute-word6  { display: block !important; }
/*  */

.caption_sp{
    display: none !important;
}

.img_sp{
    display: none !important;
}

.spmynote{
    width: auto;
    height: auto;
    padding-bottom: 15px;
}

/* .pcmynote{
    display: none !important;
} */

@media screen and (max-width: 768px) {
    .l-footer, .l-contact, .l-info{
        padding-left: 30px;
        padding-right: 30px
    }

    .l-inner {
        padding-top: 30px;
        padding-bottom: 30px;
        max-width: 1280px
    }

    .l-inner.-small {
        max-width: 960px
    }

    /* info用CSS */

    .info{
        width: auto;
        height: auto;
    }

    p.instagram img {
        width: 30%;
        height: 38%;
    }

    /* .instagram_architecture {
        width: 26%;
        height: 30%;
        position: absolute;
        right: 6%;
    }

    .instagram_personal{
        width: 26%;
        height: 30%;
        position: absolute;
    } */
    
    .caption{
        width: auto;
        height: auto;
        padding-left: 30%;
        padding-right: 22%;
        margin-top: 1%;
        position: relative;
        left: -24%;
        bottom: 47em;
        font-size: 1.4em;
    }
    
    .caption2{
        position: relative;
        margin-top: -3.3%;
    }
    .note{
        width: auto;
        height: auto;
        position: relative;
        padding-left: 3vh;
    }
    
    .PC_Flex_container{
        display: flex;
        flex-direction :column;
    }
}
    @media screen and (max-width: 1250px) {
    .sumaho{ display: block !important; }
    .sumaho-word{ display: block !important; }

	.relative { display: none !important; }

	.absolute  { display: none !important; }

	.relative2  { display: none !important; }

	.absolute2  { display: none !important; }

	.relative3  { display: none !important; }

	.absolute3  { display: none !important; }

	.absolute-word { display: none !important; }

	.absolute-word2 { display: none !important; }

	.absolute-word3 { display: none !important; }

	.absolute-word4  { display: none !important; }

	.absolute-word5  { display: none !important; }

	.absolute-word6  { display: none !important; }

    .aboutimg{
        display: none !important;
        margin: 10px 20px;
    }

    .caption_sp{
        display: block !important;
    }

    .img_sp{
        display: block !important;
        margin: 10px 20px;
    }

    .PC_Flex_container{
        display: flex;
        flex-direction: column;
        width: auto;
        /* margin: 10px 20px; */
    }
    .PC_Flex_container a{
        width: 50%;
        margin: 10px auto;
    }

}





.insta_btn2{/*ボタンの下地*/
    color: #FFF;/*文字・アイコン色*/
    border-radius: 7px;/*角丸に*/
    position: relative;
    display: inline-block;
    height: 50px;/*高さ*/
    width: 300px;/*幅*/
    text-align: center;/*中身を中央寄せ*/
    font-size: 20px;/*文字のサイズ*/
    line-height: 50px;/*高さと合わせる*/
    background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;/*グラデーション①*/
    overflow: hidden;/*はみ出た部分を隠す*/
    text-decoration:none;/*下線は消す*/
  }

  .insta_btn2:before{/*グラデーション②*/
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;/*全体を覆う*/
    height: 100%;/*全体を覆う*/
    background: -webkit-linear-gradient(15deg, #ffdb2c, rgb(249, 118, 76) 25%, rgba(255, 77, 64, 0) 50%) no-repeat;
    background: linear-gradient(15deg, #ffdb2c, rgb(249, 118, 76) 25%, rgba(255, 77, 64, 0) 50%) no-repeat;
  }

  .insta_btn2 .fa-instagram{/*アイコン*/
    font-size: 35px;/*アイコンサイズ*/
    position: relative;
    top: 4px;/*アイコン位置の微調整*/
  }
  
  .insta_btn2 span {/*テキスト*/
    display:inline-block;
    position: relative;
    transition: .5s
  }
  
  .insta_btn2:hover span{/*ホバーで一周回転*/
    -webkit-transform: rotateX(360deg);
    -ms-transform: rotateX(360deg);
    transform: rotateX(360deg);
  }








@media screen and (min-width: 1025px) {
}
  
@media screen and (min-device-width: 1069px) {
}

@media screen and (min-width: 1281px) {
    
}