@import url('https://fonts.googleapis.com/css2?family=Kanit:wght@600&display=swap');

body{
    color:#444;
	font-family: 'Noto Sans JP', sans-serif,游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro','Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ ゴシック',’MS PGothic’, Arial, Helvetica, Geneva, Swiss, SunSans-Regular, sans-serif;
	-webkit-text-size-adjust: 100%;
/*    display: flex;
	flex-flow: column;
	min-height: 100vh;*/
    margin: 0;
    padding:0;
    background-color: #fff;
  }
/*
ul li {
	list-style: none;
}
*/
a:link{
	color:#e72d29;
	text-decoration:none;
}

a:visited{
	color:#b92622;
	text-decoration:none;
}

a:hover{
	color:#ea8583;
	text-decoration:none;
}

#details a:link{
	color:#fff;
	text-decoration:none;
}

#details a:visited{
	color:#fff;
	text-decoration:none;
}

#details a:hover{
	color:#fff;
	text-decoration:none;
}
.hidden{
	display:none;
	font-size:0px;
	text-indent:-9999px;
}

/* clickable map for SP */
.object-fitImg{
	width:100%;
	height:100%;
	object-fit: cover;
	font-family: 'object-fit: cover;'
}

/*f ade */
.fadeIn {
    opacity: 0;
    transition: 1.5s;
}
.fadeIn.is-show {
    opacity: 1;
}

 .clear{
	clear:both;
}

/* loader */
#loader_wrap {
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    top: 0;
    background: #fff;
    z-index: 50;
}


/* loading anime */
.loader {
    width: 400px;
    height: 300px;
    background: url("../img/preloader.gif") no-repeat;
    opacity: 0;
    animation: blink 1.5s infinite linear;
    position: relative;
}
@keyframes blink {
    50% {
        opacity: 0.5;
    }
}

/* end of loading */
.loaded {
    opacity: 0;
    visibility: hidden;
}
/*.warp{
    width:100%;
    height:auto;

}*/

#cs{
    height:100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}
#cs .logo{
    width:41.5%;
    background: url("../img/logo.svg")no-repeat;
    background-position: center center;
    background-size: contain;
    padding-top:30%;
    margin-top: -15%
}
#cs .text{
    color:#000;
    font-size:3.5vw;
    line-height: 3.5vw;
    text-align: center;
}

/* for PC */
@media screen and (min-width:641px )
{

/*トップ*/
.pc { display: block !important; }
.sp { display: none !important; }

    .img{
        max-width: 100%;
        border: 0;
        margin:0;
        padding:0;
    }

    main{
        width:100%; 
        padding:0;
        margin:0 auto;
    }
        
@media screen and (min-width:641px) and ( max-width:1920px) {    
    #top{
        margin:0 auto; 
        max-width:1920px;
        text-align: center;
        height:50vw;
/*        border:1px solid #000;
        box-sizing: border-box;  */   
    }
 
    #top .copy-t{
        width:70%;
        height:calc(70vw / 2); 
        margin:0; 
        text-align: center;
        background: #e72d29;
        color:#fff;
        position: absolute;
    }
    #top .text-a{
        padding: 0;
        margin: 0;
        animation: text-anime 15s infinite  ease-out;
    }
    @keyframes text-anime{

      0%{
          opacity: 0;
        }
      30%{ 
          opacity: 1;
         }
       60%{
          opacity: 1;
        }
       100%{
          opacity: 0;
        }
    }   
    #top .copy-t h2{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3vw;
        line-height: 3.5vw;
        margin: 7% 0 0 0;
        padding:0;
    }
    
    #top .copy-t h3{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size:2.5vw;
        line-height: 2.5vw;
        margin:0;
        padding:0;
    }
    
    #top .logo{
        background: url("../img/logo.svg")no-repeat;
        background-position: center center;
        background-size: contain;
        padding-top:15%;
        right:4.5%;
        width:20%;
        position: absolute;
    }
    
    #top .slide-img{
        width:70%;
        height:calc(70vw / 2); 
        margin:0;
        text-align: center;
        position: absolute;
        margin-top: 15vw;
        right:0;
    }
    #top .slide-img .slider{
        width:100%;
        margin: 0 0;
        padding:0;
        background: #fff;
        position: absolute;
    }
    #top .slide-img .slider img{
        height: auto;
        width:100%;
        margin:0;
    }
    
    #top .slide-mention{
        width:35%;
        height:5vw; 
        margin:0; 
        text-align: center;
        background: #000;
        position: absolute;
        margin-top: 40vw;
        left:2vw;
    }
    #top .slide-mention .slider{
        width:100%;
        margin: 0 ;
        padding:0;
        position: absolute;
        text-align: center;
    }
    #top .slide-mention .slider li{
        font-style: normal;
        font-size:1.75vw;
        color:#fff;
        margin-top: 1.25vw;
    }
    #top .slide-mention .slider .cap{
        font-style: normal;
        font-size:1vw;
        color:#fff;
    }

    #concept{
        margin:2vw auto 0 auto; 
        max-width:1920px;
        text-align: center;
   /*   border:1px solid #f09;
        box-sizing: border-box; */   
    }
    #concept .r-box{
        width:20vw;
        height:20vw;
        background: #e72d29;
        margin:0 2vw 0 2vw;
        position: relative;
        float:left;
    }
    #concept .r-box .number{
        background: url("../img/n1.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:18vw;
        width:18vw;
        margin:1vw;
        position: absolute;
    }

    #concept .sub-copy-t{
        height:20vw;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3vw;
        line-height: 5vw;
        text-align: left;
        float:left;
        display: flex;
        align-items: center;
    }
    #concept .read-t{
        width:65vw;
        height:auto;
        font-size:1.75vw;
        line-height: 3.75vw;
        text-align: left;
        float:left;
        margin:1.5vw 0 0 2vw;

    }
    #concept .pic{
        background: url("../img/top_concept_pic.jpg")no-repeat;
        background-position: center center;
        background-size:contain;
        float:left;
        padding-top:30vw;
        width:30vw;
        margin:1.5vw 1vw 0 1vw;
    } 
    
    #business{
        margin:5vw auto 0 auto; 
        max-width:1920px;
        text-align: center;
/*      border:1px solid #000;
        box-sizing: border-box;  */   
    }
    #business .r-box{
        width:20vw;
        height:20vw;
        background: #e72d29;
        margin:0 2vw 0 2vw;
        position: relative;
        float:left;
    }
    #business .r-box .number{
        background: url("../img/n2.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:18vw;
        width:18vw;
        margin:1vw;
        position: absolute;
    }
    #business .sub-copy-t{
        height:20vw;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3vw;
        line-height: 5vw;
        text-align: left;
        float:left;
        display: flex;
        align-items: center;
    }

