:root {
  --color-main: rgb(114, 50, 235);
  --color-sub: #3800a2;
  --color-point: #d79525;
}



#header.active #global_menu > ul > li > a,
body.header_fix #global_menu > ul > li > a,
body.single #global_menu > ul > li > a {
  color: #fff;
}

#header_slider_wrap {
  height: 600px;
}

.latest-news__cat {
  background-color: var(--color-point);
  color: #fff;
  border-radius: 100px;
  font-size: 14px;
  padding: 8px;
}
.latest-news__title {
  font-weight: bold;
}
#header_slider .item {
  height: 600px;
}

ul.industry__list {
  display: flex;
  flex-wrap: wrap;
  background-color: #f5f5f5;
  gap: 70px 20px;
  padding: 60px 40px;
}
.industry__list li {
  display: flex;
  font-weight: bold;
  align-items: center;
  gap: 30px;
  width: 48%;
}
.industry__list li .ttl {
  line-height: 1.6;
font-size: 18px;
}
.industry__list li img {
  width: 80px;
  height: 80px;
}

.custom_button {
  background-color: var(--color-main);
  color: #fff;
  width: 270px;
  height: 60px;
  text-align: center;
  margin-right: auto;
  margin-left: auto;
}
.custom_button a {
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
}

.cb_free_space.num3 {
  margin-top: 70px;
  margin-bottom: 70px;
}

.latest-news__item a {
  gap: 20px;
  display: flex;
}

.offer {
  background-image: url(../images/offer_bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
  text-align: center;
  padding: 100px 20px;
  word-break: break-all;
}
.offer .ttl {
  font-weight: bold;
  font-size: 32px;
  line-height: 1;
}
.offer p {
  margin-top: 24px;
  line-height: 1.6;
}
.offer__btn {
  background-color: #fff;
  max-width: 363px;
  margin-right: auto;
  margin-left: auto;
  height: 70px;
  line-height: 68px;
  margin-top: 24px;
}
.offer__btn a {
font-weight: bold;
display: block;
width: 100%;
height: 100%;
transition: all ease .3s;
}
.offer__btn a:hover {
  opacity: 0.6;
}
.offer__btn a span {
 color: var(--color-main);

}
#footer {
  background-color: var(--color-sub);
}
#footer_menu .footer_menu > *,
#footer a,
#footer_menu .footer_menu li:first-of-type a {
  color: #fff;
}
#footer a:hover,
.footer_menu li:first-of-type a:hover {
  color: var(--color-point) !important;
}
#copyright {
  color: #fff;
}
body.single #header {
  background: rgba(114, 50, 235, 0.3);
}
#footer_menu .footer_menu:nth-of-type(4) li {
  font-weight: 600;
  font-size: 16px;
}
.home .offer {
  margin-bottom: 70px;
}
.home h2.cb_headline .headline {
  color: #000;
}
#return_top2 {
  background-color: #fff;
}

.discover .post_col p {
  line-height: 1.6;
  margin-top: 8px;
}
.discover .catch {
  color: var(--color-main);
  font-weight: bold;
  font-size: 32px;
}

.project_list .desc span {
  -webkit-line-clamp: 4;
}
.project_list .desc {
  max-height: 6.5em;
    line-height: 1.6;
    margin: 20px;
}

.company__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 16px;
}



#company_archive_custom {
  width: 850px;
  margin: 0 auto;
  padding-bottom: 80px;
  max-width: 100%;
}
#company_archive_custom h2 {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  font-size: 28px;
  margin-top: 24px;
  padding-top: 100px;
  border-top: 1px solid #ddd;
}
#company_archive_custom h2 + p {
  margin-top: 24px;
  line-height: 1.8;
margin-bottom: 24px;
text-align: center;
}?
#company_archive_custom ul {
  display: flex;
  margin-top: 24px;
}?#company_archive_custom h2 + p
#company_archive_custom ul li {
  width: 50%;
}
#company_archive_custom ul li img {
  max-width: 100%;
}
#company_archive_custom .contactus {
  background-color: var(--color-main);
  color: #fff;
  padding: 40px 20px;
  text-align: center;
  font-weight: bold;
  margin-top: 32px;
}
#company_archive_custom h3 {
  text-align: center;
  color: var(--color-main);
  font-weight: bold;
  margin-top: 32px;
  font-size: 20px;
padding-top: 40px;
}
#company_archive_custom iframe {
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-top: 24px;
  display: block;
}
#company_archive_custom .map__txt {
  max-width: 850px;
width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-top: 24px;
  line-height: 2;
}

.single-service #post_image2,.single-project #post_image2,.single-company #post_image2 {
  display: none;
}

#footer_menu .footer_menu li:first-of-type a {
  color: #fff;
}

.cm__btn {
  background-color: var(--color-main);
  max-width: 270px;
  height: 60px;
  margin-right: auto;
  margin-left: auto;
  margin-top: 32px;
}
.cm__btn a {
  color: #fff;
  display: block; 
  font-weight: bold;
  line-height: 60px;
  cursor: pointer;
}
.contactus div:first-of-type {
line-height: 1.6;
}
.contactus .cm__btn {
  background-color: #fff;
}
.contactus .cm__btn a {
  color: var(--color-main);
  background-color: #fff;
transition: all ease .2s;
}
.contactus .cm__btn a:hover {
opacity: 0.6;
}
#footer_menu_bottom ul {
padding: 20px 0 0;
}
#footer_menu_bottom li {
  background-image: url(../images/city_of_kyoto.svg);
  width: 150px;
  height: 55px;
  background-repeat: no-repeat;
  background-size: cover;
}
#footer_menu_bottom li a {
  color: var(--color-sub);
  display: block;
width: 100%;
height: 100%;
transition: all ease .2s;
}
#footer_menu_bottom li a:hover {
opacity: 0.7;
}
.cb_headline .sub_headline {
  color: var(--color-main);
  font-weight: bold;
  font-size: 18px;
  margin-top: 16px;
}


#global_menu > ul > li > a:hover {
color: #D79525!important;
}

.megamenu_b .service_item_list .sub_title,.megamenu_c .company_list_area .title .sub_title {
display: none;
}

.pc .cb_service_item_list .content {
max-width: calc(100% - 40px);
padding: 0 20px 50px;
}
.pc .cb_service_item_list .title .sub_title {
word-break: break-all;
}
.cb_service_item_list .desc span {
word-break: break-all;
}
#page_discover_top #page_square_headline {
z-index: 1000;
    width: 200px;
    height: 200px;
    color: #fff;
    position: relative;
    margin: 0 auto;
    top: -100px;
}
#page_discover_top div.head {
width: 100%;
    text-align: center;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#service_list .desc span {
word-break: break-all;
}
#cb_content_2 {
margin-top: 80px;
}

.forPC {
display: inline-block;
}

.forSP {
display: none;
}
.whoweare .whoweare__wrap {
display: grid;
grid-template-columns: 1fr 1fr;
}