@charset "UTF-8";
/* CSS Document */


* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;	
}
body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight:400;
	color: #fff;
	font-size: 16px;
	-webkit-font-smoothing: antialiased;/*アンチエイリアスを滑らかに*/
	-moz-osx-font-smoothing: grayscale;
	line-height: 2;  
    background:#0a0f23;
  letter-spacing: 0.2rem;
}
.en{
  font-family: "Cormorant Garamond", serif;
  font-weight: 700;
  font-style: normal;    
}
.jp{
  font-family: "Noto Serif JP", serif;    
}

.fullscreenmenu{
display: none;
}
	.h100{
height: 100px;		
	}
	.h50{
height: 50px;		
	}
	.h30{
height: 30px;		
	}	
	.h20{
height: 20px;		
	}
	.h10{
height: 10px;		
	}

a{
	text-decoration: none;	
}
li{
	list-style-type: none;
}

section{
padding: 100px 0;    
}
.center_box{
  width: -moz-fit-content;
width: fit-content;  
margin: 0 auto;
display: block;   
}

.headline{
color: #fff;
font-size: 1.5rem;
text-align: center;  
position: relative;
text-align: left;
padding-left: 30px; 
padding-bottom: 5px;    
border-bottom: solid 1px #1E2C66;   
font-family: "Noto Serif JP", serif;       
}
.headline::after{
content: "";
position: absolute;
top: 50%;
left: 0;
width: 20px;
height: 20px;
background:#CCAF3B;  
-webkit-transform : translateY(-50%);
transform : translateY(-50%);      
}
.text-shadow {
text-shadow: 
       1px  1px 1px #ffffff,
      -1px  1px 1px #ffffff,
       1px -1px 1px #ffffff,
      -1px -1px 1px #ffffff,
       1px  0px 1px #ffffff,
       0px  1px 1px #ffffff,
      -1px  0px 1px #ffffff,
       0px -1px 1px #ffffff;   
    }
.text1{
font-size: 1rem;   
}
.text1 strong{
font-size: 1.5rem;    
display: block;    
}

.text2{
font-size: 1.3rem;    
    
}

.text3{
font-size: 1.8rem;    
}
.sp_l{
      text-align: center;
    }

.tb_l{
      text-align: center;
    }
.tb_r{
  text-align: center; 
}
.pc_kigyo{
display: block;    
}
.pc_kaigyo{
display: block;    
}
.background1{
width: 100%;
display: block;
background-color: #01011A;
}

.flex-box1{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:space-between;
align-items:center;    
}
.flex-box2{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:center;    
}
.flex-box3{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:flex-start;    
}
.flex-box4{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:space-between;
align-items:stretch;    
}
/*TOPスライダー*/
.slider{
width: 100%;
  height:100vh;
position: relative;
    	overflow: hidden;
}
.slider:before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(#000), to(transparent));
    background: linear-gradient(to bottom, #000, transparent);
    opacity: 0.4;
    z-index: 2;
}
.slider-box{
width: 100%;
  height:100vh;    
background: url("../img/top1.webp");
background-position: center;
background-size: cover;    
}
.slider-box h2{
position: absolute;
bottom: 5%;
right: 3%;
font-size: 3rem;
color: #fff; 
  font-family: "Noto Serif JP", serif;   
text-shadow: 2px 2px 5px #000;
}
.vegas-slide-inner{
width: 100%;
position: absolute;
bottom: 0;
    width: 100%;
    height: 100vh;
     animation: fadeIn1 40s forwards;    
    animation-play-state: running;    

}
.slider-box p {
position: absolute;
font-size: 3rem;
bottom:15%;
left:3%;
color: #fff;
line-height: 1.7;   
letter-spacing: 0.3rem;    
text-shadow: 2px 2px 15px #333;    
font-weight: 600;
font-family: "Noto Serif JP", serif; 
text-align: left;    
width: 90%;    
z-index: 5;
text-shadow: 2px 2px 10px #000;    
}

@keyframes fadeInOut {
  0% {
    opacity:0.5;
    
  }  
  50% {
    opacity:0.5;
  } 
  100% {
    opacity: 1;
  }    
}
@keyframes fadeIn1 {
  0% {
    transform:scale(1);
  }  

  100% {
     transform:scale(1.2);  
  }    
}
#splash{
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background-color: #000;
	text-align:center;
	color:#fff;
}
.splash_img{
width: 100%;
height: 100%;
object-fit: cover;    
background: url("../img/top2.webp");
background-size: cover;
background-position: center;  
opacity: 0.5;
}
#splash_logo{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	animation: load_apper 1s ease-in-out;/*ロゴが現れるまでの時間(◯秒かけて出現)*/
}
#splash_logo img{
	display: block;
	width: 100%;
}

