@charset "UTF-8";


/* ---------------------------------------------------------
   company-site
----------------------------------------------------------*/

/* index */

.company-site#index #global-nav .link-external, .company-site#index .sb-slidebar .link-external {
	background-image:none;
	padding:0;
	margin:0;
}
.company-site#index #global-nav .link-external a:after, .company-site#index .sb-slidebar .link-external a:after {
	content:url(../img/icon_external.gif);
	margin-left:10px;
}

.company-site#index #content {
  margin-top:0;
}

.company-site#index .main-visual {
  margin-top:50px;
  text-align:center;
  padding:6% 0 4%;
  background:url(/common/img/company/pic_top_main_bg.jpg) no-repeat center;
  background-size:auto 100%;
  color:#FFF;
}

@media screen and (min-width: 768px) {
    .company-site#index .main-visual {
      margin-bottom:50px;
    }
}

@media screen and (min-width: 992px) {
    .company-site#index .main-visual {
      margin-top:0px;
    }
}

.company-site#index .main-visual h1 {
  font-size:18px;
  font-family: 'Roboto', sans-serif;
  font-weight:300;
}

.company-site#index .main-visual p {
  font-size:12px;
  margin-bottom:10px;
}

@media screen and (min-width: 768px) {
  .company-site#index .main-visual h1 {
    font-size:36px;
  }

  .company-site#index .main-visual p {
    font-size:14px;
    margin-bottom:30px;
  }
}

@media screen and (min-width: 992px) {  
  .company-site#index .main-visual p {
    font-size:18px;
  }
}

.company-site#index .main-visual .btn {
  font-size:14px;
}

.company-site#index #main section {
  margin-bottom:30px;
}

@media screen and (min-width: 768px) {
    .company-site#index #main section {
      margin-bottom:60px;
    }
}

.company-site .topics {
  margin-top:20px;
  border-bottom:1px solid #e5e5e5;
}

@media screen and (min-width: 768px) {
    .company-site .topics {
      margin-top:0;
    }
}

.company-site .topics h1 {
  position: relative;
  line-height:1;
  margin-bottom:20px;
  text-align:center;
}

.company-site .topics h1:before {
  border-top: 1px solid #e5e5e5;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
}

.company-site .topics h1 span {
  background:#FFF;
  display:inline-block;
  padding: 0 20px 0;
  position: relative;
}


.company-site .topics dt {
  font-size:14px;
}

@media screen and (min-width: 768px) {
  .company-site .topics dt {
    font-size:18px;
  }
}

.archive-dropdown {
  padding:20px;
  background:#f5f5f5;
  margin-bottom:30px;
}

.list-news {
}

.list-news dt{
  margin-bottom:3px;
}

.list-news dd{
  border-bottom:1px solid #e5e5e5;
  margin-bottom:15px;
}


@media screen and (min-width: 768px) {
    #index-company-link {
      margin-top:30px;
      padding-top:30px;
      border-top:1px solid #e5e5e5;
      min-height:250px\9; /* IE8 */
    }
}

@media screen and (max-width: 767px) {
    .index-company-link-box {
      padding:0;
    }
}

#index-company-link a {
  text-decoration:none;
  color:#000;
}

@media screen and (min-width: 768px) {
    .index-company-link-box h2 {
      margin-bottom:20px;
    }
}

.index-company-link-box h2 span {
  font-size:14px;
  color:#FFF;
  display:block;
  height:110px;
  line-height:110px;
  text-align:center;
  filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#80000000,endColorstr=#80000000); 
  background: rgba(0,0,0,.5);
}

@media screen and (min-width: 768px) {
    .index-company-link-box h2 span {
      font-size:30px;
      height:180px;
      line-height:180px;
    }
}

.index-company-link-cloud h2 {
  background:url(/common/img/company/pic_top_cloud.jpg) center center no-repeat;
  background-size:cover;
}

.index-company-link-profile h2 {
  background:url(/common/img/company/pic_top_profile.jpg) center center no-repeat;
  background-size:cover;
}

.index-company-link-business h2 {
  background:url(/common/img/company/pic_top_business.jpg) center center no-repeat;
  background-size:cover;
}

.index-company-link-recruit h2 {
  background:url(/common/img/company/pic_top_recruit.jpg) center center no-repeat;
  background-size:cover;
}

.index-company-link-recruit .link-external {
	padding-right:0;
	margin-right:0;
	background:none;	
}
.index-company-link-recruit .link-external p:after {
	content:url(../img/icon_external.gif);
}

/* concept */

@media screen and (min-width: 768px) {
    body.parent-pageid-8 #content {
      background-attachment: fixed;
    }
}

body.page-id-8 #content #main > section,
body.parent-pageid-8 #content #main > section {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin:30px 0px;
}

body.page-id-8 #content #main > section .title-02,
body.parent-pageid-8 #content #main > section .title-02 {
  background-color:transparent;
  border:1px solid #000;
}

