@charset "UTF-8";
/* CSS Document */
@media all and  (max-width:1900px){

}

@media all and  (max-width:1500px){
.top_menu .menu_t{
padding:1rem 2%;
margin: 0;    
} 
   
}
@media all and  (max-width:1250px){
.arrow1 {
    flex-wrap:wrap;
    display: flex;
    justify-content: flex-start;
}    
    
.t-con{
width: 500px;    
}   
.top_menu .menu_t{
padding:1rem 1%;
margin: 0;    
} 
.step-box1 p{
    font-size: 1.1rem;
}  
.background3{
background-attachment: inherit;
}    
}

@media all and  (max-width:960px){
  
.slider-box{
    width: 100%;
    height:600px;
    margin-top: 0;
	overflow: hidden;
	position: relative;
}    
.text1{
font-size: 0.9em;  
}
.text1 strong{
font-size: 1.3em;       
}    
.text2{
font-size: 1.1em;          
}     


.loading_text1 p{
    font-size: 6vh;
}

.loading_text2 p{
    font-size: 2.5vh;
}    
.fullscreenmenu{
display: block;
} 
    .t-con,.m1{
    display: none;
    }      
.tb_l{
      text-align: left;
    }

.item-t1{
width: 100%; 
padding: 3%;  
order: 2;    
}
.item-p1{
width: 100%;     
display: flex;
order: 1;     
}
.item-p1 div{
width: 50%; 
}
.item-p1 div:last-child{
  margin-left: 0%;  
  margin-top: 0;    
}
.top_wrapper.transform .top_menu .menu_t .logo{
display: block;
text-decoration: transparent;    
}  
.top_wrapper.transform .top_menu .menu_t{
margin-bottom: 0rem;
padding:1rem 1%;  
text-decoration: transparent;   
  transition:all .5s;      
}    
.concept{
    width: calc(100% / 3 - 10px);
    margin: 10px 5px;
}    
.step-box1{
width: calc(100% / 5 - 40px);  
}
.con_titl::before{
  left: 5%;    
}
.con_titl::after{
  right:5%;   
}   
  .history{
width: 70%;     
} 
.history .date{
 width:55%; 
display: block;    
padding:1rem;
position: relative;
text-align: center; 
}
.history .border{  
left: 50%; 
height: 90%;    
-webkit-transform : translateX(-50%);
transform : translateX(-50%); 
z-index: -1;  
display: block; 
opacity: 1;    
}    
   
.history .date::after{
 content: '';    
 width:10px; 
 height:10px;    
display: block; 
background:#0464bd;  
position: absolute;  
right:inherit;
top:inherit;  
left: 50%;
bottom: 10px;    
-webkit-transform : translateY(0%);
transform : translateY(0%);   
-webkit-transform : translateX(-50%);
transform : translateX(-50%);     
z-index:6;  
border-radius: 50%;       
}
.history .date::before{
display: none;
}
.history .history-text{
 width: 70%; 
display: block;  
position: relative;
z-index: 5; 
text-align: center;
margin: 1rem auto;
padding: 1rem;        
}  
.step .border-l{
height: 88%;
width: 1px;
background: #999;
position: absolute;
 
}    
}
@media all and  (max-width:750px){
.slider-box{
    height:400px;
}       
.midashi_l h2{     
font-size: 0.9rem;		
}
.midashi_l .strong{
font-size: 1.8rem;		    
}

.midashi_c h2{
font-size: 0.9rem;         
}
.midashi_c .strong{
font-size: 1.8rem; 
}
.midashi_cw h2{
font-size: 0.9rem;        
}
.midashi_cw .strong{
font-size: 1.8rem;   
}
 .heading {
  font-size: 1.3em; 
}   
 .heading_w{
  font-size: 1.3em; 
} 
section{
padding: 50px 0;    
}
  
    .sp_kaigyo{
    display: block;    
    }    
   .tb_kaigyo{
    display: block;    
    }
  
.sp_l{
      text-align: left;
    }  
.step-box1{
 text-orientation: upright;    
position: relative;
padding: 4rem  0.3rem 2rem;   
border:1px solid #eee;
width: 100%;
min-height: 100px;    
margin:20px; 
border:1px solid #4779B3;
}
.arrow1 > .step-box1:not(:last-child)::before {
    content:  '';
    width: 0;
    height: 0;
    border-style: solid;
    border-bottom: solid 20px transparent;
  border-top: solid 20px #5A99E0;
  border-left: solid 20px transparent;
  border-right: solid 20px transparent;  
    display:  inline-block;
    vertical-align:  baseline;
    position: absolute;
    top: inherit;
    bottom: -35%;
    margin:  auto;
    right:inherit;
    left: 50%;
    -webkit-transform : translateX(-50%);
transform : translateX(-50%);
}
.arrow1 {
    width: 100%;
    list-style:  none;
    padding:  0;
    display: flex;
    justify-content: center;
}

.arrow1 .step-box1:not(:last-child) {
    margin-right:  20px;
}
.step-box1 p{
    font-size: 1rem;
	-webkit-writing-mode:horizontal-tb;
	-ms-writing-mode:lr-tb;
	writing-mode:horizontal-tb;
    text-align: center;
}


.balloon1 p {
  margin: 0;
  padding: 0;
} 

.concept{
    width: calc(100% / 1 - 20px);
}
.item-t2{
width: 100%;  
order: 2;    
}
.item-p2{
width: 40%;  
order: 1;     
}
.item-p2 img{
width: 100%;    
} 
.item-t3{
width: 100%;  
padding: 3%;    
}
.item-p3{
width: 100%;    
}    
.step-box2 .step-flow{
width: 100%; 
margin-bottom: 10%;    
}  
.step-box2 .border-b{
left: 60px;   
width: calc(100% - 60px)    
}    
.step-photo{
width:calc(100% - 60px);  
margin-left: 60px;    
}  
.step-box2 p{
    font-size: 0.9rem;
margin: 0 auto;
padding-left: 60px; 
padding-right: 10px;    
}  
.step-box2 .step-flow .step-titl{
 font-size: 1.3rem;   
padding-left: 60px; 
padding-right: 10px;   
}
.step-box2 .step-flow .flow_n{
width: 50px;
height: 50px;   
left:-15px;    
} 
 .step .border-l{
height: 86%;
width: 1px;
background: #999;
position: absolute;
top: 2%;
left: 25px;  
}    
.faq .Label {		/*タイトル*/
    font-size: 0.9rem;
} 
.faq .Label::after{		/*タイトル横の矢印*/
    font-size: 0.9rem;
}    

.faq .content p{
    font-size: 0.9rem;
} 
.faq .content p::after{		/*タイトル横の矢印*/
    font-size: 0.9rem;
}      
.history{
width: 100%;     
}
.history .history-text{
 width: 100%; 
display: block;  
position: relative;
z-index: 5;  
    
} 
.history .date .d-text{
text-align: center;
width: 100%;    
}    
.c-tel{
width: 100%;    
margin: 0 auto;  
padding: 3%;    
}

.c-fax{
width: 100%;    
margin: 0 auto;  
padding: 3%;     
} 
.mailform table th{
	font-size: 1em;
	text-align: left;
	padding: 1rem 1rem 0; 
    border-bottom: 0px dotted #b0b0b0;
    width: 100%;
    display: block;
}

.mailform table td{
font-size: 1em;
padding: 1rem;
  width: 100%;
    display: block;
border-bottom: 1px dotted #b0b0b0;   
text-align: left;
}    
}  
@media all and  (max-width:450px){
     
}
@media all and  (max-width:380px){

} 
    