.loading_text{
	position: absolute;
    text-align: center;
	z-index: 3;
    width: 100%;
    top: 65%;
    left: 50%;
    -webkit-transform : translate(-50%,-50%);
transform : translate(-50%,-50%);  
	font-size: 2rem;
    line-height: 1.4;
    letter-spacing: 0.05em;
    font-family: "Noto Serif JP", serif!important;     
    width: 100%;
}

@keyframes text_apper1{
	0% {
		opacity: 0;
	}
	50%{
		opacity: 0;
		transform: translateY(-10%);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}
@keyframes text_apper2{
	0% {
		opacity: 0;
        transform: translateX(-10%);
	}
	50%{
		opacity: 0;
		
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}



/*パンクズ */
.breadcrumb {
position: absolute;
bottom: 1%;
left:1%;  
z-index: 10;    
}

.breadcrumb li {
  display: inline;/*横に並ぶように*/
  list-style: none;
font-size: 0.8em;
color: #fff;   
}

.breadcrumb li:after {/* >を表示*/
  content: '>';
  padding: 0 0.2em;
color: #fff;
}

.breadcrumb li:last-child:after {
  content: '';
}
.breadcrumb .item_text{
color: #fff;    
}
.breadcrumb li a {
  text-decoration: none;
  color: #fff;
}
.breadcrumb li a:hover {
  text-decoration: underline;
}

/*スクロールダウン全体の場所*/
.scrolldown2{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	bottom:50px;
	left:50%;
}

/*Scrollテキストの描写*/
.scrolldown2 span{
    /*描画位置*/
	position: absolute;
	left:10px;
	bottom:20%;
    /*テキストの形状*/
	color: #fff;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
	/*縦書き設定*/
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;

}

/* 丸の描写 */
.scrolldown2:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom:0;
    left:-4px;
    /*丸の形状*/
	width:10px;
	height:10px;
	border-radius: 50%;
	background:#fff;
    /*丸の動き1.6秒かけて透過し、永遠にループ*/
	animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
      0%{bottom:45px;}
     100%{bottom:-5px;}
 }

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
      0%{opacity:0}
     50%{opacity:1;}
    80%{opacity:0.9;}
	100%{opacity:0;}
 }

/* 線の描写 */
.scrolldown2:after{
	content:"";
    /*描画位置*/
	position: absolute;
	bottom:0;
	left:0;
    /*線の形状*/
	width:2px;
	height: 50px;
	background:#fff;
}



.midashi_l h2{
width: 100%;     
font-size: 1rem;		
text-align:left;	   
color: #fff;  
line-height: 1.2; 
position: relative;
}
.midashi_l .strong{
font-size: 5rem;		
color: #fff;   
display: block;    
text-align: left;  
  font-family: "Cormorant Garamond", serif;
  font-weight: 700;    
}
.midashi_l h2::after{
content: "";
position: absolute;
bottom:-20px;
left: 0;
width: 50px;
background: #CCAF3B;
height: 1px; 
}
.midashi_c h2{
width: 100%;     
font-size: 1rem;		
text-align:center;	   
color: #fff;  
line-height: 1.2; 
position: relative;     
}

.midashi_c .strong{
font-size: 5rem;		
color: #fff;   
display: block;    
text-align: center;    
  font-family: "Cormorant Garamond", serif;
  font-weight: 700;    
   
}
.midashi_c h2::after{
content: "";
position: absolute;
bottom:-20px;
left: 50%;
width: 50px;
background: #CCAF3B;
height: 1px; 
-webkit-transform : translateX(-50%);
transform : translateX(-50%); 
}
.midashi_cw h2{
width: 100%;     
font-size: 1rem;		
text-align:center;	   
color: #fff;  
line-height: 1.2; 
position: relative;     
}

