@charset "UTF-8";
/* CSS Document */

/* common.css */

/**********************************************
	common settings
***********************************************/
html,
body {
  width: 100%;
  height: 100%;
}

body {
  font-family:YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 1.5px;
  color: #505A5F;
  background: #fff;
  position: relative;
}
@media screen and (min-width: 520px) {
  body {
    font-size: 14px;
  }
}
@media screen and (min-width: 960px) {
  body {
    font-size: 14px;
  }
}
h2{
    font-size: 24px;
	font-family: "EB Garamond", serif;
    text-transform: uppercase;
}
#ilka h2,#lef h2{
    font-size: 18px;
}
h3{
    font-size: 18px;
    font-family: "EB Garamond", serif;
    text-transform: uppercase;
}
h4{
    font-size: 24px;
    font-family: "Noto Serif JP", serif;
    
}
p {
  text-align: justify;
}

a {
  color: #000;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

a:focus {
  outline: none;
}

img {
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

input:focus,
select:focus,
textarea:focus {
  outline: none;
}
/*fonts*/
.eb-garamond{
  font-family: "EB Garamond", serif;
  font-optical-sizing: auto;
  font-style: normal;
    text-transform: uppercase;
}
.noto-serif-jp{
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
}
/*リンク先の隙間*/
a.anchor{
    display: block;
    padding-top: 30px;
    margin-top: -30px;
}
a.anchor_wide{
    display: block;
    padding-top: 70px;
    margin-top: -70px;
}

/**********************************************
	display: block / none
***********************************************/
.tab {
  display: none !important;
}
.pc {
  display: none !important;
}
.sp {
  display: block !important;
}

@media screen and (min-width: 520px) {
  .sp {
    display: none !important;
  }
  .pc {
    display: none !important;
  }
  .tab {
    display: block !important;
  }
}

@media screen and (min-width: 960px) {
  .sp {
    display: none !important;
  }
  .tab {
    display: none !important;
  }
  .pc {
    display: block !important;
  }
}

/**********************************************
	clearfix
***********************************************/
.cf::after {
  content: "";
  display: block;
  clear: both;
}
/**********************************************
	サイトアニメーション
***********************************************/
/*最初ロゴ表示*/
#splash {
/*fixedで全面に固定*/
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 999;
  background:#fff;
  text-align:center;
  color:#fff;
}

/* Loading画像中央配置　*/
#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Loading アイコンの大きさ設定　*/
#splash_logo img {
  width:260px;
}

/* fadeUpをするアイコンの動き */
.fadeUp{
animation-name: fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/**********************************************
	header
***********************************************/

.header_sp_inner{
    position: relative;
    height: 73px;
}
.logo{
    height: 72px;
    margin: auto 0;
}
.logo img{
    width: 13.33%;
    min-width: 50px;
    max-width: 73px;
    margin-left: 2.66% ;
}

@media screen and (min-width: 520px){

}
@media screen and (min-width: 960px){
    .header_consept_wapper{
        
        background: url("img/top_bg.jpg") no-repeat;
        background-size: contain;
        position: relative;
    }
    
    .header_pc_inner{
        display: flex;
        justify-content: space-around;
    }
    .logo_wapper{
        width: 5.9%;
         height: 100vh;
        max-height:600px;
        
        background: #fff;
        text-align: center;
         position: relative; /* 子要素に対して相対的に位置を指定できるようにする */
         
    }
    .logo_wapper img{
        width: 68.57%;
        height: auto;
        margin-top: 23px;  
    }
    .copylight{
        position: absolute;
    bottom: 50%;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
        text-transform: uppercase;
        font-family: "EB Garamond", serif;
    }
    .logo_wapper .copylight a{
        position: absolute;
        bottom: 0;
        right: -17%;
        /*transform: translateY(50%);*/
    }
    .nav_pc{
        width: 49.4%;
        margin: 0 0 0 auto;
        height: 100vh;
        max-height: 600px;
        background: #fff;
    }
    .nav_pc ul{
        width: 86.69%;
        display: flex;
        justify-content: space-around;
        margin: 0 auto;
        margin-top: 23px;
    }
    .nav_pc ul li{
        text-transform: uppercase;
        font-size: 11px;
        font-family: "EB Garamond", serif;
  
    }
    
    
    
    .gnavi__list{
        position: relative;
        
    }
    .gnavi__list .dropdown__lists {
    display: none;/*デフォルトでは非表示の状態にしておく*/
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
        margin-top: 0;
}
.gnavi__list:hover .dropdown__lists {
    display: block;
    margin-top: 10px;
    padding-top: 25px;
    /*Gナビメニューにホバーしたら表示*/
}
.gnavi__list .dropdown__list {
    
    height: 35px;
    transition: all .3s;
    position: relative;
}
/*.gnavi__list .dropdown__list:not(:first-child)::before{
    content: "";
    width: 200%;
    height: 1px;
    
    position: absolute;
    top: 0;
    left: 0;
}*/
.gnavi__list .dropdown__list:hover {
    opacity: 0.6;
}
.gnavi__list .dropdown__list a {
    display: flex;
    width: 129px;
    
    padding-bottom: 5px;
    justify-content: flex-start;
    align-items: center;
    color: #505A5F;
    text-decoration: none;
    position: relative;
}
.gnavi__list .dropdown__list a::before {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top: 1px solid #505A5F;
    border-left: 1px solid #505A5F;
    transform: rotate(135deg);
    position: absolute;
    right: 15px;
    top: calc(50% - 6.5px);
}


}


@media screen and (min-width: 1200px){
    .logo_wapper{
        min-height: 750px;
    }
    .nav_pc{
        min-height: 750px;
    }
}
@media screen and (min-width: 1440px){
    .logo_wapper{
        min-height: 1024px;
    }
    .nav_pc{
        min-height: 1024px;
        width: 46.4%;
    }
    .nav_pc ul li{
        font-size: 14px;
  
    }
}
@media screen and (min-width: 1815px){
    .nav_pc{
        min-height: 1024px;
        width: 36.40%;
    }
}
/**********************************************
    $TOPへ戻る
***********************************************/

.pagetop {
    position: fixed;
    font-family: "EB Garamond", serif;
    font-size: 18px;
    right: -2px;
    bottom: 30px;
    height: 50px;
    text-decoration: none;
    font-weight: bold;
    transform: rotate(90deg);
    line-height: 1.5rem;
    color: #737373;
    padding: 0 0 0 48px;
    border-top: solid 1px;
}
.pagetop::before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0px;
    width: 15px;
    border-top: solid 1px;
    transform: rotate(35deg);
    transform-origin: left top;
}
/**********************************************
    $link button
***********************************************/
.veiwmore_wapper{
	text-align: end;
}
.veiwmore{
	
	font-size: 18px;
	font-family: "EB Garamond", serif;
    text-transform:capitalize;
}
@media screen and (min-width: 520px){
	.veiwmore{
	font-size: 24px;
	
}
}
@media screen and (min-width: 960px){
}

.veiwmore span:nth-of-type(2){
	text-transform:uppercase;
	margin-right: 15px; 
	margin-left: 5px;
}
/*.veiwmore span:not([class]){
	クラス名のふっていないspanにのみ適用
	margin-right: 10px;
}*/

.btn002-03 {
    width: 100%;
    max-width: 139px;
    
    position: relative;
    text-decoration: none;
    outline: none;
    display: inline-block;
    transition: all 0.3s ease;
}
.veiwmore_studio{
	max-width: 200px;
}
@media screen and (min-width: 520px){
	.btn002-03{
	max-width: 170px	
}
	.veiwmore_studio{
		max-width: 250px;
	}
}
@media screen and (min-width: 960px){
}
/* 下線が伸びる */
.btn002-03::before {
    content:"";
    position: absolute;
    bottom: -3px;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #505A5F;
}
.btn002-03::after {
    content: "";
    position: absolute;
    bottom: -3px;
    left: 0;
    background-color: #ddd;
    display: block;
    width: 0;
    height: 1px;
    transition: .3s all ease;
}
/* プラスアイコン */
.btn002-03 .plus {
    display: inline-block;
    vertical-align: middle;
    color: #505A5F;
    line-height: 1;
    width: 13px;
    height: 1px;
    background: currentColor;
    position: relative;
}
.btn002-03 .plus::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    border-radius: inherit;
    transform: rotate(90deg);
    transition: .3s all ease;
}
/* ホバーアニメーション */
.btn002-03:hover::after {
    width: 100%;
}
.btn002-03:hover span.plus::before {
    transform: rotate(0);
}
/**********************************************
    $subpage title
***********************************************/


