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

/*全体*/
body{
	background-color: #fff;
	width: 100%;
	font-family: 'YuMincho', 'Yu Mincho', 'Hiragino Mincho ProN', serif;
 font-size: 14px;
 line-height: 1.5;
}
#wrapper{
	width: 1300px;
	margin: 0 auto;
}

/*初期設定*/
a{
	text-decoration: none;
	display: block;
}
a:hover{
   opacity: .7;
}
.float-l{
	float: left
}
.float-r{
	float: right;
}
.clearfix:after{
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearboth{
   clear: both;
}
.flexbox{
    display: flex;
}
.pc-none{
   display: none;
}
.fs20{
   font-size: 20px;
   margin-bottom: 20px;
}
.fs16{
   font-size: 16px;
   vertical-align: top;
}
.fs15{
   font-size: 16px;
   vertical-align: top;
   letter-spacing: -.13em;
}
h1+.fs20,h2+.fs20{
   line-height: 2;
   letter-spacing: .05em;
}
.mgt0{
	margin-top:0 !important;
}
.mgt10{
	margin-top:10px !important;
}
.mgb0{
	margin-bottom:0px !important;
}
.mgb10{
	margin-bottom:10px !important;
}
.pdt0{
	padding-top:0 !important;
}
.mgb05em{
	margin-bottom:0.5em;
	display:inline-block;
}

/* メイン */
.main{
   text-align: center;
}
.main h2{
   margin: 30px 0 30px 0;
}
h2+p{
   width: 1047px;
   margin: 0 auto;
   text-align: center;
}
.main h2+p{
   width: 650px;
   text-align:left;
}
.txt{
   width: 650px;
   margin: 0 auto;
   text-align: left;
}
.note{
   font-size: 12px;
   width: 670px;
   margin: 0 auto;
   text-align: center;
   margin-bottom: 50px;
}

/* トータルサポート */
.total{
   text-align: center;
}
.total h2{
   margin: 60px 0;
}
.total1,.total2,.total3{
   width: 1150px;
   background-color: #E6E6E6;
   margin: 0 auto 25px auto;
   border-bottom: solid 1px #E6E6E6;
   border-top: solid 1px #E6E6E6;
}
.total3{
   margin-bottom: 50px;
}
h3{
   margin-top: 10px;
}
.total .box01{
   background-color: #fff;
   width: 1047px;
   margin: 0 auto;
   text-align: center;
   margin-bottom: 40px;
   padding-bottom: 24px;
}
.total .box01 .clearfix{
   width: 1000px;
   margin: 0 auto;
   margin-bottom: 40px;
}
.total .box01 .clearfix img{
   margin: 0;
   width: 500px;
}
.total .box01 .float-l{
   width: 554px;
   margin-left: 24px;
}
.total .box01 .float-l.total-img01{
   margin-left: 24px;
}
.total .box01 .float-r{
   width: 417px;
   margin: 30px 23px 0 0;
   text-align: left;
   font-size: 12px;
}
.total .box01 .float-r img{
   margin-bottom: 5px;
}
.total .box01 .float-r ul{
   margin: 5px 0 15px 0;
   list-style: initial;
   padding-left: 20px;
}
.total .txt{
   font-size: 12px;
   margin-bottom: 35px;
}
.total4 h3{
   margin-bottom: 30px;
}
.total4 .box01{
   width: 987px;
   background-color: #E6E6E6;
   padding: 30px;
}
.total4 .box01 .float-l{
   width: 488px;
}
.total4 .box01 .float-r{
   margin-top: 60px;
}
.ls0{
   letter-spacing: -.05em;
}
.total-ttl01{
   width: 412px;
   height: 62px;
   
}
.total-ttl01.fs15{
   background-position: 10px -12px;
   background-repeat: repeat-x;
}
.total-h4-01{
   margin-bottom: 20px;
}
.total03,.total04{
   margin: 10px 23px 0 0 !important;
}
.total li{
   font-size: 12px;
   line-height: 20px;
   letter-spacing: -.03em;
}
.total .komuten li{
   letter-spacing: -.05em;
}

/* コンバージョン */
.cv{
   background-image: url("../images/cv-bg.png");
   height: 384px;
   margin-bottom: 60px;
}
.cv .inner{
   width: 1000px;
   height: 340px;
   margin: 0 auto;
   position: relative;
}
.cv .clearfix{
   width: 611px;
   position: absolute;
   right: 0;
   top: 120px
}
.cv-btn01{
   padding-right: 14px;
}
.cv-btn02{
   margin-bottom: 5px;
}

/* お客様の声 */
h2{
   margin: 60px 0;
}
.voice{
   text-align: center;
}
.voice h2+p{
   margin-bottom: 80px;
}
.voice1{
   background-color: #E6E6E6;
}
.voice img{
   margin-bottom: 40px;
}
.voice h3{
   margin-bottom: 20px ;
}
.voice h3 img{
   margin-bottom: 0;
}
.voice+.cv{
   background-color: #E6E6E6;
}

/* 事例 */
.works{
   text-align: center;
}
.works .txt{
   font-size: 12px;
   width: 700px;
   margin-bottom: 10px;
}
.works .clearfix{
   width: 1000px;
   margin: 0 auto;
}
.works .clearfix img{
   margin-bottom: 15px;
}
.works .clearfix p:nth-child(7) img,
.works .clearfix p:nth-child(8) img{
	margin-bottom:45px;
}
.works .clearfix p{
   position: relative;
}
.before{
   width: 133px;
   height: 26px;
   position: relative;
   top: 310px;
   left: 20px;
   z-index: 20;
}
.before:hover{
   opacity: .7;
}

/* メディア情報 */
.media{
   text-align: center;
}
.media h2+p{
   margin-bottom: 45px;
}
.media .clearfix{
   width: 1000px;
   margin: 0 auto 65px auto;
}
.media .clearfix .float-l{
   width: 450px;
}
.media .clearfix .float-r{
   width: 505px;
   text-align: left;
}
.media .clearfix .float-r img{
   margin-bottom: 20px;
}
.media1{
   width: 960px;
   margin: 0 auto 10px auto;
   background-color: #E6E6E6;
   padding: 45px 20px 30px 20px;
}
.media1 .txt{
   font-size: 12px;
   text-align: left;
   margin-bottom: 40px;
}
.media .flexbox{
   justify-content: space-between;
}
.media .flexbox p{
   width: 315px;
   text-align: left;
}
.media .flexbox p:first-child{
   width: 302px;
   text-align: left;
}
.media .flexbox img{
   margin-bottom: 10px;
}
.media+.cv{
   margin-bottom: 0;
}

/* 流れ */
.flow{
   background-color: #E6E6E6;
   text-align: center;
   border-top: solid 1px #E6E6E6;
}
.flow h2+p{
   margin-bottom: 80px;   
}
.flow-img01{
   width: 328px;
   margin: 110px 25px 0 70px;
}
.flow-img02{
   width: 145px;
   margin-right: 25px;
}
.flow1{
   width: 400px;
   margin-top: 155px;
   text-align: left;
}
.flow .clearfix{
   width: 1000px;
   margin: 0 auto;
}

/* よくあるご質問 */
.qanda{
   text-align: center;
}
.qanda h2+p{
   margin-bottom: 60px;
}
.qanda .float-l,.qanda .float-r{
   width: 475px;
   height: 280px;
   text-align: left;
   margin-bottom: 50px;
}
.qanda .clearfix{
   width: 1000px;
   margin: 0 auto;
}
.qanda .clearfix img{
   margin-bottom: 10px;
}
.qanda .float-l img:nth-child(5),.qanda .float-r img:nth-child(5){
   margin-top: 20px;
}
.qanda1{
   height: 55px;
   border-top: solid 1px #000;
   border-bottom: solid 1px #000;
   margin-bottom: 10px;
}
.qanda1 img{
   margin-top: 17px;
}
.qanda span.red {
    color: red;
}

/* フッター */
#gn li{
	float:left;
}
#gn{
	clear:both;
	width:965px;
	margin-left:auto;
	margin-right:auto;
	padding-top:40px;
	padding-bottom:40px;
}
footer{
   text-align: center;
}
.footer-add{
   margin: 20px 0
}
.footer-tel{
   margin-bottom: 50px;
}
#gn_sp{
	display:none;
}