.midashi_cw .strong{
font-size: 5rem;		
color: #fff;   
display: block;    
text-align: center;    
  font-family: "Cormorant Garamond", serif;
  font-weight: 700;    
   
}
.midashi_cw h2::after{
content: "";
position: absolute;
bottom:-20px;
left: 50%;
width: 50px;
background: #bababa;
height: 1px; 
-webkit-transform : translateX(-50%);
transform : translateX(-50%); 
}
.glad {
  background: linear-gradient(90deg,  #3B58CC, #2C4299, #1E2C66);
  background-size: 200% 100%;
  animation: gradientAnimation 10s linear infinite;
 -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  
  
}
.glad2 {
  background: linear-gradient(90deg, #fff, #eee, #bababa);
  background-size: 200% 100%;
  animation: gradientAnimation 10s linear infinite;
 -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  
  
}
@keyframes gradientAnimation {
            0% {
                background-position: 200% 0;
            }
            100% {
                background-position: -200% 0;
            }
        }
.container {
max-width: 80%;
margin: 0 auto;
}
.inner-box{
max-width: 1000px;
width: 98%;
display: block;
margin: 0 auto;
}
.top_menu{
width: 100%;
height: auto;
display: inline-block;
}

.top_menu .menu_t{
width: 100%;
display: flex;
flex-wrap:wrap;
justify-content:space-between;
align-items:center;    
}

.top_menu .menu_t .logo{
width:250px;
transition: all 0.5s;  
margin-left: 20px;    
}

.top_menu .menu_t .logo img{
width:100%;	
display: block;
margin: 0 auto;
}


.top_menu .m1{
width: 1030px;	 
display: flex; 
flex-wrap:wrap;
justify-content:flex-end;  
align-items:center;     
}

.top_wrapper{
width: 100%;   
height: auto;    
position:fixed;
top:0; 
left: 0;
z-index: 10;
height: auto;
transition: all 0.5s;	
}
.top_wrapper.transform{
  background: #0A0F23;  
  border-bottom: 1px solid rgba(255,255,255,0.1);
z-index:20;
}

/*==ナビゲーション全体の設定*/
.m1 nav{
  color: #5070b0;
  text-align: center;
}
/*ナビゲーションを横並びに*/
.m1 nav ul{
  list-style: none;
  display: flex;
  justify-content:flex-end;
}
.m1 nav ul .small{
display: block;
font-size: 0.9rem; 
  font-family: "Cormorant Garamond", serif;  
 letter-spacing: 0.1rem;    
color: #fff;    
}
.top_wrapper.transform nav ul .small{
    color: #3B58CC
}
.m1 nav ul li{
  position: relative;
white-space:nowrap;
margin-right: 20px;         
}


.m1 nav ul li a{
  display: block;
  text-decoration: none;
  color: #FFF;
  transition:all .3s;
    font-size:1rem;
}

.m1 nav ul li a:hover{
opacity: 0.8;    
text-decoration: transparent;    
}

.top_wrapper.transform .t-con::after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: #CCAF3B;
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
        }
.top_wrapper.transform .t-con .t-btn1{
color: #000;    
}
.t-con{
width: 280px; 
height:71.55px;    
position: relative;   
display: flex;
justify-content:flex-end;
align-items:center    
}

.t-btn1{
white-space:nowrap;   
font-size: 1.3rem;	   
transition: all 0.5s;    
display: block;  
text-align: center; 
color: #fff;  
transition: all 0.5s;   
position: relative;
z-index: 10;   
line-height:  71.55px;   
font-weight: 500;
}
.t-btn1:hover{
opacity: 0.7;
text-decoration: transparent;
}
.t-btn2{
width: 30px;	    
font-size:1.3rem;	     
display: block;  
text-align: center; 
padding: 0.5% 20px 0.5% 0;
margin-left: 15px;  
vertical-align: middle;    
color: #fff;  
transition: all 0.5s;     
position: relative;
z-index: 10;       
}
.t-btn2:hover{
opacity: 0.7; 
text-decoration: transparent;
    
}

.top_wrapper.transform .t-con .t-btn2{
color: #000!important;    
}
/*===ボタン===*/

      .button {
        width: 80%;
        max-width: 300px; /* ボタン幅 */
        font-weight: 600; /* 文字の太さ */
        line-height: 1.5;
        position: relative;
        display: inline-block;
        padding: 1rem 2rem;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        text-decoration: none;
        text-align: center;
        letter-spacing: 0.1rem;
        color: #000; /* 文字色 */
        -webkit-transform: skew(-15deg);
        transform: skew(-15deg);
        background-color:#CCAF3B; /* 背景色 */
        -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          margin: 10px 10px;
      }
    .button span{
         -webkit-transform: skew(17deg);
        transform: skew(17deg);
        display: inline-block;
         transition: all 0.3s;
        }
      .button::after {
          content: '▶';
          margin-left: 0.5rem;
         -webkit-transform: skew(17deg);
        transform: skew(17deg);
         display: inline-block;  
           transition: all 0.3s;
          font-weight: 1rem;
      }
.button:hover{
          -webkit-transform: skew(0deg);
        transform: skew(0deg);  
}
    .button:hover span{
         -webkit-transform: skew(0deg);
        transform: skew(0deg);
        }
      .button:hover::after {
          content: '▶';
          margin-left: 1.5rem;
         -webkit-transform: skew(0deg);
        transform: skew(0deg);
         display: inline-block;  
          font-weight: 1rem;
      }
.button_c{
display: block;
margin: 0 auto;
}
/*====ご挨拶===*/

.greeting{
width: 100%; 
height: auto;   
padding: 5%;  
background: rgba(255,255,255,0.5);    
}

.greeting-text strong{
font-size: 1.8em;
display: block; 
text-align:left;    
}
.greeting-text {
display: block;
margin: 0;    
font-size:1em;
text-align:left;
line-height:200%;   
}

/*===共通===*/

.item-box{
width: 100%;
height: auto;
display: block; 
position: relative;     
}
.greeting-box{
width: 100%;
display: block;
background: url("../img/greeting1.webp");    
background-size: 50%;
background-position: left;
background-repeat: no-repeat;  
background-attachment: fixed; 
overflow: hidden;
position: relative;
}
.greeting-box::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background:rgba(0,0,0,0.5);
    z-index: 2;
    object-fit: cover;
}
.item-back_l{
width: 100%; 
position: relative;
}
.item-back_l::after{
    content: "";
    position: absolute;
    top: 230px;
    left: 0;
    width: 80%;
    height:60%;
    background: rgba(204,175,59,0.09);
}
.item-back_r{
width: 100%; 
position: relative;
}
.item-back_r::after{
    content: "";
    position: absolute;
   top: 230px;
    right: 0;
    width: 80%;
    height:60%;
    background: rgba(204,175,59,0.09);
}
.item-t1{
width: 50%; 
margin-left: 50%;  
padding: 0 3%;  
position: relative;
z-index: 5;
}