/*ここから　pt2*/ 
    #business .link_area{
        height:33.275vw;
        width:95.2%;
        margin:1.5vw 2vw 0 2vw;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction: row;
        justify-content: space-between;
    }
    #business .c-left{
        height:33.275vw;
        width:70%;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
    }    
     #business .c-right{
        height:33.275vw;
        width:27.5%;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
        margin:0;
        padding:0;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    } 
     #business .c-left .bg-pic1{
        background: url("../img/top_business_pic.jpg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:33.275vw;
        width:100%;
         transition: transform .6s ease;
    }
     #business .c-left:hover .bg-pic1 {
        transform: scale(1.1);
         
    }
    
    #business .c-left .text-area {
        background: rgba(0,0,0,0.5);
        height:10vw;
        width:100%;
        position: absolute;
        top:35%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
    }
   
    #business .c-left .text-area .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3.6vw;
        line-height: 5vw;
        text-align: center;
        color:#fff;
        margin-left: 5%;
        width:95%
    }
    #business .c-left .text-area .arrow{
        color:#fff;
        width:5%;    
        padding:0 2vw 0 0;
        
    }      
    #business .c-left .text-area .arrow::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:3.8vw;
    }
    #business .c-left:hover .text-area .arrow{
        padding:0 1vw 0 1vw;
    }
    #business .c-left:hover .text-area {
        background: rgba(0,0,0,0.9);
    }
    #business .c-right .link-s{
        width:100%;
        height:9.25vw;
        background: #e72d29;
        color:#fff;
        transition-duration: 0.3s;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
   }
    
    #business .c-right .link-s .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:1.75vw;
        line-height: 2vw;
        text-align: center;
        color:#fff;
        margin-left: 10%;
        width:90%;
    }
    
    #business .c-right .link-s .text-s{
        font-weight: 400;
        font-size:1.3vw;
    }
    
    #business .c-right .link-s .arrow{
        color:#fff;
        width:10%;    
        padding:0 1vw 0 0;
    }      
    #business .c-right .link-s .arrow::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:2vw;
    }
   #business .c-right .link-s:hover{
        background: #000;
   }
   #business .c-right .link-s .text:hover{
        transform: scale(1.1);
   }
   
   #business .c-right .link-s:hover .arrow{
        padding:0 0.5vw 0 0.5vw;
    } 
   
   #portfolio {
        margin:4vw auto 0 auto; 
        max-width:1920px;
        text-align: center;
/*      border:1px solid #000;
        box-sizing: border-box;  */   
    }
    #portfolio .r-box{
        width:20vw;
        height:20vw;
        background: #e72d29;
        margin:0 2vw 0 2vw;
        position: relative;
        float:left;
    }
    #portfolio .r-box .number{
        background: url("../img/n3.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:18vw;
        width:18vw;
        margin:1vw;
        position: absolute;
    }
    #portfolio .sub-copy-t{
        height:20vw;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3vw;
        line-height: 5vw;
        text-align: left;
        float:left;
        display: flex;
        align-items: center;
    }
    #portfolio .ex-area{
        height:25vw;
        width:95.2%;
        margin:1.5vw 2vw 0 2vw;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction: row;
        justify-content: space-between;
    }
    #portfolio .c-left{
        height:25vw;
        width:40%;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
    }
    #portfolio .c-left img{
        width: 100%;
    }
    #portfolio .c-right{
        height:25vw;
        width:58%;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
        margin:0;
        padding:0;
    }
    #portfolio .c-right .detail{
        width:100%;
        padding: 0;
        margin: 0;
    }
    #portfolio .c-right .link{
        padding: 0;
        margin: 2vw 0 0 0;
        float: right;
    }
    #portfolio .c-right .link .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:1.5vw;
        line-height: 2.25vw;
        color:#e72d29;
        border-bottom:0.4vw solid #e72d29;
    }
    #portfolio .c-right .link .text::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:1.2vw;
    }
    
    #portfolio .c-right .link:hover .text{
        color:#000;
        border-bottom:0.4vw solid #000;
    }
    #portfolio .c-right .p-index{
        width:40%;
        height:3vw;
        background:#000;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:1.5vw;
        text-align: center;
        color:#fff;
        padding:0;
        margin:0;
    }
    #portfolio .c-right .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:2.25vw;
        text-align: left;
        color:#000;
        padding:0;
        margin:1vw 0;
    }
    #portfolio .c-right .detail-text{
        font-weight: 200;
        font-style: normal;
        font-size:1.5vw;
        line-height: 2vw;
        text-align: left;
        color:#666;
        padding:0;
        margin:0;
    }
    #info {
        margin:4vw auto 0 auto; 
        max-width:1920px;
        text-align: center;
