@charset "UTF-8";

/*ベースレイアウト*/
body {
	padding:0;
	margin:0;
	color:#4D4D4D;
	text-align: center;
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue,Hiragino Kaku Gothic ProN","游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic","メイリオ",meiryo,sans-serif;
	background:#fff;
	font-size:16px;
	line-height:1.8;

	 }
a{
	color:#0076BD;
	text-decoration: none;
	font-weight:bold;

	}


p{
		margin:0;
	padding:0;
	line-height:1.8;

	}

hr.line {
		height: 1px;
		background: #bbb;
		background-image: -webkit-linear-gradient(left, #ccc, #666, #ccc);
		background-image: -moz-linear-gradient(left, #ccc, #666, #ccc);
		background-image: -ms-linear-gradient(left, #ccc, #666, #ccc);
		background-image: -o-linear-gradient(left, #ccc, #666, #ccc);
		border: 0;
	}

.center {
	text-align: center;
}

/*header*/
header{
  position: fixed;
  z-index: 100;
  width: 100%;
  height:150px;

    background: url("../img/header_back.png");
	background-repeat:repeat-x;
  	margin:0 auto;
	padding:0 0;
}

.header_area{
	margin:0 auto;
	padding:0 0;
    max-width:1500px;
	width: 100%;
	text-align:center;
	position: relative;
	}

.header_logo{
	margin:0;
	padding:30px;
	float:left;
	z-index:2;
	 position: absolute;

	}

.header_txtarea{
	 margin:0;
	padding:40px 0 0 250px;
	top:0;
	position:absolute;


	}
.header_txtarea h1{
	font-size:16px;
	text-align:left;
	 margin:0;
	 padding:0 0;
	 font-weight:bold;
}


.text-wide {
	 display: inline-block;
    transform: scale(2.5, 1);
}


.header_navi{
	float:right;
	margin:0;
	padding:15px 10px 0 0;

	}

.header_navi ul li{
    display: inline;
	font-size:14px;


 }

.header_navi li {
display: inline-flex;

padding:0 20px;
}

.header_navi li a{
	font-size:12px;
	color:#4D4D4D;
	font-weight:bold;
	}


.header_navi li a:hover{
  color : #0076BD;
  font-size:12px;
  font-weight:bold;
}

.header_contact{
	float:right;
	margin:0;
	padding:0 0;
	}

/*お問い合わせ*/
.contact-font{
	font-size: 14px;
	margin: 0px;
	padding: 0px;
	font-weight: bold;
}
.contact-btns .btn,
.contact-btns .btn:before,
.contact-btns .btn .far {
  transition: all 0.35s;
  transition-timing-function: cubic-bezier(0.31, -0.105, 0.43, 1.59);
}
.contact-btns .btn:before {
  top: 90%;
  left: -110%;
}
.contact-btns .btn .far {
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}
.contact-btns .btn.email:before {
  background-color: #0076BD;
}
.contact-btns .btn.email .far {
  color: #0076BD;
}
.contact-btns .btn:focus:before,
.contact-btns .btn:hover:before {
  top: -10%;
  left: -10%;
}
.contact-btns .btn:focus .far,
.contact-btns .btn:hover .far {
  color: #fff;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.contact-btns {
  height: 90px;
  margin: auto;
  font-size: 0;
  text-align: center;
  /*position: absolute;*/
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.contact-btns .btn {
  display: inline-block;
  background-color: #fff;
  width: 90px;
  height: 90px;
  line-height: 90px;
  margin: 0 10px;
  text-align: center;
  position: relative;
  overflow: hidden;
  border-radius: 28%;
  box-shadow: 0 5px 15px -5px rgba(0,0,0,0.1);
  opacity: 0.99;
}
.contact-btns .btn:before {
  content: '';
  width: 120%;
  height: 120%;
  position: absolute;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.contact-btns .btn .far {
  font-size: 38px;
  vertical-align: middle;
	line-height: 0.5;
}

/*メイン*/

#main_area{
  margin:0 auto 0 auto;
  padding:0 0 0 0;
  width:100%;
  height:735px;
  text-align:center;
  background: url("../img/main_back_2.jpg");
  border-bottom: 10px solid #b329ca;
	}

h1 {
	font-size: 38px;
	color: #FFF;
	/*letter-spacing: 0.1em;*/
}

h2 {
	font-size: 38px;
}

.h2_border-left {
	line-height: 1.5;
	text-align: left;
}

.h2_border-left:after {
    width: 35px;
    content: '';
    display: block;
    margin: 25px 0 30px;
    border-bottom: 3px solid #b329ca;
}

.h2_border-center {
	line-height: 1.5;
}

.h2_border-center:after {
    width: 35px;
    content: '';
    display: block;
    margin: 25px auto 30px;
    border-bottom: 3px solid #b329ca;
}

.content-box {
	display: flex;
  flex-wrap: wrap;
  height: 524px;
	max-width: 1000px;
  width: 100%;
	text-align: left;
	margin: 30px auto;
}

.content-box-text {
	padding: 40px 0;
	text-align: left;
	width: 50%;
}

.content-box-check {
	margin: 0 auto;
	padding: 20px 0;
	text-align: left;
	max-width: 700px;
	width: 100%;
}

.area_main{
	position: relative;
	margin:0 auto;
	padding:10px;
	width: 100%;
	max-width:1000px;
	text-align:center;
	top:240px;
	background-color: rgba(40,40,40,0.5);
}

.area_main h2.main{
	font-size:16px;
	text-align:center;
	color:#FFF;
		margin:0 auto;
	padding:20px 0 0 0;
	 font-weight:normal;
	 letter-spacing:2px;
}

.area_main_bottom {
	position: relative;
	margin:0 auto;
	padding:10px;
	width: 100%;
	/* max-width:1000px; */
	/* height: 50px; */
	text-align:center;
	bottom:0px;
	background-color: #b329ca;
	box-sizing:border-box;
}

.area_main_bottom h2 {
	font-size:16px;
	text-align:center;
	color:#FFF;
	margin:0 auto;
	font-weight:normal;
	letter-spacing:2px;
}

.tech_icon {
	width: 50px;
	height: 50px;
}

.ul_none {
	list-style-type: none;
  }
.ul_none li {
	position: relative;
	line-height: 1.8;
  }
.ul_none li::after {
	content: '';
	display: block;
	position: absolute;
	top: .5em;
	left: -1.5em;
	width: 10px;
	height: 5px;
	border-left: 2px solid #b329ca;
	border-bottom: 2px solid #b329ca;
	transform: rotate(-45deg);
}

/*メッセージタイトル*/

.messagetitle_area{
	position: relative;
	margin:0 auto;
	padding:0;
	width: 100%;
	max-width:1100px;
	text-align:center;
	background: url("../img/message_t.png");
	height: 250px;

	}


.messagetitle_area h2{
	margin:0 auto;
	padding:100px 0 0 0;
	text-align:left;
		font-size:26px;
		float:right;
		font-weight:bold;

	}


#message_area{
	margin:30px auto 80px auto;
	padding:0;
	width: 100%;
	max-width:1000px;
	}

#message_area p{
	text-align:left;
	margin:0 auto;
	padding:0;
	}

#profile_l{
   margin-top:-160px;
  padding-top:160px;
}



.profile_area{
	margin:20px auto 0 auto;
	padding:0;
	text-align:left;
		}

.profile_a{
		display: inline-block;
		padding:0 0;
		margin:0 auto;

		}
.profile_b{
		display: inline-block;
		padding:0 0;
		margin:0 auto;
		    position: relative;
	top: -5px;

		}

.c_name{
	text-align:left;
	margin:0 auto;
	padding:0;
	font-size:12px;
	font-weight:normal;
	}


.n_name{
	text-align:left;
	margin:0 auto;
	padding:0 10px ;
	font-size:24px;
	font-weight:bold;
	}


/*Number area*/

#area_a{
  margin:0 auto 0px auto;
  padding:20px 0;
  width: 100%;
  text-align:center;
  background:#f5f5f5;
	}

.cols {
	justify-content: space-between;
	padding: 50px 0;
	height: 180px;
}

.text-box {
	background-color: #fff;
  border: 1px solid #dee2e9;
  border-radius: 6px;
	width: calc((100% - 180px)/3);
	text-align: left;
	padding: 20px;
}

.text-box span {
  color: #0076BD;
  font-size: 38px;
  font-weight: 700;
}

.marker {
	background: linear-gradient(transparent 60%, #f2cff8 60%);
	font-weight: bold;
}

#area_c{
	margin:0px auto 0px auto;
	padding:20px;
	width:auto;
	text-align:center;
	background-size: cover;
	background: linear-gradient( 135deg, rgb(161, 89, 133, 0.8) 20%, rgb(83, 31, 142, 0.8) 80%),url(../img/area_b_bg.jpg);
}

.area_main_c{
	position: relative;
	margin:0 auto;
	width: 100%;
	max-width:1000px;
	text-align:center;
	background-color: rgba(40,40,40,0.5);
	}

.h2_large {
	font-size: 38px;
	color: #FFF;
}
.text_white {
	color: #FFF;
}

.text_large {
	font-size: 20px;
}

.text_margin {
	margin:40px 40px;
}


/*事例eコマース*/

.bg-pic {
	width: 1000px;
	max-width: 1000px;
	height: 524px;
  background: url("../img/shopping.jpg") no-repeat;
}

.content-box-image {
	width: 50%;
}

.case-text {
	background-color: #fff;
	border-radius: 6px;
	padding: 20px;
	width: 35%;
	height: 300px;
	margin: auto auto;
	box-shadow: 0 7px 20px 0 rgba(0,0,0,.1);
}

/*導入企業*/

#client {
  margin:0 auto 40px auto;
  padding:20px 0;
  width: 100%;
  text-align:center;
	}

