@charset "utf-8";

* {
z-index: 1;
}
#container {
background: #f5f7f8;
background-size: auto;
position: relative;
z-index: -2;
}
.bg-slide {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100vh;
background: url(img/bg.jpg) repeat-x;
background-size: 4000px;
background-position: 0 center;
z-index: -1;
}



/*HEADER*/




#header_logo {
    height: 100%;
    position: absolute;
    left: 20px !important;
    top: 0;
    z-index: 3;
    width: 180px !important;
}
.buttonss {
position: absolute;
right: 10px;
top: 10px;
float: right;
z-index: 3;
}

#header_button {
position: relative !important;
right: 0 !important;
top: 0 !important;
display: inline-block;
}

#header_button2 {
height: 60px;
line-height: 60px;
text-align: center;
padding: 0 25px;
min-width: 170px;
position: relative;
right: 8px;
top: 0;
z-index: 3;
background: #ffec00 !important;
color: #2e2b2b !important;
border-radius: 10px;
display: inline-block;
}
#header_button2:hover {
background: #ffc700 !important;
transition-duration: .3s;
}

#global_menu > ul > li > a {
    padding: 0 10px !important;
}

/*FV*/
#header_slider_content .catch {
  font-size: 0.8em;
}
#header_slider_content .catch {
text-align: left !important;
}
#header_slider_content .link_button {
text-align: left !important;
}
#header_slider_content .link_button a {
margin: 0 0 !important;
}
.typewritter_animation .item {
background: #ffec00;
color: #2e2b2b;
}

/*ニュースティッカー*/
.news_boxx {
  width: calc(100% - 100px);
  margin: 0 auto;
  height: 0;
  overflow: visible;
}

#news_ticker {
    width: 580px !important;
    height: 160px !important;
    box-shadow: none !important;
    position: relative;
    top: -200px !important;
    margin-bottom: -200px !important;
    z-index: 10;
    background: rgb(255, 255, 255);
    border-radius: 0px !important;
    margin: 0 0 !important;
}
#news_ticker a {
    padding: 0 40px;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center;
    width: 100%;
}
.news_boxxx {
  height: 160px;
  width: calc(100% - 250px) !important;
  padding-left: 30px;
  padding-right: 20px;
}
.news_boxxx .title {
  width: 100%;
  padding: 8px 0;
}
.news_boxxx time {
  width: 100%;
  padding: 8px 0;
}
#news_ticker:before {
    display: none !important;
}
#news_ticker:after {
    display: none !important;
}
#news_ticker a {
    padding: 0 0px 0 0 !important;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.news_boxx_eye {
  width: 250px;
  height: 160px;
  overflow: hidden;
}
.news_boxx_eye img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*スライダー*/


.cb_design_header p {
  font-size: 16px;
  letter-spacing: 0.14em;
  line-height: 2.4em;
  padding: 0 16px;
}



.cb_image_slider .image {

    overflow: visible !important;
    overflow: hidden;
}


.cb_image_slider .image img {
  overflow: hidden;
  border-radius: 16px;
}

.cb_image_slider .image p {
  position: relative;
  top: 460px;
  line-height: 2.4em !important;
  text-align: center;
}


.cb_image_slider .item:nth-child(even) .image {
  position: relative;
  top: 0 !important;
}

.cb_image_slider .item:nth-child(even) {
  position: relative;
  margin-top: 100px !important;
}


/*TOP事業内容*/


.case_study_list .title_area {
padding: 0 50px;
height: 100px !important;
display: flex;
flex-direction: column;
justify-content: center;
}
.case_study_list .item100 {
width: calc(100% + 1px) !important;
}
/*CONTENT*/
.blog_list {
width: auto;
max-width: 1200px !important;
}


#page_contents {
width: 1200px !important;
}

.design_header .catch {
padding-bottom: 24px !important;
margin-bottom: 32px !important;
}

.design_header .catch::after {
content: "";
background: #0f9eda;
width: 100px;
height: 4px;
display: block;
margin: 16px auto 0 auto;
}

.sp_content.layout_type1 .main_content .catch, .sp_content.layout_type1 .main_content .desc {
color: #fff;
text-shadow: 0 0 10px #000000;
}

.sp_content.layout_type1 .main_content .design_button {
border-color: 2px solid #02afc4;
color: #222 !important;
background: #fff !important;
width: 280px !important;
}

