@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;
background: rgba(227,238,247,0.5);    
}
.sp,.tb,.f-con_sp{
display: none!important;
}

.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;
}
h1,h2,p,.copyright{
color:#333;
font-weight: normal;	
}

.text1{
font-size: 1em;  
line-height: 200%;    
}
.text1 strong{
font-size: 1.5em;    
display: block;    
font-family: 'Noto Serif JP', serif;
font-weight: 600;    
}
.text1 .strong{
font-size: 1.5em;    
display: block;   
    
}
.text2{
font-size: 1em;
line-height: 200%;    
}

.text3{
font-size: 1.2em;  
line-height: 200%;    
}
.text3 strong{
font-size: 1.5em;    
 position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform : translate(-50%,-50%);
  transform : translate(-50%,-50%);
  width: 100%;
  text-align:left;/*一応BOX内の文字も中央寄せ*/ 
      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; 
    z-index: 99;
    padding-left: 5%;
    font-family: 'Noto Serif JP', serif;
font-weight: 600;  
}
.text4{
font-size: 1.1em;  
line-height: 200%;    
}
.text4 strong{
font-size: 1.2em;      
}
.text5{
font-size: 1.5em;  
} 
.sp_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: rgba(89,2,59,0.1);	 
}
.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:flex-end;
align-items:center;    
}
.flex-box3{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:flex-start;
align-items:center;    
}
.flex-box4{
width: 70%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:space-around;
align-items:center;
    margin: 0 auto;
}
.flex-box5{
width: 100%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:flex-start;
align-items:flex-end;
    margin: 0 auto;
}
.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: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;
}
.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: 2.2em;		
text-align: left;
letter-spacing: 5px;	
color: #59023B; 
font-family: 'Noto Serif JP', serif;
font-weight: 600;      
}
.contener{
max-width: 90%;
 width: 100%;   
display: block;
margin: 0 auto;
}
.midashi .small{
font-size: 0.7em;
display:block;	
padding-top:0.5%; 
letter-spacing: 1px;   
color: #348ABF;    
}
.midashi .border-bottom{
border-bottom: 5px solid #fdd23d;    
}

.midashi p{
font-size: 2.2em;	
text-align: left;
letter-spacing: 5px;	
font-weight: bold; 
color: #59023B;  
font-family: 'Noto Serif JP', serif;
font-weight: 600;      
}



.globalMenuSp, .navToggle{
	display: none;
}

.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:20%;	
}
.top_menu .menu_t .logo img{
width:300px;	
display: block;
margin: 0 auto;
}


.top_menu .m1{
width: 80%;	   
margin-top: 1%;
}

header{
width: 100%;   
height: auto;    
position:-webkit-sticky; 
    position:sticky; 
    top:0;    
    z-index: 999;
    transition: 1s;
    height: auto;
    background: #f0f6fa; 
transition: all 0.5s;	
}


/*==ナビゲーション全体の設定*/
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: #333;   
}
/*2階層目以降は横並びにしない*/
nav ul ul{
  display: block;
}

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

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

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: #400112;    
transition: all 0.5s;  
border-radius: 50px;
color: #fff;  
display: block;  
text-align: center; 
padding: 0.5em 0;    
}
.t-tel a:hover{ 
background: #023859;   
text-decoration: transparent;    
}

.t-mail{
width: 190px;	
padding-right: 5px;    
}
.t-mail a{ 
font-size: 1em;	
color: #fff;    
background: #023859;  
padding: 0.5em 0; 
transition: all 0.5s;	
display: block;  
text-align: center; 
border-radius: 50px;    
}
.t-mail a:hover{ 
background: #400112;     
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: 80%;    
}
.width3{
width: 30%;    
}
.button {
      background: #fff;
     border:2px solid #400112;  
  position: relative;
  display: inline-block;
 color:  #400112;
  text-align: center;
  text-decoration: none;
  transition: .3s;
    display: block;
    margin: 0 auto;
    z-index:0;
    padding: 1%;
    border-radius: 50px;
    font-size: 1em;
    margin-top: 3%;
}
.button:hover {
  color: #fff;
    border-radius: 50px;
}
.button::before {
  position: absolute;
     background: #400112;  
  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;
}


.btn2{
width: 40%;
height: auto;
display: block;
margin: 0 ;
background: #348ABF;
color: #fff;
padding: 0.5%;
border-radius: 50px;   
text-align: center;
border:#348ABF 2px solid;
transition: all 0.5s;	
font-size: 1em;       
}
.btn2:hover{
background: #fff;
color:  #348ABF; 
text-decoration: transparent;    
}
/*====ご挨拶===*/
.news_w{
width: 100%;    
display: block;
height: auto;     
}