@media screen and (min-width: 520px){

}
@media screen and (min-width: 960px){
    #ilka .header_consept_wapper{
        background: url("img/ILKA_mv1.jpg") no-repeat;
        background-size: contain;
        position: relative;
    }
    
    
    #ilka .logo_wapper{
       height: auto;
        max-height: none;
        min-height: 600px;
    }
    #ilka .header_pc_inner{
        height: 100%;
        max-height: none;
    }
     
    #ilka.nav_pc{
        height: auto;
        max-height: none;
        min-height: none;
    }
    
    
}
@media screen and (min-width: 1200px){
    #ilka .logo_wapper{
       min-height: none;
    }
}




/**********************************************
	$breadcrumb list
***********************************************/


/**********************************************
    $main
***********************************************/
.mv_wapper{
    position: relative;
    
}
.mv_copy{
    width: 59.62%;
    min-width: 223.61px;
    position: absolute;
    left: 37.6%;
    top:30%;
  
}
.mv_copy p{
    font-size: clamp(14px, 3.733333333333334vw, 32px);
     font-family: "EB Garamond", serif;
    position: relative;
    letter-spacing: normal;

}
.border{
    /*content: '';*/
  width:70.15%;
  height: 0.42px;
  display: inline-block;
  background-color: #505A5F;
  position: absolute;
  bottom: -4px;
  left: calc(50% - 70px);
}
.mv_copy p::after{
    content: "";
    display: inline-block;
    position: absolute;
    background: url("img/top_ring.svg")no-repeat;
    width: 29.77%;
    height: 317%;
    min-width: 66.57px;
    min-height: 66.51px;
    bottom: -152%;
    right: -3%;
    background-size: contain;
  vertical-align: middle;
	animation: 20s linear infinite rotation;
}
@keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
.select{
    
    position: absolute;
    top: 44%;
    right: 0;
    display: flex;
    justify-content: center;
}
.select a{
    width: 25.848%;
    min-width: 96.93px;
    max-width: 299px;
    margin-left: 2.28%;
    
}

.select a:nth-child(2){
    transform: translateY(27px);
}

@media screen and (max-width: 375px){
    .select{
    
    right: 0;
}
    .mv_copy p::after{
        right:0;
    }
}
@media screen and (min-width: 520px){
.select{
    width: 95.52%;
    min-width: 305.71px;
    position: absolute;
    top: 44%;
    right: 0;
    }
    
    .border{
        left: calc(50% - 117px);
    }
    
}
@media screen and (min-width: 960px){
    header{
        position: relative;  
    }
    .mv_wapper_pc{
        position: absolute;
        top: 31%;
        right: 2%;
    }
    .mv_copy {
    /*width: 34.375%;*/
        width: 487px;
    /*max-width: 660px;*/
    position: relative;
    left: unset;
    top: unset;
		margin: 0 50px 121px auto;
		
}
		
    .mv_copy p::after{
        width: 23%;
        max-width: 142.89px;
        max-height: 111.78px;
        top: -42%;
        right: -12%
        
    }
    .border{
        width: 412px;
        top: 62%;
        left: calc(50% - 165px);
    }
    h1{
        width: 84%;
        font-size: 10px;
        margin: 0 0 0 auto;
    }
    .select {
		display: flex;
		justify-content: flex-end;
        width: 70vw;
        min-width: 305.71px;
        /*max-width: 808px;*/
        position: relative;
        top: unset;
        left: unset;
		margin: 0 0 0 auto;
        
    }
    .select .select_box1{
        width: 25.848%;
    min-width: 96.93px;
    max-width: 299px;
    margin-left: 2.28%;
        position: relative;
        cursor: pointer;
    }
    .select .select_box1 a{
        width: 100%;
        height: auto;
    }
    .select .select_box1 a img{
        height: auto;
        left: 0;
        position: absolute;
        width: 100%;
    }
   
    .select_box1 a img:last-of-type {
        opacity: 0;
        transition: opacity .7s;
     }

    .select_box1:hover a img {
        opacity: 1;
     }
    .select .select_box1:nth-child(2){
    transform: translateY(27px);
}
    
    
    
}
@media screen and (min-width: 1440px){
   /* header{
        position: relative;  
    }
    .mv_wapper_pc{
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
    }*/
    .mv_copy {
    /*width: 34.375%;*/
        /*width: 660px;*/
    /*max-width: 660px;*/
    /*position: absolute;
    left: 43%;
    top: 18.5%;*/
		width: 56.375%;
		margin: 0 140px 121px auto;
}
   .mv_copy p{
    font-size: clamp(14px, 3.733333333333334vw, 46px);
	   max-width: 654px;

}
    .mv_copy p::after{
        max-width: 142.89px;
        max-height: 142.78px;
        top: -42%;
        right: -15%
        
    }
	.border {
        width: 463px;
        top: 72%;
        left: calc(50% - 194px);
    }
    /*.border{
        width: 550px;
        top:63%;
        left: calc(50% - 187px);
    }
    h1{
        width: 80.57%;
        margin: 0 0 0 auto;
        font-size: 14px;
    }*/
   /*.select {
       width: 72.52%;
        max-width: 1031px;
        
        top: 29%;
        left: 38%;
    }*/

    
}
/*@media screen and (min-width: 1600px){
    .mv_copy {
    
    left: 50%;
    
}
}*/
/*@media screen and (min-width: 1815px){
    .mv_copy {
    top:18%;
    left: 58%;
    
}
    .select{
        max-width: 967px;
        top: 31%;
        left: 47%;
}
    .select img{
        width: 31.70%;
}
}*/

/************concept***********/
.concept_p{
    width: 89.6%;
    max-width: 521px;
    margin: 0 auto;
}
.concept_p h2{
    font-size: 18px;
    margin-bottom: 20px; 
}
.concept_p h4{
    margin-bottom: 20px;
}
.concept{
    margin-bottom: 150px;
}

@media screen and (min-width: 960px){
.concept{
        display: flex;
        justify-content: space-evenly;
        align-items: center;
        margin-top: 233px;
        padding-bottom: 130px;
        margin-bottom: 200px;
    }
    .concept_img ul{
        position: relative;
    }
    .concept_img ul li:first-child{
        width: 82%;
        position: relative;
       
    }
    .concept_img ul li:last-child::after{
        content: "";
        display: inline-block;
        position: absolute;
        background: url("img/concept.svg")no-repeat;
        width: 100%;
        height: 100%;
        min-width: 66.57px;
        min-height: 66.51px;
        max-width: 157.84px;
        max-height: 157.67px;
        bottom: 31%;
        right: 84%;
        background-size: contain;
        vertical-align: middle;
        z-index: 10;
        animation:20s linear infinite rotation;
    }
    @keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
    .concept_img ul li:last-child{
        position: absolute;
        width: 64%;
        right: -3%;
        bottom: -34%;
        
    }
    .concept_p{
        margin: 0;
        max-width: 361px
    }
}
@media screen and (min-width: 1390px){
    .concept{
        display: flex;
        justify-content: space-evenly;
        align-items: center;
        margin-top: 233px;
        padding-bottom: 130px;
        margin-bottom: 200px;
    }
    .concept_img ul{
        position: relative;
    }
    .concept_img ul li:first-child{
       width: 100%;
    }
    .concept_img ul li:last-child{
        position: absolute;
        width: 90%;
        right: -49%;
        bottom: -34%;
    }
    .concept_p{
        margin: 0;
         max-width: 521px;
    }

}

/************service***********/
.service h2{
    text-align:center;
    margin-bottom: 100px;
}
.section_ILKA,.section_lef,.section_studio{
    width: 89.6%;
    margin: 0 auto;
	margin-bottom: 100px;
}
.section_studio{
	margin-bottom: 200px;
}
.photo{
    display: flex;
    justify-content: space-around;
    align-items:center;
}
.photo li:first-child{
    margin-right: 2.5%; 
}
.photo li:last-child{
    margin-left: 2.5%; 
    
}