.sp_content.layout_type1 .main_content .design_button:hover {
color: #222 !important;
}

.cb_blog_list .link_button .design_button {
background: #ffec00 !important;
color: #222 !important;
border: none !important;
}
.cb_blog_list .link_button .design_button:hover {
background: #ffc700 !important;
color: #222 !important;
border: none !important;
transition-duration: .3s;
}
.blog_list time {
display: none !important;
}
.blog_list .category_button {
position: relative;
transform: translate3d(0px, 0, 0) !important;
z-index: 2;
}
.blog_list .content {
padding: 50px 0px 24px !important;
}
.category_button {
background: none !important;
color: #fff;
padding: 8px 0px 0 !important;
font-size: 12px !important;
min-width: 110px;
height: 32px !important;
line-height: 32px !important;
text-align: left !important;
display: table;
color: #0f9eda !important;
position: relative;
}
.category_button:hover {
transition-duration: .3s;
color: #057aab;
}

.blog_list .item {
width: calc(100% / 3 + 1px);
margin: 0 -1px -1px 0;
border: none !important;
border-top: none;
position: relative;
padding: 0 16px;
}
.blog_list .title {
font-size: 16px !important;
}
#content_builder .link_button {
text-align: center;
margin-top: 0px !important;
}
.case_study_list .title span {
display: block !important;
text-align: center !important;
}




.post_content h2::after {
content: "";
background: #0f9eda;
width: 100px;
height: 4px;
display: block;
margin: 16px auto 0 auto;
}

.post_content h2 {
margin: 4em 0 3em 0 !important;
}
.sales_big {
padding: 48px;
background: url(img/sales_big.jpg) no-repeat right top;
background-size: cover;
border-radius: 24px;
min-height: 700px;

}
.big_content2 {
max-width: 600px;
padding-left: 48px;
}
.big_content h3 {
font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif !important;
font-size: 2.3em !important;

}
.big_content p {
font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif !important;
font-size: 1.3em !important;

}



/*固定ページ*/
#bread_crumb {
background: #fff;
}

.img50 {
width: calc(50% - 32px);
}
.img50 img {
border-radius: 16px;
overflow: hidden;
}

.flex {
display: flex;
flex-wrap: wrap;
}
.fd_r { 
flex-direction: row;
}
.fd_rr { 
flex-direction: row-reverse;
}
.ai_s {
align-items: flex-start;
}
.ai_c {
align-items: center;
}
.jc_s {
justify-content: flex-start;
}
.jc_c {
justify-content: center;
}
.jc_b {
justify-content: space-between;
}
.jc_e {
justify-content: flex-end;
}

img {
max-width: 100%;
height: auto;
}

/*固定ページ：OEM*/
.four {
width: calc(25% - 20px);
text-align: center;
margin: 0px 10px 0px !important;
}
.four img {
max-width: 120px !important;
margin: 0 auto 24px;
}
.four h3 {
margin-top: 24px !important;
}

.four p {
max-width: 300px;
margin: 8px auto !important;
text-align: left;
}
.mb16 {
margin-bottom:16px !important;
}
.mt0 {
margin-top: 0px !important;
}
.mt8 {
margin-top: 8px !important;
}
.mt16 {
margin-top:16px !important;
}
.mt24 {
margin-top: 24px !important;
}
.mb64 {
margin-bottom: 64px !important;
}
.pb32 {
padding-bottom: 32px !important;
}
.font12 {
font-size: 13px !important;
}

.flow1 {
border-bottom: 1px solid #999;
padding: 0 0 16px 0;
margin-bottom: 24px;
}
.flow2 {
width: 240px;
font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif !important;
font-size: 1.2em !important;
margin: 0 0 !important;
}
.numbe {
font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif !important;
font-size: 3.2em !important;
display: block;
margin: 0 0 16px;
line-height: 1em !important;
width: 100%;
text-align: center;
}
.flow3 {
width: calc(100% - 280px);
}
.p_ceo {
font-size: 16px; !important;
line-height: 2em !important;
}
.bold {
font-weight: bold;
display: block;
}
.ceo_big {
padding: 48px;
background: url(img/bg_ceo.jpg) no-repeat right top;
background-size: cover;
border-radius: 24px;
min-height: 700px;

}
.tex_l {
text-align: left !important;
}
.tex_c {
text-align: center;
}
.w800 {
max-width: 800px;
margin-left: auto !important;
margin-right: auto !important;
}
.font16 {
font-size: 16px !important;
}