.item-t2{
width:60%;    
padding: 0 3%; 
position: relative;
z-index: 3;     
}
.item-t2 p{
text-align: left;
}
.item-p2{
width: 40%;   
position: relative;
z-index: 3;    
}
.item-p2 img{
width: 100%;  
height: 100%;
object-fit: cover;
display: block;    
}
.itrm3{
padding: 5% 0;    
}
.item-t3{
width:60%; 
position: relative;
z-index: 3; 
padding: 0 3%;    
}
.item-t3 p{
text-align: left;
}
.item-p3{
width: 40%;   
z-index: 3;
display: block;   
}
.item-p3 img{
width: 100%;  
display: block; 
z-index: 1;    
}
.item-t3_titl{
width: 100%;    
position: relative;
font-size: 1.3rem;
color: #CCAF3B; 
padding-left: 60px;    
margin-bottom: 20px;   
}
.item-t3_titl::after{
content: attr(data-label);    
position: absolute;
top: 50%;
left: 0;
color: #0a0f23;   
font-size: 1.5rem;   
    line-height: 1;
background: #CCAF3B;  
width: 50px;
height: 50px; 
text-align: center;
line-height: 50px;  
border-radius: 50px;    
font-weight: 900;  
-webkit-transform : translateY(-50%);
transform : translateY(-50%);     
}