@media screen and (min-width: 992px) {
    body.parent-pageid-8 #content #main > section {
      margin:0 auto 80px;
    }

    body.page-id-18 #content #main > section {
      width:60%;
      margin:80px 0; 
    }
}

.bar-company-concept span {
  font-family: 'Roboto', sans-serif;
  font-weight:300;
  margin-right:5px;
  display:none;
}
.page-id-8 .bar-company-concept li {
	margin-bottom:20px;
}
.page-id-8 .bar-company-concept li a {
	display:block;
	padding:40px 0;
	padding:20px 0;
	font-size:14px;
	color:#000;
	text-decoration:none;
	background:#F3F3F3;
}

.page-id-8 .bar-company-concept li a:hover {
	margin:-2px;
	border: solid #D90200 2px;
	overflow:hidden;
}

@media screen and (min-width: 768px) {
    .bar-company-concept span {
      margin-right:0;
      display:block;
      font-size:24px;
    }
  
    .bar-company-concept li{
      min-height:100px\9; /* for IE8 */
    }
	.page-id-8 .bar-company-concept li a {
		font-size:120%;
	}
   
}

/* ---------------------------------------------------------
   profile-site
----------------------------------------------------------*/

/* index */

.brand-list {
  padding: 0 0 0 30px;
  background: url("../img/icon_disc.png") 15px 50% no-repeat;
}


/* brand */
@media screen and (min-width: 768px) {
	#main .profile-brand {
		width: 530px;
		margin: 0 auto 60px;
	}
  #main .profile-brand .brand-sp-br {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #main .profile-brand .brand-logo {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 15px;
  }
}

/* ---------------------------------------------------------
   service-site
----------------------------------------------------------*/

/* index */

.service-site#index #main section {
  margin-bottom:20px;
}

@media screen and (min-width: 768px) {
	.service-site#index #main section {
		margin-bottom:100px;
	}
	.service-site#index #main section:last-child {
		margin-bottom:0;
	}
}

#main .index-section-lead {
  text-align:center;
  color:#999;
  margin-bottom:20px;
  font-size:12px;
}
 

@media screen and (min-width: 768px) {
  #main .index-section-lead {
    margin-bottom:80px;
    font-size:14px;
  }
}

/* index main */

#index-section-main {
  padding:80px 0 40px;
}

@media screen and (min-width: 768px) {
    #index-section-main {
        padding:120px 0 0;
     }  
}

@media screen and (min-width: 992px) {
    #index-section-main {
        padding:70px 0 0;
     }
}

#index-section-main .index-section-main-title {
  background:url(/common/img/pic_index_main_bg.gif) center bottom no-repeat;
  background-size:100% auto;
  text-align:center;
  border-bottom:1px solid #e5e5e5;
}

@media screen and (min-width: 768px) {
    #index-section-main .index-section-main-title {
      background-size:auto;
      border:none;
    }
}

.index-section-main-title h1 {
  width:220px;
  margin:0 auto 30px;
}

@media screen and (min-width: 768px) {
    .index-section-main-title h1 {
      width:449px;
    }
}

.index-section-main-title .index-section-main-lead {
  font-size:11px;
  margin-bottom:50px !important;
}

@media screen and (min-width: 768px) {
    .index-section-main-title .index-section-main-lead {
        font-size:18px;
        margin-bottom:140px !important;
     }
}

.index-section-main-list li {
  padding:15px 40px 15px 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-bottom:1px solid #e5e5e5;
  position:relative;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
}