.photo li img{
    min-width: 158px;
}
.text{
	margin-top: 50px;
}
.text_inner h3{
    margin-bottom: 20px;
}
.text_inner h4{
    margin-bottom: 20px;
}
.text_inner_p{
    margin-bottom: 50px;
}
@media screen and (min-width: 520px){

}
@media screen and (min-width: 960px){
    .section_ILKA,.section_studio{
        display: flex;
        justify-content: space-around;
        align-items: center;
        flex-direction: row-reverse;
        margin-bottom: 150px;
        padding-bottom: 180px;
    }
    .section_ILKA .photo li:last-child{
        position: relative;
    }
    .section_ILKA .photo li:last-child::after{
        content: "";
        display: inline-block;
        position: absolute;
        background: url("img/aboutilka.svg")no-repeat;
        width: 100%;
        height: 100%;
        min-width: 66.57px;
        min-height: 66.51px;
        max-width: 157.28px;
        max-height: 157.19px;
        bottom: -13%;
        left: -20%;
        background-size: contain;
        vertical-align: middle;
        z-index: 10;
        animation:20s linear infinite rotation;
        /*transform: translate(-50%, 50%);animationをつけると発動しない*/
    }
    
    
    .section_lef{
        display: flex;
        justify-content: space-around;
        align-items: center;
        margin-bottom: 150px;
        padding-bottom: 180px;
    }
    .section_lef .photo li:last-child{
        position: relative;
    }
    .section_lef .photo li:last-child::after{
        content: "";
        display: inline-block;
        position: absolute;
        background: url("img/aboutlef.svg")no-repeat;
        width: 100%;
        height: 100%;
        min-width: 66.57px;
        min-height: 66.51px;
        max-width: 157.26px;
        max-height: 157.26px;
        top: -13%;
        left: -20%;
        background-size: contain;
        vertical-align: middle;
        z-index: 10;
        animation:20s linear infinite rotation;
    /*transform: translate(-50%, -50%);*/
    }
    .section_studio{
        margin-bottom: 200px;
    }
    .section_studio .photo li:first-child{
        position: relative;
    }
    .section_studio .photo li:first-child::after{
        content: "";
        display: inline-block;
        position: absolute;
        background: url("img/studioilka.svg")no-repeat;
        width: 100%;
        height: 100%;
        min-width: 66.57px;
        min-height: 66.51px;
        max-width: 157.21px;
        max-height: 157.24px;
        top: -13%;
        right: -20%;
        background-size: contain;
        vertical-align: middle;
        z-index: 999;
        animation:20s linear infinite rotation;
    /*transform: translate(50%, -50%);*/
    }
    @keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
    .text_inner{
        max-width: 521px;
        margin: 0 50px;
        transform: translateY(66px);
    }
    .section_ILKA .photo li:first-child,.section_studio .photo li:first-child,.section_lef .photo li:last-child{
        transform: translateY(178px);
    }
}

/************staff***********/
/*.staff_img{
	position: relative;
}
.staff_img::before {
  content: "staffmember";
  position: absolute;
  font-size: 128px;
  font-family: "EB Garamond", serif;
	text-transform:uppercase;
  color: #E2E1DC;
  top: -10%;
  right: 0;
  z-index: -5;
  line-height: 120%;
  transform: rotate(90deg);
  transform-origin: left top;
}*/
.staff_img{
        position: relative;
        
    }
.staff h2{
	text-align: center;
	
}
.staff_photo{
	width: 75.73%;
	max-width: 284px;
	margin: 0 auto;
	padding-bottom: 10px;
}
.staff_photo ul li ul li:nth-child(2) span{
	font-family: "EB Garamond", serif;
    text-transform:uppercase;
}
.staff_photo ul li ul li:nth-child(2){
	margin-top: 50px;
}
.staff_photo ul li ul{
	text-align: center;
}
.staff_photo ul li ul li:nth-child(3){
	font-size: 24px;
}
.staff_photo ul li ul li:nth-child(3)::after{
	
}
.staff_photo .staff_photo_inner .staff_photo_inner_li{
	margin-bottom: 100px;
}
.staff_photo .staff_photo_inner .staff_photo_inner_li ul{
	margin-top: 100px;
}
.staff_photo .staff_photo_inner .staff_photo_inner_li ul li:nth-child(3){
    position: relative;
}
.staff_photo .staff_photo_inner .staff_photo_inner_li ul li .icon-instagram{
    position: absolute;
    bottom: 50%;
    right: 0;
    transform: translateY(50%)
}
.img_hover{
    width: 284px;
    height: 337px;
   position: relative;
        cursor: pointer;
}
.img_hover img{
        height: auto;
        left: 0;
        position: absolute;
        width: 100%;
    }
   
    .img_hover img:last-of-type {
        opacity: 0;
        transition: opacity .7s;
     }

    .img_hover:hover img {
        opacity: 1;
     }

/*.staff_photo_img span{
    display: block;
    width: 100%;
    height: 100%;
    
    transition: all .3s ease-in-out;
    position: absolute;
    top: 0;
    left: 0;
    
}
.staff_photo_img span:hover{
    background:rgba(0,0,0,0.30);
}
.staff_photo_img span:hover + .staff_photo_img img{
    filter: blur(2px);
}
.staff_photo_img::after{
    content: "";
    position: absolute;
    display: inline-block;
    width: 164px;
    height: 164px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.staff_photo_img::after:hover{
    background: url("img/staff_hover1.png");
    background-size: contain;
}
.staff_photo_inner_li ul li span:hover{
    filter: blur(2px);
}*/
@media screen and (min-width: 520px){

}
@media screen and (min-width: 960px){
    .staff_photo{
        margin:0;
        width: 100%;
        max-width: none;
		padding-bottom: 50px;
    }
    .staff_photo_inner{
        width: 89%;
        margin: 0 auto;
        display: flex;
        justify-content:space-between;
        align-items: center;
        
    }
    .staff_img{
        position: relative;
        
    }
    .staff_photo_img{
        position: relative;
    } 
    .staff_photo_img::before{
        content: "";
        display: inline-block;
        position: absolute;
        background: url("img/staff.svg")no-repeat;
        width: 100%;
        height: 100%;
        max-width: 118.64px;
        max-height: 118.47px;
        top: -19%;
        left: -19%;
        min-width: 66.57px;
        min-height: 66.51px;
        background-size: contain;
        vertical-align: middle;
        z-index: 999;
        animation:20s linear infinite rotation;
    /*transform: translate(50%, -50%);*/
    }
    @keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
}
@media screen and (min-width: 1600px){
    .staff_photo_inner{
        width: 60%;
        
    }
     .staff_photo_img::before{
        max-width: 157.36px;
        max-height: 157.14px;
        top: -23%;
        left: -26%;
    }
    
}

/************instagram***********/

.instagram h2{
	text-align: center;
    margin-bottom: 100px;
}
.ig_ilka,.ig_lef,.ig_studio{
    width: 94.66%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 50px;
}
.ig_lef{
    flex-direction: row-reverse;
}
.ig_photo{
   max-width: 637px;
}
.slider_sp{
    display: flex;
    flex-wrap: wrap;
}

.slider_sp_lef{
    justify-content:flex-start;
}
@media screen and (min-width: 960px){
	.slider_sp{
		display: block;
	}
}
.slider_item{
    width: 41.93%;
    min-width: 104px;
    max-width: 210px;
    
}
.slider_item:first-child,.slider_item:nth-child(2){
    margin-bottom: 15px;
}
.slider_item:nth-child(2n){
    margin-left: 12px;
}
@media screen and (min-width: 960px){
	.slider_item{
		min-width: unset;
		max-width: unset;
	}
	.slider_item:first-child,.slider_item:nth-child(2){
    margin-bottom: 0;
}
.slider_item:nth-child(2n){
    margin-left: 0;
}
}
.ig_p p a span{
    font-size: 24px;
     font-family: "EB Garamond", serif;
    text-transform: uppercase;
    color: #505A5F;
    margin-right: 20px;
}
.ig_p p a span.ig_lef{
    text-transform: lowercase;
}
.ig_p p a small{
    display: block;
    font-size: 14px;
    font-family: "EB Garamond", serif;
    text-transform:capitalize;
}
.veiwmore_wapper_sp{
    margin-bottom: 100px;
    text-align: center;
}
.instagram{
    position: relative;
	padding-top: 150px;
}
.instagram::before{
    content: "";
    width: 100%;
    height: 104%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -99;
    background-color: #E2E1DC;
}