.panel:not(:first-child){
	display:none;
}
.tabs a.active{
	opacity: .7;
}

@media screen and (min-width:481px) {
.flow1 p{
   margin-bottom: 130px;
   height: 200px;
}
.flow1 p:nth-child(1){
   margin-bottom: 155px;
}
.flow1 p:nth-child(2){
   margin-bottom: 140px;
}
.flow1 p:nth-child(4){
   margin-bottom: 120px;
}
.flow1 p:nth-child(5){
   margin-bottom: 100px;
}
.flow1 p:last-child{
   margin-bottom: 100px;
}
}


/*------------------------------------------------------------
ここからスマホ用
-------------------------------------------------------------*/

@media screen and (max-width:480px) {
.pc-none{
   display: block;
}
.sp-none{
   display: none;
}
.forSp{
	display:block !important;
}
.forPc{
	display:none !important;
}
.table,
.table .th,
.table .td{
	display:block;
	width:100%;
}
.contentLeft,
.contentRight{
	width:100%;
	float:none;
}
#gn{
	display:none;
}
#gn_sp{
	display:block;
	padding: 0;
    margin-bottom: 10px;
    background-color: #F9F9F9;
    font-size: 13px;
}
#gn_sp li > a{
	display: block;
    height: 2em;
    line-height: 2em;
    padding: 0 10px;
    border-bottom: 1px solid #828282;
    color: #666;
}
#gn_sp li:first-child > a{
	border-top: 1px solid #828282;
}
#gn_sp li > a > span{
	display: block;
    background-image: url(../images/arrow_right.png);
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 8px 5px;
}
.lastcv{
	margin-bottom:0;
}
.bgColor{
	padding-top:30px;
	padding-bottom:30px;
}
aside.footerLink img{
	max-width:100%;
	height:auto;
}
img{
	max-width:100% !important;
	width:auto !important;
}