.client-box {
	background-color: #fff;
	/*border: 1px solid #dee2e9;*/
	border-radius: 6px;
	text-align: center;
	padding: 20px;
	box-shadow: 0 7px 20px 0 rgba(0,0,0,.1);
}

.content-wrapper {
	text-align: center;
	max-width: 1000px;
	width: 100%;
	margin: 30px auto;
}

.client-img {
	width: 100%;
	padding: 15px 0;
}

/*コンテンツエリア*/
.content_a{
	margin:190px auto 0 auto;
	padding:0;

	}

.content_b{
	margin:110px auto 0 auto;
	padding:0;

	}
.content_c{
	margin:110px auto 0 auto;
	padding:0;

	}

/*サービス*/

.text-cta {
	color: #FFF;
	text-decoration: underline;
}

.services_contact{
	margin:50px auto;
	padding:20px 0;
	width: 100%;
	text-align:center;
	background:#0076BD;

	}

.services_contact p{
	color:#FFF;
	text-align:center;
	font-size:16px;
	font-weight:bold;
	margin:0 auto;
	padding:0;
	}

/*CTA*/

#area_b{
  margin:0 auto 40px auto;
  padding:20px 0;
  width: 100%;
  text-align:center;
  background: linear-gradient( 135deg, rgb(161, 89, 133, 0.8) 20%, rgb(83, 31, 142, 0.8) 80%);
  color: #FFF;
	}