.item-p4{
width: 50%; 
display: block;      
}
.item-p4 img{
width: 100%;
height: 100%;
object-fit: cover;
display: block;    
}
.item-t4{
width: 50%;  
display: block; 
position: relative;  
}
.item-t4::after{
content: "";
background: url("../img/service2.webp");
background-size: cover;
background-position: center;
width: 100%;
height: 100%;
object-fit: cover;
display: block; 
opacity: 0.2;
filter: grayscale(100%);   
z-index: -1; 
position: absolute;
top: 0;
left: 0;    
}
.item-t4 .item-t4_t{
text-align: left;
position: absolute;
top: 50%;
left: 50%;  
width: 90%; 
-webkit-transform : translate(-50%,-50%);
transform : translate(-50%,-50%);      
z-index: 1;  
padding: 60px 0;      
}
.item-t4 .item-t4_titl{
font-size: 1.5rem;
line-height: 1.9; 
position: relative;
margin-bottom: 1rem;   
color: #fff;   
  font-family: "Noto Serif JP", serif;        
}
.item-t4_titl::after{
content: "";    
 width: 100%;
display: block;
position: absolute;
background: #fff;
bottom: -5px;
left: 0;
height: 1px;
}
.item-t4_titl span{
color:#CCAF3B; 
font-size: 1.3rem;
display: block; 
 font-family: "Noto Sans JP", sans-serif;   
line-height: 1.2;
}

.item5{
background: #1E2C66;
padding: 3%;  
position: relative;
}
.item5::after{
position: absolute;
content: "";
width: 98.5%;
height: 94%;
object-fit: cover;    
border: 1px solid #0a0f23;
top: 50%;
left: 50%;  
-webkit-transform : translate(-50%,-50%);
transform : translate(-50%,-50%);        
}
.item-t5{
width: 100%;  
}
.item-t5_titl {
  position: relative;
  background:#0a0f23;
  padding: 0.25rem 0.5rem;
  border-left: solid 3rem #CCAF3B;
  top:0;
  left: 0;  
  font-size: 1.3rem;   
z-index: 5;    
display: inline-block;
margin-bottom: 1rem;    
}