.greeting-box{
width: 100%;
height: auto;
display: inline-block;
background: url("../img/background1.jpg");    
background-size: cover;
background-position: center;
background-repeat: no-repeat;    
}

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

.greeting-text strong{
font-size: 1.3em;
padding: 1% 0 2%; 
display: block; 
font-family: 'Noto Serif JP', serif;
font-weight: 600;      
}
.greeting-text {
width:95%; 
display: block;
margin: 0;    
font-size:1em;
text-align: left;
line-height:200%;
}
.g-text{
width: 60%; 

}
.g-photo{
width: 40%;  
position: relative;     
}
.g-photo:after{
position: absolute;
display: block;
content: "";
top: 0;
left: 0;
width: 100%;
height: 100%;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
transform: rotate(3deg); /* 回転させる */
background:#400112;
z-index: -1; 
}
.g-photo img{
width:100%; 
}
/*====事業紹介ー===*/
.bus-box{
width: 90%;
height: auto;
display: block;
margin: 0 auto;
 position: relative;
}
.bus-text1{
width: 100%;    
position: absolute;
top: 200px;   
}
.bus-text1 p{
color: #FFF; 
text-shadow: 0 3px 5px #000;    
}
.bus-text2{
width: 80%;    
position: absolute;
bottom: 80px; 
left: 10%;    
}
.f-box{
width: calc(98% / 3);    
background: #023859;
padding: 2%;
color: #fff;   
text-align: center;   
margin-bottom: 1%;   
border:2px solid #fff;
}
.bus-photo{
width:90%;    
display: block;
margin: 0 auto;
    
}

.bus-photo img{
width: 100% ;  
display: block;
margin: 0 auto;
}
.btn-flex{
   position: absolute;
bottom: -20px; 
 left: 35%;  
}
/*====対応エリア===*/
.g-box{
width: 80%;
height: 700px;    
display: block;
position: relative;
background: rgba(52,138,191,0.2);  
margin: 0 auto;
}
.g-box .map_img1{
width: 50%;
display: block;
margin: 0; 
float: right;
position: absolute;
bottom: 0;
right: 0;    
}
.g-box .map_img2{
width: 20%;
display: block;
margin: 0; 
position: absolute;
bottom: 0;
left: 0;  
}



/*====コンテンツ===*/
.btn3{  
display: block;
margin: 0 auto;
}
.button3{
    display:block;
    background:#fff;
    text-align:center;
    color:#59023B;
    cursor:pointer;
    position: relative;
    text-decoration: none;
     font-size: 1.2em;
    border:2px solid #59023B;
    border-radius: 50%; 
    width:80px;
height:80px;  
line-height: 80px;    
transition: all 0.5s;	    
}
.button3:hover{
    display:block;
    background:#59023B;
    text-align:center;
    color:#fff;
    cursor:pointer;
    position: relative;
    text-decoration: none;
     font-size: 1.2em;
    border:2px solid #fff;
text-decoration: transparent;  
}
.contents-box{
width: 98%;
height: auto;
display: flex;    
flex-wrap:wrap;
justify-content:space-around;
align-items:center; 
padding-bottom:5%;   
margin: 0 auto;
}
.contents{
width:calc(90% / 4);   
    position: relative;
      margin-top: 5%; 
    background: #348ABF;
    border-radius: 10px;
}

.cont-box{
width: 100%;   
   overflow: hidden; 
    border-radius: 5px; 
}
.cont-box img{
width: 100%;   
  transform: scale(1);
  transition: .3s ease-in-out; 
    transition: all 0.5s;	
}
.cont-box:hover img {
  transform: scale(1.3);
    text-decoration: transparent;
}
.c-box{
position: absolute;
bottom:3%;
right: 0;    
}
/*====全ページ共通フッターメニュー===*/
footer{
width: 100%;
display:block;
text-align: center;	
background:url("../img/background4.jpg");
background-position: center;
background-size: cover;
padding: 2% 0 0;  
}
footer .footer-box{
height:auto;
 padding: 3%;   
width: 95%;    
display: block;
margin:0 auto 2% ;     
}
footer .footer-box .footer-back{
display: flex;    
flex-wrap:wrap;
justify-content:space-between;
align-items:center;    
}
.f-con{
width:calc(100% / 3);
padding: 3%;  
color:#023859;     
}
.f-con a{
width:calc(90% / 3);
color:#023859;  
font-size: 2em;   
transition: all 0.5s;	    
}
.f-con a:hover{
letter-spacing: 1px;
color: #348ABF;    
text-decoration: transparent;
}
.f-tel i{
font-size: 1em!important;
width: 50px;
height: 50px;
border: 2px solid #59023B;
border-radius: 50%;
line-height: 50px;    
text-align: center;   
color: #59023B;   
margin: 1% 0 2%;    
}
.f-mail i{
font-size: 1em!important;
width: 50px;
height: 50px;
border: 2px solid #59023B;
border-radius: 50%;
line-height: 50px; 
text-align: center;   
color: #59023B;     
margin: 1% 0 2%;      
}
.f-tiktok img{
font-size: 1.3em;
width: 50px;
height: 50px;
border: 2px solid #59023B;
border-radius: 50%;
line-height: 50px; 
text-align: center;   
color: #59023B;     
margin: 1% 0 2%;    
padding: 1%;    
}
.f-contact{
width:calc(100% / 2);
    padding: 5%;
}
.c_fonto{
width: 100%;    
text-align: center;
color: #fff; 
display: block;
margin: 0 auto;
  
}
.border{
border-right: 1px dotted #333;
border-left: 1px dotted #333;   
 margin: 1% 0;   
}

