
@charset "UTF-8";
/* CSS Document */
.box{padding-bottom:80px;}

#access,#corporate,#management,#guidelines,#chart
{
    padding-top:150px;
    margin-top:-150px;
    height:0;
    width:0;
}
#website_operations,#website_cloud,#website_consulting,
#si_ordermade,#si_renovation,#si_bpo,
#engineeringsupport_resident,#engineeringsupport_lab,#engineeringsupport_advisor
{
    padding-top:100px;
    margin-top:-100px;
    height:0;
    width:0;
}

.main_wap{
    display:table;
    width:100%;
        max-width:1920px;
    margin:80px auto 0;
    height:265px;
    padding:0;
    background:#f4f4f4;
}
.main_wap.company{background:url(/image/company/main.jpg) center right no-repeat;}
.main_wap.contact{background:url(/image/contact/main.jpg) center right no-repeat;}
.main_wap.message{background:url(/image/message/main.jpg) center right no-repeat;}
.main_wap.service{background:url(/image/service/main.jpg) bottom right no-repeat;}
.main_wap.whatsnew{background:url(/image/whatsnew/main.jpg) center right no-repeat;}
.main_wap.pr_room{background:url(/image/pr_room/main.jpg) center right no-repeat;}
.main_wap.privacy,
.main_wap.privacy_eu,
.main_wap.mynumber,
.main_wap.sitepolicy,
.main_wap.snspolicy{background:url(/image/poricy/main.png) center right no-repeat;}
.main_wap.partner{background:url(/image/partner/main.jpg) center right no-repeat;}
.main_wap.sitemap{background:url(/image/sitemap/main.jpg) center right no-repeat;}
.main_wap.error{height:0;}

.main_wap h1{
    display:table-cell;
    vertical-align: middle;
    color:#001e55;
    font-size:32px;
    font-weight:400;
    letter-spacing: 2px;
    margin:0 auto;
    text-align:center;
}
.main_wap h1 span.jp{
    display:block;
    color:#3b5df9;
    font-weight:500;
    margin:10px auto 0;
    font-size:14px;
    letter-spacing: 2px;
}

.contents{
    width:96%;
    max-width:1080px;
    margin:0 auto;
    padding:0;
}

.sec.contact .contents{
    max-width:780px;
    margin:0 auto 80px;
}

/*パンくず*/
ul.pan_li{
    width:100%;
    margin:5px auto 80px;
    padding:0;
}
ul.pan_li li{
    position:relative;
    display:table-cell;
    padding-right:20px;
    width:auto;
    font-size:12px;
    color:#001e55;
}
ul.pan_li li::before{
    position:absolute;
    display:inline-block;
    content:">";
    right:5px;
    color:#b2bbcc;
}
ul.pan_li li:last-child::before{display:none;}
ul.pan_li li a{
    color:#b2bbcc;
    text-decoration:none;
}
ul.pan_li li a:hover{text-decoration:underline;}

/*代表メッセージ*/
.sec.message{
    /* 【非表示対応】 background:url("/image/message/bk.jpg") center bottom no-repeat; */
}
.sec.message h2{
    display:table;
    color:#001e55;
    font-size:32px;
    font-weight:400;
    letter-spacing: 2pt;
    margin:0 auto;
    padding:0 0 80px;
}
.sec.message p.message_t{
    max-width:768px;
    font-size:14px;
    letter-spacing: 0.4pt;
    color:#001e55;
    margin:0 auto 40px;
    padding:0;
}
.sec.message .logo_box{
    display:table;
    margin:0 auto;
    padding:0;
    text-align:center;
}
.sec.message .logo_box img{margin:20px auto;}
.sec.message .logo_box p{
    color:#001e55;
    font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-size:16px;
    line-height:1.6em;
    margin:0;
    padding:0;
}
.sec.message .logo_box p span.min{
    font-family: 'Noto Sans Japanese', serif;
    font-size:12px;
    line-height:1.8em;
    padding-right:20px;
}
/* 広報コラム_詳細 */
.contents .column{
    text-align:center;
    display:block;
}
.contents .column h1,
.contents .column ul,
.contents .column .columnt,
.contents .column .oday,
.contents .column img{
    max-width:710px;
    text-align:left;
    margin:10px auto 10px;
}
.contents .column h1{
    color:#001e55;
    font-size: x-large;
    font-weight:normal;
    line-height:normal;
}
.contents .column ul{
    padding:0;
    display:flex;
}

.cdtag_p::before{/* 会社紹介 */
    content: '';
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 100%;
    background: #3b5df9;
    position: relative;
    top: -3px;
    left: -4px;
    margin:0 0px 0 10px;
}

.cdtag_o::before{/* 社外部活動 */
    content: '';
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 100%;
    background: #ff5c74;
    position: relative;
    top: -3px;
    left: -4px;
    margin:0 0px 0 10px;
}

.cdtag_i::before{/* 社内イベント */
    content: '';
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 100%;
    background: #ffbd46;
    position: relative;
    top: -3px;
    left: -4px;
    margin:0 0px 0 10px;
}

.bnr .cl_bnr{
    display:flex;
  justify-content:center;
  align-items:center;
    margin:auto;
    padding:0 0 75px 0;
    border-top:1px solid #ccc;
}
.bnr .cl_bnr img{
    margin:10px auto 10px;
}

/* 広報コラム */
ul.ctab {
    display:table;
    border-spacing: 3px 0 ;
    /* width:98%; */
    border-collapse: separate;
    padding:0 10% 0 0;
    overflow:hidden;
    margin:0 auto 40px;
    height:52px;
}
ul.ctab li {
    display:table-cell;
    width:10%;
}
ul.ctab li a{
    display:block;
    padding:2px 0;
    transition:0.3s;
    -webkit-border-radius: 8px 8px 0 0 / 8px 8px 0 0;
    -moz-border-radius: 8px 8px 0 0 / 8px 8px 0 0;
    border-radius: 8px;
    background:#f0f0f0;
    text-decoration:none;
    text-align:-webkit-auto;
        font-size:75%;
        color:#001b95;
}
ul.ctab li a ul{
        padding:0 0 0 10px;
}