.index-section-main-list li:after {
  font-family: "streamline-30px" !important;
  content: "\e629";
  position:absolute;
  right:8px;
  top:35px;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  font-size:30px;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
  
  
@media screen and (min-width: 768px) {
  .index-section-main-list li {
    padding:15px;
    border-top:2px solid #000;
    border-bottom:none;
    width: 33.33333333333333%;
    float:left;
    text-align:center;
  }
  
  .index-section-main-list li:after {
    content:normal;
  }

}

.index-section-main-list li a {
  text-decoration:none;
  color:#000;
}

.index-section-main-list li:hover {
  background-color: rgba( 0, 0, 0, 0.05 );
}

.index-section-main-list li h2 {
  float:left;
  background:#000;
  color:#FFF;
  font-size:12px;
  line-height:60px;
  width:60px;
  height:60px;
  border-radius:50%;
  text-align:center;
  margin-right:15px;
}

@media screen and (min-width: 768px) {
  .index-section-main-list li h2 {
    float:none;
    margin:-55px auto 30px;
    font-size:20px;
    line-height:80px;
    width:80px;
    height:80px;
  }
  
  .index-section-main-list li:last-child h2 {
    font-size:16px;
  }
}

.index-section-main-list li h3 {
  font-size:16px;
  line-height:1.4;
  margin-bottom:5px;
}

.index-section-main-list li h3 span {
  font-weight:bold;
}

@media screen and (min-width: 768px) {
  .index-section-main-list li h3 {
    font-size:18px;
    margin-bottom:10px;
  }
  .index-section-main-list li h3 span {
    font-size:24px;
  }
}

@media screen and (min-width: 992px) {
  .index-section-main-list li h3 {
    font-size:24px;
  }
  .index-section-main-list li h3 span {
    font-size:34px;
  }
}

.index-section-main-list li:hover h3 {
  color:#c80012;
}

.index-section-main-list li p {
  margin-bottom:0 !important;
  font-size:12px;
}

@media screen and (min-width: 768px) {
    .index-section-main-list li p {
      font-size:14px;
    }
}

.index-section-main-list li i,
.index-section-main-list li .btn {
  display:none;
}

@media screen and (min-width: 768px) {
    .index-section-main-list li i {
      display:block;
      margin-bottom:10px;
      font-size:60px;
      line-height:60px;
     }
     .index-section-main-list li .btn {
       display:block;
       margin-top:15px;
     }
}

/* index cloud */

@media screen and (min-width: 768px) {
    .index-section-cloud-list {
      margin-top:60px;
    }
}

.index-section-cloud-list li {
  padding:15px 8px;
  color:#FFFFFF;
  width: 50%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  float:left;
  text-align:center;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
}

@media screen and (min-width: 768px) {
  .index-section-cloud-list li {
    padding:35px 35px 80px;
    margin-bottom:110px;
    min-height:380px\9; /* IE8 */
  }
}

@media screen and (min-width: 992px) {
    .index-section-cloud-list li {
      width: 25%;
      margin-bottom:70px;
    }
}

.index-section-cloud-list a {
  text-decoration:none;
  color:#FFF;
}

.index-section-cloud-list li h3 {
  font-size:12px;
  min-height:80px;
}

.index-section-cloud-list li h3 img {
  margin:15px 0 0;
  width:80%;
}


@media screen and (min-width: 768px) {
  .index-section-cloud-list li h3 {
    font-size:20px;
    min-height:160px;
  }
  #index-section-cloud .index-section-cloud-synergy360 h3 {
    font-size:19px;
  }
  
  .index-section-cloud-list li h3 img {
    margin:20px 0 30px;
    width:200px;
  }
}

.index-section-cloud-list li .index-section-cloud-thumb {
  margin-bottom:-150px !important;
  z-index:1000;
  position:relative;
}


.index-section-cloud-list li .index-section-cloud-thumb img {
  box-shadow:rgba(0, 0, 0, 0.0470588) 10px 10px 0px 0px;
}

#index-section-cloud .index-section-cloud-synergy {background:#c80012;}
#index-section-cloud .index-section-cloud-synergylead {background:#469637;}
#index-section-cloud .index-section-cloud-insightbox {background:#1a191a;}
#index-section-cloud .index-section-cloud-synergy360 {background:#f5f5f5;}

#index-section-cloud .index-section-cloud-synergy:hover {background:#df2d3d;}
#index-section-cloud .index-section-cloud-synergylead:hover {background:#64ab59;}
#index-section-cloud .index-section-cloud-insightbox:hover {background:#4d4d4d;}
#index-section-cloud .index-section-cloud-synergy360:hover {background:#fff;}


#sp-index-section-cloud {
  margin-top:50px;
}

#sp-index-section-cloud ul {
  overflow:hidden;
}

#sp-index-section-cloud li {
  margin-bottom:1px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

@media screen and (min-width: 768px) {
    #sp-index-section-cloud li {
      width:50%;
      float:left;
    }
    
    #sp-index-section-cloud li:nth-child(odd) {
    }
}

/* index seminar */

#index-section-seminar .row {
	margin-bottom:20px;
}
#index-section-seminar .seminar-panel {
	border-bottom:1px solid #F3F3F3;
}
#index-section-seminar .seminar-panel:first-child {
	border-top:1px solid #F3F3F3;
}
#index-section-seminar .seminar-panel:hover {
	background:#F3F3F3;
	webkit-transition: all 0.1s ease;
	-moz-transition: all 0.1s ease;
	-o-transition: all 0.1s ease;
	transition: all 0.1s ease;
}
#index-section-seminar .seminar-panel h3 {
	display:none;
}
#index-section-seminar .seminar-panel a {
	display:block;
	text-decoration:none;
	color:#000;
	border:none;
}
#index-section-seminar .seminar-panel p {
	padding:15px 40px 15px 15px;
	margin-bottom:0;
	font-size:12px;
	font-weight:bold;
}
#index-section-seminar .seminar-panel a:hover p {
	color:#c80012;
}
#index-section-seminar .seminar-panel span {
	display:block;
	text-align:left;
	color:inherit;
}
#index-section-seminar .seminar-panel:after {
  font-family: "streamline-30px" !important;
  content: "\e629";
  position:absolute;
  right:8px;
  top:50%;
  margin-top:-15px;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  font-size:30px;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
