@charset "UTF-8";

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,
legend,input,button,textarea,p,blockquote,th,td{margin:0;padding:0;}

html {
overflow: auto;
}
body {
-webkit-print-color-adjust: exact;
overflow:hidden;
font-size: 16px;
line-height:1.5;
color:#000000;
/*font-family: 'Zen Kaku Gothic New', sans-serif;*/
font-family: 'Sawarabi Gothic', sans-serif;

}

input,select,textarea,button{
/*font-family: 'Zen Kaku Gothic New', sans-serif;*/
font-family: 'Sawarabi Gothic', sans-serif;
}
/* IE hack */
_:-ms-input-placeholder, :root 
body {
/*font-family: 'Zen Kaku Gothic New', sans-serif;*/
font-family: 'Sawarabi Gothic', sans-serif;
}
_:-ms-input-placeholder, :root 
input,select,textarea,button{
/*font-family: 'Zen Kaku Gothic New', sans-serif;*/
font-family: 'Sawarabi Gothic', sans-serif;
}

body,h1,h2,h3,h4,h5,p,ul,ol,li,dl,dd,dt{margin:0;padding:0px;}

p{

}

li {
list-style: none;
margin: 0;
padding: 0;
}


a {
text-decoration: none; 
color:#292929;
}
a:hover {
text-decoration: none;
}
/*a img:hover { opacity: 0.9; -moz-opacity: 0.9;}*/
a img {
border-style:none;
}

img {
max-width: 100%;
vertical-align: bottom;
}

button{
background-color: transparent;
border: none;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}

textarea{
resize: vertical;
min-height: 3em;
max-height: 25em;
height: 10em;
}

button:focus,
input:focus,
select:focus,
textarea:focus{
outline: none;
}
button:hover{
cursor:pointer
}

table{
border-collapse: collapse;
}

* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

/*--------------------------------------------------------
定数 ※個別設定
--------------------------------------------------------*/

/*共通設定*/
.pc-none{
display: none;
}

.row{
width:100%;
margin:0 auto;
text-align:center;
}
.in_row{
width:1100px;
margin:0 auto;
text-align:center;
}

/*@media screen and (max-width: 1100px){
.in_row{
width:100%;
padding:0 10px 0;
box-sizing:border-box;
margin:0 auto;
text-align:center;
}
}*/



/* IE hack */
_:-ms-input-placeholder, :root 
.boxsample {
display: flex; /* 子要素をflexboxで揃える */
flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
justify-content: center; /* 子要素をflexboxにより中央に配置する */
align-items: center;  /* 子要素をflexboxにより中央に配置する */
}
/*firefox hack*/
@-moz-document url-prefix() {
div.boxsample{
-webkit-border-radius: 5px;/* for Safari and Chrome */
-moz-border-radius: 5px; /* for Firefox */
-o-border-radius: 5px; /* for opera */
border-radius: 5px;
}
}

/*--------------------------------------------------------
ヘッダー
--------------------------------------------------------*/
div.head_main{
width: 100%;
position:relative;
background-image:url(../images/kv.jpg);
background-repeat:no-repeat;
background-position:left top;
background-size:cover;
height:100vh;
}

div.head_in{
width:100%;
display:flex;
justify-content:flex-start;
align-items:center;
padding:20px 40px;
box-sizing:border-box;
}
div.head_logo_area{
padding:10px 0 10px;
}
div.head_navi_area{
margin-left:auto;
display:flex;
justify-content:flex-end;
align-items:center;
}

div.head_kv{
width:80%;
display:flex;
flex-direction:column;
align-items:flex-start;
justify-content:center;
padding:20px 0px;
box-sizing:border-box;
margin: 0 auto;
}
div.head_kv h1{
text-align:left;
font-size:60px;
font-weight: 600;
color:#000;
line-height:1.5;
letter-spacing: 2px;
padding:80px 0 0 0;
margin: 0;
}
div.head_kv h1 span{font-size:48px;}
div.head_kv h2{
text-align:left;
font-size:24px;
font-weight:500;
color:#000;
padding:20px 0 0 20px;
margin: 0;
}

div.head_main_low{
width: 100%;
position:relative;
height:auto;
}
div.head_main_low .globalMenuSp li a{
color:#000;
}
div.head_kv_low{
width:100%;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
padding:60px;
box-sizing:border-box;
background:#e2e2e2;
}

div.head_kv_low h1{
position: relative;
font-size:48px;
text-align:center;
line-height:1;
}
div.head_kv_low h1 span{
display:block;
font-size:18px;
text-align:center;
line-height:3;
}


/*--------------------------------
ナビゲーション
---------------------------------*/
.hamburger{
display:none;
}
.globalMenuSp{

}
.globalMenuSp ul{
display:flex;
justify-content:center;
align-items:center;
margin-right:20px;
}
.globalMenuSp ul li{
padding:0 15px 0;
}
.globalMenuSp ul li a{
font-size:16px;
color:#000;
font-weight:600;
line-height:1.5;
letter-spacing: 2px;
position:relative;
}

.globalMenuSp ul li a:hover{
color:#00ccff;
}
.globalMenuSp ul li:last-child a:after{
display:none;
}

div.contact_btn{

}
div.contact_btn a{
background:#00ccff;
border-radius:50px;
display:flex;
align-items:center;
justify-content:center;
padding:10px 40px 10px;
color:#fff;
font-weight:600;
letter-spacing: 2px;
}

div.contact_btn a:hover{
opacity:0.5;
}