@media screen and (min-width: 960px){
    
    .slider_item_pc{
        padding-left: 10px;
    }
    .ig_ilka,.ig_lef,.ig_studio{
    justify-content: space-around;
    align-items: center;
    padding-bottom: 100px;
}
    .ig_photo {
    width: 60%;
        max-width: 1112px;
        
}
    .ig_p{
        width: 26.455%;
    }  
    .ig_p p{
        margin-bottom: 10px;
    }
    .ig_ilka_reverse{
        justify-content: flex-end;
    }
    .instagram::before{
    height: 120%;
}

    }
@media screen and (min-width: 1600px){
    .instagram::before{
    height: 116%;
}
    
}


/*.slider {
    visibility: hidden;
}
.slider.slick-initialized {
    visibility: visible;
}
.slick-prev, .slick-next {
    z-index: 1;
}
.slick-prev {
    left: 10px;
}
.slick-next {
    right: 10px;
}*/



/************access***********/
.access{
	margin-bottom: 100px;
    position: relative;
}
.access::before{
    content: "";
    width: 100%;
    height: 95%;
    position: absolute;
    top: -15%;
    left: 0;
    z-index: -99;
    background-color: #E2E1DC;
}
.map-wrap{
  width: 100%; 
}
.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
}
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.map_content{
	width:89.33%;
	margin: 0 auto;
	margin-top: 50px;
}
.map_content h2{
	margin-bottom: 50px;
}
.map_content ul{
	padding-bottom: 25px;
}
.address{
	position: relative;
}
.address::after{
	content: "";
	position: absolute;
	width: 100%;
	height: 0.5px;
	background: #505A5F;
	bottom: 0;
	left: 0;
	
}
.car{
	margin-top: 25px;
}
.car li:first-child{
    margin-bottom: 20px;
}
@media screen and (min-width: 520px){
}
@media screen and (min-width: 960px){
    .access{
	margin-bottom: 200px;
}
    .access_inner{
        width: 75%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items:stretch;
    }
.map-wrap {
  width: 57.013%;
    max-width: 821px;/* ここに横幅を指定 */
}
 
/* Google Mapを囲う要素 */
.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
}
 
/* Google Mapのiframe */
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
    .map_content{
        width:34.166%;
        max-width: 492px;
        margin-top: 0px;
        padding: 0 20px;
    } 
    .map_content h2{
        margin-bottom: 100px;
    }
    .access::before{
    content: "";
    width: 100%;
    height: 60%;
    position: absolute;
    top: -1%;
    left: 0;
    z-index: -99;
    background-color: #E2E1DC;
}
}

/************recruit***********/
.recruit{
	margin-bottom: 100px;
}
.recruit h2{
	text-align: center;
	margin-bottom: 50px;
}
.recruit_img{
	position: relative;
	padding-bottom: 50px;
}
.scroll {
position: absolute;
bottom: 0;
left: 0;
margin : 0 auto;
width : 100%;
font-size : 62px;
font-family: "EB Garamond", serif;
text-transform:uppercase;
text-align : center;
overflow : hidden;
color: #E2E1DC;
}
.scroll .scrolltxt{
margin:0;
display : inline-block;
/*padding-left: 100%;*/
white-space : nowrap;
line-height : 1em;
animation : scroll 80s linear infinite;
}
.scroll .scrolltxt span{
display:inline;
margin:0 10px 0 0;
}
.staff_scroll{
	height: fit-content;
    font-size:74px;
    position: absolute;
    color: #FAFAFA;
    bottom: 0;
    z-index: -1;
	transform: translateY(50%);
}
    .recruit_scroll{
        color: #E2E1DC;
    }  
.recruit_img a{
	display: block;
	width: fit-content;
}
.recruit_img .mask {
    position: relative;
	display: inline-block;
	width: fit-content;
	height: 100%;
    transition: .3s ease-in-out;
    line-height: 0;
}
.recruit_img:hover .mask::before{/*hoverした時の変化*/
	content:"";
	position: absolute;
	z-index:2;
	top:0;
	left:0;
	width: 100%;
    height: 100%;
	background: linear-gradient(45deg,rgba(0,0,0,0.6),rgba(0,0,0,0.6));/*背景色（グラデーション）*/
}
.recruit_img img {
    opacity: 1;
    transition: .3s ease-in-out;
}

.recruit_img span.cap {
    opacity: 0;
    transition: .5s ease-in-out;
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    line-height: 1.5;
	font-family: "Noto Serif JP", serif;

	
}
.recruit_img:hover span.cap{/*hoverした時の変化*/
	opacity:1;
}

@keyframes scroll{
0% { transform: translateX(20%)}
100% { transform: translateX(-100%)}
}
.recruit li:first-child{
	text-align: center;
}
.recruit li:nth-child(2),.recruit li:nth-child(3){
	margin: 10px 0;
	text-align: end;
}
.recruit li:nth-child(3){
	text-align: end;
}
.recruit ul{
	width:89.33%;
	margin: 0 auto;	
}
.recruit ul li .contact{
	display: inline;
}
.recruit ul li .contact:hover{
	opacity: 0.6;
}
@media screen and (min-width: 520px){

}
@media screen and (min-width: 960px){
    .recruit_img{
        text-align: center;
    }
    .recruit_img a{
        width: 52.55%;
        max-width: 1009px;
		margin: 0 auto;
        
        
    }
    .scroll {
        font-size: clamp(90px, 3.733333333333334vw, 128px);
        z-index: -1;
}
    .recruit_scroll{
        top: 26%;
    }
    .recruit ul{
        width: 52.55%;
        max-width: 1009px;
        margin: 0 auto;
    }
    .recruit_text{
        position: absolute;
        font-size: 24px;
        font-family: "Noto Serif JP", serif;
        top:0;
        right: 18%;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
    }
    

}





/************footer***********/
footer{
    width: 100%;
	background: #F9F9FC;
}
.footer_inner{
	width: 57.6%;
    max-width: 299px;
	margin: 0 auto;
	padding-top: 100px;
    padding-bottom: 100px;
}
.footer_info{
	margin-bottom: 50px;
}
.footer_info li ul li:nth-child(3){
	text-align: end;
}
.footer_info li ul li:nth-child(3)::after{
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-left: 10px;
	background: url("img/gaubu_icon.png");
	background-size: contain;
}
.footer_info li,.footer_link li{
	margin-bottom: 15px;
}
.footer_info li ul li{
	margin-bottom: 0px;
}
.footer_logo{
    max-width: 216px;
    margin: 0 auto;
}
.footer_link li{
    font-family: "EB Garamond", serif;
    text-transform:capitalize;

}
.footer_link li a span{
    text-transform:uppercase;
}
.footer_link li::after{
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-left: 10px;
	background: url("img/gaubu_icon.png");
	background-size: contain;
}

.tel::before{
    content: "";
    display: inline-block;
    width: 19px;
    height: 19px;
	margin-right: 10px;
	background: url("img/tel_icon.svg");
	background-size: contain;	
}
.recruit ul li.recruit_tel{
    font-size: 18px;
    letter-spacing: 0.16em;
    margin-top: 25px;
}
.recruit_tel::before{
    margin-right: 19px;
}
/*.line::before{
    content: "";
    display: inline-block;
    width: 19px;
    height: 19px;
	margin-right: 10px;
	background: url("img/line.svg");
	background-size: contain;	
}*/
.sns{
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 40px 0;
}
.sns li:first-child{
    margin-right: 15px;
}
.sns li:last-child{
    margin-left: 15px;
}
.sns li a{
    display: inline-block;
    width: 23px;
    height: 23px;
    
}
.footer_copyright{
    text-align: center;
     font-family: "EB Garamond", serif;
    text-transform: uppercase;
}
@media screen and (min-width: 520px){
    

}
@media screen and (min-width: 960px){
    .footer_inner{
        width: 31.5625%;
        max-width: 606px;
        min-width: 606px;
    }
    .footer_info_wapper{
        display: flex;
        justify-content: space-around;
        align-items: center;
    }
    .footer_info{
        width: 216px;
        margin-bottom: 0;
    }
    .footer_link{
        width: 160px;
    }
    .footer_nav_pc ul{
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 80px;
    }
    .footer_nav_pc ul li{
        font-family: "EB Garamond", serif;
    text-transform: uppercase;

    }
}




/*****************************
************ILKA***********
******************************/

/************top***********/
#ilka .mv_wapper{
    margin-bottom: 100px;
}
#ilka .mv_wapper .mv{
    width: 70.93%;
    position: relative;
}
#ilka .mv_wapper .mv_copy_wapper{
    position: absolute;
    width: 66.4%;
    height: 98px;
    min-width: 249px;
    background: #fff;
    display: grid;
    place-items: center;
    top: 62%;
    right: 3%;
    
    
}
#ilka .mv_wapper .mv_copy{
    position: static;
}


