@charset "utf-8";
/*default*/
*{
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;
    margin: 0;
    padding: 0;
    color:#040404;
    line-height:1.6em;
}
body {
    font-size:16px;
    font-feature-settings: "palt" 1;
}
img{
    vertical-align:top;max-width: 100%;height: auto;
    width:auto;border: none;pointer-events: none;
}
.clearfix:after{content: "";display:block;clear:both;}

.wrapper{margin: 0 auto;max-width: 1200px;}

.sp{display: none;}.pc{display: block;}.tub{display: none;}

/*----------font & link-----------*/
h2{font-size: 2em;font-weight:bold;line-height: 1.3em;}
a{text-decoration: none;}

.f0_8{font-size: 0.8em}
.f0_9{font-size: 0.9em}
.f1_2{font-size: 1.2em}
.f1_3{font-size: 1.3em;}
.f1_5{font-size: 1.5em}
.f1_6{font-size:1.6em;}
.f1_8{font-size: 1.8em;}
.f2{font-size: 2em;}
.f2_7{font-size: 2.7em;}
.f2_8{font-size:2.8em}
.red{color: #ff0e2a;}
.blue{color: #1867b2;}
.white,.white a{color: #FFF;}
.yellow{color: #ffff00}
.yellowbg{background-color:  #ffff00 ;height: 70%;}
.whiteBg{background:#fff}
.redBg {background-color: #ff0e2a;}
.grayBg {background-color: #f5f5f5;}
.bold{font-weight:bold !important}
.nn{font-weight: 540;}
.underline{border-bottom: 1px solid}
.serif{font-family:"ヒラギノ明朝 ProN","ＭＳ 明朝",serif}

/*----------padding----------*/
.pb2{padding-bottom:2%}
.pb4{padding-bottom:4%}
.pb5{padding-bottom:5%}
.pb7{padding-bottom:7%}
.pb9{padding-bottom:9%}
.pt7{padding-top:7%}
.pt4{padding-top:4%}
.p2{padding:1%}
.p4{padding:4%}
.p5{padding:5%}
.pl2{padding-left:10%}

/*-------position---------*/
.f_left{float:left;}
.f_right{float:right;}
.left{text-align:left;}
.right{text-align:right;}
.center{text-align:center !important}
.vb{vertical-align: bottom;}
.vm{vertical-align: middle;}
.rela{position: relative;}
.ab{position: absolute;width: 100%;max-width: 960px;}

/*------width-------*/
.w35{width:35%}.w63{width: 63%;}
.w40{width:49%}.w55{width:50%}


/*------------
common--------------*/
.block{padding:7% 7%;}
h2{padding-bottom:7% !important;text-align:center !important;}
h3{display:inline-block;font-size: 1.8em!important;border-bottom:2px solid #1867b2;line-height: 1.2em;}
h4{display:inline-block;padding:.3% 2%;margin:3%;font-size: 2em;color: #FFF;}
input,textarea {border: none;outline: none;}


/*nav*/
header{background: #FFF;padding: 1% 4%;}
nav ul{display: flex;padding-top: 3%;justify-content: flex-end;}
h1{float: left;width: 28%;}nav ul{float: right;width: 60%;}
nav ul li{font-size: 1em;list-style-type: none;padding-right: 1em;color: #888;}
nav ul li a{color: #888;}nav ul li a:hover{color: #128bff;border-bottom: 1px solid;}
header nav ul li:last-child{background:#1867b2;padding-right: none;padding: 0.5% 1%;margin-top: -0.5%;border:#1867b2 1px solid;}
header nav ul li:last-child a{color: #FFF;}
header nav ul li:last-child:hover{border:#1867b2 1px solid;background: none}
header nav ul li:last-child a:hover{color: #1867b2;opacity: 1;border:none;}

/*fotter-nav*/
footer{background: #1867b2;padding: 1.5% 4%;}
footer nav ul{float: right;width: 70%;padding-top: 2.5%;}
footer nav ul li{font-size: .9em;list-style-type: none;padding-right: 1em;}
footer nav ul li a:hover{color: #ffff00;}
footer nav ul li a{color: #fff;}
footer nav ul li:last-child{padding-right: none;}
.copy{font-size: .7em;}

/*----catch-----*/
#catch{background: url(../images/catchBg.jpg) center top no-repeat;}
@media only screen and (max-width: 961px) {#catch .pc{display: none;}.tub{display: block;}}

/*block*/
.more{text-align: right;font-size: 1.3em;}
.more span:hover {border-bottom: #1867b2 2px solid;}
.arrow{display:inline-block;width: 40px;height: 8px;border-bottom: 1px solid #000;border-right: 1px solid #000;transform: skew(45deg);}

/*formblock*/
.formBg{background: url(../images/formBg.jpg) center top no-repeat;background-size: cover; text-align: center;font-size: 1.2em;padding: 5%;}
.formbtn{border: 2px #FFF solid;padding: 1% 2%;color:#FFF;}
.formbtn:hover{background:#FFF;padding: 1% 2%;color: #666;}
.recbtn a:hover{border-bottom: #FFF 1px solid;}

/*pagetitle*/
#comBg{background: url(../images/comBg.jpg) center top no-repeat;background-size: cover;}
#serBg{background: url(../images/serviceBg.jpg) center top no-repeat;background-size: cover;}
.teamBg{background:#1867b2}
#forBg{background: url(../images/formtopBg.jpg) center top no-repeat;}
#recBg{background: url(../images/rcruitBg.jpg) center top no-repeat;}
#preBg{background: url(../images/presiBg.png) center top no-repeat;}

@media only screen and (max-width: 1200px) { #catch,#forBg,#recBg,#preBg{background:none}}

/*company*/
.dlwrapper{width: 65%; margin: 0 auto; box-sizing: border-box}
dl {
margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}

dl dt {
  width: 30%; box-sizing: border-box
}

dt{
  font-weight: bold;
  padding:2% 0;
  vertical-align: top;

}
dl dd {
  width: 70%; box-sizing: border-box;
  padding:2% 0;
  vertical-align: top;
}

ul.disc {
	box-sizing:border-box;
	padding-left:1em;
}
ul.disc li {
	list-style:disc;
	list-style-position:outside;
	background:none;
}

/*service*/
.teamtitle{text-align: center;}
.w40 h3,.w40 p{padding-left: 3%;}



/*------------
tab----------------*/
@media screen and (max-width:666px) {
.sp{display: block;}
.tub{display: none;}
.pc{display: none;}
.f3_2, .f2_7, .f2_8, h2{font-size: 1.5em;}
.f1_3, .f1_2{font-size: 1em;}
.f_left, .f_right{float:none;}
.w35, .w63 , .w40, .w55{width:100%}
.pl2{padding-left:0}

/*humb*/
header{position: fixed;width: 100%;z-index: 90;height: 7%;min-height: 55px;}
header h1{width: 50%;}
header input{display:none;}
.menu-btn {
    position: fixed;
    top: 2px;
    right: 0;
    display: flex;
    float: right;
    height: 60px;
    width: 60px;
    align-items: center;
    z-index: 100;
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background-color: #1867b2;
    position: absolute;
}
.menu-btn span:before {
    bottom: 8px;
}
.menu-btn span:after {
    top: 8px;
}
#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
}

.menu-content {
    width: 100%;
    position: fixed;
    left: 0;
    top: -50%;
    z-index: 3;
    background-color: #FFF;
    padding: 3%;
    font-size: 1.2em;
    transition: all 0.5s;/*アニメーション設定*/
}
.menu-content li{padding-bottom: 5%;}
.menu-content a{color: #666;}
#menu-btn-check:checked ~ .menu-content {
    top: 8%;
}
#catch{padding-top: 55px;}
#comBg,#serBg,#forBg,#recBg,.privacy{padding-top: 75px;}


/*block*/
.block{padding:9% 6%;}
.more{font-size: 1.4em;}
h3{padding-top: 3%;}
.teamtitle{text-align: left;}
.w40 h3,.w40 p{padding-left: 0%;}

/*formblock*/
.formBg{background: url(../images/formBgsp.jpg) center top no-repeat;background-size: cover; text-align: center;font-size: 1.4em;padding: 14% 5%;}
.recbtn a{border-bottom: #FFF 1px solid;}
/*footer*/
footer{padding: 4% 3%;}
footer h1,footer nav ul{float: none;width: 100%;justify-content: center;}
footer h1 img{width: 55%;}
}


/*----------------
sp--------------------*/
@media screen and (max-width:481px) {
p,body{font-size: 15px;}
h2{font-size: 1.5em;}
.f1_3, h3{font-size: 1.2em;line-height: 1.5em}
.f_right img{padding-bottom:5%}
#menu-btn-check:checked ~ .menu-content {
    top: 53px;
}
.dlwrapper{width: 100%}
}