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


* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;	
}
body {
font-family: 'Noto Sans JP', sans-serif;
font-style: normal;
font-weight: 400;     
}
.sp,.tb,.f-con_sp{
display: none!important;
}
.bt2{
display: none!important;
}
.fullscreenmenu{
display: none;
}
.width1{
width: 50%;    
}
	.h100{
height: 100px;		
	}
	.h50{
height: 50px;		
	}
	.h30{
height: 30px;		
	}	
	.h20{
height: 20px;		
	}
	.h10{
height: 10px;		
	}
a{
	text-decoration: none;	
}
li{
	list-style-type: none;
}
h1,h2,p,.copyright{
color:#333;
font-weight: normal;	
}

.text1{
font-size: 1em;  
line-height: 200%;    
}
.text1 strong{
font-size: 1.3em;    
display: block;      
}
.text1 .strong{
font-size: 1.3em;    
display: block;
font-weight: 400;
}
.text1 .text_left{
text-indent: -1em;
padding-left: 1em;   
display: block;    
}
.text1 .text_left2{
text-indent: -1em;
padding-left: 1em;   
display: inline-block;    
}
.text3{
font-size: 1.3em;  
line-height: 200%;    
}

.border_w{
     text-shadow    : 
       1px  1px 0px #ffffff,
      -1px  1px 0px #ffffff,
       1px -1px 0px #ffffff,
      -1px -1px 0px #ffffff,
       1px  0px 0px #ffffff,
       0px  1px 0px #ffffff,
      -1px  0px 0px #ffffff,
       0px -1px 0px #ffffff;     
}

.sp_l,.sp_l2{
      text-align: center;
    }
.tb_l{
   text-align: center;  
}
.red{
    font-size: 0.9em;
  color:#6d0000; 
    display: block;  
}

.background1{
width: 95%;
display: block;
margin: 0 auto ;
background:url("../img/background1.jpg");
background-size: cover;
background-position: center;
z-index: -10;	
background-attachment: fixed;    
}
.background2{
width: 100%;
height: auto;   
background-color: #f6f9fc;
background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%234779c0' fill-opacity='0.07' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");  	 
}
.background3{
background: rgba(242,253,255,0.4);		
}
.background4{
background:url("../img/background5.jpg");
background-size: cover;
background-position: center;
z-index: -10;	
background-attachment: fixed;   	
}
.container {
max-width: 1170px;
width: 100%;
margin: 0 auto;
text-align: center;		
}


.sp1,.sp2{
display: none;
}

.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;
align-items:center;    
}
.flex-box3{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:flex-end;
align-items:center;    
}
.flex-box4{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:space-around;
align-items:flex-start;    
}
.flex-box5{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:center;
align-items:flex-start;    
}
.flex-box6{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:flex-start;
align-items:flex-start;    
}
/*パンクズ */
.breadcrumb {
  margin-bottom: 3%;
margin-top: 3% 0;	
  padding-left: 1%;
  list-style: none;
text-align: left;
padding-top: 2%;  
}

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

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

.breadcrumb li:last-child:after {
  content: '';
}
.breadcrumb .item_text{
color: #288AD3;    
}
.breadcrumb li a {
  text-decoration: none;
  color: #000;/*色*/
}

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

/*Scrollテキストの描写*/
.scrolldown2 span{
    /*描画位置*/
	position: absolute;
	left:10px;
	bottom:10%;
    /*テキストの形状*/
	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;
}
.breadcrumb li a:hover {
  text-decoration: underline;
}
.breadcrumb .fa-home{
color:#BF0404; 	
}
.top_img{
width: 100%;
height: calc(100% - 150px);    
}