.blue {
  color: #0076BD;
  border-color: #0076BD;
}

a.blue:after {
    background-color: #0076BD;
}

a.blue:hover {
    color: #ffffff;
    background: #0076BD;
    transform: scale(1);
}

a.blue:hover:after {
    transform: scaleX(1);
    opacity: 1;
    transition: transform 0.4s, opacity 0.4s;
		background-image: linear-gradient(30deg, #00ecbc 0%, #007adf 100%);
}

.white {
	color: #FFFFFF;
	border-color: #FFFFFF;
  }
  
  a.white:after {
	  background-color: #FFFFFF;
  }
  
  a.white:hover {
	  color: #b329ca;
	  background: #FFFFFF;
	  transform: scale(1);
  }
  
  a.white:hover:after {
	  transform: scaleX(1);
	  opacity: 1;
	  transition: transform 0.4s, opacity 0.4s;
		  /* background-image: linear-gradient(30deg, #00ecbc 0%, #007adf 100%); */
  }

.purple {
	color: #b329ca;
	border-color: #b329ca;
}

a.purple:after {
	background-color: #b329ca;
}

a.purple:hover {
	color: #FFFFFF;
	background: #b329ca;
	transform: scale(1);
}

a.purple:hover:after {
	transform: scaleX(1);
	opacity: 1;
	transition: transform 0.4s, opacity 0.4s;
		/* background-image: linear-gradient(30deg, #00ecbc 0%, #007adf 100%); */
}

a.contact-btn:hover:before {
    left: 87%;
    opacity: 1;
}

a.contact-arrow::before {
    content: "›";
}

.contact-btn:before {
    position: absolute;
    height: 100%;
    font-size: 30px;
    /*line-height: 55px;*/
    color: #fff;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    left: 70%;
    opacity: 0;
    top: 0;
}

.contact-btn:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
    border-radius: 4em;
    transform: scaleX(0.5);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}