#ilka .mv_copy p{
    text-transform: capitalize;
}
    #ilka .mv_wapper .mv_copy p{
        text-transform: capitalize;
        font-size: clamp(24px, 3.733333333333334vw, 42px);
        transform: translateY(10px);
     
    }
    #ilka .mv_copy p span{
        text-transform:uppercase;
    }
#ilka .mv_copy p::after{
        width: 23%;
        max-width: 142.89px;
        max-height: 71.78px;
        top: -42%;
        right: -12%
        
    }
#ilka .mv_wapper .mv_copy .border{
    position: static;
    margin-left: 15%;
   
}
#ilka .mv_wapper .mv_copy p::after{
    top:2%;
    right: -7%;
}
@media screen and (min-width: 520px){
    #ilka .mv_copy p::after{
        width: 40%;
        max-width: 142.89px;
        max-height:91.78px;
        top: -42%;
        right: -12%
        
    }

}
@media screen and (min-width: 960px){
    
    
    #ilka header{
    margin-bottom: 200px;
}
    
    #ilka .mv_copy{
        width: 300px;
        margin: 80px 80px 0 auto;
    }
    
    #ilka .mv_copy p::after{
        width: 35%;
        max-height: 106.78px;
        top:0%;
        right: -24%;
    }
    #ilka .border{
        width: 270px;
        top:71%;
        left: calc(50% - 122px);
    }
    #ilka h1{
        text-align: end;
        margin: 0 auto 0 0;
    }
    

}
@media screen and (min-width: 960px){
    #ilka .mv_copy{
        margin: 80px 134px 0 auto;
    }
}
@media screen and (min-width: 1440px){
    #ilka .mv_copy{
        width: 489px;
       
    }
    #ilka .mv_copy p::after{
        top:-18%;
        right: -9%;
    }
    #ilka .border{
        width: 421px;
        top: 62%;
        left: calc(50% - 165px);
    }
    #ilka .mv_copy p::after{
        width: 33%;
        max-width: 142.89px;
        max-height: 156px;
        top: -42%;
        right: -12%
        
    }
    
}
@media screen and (min-width: 1815px){
    #ilka .mv_copy{
        
    }
    
}

/************news***********/
.news{
    width: 88.8%;
    min-width: 333px;
    margin: 0 auto 100px;
}
.h2_wapper_inner{
    position: relative;
    width: 200px;
    margin: 0 0 50px 0;
    
}
.h2_border {
    /* content: ''; */
    width: 86%;
    height: 0.42px;
    display: inline-block;
    background-color: #505A5F;
    position: absolute;
    bottom: -5%;
    left: calc(50% - 75px);
}

.news_inner{
    width: 92.49%;
    min-width: 308px;
    margin-bottom: 50px;
}
.news_box1,.news_box2,.news_box3{
    padding: 20px 10px;
    border-bottom: #ECECEC 1px solid;
}
.news_inner time{
    font-size: 12px;
    color: #A4B1B7;
    
}
.news_inner p{
    margin-top: 20px;
}
.news_inner p:hover{
	opacity: 0.6;
}
@media screen and (min-width: 520px){

}
@media screen and (min-width: 960px){
    
    .news{
        margin-bottom: 250px;
    }
    .h2_wapper{
        width: 93.15%;
        max-width:1416px;
        margin: 0 0 0 auto;
        
    }
    .h2_wapper_inner{
    
    margin: 0 0 100px 0;
    
}
    .news_inner{
        width: 59.47%;
        max-width: 904px;
        margin: 0 auto;
        margin-bottom: 100px;
    }
    .news_box1 a,.news_box2 a,.news_box3 a{
        padding: 20px 40px;
        display: flex;
        align-items: center;
    }
    .news_inner p{
    margin-top: 0px;
        margin-left: 100px;
}
    .news_veiwmore_wapper{
        width: 90%;
        /*min-width:910px;*/
        margin: 0 auto;
        
    }

}
@media screen and (min-width: 1550px){
    #ilka #news{
    width: 1520px;
        margin: 0 auto;
    }
    
    
}
/************concept***********/
#ilka .concept_h2_wapper{
    width: 88.8%;
    min-width: 333px;
    margin: 0 auto;
}
#ilka .ilka_concept_img_sp,.ilka_concept_img{
    position: relative;
    z-index: -1;
}
#ilka .ilka_concept_img_sp .ilka_concept_img_1{
    width: 49.066%;
    min-width: 184px;
    max-width: 263px;
    position: absolute;
    top:0;
    right: 6%;
    z-index: 99;
}
#ilka .ilka_concept_img_sp .ilka_concept_img_2{
    padding-top: 100px;
}
#ilka .concept_p{
    margin-bottom: 50px;
}
/* カルーセル全体 */
.carousel {
  /* 水平方向中央寄せ */
  display: flex;
  justify-content: flex-start;
	margin-bottom: 100px;
}
/* カルーセル内容 */
.contains {
  /* サイズは自由に変更してください。*/
  /* 下の.slideも同じサイズにしてください。 */
	
  width: 317px;
  height: 435px;
	
  overflow: hidden;
  position: relative;
  padding: 0;
  list-style: none;
}
/* スライド切り換え用ラジオボタンは常に非表示 */
.slide_select {
  display: none;
}
/* 各スライド */
.slide {
  /* サイズは自由に変更してください。*/
  /* 上の.containsも同じサイズにしてください。 */
  
  width: 317px;
  height: 435px;
  position: absolute;
  /* スライドの初期値は選択されていないので透明にしておく */
  opacity: 0;
	
}

/* 前へ次へボタン */
.scroll_button {
  position: absolute;
  display: block;
  height: 15px;
  width: 15px;
  /* 縦中央から20px上の位置 */
  top: 50%;
  margin-top: -20px;
/* 上辺と右辺のみ幅5pxの枠線 */
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  cursor: pointer;
  /* 普段はボタンはやや薄くする */
  /*opacity: 0.5;*/
  /* スライドよりも前面にする */
  z-index: 3;
}
/* ホバー時にボタンを強調 */
.scroll_button:hover {
  opacity: 1;
}
/* 前へボタン */
.scroll_prev {
  left: 15px;
  /* 上辺と右辺の枠線を回転して"＜"にする */
  transform: rotate(-135deg);
}
/* 次へボタン */
.scroll_next {
  right: 15px;
  /* 上辺と右辺の枠線を回転して"＞"にする */
  transform: rotate(45deg);
}
/* スライド移動ボタンエリア */
.move_controler {
  position: absolute;
  bottom: 20px;
  width: 100%;
  text-align: center;
}
/* スライド移動の各ボタン */
.button_move {
  display: inline-block;
  height: 5px;
  width: 5px;
  margin: 0 2px;
  border-radius: 100%;
  cursor: pointer;
  /* 普段はやや薄くする */
  opacity: 0.5;
  /* スライドより前面にする */
  z-index: 2;
}
/* ホバー時はやや明るくする */
.button_move:hover {
  opacity: 0.75;
}
/* スライド移動ボタンの色 */
.button_move {
  background-color: #505A5F;
}
/* 1番目のスライド選択時 */
/* 1番目のスライドの透明度を0にして表示する */
.slide_select:nth-of-type(1):checked ~ .slide:nth-of-type(1) {
  opacity: 1;
}
/* 1番目のスライドの前へ次へボタンの領域を */
.slide_select:nth-of-type(1):checked
  ~ .move_controler
  .button_move:nth-of-type(1) {
  opacity: 1;
}
.slide_select:nth-of-type(2):checked ~ .slide:nth-of-type(2) {
  opacity: 1;
}
.slide_select:nth-of-type(2):checked
  ~ .move_controler
  .button_move:nth-of-type(2) {
  opacity: 1;
}
.slide_select:nth-of-type(3):checked ~ .slide:nth-of-type(3) {
  opacity: 1;
}
.slide_select:nth-of-type(3):checked
  ~ .move_controler
  .button_move:nth-of-type(3) {
  opacity: 1;
}
.slide_select:nth-of-type(4):checked ~ .slide:nth-of-type(4) {
  opacity: 1;
}
.slide_select:nth-of-type(4):checked
  ~ .move_controler
  .button_move:nth-of-type(4) {
  opacity: 1;
}