/*form*/
.midbox {
  margin: 64px auto -32px !important;
}
.midbox p {
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 2em;
}

.hissu {
font-size: 10px;
padding: 4px 8px;
background: #ffec00 !important;
margin: 0 0 0 8px;
display: inline-block;
line-height: 1.2em !important;
border-radius: 8px;
position: relative;
bottom: 2px;
}
textarea {
resize: none;
height: 160px !important;
}
.pri {
  margin: 16px 0 32px 0;
  width: 100%;
  height: 280px;
  padding: 16px;
  background: #fff;
  border:1px solid #ccc;
  overflow: scroll;
}
.pri p {
  font-size: 14px !important;
  line-height: 1.8em !important;
  margin: 0 !important;
}
.pri h3 {
  margin: 24px 0 !important;
  font-size: 18px !important;
  padding: 0 !important;
}
form h3 {
  font-size: 18px !important;
  text-align: center !important;
  margin: 24px auto 16px !important;
  padding: 0 !important;
}
.mt32 {
  margin-top: 32px;
}
.mb32 {
  margin-bottom: 32px;
  
}

#main_col .post_content2 {
    background: #fff !important;
    padding: 32px;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

/*FOOTER CONTACT*/
#footer {
background: #fff;
}
#footer_button_area .icon {
 background: #fff !important;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}
#footer_button_area {
background: #0f9eda !important;
}
#footer_button_area .title {
color: #fff !important;
}
#footer_button_area .title:hover {
opacity: 0.5;
transition-duration: .3s;
}
#footer_button_area .icon img {
max-width: 32px !important;
}
#footer_button_area .item:nth-child(odd) .content .title {
border: 1px solid #fff;
padding: 16px 16px;
font-size: 18px !important;
text-align: center;
}
#footer_button_area .item:nth-child(odd) .content .title::after {
content: "→";
float: right;
font-size: 18px !important;
}
#footer_button_area .title + .desc {
font-size: 14px;
color: #fff !important;
letter-spacing: 0.1em;
line-height: 2em;
padding-top: 4px;
}

#footer_button_area .item:nth-child(even) .content .title {
font-size: 32px;
letter-spacing: 0.1em;
}

/*FOOTER*/
.footer_ad {
font-size: 13px;
letter-spacing: 0.1em;
line-height: 2em;
margin: 32px auto;
text-align: center;
color: #2e2b2b;
}

#copyright span {
color: rgb(129, 129, 129);
font-size: 11px;
}

/*POST*/
#page_header .headline {

    height: 100px !important;
    line-height: 105px !important;

}

#main_col .post_content {
background: #fff !important;
padding: 32px;
border-left: 1px solid #ddd;
border-right: 1px solid #ddd;
border-bottom: 1px solid #ddd;
}
#next_prev_post {
margin: 50px 0 0;
position: relative;
display: flex;
flex-wrap: wrap;
background: #fff !important;
}
#single_post_header {
  margin-bottom : 0 !important;
  border-bottom: none !important;
}
#single_post_header .title_area {
background: #fff !important;
}

#single_post_header .category_button_list {
  text-align: center;
  background: #fff !important;
}
#single_post_header .category_button_list .category_button {
 padding-left: 16px !important;
 padding-right: 16px !important;
}

#copyright {
background: #fff;
}

.widget_headline span {
color: #222 !important;
}

/*アイコン*/
.icons {
  width: 64px;
  height: 64px;
  overflow: hidden;
  border-radius: 100px;
  background: #777;
}
.icons img {
  width: 64px;
  height: 64px;
  object-fit: cover;
}
.icons2 {
  width: calc(100% - 96px);
}
.icons_title {
  margin: 0 0 24px 0;
  color: #0f9eda !important;
  font-size: 16px;
}
.icons_text {
  font-size: 14px;
}

@media screen and (max-width: 1391px){
#header_button2 {
min-width: 140px !important;
}
}

@media screen and (max-width: 1280px){
#global_menu > ul {
    position: relative;
    text-align: center;
    font-size: 0;
    position: relative;
    right: 32px;
}

}