body,#wrapper,section,div,p,.main,.cv,.voice,.works,.media,.flow,.qanda{
   width: 100%;
}
.main img,.total img{
   width: 100%;
}
.lightbox .lb-image {
    max-width: none !important;
}

/* SPメイン */
h1 img{
   width: initial !important;
}
h1+.fs20,h2+.fs20{
   line-height: 1.5;
   letter-spacing: 0em;
   padding: 0 3%;
}
.txt,.note,.fs20{
   padding: 0 3%;
   width: 94%;
}
.main h2+p {
   width: 94%;
   padding: 0 3%;
}

/* SPトータルサポート */
.total1,.total2,.total3,.total .box01,.total .box01 .clearfix{
   width: 100%;
}
.total .box01{
   margin-bottom: 0;
   padding-bottom: 0;
}
.total .box01 .float-l{
   width: 100%;
   margin: 0;
}
.total h4{
   text-align: center;
   margin-bottom: 10px;
}
.total h4 img.pc-none{
   width: 100%;
   display: inline;
}
.total .box01 .clearfix img{
   width: 100%;
}
.total .box01 .float-r{
   width: 94%;
   padding: 0 3%;
   margin-right: 0 !important;
}
.total .box01 .float-r img{
   width: initial;
   margin-right: 0;
}
.total .box01 .float-r img.pc-none{
   width: 100%;
}
.w100{
   width: 100% !important;
}
.total4 h3 img{
   width: auto;
}
.total4 .box01{
   width: 94%;
   padding: 30px 3%;
   margin-bottom: 0;
}
.total4 .box01 .float-r{
   margin-top: 20px;
   padding: 0;
   float: none;
   width: 100%;
}
.total4 .box01 .float-l{
   float: none;
}
.total4 .fs20{
   padding: 0;
}
.total-ttl01{
   width: 100%;
   background-size: 100%;
   font-size: 120%;
   padding-top: 9%;
}
.total .box01 .float-l.total-img01{
   margin: 0;
}

/* SPコンバージョンエリア */
.cv{
   background-image: none;
   /*background-image: url("../images/sp_cv-bg.png");*/
   background-size: 100%;
   background-repeat: no-repeat;
   background-color: #000;
   height: auto;
}
.cv .inner{
   width: 94%;
   padding: 0 3%;
   position: inherit;
   height: auto;
}
.cv-tel{
   padding-top: 20px;
   text-align: center;
   margin-bottom: 30px;
}
.cv-tel img{
   max-width: 100%;
}
.cv .clearfix{
   position: static;
   width: 94%;
   padding: 0 3%;
   text-align:center;
}
.cv .clearfix .cv-btn02 img{
	margin-right:-7px;
}
.cv .clearfix img{
   width: 100%;
}
.cv .inner .float-l{
   float: left;
   width: 49%;
}
.cv-btn01{
   padding: 0 0 15px 0;
   margin-right: 2%;
}
.cv-btn02{
   padding-bottom: 5px;
   width: 99%;
}
.cv-btn03{
   padding-bottom: 30px;
   width: 99%;
}

/* お客様の声 */
.voice1{
   padding-bottom: 10px;
}
.voice1 img{
   width: 100%;
}
.voice1 h3{
   text-align: center;
}
.voice1 h3 .pc-none{
   display: inline;
   width: auto;
   max-width: 100%;
}
.voice+.cv{
   background-image: none;
   /*background-image: url("../images/sp_cv-bg2.png");*/
   background-color: #000;
}

/* 事例 */
.works .txt{
   padding: 0 3%;
   width: 94%;
   margin-bottom: 30px;
}
.works .clearfix{
   width: 100%;
}
.works .clearfix img{
   width: 100%;
   margin-bottom: 20px;
}
.works .clearfix p:nth-of-type(n+4){
	display: none;
}
.before{
   width: 28%;
   position: relative;
   top: 268px;
   left: 15px;
}
/*.before img{
   opacity: 0;
}*/