.contact-btn {
    display: inline-block;
    margin: 20px;
    padding: 10px 10px;
    width: 150px;
    font-weight: bold;
    letter-spacing: 1.5px;
    line-height: 1.1;
		background-color: #FFF;
    border-width: 2px;
    border-width: 3px;
    border-radius: 4em;
    border-style: solid;
    background: transparent;
    cursor: pointer;
    user-select: none;
    vertical-align: bottom;
    position: relative;
    overflow: hidden;
}

.orange {
  color: #ff9f66;
  border-color: #ff9f66;
}

a.orange:after {
    background-color: #f3af87;
}

a.orange:hover {
    color: #ffffff;
    background: #ff9f66;
    transform: scale(1);
}

a.orange:hover:after {
    transform: scaleX(1);
    opacity: 1;
    transition: transform 0.4s, opacity 0.4s;
		background-image: linear-gradient(30deg, #fee140 0%, #e14fad 100%);
}

a {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

a.cta-btn:hover:before {
    left: 90%;
    opacity: 1;
}

a.btn-arrow::before {
    content: "›";
}

.cta-btn:before {
    position: absolute;
    height: 100%;
    font-size: 31px;
    line-height: 55px;
    color: #fff;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    left: 70%;
    opacity: 0;
    top: 0;
}

.cta-btn:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
    border-radius: 4em;
    transform: scaleX(0.5);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}

.cta-btn {
    display: inline-block;
    margin: 2rem auto;
    padding: 1rem 1.3rem;
    width: 300px;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 1.5px;
    line-height: 1.1;
		background-color: #FFF;
    border-width: 2px;
    border-width: 3px;
    border-radius: 4em;
    border-style: solid;
    background: transparent;
    cursor: pointer;
    user-select: none;
    vertical-align: bottom;
    position: relative;
    overflow: hidden;
}

.contact-btn-white:before {
    color: #b329ca;
}

/*会社概要*/
.aboutus_area{
	margin:80px auto 30px auto;
	padding:0;
	width: 100%;
	max-width:1000px;
	text-align:center;
	}

.aboutus_area table, .aboutus_area th, .aboutus_area td {
    border: none;
		font-size:16px;
}

.aboutus_area table{
	width:100%;

	}
.aboutus_area th{
   	margin:0 auto;
	padding:2% 0;
	text-align:left;
	width: 20%;
	font-weight:bold;
	vertical-align:top;

}

.aboutus_area td {
   	margin:0 auto;
	padding:2% 0;
	text-align:left;
}

.bio{
	padding:2% 0;
	margin:0 auto;
	}


.google-maps{
height: 0;
overflow: hidden;
padding-bottom:30%;
position: relative;
}
.google-maps iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

/*上へ*/
.up {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #b329ca;
	display: inline-block;
	text-align: center;
	line-height: 50px;
}

.up-color {
	color: #FFFFFF;
}

/*footer */


footer{
	background:#F7F7F7;
	padding:1% 0;
	margin:10% auto 0 auto;
	text-align:center;
	bottom: 0;
	width: 100%;

}


footer .footertop{
position :relative;
text-align:right;
right:2%;
top:-40px;
margin:0 auto;

}

footer .footerlogo{
	padding:0 0;
	margin:0 auto;
	text-align:center;

	}

footer p{
		text-align:center;
		font-weight:bold;

	}

footer .footermenust{
	padding:0 0;
	margin:0 auto;
	text-align:center;


}

footer .footermenust ul li{
    display: inline;
	font-size:11px;
	font-weight:normal;
 }



footer .footermenust li a{
	padding:0 1%;
	margin:0 auto;
	color:#4D4D4D;

	}

footer .copyright{
padding:0 2%;
	margin:0 auto;
	font-size:10px;
	text-align:center;
	}


/*下層ページ*/

.subarea_main{
	position: relative;
	margin:0 auto;
	padding:0;
	width: 100%;
	max-width:1000px;
	text-align:center;
	top:340px;
	}

.subarea_main h2{
	font-size:14px;
	text-align:center;
	color:#FFF;
		margin:0 auto;
	padding:0;
	 font-weight:normal;
	 letter-spacing:2px;


	}



.subpage_area{
	margin:0 auto 30px auto;
	padding:0;
	width: 100%;
	max-width:1000px;
	text-align:left;
	}
.subpage_area h2{
	margin:0 auto;
	padding:0;
	font-size:26px;
	font-weight:bold;
	text-align:center;

		}

.subpage_area h3{
	margin:0 auto;
	padding:20px 0 10px 0;
	font-size:18px;
	font-weight:bold;
	text-align:left;

		}

.subpage_area p{
	margin:0 auto;
	padding:0;
	text-align:left;
	}


/*privacypolicyページ*/

#privacypolicymain_area{
  background: url("../privacypolicy/img/top.png")center;
  background-size: cover;
  width: 100%;
   height:500px;

	}


