
@charset "UTF-8";

body {
    font-family: "游明朝",serif;
    font-family: 'Shippori Mincho', serif;

/* background-image: url(../asset/img/wasi-right.PNG); */
/* background-size: 600px; */
background: -moz-linear-gradient(top left, #cffdff, #ffffff); 
background: -webkit-linear-gradient(top left, #fee2f6, #e0fdf7); 
background: linear-gradient(to bottom right, #e2f8fe, #ffe3f4); 


}

html {
    scroll-behavior: smooth;
}


li > a {
    display: block;
    cursor: pointer;
    background: url(../asset/img/snow.png);
}

.header {
    width: 100%;
    background-color: rgb(255, 255, 255);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 15px;
    padding-bottom: 5px;
    position: fixed;
   z-index: 10;
    top: 0;
    left: 0;
        border-bottom:solid
        #ff94da 3px 
         
        
}

.header-nav {
    padding-right: 30px;
}

.header-top {
    padding-top: 10px;
    padding-bottom: 5px;
    padding-left: 350px;
}

.header-center {
    display: flex;
    padding-left: 240px;
    
}

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

.header-top-text {
    font-size: 15px;
    color: rgb(204, 161, 32);
    letter-spacing: 5px;

}

.header-center-text {
    font-size: 19px;
    color: rgb(255, 105, 105);
    padding-top: 5px;
    letter-spacing: 4px;
    padding-left: 8px;
    
    
}

.header-bottom-text {
    font-size: 18px;
    letter-spacing: 3px;
    padding: 5px 0;
    padding-left: 8px;
}

.header-center-text :hover {
color: rgb(255, 168, 168);
}

.header-bottom-text :hover {
    color: rgb(105, 105, 105);
    }


.header-hero-line {
    width: 100%;
    height: 3px;
    border: 2px;
    background-color: rgb(190, 3, 168);
    z-index: 3;
}

.header-logo {
    width: 140px;
}

/*
 hero space
*/

.hero {
    width: 100vw;

    height: 100vh;
    padding-top: 90px;
    position: relative;
    overflow: hidden;
    
    z-index: 1;
}

.hero > .hero-logo {
    position: absolute;
    top: 55%;
    left: 50%;
    transform: translate(-50%, -50%);
    
}

.hero > .hero-text {
    position: absolute;

}

.hero-text {
    color: azure;
    text-shadow: 0 0 10px #fff,0 0 15px #fff;
    top: 70%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 40px;
    letter-spacing: 3px;
}

.hero-logo {
    width: 280px;
}



.hero > video {
    position: absolute;
    width: auto;
    height: 125%;
    
}




/* ヒーローエリアここまで */


/* メインエリア */

.section-main {
    /* background-color: #ffe6f6; */
    padding-bottom: 80px;
    margin-bottom: 50px;
}

.main-figure {
    display: flex;
    justify-content: space-between;
}

.main-img {
    margin-right: 200px;
    margin-top: 160px;
    border-radius: 50px;
    object-fit: cover;
}

.main-figcaption {

    writing-mode: vertical-rl;
    padding-right: 100px;
    font-size: 30px;
    margin-top: 150px;
    margin-left: 380px;
    letter-spacing: 3px;
    
}

.main-img {
   width: 780px;
   height: 480px;
   
}



.h2-main-text {
    padding-right: 20px;
    padding-top: 0px;
 
}

.main-p-text {
    text-align: center;
    padding-top: 80px;
    line-height: 2.625;
    letter-spacing: 2px;
    font-size: 19px;
}

.section-main {
	position: relative;
	font-size: 18px;
}


.section-main :before{
	content: '';
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 0;
    /* border-bottom: solid 2px rgb(255, 168, 168);
	transform: translateX(-50%);
	animation: border_anim 2s linear forwards; */
}

.section-main > p > .span-1 {
    color: #560455;
    font-size: 22px;
}

.section-main > p > .span-2 {
    color: #b71b81;
    font-size: 22px;
}

.section-main > p > .span-3 {
    color: #b71b81;
    font-size: 26px;
}

@keyframes border_anim {
	0%{
		width: 0%;
	}
	100%{
		width: 90%;
	}
}

.nami-img {
    background: url(../asset/img/nami-bottom.PNG) no-repeat left 80px top 510px / 27%;
}

.nami-img2 {
    background: url(../asset/img/nami.PNG) no-repeat right 100px top 780px / 25%;
}

.ume-img {
    background: url(../asset/img/ume-img.PNG) no-repeat left 5% top 150px / 10%;
}

.ume-img-2 {
    background: url(../asset/img/ume-img.PNG) no-repeat left 15% top 350px / 4%;

}


/* 社長メッセージエリア */

.containa {
    margin-bottom: 100px;
}

.section-message {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    padding-bottom: 100px;
    align-items: center;
}

.section-tag {
    display: flex;
    flex-direction:row-reverse;
    
    
}


.message-h1 {
    writing-mode: vertical-rl;
    text-align: start;
    margin-top: 70px;
    line-height: 1.4;
    letter-spacing: 12px;
    margin-right: auto;
    margin-left: 0;
    font-size: max(14px,1.9vw);
}

.section-tag > h1 > span {
    font-size: max(12px,1.15vw);
    color: #862383;
}

.message-p {

    text-align: start;
    padding-top: 70px;
    margin-right: 10px;
    line-height: 3.2;
    letter-spacing: 3px;
    font-size: max(12px,1.1vw);
    writing-mode: vertical-rl;
    margin: auto;
}

.img-minae {
    width: 120px;
    height: 160px;
    width: 120px;
    max-width: 100%;
    object-fit: cover;
    
}

.section-tag > img {
    
  margin-top: 480px;
  margin-right: 2%;
}


.message-name {
    padding-top: 480px;
    padding-right: 0px;
    letter-spacing: 4px;
    font-size: 15px;
    line-height: 2;
    text-align: start;
    writing-mode: vertical-rl;
    /* margin: 0 auto; */
}

.section-message > .message-name {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);


}

.containa {
    align-items: center;
	position: relative;
	text-align: center;
	font-size: 18px;
}

.containa:before{
	content: '';
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 0;
    border-top: solid 2px rgb(255, 168, 168);
	transform: translateX(-50%);
	animation: border_anim 2s linear forwards;
    
}

/* ラインのアニメーションCSS */

@keyframes border_anim {
	0%{
		width: 0%;
	}
	100%{
		width: 80%;
	}
}


/* 発明品エリア */

.coment-out {
    display: none;
}


.section-figure {
    width: 90%;
    max-width: 1440px;
    margin: 0 auto;
    text-align: center;
}

.section-figure-title {
    text-align: center;
    margin:0 auto;
    padding-top: 60px;
    padding-bottom: 60px;
    
}

.section-figure-title > h3 > .span-h3-2 {
     color: #aa4c85;
     font-size: 40px;
}

.section-figure-title > h3 > .span-h3 {
    font-size: 55px;
    color: #aa4c85;
}





.nyamon-otaiko-title {
    font-size: 40px;
    letter-spacing: 12px;
    color: #444444;
    margin-bottom: 60px;
    line-height: 1.7;
}




.figure-first {
    
    display: flex;
    justify-content: space-between;
}



.figcaption-title-p {
    width: 50%;
    margin-top: 10px;
    text-align: center;
    margin-left: auto;
    
}



.figure-title {
    
    color: #ff5e5e;
    color: #4b0949;
    width: 500px;
    margin-left: 4.5em;
    margin-bottom: 20px;
    line-height: 1.8;
	text-indent:-10em;
    letter-spacing: 9px;
    font-size: 32px;
}

.figcaption-title-p > h1 > span {
    font-size: 42px;
}


.figure-text {
    padding: 0;
    margin: 0 30px;
    padding-top: 20px;
    width: 705px;
    display:inline-block;
    letter-spacing: 3px;
    line-height: 2.2;
    font-size: 1.12vw;
    
}

.figure-text-sab {
    font-size: 1.05vw;
}



.image {
	width: 650px;
    height: 400px;
    object-fit: cover;
    max-width: 100%;
    margin-right: 20px;
    border-radius: 30px;
}


.section-second {
    text-align: center;
    margin-top: 200px;
}

/* 発明エリア セカンド */

.section-figure-2 >.figcaption-saboption{
   margin-left: 8%;
}

.section-figure-2{
    width: 90%;
    max-width: 1440px;
    margin: 0 auto;
    text-align: center;
    padding-bottom: 60px;
}

.section-figure-title-2 {
    text-align: center;
    margin:0 auto;
    margin-top: 60px;
    margin-bottom: 60px;
}


.figure-first-2 {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
}

.container-img-2 {

}
.image-2 {
    width: 650px;
    height: 400px;
    object-fit: cover;
    max-width: 100%;
    margin-left: 40px;
    border-radius: 30px;
}

.image-second {
    width: 90%;
    object-fit: cover;
    max-width: 100%;  
    border-radius: 30px;
}


.figcaption-title-p-2 {
    width: 50%;
    margin-top: 10px;
    text-align: center;
    margin-right: auto;
    margin-left: auto;
}



.figure-title-2 {
    color: #4b0949;
    width: 500px;
    margin-left: 3.5em;
    margin-bottom: 25px;
    line-height: 1.8;
	text-indent:-10em;
    letter-spacing: 7px;
    font-size: 32px;
}

.figcaption-title-p-2> h1 > .span-h1-2 {
    color: #c79521;
}

.figcaption-title-p-2 > h1 > .span-h1 {
    font-size: 45px;
    color: #b70bb1;
}




.figure-text-2 {
    padding: 0;
    margin: 0;
    padding-right: 240px;
    width: 860px;
    display:inline-block;
    letter-spacing: 3px;
    line-height: 2.2;
    font-size: 1.22vw;
}

.figure-padding {
    padding-bottom: 100px;
}


.back-img {
    background:  url(../asset/img/sky-img3.png) no-repeat left 50px top 0 / 52%
}

.back-sippou-img {
    background: url(../asset/img/sippou.png)no-repeat right 60px top 100px / 1200px;
  
}

.back-sippou-img2 {
    background: url(../asset/img/sippou.png)no-repeat right 60px top 100px / 1200px;
   
}


/* サンプルタイトル */
.section-figure-title {
    font-size: 30px;
    letter-spacing: 2.5px;
}



.sample {
    align-items: center;
    height: 75vh;
    width: 90%;
    margin: 0 auto;
    background: -moz-linear-gradient(top left, #ffcfcf, #ffffff); 
    background: -webkit-linear-gradient(top left, #fff1f1, #ffffff); 
    background: linear-gradient(to bottom right, #ffeded, #ffffff); 
    border-radius: 50px;
    padding-bottom: 70px;
    margin-top: 80px;
    margin-bottom: 10px;
    
}

.sample-continar {
    margin: 0 auto;
    display: flex;

}

.sample2 {
 margin-right: 5%;
 margin-top: 80px;
 margin-left: 10%;
 width: 45%;

}

.sample-h1 {
    
    padding-bottom: 15px;
    border-bottom:solid
    #666666 2px ;
    font-size: 30px;
    letter-spacing: 4px;
    text-align: center;
    font-weight: 600;
    
}

.sample2 > h2 {
    
    padding-top: 40px;
    text-align: center;
}

.sample-h2 {

    font-size: 21px;
    letter-spacing: 2px;
    line-height: 1.8;
    font-weight: 500;
    
}

.sample2 > p {
    width: 600px;
    padding-top: 40px;
    align-items: center;
    text-align: center;
}

.sample-p {
    
    font-size: 18px;
    letter-spacing: 3px;
    line-height: 1.8;
}

.sample-div-img {
    margin-right: 5%;
}

.sample-img-src {
    height:43vh;
    width:100%;
    margin-top: 130px;
    border-radius: 30px;
    object-fit: cover;
}


    .button-sample {
        width: 190px;
        height: 50px;
        align-items: center;
        text-align: center;
        background-color: rgb(255, 255, 255);
        border: 1px solid rgb(255, 156, 156);
        color: rgb(255, 155, 155);
        line-height: 50px;
      }
      .button-sample:hover {
        background-color: #fff;
        border-color: #59b1eb;
        color: #59b1eb;
      }

      .sample2 > button{

        display: block;
        margin-left: auto;
        margin-right: auto;
        
    }

    .button-sample {
        
        margin-top: 30px;
        font-size: 15px;
        letter-spacing: 3px;
        margin-left: 33%;
    }
    



    /* 
    セクションブログエリア
    */

    .section-blog {

    height: 140vh;
    width: 100%;
    margin: 0 auto;
    background: -moz-linear-gradient(top left, #cffff9, #feeaff); 
    background: -webkit-linear-gradient(top left, #cffff9, #fef0ff); 
    background: linear-gradient(to bottom right, #cffff9, #feefff); 
    display: flex;
    padding-bottom: 70px;
    margin-top: 120px;
    z-index: 2;
    
    }

    .back-img-media {
        background: url(../asset/img/story-sakura.png) no-repeat left 300px top 300px / 1400px;
        z-index: 3;
    }


    .media-containar {
      width: 100%;
      background: url(../asset/img/media-img.png)no-repeat right 60px top 250px / 90%;

}



    

    .media {
        
        font-size: 120px;
        color: white;
        letter-spacing: 25px;
        margin: 0 auto;


        
    }

    .media-containar > .media {
    display: block;
    margin: 0 auto;
    margin-top: 70px;
    text-align: center; 
    
}



.media-2 {
    position: relative;
    font-size: 40px;
    color: rgb(147, 147, 147);
    letter-spacing: 6px;
    margin-top: 0;
    
}

.media-containar > .media-2 {
    position: relative;
display: block;
margin: 0 auto;
text-align: center;
z-index: 2;
}






    /* 
    ニュースエリア
     */

     .news-section {
        width: 100%;
        max-width: 100%;
        height: 60vh;
        margin-bottom: 50px;
        background-image: url(../asset/img/back_news.png);
        background-size: cover;
        position: relative;
        
     }

     .news-contina {
        
        background-color: white;
        width: 65%;
        height: 53vh;
        border-radius: 40px;
        opacity: 0.7;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        
     } 
    


     .NEWS {

        color: rgb(31, 30, 30);
        display: block;
        margin: 0 auto;
        font-size: 45px;
        letter-spacing: 15px;
        
     }
     .news-contina > .NEWS {
        display: block;
        margin: 0 auto;
        text-align: center;
        padding-top: 40px;
     }

     .news-ul {
        margin-top: 30px;
     }
     .news-ul > li {
            
            font-size: 17px;
            text-align: center;
            margin: 0 auto;
            margin-bottom: 25px;
            width: 50%;
            text-align: center;   
    }

    .news-li > a {
        transition: 0.2s ;
        color: #601c1c;
    }

    .news-li > a span {
        transition: 0.2s ;
        font-size: 24px;
        letter-spacing: 2.5px;
        color: #fe2020;   
    }

    .news-ul > li {
        display: block;
        border-bottom: 1px solid rgb(150, 150, 150);
        padding-bottom: 6px;
    }


    .news-li :hover {
        opacity: 1;
        color: rgb(250, 152, 152);
        
        }
    

    /* 　　
    オプションスペース　 
    　*/

    .option {

        margin: 0;
        padding: 0;
        text-align: center;
        width: 80%;
        margin: 0 auto;
        margin-top: 20px;
        margin-bottom: 50px;
        border-top:solid
        #ffa6a6 2px;
        padding-top: 50px;
        border-bottom:solid
        #ffa6a6 2px;
        padding-bottom: 20px;
        
    }
    .option-ul {
        display: flex;
    
    }
    .option-img {
        width: 80%;
        border-radius: 30px;
        
    }

    .option > img {

    }

    .option-li {
        list-style: none;
        
    }

    .option-li > h1 {
        display: block;
       font-size: 1.17vw;
       letter-spacing: 3px;
       margin: 15px 0 0 0;
       text-align: center;
       width: 70.6%;
       margin-left: 15%;
       color: #3f3f3f;
       line-height: 1.25;
    }

    .option-li > p {
       display: block;
       font-size: 1vw;
       letter-spacing: 2px;
       margin: 10px 0 0 0;
       text-align: center;
       width: 70.6%;
       margin-left: 15%;
       color: #393939;
       line-height: 1.25;
       display: none;

    }

    .option-li> h1 {

        display: block;
        /* border-bottom: 0.8px solid rgb(7, 7, 7); */
        padding-bottom: 10px;
       
    }

    .grid-col-3 > .option-li {
        width: 33.3%;
        
       
    }

    /* 
    SNSエリア
     */

     .sns {
        width: 100%;
        height: 200px;
        margin-top: 100px;
         
     }

     .sns-booth {
        background: -moz-linear-gradient(top left, #fef1f7, #feeaff); 
        background: -webkit-linear-gradient(top left, #fdf1fd, #e3f5fb); 
        background: linear-gradient(to bottom right, #fceeee, #eff9ff); 
        width: 100%;
        height: 200px;        
     }

     .sns-booth > .sns-title {
        position: absolute;
        margin-left: 35%;
     }

     .sns-title {
        color: #ffffff;
        padding-top: 10px;
        font-size: 180px;
        letter-spacing: 0.6em;
        z-index: 3;
     }

     .sns-ul {
        display: flex;
        padding-top: 70px;
       
     }

     .sns-booth > .sns-ul {
        width: 40%;
        margin-left: 34%;
        margin-right: 67%;


     }

     .sns-logo {
        margin:  0 30px;
        z-index: 5;
     }

     .grid-col-3 > .sns-logo {
        width: 33.3%;
        
    }


    /* 
    フッターエリア
     */



    .footer-first {
        width: 100%;
        height: 650px;
        background-color: #2a2a2a;
        display: flex;

        font-size: 18px;
        color: #ffffff;
        letter-spacing: 3px;
        line-height: 1.5;
        
    }


    .footer-adress {
        width: 30%;
        margin: 0 ;
        margin-left: 8%;
        align-items: center;
        padding-top: 130px;
    }

    .footer-logo {
        /* margin-left: ; */
        margin-bottom: 90px;
        margin-top: 150px;
        
    }    



   .footer-gnav {
    
    list-style: none;
    margin-top: 150px;
    margin-left: 20px;
    
   }

   .footer-gnav-ul {
    margin-bottom: 80px;
   }

   .footer-nav {
    font-size: 23px;
    margin: 25px 0;
    letter-spacing: 5px;
   }

   .footer-li-nav {
    margin: 28px 0;
   }

   .footer-li-nav :hover {
    color: rgb(105, 105, 105);
    }


    footer {
        width: 100%;
        background-color: #2a2a2a;
       
    }

    .footer-out {
        width: 100%; 
        height: 40px;
        color:  #ffffff;
        margin: auto;
        padding-top: 10px;
        display: block;
        align-items: center;
        text-align: center;
        font-size: 14px;
        border-top:solid
            #545454 1.5px
    }

    /* 
    TOP矢印 
    */

    .scroll {
        color: rgb(255, 255, 255);
        position: fixed;
        bottom: 100px;
        right: 200px;
        text-decoration: none;
        display: block;
        width: 100px;
        padding: 10px 20px;
        text-align: right;
        transform: rotate(90deg);
        transform-origin: bottom right;
        font-size: 24px;
        
      }
      
      .arrow1 {
      width: 60px;
      height: 1px;
      background: rgb(255, 255, 255);
      position: absolute;
      top: 50%;
      right: 100px;
      }
      
      .arrow2 {
      width: 1px;
      height: 24px;
      background: rgb(255, 255, 255);
      position: absolute;
      top: calc(50% + 1px);
      right: 160px;
      transform: rotate(-130deg);
      transform-origin: top left;
      }



      /* 
      住所/電話番号
       */

       .adress-name {
        margin-top: 230px;
        margin-left: 200px;
        font-size: 15px;
       }


      .adress-h1  {
        
        color: #ffffff;
        letter-spacing: 3px;
        line-height: 2;
        
        
    }

    .adress-adress {
        
        color: #ffffff;
        letter-spacing: 3px;
        line-height: 1.5;
        margin-right: 20px;
    }

    .adress-p {
       
        color: #ffffff;
        letter-spacing: 3px;
        line-height: 1.5;
        margin-top: 30px;
        position: sticky;
    }
      /* 
      フッターロゴ
    　*/
      .instagram {
        margin-top: 75px;
        margin-left: 60px;
        margin-right: 80px;
        display: inline-block;
        
      }

     .youtube {
        margin-left: 100px;
        display: inline-block;
      }

    
      .a-logo {
        display: inline-block;
        width: 60px;
      }

      .a-youtube{
        width: 50px;
        height: 50px;
      }


      /* 
      プライバシー 
      */
      .privacy {
        background-color: #2a2a2a;
        height: 50px;
      }
      .privacy-ul {
        display: flex;
        
       
      }
      .privacy-li {
        color: white;
        margin: 0 20px;
        width: 180px;
        
      }

      .privacy-li :hover {
        color: rgb(105, 105, 105);
        }

      .privacy  > .privacy-ul {
        margin: 0 auto;
        text-align: center;
        margin: 0 35%;
        padding-top: 15px;
      }

      .privacy-li-line{
        color: #a8a8a8;
      }