#ilka .features li {
	width: 89.333%;
	max-width: 690px;
	margin: 0 auto 76px;
}
#ilka .features li h3{
	margin-bottom: 30px;
}
#ilka .contain_outer{
    position: relative;
}
#ilka .contains_wapper{
    margin-bottom: 100px;
    padding-bottom: 100px;
    position: relative;
}
#ilka .contains_wapper::before{
    content: "";
    width: 100%;
    height: 85%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -99;
    background-color: #E2E1DC;
}
#ilka .ilka_concept_scroll{
    color: #fff;
    bottom: -1%;
    
    
}
@media screen and (min-width: 520px){
    #ilka .ilka_concept_img_sp .ilka_concept_img_2{
    padding-top: 200px;
        
}
    #ilka .concept_p{
        margin-top: -38%;
       margin-bottom: 200px;
        
    }
	.carousel {
  margin-left: 0;
	
}
	.contains {
  width: 548px;
  height: 569px;
        padding-left: 100px;
}
	.contains::before{
        content: "";
        display: inline-block;
        position: absolute;
        background: url("img/ilka_concept_ring.svg")no-repeat;
        width: 100%;
        height: 100%;
        min-width: 68.83px;
        min-height: 68.78px;
        max-width: 193.38px;
        max-height: 193.22px;
        bottom: 0;
        left: 0;
        background-size: contain;
        vertical-align: middle;
        z-index: 999;
        animation:20s linear infinite rotation;
    
	}
    @keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}

.slide {
  width: 434px;
  height: 569px;	
}

}
@media screen and (min-width: 960px){
    #ilka .ilka_concept_img .ilka_concept_img_1{
    width: 28.42%;
    min-width: 184px;
    max-width: 432px;
    position: absolute;
    top:-50%;
    right: 6%;
        
    }
    #ilka .ilka_concept_img .ilka_concept_img_2{
        width: 93.157%;
        max-width: 1416px;
        margin: 0 auto;
    }
    #ilka .concept_p{
        margin:150px auto;
    }
    .line_scroll {
        width: 1px;
        height: 100px;
    position  : absolute;
    font-size : 13px;
    writing-mode : vertical-rl;
    bottom: -8%;
    left : 50%;
    transform: translateX(-50%) translateY(-50%);
        animation: line_scroll 1.5s infinite;
        z-index: 99;
        background: #505A5F;
}
    
    @keyframes line_scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
    .contains_wapper{
        display: flex;
        justify-content: space-around;
        align-items: center;
    }
    .contains{
        width: 558px;
        height: 595px;
        padding: 43px 55px 0 100px;
        
    }
    .contains::after{
        content: "";
        display: inline-block;
        position: absolute;
        background: url("img/element.svg")no-repeat;
        width: 100%;
        height: 100%;
        background-size: contain;
        vertical-align: middle;
        z-index: 1;
        max-width: 203px;
        top: -3%;
        right: 0%;
        
    }
    .slide{
        width: 402px;
        height: 552px;
    }
    .features{
    height: 595px;
    overflow: scroll;
        /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
  -ms-overflow-style: none;
  /*Firefoxへの対応*/
  scrollbar-width: none;
}
    #ilka .contains_wapper::before{
    width: 95%;
    right: 0;
        left: unset;
        height: 120%;
    
}
      

 /*Google Chrome、Safariへの対応*/
.features::-webkit-scrollbar{
  display: none;
}
}
@media screen and (min-width: 1275px){
    .features{
        overflow: visible;
    }
}
@media screen and (min-width: 1520px){
    .contains{
        width: 828px;
        height: 969px;
        padding: 43px 55px 0 100px;
        
    }
    .slide{
        width: 673px;
        height: 925px;
    }
}


/************menu***********/
.menu_inner{
    width: 94.666%;
    margin: 0 auto;
    min-width: 355px;
    margin-bottom: 100px;
}
.menu_inner table{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    table-layout: fixed; 
    border-bottom: #505A5F 1px dotted;
    text-align: center;
    
}

.menu_inner table tbody tr th,.menu_inner table tbody tr td{
     padding:0 0 35px 0;
   
}
.menu_inner table tbody th{
    margin-right: 50px;
    font-family: "Noto Serif JP", serif;
    
}

.menu_inner caption {
    
    font-size: 18px;
    font-family: "Noto Serif JP", serif;
    font-weight: bold;
    margin: 35px 0 15px;
}
.menu_veiwmore_wapper{
    text-align: center;
}
.menu{
    margin-bottom: 100px;
}
#ilka .menu .h2_wapper {
    width: 88.8%;
    min-width: 333px;
    margin: 0 auto;
}
@media screen and (min-width: 1440px){
    #ilka .menu .h2_wapper{
        width: 79.166%;
        max-width: 1520px;
        margin: 0 auto;
    }
    .menu_inner table{
        max-width: 452px;
}
    .menu_inner{
        display: flex;
        justify-content: space-around;
        align-items: center;
    }
    
    .menu_veiwmore_wapper {
    text-align: end;
        width: 94.666%;
    margin: 0 auto;
    min-width: 355px;
    margin-bottom: 100px;
}
    
}
/************staff***********/
#ilka .staff h2,#ilka .instagram h2{
    text-align: unset;
}
#ilka .staff .h2_wapper {
    width: 88.8%;
    min-width: 333px;
    margin: 0 auto;
}
@media screen and (min-width: 960px){
#ilka .staff_scroll{
    position: absolute;
    bottom: 50%;
    color: #E2E1DC;
}
}
@media screen and (min-width: 960px){
    #ilka .staff .h2_wapper{
        width: 79.166%;
        max-width: 1520px;
        margin: 0 auto;
    }
    
}


/************instagram***********/
#ilka .instagram .h2_wapper {
    width: 88.8%;
    min-width: 333px;
    margin: 0 auto;
}
@media screen and (min-width: 960px){
    #ilka .instagram .h2_wapper{
        width: 79.166%;
        max-width: 1520px;
        margin: 0 auto;
    }
    
}


/*****************************
************lef***********
******************************/

/************top***********/
#ilka #lef_header .mv_wapper .mv_copy p::after{
	display: none;
}
#ilka #lef_header .mv_copy_wapper .mv_copy .mv_copy_p::after {
    content: "";
    display: inline-block;
    position: absolute;
    background: url(img/top_ring.svg) no-repeat;
    width: 29.77%;
    height: 317%;
    min-width: 66.57px;
    min-height: 66.51px;
    bottom: -152%;
    right: -3%;
    background-size: contain;
    vertical-align: middle;
}
#ilka #lef .instagram {
    padding-bottom: 100px;
}
.features h3{
	text-transform: capitalize;
}
#ilka #lef .contains_wapper::before{
    
    background-color: #DADADA;
}
#ilka #lef .instagram::before {
    background-color: #DADADA;
}
#ilka #lef .access::before{
    
    background-color: #DADADA;
}
@media screen and (min-width: 520px){
	#ilka #lef_header .mv_wapper .mv_copy_wapper{
		height: 138px;
	}
}
@media screen and (min-width: 960px){

#lef_header .header_consept_wapper{
	background: url("img/lef_top_img.jpg") no-repeat;
	background-size: contain;
}
	#ilka #lef_header .mv_wapper_pc {
       
        right: 7%;
    }
	#ilka #lef_header .border {
        width: 303px;
    }
#lef_header .mv_copy {
        width: 100%;
        margin: 80px 97px 0 auto;
    }
#ilka .instagram .ig_ilka_reverse .ig_photo{
		margin: 0 0 0 auto;
	}
	}
@media screen and (min-width: 1440px){
	
	#ilka #lef_header .border {
        width: 421px;
        top: 69%;
        left: calc(50% - 165px);
    }
    #ilka #lef_header .mv_copy p::after{
        max-height: 145px;
    }
    #ilka #lef_header.mv_copy p::after {
        top: -39%;
        right: -13%;
    }
}

/*****************************
************recruit***********
******************************/

/************top***********/