/* メディア情報 */
.media h2 img{
   max-width: 94%;
}
.media .clearfix{
   width: 100%;
}
.media .clearfix .float-l{
   float: none;
   width: 100%;
   margin-bottom: 20px;
}
.media .clearfix .float-r{
   float: none;
   width: 100%;
}
.media .clearfix .float-l a,
.media .clearfix .float-r a{
   width: 50%;
}
.media .clearfix .float-r img{
   margin-bottom: 0
}
.media-txt{
   padding: 0 3%;
   display: block;
}

.media .clearfix img{
   width: 100%;
}
.media1{
   width: 94%;
   padding: 30px 3%;
}
.media1 .flexbox{
   display: block;
}
.media1 .flexbox p,.media .flexbox p:first-child{
   width: 100%;
   margin-bottom: 20px;
}
.media1 .flexbox img{
   width: 100%;
}
   
/* SP流れ */
.flow h2+p {
 margin-bottom: 40px;
}
.flow .clearfix{
   width: 94%;
   padding: 0 3%;
}
.flow-img01{
   display: none;
}
.flow-img02 {
 width: 30%;
 margin-right: 0;
}
.flow-img02 img{
   width: 100%;
}
.flow1 {
 width: 70%;
 margin-top: 30%;
 text-align: left;
}
.flow1 p{
   margin-bottom: 52%;
}
.flow1 p:nth-child(1){
   margin-bottom: 55%;
}
.flow1 p:nth-child(4){
   margin-bottom: 75%;
}
.flow1 img{
   width: 100%;
   margin-bottom: 10px;
}
.flow1 .fs20{
   padding: 0 0 3% 0;
}
.flow .flow-img03{
	margin-top:20px;
}

/* SPよくある質問 */
.qanda h2 img{
   width: 94%;
}
.qanda .clearfix{
   width: 94%;
   padding: 0 3%;
}
.qanda .float-l,.qanda .float-r{
   width: 100%;
   height: auto;
}
.qanda .clearfix .fs20{
   padding: 0;
}
.qanda1 img{
   width: 94%;
}
.qanda1 img {
    margin-top: 5%;
}
   
/* SPフッター */
footer {
    margin-top: 10%;
}
.footer-tel img{
   width: 94%;
}

}

@media screen and (max-width:380px) {
.flow1 p{
   margin-bottom: 43%;
}
.flow1 p:nth-child(1){
   margin-bottom: 30%;
}
.flow1 p:nth-child(4){
   margin-bottom: 50%;
}
.flow1 p:nth-child(5){
   margin-bottom: 50%;
}
.before {
   width: 28%;
   position: relative;
   top: 245px;
   left: 15px;
}
}

@media screen and (max-width:320px) {
.flow1 {
 margin-top: 25%;
}  
.flow1 p{
   margin-bottom: 20%;
}
.flow1 p:nth-child(1){
   margin-bottom: 10%;
}
.flow1 p:nth-child(3){
   margin-bottom: 20%;
}
.flow1 p:nth-child(4){
   margin-bottom: 25%;
}
.flow1 p:nth-child(5){
   margin-bottom: 25%;
}
.total-ttl01{
   font-size: 100%;
}
.before {
   width: 28%;
   position: relative;
   top: 213px;
   left: 13px;
}
}

/*--- pageTop ---*/
#page-top{
position: fixed;
bottom: 20px;
right: 20px;
font-size: 25px;
line-height: 1;
width: auto;
}
#page-top a {
background: #aaa;
text-decoration: none;
color: #fff;
width: 48px;
padding: 10px 0;
text-align: center;
display: block;
border-radius: 5px;
}
#page-top a:hover{
  text-decoration: none;
  opacity: .7;
}


/*
 * SiteHeader
 */
.main{
	padding-top: 70px;
}
header.global_navi {
  box-sizing: border-box;
  background-color: #f0f0f0;
  padding: 23px 0;
  position: fixed;
  width: 1300px;
  z-index: 101;
}

header.global_navi ul {
  font-size: 0;
  margin: 0 auto;
  text-align: center;
  position: relative;
  width: 1050px;
}

header.global_navi ul li {
  font-size: 16px;
  /*font-family: 'YuGothic', 'Yu Gothic', 'Hiragino Gothic ProN', san-serif;*/
  display: inline-block;
  padding: 0 20px;
  position: relative;
  vertical-align: middle;
}

header.global_navi ul li a {
  color: #221714;
  font-weight:bold;
}

header.global_navi ul li:not(:last-child)::after {
  content: '｜';
  color: #221714;
  position: absolute;
  right: -0.5em;
  top: 0;
}
@media screen and (max-width: 480px){
	header.global_navi {
	    display: none;
	}
	.main {
	    padding-top: 0;
	}
}