/*      border:1px solid #000;
        box-sizing: border-box;  */   
    }
    #info .r-box{
        width:20vw;
        height:20vw;
        background: #e72d29;
        margin:0 2vw 0 2vw;
        position: relative;
        float:left;
    }
    #info .r-box .number{
        background: url("../img/n4.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:18vw;
        width:18vw;
        margin:1vw;
        position: absolute;
    }
    #info .sub-copy-t{
        height:20vw;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3vw;
        line-height: 5vw;
        text-align: left;
        float:left;
        display: flex;
        align-items: center;
    }
    #info .detail{
        max-width:95.2%;
        margin:1.5vw 2vw 0 2vw;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction: row;
        justify-content: flex-start;
    }
    #info .detail .date{
        font-size:1.5vw;
        color:#444;
        padding:0;
        margin:0;
        text-align: left;
    }
    #info .detail .date::before{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:1.2vw;
        color:#fff;
        background: #000;
        padding:0.25vw;
        margin-right: 0.5vw;
    }
    #info .detail .text{
        font-size:1.5vw;
        color:#000;
        padding:0;
        margin:0 0 0 1vw;
        text-align: left;
    }
    #info .detail:hover .text{
        opacity: 0.5;
    }
    #details{
        margin:4vw auto 0 auto; 
        width:100%;
        background: #000;
        text-align: center;
        padding-bottom: 2vw;
    }
    #details .d-area{
        margin:0 auto;
        width:100%;
        display: flex;
        flex-wrap: wrap;
    }

    #details .wrap{
        margin:2vw 6vw 0 2vw; 
        padding:1vw;
        color:#fff;
        text-align: left;
        border:0.1vw solid #fff;
        box-sizing: border-box; 
    }
    #details .menu-area{
        display: flex;
        flex-direction:row;
    }
    #details .menu{
        margin:2vw 0 0 0;
        width:18vw;
        padding:0;
        text-align: left;
        list-style: none;
        font-size:1.5vw;
        font-weight: 200;
        color:#fff;
    }
    #details .menu li{
        margin-bottom: 1.5vw;
        height:2vw;
    }
    #details .menu li .text{
        position: relative;
    }
    #details .menu li .text::after{
        content: '';
        position: absolute;
        left: 0;
        bottom: -0.4vw;
        width: 0%;
        height: 0.1vw;
        background: #e72d29;
        transition: 0.2s;
    }
    #details .menu li:hover .text{
        font-size:1.65vw;
    }
    #details .menu li:hover .text:after{
        width: 100%;
    }
    #details h3{
        font-size:1.75vw;
        font-weight: 900;
        margin:0;
        paddig:0;
    }
    #details .zip{
        font-size:1.25vw;
        font-weight: 200;
        margin:1vw 0 0 0;
        paddig:0;
    }

    #details .address{
        font-size:1.5vw;
        font-weight: 200;
        margin:0;
        paddig:0;
    }
    #details .tel{
        font-size:1.5vw;
        font-weight: 200;
        margin:0.5vw 0 0 0;
        paddig:0;
    }
    #details .tel::before{
        content: '\e0b0';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:1.5vw;
        color:#fff;
        margin: 0 0.5vw 0 0;
        position:relative;
        top:0.25vw;
    }
    #details .fax{
        font-size:1.5vw;
        font-weight: 200;
        margin:0;
        paddig:0;
    }
    #details .fax::before{
        content: '\ead8';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:1.5vw;
        line-height: 1.5vw;
        color:#fff;
        margin: 0 0.5vw 0 0;
        position:relative;
        top:0.25vw;
    }
    #details .inquiry{
        background:#e72d29;
        height:3vw;
        padding:1vw;
        margin: 1vw 0 0 0;
        font-size:1.75vw;
        font-weight: bold;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: 0.5s;
    }

    #details .inquiry:hover {
        background: #000;
        font-size:2vw;
    }
    #details .inquiry::before{
        content: '\e158';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:3vw;
        color:#fff;
        margin: -0.1vw 0.5vw 0 0;
        position:relative;
        top:0.2vw;
    }
    #details .inquiry::after{
        content: '\e5e1\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:1.5vw;
        letter-spacing: -0.5vw;
        color:#fff;
        margin: 0 0 0 0.5vw;
        position:relative;
        top:0.2vw;
    }
    #details .cap1{
        font-size:1.25vw;
        font-weight: 200;
        margin:0 0 0 0.5vw;
        paddig:0;
    }
    #details .copyright{
        font-size:1.25vw;
        font-weight: 200;
        margin-bottom:4vw;
        margin-right:2vw;
        color:#fff;
        text-align: right;
    }

    /*詳細ページ PC共通     
    #nav-d {
        max-width:1920px; 
        list-style: none;
        display: flex;
        justify-content: space-between;
        padding-inline-start: 0px;
        border-bottom:0.5vw solid #000;
        margin: 5px auto 0 auto;
    }
    #nav-d li {
        text-align: center;
        margin: 0.5vw 2vw;
        line-height: 20px;
    }
    #nav-d li a {
        text-decoration: none;
        font-size:min(1.25vw,24px);
        color: #000;
        font-weight: bold;
    }
    #nav-d li a:hover {
        text-decoration: none;
        font-size:min(1.25vw,24px);
        color: #000;
        font-weight: bold;
        animation: text-anime 10s linear infinite;
    }
    @keyframes text-anime {
        0% {
        opacity: 0.1;
        }
        10% {
        opacity: 1;
        }
        90% {
        opacity: 1;
        }
    }

    #nav-d .inquiry {
        border:2px solid #000;
        padding: 0.1vw 1vw 0 1vw;
        margin-top:3.6vw;
        line-height: 2vw;
    }
    #nav-d .adjust {
        padding: 0;
        margin-top:4vw;
    }
    #nav-d .icon {
        margin:-6px 0 0 0;
    }
    #nav-d .logo {
        background: url("../img/logo.svg")no-repeat;
        background-position: center center;
        background-size: contain;
        padding-top:5vw;
        margin-left:2vw;
        margin-top:1vw;
        width:10vw;
    }*/
     /*詳細ページ PC共通*/     
    #nav-d {
        max-width:1920px; 
        list-style: none;
        display: flex;
        justify-content: space-between;
        padding-inline-start: 0px;
        border-bottom:0.5vw solid #000;
        margin: 0 auto;
    }
    #nav-d li {
        text-align: center;
        margin: 0.5vw 2vw;

    }
    #nav-d li a {
        text-decoration: none;
        font-size:min(1.25vw,24px);
        color: #000;
        font-weight: bold;
    }
    #nav-d li a:hover {
        text-decoration: none;
        font-size:min(1.25vw,24px);
        color: #000;
        font-weight: bold;
        animation: text-anime 10s linear infinite;
    }
    @keyframes text-anime {
        0% {
        opacity: 0.1;
        }
        10% {
        opacity: 1;
        }
        90% {
        opacity: 1;
        }
    }

    #nav-d .inquiry {
        border:2px solid #000;
        padding: 0.1vw 1vw 0 1vw;
        margin-top:3.6vw;
        line-height: 2vw;
    }
    #nav-d .adjust {
        padding: 0;
        margin-top:4vw;
    }
    #nav-d .icon {
        margin:-6px 0 0 0;
    }
    #nav-d .logo {
        background: url("../img/logo.svg")no-repeat;
        background-position: center center;
        background-size: contain;
        padding-top:5vw;
        margin-left:2vw;
        margin-top:1vw;
        width:10vw;
    }   
}
@media screen and (min-width:1921px)  {  
    #top{
        margin:0 auto; 
        width:1920px;
        height:1008px;
        text-align: center;
/*        border:1px solid #000;
        box-sizing: border-box;  */   
    }
    #top .copy-t{
        width:1344px;
        height:672px; 
        margin:0; 
        text-align: center;
        background: #e72d29;
        color:#fff;
        position: absolute;
    }
   #top .text-a{
        padding: 0;
        margin: 0;
        animation: text-anime 15s infinite  ease-out;
    }
    @keyframes text-anime{

      0%{
          opacity: 0;
        }
      30%{ 
          opacity: 1;
         }
       60%{
          opacity: 1;
        }
       100%{
          opacity: 0;
        }
    }      
    #top .copy-t h2{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:62px;
        line-height: 70px;
        margin: 100px 0 0 0;
        padding:0;
    }
    
     #top .copy-t h3{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size:48px;
        line-height: 48px;
        margin:0;
        padding:0;
    }
    
    #top .logo{
        background: url("../img/logo.svg")no-repeat;
        background-position: center center;
        background-size: contain;
        padding-top:288px;
        margin-left:1449px;
        margin-top:20px;
        width:384px;
        position: absolute;
    }
    
    #top .slide-img{
        width:1344px;
        height:672px; 
        margin:0; 
        position: absolute;
        margin: 336px 0 0 576px;
        
    }
    #top .slide-img .slider{
        width:1344px;
        margin: 0 0;
        padding:0;
        position: absolute;
    }
    #top .slide-img .slider img{
        height: auto;
        width:1344px;
        margin:0;
    }
    #top .slide-mention{
        width:672px;
        height:96px; 
        margin:0; 
        text-align: center;
        background: #000;
        position: absolute;
        margin: 780px 0 0 38px;
    }
    #top .slide-mention .slider{
        width:100%;
        margin: 0 ;
        padding:0;
        position: absolute;
        text-align: center;
    }
    #top .slide-mention .slider li{
        font-style: normal;
        font-size:32px;
        color:#fff;
        margin-top: 22px;
    }
    #top .slide-mention .slider .cap{
        font-style: normal;
        font-size:20px;
        color:#fff;
    }
    
    #concept{
        margin:40px auto 0 auto; 
        width:1920px;
        text-align: center;
/*        border:1px solid #000;
        box-sizing: border-box;  */   
    }
    #concept .sub-index{
        width:1920px;
        margin-top:40px; 
    }
    #concept .r-box{
        width:396px;
        height:396px;
        background: #e72d29;
        margin:0 40px;
        position: relative;
        float:left;
    }
    #concept .r-box .number{
        background: url("../img/n1.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:345px;
        width:345px;
        margin:20px;
        position: absolute;
    }
    #concept .sub-copy-t{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:60px;
        line-height: 90px;
        text-align: left;
        margin:63px 0;
        float:left;
    }
    
    #concept .read-t{
        width:1248px;
        height:auto;
        font-size:34px;
        line-height: 72px;
        text-align: left;
        float:left;
        margin:40px 0 0 40px;
    }
    #concept .pic{
        background: url("../img/top_concept_pic.jpg")no-repeat;
        background-position: center center;
        background-size:contain;
        float:left;
        padding-top:576px;
        width:576px;
        margin:30px 20px 0 20px;
    } 
 
    #business{
        margin:60px auto 0 auto; 
        width:1920px;
        text-align: center;
/*        border:1px solid #000;
        box-sizing: border-box;  */   
   }

    #business .r-box{
        width:396px;
        height:396px;
        background: #e72d29;
        margin:0 40px;
        position: relative;
        float:left;
    }
    #business .r-box .number{
        background: url("../img/n2.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:345px;
        width:345px;
        margin:20px;
        position: absolute;
    }
    #business .sub-copy-t{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:60px;
        line-height: 90px;
        text-align: left;
        margin:63px 0;
        float:left;
    }