.f-contact a img{
width: 80%;
display: block;
margin: 1% 0;
}
footer .f-text1{
text-align: center;	
color: #fff;
font-size: 1.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;
padding:2% 0;
display: block;	
background:#1c3457;  
font-size: 0.9em;    
}

.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;
}
.step-box1{
width: 100%; 
background: #fff;
padding: 3%;    
}
.flex-step{
 width: calc(100% / 5);
display: flex;
flex-wrap:wrap;
justify-content:center;
align-items:center;
margin-top: 1%;    
}
.step-text
{
width: 90%;
text-align: center;  
margin: 1% 0;
position: relative;
}
.step-text p{
 font-size: 1em;   
background: #eee;
padding: 1%;
height: 80px;        
}
.s-box{
   position: absolute;
  top: 60%;
  left: 50%;
  -webkit-transform : translate(-50%,-50%);
  transform : translate(-50%,-50%);
  width: 100%;
  text-align: center;  
}
.step-text .number{
 font-size: 0.9em;   
display: block; 
background:#023859;
color: #fff; 
padding: 1%;    
}
.border-top{
width: 10%;
height: 10px;
border-top: dotted 3px #348ABF;
}
.border-top_w{
width: 10%;
height: 10px;
border-top: dotted 3px #fff;
}
.bus-text3{
width: 75%;    
}
.bus-photo3{
width: 25%; 
}
.bus-photo3 img{
 width: 90%;
display: block;
margin: 0 auto;
}
.bus-text4{
width: 50%;    
}
.bus-photo4{
width: 25%; 
}
.bus-photo4 img{
 width: 90%;
display: block;
margin: 0 auto;
}
.bus-text5{
width: 40%;    
}
.bus-photo5{
width: 30%; 
}
.bus-photo5 img{
 width: 90%;
display: block;
margin: 0 auto;
}
.bus_p{
width: 40%;
margin: 2% 0;    
}
/*===========当社の強み=============*/
.strength_box{
width: calc(95% / 3);  
background: #142B6B;     
}
.strength_box p{
color: #fff;
text-align: center;  
padding: 2%;    
line-height: 1.75;   
font-size: 1em;    
}
.strength{
width: 100%;
margin-bottom: 10%;    
}
.strength_box img{
width: 100%;
}

.wrapper{
margin-left: 20%;
width: 60%;
height:300px;    
background: #fff;    
position: absolute;
bottom: -200px;   
display: inline-block;
padding: 2%;    
z-index: 100;    
}

.phont-box1{
width: 100%;
height: 400px;    
background:url("../img/strength4.jpg");
background-size: cover;
background-position: center top;    
position: relative;
}
.phont-box2{
width: 100%;
height: 400px;    
background:url("../img/strength5.jpg");
background-size: cover;
background-position: center top;    
display: block;   
position: relative;    
}
.phont-box3{
width: 100%;
height: 400px;    
background:url("../img/strength6.jpg");
background-size: cover;
background-position: center top;    
display: block; 
position: relative;    
}

/*===========協力会社募集===========*/
.partner-wrapper{
width: 100%;
height: auto;
display: block;    

}
.partner-box1{
width: 80%;
height: 900px;
position: relative;   
display: block;
margin: 0 auto;        
}

