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

.en { font-family: 'Urbanist', sans-serif; }


/*PC*/
@media print, screen and (min-width: 768px) {

.pcBr {
display: inline-block;
}

.spBr {
display: none;
}

.pc {
display: block;
}

.sp {
display: none;
}
#header { width: 100%; position: relative; height: 100vh;   }


.hed_img { width: 100%; position: absolute; top: 0; left: 0; background: url("../images/slider/img01.jpg") center center; background-size: cover; height: 100vh; z-index: -1; }

.h_logo  { width: 220px; padding-top: 15px; padding-left: 15px; }
.h_logo a img { width: 100%; height: auto; }

.h_logo2 { width: 220px; padding-top: 15px; padding-left: 15px; }
.h_logo2 img { width: 100%; height: auto; }


.menu { position: fixed; bottom: 50px; right: 30px; }
.menu li a { color: #fff; font-size: 14px; font-weight: 900; letter-spacing: 0.2em; position: relative; display: block; }
.menu li a:hover { padding-left: 15px; }
.menu li a:hover::before {
content: "";
display: block;
width: 8px;
height: 8px;
border-radius: 8px; 
background: #ed6c00;
position: absolute;
left: 0;
top: 5px;
}
.menu li:nth-child(n+2) { margin-top: 15px; }

header.smaller .menu li a { color: #444; }
.com_tit { text-align: center; margin-bottom: 50px; }
.com_tit span.en { display: block; font-size: 50px; color: #1d50a2; }
.com_tit span.jp { font-size: 16px; font-weight: bold; }

.com_subtit { font-size: 22px; font-weight: bold; position: relative; border-bottom: solid 3px #cce4ff; margin-bottom: 30px; padding-bottom: 10px; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }
.com_subtit::before {
position: absolute;
content: " ";
display: block;
border-bottom: solid 3px #1d50a2;
bottom: -3px;
width: 20%;
}
.com_subtit span { padding: 3px 10px; background: #1d50a2; color: #fff; font-size: 16px; margin-right: 10px;   }


.com_txt { line-height: 1.8em; }
.w1200 { width: 1200px; margin: 0 auto; }




#concept { background: url("../images/index/concept_bg.jpg") center center; padding: 100px 0px; background-size: cover; }
#concept .com_tit { color: #fff; }
#concept .com_tit span.en { color: #fff; }

.concept_box { background: rgba(0,0,0,.3); padding: 50px; }
.concept_tit { color: #fff; font-size: 28px; font-weight: bold; font-family: a-otf-ryumin-pr6n, serif; text-align: center; margin-bottom: 50px;   }

.concept_txt { color: #fff; text-align: center; line-height: 2em; width: 65%; margin: 0 auto; }

#product { margin-bottom: 100px; }
.product_box { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 80px; }
.product_boxL { flex-basis: 50%; max-width: 50%; }
.product_boxR { flex-basis: 50%; max-width: 50%; box-sizing: border-box; padding: 100px; padding-right: 200px; }
#product .com_tit { text-align: left; }

.product_box_img { background: url("../images/index/product_img.jpg") center center; background-size: cover; height: 100%; }
.product_tit { font-size: 24px; font-weight: bold; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; margin-bottom: 50px;  }
.product_txt { line-height: 2em; }



.p_detail { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 30px;  }
.p_detailL { flex-basis: 55%; max-width: 55%; }
.p_detailR { flex-basis: 40%; max-width: 40%; }

.p_detail_img { width: 100%; margin: 0 auto; }
.p_detail_img img { width: 100%; height: auto; }


.point_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 50px;  }
.point_list li { flex-basis: 48%; max-width: 48%; padding: 30px; box-sizing: border-box; border: 1px solid #ededed; }

.point_list li:nth-child(n+3) { margin-top: 30px; }

.point_list_tit { font-size: 18px; font-weight: bold; margin-bottom: 15px; color: #1d50a2; }

.point_list_num { position: relative; color: #ed6c00; font-size: 14px; font-weight: bold; margin-bottom: 15px; }
.point_list_num::before {
content: "";
width: 40px;
height: 3px;
top: -33px;
left: 0;
background: #ed6c00;
position: absolute;
}
.point_list_txt { font-size: 14px; line-height: 1.8em; }


#system { margin-bottom: 100px; padding: 70px 0px;  background: #ededed; }

.sys_img { width: 900px; margin: 50px auto; }
.sys_img img { width: 100%; height: auto; }

.jirei { margin-bottom: 50px; }
.jirei_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px; }
.jirei_list li { flex-basis: 18%; max-width: 18%; }

.jirei_list_img { width: 100%; margin: 0 auto; }
.jirei_list_img img { width: 100%; height: auto; }
.jirei_list_tit { text-align: center; font-size: 16px; font-weight: 500; color: #ed6c00; margin-top: 10px;  }

.work_img { width: 1000px; margin: 0 auto; }
.work_img img { width: 100%; height: auto; }

.work_box { margin-bottom: 50px; }



#interview { margin-bottom: 100px; }
.voice_box { width: 100%; margin: 0 auto 30px; }
.voice_box_img { width: 100%; margin: 0 auto; position: relative; }
.voice_box_img img { width: 100%; height: auto; }
.voice_box_tit { position: absolute; left: 0; bottom: 30px; line-height: 3em;  }
.voice_box_tit span { padding: 3px 7px; background: #fff; color: #1d50a2; font-size: 30px; font-weight: bold; }


.message_box { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; margin-bottom: 50px;  }
.message_boxL { flex-basis: 40%; max-width: 40%; }
.message_boxR { flex-basis: 55%; max-width: 55%; }

.message_box_img { width: 100%; margin: 0 auto; position: relative; }
.message_box_img img { width: 100%; height: auto; }
.message_box_tit { font-size: 26px; font-weight: bold; margin-bottom: 50px; color: #1d50a2; }


.message_box_txt { padding: 30px 0px; border-bottom: 1px solid #ededed; border-top: 1px solid #ededed; }
.message_box_txt span.company { display: block; font-weight: bold; color: #ed6c00; font-size: 16px; margin-bottom: 15px;  }

.message_txt { line-height: 1.8em; font-size: 14px;  }

.mimg_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px; }
.mimg_list li { flex-basis: 48%; max-width: 48%; }
.mimg_list li img { width: 100%; height: auto; }

#flow { padding: 70px 0px; background: rgba(29,80,162,.1); }

.flow_tit { text-align: center; font-size: 24px; font-weight: bold; line-height: 1.8em; margin-bottom: 30px; }
.flow_tit span { font-size: 28px; color: #ed6c00; }


.flow_list { width: 100%; margin: 0 auto; }
.flow_list li { width: 90%; padding: 5%; margin-bottom: 10px; background: #fff; }

.flow_list li:last-child::before { display: none; }
.flow_list_tit { font-size: 24px; margin-bottom: 15px; font-weight: bold; }
.flow_list_tit span.en { color: #1d50a2; font-weight: bold; font-size: 28px; padding-right: 10px; }
.flow_list_tit span.icon { vertical-align: bottom; padding-left: 10px;  }
.flow_check_tit { margin-top: 10px; font-weight: 500; position: relative; padding-left: 25px; margin-bottom: 10px; }
.flow_check_tit::before { content: ""; position: absolute; top: 50%; left: 0; display: inline-block; margin-top: -2px; width: 20px; height: 2px; background: #ad5011; }
.flow_txt { line-height: 1.8em; }
.flow_txt span { color: #ed6c00; font-weight: bold; }
.arrow { width: 100%; position: relative; z-index: 10; }
.arrow::before { position: absolute; right: 0; left: 0; bottom: -80px; width: 41px; height: 41px; margin: auto; z-index: 10; background: #1d50a2; content: "\f078"; color: #fff;font-family: "Font Awesome 5 Free"; font-size: 16px; line-height: 41px; text-align: center; font-weight: bold; display: block; }


.check_box { width: 100%; margin: 0 auto; }
.check_txtbox { width: 60%; float: left; }
.check_img { width: 30%; float: right; }
.check_img img { width: 100%; height: auto; }



#flow { margin-bottom: 100px; }



#contact { margin-bottom: 100px; }

footer { padding: 80px 0px 0; background: #f5f5f5; }
.f_logo { width: 300px; margin: 0 auto 30px; }
.f_logo img { width: 100%; height: auto; }

.f_menu { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; text-align: center; justify-content: center; }
.f_menu li { margin-right: 30px; }
.f_menu li:nth-child(2n+2) { margin-right: 0px; }
.f_menu li a { position: relative; }
.f_menu li a::before {
    display: block;
    font-family: "Font Awesome 5 Free";
    content: "\f0c1";
    font-weight: bold;
    position: absolute;
    left: -20px;
    top: 2px;
}

.copy { padding: 15px; background: #332c28; color: #fff; text-align: center; font-size: 12px; margin-top: 50px; }


/*-------CUSTOM-------*/

#custom { padding: 70px 0px; background: #ededed; }

.custom_img { width: 100%; margin:  0 auto; }
.custom_img img { width: 100%; height: auto; }



/*-------ソリューション事例------*/

#solution { padding: 70px 0px; }

.solution_box { width: 100%; display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 70px; }
.solution_imgbox { flex-basis: 48%; max-width: 48%; }
.solution_txtbox { flex-basis: 48%; max-width: 48%; }

.solution_img { width: 100%; margin: 0 auto; }
.solution_img img { width: 100%; height: auto; }


.solution_tit { position: relative;
padding:0.5em 0.5em 0.5em 1.4em;
border: 1px solid #CCC;
border-radius: 5px; 
font-weight: bold;
margin-bottom: 15px; 
}

.solution_tit::before {
position: absolute;
top: 50%;
left:0.7em;
transform:translateY(-50%);
content: '';
width: 5px;
height:25px;
background-color: #1d50a2;
}


.solution_txt { line-height: 1.8em; margin-bottom: 15px; }

.solution_name { color: #1d50a2; font-weight: bold; margin-bottom: 15px; }

.cap { text-align: center; margin-top: 10px; }

.solution_subtit { font-size: 20px; font-weight: bold; color: #ff0000;}

.solution_work_img { width: 950px; margin: 0 auto; }
.solution_work_img img { width: 100%; height: auto; }
.solution_work_box { margin-bottom: 50px; }
.solution_work_box2 { margin-bottom: 0; }


.solution_work_img2 { width: 1100px; margin: 0 auto; margin-top: 30px; }
.solution_work_img2 img { width: 100%; height: auto; }

#images { padding-bottom: 70px;  }
.images_txt { text-align: center; line-height: 1.8em; margin-bottom: 30px; }
.images_img { width: 100%; margin: 0 auto; }
.images_img img { width: 100%; height: auto; }









}



/*---PCとSP共通---------------------------------------*/
/*----------------------------------------------------*/


/*sp*/
@media only screen and (max-width: 767px) {
.menu { display: none; }

.pcBr {
display: none;
}

.spBr {
display: inline-block;
}

.pc {
display: none;
}

.sp {
display: block;
}


/*--スクロールトップ---------*/
#totop {
bottom: 30px;
display: block;
position: fixed;
right: 20px;
z-index: 2000;
width: 45px;
}

#totop a {
display: block;
width: 50px;
height: 50px;
text-indent: -1000em;
overflow: hidden;
background: url(../images/com/btn_scroll_top.png) 0 0 no-repeat;
background-size: auto auto;
background-size: 100% auto;
}

#totop a img { width: 100%; height: auto; }

#header {
width: 100%;
height: 500px;
}


.mainMenu {
box-sizing: border-box;
width: 100%;
align-items: center;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}

.logo_img {
position: absolute;
top: 10px;
left: 15px;
width: 100px;
}

.logo_img_menu {
width: 200px;
margin-bottom: 50px; 
}
.logo_img_menu img { width: 100%; height: auto; }

.small_hed {
display: none;
}
.logo_img_sp img { width: 100%; height: auto; }
.logo_img_sp a { display: block;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;}


.mainMenuInWrap,
.mainMenuIn {
display: none;
}


/*menu*/
.menuWrap {
width: 50px;
height: 50px;
position: fixed;
right: 0;
top: 0;
z-index: 10000;
background-color: #ed6c00;
cursor : pointer;
}

.menu_sp {
display: block;
position: relative;
width: 20px;
margin: 0 auto;
height: 16px;
margin-top: 16px;
}
.menu__line{
background: #fff;
display: block;
height: 1px;
position: absolute;
transition:transform .3s;
width: 100%;
}
.menu__line--center{
top: 7px;
}
.menu__line--bottom{
bottom: 0;
}
.menu__line--top.active{
top: 7px;
transform: rotate(45deg);
}
.menu__line--center.active{
transform:scaleX(0);
}
.menu__line--bottom.active{
bottom: 7px;
transform: rotate(135deg);
}
/*gnav*/
.gnav {
background: #191918;
display: none;
height: 100%;
position: fixed;
width: 100%;
top: 0;
left: 0;
z-index: 100;
}
.gnav__wrap{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
/*align-items:center;
display: flex;*/
height: 100%;
position: absolute;
width: 100%;
}

.gnav_contents { width: 80%; }


.gnav__menu__item{
margin: 15px 0 15px 0px;
opacity: 0;
text-align: center; 
}
.gnav__menu__item a{
color: #fff;
font-size: 14px;
font-weight: bold;
text-align: center; 
text-decoration: none;
transition: .5s;
}
.gnav__menu__item a span.en { display: block; text-align: center; letter-spacing: 0.02em; }

.gnav__menu li:nth-child(n+2) { margin-top: 20px; }



.gnav__menu {
width: 100%;
margin: 0 auto 30px;
}
.gnav_subbox {width: 100%; margin: 0 auto; }
.gnav__menu a { color: #fff; font-size: 16px; display: block; position: relative; }
.gnav__menu a span.link_icon { position: absolute; left: 120px; top: 0;  }
.gnav__menu span.jp { display: block; color: #fff; font-size: 16px; font-weight: bold; display: block; }


.gnav_logo { width: 180px; margin: 0 auto 30px; }
.gnav_logo img { width: 100%; height: auto; }

.hed_img { width: 100%; position: absolute; top: 0; left: 0; background: url("../images/slider/img01_sp.jpg") bottom right; background-size: cover; height: 500px; z-index: -1; }

.h_logo  { width: 100px; padding-top: 10px; padding-left: 10px; }
.h_logo a img { width: 100%; height: auto; }

.h_logo2 { width: 120px; padding-top: 15px; margin: 0 auto 15px; }
.h_logo2 img { width: 100%; height: auto; }


.menu { position: fixed; bottom: 50px; right: 30px; }
.menu li a { color: #fff; font-size: 14px; font-weight: 900; letter-spacing: 0.2em; position: relative; display: block; }
.menu li a:hover { padding-left: 15px; }
.menu li a:hover::before {
content: "";
display: block;
width: 8px;
height: 8px;
border-radius: 8px; 
background: #ed6c00;
position: absolute;
left: 0;
top: 5px;
}
.menu li:nth-child(n+2) { margin-top: 15px; }

.com_tit { text-align: center; margin-bottom: 30px; }
.com_tit span.en { display: block; font-size: 30px; color: #1d50a2; }
.com_tit span.jp { font-size: 16px; font-weight: bold; }

.com_subtit { font-size: 18px; font-weight: bold; position: relative; border-bottom: solid 3px #cce4ff; margin-bottom: 30px; padding-bottom: 10px; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }
.com_subtit::before {
position: absolute;
content: " ";
display: block;
border-bottom: solid 3px #1d50a2;
bottom: -3px;
width: 20%;
}

.com_subtit span { padding: 3px 10px; background: #1d50a2; color: #fff; font-size: 14px; margin-right: 10px;   }

.com_txt { line-height: 1.8em; }
.w1200 { width: 98%; margin: 0 auto; }




#concept { background: url("../images/index/concept_bg.jpg") center center; padding: 50px 0px; background-size: cover; margin-bottom: 80px; }
#concept .com_tit { color: #fff; }
#concept .com_tit span.en { color: #fff; }

.concept_box { background: rgba(0,0,0,.3); padding: 15px; }
.concept_tit { color: #fff; font-size: 18px; font-weight: bold; font-family: a-otf-ryumin-pr6n, serif; text-align: center; margin-bottom: 15px;   }

.concept_txt { color: #fff; text-align: center; line-height: 2em; width: 100%; margin: 0 auto; }

#product { margin-bottom: 80px; }
.product_box { width: 100%; margin: 0 auto;  margin-bottom: 50px; }
.product_boxL { width: 100%; margin: 0 auto; }
.product_boxR { box-sizing: border-box; width: 100%; margin: 0 auto; }
#product .com_tit { text-align: left; }

.product_box_img { background: url("../images/index/product_img.jpg") center center; background-size: cover; height: 300px; margin-bottom: 15px; }
.product_tit { font-size: 18px; font-weight: bold; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; margin-bottom: 20px; }
.product_txt { line-height: 2em; }



.p_detail { width: 100%; margin: 0 auto;  margin-bottom: 30px;  }
.p_detailL { width: 100%; margin: 0 auto;}
.p_detailR {width: 100%; margin: 0 auto; }

.p_detail_img { width: 100%; margin: 0 auto; }
.p_detail_img img { width: 100%; height: auto; }


.point_list { width: 100%; margin: 0 auto;  margin-bottom: 50px;  }
.point_list li { width: 100%; margin: 0 auto; padding: 15px; box-sizing: border-box; border: 1px solid #ededed; }

.point_list li:nth-child(n+2) { margin-top: 30px; }

.point_list_tit { font-size: 16px; font-weight: bold; margin-bottom: 15px; color: #1d50a2; }

.point_list_num { position: relative; color: #ed6c00; font-size: 14px; font-weight: bold; margin-bottom: 15px; }
.point_list_num::before {
content: "";
width: 40px;
height: 3px;
top: -18px;
left: 0;
background: #ed6c00;
position: absolute;
}
.point_list_txt { font-size: 14px; line-height: 1.8em; }


#system { margin-bottom: 80px; padding: 50px 0px;  background: #ededed; }

.sys_img { width: 100%; margin: 50px auto; }
.sys_img img { width: 100%; height: auto; }

.jirei { margin-bottom: 50px; }
.jirei_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px; }
.jirei_list li { flex-basis: 48%; max-width: 48%; }
.jirei_list li:nth-child(n+3) { margin-top: 30px; }
.jirei_list_img { width: 100%; margin: 0 auto; }
.jirei_list_img img { width: 100%; height: auto; }
.jirei_list_tit { text-align: center; font-size: 14px; font-weight: 500; color: #ed6c00; margin-top: 5px; }

.work_img { width: 100%; margin: 0 auto; }
.work_img img { width: 100%; height: auto; }

.work_box { margin-bottom: 50px; }



#interview { margin-bottom: 80px; }
.voice_box { width: 100%; margin: 0 auto 30px; }
.voice_box_img { width: 100%; margin: 0 auto; position: relative; }
.voice_box_img img { width: 100%; height: auto; }
.voice_box_tit { margin-top: -30px; }
.voice_box_tit span { padding: 3px 7px; background: #fff; color: #1d50a2; font-size: 20px; font-weight: bold; }


.message_box { width: 100%; margin: 0 auto;  margin-bottom: 30px;  }
.message_boxL { width: 100%; margin: 0 auto; }
.message_boxR { width: 100%; margin: 0 auto 15px; }

.message_box_img { width: 100%; margin: 0 auto; position: relative; }
.message_box_img img { width: 100%; height: auto; }
.message_box_tit { font-size: 16px; font-weight: bold; margin-bottom: 15px; color: #1d50a2; }


.message_box_txt { padding: 10px 0px; border-bottom: 1px solid #ededed; border-top: 1px solid #ededed; }
.message_box_txt span.company { display: block; font-weight: bold; color: #ed6c00; font-size: 16px; margin-bottom: 15px;  }

.message_txt { line-height: 1.8em; font-size: 14px;  }

.mimg_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px; }
.mimg_list li { flex-basis: 48%; max-width: 48%; }
.mimg_list li img { width: 100%; height: auto; }

#flow { padding: 50px 0px; background: rgba(29,80,162,.1); margin-bottom: 80px; }

.flow_tit { text-align: center; font-size: 18px; font-weight: 500; line-height: 1.8em; margin-bottom: 30px; }
.flow_tit span { font-size: 20px; color: #ed6c00; }


.flow_list { width: 100%; margin: 0 auto; }
.flow_list li { width: 90%; padding: 5%; margin-bottom: 20px; background: #fff; }

.flow_list li:last-child::before { display: none; }
.flow_list_tit { font-size: 18px; margin-bottom: 15px; font-weight: bold; }
.flow_list_tit span.en { color: #1d50a2; font-weight: bold; font-size: 28px; padding-right: 10px; }
.flow_list_tit span.icon { vertical-align: bottom; padding-left: 10px;  }
.flow_check_tit { margin-top: 10px; font-weight: 500; position: relative; padding-left: 25px; margin-bottom: 10px; }
.flow_check_tit::before { content: ""; position: absolute; top: 50%; left: 0; display: inline-block; margin-top: -2px; width: 20px; height: 2px; background: #ad5011; }
.flow_txt { line-height: 1.8em; }
.flow_txt span { color: #ed6c00; font-weight: bold; }
.arrow { width: 100%; position: relative; z-index: 10; }
.arrow::before { position: absolute; right: 0; left: 0; bottom: -45px; width: 41px; height: 41px; margin: auto; z-index: 10; background: #1d50a2; content: "\f078"; color: #fff;font-family: "Font Awesome 5 Free"; font-size: 16px; line-height: 41px; text-align: center; font-weight: bold; display: block; }


.check_box { width: 100%; margin: 0 auto; }
.check_txtbox { width: 100%; margin: 0 auto 15px;  }
.check_img { width: 100%; margin: 0 auto;  }
.check_img img { width: 100%; height: auto; }


.com_table { margin-bottom: 50px; }

#contact { margin-bottom: 100px; }

footer { padding: 30px 0px 0; background: #f5f5f5; }
.f_logo { width: 150px; margin: 0 auto 15px; }
.f_logo img { width: 100%; height: auto; }

.f_menu { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; text-align: center; justify-content: center; }
.f_menu li { margin-right: 30px; }
.f_menu li:nth-child(2n+2) { margin-right: 0px; }
.f_menu li a { position: relative; font-size: 12px;  }
.f_menu li a::before {
    display: block;
    font-family: "Font Awesome 5 Free";
    content: "\f0c1";
    font-weight: bold;
    position: absolute;
    left: -20px;
    top: 2px;
}

.copy { padding: 5px; background: #332c28; color: #fff; text-align: center; font-size: 10px; margin-top: 30px; }





/*-------CUSTOM-------*/

#custom { padding: 70px 0px; background: #ededed; }

.custom_img { width: 100%; margin:  0 auto; }
.custom_img img { width: 100%; height: auto; }



/*-------ソリューション事例------*/

#solution { padding: 70px 0px; }

.solution_box { width: 100%;  margin: 0 auto 50px; }
.solution_imgbox { width: 100%; margin: 0 auto 30px; }
.solution_txtbox { width: 100%; margin: 0 auto; }

.solution_img { width: 100%; margin: 0 auto; }
.solution_img img { width: 100%; height: auto; }


.solution_tit { position: relative;
padding:0.5em 0.5em 0.5em 1.4em;
border: 1px solid #CCC;
border-radius: 5px; 
font-weight: bold;
margin-bottom: 15px; 
}

.solution_tit::before {
position: absolute;
top: 50%;
left:0.7em;
transform:translateY(-50%);
content: '';
width: 5px;
height:25px;
background-color: #1d50a2;
}


.solution_txt { line-height: 1.8em; margin-bottom: 15px; }

.solution_name { color: #1d50a2; font-weight: bold; margin-bottom: 15px; }

.cap { text-align: center; margin-top: 10px; }

.solution_subtit { font-size: 20px; font-weight: bold; color: #ff0000;}

.solution_work_img { width: 100%; margin: 0 auto; }
.solution_work_img img { width: 100%; height: auto; }
.solution_work_box { margin-bottom: 50px; }
.solution_work_box2 { margin-bottom: 0; }




#images { padding-bottom: 70px;  }
.images_txt { text-align: center; line-height: 1.8em; margin-bottom: 30px; }
.images_img { width: 100%; margin: 0 auto; }
.images_img img { width: 100%; height: auto; }



.solution_work_img2 {
width: 100%;
margin: 0 auto;
}

.solution_work_img2 img{
width: 100%;
height: auto;
}




}