.privacypolicy_name{
	margin:0 auto;
	padding:5% 0;
	text-align:left;
	font-size:80%;
	}

/*contactページ*/

#contactmain_area{
  background-size: cover;
  width: 100%;
  height:20px;

	}

/*servicesページ*/

#servicesmain_area{
  background: url("../services/img/top.png")center;
  background-size: cover;
  width: 100%;
   height:500px;

	}

.subservices_area{
	margin:110px auto 30px auto;
	padding:0;
	width: 100%;
	max-width:1000px;
	text-align:center;
	}
.subservices_area h2{
	margin:0 auto;
	padding:0;
	font-size:26px;
	font-weight:bold;
	text-align:center;

		}


.subservices_area p{
	margin:0 auto;
	padding:0 2%;
	text-align:left;
	}






.subservices_base{
    text-align: center;
	margin:0 auto;
	padding:0;
	width: 100%;
	max-width:1000px;
}

.servs{
    display: inline-block;
    padding:0 0 0 0;
	vertical-align:left;

	vertical-align:top;
	width:48%;
}

.servs p{
	margin:0 auto;
	padding:0 2%;
	text-align:left;
	font-size:14px;


	}

.s_first-letter{
color:#0076BD;
font-size:80%;
 }

.attentiontxt{
	font-size:80%;
	margin:0 auto;
	padding:0;
	text-align:left;

	}