#index-section-seminar .row .col-md-push-4 {
	margin-top:20px;
}

@media screen and (min-width: 768px) {
	#index-section-seminar .row {
		margin-top:20px;
	}
	#index-section-seminar .row .seminar-panel {
		margin-bottom:20px;
		border:0;
	}
	#index-section-seminar .row .seminar-panel:hover {
		background:#fff;
	}
	#index-section-seminar .row .seminar-panel h3 {
		display:block;
	}
	#index-section-seminar .row .seminar-panel a {
		border:1px solid #F3F3F3;
	}
	#index-section-seminar .row .seminar-panel a:hover {
		border:1px solid #ECECEC;
	}
	#index-section-seminar .row .seminar-panel p {
		font-size:18px;
		font-weight:normal;
		position:relative;
		padding:15px;
	}
	#index-section-seminar .row .seminar-panel a:hover p {
		color:#000;
	}
	#index-section-seminar .row .seminar-panel span {
		font-size:12px;
		color:#999;
		text-align:right;
		text-decoration:none;
	}
	#index-section-seminar .row .seminar-panel span:before {
		content:"セミナー";
		float:left;
		font-size:12px;
		line-height:1.8;
		padding:0 15px;
		border-radius:12px;
		color:#fff;
		background:#999;
	}
	#index-section-seminar .row .seminar-panel:after {
		content:normal;
	}
	
	#index-section-seminar .row .seminar-panel a:hover .hover-border:before,
	#index-section-seminar .row .seminar-panel a:focus .hover-border:before,
	#index-section-seminar .row .seminar-panel a:active .hover-border:before {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		border-width: 6px;
	}
	
}

/* index bnr */

#index-section-bnr {
  background:#f5f5f5;
  padding:30px 0 10px;
  font-size:12px;
}

#index-section-bnr a {
  text-decoration:none;
  color:#000;
}

@media screen and (min-width: 768px) {
    #index-section-bnr {
      padding:60px 0 20px;
      font-size:14px;
    }
}

#index-section-bnr h3 {
  margin-bottom:10px;
  position:relative;
}


#index-section-bnr h3 span {
  position:absolute;
  top:-15px;
  left:-10px;
  z-index:1000;
  background:#ffd800;
  padding:0px 20px;
}


#index-section-bnr h3 span:before {
  content:" ";
  position:absolute;
  top:100%;
  left:0;
  width:0;
  height:0;
  border-width:0 10px 10px 0;
  border-style:solid;
  border-color:transparent;
  border-right-color:#d0b000;
}

/* cloud */

.cloud-lineup-item {
  border:1px solid #e5e5e5;
}

.cloud-lineup-item.bl-hover {
  background:#F5f5f5;
}

.cloud-lineup-item .cloud-lineup-visual{
  height:180px;
  text-align:center;
  overflow:hidden;
  padding-top:5px;
  border-bottom:1px solid #e5e5e5;
}

.cloud-lineup-visual img {
  margin-top:15px;
  width: 200px;
  box-shadow: 2px 0px 2px rgba(0, 0, 0, 0.13);
}

.cloud-lineup-item-synergy360 .cloud-lineup-visual {background:url(/cloud/img/pic_lineup_synergy360_bg.jpg) no-repeat;background-size:cover;}
.cloud-lineup-item-synergy .cloud-lineup-visual {background:url(/cloud/img/pic_lineup_synergy_bg.jpg) no-repeat;background-size:cover;}
.cloud-lineup-item-synergylead .cloud-lineup-visual {background:url(/cloud/img/pic_lineup_synergylead_bg.jpg) no-repeat;background-size:cover;}
.cloud-lineup-item-insightbox .cloud-lineup-visual {background:url(/cloud/img/pic_lineup_insightbox_bg.jpg) no-repeat;background-size:cover;}

.cloud-lineup-item-synergy360 .cloud-lineup-visual img {
  border-left:1px solid #e5e5e5;
}

.cloud-lineup-item h3 {
  text-align:center;
  padding:20px 0;
}

.cloud-lineup-item h3 img {
  max-width:180px;
}

.cloud-lineup-item dt {
  text-align:center;
  background:#f5f5f5;
  padding:3px 10px;
  margin-bottom:10px;
  font-size:11px;
  color:#999;
  border-top:1px solid #e5e5e5;
}

.cloud-lineup-item .cloud-lineup-item-type {
  text-align:center;
}

.cloud-lineup-item dd {
  padding:0 20px;
  margin-bottom:20px;
}


.cloud-lineup-item-description {
  padding:0 20px;
}

.cloud-lineup-item .btn,
.cloud-lineup-item p:last-child {
  margin-bottom:0 !important;
}

/* service */