/*ここから　pt2*/ 
    #business .link_area{
        height:640px;
        width:1880px;
        margin:30px 40px 0 40px;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction: row;
        justify-content: space-between;
    }
    #business .c-left{
        height:640px;
        width:1280px;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
    }    
     #business .c-right{
        height:640px;
        width:580px;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
        margin:0;
        padding:0;
        display: flex;
        flex-direction: column;
        justify-content: space-between;

    } 
     #business .c-left .bg-pic1{
        background: url("../img/top_business_pic.jpg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:640px;
        width:100%;
        transition: transform .6s ease;
    }
     #business .c-left:hover .bg-pic1 {
        transform: scale(1.1);
         
    }
    
    #business .c-left .text-area {
        background: rgba(0,0,0,0.5);
        height:200px;
        width:100%;
        position: absolute;
        top:34.5%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
    }
   
    #business .c-left .text-area .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:67.5px;
        text-align: center;
        color:#fff;
        margin-left: 5%;
        width:95%
    }
    #business .c-left .text-area .arrow{
        color:#fff;
        width:5%;    
        padding:0 40px 0 0;
        
    }      
    #business .c-left .text-area .arrow::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:73px;
    }
    #business .c-left:hover .text-area .arrow{
        padding:0 20px;
    }
    #business .c-left:hover .text-area {
        background: rgba(0,0,0,0.9);
    }
    #business .c-right .link-s{
        width:100%;
        height:200px;
        background: #e72d29;
        color:#fff;
        transition-duration: 0.3s;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
   }
    
    #business .c-right .link-s .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:34px;
        line-height: 40px;
        text-align: center;
        color:#fff;
        margin-left: 10%;
        width:90%;
    }
    
    #business .c-right .link-s .text-s{
        font-weight: 400;
        font-size:25px;
    }
    
    #business .c-right .link-s .arrow{
        color:#fff;
        width:10%;    
        padding:0 20px 0 0;
    }      
    #business .c-right .link-s .arrow::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:40px;
    }
   #business .c-right .link-s:hover{
        background: #000;
   }
   #business .c-right .link-s .text:hover{
        transform: scale(1.1);
   }
   
   #business .c-right .link-s:hover .arrow{
        padding:0 10px;
    }

    #portfolio{
        margin:60px auto 0 auto;; 
        width:1920px;
        text-align: center;
        
/*      border:1px solid #000;
        box-sizing: border-box;  */   
   }
    #portfolio .r-box{
        width:396px;
        height:396px;
        background: #e72d29;
        margin:0 40px;
        position: relative;
        float:left;
    }
    #portfolio .r-box .number{
        background: url("../img/n3.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:345px;
        width:345px;
        margin:20px;
        position: absolute;
    }
    #portfolio .sub-copy-t{
        height:396px;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:60px;
        line-height: 90px;
        text-align: left;
        margin:90px 0 -90px 0;
        float:left;
    }
     #portfolio .ex-area{
        height:480px;
        width:1880px;
        margin:40px 40px 0 40px;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction: row;
        justify-content: space-between;
    }
    #portfolio .c-left{
        height:480px;
        width:720px;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
    }
    #portfolio .c-left img{
        width: 100%;
    }
    #portfolio .c-right{
        height:480px;
        width:1090px;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
        margin:0;
        padding:0;
    }
    #portfolio .c-right .detail{
        width:100%;
        padding: 0;
        margin: 0;
    }
    #portfolio .c-right .link{
        padding: 0;
        margin: 38px 0 0 0;
        float: right;
    }
    #portfolio .c-right .link .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:32px;
        line-height: 43px;
        color:#e72d29;
        border-bottom:8px solid #e72d29;
    }
    #portfolio .c-right .link .text::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:24px;
    }
    
    #portfolio .c-right .link:hover .text{
        color:#000;
        border-bottom:8px solid #000;
    }
    #portfolio .c-right .p-index{
        width:500px;
        height:58px;
        background:#000;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:29px;
        text-align: center;
        color:#fff;
        padding:0;
        margin:0;
    }
    #portfolio .c-right .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:43px;
        text-align: left;
        color:#000;
        padding:0;
        margin:21px 0;
    }
    #portfolio .c-right .detail-text{
        font-weight: 200;
        font-style: normal;
        font-size:28px;
        line-height: 38px;
        text-align: left;
        color:#666;
        padding:0;
        margin:0;
    } 
    
    #info{
        margin:60px auto 0 auto;; 
        width:1920px;
        text-align: center;
/*      border:1px solid #000;
        box-sizing: border-box;  */  
   }
    #info .r-box{
        width:396px;
        height:396px;
        background: #e72d29;
        margin:0 40px;
        position: relative;
        float:left;
        
    }
    #info .r-box .number{
        background: url("../img/n4.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:345px;
        width:345px;
        margin:20px;
        position: absolute;
    }
    #info .sub-copy-t{
        height:396px;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:60px;
        line-height: 66px;
        text-align: left;
        margin:170px 0 -170px 0;
        float:left;
    }
    #info .detail{
        width:1880px;
        margin:20px 40px 0 40px;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction: row;
        justify-content: flex-start;
    }
    #info .detail .date{
        font-size:30px;
        color:#444;
        padding:0;
        margin:0;
        text-align: left;
    }
    #info .detail .date::before{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:21px;
        color:#fff;
        background: #000;
        padding:5px;
        margin-right: 10px;
    }
    #info .detail .text{
        font-size:30px;
        color:#000;
        padding:0;
        margin:0 0 0 21px;
        text-align: left;
    }
    #info .detail:hover .text{
        opacity: 0.5;
    }    
    #details{
        margin:76px auto 0 auto; 
        width:100%;
        background: #000;
        text-align: center;
        padding-bottom: 96px;
    }
    #details .d-area{
        margin:0 auto; 
        width:1920px;
        display: flex;
        flex-wrap: wrap;
    }
    #details .wrap{
        margin:38px 116px 0 38px; 
        padding:20px;
        color:#fff;
        text-align: left;
        border:2px solid #fff;
        box-sizing: border-box; 
    }
    #details .menu-area{
        display: flex;
        flex-direction:row;
    }
    #details .menu{
        margin:38px 0 0 0;
        width:346px;
        padding:0;
        text-align: left;
        list-style: none;
        font-size:28px;
        font-weight: 200;
        color:#fff;
    }
    #details .menu li{
        margin-bottom: 28px;
        height:38px;
    }
    #details .menu li .text{
        position: relative;
    }
    #details .menu li .text::after{
        content: '';
        position: absolute;
        left: 0;
        bottom: -8px;
        width: 0%;
        height: 2px;
        background: #e72d29;
        transition: 0.2s;
    }
    #details .menu li:hover .text{
        font-size:32px;
    }
    #details .menu li:hover .text:after{
        width: 100%;
    }
    #details h3{
        font-size:34px;
        font-weight: 900;
        margin:0;
        paddig:0;
    }
    #details .zip{
        font-size:24px;
        font-weight: 200;
        margin:1vw 0 0 0;
        paddig:0;
    }

    #details .address{
        font-size:28px;
        font-weight: 200;
        margin:0;
        paddig:0;
    }
    #details .tel{
        font-size:28px;
        font-weight: 200;
        margin:0.5vw 0 0 0;
        paddig:0;
    }
    #details .tel::before{
        content: '\e0b0';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:28px;
        color:#fff;
        margin: 0 10px 0 0;
        position:relative;
        top:5px;
    }
    #details .fax{
        font-size:28px;
        font-weight: 200;
        margin:0;
        paddig:0;
    }
    #details .fax::before{
        content: '\ead8';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:28px;
        line-height:28px;
        color:#fff;
        margin: 0 10px 0 0;
        position:relative;
        top:5px;
    }
    #details .inquiry{
        background:#e72d29;
        height:58px;
        padding:20px;
        margin: 20px 0 0 0;
        font-size:34px;
        font-weight: bold;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: 0.5s;
    }

    #details .inquiry:hover {
        background: #000;
        font-size:30px;
    }
    #details .inquiry::before{
        content: '\e158';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:58px;
        color:#fff;
        margin: -2px 10px 0 0;
        position:relative;
        top:4px;
    }
    #details .inquiry::after{
        content: '\e5e1\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:28px;
        letter-spacing: -10px;
        color:#fff;
        margin: 0 0 0 10px;
        position:relative;
        top:4px;
    }
    #details .cap1{
        font-size:24px;
        font-weight: 200;
        margin:0 0 0 10px;
        paddig:0;
    }
    #details .copyright{
        max-width: 1920px;
        font-size:24px;
        font-weight: 200;
        margin:0 auto 20px auto;
        color:#fff;
        text-align: right;
    }

    /*詳細ページ PC共通*/     
    #nav-d {
        width:1920px; 
        list-style: none;
        display: flex;
        justify-content: space-between;
        padding-inline-start: 0px;
        border-bottom:10px solid #000;
        margin: 5px auto 0 auto;
    }
    #nav-d li {
        text-align: center;
        margin: 10px 40px;
        line-height: 20px;
    }
    #nav-d li a {
        text-decoration: none;
        font-size:24px;
        color: #000;
        font-weight: bold;
    }
    #nav-d li a:hover {
        text-decoration: none;
        font-size:24px;
        color: #000;
        font-weight: bold;
        animation: text-anime 10s linear infinite;
    }
    @keyframes text-anime {
        0% {
        opacity: 0.1;
        }
        10% {
        opacity: 1;
        }
        90% {
        opacity: 1;
        }
    }

    #nav-d .inquiry {
        border:2px solid #000;
        padding: 10px 20px;
        margin-top:72px;
    }
    #nav-d .adjust {
        padding: 0;
        margin-top:78px;
    }
    #nav-d .icon {
        margin:-6px 0 0 0;
    }
    #nav-d .logo {
       /* padding: 2px 0;*/
        background: url("../img/logo.svg")no-repeat;
        background-position: center center;
        background-size: contain;
        padding-top:100px;
        margin-left:40px;
        margin-top:20px;
        width:200px;
    }
    
}
    
    /*トップページ PC共通*/     
    #nav {
        max-width:1920px; 
        background: #fff;
        list-style: none;
        display: flex;
        justify-content: space-between;
        padding-inline-start: 0px;
        border-bottom:0.5vw solid #000;
        margin: 5px auto 0 auto;
    }
    #nav li {
        text-align: center;
        margin: 0.5vw 2vw;
        line-height: 2vw;
    }
    #nav li a {
        text-decoration: none;
        font-size:min(1.25vw,24px);
        color: #000;
        font-weight: bold;
    }
    #nav li a:hover {
        text-decoration: none;
        font-size:min(1.25vw,24px);
        color: #000;
        font-weight: bold;
        animation: text-anime 10s linear infinite;
    }
    @keyframes text-anime {
        0% {
        opacity: 0.1;
        }
        10% {
        opacity: 1;
        }
        90% {
        opacity: 1;
        }
    }

    #nav .inquiry {
        border:2px solid #000;
        padding: 2px 10px 2px 10px;
        line-height: 1.5vw;
    }
    #nav .adjust {
        padding: 2px 0;
    }
    #nav .icon {
        margin:-6px 0 0 0;
    }
    #navi_f {
        position: fixed;
        bottom: -130px;
        left: 0;
        width: 100%;
        background: #fff;
        transition: bottom 0.2s ease-in-out;
        box-shadow: 0 -0.75vw 1.5vw -0.5vw rgba(0,0,0,0.4);
        z-index:9999;
    }



}