.attentiontxt02{
	font-size:70%;
	margin:0 auto;
	padding: 0;
	text-align:left;

	}




 .application_area{
  background: url("../services/img/igg_pc.png")center;
  background-size: cover;
  width: 100%;
   height:416px;
   	margin:50px auto 0 auto;
	padding: 0;
	text-align:left;
 }


.application_c {
    list-style:  none;
    margin:  0;
    padding:4% 0;
}

.application_list{
	font-size:90%;

	}

.application_list:before {
    content:  "";
    width:  10px;
    height:  10px;
    display:  inline-block;
    background: #0076BD;
    border-radius:  50%;
    position:  relative;
    top: -1px;
    margin-right: 5px;
}

span.application_txt {
color:#0076BD;
font-size:26px;
position:relative;
top:10px;
left:100px;
font-weight:bold;
}

.edca_area{
	text-align: center;
	margin:0 auto;
	padding:0;
	width: 100%;
	}

.mtb{
	margin:5% auto;
	padding:0;
	}

.mtb_b{
	margin:10% auto;
	padding:0;
	}

.pc { display: block !important; }
.sp { display: none !important; }

@media (max-width: 750px) {

body {
	padding:0;
	margin:0;
	color:#4D4D4D;
	text-align: center;
	background:#fff;
	font-size:14px;
	line-height:1.4;
	 }

img {
display: block;
margin: 0;
padding: 0;
max-width: 100%;
height:auto;
width:auto;
 -webkit-touch-callout:none;
}

img a{
	 -webkit-touch-callout:none;
	}

h2 {
	font-size: 20px;
}

.h2_border-left {
    line-height: 1.5;
    text-align: center;
}

.h2_border-left:after {
    width: 35px;
    content: '';
    display: block;
    margin: 25px auto 30px;
    border-bottom: 3px solid #b329ca;
}

br.br-none {
	display: none;
}

.content-box {
  height: auto;
}

.content-box-text {
	width: 100%;
	padding: 10px;
	text-align: center;
}

.content-box-image {
  width: 100%;
	padding: 10px;
}


/*header*/
header{
  position: fixed;
  z-index: 100;
  width: 100%;
  height:auto;
  	margin:0 auto;
	padding:0 0;
}

.header_area{
	margin:0 auto;
	padding:0 0;
    max-width:750px;
	width: 100%;
	text-align:center;
	position: relative;
	}

.header_logo{
	margin:0;
	padding:15px 10px;
	float:left;
	 position:static;

	}

	h1 {
	    font-size: 24px;
	    color: #FFF;
		}

	.area_main{
		top:-90px;
		background-color: rgba(40,40,40,0.5);
		width: auto;
		}

  .area_main h2{
		font-size:16px;
		text-align:center;
		color:#FFF;
			margin:0 auto;
		padding:20px 0 0 0;
		 font-weight:normal;
		 letter-spacing:2px;
		}

area{
  border:none;
  outline:none;
}

.menu,
    .menu span {
    display: inline-block;
    -webkit-transition:all .4s;
    transition: all .4s;
    box-sizing: border-box;
    }

    .menu {
      position: fixed;
      top:3%;
	  right:20px;
      width: 25px;
      height: 22px;
      z-index: 10;
    }

    .menu span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #531f8e;
    z-index: 10;
    }

    .menu span:nth-of-type(1) {
    top: 0px;
    }

    .menu span:nth-of-type(2) {
    top: 10px;
    }

    .menu span:nth-of-type(3) {
    bottom: 0px;
    }

    .menu.active span:nth-of-type(1) {
    -webkit-transform: translateY(10px) rotate(45deg);
    transform: translateY(10px) rotate(45deg);
    }

    .menu.active span:nth-of-type(2) {
    opacity: 0;
    }

    .menu.active span:nth-of-type(3) {
    -webkit-transform: translateY(-10px) rotate(-45deg);
    transform: translateY(-10px) rotate(-45deg);
    }

    #nav {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10;
    width: 100%;
    height: 100vh;
    opacity: 0;
    background-color:rgb(179, 41, 202, 0.9);
    transition: all 0.3s ease-in-out;
    visibility:hidden;