ul.ctab li:last-child{margin-right:0;}
ul.ctab li:hover a {color: #ccc;}
ul.ctab li a ul div{display: inline;}


ul.ctab li:first-child p{
    color:#001e55;
    }
ul.ctab li:nth-child(2) a{color:#001e55;}
ul.ctab li:nth-child(3) a{color:#001e55;}
ul.ctab li:nth-child(4) a{color:#001e55;}
ul.ctab li:last-child a{color:#001e55;}

ul.ctab li.active a{
    color:#fff;
    padding:5px 0;
}
ul.ctab li:first-child.active a{background:none;}
ul.ctab li:nth-child(2).active a{background:#001e55;}
ul.ctab li:nth-child(3).active a{background:#3b5df9;}
ul.ctab li:nth-child(4).active a{background:#ff5c74;}
ul.ctab li:last-child.active a{background:#ffbd46;}

.ctag_all::before{
    content: '';
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 100%;
    background: #001e55;
    position: relative;
    top: -2px;
    margin:0 5px 0 10px;
}

.ctag_pro::before{
    content: '';
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 100%;
    background: #3b5df9;
    position: relative;
    top: -2px;
    margin:0 5px 0 0;
}

.ctag_out::before{
    content: '';
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 100%;
    background: #ff5c74;
    position: relative;
    top: -2px;
    margin:0 5px 0 0;
}

.ctag_ins::before{
    content: '';
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 100%;
    background: #ffbd46;
    position: relative;
    top: -2px;
    margin:0 5px 0 0;
}

ul.ctab li.active ul.ctag_all::before,
ul.ctab li.active ul.ctag_pro::before,
ul.ctab li.active ul.ctag_out::before,
ul.ctab li.active ul.ctag_ins::before
{
    background: #fff;
}

.ctab_box {
    width:100%;
    margin:0 auto 80px;
    padding:0;
}

ul.column_li{
    width:100%;
    margin:0 auto;
    padding:0;
    overflow:hidden;
}
ul.column_li li{
    float:left;
    width:30%;
    margin:0 17px 30px 0;
}
ul.column_li li:nth-child(3n-1){margin-right:17;}

ul.column_li li h2{
    line-height:1em;
    margin:0 auto 20px;
    padding:0;
    border-bottom:4px solid;
}
ul.column_li li.si h2{border-color:#2cafcc;}
ul.column_li li.web h2{border-color:#ff5162;}
ul.column_li li.engineeringsupport h2{border-color:#8068b7;}

ul.column_li li h2 span{
    position:relative;
    font-size:12px;
    letter-spacing: 0.4pt;
    color:#fff;
    margin:0 auto;
    padding:5px 12px;
}
ul.column_li li.si h2 span{background:#2cafcc;}
ul.column_li li.web h2 span{background:#ff5162;}
ul.column_li li.engineeringsupport h2 span{background:#8068b7;}

ul.column_li li h2 span:after{
    right:-15px;
    top:-15px;
    position: absolute;
    content: '';
    border: none;
    border-right: solid 15px transparent;
    border-left: solid 15px transparent;
    border-top: solid 15px transparent;
    z-index: 1;
}
ul.column_li li.si h2 span:after{border-bottom:solid 27px #2cafcc;}
ul.column_li li.web h2 span:after{border-bottom:solid 27px #ff5162;}
ul.column_li li.engineeringsupport h2 span:after{border-bottom:solid 27px#8068b7;}

ul.column_li li ul{
    display:inline;
    width:100%;
    margin:0 auto 0;
    padding:0;
}
ul.column_li li ul p.open{
    float:right;
    color:#969696;
}
ul.column_li li ul li{
    display:table-cell;
    width:65%;
    margin:0;
    padding:0;
}
ul.column_li li ul li:last-child{
    width:100%;
}
ul.column_li li ul li img{width:100%;}

ul.column_li li p{
    font-size:14px;
    letter-spacing: 0.4pt;
    color:#001e55;
    margin:0 auto 0px;
    padding:0;
        text-align: right;
}
ul.column_li li p.text{
    height: 50px;
    margin:0 auto 20px;
    text-align: left;
}
ul.column_li li a{
    font-size:14px;
    letter-spacing: 0.4pt;
    color:#001e55;
    margin:0 auto 0 230px;
    padding:0;
    left: 200px;
    text-decoration:none;
}
ul.column_li li a.column_btn::after{
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 1px #0000ff;
  border-right: solid 1px #0000ff;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  margin: 12px 0 0 6px;
}

/*事業内容*/
ul.business_li{
    width:100%;
    margin:0 auto 20px;
    padding:0 0 40px;
}
ul.business_li li{
    float:left;
    width:32%;
    margin:0 2% 0 0;
}
ul.business_li li:last-child{margin-right:0;}

ul.business_li li div img{
    display:block;
    max-width:100%;
    margin:0 auto;
}
ul.business_li li div span.big{
    display:block;
    font-size:20px;
    color:#001e55;
    text-align:center;
    margin:20px auto;
}
ul.business_li li p{
    font-size:14px;
    line-height:1.6em;
    letter-spacing: 0.4pt;
    color:#001e55;
    margin:0 auto 25px;
    padding:0;
}

ul.business_li li a.more_btn{
    position:relative;
    display:block;
    width:100%;
    max-width:420px;
    padding:12px 0;
    margin:10px auto 0;
    color:#fff;
    font-weight:400;
    text-decoration:none;
    text-align:center;
    background:#3b5df9;
    box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    -moz-box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    transition:0.2s;
}
ul.business_li li a.more_btn.nvy{background:#001e55;}
ul.business_li li a.more_btn:hover{
    opacity:0.7;
    -ms-opacity:"alpha(opacity=70)";
}
ul.business_li li a.more_btn::before{
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -4px;
}

/*会社概要*/
dl.com_dl{
    display:table;
    width:100%;
    margin:0 auto;
    padding:0;
}
dl.com_dl dd{
    display:table-cell;
    width:48%;
    margin:0;
    padding:0;
}
dl.com_dl dd:last-child{padding-left:4%;}
dl.com_dl dd img{max-width:100%;}
.sec.company h2{
    color:#001e55;
    font-size:20px;
    font-weight:500;
    letter-spacing: 1.2pt;
    padding:0;
    margin:0 auto 20px;
}
dl.com_dl dd table{
    width:100%;
    margin:0 auto;
    padding:0;
    border:1px solid #ccc;
    border-collapse: collapse;
}
dl.com_dl dd table tr{border-bottom:1px solid #ccc;}
dl.com_dl dd table tr th{
    color:#3b5df9;
    font-size:14px;
    font-weight:400;
    background:#f0f0f0;
    vertical-align: middle;
    padding:8px 12px;
    width:20%;
}
dl.com_dl dd table tr td{
    width:80%;
    font-size:14px;
    padding:8px 12px;
    color:#001e55;
}
dl.com_dl dd table tr td a{
    display:inline-block;
    padding-right:20px;
    color:#001e55;
}
dl.com_dl dd table tr td a:hover{text-decoration:none;}
dl.com_dl dd table tr td a.map_icon{background:url(/image/company/map_icon.png) right center/12px no-repeat;}
dl.com_dl dd table tr td a.blank_icon{background:url(/image/company/blank_icon.png) right center/12px no-repeat;}

dl.com_dl dd table tr td ul,
dl.com_dl dd table tr td ul li{
    width:100%;
    margin:0 auto;
    padding:0;
}
dl.com_dl dd table tr td ul li span{
    display:inline-block;
    width:35%;
    vertical-align: top;
}

.google_map{
    position: relative;
    padding-bottom: 30.25%;
    height: 0;
    overflow: hidden;
}
.google_map iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
a.blank_icon_pc{
    display:inline-block;
    color:#001e55;
    text-decoration:none;
    padding-right:20px;
    background:url(/image/company/blank_icon.png) right center/12px no-repeat;
}
a.blank_icon_pc:hover{text-decoration:underline;}
a.blank_icon_sp{display:none;}
p.min{
    font-size:12px;
    line-height:1.6em;
}
p.navy{color:#001e55;}
p.right{text-align:right;}

.sec.company .box h3{
    display:table;
    font-size:16px;
    font-weight:500;
    color:#001e55;
    margin:0 auto 10px;
    padding:0;
}
.gry_bk{
    padding:4em 0;
    background:#f0f0f0;
    margin:0 auto 80px;
}
.gry_bk .catch{
    display:table;
    font-size:32px;
    letter-spacing: 1.8pt;
    color:#001e55;
    margin:0 auto;
    padding:0;
}
.border_bk{
    padding:2.5em 0;
    border:2px solid #f0f0f0;
    margin:0 auto 80px;
}
.border_bk span{
    display:table;
    font-size:16px;
    font-weight:500;
    line-height:1.8em;
    color:#001e55;
    text-align:center;
    letter-spacing: 1.8pt;
    margin:0 auto;
    padding:0;
}

ul.act_li{
    width:100%;
    margin:0 auto 40px;
    padding:0;
    overflow:hidden;
}
ul.act_li li{
    float:left;
    width:23.5%;
    font-size:14px;
    line-height:1.6em;
    color:#001e55;
    margin:0 2% 0 0;
    padding:2%;
    border:2px solid #f0f0f0;
    box-sizing:border-box;
}
ul.act_li li:last-child{margin-right:0;}

ul.act_li li span.number{
    display:table;
    color:#001e55;
    font-size:18px;
    font-weight:500;
    letter-spacing: 1.2pt;
    margin:0 auto 20px;
    padding:0;
}

/*Webサイト企画・構築*/
.flow h2{
    color:#001e55;
    font-size:28px;
    line-height:1.4em;
    letter-spacing: 1.6pt;
    font-weight:400;
    margin:0 auto;
    padding:80px 0 60px;
    text-align:center;
}
.read_box{
    width:100%;
    margin:0 auto 80px;
    padding:0 0 80px;
    border-bottom:2px solid #f0f0f0;
    overflow:hidden;
}
.read_box img{
    float:left;
    width:34%;
    margin:0 4% 0 0;
}
.read_box .read_right{
    float:right;
    width:62%;
    margin:0;
    padding:0;
}
.read_box .read_right p{
    width:100%;
    margin:40px auto 60px;
}
.read_box .read_right ul{
    width:100%;
    margin:0 auto;
    padding:0;
}
.read_box .read_right ul li{
    position:relative;
    list-style:none;
    margin:0 auto 10px;
    padding:0;
}
.read_box .read_right ul li a:before{
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 3%;
    width: 12px;
    height: 6px;
    margin-top:-6px;
    border-left: 3px solid #3b5df9;
    border-bottom: 3px solid #3b5df9;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.read_box .read_right ul li:last-child{margin-bottom:0;}

.read_box .read_right ul li a{
    position:relative;
    display:block;
    width:90%;
    color:#001e55;
    text-decoration:none;
    padding:16px 2% 16px 8%;
    background:#f0f0f0;
    transition:0.2s;
}
/* .read_box .read_right ul li a:after{
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 3%;
    width: 6px;
    height: 6px;
    margin-top:-3px;
    border-right: 1px solid #001e55;
    border-bottom: 1px solid #001e55;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
} */
/* .read_box .read_right ul li a:hover{background:#ccc;} */

.left_box,.right_box{
    width:86%;
    margin:0 auto 60px 0;
    padding:0;
    overflow:hidden;
}
.right_box{margin:0 0 40px auto;}

.left_box img,
.right_box img{
    display:block;
    max-width:330px;
}

.left_box img{
    float:left;
    margin-right:5%;
}
.right_box img{
    float:right;
    margin-left:5%;
}

.left_box h2,.right_box h2{
    padding:0;
    margin:30px 0;
    text-align:left;
}
.left_box p,.right_box p{
    font-size:14px;
    line-height:1.6em;
    color:#001e55;
    letter-spacing: 3.2pt;
}

ul.flow_li{
    width:100%;
    margin:0 auto;
    padding:20px 0 80px;
    overflow:hidden;
}
ul.flow_li li{
    position:relative;
    list-style:none;
    float:left;
    width:31%;
    background:#fff;
    margin:0 3.5% 0 0;
    padding:0 0 20px;
}
ul.flow_li li:last-child{margin-right:0;}

ul.flow_li > li:before{
    position:absolute;
    display:inline-block;
    content:"";
    right: -48px;
    top:50%;
    margin-top:-9px;
    box-sizing: border-box;
    width: 18px;
    height: 18px;
    border: 18px solid transparent;
    border-left: 18px solid #fc0;
}
ul.flow_li li span.step{
    display: inline-block;
    position: absolute;
    top: -15px;
    left:25%;
    right:25%;
    margin: 0;
    padding:0;
    z-index: 2;
    width: 50%;
    text-align: center;
    color: white;
    color:#fff;
    font-size: 12px;
    border-radius: 2px 0 0 0;
    border-top: 30px solid #3b5df9;
    border-left: 16px solid transparent;
    border-right: 16px solid transparent;
    height: 0;
    box-sizing:border-box;
}
ul.flow_li li span.step span{
    position:relative;
    display:block;
    margin:-30px auto 0;
    font-weight:600;
}
ul.flow_li li span.step:before,
ul.flow_li li span.step:after{
    position: absolute;
    content: '';
    border: none;
    border-bottom: solid 15px #2c49b0;
    border-right: solid 8px transparent;
    z-index: 1;
    border-left: solid 8px transparent;
}
ul.flow_li li span.step:before{
    top: -30px;
    right: -24px;
}
ul.flow_li li span.step:after{
    top: -30px;
    left: -24px;
}
ul.flow_li li h3{
    display:table;
    font-size:28px;
    font-weight:400;
    margin:0 auto;
    padding:40px 0 20px;
    color:#001e55;
}
ul.flow_li li p{
    width:90%;
    height:5.6em;
    margin:0 auto 20px;
    padding:0;
    font-size:14px;
    line-height:1.4em;
}
ul.flow_li li ol{
    width:90%;
    margin:0 auto -10px;
    padding:0;
    overflow:hidden;
}
ul.flow_li li ol li{
    float:left;
    width:48%;
    margin:0 4% 10px 0;
    text-align:center;
    color:#001e55;
    font-size:12px;
    font-weight:600;
    line-height:1.2em;
    letter-spacing: 0.4pt;
    background:#e1e1d7;
    border-radius:18px;
    padding:6px 0;
}
ul.flow_li li ol li:nth-child(2n){margin-right:0;}

/*エンジニアリングサポート*/
ul.logos_li{
    display:table;
    width:92%;
    margin:0 auto;
    padding:4%;
    background:#fff;
}
ul.logos_li li{
    display:table-cell;
    width:16%;
    padding:0 2%;
    margin:0 auto;
    text-align:center;
}
ul.logos_li li img{width:100%;}

ul.logos_li li p.top_border{
    color:#001e55;
    line-height:1.4em;
    letter-spacing: 0.4pt;
    padding:15px 0 0;
    margin:30px auto 0;
    border-top:1px solid #ccc;
}

/*業務システム開発*/
ul.case_li{
    width:100%;
    margin:0 auto;
    padding:0;
    overflow:hidden;
}
ul.case_li > li{
    float:left;
    width:32%;
    margin:0 2% 0 0;
    padding-bottom:30px;
    background:#fff;
}

ul.case_li li:last-child{margin-right:0;}

ul.case_li span.case{
    color:#3b5df9;
    font-weight:600;
    display:table;
    margin:0 auto;
    padding:30px 0;

}
ul.case_li span.case span{
    color:#fff;
    text-align:center;
    background:#3b5df9;
    border-radius:24px;
    padding:0 7px;
    margin:0 0 0 8px;
}
ul.case_li ol{
    width:86%;
    margin:0 auto;
    padding:0;
    height:7em;
}
ul.case_li ol li{
    position:relative;
    color:#001e55;
    font-size:14px;
    line-height:1.6em;
    margin-bottom:10px;
    padding:0 0 0 30px;
    box-sizing:border-box;
}

ul.case_li ol li:before{
    display: block;
    content: '';
    position: absolute;
    top: 0.6em;
    left: 0.5em;
    width: 8px;
    height: 4px;
    border-left: 3px solid #3b5df9;
    border-bottom: 3px solid #3b5df9;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    z-index:2;
}
ul.case_li ol li:after{
    display: block;
    content: '';
    width:1.4em;
    height:1.4em;
    position: absolute;
    background:#f0f0f0;
    border-radius:24px;
    left:0.25em;
    top:0.2em;
}

ul.case_li span.solution{
    position:relative;
    display:table;
    margin:0 auto 20px;
    padding:0 3em;
    font-size:14px;
    border-radius:16px;
    background:#fc0;
    color:#001e55;
    font-weight:600;
    text-align:center;
}
ul.case_li span.solution:before{
    position:absolute;
    display:inline-block;
    content:"";
    left:50%;
    bottom:-18px;
    margin-left:-9px;
    box-sizing: border-box;
    width: 9px;
    height: 9px;
    border: 9px solid transparent;
    border-top: 9px solid #fc0;
}
ul.case_li p{
    width:86%;
    color:#001e55;
    font-size:14px;
    line-height:1.6em;
    margin:0 auto;
    font-weight:500;
}

/*実績*/
ul.tab {
    display:table;
    border-spacing: 3px 0 ;
    width:98%;
    border-collapse: separate;
    padding:0 1%;
    overflow:hidden;
    border-bottom:3px solid #f0f0f0;
    margin:0 auto 40px;
    height:52px;
}
ul.tab li {
    display:table-cell;
    width:24%;
    vertical-align: bottom;
}
ul.tab li a{
    display:block;
    width:100%;
    padding:8px 0;
    transition:0.3s;
    -webkit-border-radius: 8px 8px 0 0 / 8px 8px 0 0;
    -moz-border-radius: 8px 8px 0 0 / 8px 8px 0 0;
    border-radius: 8px 8px 0 0 / 8px 8px 0 0;
    background:#f0f0f0;
    text-decoration:none;
    text-align:center;
}

ul.tab li:last-child{margin-right:0;}
ul.tab li:hover a {color: #ccc;}

ul.tab li:first-child a{
    color:#3b5df9;
    background:#d2d2d2;
    }
ul.tab li:nth-child(2) a{color:#ff5162;}
ul.tab li:nth-child(3) a{color:#2cafcc;}
ul.tab li:last-child a{color:#8068b7;}

ul.tab li.active a{
    color:#fff;
    padding:10px 0;
}
ul.tab li:first-child.active a{background:#3b5df9;}
ul.tab li:nth-child(2).active a{background:#ff5162;}
ul.tab li:nth-child(3).active a{background:#2cafcc;}
ul.tab li:last-child.active a{background:#8068b7;}

.tab_box {
    width:100%;
    margin:0 auto 80px;
    padding:0;
}

ul.archive_li{
    width:100%;
    margin:0 auto;
    padding:0;
    overflow:hidden;
}
ul.archive_li li{
    float:left;
    width:48%;
    margin:0 4% 30px 0;
}
ul.archive_li li:nth-child(2n){margin-right:0;}

ul.archive_li li h2{
    line-height:1em;
    margin:0 auto 20px;
    padding:0;
    border-bottom:2px solid;
}
ul.archive_li li.si h2{border-color:#2cafcc;}
ul.archive_li li.web h2{border-color:#ff5162;}
ul.archive_li li.engineeringsupport h2{border-color:#8068b7;}

ul.archive_li li h2 span{
    position:relative;
    font-size:12px;
    letter-spacing: 0.4pt;
    color:#fff;
    margin:0 auto;
    padding:5px 12px;
}
ul.archive_li li.si h2 span{background:#2cafcc;}
ul.archive_li li.web h2 span{background:#ff5162;}
ul.archive_li li.engineeringsupport h2 span{background:#8068b7;}

ul.archive_li li h2 span:after{
    right:-15px;
    top:-15px;
    position: absolute;
    content: '';
    border: none;
    border-right: solid 15px transparent;
    border-left: solid 15px transparent;
    border-top: solid 15px transparent;
    z-index: 1;
}
ul.archive_li li.si h2 span:after{border-bottom:solid 27px #2cafcc;}
ul.archive_li li.web h2 span:after{border-bottom:solid 27px #ff5162;}
ul.archive_li li.engineeringsupport h2 span:after{border-bottom:solid 27px#8068b7;}

ul.archive_li li ul{
    display:table;
    width:100%;
    margin:0 auto 20px;
    padding:0;
}
ul.archive_li li ul li{
    display:table-cell;
    width:65%;
    margin:0;
    padding:0;
}
ul.archive_li li ul li:last-child{
    width:30%;
    padding-left:5%;
}
ul.archive_li li ul li img{width:100%;}
ul.archive_li li ul li h3{
    font-size:20px;
    font-weight:500;
    line-height:1.2em;
    color:#001e55;
}
ul.archive_li li p{
    font-size:14px;
    letter-spacing: 0.4pt;
    color:#001e55;
    margin:0 auto 20px;
    padding:0;
}
ul.archive_li li .info_wap{
    border-left:3px solid #f0f0f0;
    padding-left:20px;
    margin:0;
}
ul.archive_li li .info_wap dl{
    display:table;
    margin:0 auto 10px;
    padding:0;
    width:100%;
    color:#001e55;
    font-size:14px;
    line-height:1.4em;
}
ul.archive_li li .info_wap dl.info{color:#90949b;}
ul.archive_li li .info_wap dl dt{
    display:table-cell;
    width:20%;
    vertical-align: middle;
}
ul.archive_li li .info_wap dl dd{
    display:table-cell;
    width:75%;
    padding-left:5%;
}
ul.archive_li li .info_wap dl dd span.label_nvy{
    color:#fff;
    font-size:11px;
    letter-spacing: 0.2pt;
    display:inline-block;
    background:#001e55;
    padding:2px 8px;
    margin-right:4px;
    border-radius:4px;
}

/* 新着情報_詳細 */
p.whatsnewd_ti{
    max-width:768px;
    color:#001e55;
    font-size:23pt;
    line-height:1.25em;
    margin:0 auto;
}
p.whatsnewd_d{
    max-width:768px;
    color:#001e55;
    font-size:14px;
    letter-spacing: 0.4pt;
    padding:0;
    margin:15pt auto 30pt;
}
p.whatsnewd_ati{
    max-width:768px;
    color:#001e55;
    font-size:14px;
    margin:0px auto 20px;
}
p.whatsnewd_at{
    max-width:768px;
    color:#001e55;
    font-size:12px;
    letter-spacing: 0.4pt;
    padding:0;
    margin:0px auto 100px;
}

p.snspolicy_ab{
    max-width:768px;
    color:#001e55;
    font-size:12px;
    letter-spacing: 0.4pt;
    padding:0;
    margin:0px auto 100px;
}
p.snspolicy_m{
    max-width:768px;
    position:relative;
    margin:0px auto 0px;
}

.whatsnewd img {
  max-width: 100%;
}
div.whatsnewd span.w_label_h::before,
div.whatsnewd span.w_label_r::before,
div.whatsnewd span.w_label_n::before
{
  display:inline;
  margin:0 5px 0 10px;
}

div.whatsnewd p.whatsnew_hr{
    border-top: 1px solid #d3d3d3;
    margin: 30px 0 10px 0;
}

.whatsnewd_t {
    max-width: 768px;
    color: #001e55;
    font-size: 14px;
    letter-spacing: 0.4pt;
    padding: 0;
    margin: 0px auto 100px;
}

/* 共通 */
.contents .content_box {
    max-width: 768px;
    margin: 80px auto 0;
    color: #001e55;
    letter-spacing: 0.4pt;
}
.contents .content_box:first-child {
    margin-top: 0;
}
.contents .content_box:last-child {
    margin-bottom: 80px;
}
.contents .content_box .content_h2 {
    font-size:18px;
    font-weight:bold;
    margin: 0;
}
.contents .content_box .content_text, .contents .content_box .content_ol {
    font-size: 14px;
    margin: 30px auto 0;
}
.contents .content_box .content_text.indent {
    padding-left: 1em;
}
.contents .content_box .content_h2 + .content_text,
.contents .content_box .content_h2 + .content_ol {
    margin-top: 10px;
}
.contents .content_box .content_h2 + .content_h2 {
    margin-top: 30px;
}
.contents .content_hr {
    max-width: 768px;
    margin: 80px auto 80px;
    border: 1px solid #a8a8a8;
    border-width: 1px 0 0 0;
}

/* ビジネスパートナーさまへ */
.contents ul.partner_ul{
    width:100%;
    margin:20px auto 30px;
    padding:0 0 30px;
    border-bottom:1px solid #ccc; 
}
.contents ul.partner_ul li{
    position:relative;
    float:left;
    width:32%;
    margin:0 2% 0 0;
    box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    -moz-box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    transition:0.2s;
}
ul.partner_tl{
    font-size: 14px;
    margin: 10px auto 0;
}
ul.partner_tl li{
  position: relative;
}
ul.partner_tl li::before{
  display: block;
  content: '';
  position: absolute;
  top: .9em;
  left: -1em;
  width: 6px;
  height: 6px;
  background-color: #666;
  border-radius: 100%;
}
.contents ul.partner_ul li:last-child{margin-right:0;}
.contents ul.partner_ul li:first-child a{background:url(/image/top/bnr_img02.jpg) center/cover no-repeat;}
.contents ul.partner_ul li:nth-child(2) a{background:url(/image/top/bnr_img01.jpg) center/cover no-repeat;}
.contents ul.partner_ul li:last-child a{background:url(/image/top/bnr_img03.jpg) center/cover no-repeat;}
.contents ul.partner_ul li a{
    display:table;
    width:100%;
    height:224px;
    margin:0 auto;
    padding:0;
    text-decoration:none;
}
.contents ul.partner_ul li .p_text_wap{
    display:table-cell;
    vertical-align: bottom;
    width:100%;
    padding:0;
    margin:0 auto;
}
.contents ul.partner_ul li .p_text_wap .popup .web{
    position:relative;
    background:rgba(255, 81, 98, 1);
    padding:0;
    overflow:hidden;
}
.contents ul.partner_ul li .p_text_wap .popup .si{
    position:relative;
    background:rgba(44, 176, 205, 1);
    padding:0;
    overflow:hidden;
}
.contents ul.partner_ul li .p_text_wap .popup .en{
    position:relative;
    background:rgba(128, 104, 184, 1);
    padding:0;
    overflow:hidden;
}
.contents ul.partner_ul li .p_text_wap .popup p{
    max-height:0;
    -webkit-transition: max-height 0.3s ease-in-out;
    -moz-transition: max-height 0.3s ease-in-out;
    transition: max-height 0.3s ease-in-out;
}
.contents ul.partner_ul li .p_text_wap .popup span{
    position:relative;
    display:block;
    vertical-align: middle;
    color:#ffffff;
    font-size:18px;
    padding:20px 0;
    text-align:center;
}
.contents ul.partner_ul li .p_text_wap .popup p{
    font-size:14px;
    line-height:1.8em;
    width:78%;
    margin:0 auto;
    color:#ffffff;
}
.contents ul.partner_ul li .p_text_wap:hover .popup p{
    max-height:160px;
}
.contents ul.partner_ul li .p_text_wap .popup .web::before,
.contents ul.partner_ul li .p_text_wap .popup .si::before,
.contents ul.partner_ul li .p_text_wap .popup .en::before{
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 1px #ffffff;
  border-right: solid 1px #ffffff;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -2px;
}
.partner_bottom{
    margin: 0 auto 50px;
}
 ul.partner_sub_ul{
    width:100%;
    margin:0 auto ;
    padding:0 0 100px;
}
ul.partner_sub_ul li{
    float:left;
    width:48%;
    min-height:70px;
    max-height:70px;
    margin:0 4% 0 0;
    box-sizing:border-box;
    transition:0.2s;
}
ul.partner_sub_ul li:last-child{
    margin:0;
}
ul.partner_sub_ul li:hover{
    opacity:0.7;
    -ms-opacity:"alpha(opacity=70)";
} 

/* 個人情報保護方針、特定個人情報基本方針 */
.privacy-img{
    text-align:center;
    margin-top: 30px;
}
p.privacy_p{
    max-width:768px;
    font-size:14px;
    margin:80px auto 0;
    text-align:right;
}
.privacy-border-double {
    max-width:768px;
    margin: 20px auto 0;
    padding : 1em 1.5em;
    line-height : 1.8;
    border : double 4px #333; 
    font-size: 14px;
}
.privacy-border-double a{ color: #001e55;}
.privacy-border-double h3 {
    margin: 0 auto 10px;
    font-size: 16px;
}

/* ソーシャルメディアポリシー */
p.snspolicy_at{
    max-width:768px;
    color:#001e55;
    font-size:12px;
    letter-spacing: 0.4pt;
    padding:0;
    margin:10px auto 0px;
}
p.snspolicy_ab{
    max-width:768px;
    color:#001e55;
    font-size:12px;
    letter-spacing: 0.4pt;
    padding:0;
    margin:5px auto 0px;
}
p.snspolicy_m{
    max-width:768px;
    position:relative;
    margin:10px auto 0px;
}

/*お問い合わせ*/
p.btm_b{
    padding:0 0 60px;
    margin:0 auto 60px;
    border-bottom:1px solid #ccc;
}
p.top_b{
    padding:60px 0 0;
    margin:60px auto 0;
    border-top:1px solid #ccc;
}
dl.form_dl{
    display:table;
    width:100%;
    margin:0 auto 40px;
    padding:0;
}
dl.form_dl dt{
    display:table-cell;
    width:28%;
    padding:0 2% 0 0;
    vertical-align: middle;
    margin:0 auto;
    color:#3b5df9;
    letter-spacing: 0.4pt;
}
dl.form_dl.ver_top dt{vertical-align: top;}
dl.form_dl dt span.red{color:#f00;}
dl.form_dl dd{
    position:relative;
    display:table-cell;
    width:70%;
    margin:0 auto;
    padding:0;
}
dl.form_dl dd p{
    margin:0;
    padding:0;
}
dl.form_dl dd input[type="text"],
dl.form_dl dd input[type="tel"],
dl.form_dl dd input[type="email"],
dl.form_dl dd textarea{
    display: block;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    padding:4px 8px;
    height:40px;
    vertical-align: middle;
    border: none;
    border: 1px solid #ccc;
    color: inherit;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    color: #444;
    width:100%;
    border-radius:4px;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    transition: all 0.2s linear;
    -webkit-transform: translateZ(0);
}
dl.form_dl dd input[type="text"].half{width:50%;}
dl.form_dl dd textarea{height:180px;}
dl.form_dl dd input[type="text"]:focus,
dl.form_dl dd input[type="tel"]:focus,
dl.form_dl dd input[type="email"]:focus{border-color:#001e55;}

dl.form_dl dd select{
    display: block;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    padding:4px 8px;
    height:40px;
    vertical-align: middle;
    border: none;
    font-size:14px;
    border: 1px solid #ccc;
    color: inherit;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    color: #444;
    width:100%;
    border-radius:4px;
    transition:0.2s;
    background:#fff;
}
dl.form_dl dd select option{
  background-color: #fff;
  color: #333;
}
dl.form_dl dd select::-ms-expand {
  display: none;
}
dl.form_dl dd select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}
dl.form_dl dd .select_wrap {
    position:relative;
    display:inline-block;
    width:100%;
    margin:0;
    padding:0;
}
dl.form_dl dd .select_wrap.half{width:50%;}
dl.form_dl dd .select_wrap:before{
    position:absolute;
    display:inline-block;
    content:"";
    right:15px;
    top:50%;
    margin-top:-3px;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border-bottom: 6px solid transparent;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
    border-top: 6px solid #333;
}
a.tlink{color:#001e55;}
a.tlink:hover{text-decoration:none;}

.policy_box{
    position:relative;
    width:90%;
    padding:3% 5%;
    background:#f0f0f0;
    margin:20px auto;
}
.policy_box p{
    padding:3% 5%;
    background:#fff;
    font-size:14px;
    height:45px;
    overflow-y:scroll;
}
.policy_box span.doui{
    display:table;
    position:relative;
    text-align:center;
    margin:0 auto;
}
.policy_box input[type=checkbox] + label {
    position: relative;
    width: auto;
    display: inline-block;
    margin: 0px;
    font-size: 14px;
    cursor: pointer;
    padding: 0;
}
.policy_box input[type=checkbox] {
    display: none;
    margin: 0;
}
.policy_box input[type=checkbox] + span {
    position: relative;
    display: inline-block;
    font-size:14px;
    color:#001e55;
    padding: 0px 0 7px 25px;
    margin: 0 30px 0 0;
}
.policy_box input[type=checkbox] + span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 20px;
    height: 20px;
    margin-top: -12px;
    background: #FFF;
    border-radius:4px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.policy_box input[type=checkbox] + span::before {border: 1px solid #ccc;}
.policy_box input[type=checkbox]:checked + span::after {
    content: "";
    position: absolute;
    top: 50%;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
}
.policy_box input[type=checkbox]:checked + span::after {
    left: 6px;
    width: 10px;
    height: 5px;
    margin-top: -6px;
    border-left: 2px solid #001e55;
    border-bottom: 2px solid #001e55;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.policy_box ul.filled,
dl.form_dl dd ul.filled{
    margin:0;
    padding:0;
    position:absolute;
}
.policy_box ul.filled{margin-top:-10px;}
.policy_box ul.filled li,
dl.form_dl dd ul.filled li{
    margin:5px 0 0;
    padding:4px 6px;
    font-size:12px;
    letter-spacing: 0.4pt;
    line-height:1em;
    color:#f00;
    background:#fcc;
}
.hidden {
    display: none;
    visibility: hidden;
}
.bs-callout-warning{
    background:#fcc;
    border:1px solid #f00;
    padding:2%;
    margin:0 auto 20px;
}
.bs-callout-warning p{
    color:#f00;
    padding:0;
    margin:0 auto;
}

/*確認画面*/
ul.conf_ul{
    margin:0 auto -20px;
    padding:0;
}
ul.conf_ul li{
    margin-bottom:20px;
    color:#001e55;
}

ul.btn_li{
    width:100%;
    margin:80px auto 0;
    padding:0;
}
ul.btn_li li{
    float:left;
    width:48%;
    margin:0 4% 0 0;
    padding:0;
}
ul.btn_li li:last-child{margin-right:0;}

ul.btn_li li button{
    color:#fff;
    font-size:18px;
    background:#a1a1a1;
}
ul.btn_li li:last-child button{
    color:#001e55;
    background:#fc0;
}

/* サイトマップ */
.contents .sitemap .sitemap_n{
    height: 20%;
    display: flex;
    flex-wrap:wrap;
    align-items:stretch;
    align-content:stretch;
    align-self:center;
    justify-content:flex-start;
}

 .contents .sitemap .sitemap_n .sitemap_o{
    flex-flow: column wrap;
    padding:0 20px 0 0;
}

.contents .sitemap .sitemap_n .sitemap_i5{
    order: 3;
}

.contents .sitemap .sitemap_n .sitemap_o .sitemap_i1,
.contents .sitemap .sitemap_n .sitemap_o .sitemap_i2,
.contents .sitemap .sitemap_n .sitemap_o .sitemap_i3,
.contents .sitemap .sitemap_n .sitemap_o .sitemap_i4,
.contents .sitemap .sitemap_n .sitemap_i5{
    margin:0 0 100px 0;
}

.contents .sitemap .sitemap_pc{display: contents;}
.contents .sitemap .sitemap_sp{display: none;}
.contents .sitemap .sitemap_h2{
    color:#001e55;
    font-size:18px;
    line-height:1.25em;
    padding:0 150px 20px 0;
    margin: 0;
    border-bottom: solid #b8bec8;
    border-bottom-width: thin;
    font-weight: 300;
}
.contents .sitemap .sitemap_i5 .sitemap_h2{
    margin-bottom: 50px;
}
.contents .sitemap .sitemap_h2 a{
    text-decoration: none;
    color:#001e55;
}
.contents .sitemap .sitemap_n ul{
    padding:0;
}
.contents .sitemap .sitemap_n  ul li{
    padding:0 0 10px 0;
}
.contents .sitemap .sitemap_n  ul li:last-child{
    padding-bottom: 0;
}
.contents .sitemap .sitemap_n a{
    text-decoration: none;
    color: #001E55;
}
.contents .sitemap .sitemap_n a:hover{
    text-decoration: underline;
}
.sitemap .sitemap_o span.blank{
    padding-right: 20px;
    background: url(/image/recruit/bk_icon.png) right center/14px no-repeat;
}

/*実績・問い合わせボタン*/
button[type="submit"],
a.review_btn,a.contact_btn{
    position:relative;
    display:block;
    width:100%;
    max-width:640px;
    margin:0 auto 20px;
    padding:16px 0;
    text-align:center;
    color:#fff;
    text-decoration:none;
    font-size:18px;
    box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    -moz-box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    background:#001e55;
    transition:0.2s;
}
button[type="submit"]{
    border:none;
    max-width:100%;
    padding:20px 0;
    cursor: pointer;
}

button[type="submit"],
a.contact_btn{
    color:#001e55;
    background:#ffcc00;
    margin-bottom:0;
}
a.review_btn::before,a.contact_btn::before{
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -4px;
}
button[type="submit"]:hover,
a.review_btn:hover,a.contact_btn:hover{
    opacity:0.6;
    -ms-filter:"alpha(opacity=60)";
}

ul.btn_li li button::before{
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 1px #001e55;
  border-right: solid 1px #001e55;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -4px;
}
ul.btn_li li button::before{border-color:#fff;}

.pb_80{padding-bottom:80px;}
.mb_80{margin-bottom:80px;}

/************************** 画面サイズが1024px以下の場合に適用 **************************/
@media screen and (min-width:1px) and (max-width:1024px) {

/*会社概要*/
dl.com_dl dd table tr th,
dl.com_dl dd table tr td{padding:8px;}
dl.com_dl dd table tr td ul li span{width:40%;}

/*Webサイト企画・構築*/
.left_box,.right_box{width:94%;}
.left_box img,
.right_box img{max-width:280px;}
.left_box h2,.right_box h2{margin:15px 0;}

ul.flow_li > li:before{
    right: -35px;
    margin-top:-7px;
    width: 14px;
    height: 14px;
    border: 14px solid transparent;
    border-left: 14px solid #fc0;
}

ul.flow_li li p{height:7em;}
ul.flow_li li ol li{
    width:49%;
    margin:0 2% 5px 0;
    font-size:10px;
}

/*業務システム開発*/
ul.case_li > li{height:350px;}
ul.case_li ol{height:8em;}
/*実績*/
ul.tab li a{font-size:14px;}

/* 新着情報_詳細 */
p.whatsnewd_ti{font-size:27px;}
.whatsnewd_t{
    margin:0px auto 50px;
}

/* 共通 */
.contents .content_box {
    margin: 50px auto 0;
}
.contents .content_box .content_h2 {
    font-size:15px;
}
.contents .content_box .content_h2 + .content_h2 {
    margin-top: 20px;
}
.contents .content_box .content_ol {
    padding-left: 20px;
}
.contents .content_hr {
    margin: 50px auto 50px;
}

/* ビジネスパートナーさまへ */
.contents ul.partner_ul li:first-child a{background:url(/image/top/sp/bnr_img02.jpg) center/cover no-repeat;}
.contents ul.partner_ul li:nth-child(2) a{background:url(/image/top/sp/bnr_img01.jpg) center/cover no-repeat;}
.contents ul.partner_ul li:last-child a{background:url(/image/top/sp/bnr_img03.jpg) center/cover no-repeat;}

/* 個人情報保護方針、特定個人情報基本方針 */
p.privacy_p {
    margin: 50px auto 0;
}
.privacy-border-double h3 {
    font-size: 14px;
}

/* サイトマップ */
.contents .sitemap .sitemap_n .sitemap_i1{order: 1;}
.contents .sitemap .sitemap_n .sitemap_i2{order: 2;}
.contents .sitemap .sitemap_n .sitemap_i3{order: 3;}
.contents .sitemap .sitemap_n .sitemap_i4{order: 4;}
.contents .sitemap .sitemap_n .sitemap_i5{order: 5;}

}

/************************** 画面サイズが768px以下の場合に適用 **************************/
@media screen and (min-width:1px) and (max-width:768px) {
/*パンくず*/
ul.pan_li{margin:5px 0 20px 0;}
.box{padding-bottom:40px;}
.main_wap{
    margin:60px auto 0;
    height:110px;
}
.main_wap.company{background:url(/image/company/sp/main.jpg) center right/768px no-repeat;}
.main_wap.contact{background:url(/image/contact/sp/main.jpg) center right/768px no-repeat;}
.main_wap.message{background:url(/image/message/sp/main.jpg) center right/768px no-repeat;}
.main_wap.service{background:url(/image/service/sp/main.jpg) center right/768px no-repeat;}
.main_wap.whatsnew{background:url(/image/whatsnew/sp/main.jpg) center right/768px no-repeat;}
.main_wap.pr_room{background:url(/image/pr_room/sp/main.jpg) center right/768px no-repeat;}
.main_wap.privacy,
.main_wap.privacy_eu,
.main_wap.mynumber,
.main_wap.sitepolicy,
.main_wap.snspolicy{background:url(/image/poricy/sp/main.png) center right/768px no-repeat;}
.main_wap.partner{background:url(/image/partner/sp/main.jpg) center right/768px no-repeat;}
.main_wap.sitemap{background:url(/image/sitemap/sp/main.jpg) center right/768px no-repeat;}

.main_wap h1{
    font-size:22px;
    padding-top:0;
    text-shadow:2px 2px 2px rgba(255,255,255,0.6),-2px -2px 2px rgba(255,255,255,0.6);
}
.main_wap h1 span.jp{margin:0 auto;}
.contents{width:92%;}

/*代表メッセージ*/
.sec.message{
    /* 【非表示対応】 background:url("/image/message/sp/bk.jpg") center bottom/100% no-repeat; */
}
.sec.message h2{
    font-size:24px;
    line-height:1.4em;
    padding:0 0 40px;
    text-align:center;
}
.sec.message p.message_t{
    max-width:100%;
    margin:0 auto 20px;
}
.sec.message .logo_box{margin:0 auto;}
.sec.message .logo_box p{
    font-size:14px;
    letter-spacing: 0.2pt;
}
.sec.message .logo_box p span.min{
    padding-right:10px;
}

/*事業内容*/
ul.business_li{padding:40px 0 20px;}
ul.business_li li{
    float:none;
    width:100%;
    margin:0 auto 40px;
}
ul.business_li li:last-child{margin-bottom:0;}

ul.business_li li div{
    display:table;
    margin:0 auto 20px;
    padding:0;
    background:#f0f0f0;
    }
ul.business_li li div span.img{
    display:table-cell;
    width:50%;
    margin:0;
    padding:0;
    }
ul.business_li li div span.img img{width:100%;}

ul.business_li li div span.big{
    display:table-cell;
    vertical-align: middle;
    width:51%;
    font-size:16px;
    line-height:1.4em;
    color:#001e55;
    text-align:center;
    margin:0;
    padding:0 2%;
}
 ul.business_li li a.more_btn{
     font-size:14px;
     padding:8px 0;
    }

/*会社概要*/
.sec.company h2{text-align:center;}
dl.com_dl{display:block;}
dl.com_dl dd{
    display:block;
    width:100%;
    margin:0 auto 20px;
}
dl.com_dl dd:last-child{
    padding-left:0;
    margin-bottom:0;
    }
dl.com_dl dd table{display:block;}
dl.com_dl dd table tr,
dl.com_dl dd table tbody{
    display:block;
    width:100%;
    }
dl.com_dl dd table tr th,
dl.com_dl dd table tr td{
    display:block;
    width:92%;
    padding:6px 4%;
    line-height:1.8em;
}
dl.com_dl dd table tr:last-child{border-bottom:none;}
dl.com_dl dd table tr td a{line-height:1.4em;}
dl.com_dl dd table tr td ul li span{
    display:block;
    width:100%;
    font-weight:600;
}
.google_map{padding-bottom: 56.25%;}
.gry_bk{
    padding:2em 0;
    margin:0 auto 40px;
}
.gry_bk .catch{font-size:24px;}
.border_bk{
    padding:1.5em 0.5em;
    margin:0 auto 40px;
}
.border_bk span{line-height:1.4em;}

a.blank_icon_pc{display:none;}
a.blank_icon_sp{
    display:block;
    color:#fff;
    text-align:center;
    padding:8px 0;
    text-decoration:none;
    background:#3b5df9;
    transition:0.2s;
}
a.blank_icon_sp span{
    padding-right:15px;
    background:url(/image/company/blank_icon_w.png) right center/12px no-repeat
    }
a.blank_icon_sp:hover{
    opacity:0.6;
    -ms-filter: "alpha( opacity=60 )";
    }
ul.act_li li{
    width:48%;
    margin:0 4% 20px 0;
    padding:15px;
}
ul.act_li li:nth-child(2n){margin-right:0;}
ul.act_li li span.number{margin:0 auto 5px;}

/* 広報コラム */
.contents .column img{
    max-width: 100%;
}

ul.ctab {padding:0 ;}

ul.ctab li a ul div{
    display:block;
    text-align:center;
}

ul.ctab li a ul{
    text-align:left;
}

ul.ctab li a{
    display: block;
    position:relative;
    font-size:12px;
    width:100%;
    line-height:1.2em;
    text-align: center;
}

ul.ctab li a ul.ctag_all{
    padding: 0 0 24px 0;
}
ul.ctab li a ul.ctag_pro{
    padding: 0 0 24px 0;
}

ul.ctab li a ul.ctag_out,
ul.ctab li a ul.ctag_ins{
    padding: 0 0 24px 0;
}

ul.ctab li:first-child{
    display:table-caption;
    width:200px;
    margin:0 auto;
    content:"\A" ;
    white-space:pre ;
}

ul.ctab li p{
    text-align: center;
}

.ctag_all::before,
.ctag_pro::before,
.ctag_out::before,
.ctag_ins::before{
    margin:0 5px 0 5px;
}

ul.column_li li{
    width:48%;
    font-size: 14px;
}

ul.column_li li:nth-child(odd){
    margin: 0 15px 0 0;
}

ul.column_li li:nth-child(even){
    margin: 0 0 30px 0;
}

ul.column_li li p.open{
    width:39%;
        font-size: 13px;
        display:inline-table;
        margin: 0 auto 0;
}

ul.column_li li a::before{
    content:"\A" ;
    white-space:pre ;
}

ul.column_li li div{
    text-align: right;
}

ul.ctab li:first-child{
    display:table-caption;
    width:200px;
    margin:0 auto 20px;
    content:"\A" ;
    white-space:pre ;
    line-height: 0;
}

ul.column_li li ul{
    letter-spacing: 0;
}
ul.column_li li p.text{
    line-height: 1.4em;
    margin: 0px;
}

.tab_box {margin:0 auto 40px;}
ul.archive_li li{
    float:none;
    width:100%;
    margin:0 auto 20px;
}
ul.archive_li li ul li{vertical-align: middle;}
ul.archive_li li .info_wap dl dd span.label_nvy{margin-bottom:4px;}
ul.archive_li li .info_wap dl dt{width:30%;}
ul.archive_li li .info_wap dl dd{width:65%;}

/*Webサイト企画・構築*/
.flow h2{
    font-size:24px;
    line-height:1.4em;
    padding:40px 0 30px;
}
.read_box{
    margin:0 auto 40px;
    padding:0 0 40px;
}
.read_box img{
    float:none;
    width:100%;
    margin:0 auto 10px;
}
.read_box .read_right{
    float:none;
    width:100%;
    margin:0;
    padding:0;
}
.read_box .read_right p{
    font-size:14px;
    line-height:1.4em;
    width:100%;
    margin:0 auto 10px;
    padding:0;
}

.read_box .read_right ul li a{
    font-size:14px;
    line-height:1.6em;
    width:80%;
    padding:16px 10%;
}

.left_box,.right_box{
    width:100%;
    margin:0 auto 40px;
}
.right_box{margin:0 auto 40px;}

.left_box img,
.right_box img{
    float:none;
    width:100%;
    max-width:480px;
}

.left_box img,
.right_box img{
    float:none;
    margin:0 auto 10px;
}

.left_box h2,.right_box h2{
    font-size:20px;
    padding:0;
    margin:0 auto 10px;
    text-align:left;
}
.left_box p,.right_box p{
    margin:0 auto;
    padding:0;
}

ul.flow_li{padding:20px 0 40px;}
ul.flow_li li{
    float:none;
    width:100%;
    margin:0 auto 75px;
}
ul.flow_li > li:before{
    right: 50%;
    top:100%;
    bottom:-54px;
    margin-top:auto;
    margin-right:-18px;
    width: 18px;
    height: 18px;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
    border-bottom: 18px solid transparent;
    border-top: 18px solid #fc0;
}
ul.flow_li > li:last-child:before{display:none;}
ul.flow_li li:last-child{margin-bottom:0;}
ul.flow_li li h3{font-size:20px;}
ul.flow_li li p{
    height:auto;
    margin:0 auto 20px;
}
ul.flow_li li ol li{
    width:48%;
    margin:0 4% 10px 0;
    font-size:12px;
}
/*業務システム開発*/
ul.case_li > li{height:auto;}
ul.case_li ol{
    height:auto;
    margin-bottom:40px;
}

/*エンジニアリングサポート*/
ul.logos_li{
    display:block;
    overflow:hidden;
}
ul.logos_li li{
    float:left;
    display:block;
    width:48%;
    padding:0;
    margin:0 4% 20px 0;
}
ul.logos_li li:nth-child(2n){margin-right:0;}
ul.logos_li li:last-child{
    float:none;
    margin:0 auto;
    }

ul.logos_li li p.top_border{
    font-size:14px;
    padding:10px 0 0;
    margin:10px auto 0;
}

/*業務システム開発*/
ul.case_li > li{
    float:none;
    width:100%;
    margin:0 auto 20px;
    height:auto;
}
ul.case_li li:last-child{margin-bottom:0;}

/*実績*/
ul.tab {
    height:52px;
    margin-top:70px;
    }
ul.tab li {
    position:relative;
    table-layout: auto;
    width:33.3333%;
    z-index:2;
    margin-left:-5px;
}
ul.tab li:first-child{
    position:absolute;
    width:80%;
    left:10%;
    right:10%;
    z-index:1;
    top:-42px;
    border-spacing: 0;
    transition:0.3s;
    margin:0;
    }
ul.tab li a{
    position:relative;
    font-size:12px;
    line-height:1.2em;
}

ul.tab li:first-child a{
    padding:15px 0 65px;
    top:0;
    }
ul.tab li:first-child.active a{
    padding:15px 0 68px;
    top:-3px;
    }

.tab_box {margin:0 auto 40px;}
ul.archive_li li{
    float:none;
    width:100%;
    margin:0 auto 20px;
}
ul.archive_li li ul li{vertical-align: middle;}
ul.archive_li li .info_wap dl dd span.label_nvy{margin-bottom:4px;}
ul.archive_li li .info_wap dl dt{width:30%;}
ul.archive_li li .info_wap dl dd{width:65%;}


/* ビジネスパートナーさまへ */
.contents ul.partner_ul{
    width:100%;
}

.contents ul.partner_ul li{
    float:none;
    width:100%;
    margin:0 0 2% 0;
    box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    -moz-box-shadow: 0px 3px 8px rgba(0,0,0,0.2);
    transition:0.2s;
}

/*お問い合わせ*/
p.btm_b{
    font-size:14px;
    line-height:1.8em;
    padding:0 0 40px;
    margin:0 auto 40px;
}
p.top_b{
    font-size:14px;
    line-height:1.8em;
    padding:40px 0 0;
    margin:40px auto 0;
}
dl.form_dl{
    display:block;
    margin:0 auto 20px;
    }
dl.form_dl dt{
    display:block;
    width:100%;
    padding:0 0 5px;
}
dl.form_dl dd{
    display:block;
    width:100%;
}
dl.form_dl dd p{padding-left:5%;}
dl.form_dl dd input[type="text"].half,
dl.form_dl dd .select_wrap.half{width:100%;}

.policy_box{
    width:90%;
    padding:3% 5%;
    margin-bottom:40px;
}

.policy_box p{
    padding:5%;
    height:60px;
    font-size:14px;
    line-height:1.6em;
}
.policy_box input[type=checkbox] + label {letter-spacing: 0.4pt;}
.policy_box ul.filled,
dl.form_dl dd ul.filled{position:relative;}

/*確認画面*/
ul.conf_ul{margin:0 auto;}
ul.conf_ul li{margin-bottom:10px;}

ul.btn_li{margin:40px auto 0;}
ul.btn_li li{
    float:none;
    width:100%;
    margin:0 auto 20px;
}
ul.btn_li li:last-child{margin-bottom:0;}

/* サイトマップ */
.contents .sitemap .sitemap_pc{display: none;}
.contents .sitemap .sitemap_sp{display: block; width: 100%}

.contents .sitemap .sitemap_n .sitemap_o .sitemap_i1,
.contents .sitemap .sitemap_n .sitemap_o .sitemap_i2,
.contents .sitemap .sitemap_n .sitemap_o .sitemap_i3,
.contents .sitemap .sitemap_n .sitemap_o .sitemap_i4{
    margin:0 0 6% 0;
}
.contents .sitemap .sitemap_n .sitemap_i5{
    margin:0 0 100px 0;
}
.contents .sitemap .sitemap_h2{
    padding:40px 0 15px 0;
    margin: 20px 0 0 0;
}
.contents .sitemap .sitemap_i1 .sitemap_h2{
    padding-top: 10px;
    margin-top: 0;
}
.contents .sitemap .sitemap_i5 .sitemap_h2{
    margin-bottom: 40px;
}
.contents .sitemap .sitemap_n .sitemap_o {
    flex-flow: column wrap;
    padding: 0; 
}

/*実績・問い合わせボタン*/
a.review_btn{margin:0 auto 10px;}

@media screen and (min-width:1px) and (max-width:380px) {
/*実績*/
ul.tab {width:100%;}
ul.tab li:first-child{top:-35px;}
ul.tab li:first-child a{padding:15px 0 60px;}
ul.tab li:first-child.active a{padding:15px 0 63px;}
ul.tab li a{font-size:10px;}

/* 広報コラム */
ul.column_li li{width:100%; padding: 0 0 20px 0;}
ul.column_li li:nth-child(odd){ margin: 0 0 0 0;}
ul.column_li li:nth-child(even){margin: 0 0 0 0;}
ul.column_li li a {padding-right: 4%;}

}