/*--------------------------------------------------------
フッター
--------------------------------------------------------*/
div.footer{
background:#e2e2e2;
}
div.footer_in{
width:100%;
padding:60px 30px 60px;
box-sizing:border-box;
display:flex;
align-items:center;
justify-content:flex-start;
}
div.foot_logo img{
width:50%;
}
ul.foot_nav{
text-align:center;
display:flex;
justify-content:center;
align-items:center;
}
ul.foot_nav li{
padding:0 10px 0;
position:relative;
}
ul.foot_nav li a{
color:#000;
font-size:14px;
}
ul.foot_nav li a:hover{
color:#840000;
}

div.foot_copy{
text-align:right;
margin-left:auto;
width:20%;
}
.foot_copy h5{
font-size:12px;
display:inline;
}

/*page top*/
#page_top{
width: 39px;
height: 39px;
border-radius: 5px;
/*border:1px solid #000;*/
position: fixed;
right: 10px;
bottom: 10px;
/*background: #eaeaea;*/
opacity: 0.8;
}
#page_top a{
position: relative;
display: block;
width: 40px;
height: 40px;
text-decoration: none;
transform: rotate(0.05deg);
}
#page_top a::before{
font-family: 'Font Awesome 5 Free';
font-weight: 900;
content: '\f106';
font-size: 24px;
color: #292929;
position: absolute;
top: 0;
bottom: 20px;
right: 0;
left: 0;
margin: auto;
text-align: center;
}

/*--------------------------------------------------------
コンテンツ
--------------------------------------------------------*/
div.title_area{
padding:0px 0 0px;
}
div.title_area h2{
position: relative;
font-size:48px;
text-align:left;
line-height:1;
}
div.title_area h2 span{
display:block;
font-size:18px;
text-align:left;
line-height:3;
}
.wh{
color:#fff;
}

/*about*/
div.about{
padding:80px 0 80px;
}
div.about_in{
background:#f3f3f3;
border-radius:5px;
padding:40px;
box-sizing:border-box;
display:flex;
justify-content:flex-start;
align-items:flex-start;
}
div.about_text{
margin-left:auto;
width:65%;
}
div.about_text p{
width:100%;
text-align:left;
font-size:18px;
line-height:1.7;
padding: 10px 0;
}
div.about_text p span{
color:#840000;
font-weight:500;
}



/*sv*/
div.service{
padding:80px 0 80px;
background-image:url(../images/sv.jpg);
background-repeat:no-repeat;
background-position:center center;
background-size:cover;
}
div.sv_in{
padding:60px 0 0px;
}
div.sv_in ul{
display:flex;
align-content:stretch;
justify-content:space-between;
}
div.sv_in ul li{
width:32%;
background-color: rgba(255, 255, 255, 0.6);
padding:30px;
box-sizing:border-box;
border-radius:5px;
}
div.sv_in ul li h3{
font-size:24px;
}
div.sv_in ul li p{
font-size:16px;
color:#000;
line-height:1.7;
text-align:left;
}
div.sv_in ul li div{
margin:20px auto;
width:100%;
display:flex;
align-items:center;
justify-content:center;
}
div.sv_in ul li div img{width:100%}



div.banner{
margin:80px 0;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
}
div.banner_in{
display:flex;
align-items:center;
justify-content:flex-start;
padding:0 0 0 40px;
margin:20px auto;
height:237px;
background-image:url(../images/company.jpg);
background-repeat:no-repeat;
background-position:right center;
background-size:60%;
background-color: #eee;
}
div.banner_in02{
display:flex;
align-items:center;
justify-content:flex-start;
padding:0 0 0 40px;
margin:20px auto;
height:237px;
background-image:url(../images/recruit.jpg);
background-repeat:no-repeat;
background-position:right center;
background-size:60%;
background-color: #eee;
}

div.banner a:hover{opacity:0.7}












/*company*/
div.company{
padding:0px 0 0px;
}
div.com_wrap{
padding:60px 0 60px;
}
div.title_area_com{
padding:0px 0 0px;
}
table.com_tb{
width:80%;
margin:0px auto 0;
border-collapse:collapse;
border:1px solid #292929;
}
table.com_tb th{
border-collapse:collapse;
font-size:14px;
padding: 15px;
vertical-align:top;
transform: rotate(0.05deg);
border:1px solid #292929;

color:#292929;
}
table.com_tb td{
font-weight:500;
border-collapse:collapse;
font-size:14px;
text-align:left;
padding: 25px;
transform: rotate(0.05deg);
border:1px solid #292929;
color:#292929;
}

/*contact*/
div.contact{
padding:40px 0 40px;
background:#f3f3f3;
}
div.contact_in{
display:flex;
justify-content:flex-start;
align-items:flex-start;  
}

div.contact_text{
margin-left:auto;
padding: 40px 0 0px;
}
div.contact_text h3{

padding:0 0 30px 0;
}
div.contact_text h4{
padding:0 0 30px 0;
}


.cta_btn{
display:block;
width:250px;
padding: 18px 0;
font-size: 18px;
font-weight: 600;
color: #fff;
margin: 0 auto 30px;
background-color: #00ccff;
border-radius: 5px;
transition: all 0.7s ease;
text-align:center;
transform: rotate(0.05deg);

}
.cta_btn:hover{
	opacity:0.7;
}


/*//////////////////////////////////
//下層ページ
//////////////////////////////////*/

.privacy_wrap {
padding: 15px;
box-sizing: border-box;
text-align: left;
width: 80%;
transform: rotate(0.05deg);
margin: 0 auto;
}
.privacy_wrap h4{
font-weight:bold;
transform: rotate(0.05deg);
}

.privacy_title{
border-top:1px solid #000;
}