.category-services .category-main-visual {
  margin-bottom:60px;
}

.category-services .category-main-visual .title-01 {
  margin-bottom:0;
}

.category-services .category-main-visual {
  background:url(/services/img/pic_main_visual_bg.gif) bottom right no-repeat;
  background-size:150% auto;
  padding:0px 0 40px;
}

@media screen and (min-width: 768px) {
    .category-services .category-main-visual {
      background:url(/services/img/pic_main_visual_bg.gif) top center no-repeat;
      background-size:auto;
      padding:20px 0 80px;
    }

}

#services-lineup {
}

.services-lineup-item {
  margin-bottom:30px;
}

@media screen and (min-width: 992px) {
    .services-lineup-item {
      margin-bottom:100px;
    }
}

.services-lineup-item-title {
  background:#f5f5f5;
  position:relative;
  padding:20px;
}

@media screen and (min-width: 992px) {
    .services-lineup-item-title {
        padding:70px 20px 20px;
        text-align:center;
    }
}

.services-lineup-item-title h2 {
  background:#000;
  color:#FFF;
  font-size:14px;
  line-height:50px;
  width:50px;
  height:50px;
  border-radius:50%;
  text-align:center;
  float:left;
  margin:-15px 15px 0 0;
}

.services-lineup-item:last-child .services-lineup-item-title h2 {
  font-size:12px;
}

@media screen and (min-width: 768px) {
    .services-lineup-item-title h2 {
      font-size:16px;
      line-height:60px;
      width:60px;
      height:60px;
    }
}

@media screen and (min-width: 992px) {
  .services-lineup-item-title h2 {
    position:absolute;
    top:-30px;
    left:35%;
    float:none;
    font-size:20px;
    line-height:80px;
    width:80px;
    height:80px;
    margin:0;
  }
}

.services-lineup-item-title h3 {
  font-size:16px;
  line-height:1.4;
}

.services-lineup-item-title h3 span {
  font-weight:bold;
}


@media screen and (min-width: 768px) {
  .services-lineup-item-title h3 {
    font-size:24px;
  }
}

.services-lineup-item-title p {
  display:none;
}

@media screen and (min-width: 992px) {
    .services-lineup-item-title p {
      display:block;
      position:absolute;
      bottom:-20px;
      left:40%;
      }
}

.services-lineup-item-list table {
  font-size:12px;
  width:100%;
}

@media screen and (min-width: 768px) {
    .services-lineup-item-list table {
      font-size:14px;
    }
}

.services-lineup-item-list th {
  font-weight:bold;
  width:50%;
  text-align:left;
  padding:10px 15px 10px 0;
}


@media screen and (min-width: 768px) {
     .services-lineup-item-list th {
      width:70%;
      font-size:18px;
      vertical-align:middle;
     }
}

@media screen and (min-width: 992px) {
    .services-lineup-item-list th {
      padding:0;
    }
}

.services-lineup-item-list tr:hover th {
  color:#c80012;
  cursor:pointer;
}

.services-lineup-item-list tr:hover .btn {
  opacity:0.5;
  filter:alpha(opacity=50);
  -ms-filter: "alpha( opacity=50 )";
}

.services-lineup-item-list td {
  padding:10px 0;
}


.services-lineup-item-list th,
.services-lineup-item-list td {
  border-bottom:1px solid #e5e5e5;
}

.services-lineup-item-list tr:last-child th,
.services-lineup-item-list tr:last-child td {
  border:none;
}

.flow {
  counter-reset:item;
  margin-bottom:20px;
}

.flow .flow-item {
  margin-bottom:20px;
}

.flow .flow-item h2 {
  margin-top:-10px;
  font-weight:bold;
  transform:none;
}

.flow .flow-item h2:before {
  counter-increment: item;
  content: counter(item);
  background:#c80012;
  color:#fff;
  font-size:14px;
  padding:0px;
  width:30px;
  text-align:center;
  font-family:Arial, Helvetica, sans-serif;
  position:absolute;
  top:0px;
  left:15px;
}

.client-comment h2 {
  text-align:center;
}

.client-comment h2:before {
  content:"“";
  font-size:60px;
  color:#e5e5e5;
  line-height:0;
  vertical-align:bottom;
  margin-right:10px;
}

.client-comment h2:after {
  content:"”";
  font-size:60px;
  color:#e5e5e5;
  line-height:0;
  vertical-align:bottom;
  margin-left:10px;
}

@media screen and (min-width: 768px) {
  .client-comment h2:before,
  .client-comment h2:after{
    font-size:100px;
  }
}

.client-list li {
  float:left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 33.33333333333333%;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom:20px;
}

@media screen and (min-width: 768px) {
  .client-list li {
    width: 16.666666666666664%;
  }
}

@media screen and (min-width: 992px) {
  .single-solution #main .sub,
  .single-showcase #main .sub{
    padding-left:45px;
    }
}