/* for SP */
@media screen and (max-width:640px )
{
	.pc { display: none !important; }
	.sp { display: block !important; }
 
@media screen and (min-width:320px) and ( max-width:640px) {    
   #top{
        margin:0 auto; 
        height:110vw;
        text-align: center;
        position: relative;
        border-bottom:2vw solid #000;
    }
 
    #top .copy-t{
        width:80%;
        height:63vw;
        min-height:200px;
        text-align: center;
        background: #e72d29;
        position: absolute;
        margin: 40vw 10% 0 10%;
    }
    #top .text-a{
        padding: 0;
        margin: 0;
    }
    #top .copy-t h2{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:6.5vw;
        color:#000;
        margin: -13.75vw 0 0 2vw;
        padding:0;
    }
    
    #top .copy-t h3{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size:4vw;
        color:#fff;
        line-height: 2.5vw;
        margin:4.5vw 0 0 0;
        padding:0;
         animation: text-anime 15s infinite  ease-out;
    }
     @keyframes text-anime{

      0%{
          opacity: 0;
        }
      30%{ 
          opacity: 1;
         }
       60%{
          opacity: 1;
        }
       100%{
          opacity: 0;
        }
    }  
    
    #top .logo{
        background: url("../img/logo.svg")no-repeat;
        background-position: center center;
        background-size: contain;
        padding-top:30%;
        right:30%;
        width:40%;
        position: absolute;
    }
    
    #top .slide-img{
        width:100%;
        height:50vw; 
        margin:30 0 0 0;
        text-align: center;
        position: absolute;
        margin-top: 50vw;
    }
    #top .slide-img .slider{
        width:100%;
        margin: 0;
        padding:0;
        position: absolute;
    }
    #top .slide-img .slider img{
        height: auto;
        width:100%;
        margin:0;
    }
    
    #top .slide-mention{
        width:40%;
        height:5vw; 
        margin:0; 
        text-align: center;
        background: #000;
        position: absolute;
        margin-top: 92vw;
        left:0;
    }
    #top .slide-mention .slider{
        width:100%;
        margin: 0 ;
        padding:0;
        position: absolute;
        text-align: center;
    }
    #top .slide-mention .slider li{
        font-style: normal;
        font-size:2vw;
        color:#fff;
        margin-top: 0.75vw;
    }


    #concept{
        margin:6vw auto 0 auto; 
        min-width:320px;
        text-align: center;
   /*   border:1px solid #f09;
        box-sizing: border-box; */   
    }
    #concept .r-box{
        width:30vw;
        height:30vw;
        background: #e72d29;
        margin:0 auto;
        position: relative;

 
    }
    #concept .r-box .number{
        background: url("../img/n1.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:28vw;
        width:28vw;
        margin:1vw;
        position: absolute;
    }

    #concept .sub-copy-t{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:4.5vw;
        line-height: 8vw;
        text-align: center;
        margin:3vw auto 4vw auto;
    }
    #concept .read-t{
        width:96%;
        height:auto;
        font-size:2.9vw;
        color:#666;
        line-height: 4.5vw;
        text-align: left;
        margin:1.5vw 2% 0 2%;
    }
    #concept .pic{
        background: url("../img/top_concept_pic_sp.jpg")no-repeat;
        background-size:contain;
        padding-top:60%;
        margin:5vw 0 0 0;
    } 
    
    #business{
        margin:6vw auto 0 auto; 
        min-width:320px;
        text-align: center;