@media screen and (min-width: 960px){
	    #ilka #recruit_header .header_consept_wapper {
        background: url("img/recruit_top_img.jpg") no-repeat;
        background-size: contain;
        position: relative;
    }
	#ilka #recruit_header .mv_copy {
        width: 309px;
    }
	#ilka #recruit_header .border {
        width: 323px;
        top: 72%;
        left: calc(50% - 142px);
    }
	#recruit_header .mv_wapper_pc .mv_copy p::after {
        width: 34%;
        right: -26%;
    }
}
@media screen and (min-width: 1440px){
	#recruit_header .mv_wapper_pc {
        
        right: 3%;
    }
	#ilka #recruit_header .mv_copy {
        width: 441px;
    }
    
    #ilka #recruit_header .border {
        width: 438px;
        top: 72%;
        left: calc(50% - 187px);
    } 
	#recruit_header .mv_wapper_pc .mv_copy p::after {
        width: 27%;
		right: -20%;
        
    }
	
	}
	
	/************concept***********/
#recruit .h2_wapper_inner{
	margin-bottom: 0px;
}
#recruit .h2_wapper_inner h2{
	margin-bottom: 0.5rem;
}
#recruit .concept_h2_wapper{
	margin-bottom: 100px;
}
#recruit .concept_h2_wapper p{
	width: 200px;
	text-align: end;
	margin-top: 1rem;
	font-family: "EB Garamond", serif;
    text-transform: uppercase;
}
.catch{
	width:  73.333%;
	min-width: 275px;
	margin: 0 auto 73px;
}

#recruit .recruit_concept .ilka_concept_img_sp{
	background: url("img/recruit_concept_img_sp@2x.jpg") no-repeat;
	background-size: cover;
	height: 80vh;
	margin-top: 200px;
	margin-bottom: 100px;
	position: relative;
	background-attachment: fixed;
}
#ilka #recruit .ilka_concept_img_sp .ilka_concept_img_1 {
    width: 21.066%;
    min-width: 146px;
    max-width: 263px;
    position: absolute;
    top: -19%;
    right: 3%;
}
#ilka #recruit .ilka_concept_img_sp p{
	width: 62.666%;
	min-width: 235px;
	position: absolute;
	bottom:3%;
	right: 4%;
	color: #fff;
	
}
@media screen and (min-width: 600px){
	#recruit .recruit{
		
	}
	#recruit .recruit_concept .ilka_concept_img_sp{
	/*height: 119vh;*/
		background-attachment: fixed;
	
}
}
@media screen and (min-width: 960px){
    
	#recruit .ilka_concept_img_sp, .ilka_concept_img {
    
    z-index: unset;
		
    
}
	#recruit .recruit_info{
		width:79.166%;
		margin: 0 auto 300px;
		max-width: 1520px;
		height: 60vh;
		position: relative;
		
	}
	#recruit .recruit_info .h2_wapper_inner{
		margin-bottom: 0;
		
	}
	#recruit .recruit_info .concept_h2_wapper .h2_wapper_inner{
		width: unset;
		height: 263px;
		position: relative;
		margin-right: 40px;
		
	}
	#recruit .recruit_info .concept_h2_wapper .h2_wapper_inner .h2_border {
    content: '';
    width: 0.42px;
    height: 86%;
    display: inline-block;
    background-color: #505A5F;
    position: absolute;
    bottom: 0/*calc(50% - 75px)*/;
    right: 0;
		left: 169%;
		
}
	#recruit .recruit_info .concept_h2_wapper p{
		text-align: end;
		width: unset;
		height: 263px;
		
	}
	#recruit .recruit_info .concept_h2_wapper{
		writing-mode: vertical-lr;
		margin: unset;
	}
	.catch{
	/*width: 37.864%;*/
		max-width: 727px;
	margin: unset;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, 5%);
}
	.recruit_concept_p_wapper{
		background: url(img/recruit_bg.png) no-repeat;
        background-size: cover;
        background-attachment: fixed;
        padding: 200px 0 300px;
	}
	.recruit_concept_p{
		width: 79.166%;
		max-width: 1520px;
		margin: 0 auto;
		
		
	}
	.recruit_concept_p1,.recruit_concept_p2,.recruit_concept_p3{
		position: relative;
		height: 50vh;
		display: flex;
		justify-content: center;
		align-items: center;
		
	}
	.recruit_concept_p .recruit_concept_p1 li:first-child{
		width: 23.815%;
		max-width: 362px;
		position: absolute;
		top: 0;
		left: 0;
		
	}
	
	
	.recruit_concept_p ul li:last-child{
		font-family: "Noto Serif JP", serif;
		font-size: 24px;
		margin: auto 0;
		
 
	}
	.recruit_concept_p ul li:last-child p{
		text-align: center;
	}
	.recruit_concept_p .recruit_concept_p2 .pic2,.recruit_concept_p .recruit_concept_p3 .pic4,.recruit_concept_p .recruit_concept_p3 .pic5{
		width: 16.447%;
		max-width: 250px;
		position: absolute;
	}
	.recruit_concept_p .recruit_concept_p2 .pic3{
		width: 26.776%;
		max-width: 407px;
		position: absolute;
	}
	.recruit_concept_p .recruit_concept_p3 .pic6{
		width: 12.5%;
		max-width: 190px;
		position: absolute;
	}
	.pic2{
		top: -23%;
        right: 14%;
	}
	.pic3{
		bottom: -28%;
		right: -10%;
		z-index: -1;
	}
	.pic4{
		top: 0;
		left: 0;
	}
	.pic5{
		bottom: -22%;
        right: 21%;;
	}
	.pic6{
		bottom: -41%;
        right: 10%;
	}
	
}

/***********message************/
.message{
	padding: 100px 0;
	background: #D9D9D9;
	position: relative;
    margin-bottom: 50px;
}
.message .concept_h2_wapper h2,.message .concept_h2_wapper p{
	color: #fff;
	
}
.message .concept_h2_wapper .h2_wapper_inner span.h2_border{
	background-color: #fff;
}
.rectuit_scroll .scrolltxt span{
	color: #fff;
}
.message_img{
	width: 75.7333%;
	min-width: 284px;
	margin: 0 auto 50px;
	
	
}
.message_img_inner{
    width: fit-content;
    position: relative;
}
.message_img p{
	position: absolute;
	left: 0%;
    bottom: 0%;
	font-family: "EB Garamond", serif;
	text-transform:uppercase;
	/*writing-mode:vertical-rl;*/
	transform: rotate(-90deg);
    transform-origin: left bottom;
	color: #fff;
	
}
.message_p{
	width: 89.0666%;
	min-width: 334px;
	background: #fff;
	margin: 0 auto;
}
.message_p p{
	width: 82.0359%;
	min-width: 274px;
	margin: 0 auto;
	padding: 2rem 0;
}
@media screen and (min-width: 960px){
    .message{
	padding: 150px 0;
        background: unset;
        margin-bottom: 100px;
	
}
    .message::before{
        content: "";
        position: absolute;
        width: 90vw;
        height: 100%;
        background: #D9D9D9;
        top:0;
        left: 0;
        z-index: -1;
    }
    .message_img{
	width: 34.895%;
	max-width: 670px;
        margin: 0;
}
    .message_p{
	width: 31.9791%;
        height: fit-content;
	max-width: 614px;
        margin: 0;
        margin-left: -10%;
        margin-bottom: -4%;
        z-index: 5;
        
}
    .message_p p{
	width: 67.426%;
	max-width: 414px;
        padding: 2rem 0;
}
    .message_inner{
        display: flex;
        justify-content: center;
        align-items: flex-end;
        
    }
    .message .rectuit_scroll{
        z-index: 0;
        bottom: -3%;
    }
}
@media screen and (min-width: 1660px){
    .message_p p{
        padding: 4rem 0;
}
}


/***********promise************/
.content_wapper{
    background-color: #E2E1DC;
}
.promise{
    padding-top: 100px;
    margin-bottom: 100px;
}
.promise_img{
    width: 77.333%;
    min-width: 290.71px;
    max-width: 290.71px;
    margin: 0 auto 50px;
}
.promise_p span {
    position: relative;
    padding: 1rem 1.5rem;
    font-size: 18px;
    
}
.promise_p span::before,
.promise_p span::after {
    position: absolute;
    top: 1.2rem;
    height: 1.3rem;
    content: '';
}

.promise_p span::before {
    border-left: solid 1px;
    left: 0;
    transform: rotate(-30deg);
}

.promise_p span::after {
    border-right: solid 1px;
    right: 0;
    transform: rotate(30deg);
}
.promise_p{
    width: fit-content;
    position: relative;
    padding: 1rem 1.5rem;
    font-size: 18px;
    font-weight: bold;
    font-family: "Noto Serif JP", serif;
    margin: 0 auto;
}