/* showcase */

.showcase-ind-list a {
	padding:2px 15px;
	font-size:11px;
}
@media screen and (min-width: 768px) {
.showcase-ind-list a {
	font-size:14px;
}
}

.single-showcase .cta-item a {
	display:block;
	border: 2px solid #d7d7d7;
	padding:17px 15px;
	margin-bottom:30px;
	transition:all .2s;
	color:#000;
	text-decoration:none;
}
.single-showcase .cta .cta-item a:hover {
	border-color: #D90200;
}
.single-showcase .cta .cta-item .label {
	background: #e6e6e6;
}
.single-showcase .cta .cta-item p {
	display:inline;
	margin-bottom:0 !important;
}
.single-showcase .cta .cta-item .logo {
	display:none;
}
.single-showcase .cta .cta-item .title-pc, .single-showcase .cta .cta-item .title-sp {
	font-weight:bold;
	font-size:14px;
}
.single-showcase .cta .cta-item .text-sp {
	font-size: 11px;
}
.single-showcase .cta .cta-item .text-sp:before,  .single-showcase .cta .cta-item .text-sp:after{
	content:" - ";
	font-size: 11px;
}
.single-showcase .cta .cta-item .title-pc, .single-showcase .cta .cta-item .text-pc  {
	display:none;
}
.single-showcase .cta .cta-item .title-sp, .single-showcase .cta .cta-item .text-sp  {
	display:inline;
}

@media screen and (min-width: 768px) {
.single-showcase .cta-item a {
	display:block;
	border: 2px solid #d7d7d7;
	padding:17px 15px;
	margin-bottom:30px;
	text-align:center;
	transition:all .2s;
	color:#000;
	text-decoration:none;
}
.single-showcase .cta .cta-item p {
	display:block;
}
.single-showcase .cta .cta-item .logo {
	display:block;
}
.single-showcase .cta .cta-item .logo img {
	max-height:90px;
}
.single-showcase .cta .cta-item .text-pc {
	font-size: 14px;
}
.single-showcase .cta .cta-item .text-pc:before,  .single-showcase .cta .cta-item .text-pc:after{
	content:"";
}
.single-showcase .cta .cta-item .title-pc, .single-showcase .cta .cta-item .text-pc  {
	display:block;
}
.single-showcase .cta .cta-item .title-sp, .single-showcase .cta .cta-item .text-sp  {
	display:none;
}

}




/* solution */

.solution-privacy {
  font-size:11px;
  line-height:1.8;
  background:#FFF;
  padding:20px;
  height:200px;
  overflow:scroll;
  margin-bottom:30px;
}

.service-site-suport #footer-cta {
  display:none;
}


#notice{
  display:none;
  position:fixed;
  top:73px;
  z-index:999;
  width:100%;
  background-color: rgba(0,0,0,0.8);
  filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#80000000,EndColorStr=#80000000);
    -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#80000000,EndColorStr=#80000000)";
  color:#FFF;
  padding:20px 0;
  overflow:hidden;
  overflow: auto;
  font-size:12px;
  -webkit-overflow-scrolling: touch;
}
#notice-cookie {
    font-size: 80%
}

@media screen and (min-width: 768px) {
    #notice {
      font-size:14px;
      height:auto;
    }
    #notice-cookie {
        font-size: 100%
    }
}

#notice:not(:target){
  filter: none;
  -ms-filter: none;
}

@media screen and (min-width: 992px) {
    #notice{
        top:0;
    }
}

#notice .container h2 {
  margin-bottom:5px;
  text-decoration:underline;
  cursor:pointer;
  color:#FFF;
}

#notice .container h2:before {
  font-family: 'Material Icons';
  content: "\e5cf";
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  margin-right:6px;
  color:#FFF;
}

#notice .btn{
  cursor:pointer;
}


.bubble {
	position: relative;
	background: #fff;
	border: 1px solid #e5e5e5;
    padding:10px 15px;
    border-radius:5px;
    margin-bottom:20px;
}

.bubble p:before {
  font-family: "streamline-30px" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; 
  display:inline-block;
  font-size:20px;
  margin-right:10px;
  vertical-align:middle;
  content: "\e174";
}

.bubble p:last-child {
  margin-bottom:0px !important;
}