/*      border:1px solid #000;
        box-sizing: border-box;  */   
    }
    #business .r-box{
        width:30vw;
        height:30vw;
        background: #e72d29;
        margin:0 auto;
        position: relative;
    }
    #business .r-box .number{
        background: url("../img/n2.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:28vw;
        width:28vw;
        margin:1vw;
        position: absolute;
    }
    #business .sub-copy-t{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:4.5vw;
        line-height: 8vw;
        text-align: center;
        margin:3vw auto 0 auto;
    }

    #business .link_area{
        width:96%;
        margin:1vw 2vw 0 2vw;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction:column;

    }
    #business .c-left{
        height:49vw;
        width:100%;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
        margin-bottom: 1vw;
    }    
     #business .c-right{
        width:100%;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
        margin:0;
        padding:0;
        display: flex;
        flex-direction:column;
    } 
     #business .c-left .bg-pic1{
        background: url("../img/top_business_pic.jpg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:50vw;
        width:100%;
        transition: transform .6s ease;
    }
     #business .c-left:hover .bg-pic1 {
        transform: scale(1.1);
    }
    
    #business .c-left .text-area {
        background: rgba(0,0,0,0.5);
        height:10vw;
        width:100%;
        position: absolute;
        top:40%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
    }
   
    #business .c-left .text-area .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3.6vw;
        line-height: 5vw;
        text-align: center;
        color:#fff;
        margin-left: 5%;
        width:95%
    }
    #business .c-left .text-area .arrow{
        color:#fff;
        width:5%;    
        padding:0 2vw 0 0;
        
    }      
    #business .c-left .text-area .arrow::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:3.8vw;
    }
    #business .c-left:hover .text-area .arrow{
        padding:0 1vw 0 1vw;
    }
    #business .c-left:hover .text-area {
        background: rgba(0,0,0,0.9);
    }
    #business .c-right .link-s{
        width:100%;
        height:8vw;
        background: #e72d29;
        color:#fff;
        transition-duration: 0.3s;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
        margin-bottom: 1vw;
   }
    
    #business .c-right .link-s .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3vw;
        text-align: center;
        color:#fff;
        margin-left: 5%;
        width:95%;
    }
    
    #business .c-right .link-s .text-s{
        font-weight: 400;
        font-size:2.5vw;
    }
    
    #business .c-right .link-s .arrow{
        color:#fff;
        width:10%;    
        padding:0 1.25vw 0 0;
    }      
    #business .c-right .link-s .arrow::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:2.5vw;
    }
    #business .c-right .link-s:hover{
        background: #000;
   }
    #business .c-right .link-s .text:hover{
        transform: scale(1.1);
   }
   
    #business .c-right .link-s:hover .arrow{
        padding:0 0.5vw 0 0.5vw;
    }
    
    #portfolio {
        margin:6vw auto 0 auto; 
        min-width:320px;
        text-align: center;
/*      border:1px solid #000;
        box-sizing: border-box;  */   
    }
   #portfolio .r-box{
        width:30vw;
        height:30vw;
        background: #e72d29;
        margin:0 auto;
        position: relative;
    }
    #portfolio .r-box .number{
        background: url("../img/n3.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:28vw;
        width:28vw;
        margin:1vw;
        position: absolute;
    }
    #portfolio .sub-copy-t{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:4.5vw;
        line-height: 8vw;
        text-align: center;
        margin:3vw auto 0 auto;
    }
    #portfolio .ex-area{
        width:95.2%;
        margin:1.5vw 2vw 0 2vw;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction:column;
    }
    #portfolio .c-left{
        height:42vw;
        width:70%;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
        margin:0 auto;
    }
    #portfolio .c-left img{
        width: 100%;
    }
    #portfolio .c-right{
        width:96%;
        position: relative;
        transition-duration: 0.3s;
        margin:0 auto;
        padding:0;
    }
    #portfolio .c-right .detail{
        width:100%;
        padding: 0;
       
    }
    #portfolio .c-right .link{
        padding: 0;
        margin: 2vw 0 0 0;
        text-align: center;
    }
    #portfolio .c-right .link .text{
        width:28vw;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3.25vw;
        line-height: 3.75vw;
        color:#e72d29;
        border-bottom:0.5vw solid #e72d29;
    }
     
    #portfolio .c-right .link .text::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:1.2vw;
    }
    
    #portfolio .c-right .link:hover .text{
        color:#000;
        border-bottom:0.4vw solid #000;
    }
    #portfolio .c-right .p-index{
        width:73%;
        height:6.75vw;
        background:#000;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3.75vw;
        line-height: 7vw;
        text-align: center;
        color:#fff;
        padding:0;
        margin:1vw auto 0 auto;
    }
    #portfolio .c-right .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:3.5vw;
        text-align: center;
        color:#000;
        padding:0;
        margin:1vw auto;
    }
    #portfolio .c-right .detail-text{
        font-weight: 200;
        font-style: normal;
        font-size:3vw;
        line-height: 3.75vw;
        text-align: left;
        color:#666;
        padding:0;
        margin:0;
    }
    #info {
        margin:6vw auto 0 auto; 
        min-width:320px;
        text-align: center;
/*      border:1px solid #000;
        box-sizing: border-box;  */   
    }
    #info .r-box{
        width:30vw;
        height:30vw;
        background: #e72d29;
        margin:0 auto;
        position: relative;
    }
    #info .r-box .number{
        background: url("../img/n4.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:28vw;
        width:28vw;
        margin:1vw;
        position: absolute;
    }
    #info .sub-copy-t{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:4.5vw;
        line-height: 8vw;
        text-align: center;
        margin:3vw auto 0 auto;
    }
    #info .detail{
        max-width:95.2%;
        margin:2vw 2vw 0 2vw;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction:column;
        justify-content: flex-start;
        text-align: left;
    }
    #info .detail .date{
        font-size:3.5vw;
        color:#444;
        padding:0;
        margin:0;
    }
    #info .detail .date::before{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:2.5vw;
        color:#fff;
        background: #000;
        padding:1vw;
        margin-right:2vw;
    }
    #info .detail .text{
        font-size:2.5vw;
        color:#000;
        line-height: 5vw;
        padding:0;
        margin:1vw 0 1.5vw 6vw;
        text-align: left;
    }
    #info .detail:hover .text{
        opacity: 0.5;
    }
    #details{
        margin:4vw auto 0 auto; 
        width:100%;
        background: #000;
        text-align: center;
        padding-bottom: 5vw;
    }
    #details .d-area{
        margin:0 auto;
        padding-top:3vw;
        width:100%;
        display: flex;
        flex-direction:column-reverse;
    }

    #details .wrap{
        margin:3vw 2vw 0 2vw; 
        padding:3vw;
        color:#fff;
        text-align: left;
        border:0.3vw solid #fff;
        box-sizing: border-box; 
    }
   #details .menu-area{
    }

    #details .menu{
        margin: 0 2vw;
        padding:0;
        text-align: left;
        list-style: none;
        font-size:4vw;
        font-weight: 200;
        color:#fff;
    }
    #details .menu li{
        line-height: 8vw;
    }
    #details .menu li .text{
        position: relative;
    }
    #details .menu li .text::after{
        content: '';
        position: absolute;
        left: 0;
        bottom: -0.4vw;
        width: 0%;
        height: 0.3vw;
        background: #e72d29;
        transition: 0.2s;
    }
    #details .menu li:hover .text:after{
        width: 100%;
    }
    #details h3{
        font-size:4.5vw;
        font-weight: 900;
        margin:0;
        paddig:0;
    }
    #details .zip{
        font-size:3.25vw;
        font-weight: 200;
        margin:1vw 0 0 0;
        paddig:0;
    }

    #details .address{
        font-size:3.75vw;
        font-weight: 200;
        margin:0;
        paddig:0;
    }
    #details .tel{
        font-size:3.5vw;
        font-weight: 200;
        margin:0.5vw 0 0 0;
        paddig:0;
    }
    #details .tel::before{
        content: '\e0b0';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:3.5vw;
        color:#fff;
        margin: 0 1vw 0 0;
        position:relative;
        top:0.25vw;
    }
    #details .fax{
        font-size:3.5vw;
        font-weight: 200;
        margin:0;
        paddig:0;
    }
    #details .fax::before{
        content: '\ead8';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:3.5vw;
        line-height: 3.5vw;
        color:#fff;
        margin: 0 1vw 0 0;
        position:relative;
        top:0.25vw;
    }
    #details .inquiry{
        background:#e72d29;
        height:6.5vw;
        padding:1vw;
        margin: 2vw 0 0 0;
        font-size:4vw;
        font-weight: bold;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: 0.5s;
    }

    #details .inquiry:hover {
        background: #000;
        font-size:5vw;
    }
    #details .inquiry::before{
        content: '\e158';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:5vw;
        color:#fff;
        margin: 0.75vw 1vw 0 0;
        position:relative;
        top:0.2vw;
    }
    #details .inquiry::after{
        content: '\e5e1\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:4.5vw;
        letter-spacing: -0.5vw;
        color:#fff;
        margin: 0 0 0 1vw;
        position:relative;
        top:0.2vw;
    }
    #details .cap1{
        font-size:3vw;
        font-weight: 200;
        margin:0 0 0 0.5vw;
        paddig:0;
    }
    #details .copyright{
        font-size:2vw;
        font-weight: 200;
        margin:4vw 2vw 1vw 0;
        color:#fff;
        text-align: center;
    }

}
@media screen and (max-width:319px) { 
    
   #top{
        margin:0 auto; 
        height:352px;
        text-align: center;
        position: relative;
        border-bottom:6.5px solid #000;
    }
 
    #top .copy-t{
        width:256px;
        height:200px;
        min-height:200px;
        text-align: center;
        background: #e72d29;
        position: absolute;
        margin: 128px 32px 0 32px;
    }
    #top .text-a{
        padding: 0;
        margin: 0;
    }
   
    #top .copy-t h2{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:21px;
        color:#000;
        margin: -44px auto 0 auto;
        padding:0;
    }
    
    #top .copy-t h3{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 400;
        font-style: normal;
        font-size:12px;
        color:#fff;
        line-height: 8px;
        margin:12px 0 0 0;
        padding:0;
         animation: text-anime 15s infinite  ease-out;
    }
     @keyframes text-anime{

      0%{
          opacity: 0;
        }
      30%{ 
          opacity: 1;
         }
       60%{
          opacity: 1;
        }
       100%{
          opacity: 0;
        }
    }      
    #top .logo{
        background: url("../img/logo.svg")no-repeat;
        background-size: 128px;
        padding-top:96px;
        margin:16px 0 0 96px;
        width:128px;
        position: absolute;
    }
    
    #top .slide-img{
        width:320px;
        height:160px; 
        margin:30 0 0 0;
        text-align: center;
        position: absolute;
        margin-top: 160px;
    }
    #top .slide-img .slider{
        width:320px;
        margin: 0;
        padding:0;
        position: absolute;
    }
    #top .slide-img .slider img{
        height: auto;
        width:320px;
        margin:0;
    }
    
    #top .slide-mention{
        width:160px;
        height:16px; 
        margin:0; 
        text-align: center;
        background: #000;
        position: absolute;
        margin-top: 294px;
        left:0;
    }
    #top .slide-mention .slider{
        width:100%;
        margin: 0 ;
        padding:0;
        position: absolute;
        text-align: center;
    }
    #top .slide-mention .slider li{
        font-style: normal;
        font-size:4px;
        color:#fff;
        margin-top:0px;
    }
    
    #concept{
        margin:20px auto 0 auto; 
        min-width:320px;
        text-align: center;
   /*   border:1px solid #f09;
        box-sizing: border-box; */   
    }
    #concept .r-box{
        width:96px;
        height:96px;
        background: #e72d29;
        margin:0 auto;
        position: relative;
 
    }
    #concept .r-box .number{
        background: url("../img/n1.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:90px;
        width:90px;
        margin:3px;
        position: absolute;
    }

    #concept .sub-copy-t{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:14px;
        line-height: 26px;
        text-align: center;
        margin:10px auto 12px auto;
    }
    #concept .read-t{
        width:306px;
        height:auto;
        font-size: 11px;
        color:#666;
        line-height: 16px;
        text-align: left;
        margin:5px 8px 0 8px;
    }
    #concept .pic{
        background: url("../img/top_concept_pic_sp.jpg")no-repeat;
        background-size:contain;
        padding-top:192px;
        margin:20px 0 0 0;
    }
    #business{
        margin:20px auto 0 auto; 
        min-width:320px;
        text-align: center;