.item-t5_titl:before {
  font-family: "Font Awesome 5 Free";
  content: "\f7d9";
  position: absolute;
  padding: 0rem;
  color: #0a0f23;
  font-weight: 900;
  left: -2.2rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.recruit_box{
width: 100%;
position: relative;
}
.recruit_box::after{
position: absolute;
content: "";
top: 0;
left: 0;
background: url("../img/recruit1.webp");
background-size: cover;
background-position: center;
background-repeat: no-repeat;
width: 50%;
height: 100%;  
z-index: -1;
opacity: 0.3;       
}
.recruit_box::before{
position: absolute;
content: "";
top: 0;
left:50%;
background: url("../img/recruit2.webp");
background-size: cover;
background-position: center;
background-repeat: no-repeat;
width: 50%;
height: 100%;  
z-index: -1;  
opacity: 0.3;      
}
.recruit_text{
max-width: 750px;
width: 100%;
display: block;
margin: 0 auto;
}
.recruit_text p{  
line-height: 2.5;    
}
/*====全ページ共通フッターメニュー===*/
footer{
width: 100%;
display:block;
text-align: center;	   
}
footer .footer-box{
height:auto; 
width: 100%;    
display: block;   
}
footer .footer-box .footer-back{
padding: 50px 0;     
width: 100%; 
display: block; 
position: relative; 
background: #243327;    
}
footer .footer-box .footer-back::after{
background:url("../img/footer_back.webp");
background-position: center;
background-size: cover; 
background-attachment: fixed;    
position: absolute;
top: 0;
left: 0;
 width: 100%;
height: 100%;   
object-fit: cover; 
display: block;    
content: "";    
opacity: 0.5;    
}
footer .footer-box .footer-back::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background:rgba(3,2,60,0.5);
    z-index: 2;
}
.f-box{
position: relative;
z-index: 6;    
}
.f-contact{
width:100%;
display: flex;    
flex-wrap:wrap;
justify-content:center;
align-items:center;    
}
.f-address{
padding: 50px 0;    
width: 100%;
background: linear-gradient(to right, #182544, #0a0f23 );  
}
.f-address img{
max-width: 300px;
width: 70%;    
display: block;
margin: 0 auto;
}
.f-con{
width:300px;
margin: 1em;    
}
.f-con a{
border:1px solid #fff;
padding:1em 1%;
font-size: 1.3em;  
display: block;  
color: #fff;
transition: all 1s;    
letter-spacing: 1px;       
}
.f-con a:hover{
background: rgba(255,255,255,0.1); 
text-decoration: transparent;    
}

footer .copyright small{
text-align: center;	
color:#fff;
padding:1% 0;
display: block;	
background:#0a0f23;  
font-size: 0.8em;  
font-weight: 400;
}
/*========= ホリイの強み ===============*/
.st_titl1{
font-size: 1.5rem;
line-height: 1.9; 
position: relative;
margin-bottom: 1rem;   
color: #fff;   
  font-family: "Noto Serif JP", serif;        
}
.st_titl1::after{
content: "";    
 width: 100%;
display: block;
position: absolute;
background: #fff;
bottom: -5px;
left: 0;
height: 1px;
}
.st_titl1 span{
color:#CCAF3B; 
font-size: 1.3rem;
display: block; 
 font-family: "Noto Sans JP", sans-serif;    
line-height: 1.2;    
}

.st_l{
width:100%;
max-height: 900px;
min-height: 600px;    
position: relative;
padding: 60px 0;     
}
.st_l img{
width: 60%;   
height: 100%;
object-fit: cover;
display: block;   
position: absolute;
top: 0;
left: 0;    
}
.st_l .st-t{
width: 60%;       
background: #3B58CC;
position: absolute;
top: 50%;
right: 0;  
    padding: 56px;
    margin-left: auto;
    -webkit-box-shadow: 0 6px 15px rgba(36, 37, 38, 0.04);
    box-shadow: 0 6px 15px rgba(36, 37, 38, 0.04);
-webkit-transform : translateY(-50%);
transform : translateY(-50%);      
text-align: left;
overflow: hidden;     
}
.st_l .st-t::after{
content: attr(data-label);    
position: absolute;
top: 50px;
right: 3px;
color: rgba(255,255,255,0.1);    
font-size: 25vh;   
 font-family: "Cormorant Garamond", serif;
  font-weight: 700;   
    line-height: 1;
     z-index: -1;

}
.st_r{
width:100%;
max-height: 900px;
min-height: 600px;         
position: relative;
padding: 60px 0;     
}
.st_r img{
width: 60%;   
height: 100%;
object-fit: cover;
display: block;  
position: absolute;
top: 0;
right: 0;       
}
.st_r .st-t{
width: 60%;    
position: absolute;  
top: 50%;
left: 0;  
padding: 56px;
margin-right: auto;
background-color: #3B58CC;
-webkit-box-shadow: 0 6px 15px rgba(36, 37, 38, 0.04);
box-shadow: 0 6px 15px rgba(36, 37, 38, 0.04);     
-webkit-transform : translateY(-50%);
transform : translateY(-50%);
text-align: left; 
overflow: hidden;    
}
.st_r .st-t::after{
content: attr(data-label);    
position: absolute;
top: 50px;
right: 3px;
color: rgba(255,255,255,0.1);   
font-size: 25vh;   
 font-family: "Cormorant Garamond", serif;
  font-weight: 700;
    line-height: 1;
    z-index: -1;
}
/*========= 受賞・表彰歴 ===============*/
.prize-box{
       width:100%;  
    margin: 10px;
   background: #1E2C66;
    padding: 10px;
    display: flex;
    flex-wrap:wrap;
justify-content:space-between;
}
.prize-box .prize-photo{
   width: 50%; 
      display: flex;
    flex-wrap:wrap;
justify-content:flex-start;
   
}
.prize-box .prize-photo .pr-photo1{
    width: 100%;
    padding: 5px;
     object-fit: cover;
    max-height: 380px;
     display: block;
    
}
.prize-box .prize-photo .pr-photo1 img{
width: 100%;
height: 100%;
object-fit: cover;
display: block; 
}
.prize-box .prize-photo .pr-photo2{
    width:calc(100% / 2 - 10px);  
    object-fit: cover;
    margin: 5px;
    max-height: 250px;
     display: block;
}
.prize-box .prize-photo .pr-photo2 img{
width: 100%;
height: 100%;
object-fit: cover;
display: block;    
}
.prize-box .prize-photo .pr-photo3{
    width:calc(100% / 3 - 10px);  
    object-fit: cover;
    margin: 5px;
    max-height: 250px;
    display: block;
}
.prize-box .prize-photo .pr-photo3 img{
width: 100%;
height: 100%;
object-fit: cover;
display: block;    
}
.prize-box .prize-text{
   width: 50%;  
   padding: 5px;
   flex-direction:column; 
display: flex;    
}

.prize-box .pr_taitl{
font-size: 1.5rem;   
padding: 1rem;
background: rgba(255,255,255,0.1); 
text-align: center;    
}
.prize-box .pr_text_g{
 flex-grow: 1;      
}
.prize-box .pr_text{ 
padding: 1rem;
background: rgba(255,255,255,0.1);  
}
/*========= 事業紹介 ===============*/
.service{
   width:calc(100% / 4 - 20px);   
   margin: 10px;
   max-height: 300px;    
}
.service img {
 width: 100%;
 height: 100%;
 object-fit: cover;
display: block;
}
.member{
display: block;
margin-bottom: 3px;    
}
/*========= 会社概要 ===============*/
.a_inner-box{
max-width: 700px;
width: 95%;
display: block;
margin: 0 auto;
}
.about-box{
width:100%;
position: relative;
padding: 60px 0;     
}
.about_titl{
    font-size:2rem;
    text-align: center;
    color: #fff;
     font-family: "Noto Serif JP", serif;   
}
.about-box p{
     font-family: "Noto Serif JP", serif;    
    line-height: 2.5;
}
.about-box::after{
content: "";
width: 100%;    
height: 100%;
object-fit: cover;
display: block;
background: url("../img/about1.webp");
background-size: cover;
background-position: center;
background-repeat: no-repeat;  
position: absolute;
top: 0;
left: 0;  
opacity: 0.08;
}
.about-box img{
max-width: 400px;
width: 80%;
display: block;
margin: 0 auto;
}
/*========= 求人案内 ===============*/
.interview-box{
width:calc(100% / 3 - 20px);  
margin: 10px;    
background: #1E2C66;
padding: 3%;    
}
.interview-box .interview_p{
width: 100px;
height: 100px;
border-radius: 50px;
overflow: hidden;
margin: 0 auto 1rem;
}
.interview-box .interview_p img{
width: 100%;
height: 100%;
object-fit: cover;
display: block;    
}
.interview-box .interview_t p{
text-align: center;
}
.table{
width: 100%;    
}
.table table{
width: 100%;      
}
.table table th{
width: 30%;   
font-weight: 500;
padding: 1rem; 
background: #1E2C66;  
position: relative;
}
.table table th::after{
content: "";    
 position: absolute;
right: -0.8rem;
top: 50%;  
-webkit-transform : translateY(-50%);
transform : translateY(-50%);      
  border-style: solid;
  border-width: 14px 0 14px 15px;
  border-color: transparent transparent transparent #1E2C66;
  z-index: 2;    
}
.table table td{
width: 70%;  
font-weight: 500;
padding: 1rem 2rem;  
background: rgba(255,255,255,0.05);    
}
/*========= お問い合わせ ===============*/
.c-tf{
max-width: 450px;
width: 100%; 
margin: 0 auto;    
position: relative;
}
.c-box{
width: 100%; 
margin: 0;    
}
.c-tf_titl{
font-size: 1.3rem;
text-align: center;
display: block;
width: 75%;    
position: absolute;
padding:0.5rem 1rem;    
top: -1.8rem;
left: 50%;  
color: #0a0f23;     
background:#CCAF3B;
-webkit-transform : translateX(-50%);
transform : translateX(-50%); 
transition: all 0.5s;   
border:solid 3px #CCAF3B;  
 font-family: "Noto Serif JP", serif;  
font-weight: 700;
}
.c-box a{
width: 100%;     
font-size: 2.5rem;
transition: all 0.5s;	 
display: block;       
text-align:center;   
border:solid 3px #CCAF3B;
padding:2.5rem 1rem 1rem; 
background:#0a0f23;  
color: #CCAF3B;  
margin-top: 2rem;    
}
.c-tf:hover a{
color: #0a0f23;     
background:#CCAF3B;            
    
}
.c-box a:hover .c-tf_titl{
background:#0a0f23;  
color: #CCAF3B;      
}
.c-box .tel_time{
font-size:1rem; 
display: block;  
color: #fff; 
text-align: left;    
}
.m-brder{
border-right: 2px solid #eee;
}


.con-text2{
font-size: 1em;  
color: #fff;     
}
.con-text2 .small{
font-size: 0.9em;
color: #fff; 
display: block;
}
.contact-wrapper{
width: 100%;	
}


form{
	width: 100%;
	text-align: center;
}
.checkbox_text{
line-height: 1.75;
color: #595757;	
}
.mailform{
width: 100%;   
}
.mailform table{
width: 100%;    
 
}
.fm-text .text1 .text_b{
	color:#CCAF3B;
    font-size:1rem;
    padding:0.5em;
    margin-right: 5px;
    text-align: center;
    font-weight: 500;
}
.mailform table .text_b{
	color:#CCAF3B;
	font-size:1rem;
	padding:0.5em;
    margin-right: 5px;
    text-align: center;
    font-weight: 400;
}


.mailform table th{
	font-size: 1rem;
	text-align: left;
	padding-left: 2%; 
    border-bottom: 1px dotted #555;
    font-weight: 400;
}

.mailform table td{
font-size: 1rem;
padding: 2% 1%;
width: 70%; 
border-bottom: 1px dotted #555;   
text-align: left;
}

.text-y{
width: 50%!important;    
height: 40px!important;    
}
.text{
width: 100%!important;    
}
textarea{
width:100%!important; 
}
.mailform dd p{
	margin-top: 1%;
	font-size:1.1em;
	color:#333;
	letter-spacing: 4px;
	line-height: 1.75;
}

.single p{
	text-align: center;
	color:#333;
}
.fm-text p{
text-align: left;
}
.postcord_btn{
border:1px solid #333; 
padding: 1%;
font-size: 0.9rem;    
background: #333;
color: #fff;   
margin-left: 1rem;
}
.form-button
{
margin: 5% 0;
text-align: center;
}

.form-button button {
    cursor: pointer;
    display: block;
    margin: 0 auto 5px;
    padding: 1rem;
    color: #fff;
    text-align: center;
    width: 250px;
	transition: all 0.5s;	
    border:3px solid #3B58CC; 
    font-weight: 700;
    background:#3B58CC;
}
.form-button button:hover{
    color:#fff;
    background: #2C4299;
    border:3px solid #2C4299; 
	text-decoration: transparent;
}
.textarea, textarea, .dropdown {
    border-radius: 2px;
}

input[type=checkbox] + label {
cursor: pointer;  
}

button[type="submit"]{
	font-size:1em;
	padding: 10px;
}

input[type="checkbox"]{
	font-size: 1em;
	margin-left: 2%;
	margin-bottom: 2%; 
}
input[type="text"]{
	height: 40px!important;
	font-size: 1em;
	padding: 10px;
background: #eee;
   border-color: light-dark(rgba(118, 118, 118,0), rgba(133, 133, 133,0));        
}
input[type="email"]{
    width: 100%;
	height: 40px;
	font-size: 1em;
	padding: 10px; 
}

textarea{
padding: 10px;	
font-size: 1em;		
background: #eee;
border:solid 1px #eee;
}
.mailform .accordion h4{
font-size: 1rem;
text-align: left;
padding-bottom: 3px;	
letter-spacing: 2px;
border-bottom: 1px dotted #eee;
padding-left: 1%; 
font-weight: 500;
}
.mailform .accordion p{
font-size:1rem;
text-align: left;
letter-spacing: 2px;
padding: 1% 0;	
padding-left: 1%; 
}
.mailform .accordion {
}
.mailform .toggle {
	display: none;
}
label{
cursor: pointer; 
display: inline-block; 
white-space:nowrap;
margin-right: 20px;    
}
.Label {
    font-size: 1rem;
	padding:1%;
	display: block;
    color: #fff;
    position: relative;
    margin-right: 0; 
    border-bottom: solid 1px #fff;
}
.Label::before{		/*タイトル横の矢印*/
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
    text-decoration: transparent;
    margin-bottom: 1em;
}
.Label,
.open1 {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.5s;
}
.open1 {		/*本文*/
	height: 0;
	margin-bottom:10px;
	overflow: hidden;
    padding: 0 10px; 

}
.toggle:checked + .Label + .open1 {	/*開閉時*/
	height: auto;
	transition: all .5s;
}
.toggle:checked + .Label::before {
	transform: rotate(-45deg) ;
    text-decoration: transparent;
}




ul.check_list li{
	border-bottom: 1px solid rgba(255,255,255,0.2);
	padding: 10px 0;
	letter-spacing: 0.08em;
}
ul.check_list li:first-child{
	padding-top: 0;
}
ul.check_list li::before{
	font-family: "Font Awesome 6 Free";
	content: "\f14a";
	font-weight: bold;
	display: inline-block;
	color: #fff;
	margin-right: .5em;
	font-size: 0.8rem;
	transform: translateY(-2px);
}




.thanks .thanks_txt{
  text-align: center;
}
.thanks .button{
  display: block;
  margin: 0 auto;
}
.thanks .thanks_txt2{
  font-size: 0.8rem;
}