@charset "UTF-8";
/****************************************/
/* HubSpot Template - DAC Custom        */
/****************************************/
/****************************************
- 0V - VARIABLES
****************************************/
  .markerDeepYellow {
	background:linear-gradient(transparent 10%, #ffff55 0%);
	display: inline;
  }

/* menu */
  header.header #menu ul li.hs-menu-depth-1 a {
    padding: 0px 15px;
    font-family: Avenir Next;
    font-weight: bold;
    font-size: 14px !Important;
  }
  .logo-text-wrapper .logo-text span {
    font-size: 20px;
  }
  .section-home-hero {
    margin-top: 80px;
  }
    
/* CONTACT ボタン */
  header.header--white #menu .hs-menu-wrapper ul li.hs-menu-depth-1.link-cta.link-cta1 a span {
    background-color: #00313F;
    box-shadow: 0px 0px 0px rgb(217 217 217 / 0%);
    border-radius: 9999px;
    border: 0px solid #fff;
    padding: 10px 20px;
    font-size: 14px !Important;
  }

/* 全体背景・フォント色 */
/*  body {
    background-color: #00313F;
    color: #fff;
  } */
/*  body, a, h1, h2, h3, h4, h5, p, span, div, ul, li, input, span, textarea {
    font-family: Avenir Next;
  } */
  .color-white, .sub-title {
    color: #fff;
  }
  .back-white {
    background-color: #fff;
    color: #00313F;
  }
  .back-base {
    background-color: #00313F !Important;
    color: #fff !Important;
  }
  .radius-10 {
    border-radius: 10px;
  }

/* キービジュアル */
  section.kv-back {
    height: 700px;
  }

/* NEWS */
  .home-contact-section .widget-type-form .form-title,
  .services .box-services h3 {
    color: #00313F;
    margin: 20px 15px; 
    text-align: left;
    font-size: 16px;
  }
  .services .box-services a .desc {
    font-size: 14px;
    color: #00313F;
	margin-bottom: 20px;
  }
  div.flex-four div.product-item {
    background-color: #fff;
    color: #00313F;
  }
  a.cta-lp3 {
    box-shadow: 0px 0px 0px rgb(217 217 217 / 0%);
    border-radius: 9999px;
    background-color: #fff; 
    color: #00313f; 
    border: 0px solid #fff; 
    height: initial;
    font-size: 14px;
  }
  .cta_button {
    min-width: 0px;
}

/* CCS概要 囲み */
  .box-shadow div.block-inner {
    padding: 60px;
    border-radius: 10px;
    box-shadow: 0px 0px 15px 15px rgba(255, 255, 255, 0.20);
  }
  a.cta-lp4 {
    box-shadow: 0px 0px 0px rgb(217 217 217 / 0%);
    border-radius: 1000px;
    background-color: #fff; 
    color: #00313f; 
    border: 3px solid #00313F; 
    height: initial;
    font-size: 28px;
  }

/* for Client - flexThree */
  .ccs-flex-three div.span4 {
/*    background-color: #00546C; */
    border-radius: 3px;
  }
  .ccs-flex-three .box-services h3 {
/*    color: #fff; */
    text-align: center;
  }
  .box-shadow div.span4 {
    box-shadow: 0px 0px 10px 10px rgba(255, 255, 255, 0.12);
  }
  .services {
  overflow: visible;
  }
  .ccs-flex-three .box-services .desc {
    margin-bottom: 20px;
  }

   .ccs-btn-mini {
     border: 1px solid #dcdcdc;
     background-color: #fff;
     margin: 0px 5px;
}