display: table;
    }

    #nav.active{
    right: 0;
    opacity: 1;
    -moz-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
    visibility: visible;
    }

    #nav ul{
    margin:0 0;
    padding: 0;
	height:auto;
	  display: table-cell;
  vertical-align: middle;
    }

    #nav ul li{
    list-style-type: none;
    }

    #nav ul li a{
    display: block;
    padding: 20px 0;
    transition: all 0.2s ease-in-out;
    text-align: center;
    text-decoration: none;
    color: #fff;
	 font-size:20px;
    }
    #nav ul li a:hover {
   color: #fff;
    }

button{
	  background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        appearance: none;

	 }



/*メイン*/

#main_areasp{
  margin:0 auto;
  background: url('../img/main_sp_2.jpg') 0 0 no-repeat;
	padding-top: 220px;
	background-size: cover;
}

/*AreaA*/

#area_a{
  margin:20px auto 0px auto;
  padding:20px;
  width:auto;
  height:100%;
  text-align:center;
  background:#f5f5f5;

}

.text-box {
  width: 100%;
	padding: 10px;
	margin-bottom: 10px;
}

.cols {
  padding: 0;
}

.bg-pic {
  width: auto;
  height: auto;
	background-size: cover;
	/*background: linear-gradient(30%, rgba(217, 175, 217, 0.7) 0%, rgba(151, 217, 225, 0.7) 100%),url(test_img.jpg);*/
	padding: 30px 20px 40px;
  display: inline-block;
}

.content-box {
	margin: auto auto;
}

.case-text {
    width: 80%;
    height: auto;
    opacity: 0.95;
}

/*コンテンツエリア*/
.content_a{
	margin:50px auto 0 auto;
	padding:0;

	}

#client {
	margin: 0 auto 40px auto;
	padding: 20px;
	width: auto;
}

/*サービス*/


.services_area{
	margin:30px auto;
	padding:0;
	width: 100%;
	max-width:750px;
	text-align:center;
	}
.services_area h2{
	margin:0 auto;
	padding:0 1%;
	font-size:14px;
	font-weight:bold;
	text-align:center;
		}


.services_area p{
	margin:0 auto;
	padding:0 2%;
	text-align:left;
		}

.sb_area{
	margin:0 auto;
	padding:1% 0;
	width: 100%;
	max-width:750px;
	text-align:center;
	}

.services_contact{
  margin: 0px auto 0px;
	padding:10px 0;
	width: auto;
	text-align:center;
	background:#2C4A88;

	}

.services_contact p{
	color:#FFF;
	text-align:center;
	font-size:12px;
	font-weight:bold;
	margin:0 auto;
	padding:2%;
	}

#area_b {
  padding: 20px 10px;
  width: auto;
}

#area_c {
	padding: 20px 10px;
	width: auto;
}

.google-maps {
height: 0;
overflow: hidden;
padding-bottom: 75%;
position: relative;
}
.google-maps iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

/*会社概要*/

.aboutus_area{
	margin:20px auto;
	padding: 0 10px;
	width: auto;
	max-width:750x;
	text-align:center;
	display: inline-block;
	}
.aboutus_area h2{
	margin:0 auto;
	padding:0 0 0 2%;
	font-size:18px;
	font-weight:bold;
	text-align:center;

		}


.aboutus_area table, .aboutus_area th, .aboutus_area td {
    border: none;
		font-size:14px;
}