.promise_p::before,
.promise_p::after {
    position: absolute;
    top: 0.8rem;
    height: 1.8rem;
    content: '';
}

.promise_p::before {
    border-left: solid 1px;
    left: 0;
    transform: rotate(-30deg);
}

.promise_p::after {
    border-right: solid 1px;
    right: 0;
    transform: rotate(30deg);
}
.promise_img_box a img{
	position:relative;
	top:0;
}
.promise_img_box a img:hover{
	top:-10px;
	transition:0.3s;
}

@media screen and (min-width: 520px){
    .promise_img{
        width: 70.2604%;
        min-width: 456px;
        max-width: unset;
        margin: 0 auto;
        display: flex;
        justify-content:space-between;
        align-items: center;
        margin-bottom: 50px;
    
}
    .promise_img li{
        width: 28.5396%;
        min-width: 137.52px;
        max-width: unset;
    }
}
@media screen and (min-width: 960px){
    .promise{
        margin-bottom: 200px;
    }
    .promise_img{
        margin-bottom: 100px;
    
}
    .promise_img li{
        width: 28.5396%;
    }
}

/***********curriculum************/
.curriculum{
    margin-bottom: 100px;
}
.curriculum_p{
    width: 80.5333%;
    min-width: 302px;
    margin: 0 auto 50px;
}
.curriculum_img{
    width: 89.3333%;
    min-width: 335px;
    max-width: 501.76px;
    margin: 0 auto;
}

    @media screen and (min-width: 960px){
        .curriculum{
    margin-bottom: 200px;
}
        .curriculum_p{
    width: 30.9375%;
    max-width: 592px;
            min-width: 400px;
    margin: 0 auto 100px;
}
        .curriculum_img{
    width: 77.1354%;
    max-width: 1481px;
}
        
}

/***********benefit************/
.benefit{
    padding-bottom:  50px;
    margin-bottom: 50px;
}
.benefit ul{
        width: 79.1666%;
    max-width: 1520px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
    }
.benefit ul li{
    width: 77.4053%;
    min-width: 290.27px;
    /*max-width: 503.5px;*/
    max-width: 396px;
    margin: 0 auto 20px;
}
@media screen and (min-width: 960px){
    .benefit{
    padding-bottom:  100px;
    margin-bottom: 100px;
}
    
}

/***********employee_welfare************/
.employee_welfare{
    margin-bottom: 100px;
}


.employee_welfare_box1{
    width: 100%;
    height: 80vh;
    background: url("img/box1_img_sp@2x.jpg") center no-repeat;
    background-size: cover;
    background-attachment: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
    position: relative;
}
.box1_contents,.box2_contents{
    width: 87.2%;
    min-width: 320px;
    margin: 0 auto;
   
}
.box1_contents ul li,.box2_contents ul li{
    margin-bottom: 50px;
    /*display: flex;
    justify-content: space-around;*/
    display: table;
    
    
    
}
.employee_welfare_box2{
    width: 100%;
    height: 80vh;
    background: url("img/box2_img_sp@2x.jpg") left no-repeat;
    background-size: cover;
    background-attachment: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
}
.box_number{
    
    font-family: "Hina Mincho", serif;
    font-size: 48px;
    padding-bottom: 10px;
    padding-right: 25px;
    color: #fff;
    display: table-cell;
    vertical-align: middle;
    
}
.box_p{
    height: auto;
    padding-left: 25px;
    border-left: #fff 1px solid;
    display: table-cell;
    vertical-align: middle;
    
}
.box_p h3{
    font-size: 18px;
    font-family: "Hina Mincho", serif;
    margin-bottom: 0.5rem;
}

.box_p h3,.box_p p{
    color: #fff;
    
}
.employee_welfare_scroll{
    position: absolute;
    bottom: 0%;
    left: 0;
    transform: translateY(50%);
}
.employee_welfare_scroll .scrolltxt{
    color: #fff;
}

@media screen and (min-width: 960px){
    .employee_welfare_box1,.employee_welfare_box2{
    width: 89.583%;
    height: 65vh;
}
    .employee_welfare_box2{
        margin: 0 0 0 auto;
    }
    .box1_contents,.box2_contents{
    width: 27.0348%;
    min-width: 465px;
   
}
    .box1_contents{
       margin: auto 0 0 auto;
        padding-right: 50px;
    }
    .box2_contents{
       margin: auto auto 0 0; 
        padding-left: 50px;
    }
    .employee_welfare_scroll{
        z-index: 1;
    }
    
    
}

/***********interview************/
.Interview_inner{
    width: 75.7333%;
    margin: 0 auto;
}
.Interview_box1 ul li:first-child,.Interview_box2 ul li:first-child{
    position: relative;
    margin-bottom: 100px;
}
.interview_h4{
    width: 77.4647%;
    background-color: #fff;
    position: absolute;
    bottom: -10%;
    right: 0;
    
}
.interview_h4 h4 {
    font-size: 18px;
    text-align: center;
    margin: 0 auto;
    padding: 2rem 0;
}
.interview_p{
    margin-bottom: 1.25rem;
}
.interview_name{
    text-align: end;
    margin-bottom: 100px;
}
@media screen and (min-width: 520px){
    .interview_h4 h4 {
    font-size: 24px;
}
}
@media screen and (min-width: 960px){
    .Interview_inner{
    width: 79.1666%;
        max-width: 1520px;
        margin: 0 auto;
        display: flex;
        justify-content: space-around;
}
    .Interview_box1,.Interview_box2{
        width: 38.6842%;
    }
    
}

/***********guidelines************/
#recruit  .guidelines .concept_h2_wapper p{
	width: 304px;
}
#recruit  .guidelines .h2_border{
	width: 139%;
}
/* table01 */
#table01{
	margin: 0 auto 200px;
    width: 90%;
}
#table01 tr {
  border-bottom: 1px solid #b5b1b1;
}

#table01 th,
#table01 td {
  padding: 24px 0;
  border: none;
}

#table01 th {
  width: 30%;
}
#table01 .icon-line p{
    display: inline-block;
    font-family: "Noto Serif JP", serif;
}
#table01 th {
    font-family: "Noto Serif JP", serif;
  }

  

/* sp */
@media only screen and (max-width: 480px) {
  #table01 th,
  #table01 td {
    width: 100%;
    display: block;
  }

  #table01 th {
    width: 100%;
  }

  #table01 td {
    padding-top: 0;
  }
}

/*****************************
************icomoon***********
******************************/
@font-face {
  font-family: 'icomoon';
  src:  url('./css/fonts/icomoon.eot?9rmp9h');
  src:  url('./css/fonts/icomoon.eot?9rmp9h#iefix') format('embedded-opentype'),
    url('./css/fonts/icomoon.ttf?9rmp9h') format('truetype'),
    url('./css/fonts/icomoon.woff?9rmp9h') format('woff'),
    url('./css/fonts/icomoon.svg?9rmp9h#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-line:before {
    font-size: 23px;
  content: "\e900";
  color: #505a5f;
}
.icon-line_18:before{
    font-size: 18.5px;
  content: "\e900";
  color: #505a5f;
    margin-right: 10px;
}
.icon-instagram:before {
  content: "\ea92";
    font-size: 23px;
    color: #505a5f;
}
.icon-instagram_ig:after{
   content: "\ea92";
    font-size: 23px;
    color: #505a5f; 
}

/*****************************
************icomoon_fin********
******************************/

/***************************************
***************************************
**********ハンバーガーメニュー＊＊＊＊＊＊＊＊*/
#g-nav{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 999;
    /*ナビのスタート位置と形状*/
	top:-120%;
    left:0;
	width:100%;
    height: 100vh;/*ナビの高さ*/
	background:#E2E1DC;
    /*動き*/
	transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    top: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
	display: block;
    z-index: 999;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}

/*リストのレイアウト設定*/

#g-nav li{
	list-style: none;
    text-align: center; 
}

#g-nav li a{
	width: 150px;
	color: #505A5F;
	text-decoration: none;
	padding:10px;
	display: block;
	text-transform: uppercase;
    font-family: "EB Garamond", serif;
	letter-spacing: 0.1em;
	font-weight: bold;
}

/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:absolute;
    z-index: 9999;/*ボタンを最前面に*/
	top:50%;
	right: 10px;
    transform: translateY(-50%);
	cursor: pointer;
    width: 50px;
    height:50px;
}
	
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #666;
  	width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;	
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}

/***************************************
***************************************
**********ハンバーガーメニュー_fin**********/