.bubble:after, .bubble:before {
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.bubble:after {
	border-color: rgba(255, 255, 255, 0);
	border-bottom-color: #fff;
	border-width: 5px;
	margin-left: -5px;
}
.bubble:before {
	border-color: rgba(229, 229, 229, 0);
	border-bottom-color: #e5e5e5;
	border-width: 6px;
	margin-left: -6px;
}

/* usecase */

.usecase-list h1:before{
  font-family: "streamline-30px" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; 
  display:inline-block;
  font-size:30px;
  background:#f5f5f5;
  padding:20px;
  border-radius:50%;
  margin-right:20px;
  vertical-align:middle;
}

h1.usecase-efficiency:before{content: "\e323";}
h1.usecase-data-utilization:before{content: "\e405";}
h1.usecase-member-management:before{content: "\e146";}
h1.usecase-list-utilization:before{content: "\e150";}
h1.usecase-repeater-acquisition:before{content: "\e148";}
h1.usecase-enquete:before{content: "\e078";}
h1.usecase-campaign:before{content: "\e419";}
h1.usecase-visit-promotion:before{content: "\e19f";}

.usecase-point {
  list-style:none;
  counter-reset:item;
}

.usecase-point li {
  position:relative;
  border-top:1px solid #e5e5e5;
  padding-top:30px;
  overflow:hidden;
}

.usecase-point li:first-child {
  border-top:1px solid #000;
}

.usecase-point li:before {
  counter-increment: item;
  content: counter(item);
  font-size:50px;
  color:#c80012;
  text-align:center;
  line-height:1;
  font-family: 'Roboto', sans-serif;
  font-weight:100;
  display:block;
  margin-bottom:20px;
}

.usecase-point li h2 {
  font-size:18px;
  margin-bottom:20px;
}

@media screen and (min-width: 768px) {
    .usecase-point li {
      padding-left:130px;
    }
    
    .usecase-point li:before {
      width:100px;
      font-size:100px;
      position:absolute;
      top:30px;
      left:0;
    }

    .usecase-point li h2 {
      font-size:24px;
     }
}

/* special */

.special-category {
  position:absolute;
  top:0;
  left:0;
  width:60px;
}
@media screen and (min-width: 768px) {
    .special-category {
      width:98px;
    }
}

.special-tag span {
  background:#e5e5e5;
  padding:2px 10px;
  border-radius:15px;
  line-height:1;
  font-size:11px;
 }
 
 @media screen and (min-width: 768px) {
     .special-tag span {
       font-size:14px;
       padding:2px 20px;
     }
 }

#special-lineup {
  margin-bottom:50px;
}

#special-lineup ol {
  list-style:none;
  overflow:hidden;
}

#special-lineup li {
}

@media screen and (min-width: 992px) {
  #special-lineup li {
    width:50%;
    float: left;
    margin-bottom: 25px;
  }
}

#special-lineup li a {
  position: relative;
  text-decoration: none;
  color:#000000;
  display:block;
  padding:0 0 30px;
  border-top:1px solid #000;
  overflow:hidden;
  -webkit-transition: all .2s;
  transition: all .2s;
  border: 1px solid #bbb !important;
}

#special-lineup li a:hover {
  background:#f5f5f5;
}

@media screen and (min-width: 992px) {
  #special-lineup li:nth-child(odd) a {
    margin-right:15px;
  }

  #special-lineup li:nth-child(even) a {
    margin-left:15px;
  }

  #special-lineup li:first-child a,
  #special-lineup li:nth-child(2) a {
    border:none;
  }
}

.special-lineup-text,
.special-lineup-thumb {
  margin-bottom: 10px;
  width:50%;
  float:left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.special-lineup-text {
  text-align:center;
  padding:8% 15px 0px;
  position:relative;
}

#special-lineup li {
  counter-increment: item;
}

.special-lineup-text h2:before {
  content: "0"counter(item);
  display:block;
  text-align:center;
  font-size:18px;
  font-weight:normal;
  font-family: 'Oswald', sans-serif;
}

#special-lineup li:nth-child(n+10) h2:before {
  content: counter(item);
}

.special-lineup-text h2 {
  font-size:14px;
  font-weight:bold;
  line-height:1.4;
  margin-bottom:10px;
}

@media screen and (min-width: 768px) {
  .special-lineup-text h2 {
    font-size:24px;
  }
  
  .special-lineup-text h2:before {
    font-size:60px;
  }
}

.special-lineup-icon {
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: 3%;
}

.special-lineup-icon img {
  max-width: 100%;
}
 
 .special-title {
  font-family: 'Oswald', sans-serif;
  font-size:24px;
 }


.special-detail-title-text {
  background:#FFFFFF;
  padding:30px 20px 0;
  position:relative;
  margin-bottom:200px;
  text-align:center;
  overflow:hidden;
}

.special-detail-title-text.alpha {
  background:url(/common/img/white-80.png) center center repeat;
}

.special-detail-title-text h2 {
  font-size:18px;
  font-weight:bold;
  line-height:1.6;
  margin-bottom:10px;
}

.special-detail-title-text h2 span {
  display:block;
  text-align:center;
  font-size:30px;
  font-weight:normal;
  font-family: 'Oswald', sans-serif;
}

 @media screen and (min-width: 768px) {
     .special-detail-title-text {
       margin-bottom:60px;
     }
     
     .special-detail-title-text h2 {
         font-size:20px;
     }
     .special-detail-title-text h2 span {
         font-size:70px;
     }
 }