/*      border:1px solid #000;
        box-sizing: border-box;  */   
    }
    #business .r-box{
        width:96px;
        height:96px;
        background: #e72d29;
        margin:0 auto;
        position: relative;
    }
    #business .r-box .number{
        background: url("../img/n2.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:90px;
        width:90px;
        margin:3px;
        position: absolute;
    }
    #business .sub-copy-t{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:14px;
        line-height: 26px;
        text-align: center;
        margin:10px auto 12px auto;
    }

    #business .link_area{
        width:306px;
        margin:4px 7px 0 7px;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction:column;
        padding:0;
    }
    #business .c-left{
        height:153px;
        width:306px;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
        margin-bottom:4px;
        padding:0;
    }    
     #business .c-right{
        width:306px;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
        margin:0;
        padding:0;
        display: flex;
        flex-direction:column;
    } 
     #business .c-left .bg-pic1{
        background: url("../img/top_business_pic.jpg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:153px;
        width:306px;
        transition: transform .6s ease;
    }
     #business .c-left:hover .bg-pic1 {
        transform: scale(1.1);
    }
    
    #business .c-left .text-area {
        background: rgba(0,0,0,0.5);
        height:32px;
        width:306px;
        position: absolute;
        top:40%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
    }
   
    #business .c-left .text-area .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:12px;
        line-height: 16px;
        text-align: center;
        color:#fff;
        margin-left: 16px;
        width:290px
    }
    #business .c-left .text-area .arrow{
        color:#fff;
        width:16px;    
        padding:0 6px 0 0;
        
    }      
    #business .c-left .text-area .arrow::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:12px;
    }
    #business .c-left:hover .text-area .arrow{
        padding:0 4px 0 4px;
    }
    #business .c-left:hover .text-area {
        background: rgba(0,0,0,0.9);
    }
    #business .c-right .link-s{
        width:100%;
        height:26px;
        background: #e72d29;
        color:#fff;
        transition-duration: 0.3s;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
        margin-bottom: 4px;
   }
    
    #business .c-right .link-s .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:10px;
        text-align: center;
        color:#fff;
        margin-left: 16px;
        width:290px;
    }
    
    #business .c-right .link-s .text-s{
        font-weight: 400;
        font-size:8px;
    }
    
    #business .c-right .link-s .arrow{
        color:#fff;
        width:10%;    
        padding:0 4px 0 0;
    }      
    #business .c-right .link-s .arrow::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:8px;
    }
   #business .c-right .link-s:hover{
        background: #000;
   }
   #business .c-right .link-s .text:hover{
        transform: scale(1.1);
   }
   
   #business .c-right .link-s:hover .arrow{
        padding:0 5px 0 5px;
    }
   #portfolio {
        margin:20px auto 0 auto; 
        min-width:320px;
        text-align: center;
/*      border:1px solid #000;
        box-sizing: border-box;  */   
    }
   #portfolio .r-box{
        width:96px;
        height:96px;
        background: #e72d29;
        margin:0 auto;
        position: relative;
    }
    #portfolio .r-box .number{
        background: url("../img/n3.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:90px;
        width:90px;
        margin:3px;
        position: absolute;
    }
    #portfolio .sub-copy-t{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:14px;
        line-height: 26px;
        text-align: center;
        margin:10px auto 12px auto;
    }
    #portfolio .ex-area{
        width:306px;
        margin:4px 7px 0 7px;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction:column;
    }
    #portfolio .c-left{
        height:128px;
        width:214px;
        position: relative;
        transition-duration: 0.3s;
        overflow: hidden;
        margin:0 auto;
    }
    #portfolio .c-left img{
        width: 100%;
    }
    #portfolio .c-right{
        width:306px;
        position: relative;
        transition-duration: 0.3s;
        margin:0 auto;
        padding:0;
    }
    #portfolio .c-right .detail{
        width:100%;
        padding: 0;
       
    }
    #portfolio .c-right .link{
        padding: 0;
        margin: 7px 0 0 0;
        text-align: center;
    }
    #portfolio .c-right .link .text{
        width:88px;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:10.5px;
        line-height: 12px;
        color:#e72d29;
        border-bottom:1.5px solid #e72d29;
    }
     
    #portfolio .c-right .link .text::after{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:1.2vw;
    }
    
    #portfolio .c-right .link:hover .text{
        color:#000;
        border-bottom:0.4vw solid #000;
    }
    #portfolio .c-right .p-index{
        width:214px;
        height:22px;
        background:#000;
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:12px;
        line-height: 22.5px;
        text-align: center;
        color:#fff;
        padding:0;
        margin:4px auto 0 auto;
    }
    #portfolio .c-right .text{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:12px;
        text-align: center;
        color:#000;
        padding:0;
        margin:4px auto;
    }
    #portfolio .c-right .detail-text{
        font-weight: 200;
        font-style: normal;
        font-size:10.5px;
        line-height: 14px;
        text-align: left;
        color:#666;
        padding:0;
        margin:0;
    }
    #info {
        margin:20px auto 0 auto; 
        min-width:320px;
        text-align: center;