.aboutus_area th{
   	margin:0 auto;
	padding:2% 0;
	text-align:left;
	width: 25%;
	font-weight:900;
	vertical-align:top;


}

/*footer */

footer{
	background:#F7F7F7;
	padding:1% 0;
	margin:20% auto 0 auto;
	text-align:center;
	bottom: 0;
	width: auto;
	max-width:750x;

}

footer .footertop{
position :relative;
text-align:right;
left:0;
top:-10px;
margin:0 auto;

}


footer .footerlogo{
	padding:0 0;
	margin:0 auto;
	text-align:left;

	}


footer .footermenust{
	width: 100%;
	max-width:750x;
	padding:0 0;
	margin:0 auto;
	text-align:center;


}

footer p{
		text-align:center;
		margin:0 auto;
		padding:2% 0 0 0;
	}

footer .footermenust ul{
	width: 100%;
	max-width:750x;
	margin:0 auto;
	padding:2% 0;
 }

footer .footermenust ul li{
    display: inline;
	font-size:11px;
 }

footer .footermenust li {
display: inline-flex;
display: -webkit-inline-flex;
flex-wrap: wrap;
-webkit-justify-content: center;
justify-content: center;
line-height:1.8;

}

footer .footermenust li a{
	padding:0;
	margin:0 auto;
	font-size:11px;
	color:#4D4D4D;
	font-weight:bold;
	}

footer .copyright{
padding:0;
	margin:0 auto;
	font-size:10px;
	text-align:center;
	}


/*コンテンツエリア*/

.content_b{
	margin:5px auto 0 auto;
	padding:0;

	}

.content_c{
	margin:50px auto 0 auto;
	padding:0;

	}

/*下層ページ*/
#subarea_mainsp{
	margin:0 auto;
	padding-top: 100px;
	width: 100%;
	max-width:750px;
	text-align:center;
	position: relative;
	}

.subpage_area{
	margin:30px auto;
	padding:0 1%;
	width: 98%;
	max-width:750px;
	text-align:left;
	}
.subpage_area h2{
	margin:0 auto;
	padding:0 0 0 1%;
	font-size:16px;
	font-weight:bold;
	text-align:center;

		}

.subpage_area h3{
	margin:0 auto;
	padding:10px 0 5px 2%;
	font-size:14px;
	font-weight:bold;
	text-align:left;

		}

.subpage_area p{
	margin:0 auto;
	padding:0 2%;
	text-align:left;
	}


/*privacypolicyページ*/

.privacypolicy_name{
	margin:0 auto;
	padding:5% 0 0 0;
	text-align:left;
	font-size:80%;
	}

/*servicesページ*/


.subservices_area{
	margin:50px auto 30px auto;
	padding:0 1%;
	width: 98%;
	max-width:750px;
	text-align:left;
	}
.subservices_area h2{
	margin:0 auto;
	padding:0 0 0 1%;
	font-size:16px;
	font-weight:bold;
	text-align:center;

		}

.subservices_base{
    text-align: center;
	margin:0 auto 5% auto;
	padding:0;
	width: 100%;
	max-width:750px;
}

.servs{
    display: inline-block;
    padding:0 0 0 0;
	margin:0 auto;
	vertical-align:top;
	width:100%;
	text-align:center;
}

.servs p{
	margin:0 auto;
	padding:0 2%;
	text-align:left;
	font-size:12px;


	}

.s_first-letter{
color:#0076BD;
font-size:80%;

 }

 .application_area{
  background: #fff;
  background-size: cover;
  width: 100%;
   height:auto;
   	margin:20px auto 0 auto;
	padding: 0;
 }

 .application_c {
    list-style:  none;
    margin:  0;
    padding:4% 2%;
}



.pc { display: none !important; }
.sp { display: block !important; }


}
@media screen and (max-width: 751px) {
    .sp_line { display:none; }
	 .br-pc { display:none; }

}

@media screen and (min-width:749px) {
    .br-sp { display:none; }
}