@media screen and (min-width: 992px) {
         .special-detail-title-text h2 {
         font-size:30px;
     }
}

/* sitemap */

.sitemap li a {
  text-decoration:none;
}

.sitemap li {
  font-size:18px;
  border-top:1px solid #000;
  padding-top:10px;
  margin-top:10px;
}

.sitemap li ul li {
  border-top:none;
  font-size:14px;
  padding-top:0px;
  margin-top:0px;
}

.sitemap ul li:before{
  content:"-";
  margin-right:10px;
  color:#999;
}

.sitemap ul li li:before{
  content:"・";
  padding-left:20px;
  margin-right:5px;
  color:#999;
}


/* ---------------------------------------------------------
   for WordPress
----------------------------------------------------------*/

.alignnone {
  display: block;
  margin: 0 auto;
}

.aligncenter {
  display: block;
  margin: 0 auto;
}

.alignleft {
  display: block;
  float: left;
  margin: 0 30px 30px 0;
}

.alignright {
  display: block;
  float: right;
  margin: 0 0 30px 30px;
}

.wp-caption {
  text-align:center;
  font-size:11px;
  max-width:100%;
  height:auto;
  margin-bottom:15px;
}

.wp-caption img {
  margin: 0;
  padding: 0;
  border: 0 none;
}

.wp-caption p.wp-caption-text {
  padding: 5px 0 0;
  margin: 0;
}

.post-content h2 {
  font-size:18px;
  margin-bottom:20px;
}

.post-content h3 {
  font-size:14px;
  margin-bottom:20px;
  background:#f5f5f5;
  padding:5px 20px;
  border-radius:5px;
}

.blog-site .post-content h2,
.blog-site .post-content h3 {
  margin-top:60px;
}

@media screen and (min-width: 768px) {
  .post-content h2 {
    font-size:24px;
  }
  
  .post-content h3 {
    font-size:18px;
  }
}

.post-content h4 {
  font-weight:bold;
  margin-bottom:10px;
}

.post-content h2,
.post-content h3,
.post-content h4 {
  line-height:1.8;
}

@media screen and (min-width: 768px) {
    .blog-site .post-content {
    font-size:16px;
    }
}

.post-content p,
.post-content > ul,
.post-content > ol,
.post-content blockquote,
.post-content q,
.post-content table{
  margin-bottom:20px;
}

.post-content ul{
  list-style:disc;
  padding-left:20px;
  overflow:hidden;
}

.post-content ol{
  padding-left:26px;
  overflow:hidden;
}

.post-content ul li,
.post-content ol li{
  margin-bottom:5px;
}

.post-content blockquote,
.post-content q{
  color:#999;
  padding:0 0 0 65px;
  border-left:1px solid #e5e5e5;
  position:relative;
  display:block;
}

.post-content blockquote:before,
.post-content q:before{
  content:"“";
  font-size:65px;
  line-height:1.1;
  color:#e5e5e5;
  position:absolute;
  left:20px;
  top:0px;
}

.post-content table{
  width:100%;
  border:1px solid #e5e5e5;
}

.post-content table caption{
  padding-bottom:5px;
  font-weight:bold;
}

.post-content table th{
  text-align:left;
  background:#f5f5f5;
}

.post-content table th,
.post-content table td {
  padding:10px 15px;
  border-top:1px solid #e5e5e5;
  border-left:1px solid #e5e5e5;
  vertical-align:top;
}

.post-content .box-gray,
.post-content .box-blue,
.post-content .box-yellow{
  padding:20px 30px;
  margin-bottom:30px;
}

.post-content .box-gray{
  background:#f5f5f5;
}

.post-content .box-blue{
  color:#00a1ff;
  background:#e1f4ff;
}

.post-content .box-yellow{
  color:#E89E00;
  background:#fffbec;
}

.post-content ul.box-gray,
.post-content ul.box-blue,
.post-content ul.box-yellow{
  padding-left:45px;
}

.post-content ol.box-gray,
.post-content ol.box-blue,
.post-content ol.box-yellow{
  padding-left:50px;
}

.post-content ul.box-gray li:last-child,
.post-content ul.box-blue li:last-child,
.post-content ul.box-yellow li:last-child,
.post-content ol.box-gray li:last-child,
.post-content ol.box-blue li:last-child,
.post-content ol.box-yellow li:last-child{
  margin-bottom:0;
}


/* ---------------------------------------------------------
   Google cse
----------------------------------------------------------*/

.gsc-control-cse, .gsc-control-cse .gsc-table-result {
}

.gs-title a,
.gs-title a b {
  color:#c80012 !important;
}

.cse .gsc-control-cse, .gsc-control-cse {
  padding:0 !important;
}

.gsc-input-box {
  height:40px !important;
}

.gsc-result .gs-title {
  height:auto !important;
}