/* 対応媒体一覧 */
.ccs-media-ttl {
  position: relative;
}
.ccs-media-ttl-none {
  font-weight: bold;
  box-shadow: 5px 5px 0px rgba(217, 217, 217,0.4);
  padding: 10px 20px;
  font-size: 18px;
}
.ccs-media-ttl-mark {
  position: absolute; top: 20%; right: 10%;
}
.triangle-r {
  width: 0;
  height: 0;
  border-left: 15px solid #333;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}
.ccs-media-item {
  margin: 20px auto;
  padding: 20px;
}
.ccs-media-text {
  margin-bottom: 20px;
}
  


/* about Us */
  .ccs-aboutus1 {
    border-radius: 10px;
    border: 0px solid #dcdcdc;
    position: relative;
    padding: 30px;
  }
@media only screen and (min-width: 971px) {
  .ccs-math {
    font-size: 48px; font-weight: bold;
  }
  .ccs-aboutus1-img {
    position: absolute;
    top: 30px;
    right: 30px;
  }
}
@media only screen and (max-width: 970px) {
  .ccs-aboutus1-img {
    position: static;
  }
}
@media only screen and (min-width: 631px) {
  .ccs-flex-four {
    float: left;
    width: 25%;
    padding: 20px;
    font-size: 14px;
    font-size: 14px;
  }
  .ccs-math {
    font-size: 38px; font-weight: bold;
  }
}
@media only screen and (max-width: 630px) {
  .ccs-flex-four {
    float: none;
    margin: 10px 0;
    font-size: 14px;
    font-weight: 500;
  }
  .ccs-math {
    font-size: 48px; font-weight: bold;
  }
}

/* about us 1 */
.ccs-aboutus {
  border-radius: 10px;
  border: 1px solid #dcdcdc;
  margin-top: 40px;
  padding: 20px;
  display: block;
}
.ccs-partner-logo img {
  margin: 0 auto;
  padding: 20px 0px;
}
/* about us 2 */
.ccs-aboutus2 {
  border-radius: 10px;
  border: 1px solid #dcdcdc;
  padding: 20px;
  display: block;
}
.span3 .feature-image {
  background-color: #343434;
  padding: 10px;
}
.span3 {
  border: 1px solid #dcdcdc;
}


/* Panel flex */
.services .box-services .desc {
  margin-bottom : 30px;
}
@media only screen and (min-width: 767px) {
.ccs-pf-container {
  display: flex;
  align-items: stretch;
}
}
.ccs-pf-img {
  height: 100px;
}
.ccs-pf-item {
  font-size: 16px;
}

/* Our Service */
@media only screen and (min-width: 631px) {
  .ccs-flex-two {
    float: left;
    width: 48%;
  }
.ccs-flex-two-left {
  margin-right: 4%;
  }
}
@media only screen and (max-width: 630px) {
  .ccs-flex-two {
    float: none;
    margin: 10px 0
  }
}
.pd-20 {
  padding: 20px;
}

/* Recruit */
  .ccs-inquiry-btn1 {
    font-size: 14px !important;
  }
  .ccs-inquiry-btn2 {
    font-size: 28px !important;
  }

/* Footer */
  .social-footer {
    background-color: inherit;
  }
  
/*
  .kv-back {
    z-index: -1;
  }
  header.header--white {
    background-color: transparent !Important;
    box-shadow: 0 0px 0px rgb(0 0 0 / 0%);
    -webkit-box-shadow: 0 0px 0px rgb(0 0 0 / 0%);
    border-bottom: solid 0px #fff;
  }
  header.header--white #menu ul li.hs-menu-depth-1 a {
    color: #fff;
  }
header.header--white #menu .hs-menu-wrapper ul li.hs-menu-depth-1.link-cta.link-cta1 a span {
    border-radius: 0px;
    border: 1px solid #d9d9d9;
    background-color: #668;
    color: #FFF;
    font-size: 16px;
    font-weight: 600;
    box-shadow: 1px 3px 0px rgb(217 217 217 / 70%);
}
  }
*/

.questions .question h3 {
 border: #E1E5E5 solid 1px;
}
.questions .question h3:before,
.questions .question h3 span {
  color: #666666;
}


/****************************************
 3rd layer
****************************************/

/* anchor-link upper KV */
.hero-banner-50 {
  min-height: 50px;
  color: #fff;
  padding: 5px 0px;
}
.hs_cos_wrapper_type_rich_text {
  width: 100%;
}
.hero-banner-item-wrap {
  vertical-align: middle;
}
.hero-banner-item {
  background-color: #fff;
  color: #3E3E3E;
  border: solid 1px #3E3E3E;
  height: 40px;
  font-weight: bold;
  padding: 8px 30px;
  display: block;

/*  box-shadow: 0px 0px 10px 10px rgba(255, 255, 255, 0.12); */
}

@media only screen and (min-width: 631px) {
.hero-banner-item {
  width : 300px;
}
.hero-banner-container {
  display: flex;
  justify-content: space-around;  
  align-items: center;
}
}
@media only screen and (max-width: 630px) {
.hero-banner-item {
  width : 100%;
}
.hero-banner-container {
  display: block;
}
}

/* KV */
@media only screen and (min-width: 631px) {
.css-3-kv {
  height: 320px; /* 480px; */
}
h1.kv-title {
  width: 40%;
}
}
@media only screen and (max-width: 630px) {
.css-3-kv {
  height: 160px; /* 240px; */
}
h1.kv-title {
  width: 100%;
}
}

.css-3-kv .hs_cos_wrapper_type_rich_text {
  width：100%;
  height: 100%;
  display: flex;
  justify-content: center; /*左右中央揃え*/
  align-items: center;     /*上下中央揃え*/
}
h1.kv-title {
  background-color: #fff;
  color: #3E3E3E;
  border: solid 0px #6B7B8E;
  font-weight: bold;
  padding: 20px;
}

/* Session  */

.back-gray {
    background-color: #f3f5f6 !Important;
    color: #3E3E3E !Important;
}
.ccs-session {
  border-radius: 0px;
  border: 0px solid #dcdcdc;
  padding: 20px;
  width: 100%;
}

/* Services */
@media (min-width: 941px) {
.ccs-box-container {
  display:flex;
  align-items: stretch;
}
.text-and-image-overflow .row-fluid .ccs-box25 {
  display:flex;
  align-items: center;
  text-align: center;
  width: 24%;
  margin-right: 1%;
  border: solid 1px #3E3E3E;
  padding: 10px 20px;
}
.text-and-image-overflow .row-fluid .ccs-box75 {
  display: block;
  text-align: left;
  width: 74%;
  border: solid 1px #3E3E3E;
  padding: 10px 20px;
}
}
@media (max-width: 940px) {
.ccs-box-container {
  display:block;
}
.text-and-image-overflow .row-fluid .ccs-box25 {
  display:block;
  text-align: center;
  width: 100%;
  border: solid 1px #3E3E3E;
  padding: 10px 20px;
}
.text-and-image-overflow .row-fluid .ccs-box75 {
  display: block;
  text-align: left;
  width: 100%;
  border: solid 1px #3E3E3E;
  padding: 10px 20px;
}
}
.ccs-box25 h4, .ccs-box75 h4 {
  width: 100%;
}
.text-and-image-overflow .row-fluid .cta-item {
  text-align: right;
  float: none;
}
.text-and-image-overflow .row-fluid .cta-item a {
  background-color: #ed7d31;
  color: #fff;
  font-weight: bold;
  padding: 5px 20px;
  box-shadow: 3px 3px 3px rgb(62 62 62 / 50%);
  border-radius: 9999px;
  font-size: 16px;
}
.cta-item {
  text-align: right;
  float: none;
}
.cta-item a {
  background-color: #ed7d31;
  color: #fff;
  font-weight: bold;
  padding: 5px 20px;
  box-shadow: 3px 3px 3px rgb(62 62 62 / 50%);
  border-radius: 9999px;
  font-size: 16px;
}
/* FAQ */
.ccs-faq-title {
  padding: 10px 50px;
  font-weight: bold;
  font-size: 20px;
  max-width: 300px;
  margin: 0 auto;
  border-radius: 10px;
}
.questions .question h3.ccs-faq-q {
  border: solid 1px #3E3E3E; /* solid 1px #E1E5E5 */
  border-radius: 0px;
}
.questions .question .ccs-faq-a {
  border-radius: 0px;
  
}


/****************************************
 inquiry
****************************************/
.hero-banner.color-bar .hero-banner-wrap h1 {
  color: #fff;
}

/****************************************/