.top_wrapper p{
font-size: 2em;
}
.heading{
 font-size: 2em;   
margin-bottom: 3%;    
}
.midashi h2{
font-size: 2em;		
text-align: left;
letter-spacing: 5px;	
color: #333;     
}
.contener{
max-width: 90%;
 width: 100%;   
display: block;
margin: 0 auto;
}
.midashi .small{
font-size: 0.8em;
display:block;	
padding-top:0.5%; 
letter-spacing: 1px;   
color: #348ABF;  
font-family: 'Oswald', sans-serif;   
font-weight: 500; 
 position: relative;
  padding: 10px 0;
  text-align: center;
  margin: 1.5em 0 1em;    
}
.midashi .small:before {
  content: "";
  position: absolute;
  top: -8px;
  left: 50%;
  width: 150px;
  height: 58px;
  border-radius: 50%;
  border: 5px solid rgba(71,121,192,0.2);
  border-left-color: transparent;
  border-right-color: transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.midashi .small1{
font-size: 0.8em;
display:block;	
padding-top:0.5%; 
letter-spacing: 1px;   
color: #fff;  
font-family: 'Oswald', sans-serif;   
font-weight: 500; 
 position: relative;
  padding: 10px 0;
  text-align: center;
  margin: 1.5em 0 1em;    
}
.midashi .small1:before {
  content: "";
  position: absolute;
  top: -8px;
  left: 50%;
  width: 150px;
  height: 58px;
  border-radius: 50%;
  border: 5px solid rgba(255,255,255,0.2);
  border-left-color: transparent;
  border-right-color: transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.midashi .border-bottom{
border-bottom: 5px solid #fdd23d;    
}

.midashi p{
font-size: 2em;	
text-align: left;
letter-spacing: 5px;	
font-weight: bold; 
color: #333;      
}

.box-shadow{
box-shadow: 2px 2px 10px #eee;    
}

.globalMenuSp, .navToggle{
	display: none;
}

header{
widows: 100%;
height: auto;
position: relative;
}
.top_wrapper{
width: 100%;    
position: absolute;
top: 0;
left: 0; 
z-index: 100;    
}
.top_menu .menu_t{
width: 100%;
display: flex;
flex-wrap:wrap;
justify-content:space-between;
align-items:center;
}

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


.top_menu .m1{
width: 75%;	   
margin: 1% 0;
}



/*==ナビゲーション全体の設定*/
nav{
  color: #5070b0;
  text-align: center;
    padding: 1% 0;
}
/*ナビゲーションを横並びに*/
nav ul{
  list-style: none;
  display: flex;
  justify-content: flex-end;
}
nav ul span{
display: block;
font-size: 0.5em;    
 color:#0971B3;   
font-family: 'Oswald', sans-serif;   
font-weight: 500;     
}
/*2階層目以降は横並びにしない*/
nav ul ul{
  display: block;
}

/*下の階層のulや矢印の基点にするためliにrelativeを指定*/
nav ul li{
  position: relative;
}

/*ナビゲーションのリンク設定*/
nav ul li a{
  display: block;
  text-decoration: none;
  color: #333;
  padding:20px 28px 0;
  transition:all .3s;
    font-weight: bold;
    font-size: 1em;
         text-shadow    : 
       1px  1px 0px #ffffff,
      -1px  1px 0px #ffffff,
       1px -1px 0px #ffffff,
      -1px -1px 0px #ffffff,
       1px  0px 0px #ffffff,
       0px  1px 0px #ffffff,
      -1px  0px 0px #ffffff,
       0px -1px 0px #ffffff;  
}

nav ul li li a{
  padding:10px 35px;
    font-size: 0.8em;
}

nav ul li a:hover{
  color:#348ABF; 
    text-decoration: transparent;
}

/*==矢印の設定*/

/*2階層目を持つliの矢印の設定*/
nav ul li.has-child::before{
  content:'';
  position: absolute;
  left:15px;
  top:25px;
  width:6px;
  height:6px;
  border-top: 2px solid #999;
    border-right:2px solid #999;
    transform: rotate(135deg);
}

/*3階層目を持つliの矢印の設定*/
nav ul ul li.has-child::before{
  content:'';
  position: absolute;
  left:6px;
  top:17px;
  width:6px;
  height:6px;
    border-top: 2px solid #fff;
    border-right:2px solid #fff;
    transform: rotate(45deg);
}

/*== 2・3階層目の共通設定 */

/*下の階層を持っているulの指定*/
nav li.has-child ul{
    /*絶対配置で位置を指定*/
  position: absolute;
  left:0;
  top:62px;
  z-index: 4;
    /*形状を指定*/
  background:#999;
  width:180px;
    /*はじめは非表示*/
  visibility: hidden;
  opacity: 0;
    /*アニメーション設定*/
  transition: all .3s;
}

/*hoverしたら表示*/
nav li.has-child:hover > ul,
nav li.has-child ul li:hover > ul,
nav li.has-child:active > ul,
nav li.has-child ul li:active > ul{
  visibility: visible;
  opacity: 1;
}

/*ナビゲーションaタグの形状*/
nav li.has-child ul li a{
  color: #fff;
  border-bottom:solid 1px rgba(255,255,255,0.6);
}

nav li.has-child ul li:last-child a{
  border-bottom:none;
}

nav li.has-child ul li a:hover,
nav li.has-child ul li a:active{
  background:#fdd23d;
}


/*==3階層目*/

/*3階層目の位置*/
nav li.has-child ul ul{
  top:0;
  left:182px;
  background:#999;
}

nav li.has-child ul ul li a:hover,
nav li.has-child ul ul li a:active{
  background:#7db3ff;
}


/*==768px以下の形状*/

@media screen and (max-width:768px){


}


.t-tel{
width: 190px;   
margin-right: 3px;    
}
.t-tel a{
width: 190px;	    
font-size: 1em;	
background: #4779C0;    
transition: all 0.5s;  
border-radius: 50px;
color: #fff;  
display: block;  
text-align: center; 
padding: 0.5em 0;    
}
.t-tel a:hover{ 
background: #1F4273;   
text-decoration: transparent;    
}

.t-mail{
width: 190px;	
margin-right: 20px;    
}
.t-mail a{ 
font-size: 1em;	
color: #fff;    
background: #BF655A;
padding: 0.5em 0; 
transition: all 0.5s;	
display: block;  
text-align: center; 
border-radius: 50px;    
}
.t-mail a:hover{ 
background: #984f46;   
text-decoration: transparent;       
}

@keyframes bg_slide {
    100% {
        transform-origin: left top;
        transform: scaleX(1.0);
    }
    0% {
        transform-origin: left top;
        transform: scaleX(0.0);
    }
}


.t-con{
width: 60%;
}
.m1 .btn,
.m1 a.btn,
.m1 button.btn {
  font-size: 1em;
  font-weight: 400;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
    margin:0 5px;
}


 .m1 a.btn-sns {
  font-size: 1.5em;
  line-height: 40px;

  width: 40px;
  height: 40px;
  padding: 0;

  letter-spacing: 0;

  color: #fff;
  border-radius: 50%;
}

.m1 a.btn-sns:hover {
  color: #fff;
}

.m1 a.btn-sns--instagram {
  background: #d6249f;
  background: -webkit-linear-gradient(45deg, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%);
  background: linear-gradient(45deg, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%);
}
/*====ボタン===*/


.width1{
width: 50%;    
}
.width2{
width: 50%;    
}
.width3{
width: 30%;    
}

.button {
      background: #204273;
     border:1px solid #204273;  
  position: relative;
  display: inline-block;
 color: #fff;
  text-align: center;
  text-decoration: none;
  transition: .3s;
    display: block;
    margin: 0 auto;
    z-index:0;
    padding: 1%;
    font-size: 1em;
    margin-top: 3%;
    border-radius: 50px;
    overflow: hidden;
}
.button:hover {
  color: #fff;

}
.button::before {
  position: absolute;
     background: #4779c0; 
     border:1px solid #4779c0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
border-radius: 50px;    

}
.button:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
      z-index: -1;
border-radius: 50px;
}





/*====ご挨拶===*/


.greeting-box{
width: 100%;
height:auto;    
display: block;  
background:rgba(71,121,192,0.1);      
padding: 5% 0;      
}
.greeting-box img{
width: 50%;    
}
.greeting-text{
font-size: 1em;
padding: 5%;  
  width: 100%; 
height:auto;    
display: block;      
}
.greeting-text strong{
 font-size: 1.3em; 
font-weight: 400; 
line-height: 200%;    
}
.greeting-text .syomei{
padding:3% 0 0;
display: block;    
text-align: right;
}
/*====TOP事業紹介ー===*/
.service-box{
width: 100%;
height: auto;
display: block;
}
.service-text1{
width: 70%;
padding: 5%;    
}
.service-photo1{
width: 30%;    
}
.service-photo1 img{
width:100%;     
}
.safety-box{
width: 100%;
height: auto;
position: relative;
}
.safety-text1{
 width: 40%;  
position: relative;
top: 0;
left: 0;  
padding: 5%;    
}

.safety-photo1{
 width: 60%;   
z-index: -1;    
}
.safety-photo1 img{
 width: 100%;    
}
.sub-box{
width: 100%;    
}
.sub-box img{
width:70%;
display: block;
margin: 0 auto;
}

/*====対応エリア===*/
.g-box{
width: 100%;
height: 500px;     
display: block;
position: relative;
}
.g-box .map-text{
position: absolute;
top: 0;
left: 0;    
}
.map-text span{
font-size: 0.9em;
color: #bf655a;    
}
.g-box .map-img{
width: 100%;
height: 500px;    
background:url("../img/map3.png");
background-position:right bottom;
background-size:75%;
background-repeat: no-repeat;
}
.g-box1{
width: 100%;
height: auto;    
}
.g-box1 .map-img2{
width: 30%;
margin: 0 auto;
display: block;    
}
.g-box1 .map-img2 img{
width: 100%;
}
.faq-box{
    width: 100%;
    height: auto;
    display: block;
    background:rgba(71,121,192,0.1);
}
.faq-text1{
width: 60%; 	
}
.faq-phot1{
width: 35%;    
}
.faq-phot1 img{
width: 98%;
display: block;
margin: 0 auto;
}
.faq-box2{
    width: 100%;
    height: auto;
    display: block;
    background:#fff;
    padding: 2em 0;
}
.faq_border{
border-bottom: 1px solid #eee;
}
.q1{
width: 5%;
padding: 1em;    
}
.q2{
width: 90%;    
padding: 1em;   
text-align: left
}
.q2 p{
font-size: 1em;
line-height: 200%    
}
.q1 strong{
font-size: 1.5em;
color: #bf655a;    
}
.a1{
width: 5%;  
padding: 1em;     
}
.a2{
width: 90%; 
padding: 1em;     
}
.a2 p{
font-size: 1em;
text-align: left;
line-height: 1.75;
}
.a1 strong{
font-size: 1.3em; 
color: #4779c0;    
}

/*====全ページ共通フッターメニュー===*/
footer{
width: 100%;
display:block;
text-align: center;	
background:url("../img/background4.jpg");
background-position: right;
background-size: cover;
padding: 2% 0 0;  
}
footer .footer-box{
height:auto;
 padding: 3%;   
width: 95%;    
display: block;
margin:0 auto 2% ;     
}
.footer-back{
width: 100%;    
display: flex;    
flex-wrap:wrap;
justify-content:space-between;
align-items:center;
background:#1c3457;     
}
.f-con{
width:calc(50% / 2);  
padding: 1%;    
}


.f-tel a{
width: 100%;
display: block;    
font-size: 1.5em;   
color: #204273;
background: #fff;
border-radius: 50px;
padding: 0.5em 1em;
text-align: center;
transition: all 0.5s;
border:3px solid #204273;
}
.f-tel a:hover{
color: #fff;
background: #204273;
 text-decoration: transparent;       
}

.f-mail a{
width: 100%;
display: block;     
font-size: 1.5em;   
color: #fff;
background: #bf655a;
border-radius: 50px;
padding: 0.5em 1em;
text-align: center; 
transition: all 0.5s; 
border:3px solid #bf655a;   
}
.f-mail a:hover{
color: #bf655a;
background: #fff;
text-decoration: transparent;        
}

.f-contact{
width:calc(100% / 2);
    padding: 1em 0;
}
.c_fonto{
width: 100%;    
text-align: center;
color: #fff; 
display: block;
margin: 0 auto;
}


.f-contact a img{
width: 50%;
display: block;
margin: 0 auto;
}
footer .f-text1{
text-align: center;	
color: #fff;
font-size: 1em;	
line-height: 1.75;	
}
footer .f-text2{
text-align: center;	
color: #333;
font-size: 1.3em;
line-height: 1.6;       
}
footer .copyright small{
text-align: center;	
color: #fff;
display: block;	 
font-size: 0.9em;  
padding: 1em 0;    
}

.support-wrapper{
width: 100%;
height: auto;
display:block;
padding: 1% 0;
}
.support-wrapper .table3{
  width: 70%;  
}
.support-wrapper .table2{
  width: 30%;  
}
.support-wrapper .table2 img{
  width: 100%;  
}
.table3 table{
width: 100%;	
}

.table3 table tr{
border: none;
}
.table3 table th{
width: 25%;	
border: none;
text-align: center;
padding: 1%;
color:#5070b0;
font-size: 1em;	
border-bottom: solid 2px #5070b0;
}

.table3 table td{
width: 75%;	
border: none;
text-align: left;
padding: 1%;
line-height: 1.75;	
font-size:1em;	
color:#333;
border-bottom: solid 2px #eee;    
}
.table4 table{
width: 100%;	
}

.table4 table tr{
border: none;
background: rgba(255,255,255,0.7);    
}
.table4 table th{
border: none;
text-align: center;
padding: 1%;
color:#5070b0;
font-size: 1em;	
border-bottom: solid 2px #5070b0;
}

.table4 table td{
width: 20%;	
border: none;
text-align: left;
padding: 1%;
line-height: 1.75;	
font-size:1em;	
color:#333;
border-bottom: solid 2px #eee;    
}
.table5 table{
width: 100%;	
}
.table5 table tr{
border: none;
background: rgba(255,255,255,0.7);      
}
.table5 table th{
width: 80%;	    
border: none;
text-align: center;
padding: 1%;
color:#5070b0;
font-size: 1em;	
border-bottom: solid 2px #5070b0;
}

.table5 table td{
width: 20%;	
border: none;
text-align: left;
padding: 1%;
line-height: 1.75;	
font-size:1em;	
color:#333;
border-bottom: solid 2px #eee;    
}
.b_a-box a{
font-size: 1em;
color: #333;    
}
.b_a-box{
width: calc(90% / 2);    
}
.b_a-box img{
width:100%;    
}
.organize-box{
 width: calc(90% / 2);     
}
.organize_img{
width: 100%;
display: block;    
}
.flex-text1{
width: 50%; 
padding: 3%; 
}
.flex-photo1{
width: 30%;   
}
.flex-photo1 img{
width: 100%;    
}
.flex-illust1{
width: 10%; 
}
.flex-illust1 img{
width: 100%;    
}
.flex-text2{
width: 70%; 
padding: 3%;    
}
.flex-photo2{
width: 30%;   
}
.flex-photo2 img{
width: 100%;    
}
.flex-text3{
width: 50%; 
padding: 3%;    
}
.flex-photo3{
width: 30%;  
}
.flex-photo3 img{
width: 100%;    
}
.flex-illust3{
width: 20%;     
}
.flex-illust3 img{
width: 100%;    
}
.item{
width:calc(100% / 10);  
margin: 1%;  
text-align: center;
line-height: 1.75;
}
.item img{
width:100%;   
display: block;    
}
.item2{
width:calc(98% / 5);  
text-align: center;
line-height: 1.75;
}
.item2 img{
width:100%;   
display: block;    
}
/*===========業務内容===========*/
.business-wrapper{
width: 100%;
height: auto;
display: block;    
}
.bus-box{
 width: calc(98% / 3);   
padding: 1em;
background: #fff;    
box-shadow: 2px 2px 5px #eee;
margin-top: 1em;    
}
.bus-box img{
width: 90%; 
display: block;
margin: 0 auto;
font-weight: bold;    
}
.bus_text{     
font-size: 1em;
color: #1c3457;   
text-align: center;  
line-height: 1.5;    
}
.product-box1{
  width: calc(98% / 3);   
padding: 3%;
background: #fff;    
box-shadow: 2px 2px 5px #eee;     
}
.product-box1 img{
width: 100%;    
}
.product-box1 p{
font-size: 1em;  
text-align: center;    
}
.product-box2{
  width: calc(98% / 4);   
padding: 3%;
background: #fff;    
box-shadow: 2px 2px 5px #eee;
	align-self: stretch;
}
.product-box2 img{
width: 100%;    
}
.product-box2 p{
font-size: 1em;  
text-align: center;    
}
.flow-box{
width: 100%;
display: block;
height: auto;  
display: flex;
flex-wrap:wrap;
justify-content:flex-start;
align-items:center       
}
.flow-title{  
width: calc(92% / 5);     
padding: 1em;
background: rgba(71,121,192,0.1);   
height: 250px;    
}
.flow-title p{
font-size: 1em;     
line-height: 1.75;    
}
.flow-title strong{
font-size: 1.3em;   
border: 1px solid #4779c0;
padding:0.5em 1em;   
color: #4779c0; 
display: inline-block;
background: #fff; 
width: 100%;    
text-align: center;    
}
.flow-tel a{
color: #bf655a;
font-size: 1.5em;   
display: block;    
}
.border-t{
width: 20px;
height:30%;
border-top: dotted #4779c0 3px;    
}
.flex-bus1{
width:25%;    
    }
.flex-bus2{
width:75%;    
    }
.bus-text1{
width:70%;   
padding: 1em 2em;    
}
.bus-photo1{
width:30%;    
}
.bus-photo1 img{
width:98%;      
}
.flex-bus2 span{
text-indent: -1em;
padding-left: 1em;   
display: block;    
}
/*===========安全への取り組み=============*/
.safety-wrapper{
width: 100%;
height: auto;
display: inline-block;
}
.title_label{
    width: 100%;
    position: relative;
  display: inline-block;
  margin: 1rem 0 1rem -10px;
  padding: 1rem 3rem;
  color: #fff;
  background: #4779c0;
  -webkit-box-shadow: 3px 3px 5px rgba(0, 0, 0, .2);
  box-shadow: 3px 3px 5px rgba(0, 0, 0, .2);
font-size: 1.5em; 
}
.title_label:before {
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 0;
  height: 0;
  content: '';
  border-top: 10px solid #1c3457;
  border-left: 10px solid transparent;
}
.safety-photo{
 width: 30%;   
}
.safety-photo img{
 width: 100%;   
}
.safety-text{
 width: 100%; 
padding: 5%;    
}
.safety-text .s-text{
font-size: 1.2em; 
line-height: 200%;    
}
.safety-text .s-text strong{

}
.s-text span{
text-indent: -1em;
padding-left: 1em;   
display: block;    
}
.safety-box1{
  width: calc(95% / 2); 
height: 400px;   
margin-top: 2%;    
}
/*===========業務委託=============*/
.td_w1{
padding: 0.5em;   
display:inline-block;
}

.partner-wrapper{
width: 100%;
height: auto;
display: block;    
}
.partner-photo{
width: 40%;    
}
.partner-photo img{
width: 100%;    
}
.partner-text{
width: 60%;  
padding: 5%;  
}
.illust2{
width: 20%;
position: absolute;
bottom: 0;
right: 0;    
}
.partner-wrapper table{
width: 100%;
padding: 3%;
background: #fff;       
}

.partner-wrapper table tr{
border: none;
}
.partner-wrapper table th{
width: 25%;	
border: none;
text-align: center;
padding: 1%;
color:#fff;
font-size: 1em;	
background: rgba(32,66,115,0.1);    
color: #204273; 
}

.partner-wrapper table td{
width: 75%;	
border: none;
text-align: left;
padding: 1%;
line-height: 1.75;	
font-size:1em;	
color:#333;
border-bottom: solid 1px #ebebeb;    
}
.b_tel a{
 background: #4779c0;   
border:#4779c0 2px solid;    
color: #fff;  
padding: 0.5%;   
transition: all 0.5s;    
}

.b_tel a:hover{
background: #fff;
color:  #4779c0; 
text-decoration: transparent;    
}

.b_mail a{
 background: #bf655a;   
border:#bf655a 2px solid;    
color: #fff;  
padding: 0.5%;   
transition: all 0.5s;    
}
.b_mail a:hover{
background: #fff;
color:  #bf655a; 
text-decoration: transparent;    
}
.btn2{
width:calc(50% / 2);      
}
.btn2 a{
width:95%;
height: auto;
display: block;
margin: 0 auto;
border-radius: 50px;   
text-align: center;	
font-size: 1.5em;
}
/*===========会社概要=============*/
.company-wrapper{
width: 100%;
height: auto;
display:block;
}
.company-wrapper h2{
  font-size: 1.5em;  
}
.company-wrapper h2 strong{
  font-size: 1.5em;  
}
.company-wrapper .table{
width: 70%;  
}
.company-wrapper .company-photo{
width: 30%;  
}
.company-wrapper .company-photo img{
width: 100%;  
}
.company-wrapper table{
width: 100%;
padding: 3%;
background: #fff;       
}
.company-wrapper .Thin{
width: 100%;
opacity: 0.3;	
}

.company-wrapper table tr{
border: none;
}
.company-wrapper table th{
width: 25%;	
border: none;
text-align: center;
padding: 1%;
color:#204273;
font-size: 1em;	
border-bottom: solid 1px #204273;
}

.company-wrapper table td{
width: 75%;	
border: none;
text-align: left;
padding: 1%;
line-height: 1.75;	
font-size:1em;	
color:#333;
border-bottom: solid 1px #ebebeb;    
}
.company-wrapper table td img{
width: 50%;	
}
.company-wrapper iframe{
height: 350px;	
}
.company-wrapper table .care{
font-size: 1.5em;    
}
.map-box{
width: 100%;    
padding: 3%;
background-color: #f6f9fc;
background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%234779c0' fill-opacity='0.07' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");  
}
.map-box iframe{
height: 350px;    
}
.com-box1{
width:70%;
height: auto;
display: block;
}
.com-box2{
width: 30%;
height: auto;
display: block;
}
.com-box2 img{
width: 100%;
}
/*===========お問い合わせ===========*/
.contact-wrapper{
width: 100%;
height: auto;
display: block;     
}
.contact2{
width: 100%;
display: block;  
margin: 0;
background: #fff;  
padding: 5% 0;    
}
.contact-box2{
width: 100%;	  
}


.contact2 .red{
font-size: 0.9em;
color:#fdd23d; 	
padding-top: 3%;
display:block;	
font-weight: 900;
width: 100%;
}
.contact-box2 a{
font-size: 1.5em;
color:#fff; 	
transition: all 0.5s;	 
border: 3px solid #204273;
background: #204273;    
  padding: 1em;   
display: block;      
width: 60%;  
text-align: center;
border-radius: 50px;  
margin: 0 auto;
}
.contact-box2 a:hover{
text-decoration: transparent;	
color: #204273;  
background: #fff;       
}
.contact-wrapper{
width: 100%;	
}
.contact-flex{
    width: calc(80% / 2);
    padding: 1em;
}
.contact-flex img{
width: 100%;    
}
form{
	width: 100%;
	text-align: center;
}
.checkbox_text{
line-height: 1.75;
color: #333;	
}
.table1{
width: 100%;
padding:1%;	
background: #fff;	
}
.table1 table{
  width: calc(90% / 2);	
 
}
.table1 table .blue{
	background-color:#4779c0;
	color:#fff;
	font-size:0.7em;
	padding:0.7%;
    font-weight: bold;
    margin-right: 5px;
    font-weight: bold;
}
.table1 .w30{
width: 30%;
margin-bottom: 2%;	
}
.table1 table .red1{
	background-color:#bf655a;
	color:#fff;
	font-size:0.7em;
	padding:0.7%;
    font-weight: bold;
    margin-right: 5px;
}


.table1 table tr{
}

.table1 table th{
	font-size: 1em;
	text-align: left;
	color:#333;
	font-weight:300;
	padding-left: 2%; 
    border-bottom: 1px dotted #b0b0b0;
    font-weight: bold;
}

.table1 table td p{
	font-size: 1em;
	color:#000;
	font-weight:300;
	padding-top: 1%;
	line-height: 1.7;
}
.table1 table td img{
width:100%;	
margin-top: 1%;	
border-radius: 50px;	
}
.table1 table td{
font-size: 1em;
color:#333;
padding: 2% 1%;
font-weight:300; 
width: 70%; 
border-bottom: 1px dotted #b0b0b0;   
text-align: left;
}

.table1 table td iframe{
height: 400px;	
}

.textareatablearea{
width:100%;
}

textarea{
width:100%;
height: 250px
}
.mailform dd p{
	margin-top: 1%;
	font-size:1.1em;
	color:#333;
	letter-spacing: 4px;
	font-weight:300;
	line-height: 1.75;
}

.single p{
	text-align: center;
	color:#333;
	font-weight:300;
}


.fm-text p{
	padding-bottom: 30px;
	font-size: 1.1em;
	text-align: left;
	color:#333;
	line-height: 200%;
	font-weight:300;
}
.form-button
{
margin: 5% 0;
text-align: center;
}

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


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

input[type="checkbox"]{
	font-size: 1em;
	margin-left: 2%;
	margin-bottom: 2%;
	border:1px solid #bababa;	
}
input[type="text"]{
	width: 100%;
	height: 40px;
	font-size: 1em;
	padding: 10px;
	background:#fff;
	border:1px solid #bababa;
}
input[type="tel"]{
	width: 100%;
	height: 40px;
	font-size: 1em;
	padding: 10px;
	background:#fff;
	border:1px solid #bababa;
}
input[type="email"]{
	width: 100%;
	height: 40px;
	font-size: 1em;
	padding: 10px;
	background:#fff;
	border:1px solid #bababa;
}
textarea[type="text"]{
padding: 10px;	
font-size: 1em;	
background:#fff;	
border:1px solid #bababa;	
}

.kojin{
width: 95%;
height: auto;
display:block;	
margin: 0 auto;
}
.kojin h3{
font-size: 1.2em;
margin-bottom: 1%;	
font-weight:300;
transition: all 0.5s;
padding: 1%;
text-align: left;	
color: #204273;	
}
.kojin h3:hover{
text-decoration: transparent;	
color:#4779c0;	
}
.kojin h4{
font-size: 1em;
text-align: left;
color:#204273;	
padding-bottom: 3px;	
font-weight:bold;
letter-spacing: 2px;
border-bottom: 1px solid #204273;
padding-left: 1%;	
}
.kojin p{
font-size:0.9em;
line-height:200%;	
text-align: left;
font-weight: normal;
color:#333;	
font-weight:300;
letter-spacing: 2px;
padding: 1% 0;	
padding-left: 1%;	
}
#open1{
padding:3%;	
background: #fff;
}


.out_cover{
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 10;
   
}
.out_cover::after{
	content: "";
	position: absolute;
	background:rgba(255,255,255,0.10);
	backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
	z-index: 11;
	TOP:0;
	left:0;
	right: 0;
	bottom:0;
}
.out_text{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 12;
	color: red;
	font-size: clamp(1rem, 0.5rem + 2vw, 2rem);
}