@media screen and (max-width: 1200px){
/*スライダー*/
.cb_design_header p {
  font-size: 16px;
  letter-spacing: 0.14em;
  line-height: 2.4em;
  padding: 0 16px;
}

.cb_image_slider .image {

    overflow: visible !important;
}
.cb_image_slider .image img {
  overflow: hidden !important;
  border-radius: 16px !important;
}

.cb_image_slider .image p {
  position: relative !important;
  top: 360px !important;
  line-height: 2.4em !important;
}
.buttonss {
display: none;
}
#page_contents {
width: auto !important;
margin: 0 32px;
padding: 110px 0 140px;
}
.sales_big {
padding: 48px;
background: url(img/sales_bg_sp.jpg) no-repeat right top;
background-size: cover;
border-radius: 24px;
min-height: 700px;

}
.ceo_big {
padding: 48px;
background: url(img/bg_ceo.jpg) no-repeat right top;
background-size: cover;
border-radius: 24px;
min-height: 700px;

}
}

@media screen and (max-width: 800px){
.big_content2 {
max-width: 600px;
padding-left: 0px;
}
.case_study_list .item {
display: block;
width: 50% !important;
border: 1px solid #ddd;
border-right: none;
margin: 0 0 -1px 0;
position: relative;
background: #fff;
}
.case_study_list .item:nth-child(even) {
display: block;
width: 50% !important;
border: 1px solid #ddd;
border-right: 1px solid #ddd !important;
margin: 0 0 -1px 0;
position: relative;
background: #fff;
}
.case_study_list .item100 {
width: calc(100% + 1px) !important;
}
#footer_button_area .item:nth-child(odd) .content .title {
border: 1px solid #fff;
padding: 16px 16px;
font-size: 16px !important;
}
#footer_button_area .item:nth-child(even) .content .title {
font-size: 24px;
letter-spacing: 0.1em;
}
#footer_button_area .item:nth-child(odd) .content .title::after {
content: "→";
float: right;
font-size: 16px !important;
}
.img50 {
width: calc(100% - 0px);
margin-top: 32px;
}
.four {
width: calc(50% - 32px);
text-align: center;
margin: 0px 16px 0px !important;
}
.flow2 {
width: 100%;
font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif !important;
font-size: 1.2em !important;
margin: 0 0 24px !important;
}
.numbe {
font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif !important;
font-size: 2.2em !important;
display: block;
margin: 0 0 16px;
line-height: 1em !important;
width: 100%;
text-align: center;
}
.flow3 {
width: 100% !important;
}



/*ニュースティッカー*/
.news_boxx {
  width: calc(100% - 50px);
  margin: 0 auto;
  height: 50px;
  overflow: visible;
}

#news_ticker {
    width: 100% !important;
    height: 100px !important;
    box-shadow: none !important;
    position: relative;
    top: -100px !important;
    margin-bottom: 0px !important;
    z-index: 10;
    background: rgb(255, 255, 255);
    border-radius: 0px !important;
    margin: 0 0 !important;
}
#news_ticker a {
    padding: 0 40px;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center;
    width: 100%;
}
.news_boxxx {
  height: 100px;
  width: calc(100% - 160px) !important;
  padding-left: 20px;
  padding-right: 20px;
  padding: 16px 20px;
}
.news_boxxx .title {
  width: 100%;
  padding: 8px 0;
}
.news_boxxx time {
  width: 100%;
  padding: 8px 0;
  display: none !important;
}
#news_ticker:before {
    display: none !important;
}
#news_ticker:after {
    display: none !important;
}
#news_ticker a {
    padding: 0 0px 0 0 !important;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.news_boxx_eye {
  width: 160px;
  height: 100px;
  overflow: hidden;
}
.news_boxx_eye img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/*スライダー*/

.cb_design_header p {
  font-size: 16px;
  letter-spacing: 0.14em;
  line-height: 2.4em;
  padding: 0 16px;
}

.cb_image_slider .image {

    overflow: visible !important;
}
.cb_image_slider .image img {
  overflow: hidden;
  border-radius: 16px;
}

.cb_image_slider .image p {
  position: relative;
  top: 460px;
  line-height: 2.4em !important;
}


.ceo_big {
padding: 48px;
background: url(img/bg_ceo_sp.jpg) no-repeat right top;
background-size: cover;
border-radius: 24px;
min-height: 700px;
}




}


@media screen and (max-width: 800px){
.cb_image_slider .image {

    overflow: visible !important;
}
.cb_image_slider .image img {
  overflow: hidden !important;
  border-radius: 16px !important;
}

.cb_image_slider .image p {
  position: relative !important;
  top: 304px !important;
  line-height: 2.4em !important;
}
}