/*      border:1px solid #000;
        box-sizing: border-box;  */   
    }
    #info .r-box{
        width:96px;
        height:96px;
        background: #e72d29;
        margin:0 auto;
        position: relative;
    }
    #info .r-box .number{
        background: url("../img/n4.svg")no-repeat;
        background-position: center center;
        background-size:contain;
        padding-top:90px;
        width:90px;
        margin:3px;
        position: absolute;
    }
    #info .sub-copy-t{
        font-family: fot-klee-pro, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size:14px;
        line-height: 26px;
        text-align: center;
        margin:10px auto 12px auto;
    }
    #info .detail{
        max-width:306px;
        margin:6px 6px 0 6px;
        position: relative;
        overflow: hidden;
        display:flex;
        flex-direction:column;
        justify-content: flex-start;
        text-align: left;
    }
    #info .detail .date{
        font-size:11px;
        color:#444;
        padding:0;
        margin:0;
    }
    #info .detail .date::before{
        content: '\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:10px;
        color:#fff;
        background: #000;
        padding:1vw;
        margin-right:6.5px;
    }
    #info .detail .text{
        font-size:10px;
        color:#000;
        line-height: 14px;
        padding:0;
        margin:4px 0 6px 23px;
        text-align: left;
    }
    #info .detail:hover .text{
        opacity: 0.5;
    }
    #details{
        margin:14px auto 0 auto; 
        width:100%;
        background: #000;
        text-align: center;
        padding-bottom: 16px;
    }
    #details .d-area{
        margin:0 auto;
        padding-top:10px;
        display: flex;
        flex-direction:column-reverse;
    }

    #details .wrap{
        margin:10px 6px 0 6px; 
        padding:10px;
        color:#fff;
        text-align: left;
        border:1px solid #fff;
        box-sizing: border-box; 
    }
    #details .menu-area{
    }
    #details .menu{
        margin: 0 8px;
        padding:0;
        text-align: left;
        list-style: none;
        font-size:14px;
        font-weight: 200;
        color:#fff;
    }
    #details .menu li{
        line-height: 26px;
    }
    #details .menu li .text{
        position: relative;
    }
    #details .menu li .text::after{
        content: '';
        position: absolute;
        left: 0;
        bottom: -1px;
        width: 0%;
        height: 1px;
        background: #e72d29;
        transition: 0.2s;
    }
    #details .menu li:hover .text:after{
        width: 100%;
    }
    #details h3{
        font-size:16px;
        font-weight: 900;
        margin:0;
        paddig:0;
    }
    #details .zip{
        font-size:10.5px;
        font-weight: 200;
        margin:1vw 0 0 0;
        paddig:0;
    }

    #details .address{
        font-size:12px;
        font-weight: 200;
        margin:0;
        paddig:0;
    }
    #details .tel{
        font-size:11px;
        font-weight: 200;
        margin:0.5vw 0 0 0;
        paddig:0;
    }
    #details .tel::before{
        content: '\e0b0';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:11px;
        color:#fff;
        margin: 0 4px 0 0;
        position:relative;
        top:1px;
    }
    #details .fax{
        font-size:11px;
        font-weight: 200;
        margin:0;
        paddig:0;
    }
    #details .fax::before{
        content: '\ead8';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:11px;
        line-height: 11px;
        color:#fff;
        margin: 0 4px 0 0;
        position:relative;
        top:1px;
    }
    #details .inquiry{
        background:#e72d29;
        height:21px;
        padding:4px;
        margin: 6px 0 0 0;
        font-size:14px;
        font-weight: bold;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: 0.5s;
    }

    #details .inquiry:hover {
        background: #000;
        font-size:16px;
    }
    #details .inquiry::before{
        content: '\e158';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:16px;
        color:#fff;
        margin: 3px 4px 0 0;
        position:relative;
        top:1px;
    }
    #details .inquiry::after{
        content: '\e5e1\e5e1';
        font-family: 'Material Icons';
        font-weight: 200;
        font-size:14px;
        letter-spacing: 2px;
        color:#fff;
        margin: 0 0 0 4px;
        position:relative;
        top:1px;
    }
    #details .cap1{
        font-size:10px;
        font-weight: 200;
        margin:0 0 0 2px;
        paddig:0;
    }
    #details .copyright{
        font-size:10px;
        font-weight: 200;
        margin:20px 10px 4px 0;
        color:#fff;
        text-align: center;
    }

}    

     /*スマホナビゲーション*/   
        #g-nav{
        /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
        position:fixed;
        z-index: 9998;
        /*ナビのスタート位置と形状*/
        top:0;
        right: -120%;
        width:100%;
        height: 100vh;/*ナビの高さ*/
        background:#000;
        /*動き*/
        transition: all 0.6s;
    }

    /*アクティブクラスがついたら位置を0に*/
    #g-nav.panelactive{
        right: 0;
}

    /*navi scroll vertical*/
    #g-nav.panelactive #g-nav-list{
        /*ナビの数が増えた場合縦スクロール*/
        position: fixed;
        z-index: 999; 
        width: 100%;
        height: 100vh;/*表示する高さ*/
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    /*navi*/
    #g-nav ul {
        /*ナビゲーション天地中央揃え*/
        position: absolute;
        z-index: 999;
        top:40%;
        left:45%;
        transform: translate(-50%,-50%);

    }

    /* list layouts */

    #g-nav li{
        list-style: none;
        text-align: center;
        font-size:4.5vw;
    }

    #g-nav li a{
        color: #fff;
        text-decoration: none;
        padding:5vw;
        display: block;
        font-weight: bold;
    }

    /* button */
    .openbtn1{
        position:fixed;
        z-index: 9999;/*ボタンを最前面に*/
        top:2vw;
        right: 2vw;
        width: 10vw;
        height:10vw;
        background:rgba(255,255,255,0.7);
        border-radius: 0.5vw;
    }
	
    /*×に変化*/	
    .openbtn1 span{
        display: inline-block;
        transition: all .4s;
        position: absolute;
        left: 1vw;
        height: 0.65vw;
        border-radius: 0.3vw;
        background-color: #000;
        width: 80%;
      }

    .openbtn1 span:nth-of-type(1) {
        top:2.5vw;	
    }

    .openbtn1 span:nth-of-type(2) {
        top:4.5vw;
    }

    .openbtn1 span:nth-of-type(3) {
        top:6.5vw;
    }
    
    .openbtn1.active{
            background:rgba(255,255,255,0);
        }
    .openbtn1.active span:nth-of-type(1) {
        top: 2.8vw;
        left: 2.8vw;
        transform: translateY(0.93vw) rotate(-45deg);
        width: 70%;
        background-color: #fff;
    }

    .openbtn1.active span:nth-of-type(2) {
        opacity: 0;
    }

    .openbtn1.active span:nth-of-type(3){
        top: 4.68vw;
        left: 2.8vw;
        transform: translateY(-0.93vw) rotate(45deg);
        width: 70%;
        background-color: #fff;
    }
    header{
        width:100%;
        padding: 0;
    }
   
	
}