.partner-box1 img{
  width: 50%;
}
.partner-text1{
  width: 50%;    
position: absolute;
top:50%;
right: 10%;
background: #f0f6fa;
padding: 3%;  
border-top: 5px solid #fff;
border-left: 5px solid #fff;    
}
.partner-box2{
width: 80%;
height: auto;
position: relative;   
display: block;
margin: 0 auto;   
}
.partner-photo2{
width: 40%;
}
.partner-photo2 img{
width: 100%;
}
.partner-text2{
width: 60%;    
padding:0 5%;    
}
.flow-box1{
width: 70%;
height: auto;
display: block;    
padding: 2%;    
}
.flow-box2{
width: 30%;   
}
.flow-box2 img{
width: 100%;   
}
.flow-box1 .flow-text{
font-size: 1.5em;   
border-left: 3px solid #023859;
padding-left: 1%;   
line-height: 1.5;    
}
.flow-box1 .flow-text .number{
font-size:0.9em; 
background: #023859;
color: #fff;
padding: 0.5% 1em;    
}
.back_w{
background: rgba(255,255,255,0.7);
padding: 3%;    
}
.partner-photo3{
width: 40%;
}
.partner-photo3 img{
width: 100%;
}
.partner-text3{
width: 60%;    
padding:0 5%;    
}
.partner-img1{
width: 100%;
position: relative;
}
.partner-img1 h2{
position: absolute;
top:20px;
left: 20px;    
font-family: 'Noto Serif JP', serif;
font-weight: 600;  
color: #A3046E; 
font-size:2.3em;    
      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;     
line-height: 1.5;    
}

.partner-img1 h3{
position: absolute;
top:80px;
left: 20px;      
font-family: 'Noto Serif JP', serif;
font-weight: 600;  
color: #348ABF; 
font-size: 1.8em;    
      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;     
}
.partner-img1 p{
position: absolute;
bottom:20px;
left: 20px;    
font-size: 1.2em;    
      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;     
}
.partner-img1 .btn{
position: absolute;
bottom:50px;
left: 20px;   
    
}
.partner-img1 img{
width: 100%;     
}
/*===========求人情報===========*/
.recruit-wrapper{
width: 100%;
height: auto;
display: block;   
}
.recruit-img1{
width: 100%;
position: relative;
}
.recruit-img1 h2{
position: absolute;
top:20px;
left: 20px;    
font-family: 'Noto Serif JP', serif;
font-weight: 600;  
color: #A3046E; 
font-size:2.3em;    
      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;     
line-height: 1.5;    
}

.recruit-img1 h3{
position: absolute;
bottom:150px;
left: 20px;       
font-family: 'Noto Serif JP', serif;
font-weight: 600;  
color: #348ABF; 
font-size: 1.8em;    
      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;     
}
.recruit-img1 p{
position: absolute;
bottom:20px;
left: 20px;    
font-size: 1.2em;    
      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;     
}
.recruit-img1 .btn{
position: absolute;
bottom:50px;
left: 20px;   
    
}
.recruit-img1 img{
width: 100%;     
}
.tiktok{
width: 20%; 
}
.tiktok img{
width: 100%; 
vertical-align: middle;    
border-radius: 30px;    
}

.tiktok img:hover{
opacity: 0.7;
text-decoration: transparent;    
}

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

.recruit-wrapper 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;    
}
/*===========会社概要=============*/
.company-wrapper{
width: 100%;
height: auto;
display:block;
padding: 1% 0;
}
.company-wrapper h2{
  font-size: 1.5em;  
}
.company-wrapper h2 strong{
  font-size: 1.5em;  
}
.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:#5070b0;
font-size: 1em;	
border-bottom: solid 2px #5070b0;
}

.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 2px #eee;    
}
.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: #fff;     
}
.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;    
background: #fff;    
}
.contact2{
width: 100%;
display: block;  
margin: 0;
background: #eee;  
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;	
padding: 1% 0;    
border: 3px solid #348ABF;
background: #348ABF;    
  padding: 2%;   
display: block;    
margin: 1% 0;    
width: 70%;  
text-align: center;
border-radius: 50px;  
margin: 0 auto;
}
.contact-box2 a:hover{
text-decoration: transparent;	
color: #348ABF;  
background: #fff;       
}
.contact-wrapper{
width: 100%;	
}
.contact-flex{
    width: calc(70% / 2);
}
form{
	width: 100%;
	text-align: center;
}
.checkbox_text{
line-height: 1.75;
color: #333;	
}
.table1{
width: 100%;
padding:1%;	
background: #fafafa;	
}
.table1 table{
width: 100%;	
 
}
.table1 table .blue{
	background-color:#023859;
	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:#BF0426;
	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: #023859;
	transition: all 0.5s;	
	font-weight:300;
    border-radius: 50px;
    border:1px solid #023859;
}
.form-button button:hover{
    color: #023859;
     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: #142B6B;	
}
.kojin h3:hover{
text-decoration: transparent;	
color:#400112;	
}
.kojin h4{
font-size: 1em;
text-align: left;
color:#142B6B;	
padding-bottom: 3px;	
font-weight:bold;
letter-spacing: 2px;
border-bottom: 1px solid #142B6B;
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;
}
