@charset "utf-8";
/* @responcive
-------------------------------- */
#BtnMenu {
	display: none;
}

@media screen and (max-width: 768px){

img {
	width: 100%;
    max-width: 100%;
}



/* @text-align
-------------------------------- */
.sp-ta-right p {
  text-align: right !important;
}

.sp-ta-center p {
  text-align: center !important;
}

.sp-ta-left p {
  text-align: left !important;
}

/* @end */




    
/* common
-------------------- */
body {
}
body > div#Wrapper {
	font-size: 13px;
}
.body-wrap {
    width: auto;
    margin-left: 10px;
    margin-right: 10px;
}

/* Header
-------------------- */
#Header {
	padding: 0;
}
#Header h1,
#Header #TopTitle {
	display: none;
}
#Header #Logo {
	padding: 15px 5px;
}
#Header #Logo img {
	width: 180px;
	vertical-align: top;
}
#HeaderSnsIcons {
	display: none;
}
#HeaderSnsIcons *:before {
	display: none;
}

#BtnMenu {
    display: block;
    width: 50px;
	height: 50px;
    position: absolute;
    top: 0;
    right: -10px;
	background: #48BBBC;
	text-align: center;
}
#BtnMenu .genericon-menu:before {
	color: #fff;
	font-size: 24px;
	line-height: 50px;
}
#ContactBtn {
    display: block;
    width: 50px;
	height: 50px;
    position: absolute;
    top: 0;
    right: 40px;
	background: #88D3D3;
	text-align: center;
}
#ContactBtn a {
	text-decoration: none;
}
#ContactBtn a:hover {
	text-decoration: none;
}
#ContactBtn .genericon-mail:before {
	color: #fff;
	font-size: 36px;
	line-height: 50px;
}


/* GrobalNavi
-------------------- */
#GrobalNavi {
	display: none;
	width: auto;
	margin: 0;
	padding-bottom: 0;
}
#GrobalNavi ul {
	border-bottom: 0;
}
#GrobalNavi li {
    float: none;
	height: auto;
	margin-right: 0;
	border-bottom: 0;
	overflow: hidden;
}
#GrobalNavi li a {
	display: block;
	width: auto;
	height: 50px;
	margin-top: 0;
	padding-bottom: 0;
	padding-left: 20px;
	border-bottom: 1px solid #fff;
	background: #48BBBC;
	color: #fff;
	font-size: 13px;
	font-family: 'Lato', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	text-align: left;
	line-height: 50px;
	-webkit-font-smoothing: antialiased;
}
#GrobalNavi li a:hover {
	text-decoration: none;
}
#GrobalNavi li a span {
	display: none;
	color: #fff;
	font-size: 13px;
}
#GrobalNavi > ul > li#RecruitLink a {
	width: auto;
}
#GrobalNavi li.dropdown-item ul {
	position: static;
	z-index: 3050;
	display: block;
}
#GrobalNavi li.dropdown-item ul li {
	float: none;
	height: auto;
	border-bottom: 0;
	margin-bottom: 0;
	background: #333;
}
#GrobalNavi li.dropdown-item ul a {
	display: block;
	width: auto;
	height: auto;
	margin-top: 0;
	padding: 0 0 0 40px;
	background: #48BBBC;
	color: #000;
	font-size: 13px;
	text-align: left;
}
#GrobalNavi li.dropdown-item ul a br {
	display: none;
}

.header-navi, .diamond-wrap, .diamond-wrap2 {
	display: none;
}

/* 汎用スタイル
-------------------- */
/* 見出し */
.contents h2 {
	margin-bottom: 30px;
	font-size: 24px;
	font-family: oswald;
	letter-spacing: 2px;
}

/* 下層ページトップタイトル */
h1.title-header:before {
	display: none;
}
h1.title-header p {
	position: static;
	width: auto;
	padding: 60px 0 20px;
}
.sub-page-title {
	width: 100%;
	min-width: 100%;
	height: auto;
	background: #48BBBC !important;
}
#SubMainImage h1 {
	margin-bottom: 30px;
	color: #fff;
}

/* リンクボタン */
.link-btn {
	text-align: center !important;
}
.bge-contents [data-bgb=wysiwyg2] .bgt-grid--first {
    padding-right: 0 !important;
}
.bge-contents [data-bgb=wysiwyg2] .bgt-grid--last {
    padding-left: 0 !important;
}


/* テーブルデザイン
-------------------- */
.contents tr:last-child td {
    border-bottom: 0;
}



/* TopLink
-------------------- */
#TopLink {
	position: fixed;
	bottom: 50px;
	left: auto;
	right: 10px;
    z-index: 10000;
	margin-left: 0;
	text-align: right;
    text-decoration: none;
    font-family: 'Oswald', sans-serif;
    opacity: 0.7;
    width: 50px;
    height: 50px;
}
#TopLink img:hover {
	opacity: 1;
}

/* Footer
-------------------- */
#Footer {
	padding: 20px 0;
	background: #333333;
}
#FooterLogo {
	float: none;
	width: auto;
	margin-bottom: 20px;
	text-align: center;
}
#FooterLogo img {
	width: 180px;
}

#SocialLinks {
	position: static;
	margin-bottom: 30px;
	margin-left: 20px;
}
#SocialLinks div {
}

#FooterContact {
	float: none;
	width: 180px;
	margin: 0 auto;
	background: #48BBBC;
}
#FooterContact a {
	display: block;
	padding: 10px 15px 0;
	color: #fff;
	font-size: 13px;
	text-decoration: none;
	vertical-align: bottom;
}
#FooterContact .genericon {
	margin-right: 20px;
}
#FooterContact .genericon-mail:before {
	position: relative;
	top: -6px;
	font-size: 30px;
}

#FooterNavi {
	display: none;
}
#FooterNaviWrap > ul > li {
	float: none;
	margin-bottom: 30px;
	margin-right: 0;
}



/*

トップページ

-------------------- */

#MainImage {
	width: 100%;
	min-width: 100%;
}
#MainImage img {
	width: 100%;
}
.bx-controls-direction {
	display: none;
}

/* 事業ドメイン */
#DomainService {
	margin-bottom: 30px;
}
#DomainMenu {
	float: none;
	width: auto;
	margin-bottom: 26px;
}
#DomainSubMenu {
	float: none;
	width: auto;
}
#DomainSubMenu li {
	width: auto;
	margin-bottom: 26px;
}
#DomainSubMenu li:nth-child(odd) {
	float: none;
}
#DomainSubMenu li:nth-child(even) {
	float: none;
}
/* CSR */
#CsrActivity {
	margin-bottom: 30px;
	padding: 20px;
}
#CsrActivity .txt-copy {
	font-size: 16px;
}
#CsrActivity #CsrImage {
	position: static;
	margin-top: 20px;
}
/* 社長メッセージ */
#Message {
	margin-bottom: 30px;
}
#Message .body-wrap {
	padding: 20px 10px;
}

#Message .right {
	float: none;
	width: auto;
}
#Message .left {
	float: none;
	width: auto;
	text-align: center;
	display: none;
}
#MessagePicture img {
	position: static;
	display: none;
}
#MessagePicture figcaption {
	position: static;
	color: #666;
	display: none;
}
#Message .txt-copy {
	font-size: 18px;
}
#Message .txt-copy span {
	font-size: 22px;
}
#Message p {
	margin-bottom: 10px;
	line-height: 2;
}
#Message p b {
	font-size: 16px;
}
#Message #NextNavi {
	text-align: center;
}
#Message #NextNavi a {
	margin-right: 0;
	margin-bottom: 10px;
}

/* サービス */
#Service {
	margin-bottom: 30px;
}
#ServiceF {
	float: none;
	width: auto;
	margin-bottom: 20px;
}
#ServiceC {
	float: none;
	width: auto;
}
#Service p {
	font-size: 12px;
}
#Service p b {
	font-size: 16px;
}
#Service .img-service {
	float: none;
	width: auto;
	margin-bottom: 10px;
}
#Service .img-service img {
	float: none !important;
}
#Service .txt-service {
	float: none;
}
.bge-contents #Service .txt-service {
	width: auto;
	height: auto;
	padding: 10px;
}
#Service .txt-service a {
	display: block;
	width: auto;
	height: auto;
	padding: 10px;
}
/* ニュース */
.top #News {
	float: none;
	width: auto;
	margin-bottom: 30px;
	padding: 10px;
	border: 2px solid #EDEDED;
}
.top #News h2 {
	margin-bottom: 10px;
}
.top #News li {
	margin-bottom: 10px;
}
.top #News .date {
	float: none;
	display: block;
	width: auto;
	padding: 0;
	border-right: none;
}
.top #News .title {
	float: none;
	display: block;
	width: auto;
	margin-bottom: 10px;
	padding: 0;
}
/* パートナーバナー */
.top #Partner {
	float: none;
	width: auto;
}
.top #Partner h2 {
	font-size: 16px;
}
.top #Partner li {
	width: 49%;
}
/* リクルート */
.top #Recruit div.left,
.top #Recruit div.right {
	float: none;
	margin-bottom: 20px;
	padding-bottom: 40px;
	border: 4px solid #999999;
}
.top #Recruit h3 {
	margin: 20px 0 10px;
	font-size: 24px;
}
/* facebook */
#FacebookBox {
	padding: 50px 0 30px;
}
#Facebook01,
#Facebook02 {
	float: none;
	width: auto;
	margin-bottom: 20px;
}
#FacebookBox .fb-box {
	width: auto;
}
/* googlemap*/
#Map {
	padding: 40px 0 20px;
	background: #EDEDED;
}
.gmap-access {
	float: none;
	width: auto;
	margin: 0 auto 30px;

}
.gmap-access.last {
	margin-right: auto;
}
/* パートナーバナー（フッター） */
#FooterPartner {
	padding: 30px 0 0;
}
#FooterPartner h2 {
	margin-bottom: 15px;
	font-size: 18px;
	text-align: center;
	letter-spacing: 1px;
}
#FooterPartner .left,
#FooterPartner .right {
	float: none;
}
#FooterPartner .left ul {
	width: auto;
	margin-bottom: 10px;
}
#FooterPartner .right ul {
	width: auto;
}
#FooterPartner li {
	float: none;
	width: 49%;
	margin-right: 0;
}
#FooterPartner li:nth-child(odd) {
	float: left;
}
#FooterPartner li:nth-child(even) {
	float: right;
}






/*---------------------

メールフォーム

----------------------*/
.mailform-content table {
	border-bottom: 1px solid #666 !important;
}
.mailform-content tr {
	border: none !important;
}
.mailform-content th {
	display: block;
	width: 100%;
	border-bottom: none !important;
}
.mailform-content td {
	display: block;
	width: 100%;
	border-top: none !important;
	border-bottom: none !important;
}
.form-s {
	width: 99%;
}
.form-m {
	width: 99%;
}
.form-l {
	width: 99%;
}
textarea.form-l {
	width: 99%;
}
.mail-before-attachment {
	padding-right: 0;
}
.mail-after-attachment {
	padding-right: 0;
}



/*---------------------

ニュース

----------------------*/
.news-area .entry {
	margin-top: 30px;
	margin-bottom: 30px;
}
.news-area .entry h3 {
	margin-left: 0;
	margin-top: 0;
	padding: 0;
}
.news-area .entry h3 a {
	text-decoration: none;
}
.news-area .entry .date {
	float: none;
	padding: 7px 0;
	border-right: none;
}
.news-area-single .entry .date {
	margin-bottom: 5px;
}




/*---------------------

WISH

----------------------*/
#WishLayout {

}
.wish-title h2 {
	padding-top: 0;
}
.wish-area01 {
	margin-bottom: 30px !important;
}
.wish-area01 p {
	margin-bottom: 20px !important;
	line-height: 2 !important;
}
.wish-area02 {
	width: auto !important;
	padding: 16px;
}
.wish-area02 li {
	margin-bottom: 10px !important;
	line-height: 1.6 !important;
}
.wish-area03 {
	margin-bottom: 30px !important;
}
.wish-area03 dt {
	float: none;
	width: 207px;
	height: 46px;
	margin-bottom: 10px;
}
.wish-area03 dt span {
	margin-left: 6px;
	color: #FFFF00;
	font-size: 30px;
}
.wish-area03 dd {
	height: auto;
	margin-bottom: 20px;
	margin-left: 0;
	border-bottom: 0;
	font-size: 16px;
	line-height: 1.8;
}
.wish-area03 dd a {
	border-bottom: 3px solid #FFCC00;
}
.wish-title-area {
	padding: 10px 0 0;
	background: #F9F9F9;
}
.emblem-box {
	position: static;
	width: auto;
	height: auto;
	padding: 10px;
	background: #00c0c0;
	line-height: 1.2 !important;
}
.emblem-box span {
	display: inline;
	font-size: 24px;
}
.wish-title-area .title-area {
	margin-left: 0;
	padding: 30px 0 20px;
}
.wish-title-area h3 span {
	display: block;
	margin-left: 0;
	font-size: 18px !important;
	vertical-align: middle;
}
#NewTechWishTitle {
	display: block;
	position: static;
	left: 0;
	font-size: 18px;
	line-height: 1.5;
}




/*---------------------

CSR

----------------------*/
.csr-table tr:first-child {
	display: none;
}
.csr-table th {
	display: block;
	width: 100% !important;
	border-bottom: none !important;;
}
.csr-table td {
	display: block;
	width: 100% !important;
	border-top: none !important;
	border-bottom: none !important;
}
.csr-table td:nth-child(2):before {
	content: '役職,実績:　';
	color: #666;
}
.csr-table td:last-child {
	padding-top: 0;
}
.csr-table tr:last-child td:last-child {
	border-bottom: 1px solid #999 !important;
}




#RecruitContent td {
	border-bottom: 0;
}
#RecruitContent tr:last-child td {
	border-bottom: 1px solid #666;
}





/*---------------------

4 DOMAINS development

----------------------*/
.work-tech-area {
	margin-bottom: 0 !important;	
}
.work-tech-area .bgt-grid {
	margin-bottom: 30px !important;	
}
.work-tech-area .bgt-grid--first {
	padding-right: 0 !important;
}
.work-tech-area .bgt-grid--last {
	padding-left: 0 !important;
}
.work-tech-area h3 {
	margin-bottom: 10px !important;
	padding: 10px 20px  !important;
	background: #48BBBC !important;
	color: #fff !important;
	font-size: 24px !important;
	font-weight: normal !important;
}
.gray-box {
	margin: 10px 0 0;
	padding: 10px 20px;
	background: #EDEDED;
}
#DevelopmentWork .left {
	width: 100%;
}
#DevelopmentWork .right {
	width: 100%;
}
.dev-image {
	margin-bottom: 20px;
}
.dev-cate img {
	float: left;
	width: auto;
	margin-right: 10px;
}
.dev-cate img:last-child {
	margin-right: 0;
}
.dev-work-list {
	padding: 10px 20px;
}
.dev-work-list p {
	margin-bottom: 6px !important;
}
.dev-work-list .dev-work-list-left {
	float: none;
	width: auto;
}
.dev-work-list .dev-work-list-right {
	float: none;
	width: auto;
}
.domain-index-box {
	width: 100%;
}
.domain-index-box h3 {
	padding-right: 30px;
}
.domain-index-box h3 .title {
	margin-top: 10px;
	font-size: 26px;
	letter-spacing: 2px;
	line-height: 1.3;
}
.domain-index-box .index-numble {
	position: absolute;
	top: 14px;
	right: 16px;
	font-size: 30px;
}
.domain-index-box .genericon {
	margin: 4px 10px 4px 0;
	padding: 4px;
	background: #48BBBC;
	color: #fff;
}
.domain-index-box ul {
}
.domain-index-box li {
	font-size: 15px !important;
	font-weight: bold !important;
	list-style: none !important;
}
.domain-index-box a {
	display: block;
	padding: 10px 20px;
	color: #333;
	text-decoration: none;
}




/*---------------------

4 DOMAINS application

----------------------*/
#ApplicationWork li {
	float: none;
	width: 100%;
	margin-right: 0;
	margin-bottom: 50px;
	padding-bottom: 50px;
	border-bottom: 1px dashed #666;
}
.app-image {
	margin-bottom: 10px;
}
.app-cate img {
	width: auto;
}
.app-work-list {
	padding: 20px 40px;
}
.app-work-list p {
	margin-bottom: 6px !important;
}
#ApplicationWork h3.title {
	margin: 10px 0;
	font-size: 16px;
}
#ApplicationWork h3.title a {
	color: #333;
	font-weight: bold;
}
.app-work-list {
	margin: 10px 0 !important;
	padding: 15px 20px !important;
}





/*---------------------

4 DOMAINS cloud

----------------------*/
.cloud-works tr {
	border: 0;
}
.cloud-works tr:first-child {
	display: none;
}
.cloud-works th {
	display: block;
	border-bottom: none !important;;
}
.cloud-works td {
	display: block;
	border-top: none !important;
	border-bottom: none !important;
}
.cloud-works td:nth-child(2):before {
	content: '使用クラウド:　';
	color: #666;
}
.cloud-works td:nth-child(3):before {
	content: '概要:　';
	color: #666;
}
.cloud-works td:last-child {
	padding-top: 0;
}
.cloud-works tr:last-child td:last-child {
	border-bottom: 1px solid #999 !important;
}




.new-technology-items > div {
	margin-bottom: 30px;
}


/*---------------------

先輩社員の一日　詳細ページ

----------------------*/
#StaffHeader {
	position: relative;
	margin: 50px 0;
	padding: 130px 0 20px;
}
#StaffHeader .body-wrap {
	position: static;
}
#StaffHeader #StaffImage {
	position: absolute;
	top: -30px;
	left: 30px;
	text-align: center;
}
#StaffHeader #StaffImage img {
	width: 150px;
	border-radius: 200px;
}
#DaySchedule td {
	border-bottom: 1px solid #48BBBC;
}
#DaySchedule tr:last-child td {
	border-bottom: 0;
}






/*---------------------

COMPANY plan

----------------------*/
.bg-blue {
	margin-bottom: 30px !important;
	padding: 10px 0;
}
.belief-title {
	position: static;
	width: auto;
	height: auto;
	margin-bottom: 20px;
	padding: 10px 0 ;
	background: #48BBBC;
}
.belief-title span.title-main {
	color: #fff;
	font-size: 30px;
	font-family: "ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif;
	line-height: 1.4;
}
.belief-title span.title-sub {
	display: block;
	color: #fff;
	font-size: 14px;
}

.belief-words {
	margin-left: 0;
	margin-bottom: 20px;
	font-size: 15px;
	font-weight: bold;
}
.vision {
	margin-bottom: 20px !important;
}
.vision .belief-words {
	margin-bottom: 10px;
}
.value .belief-words {
	padding-top: 0;
	margin-bottom: 10px;
}
.belief-box {
	position: relative;
	z-index: 100;
	margin-bottom: 20px;
	padding: 20px 20px 10px;
	border: 4px solid #A3D6D8;
	background: #fff;
}





/*---------------------

COMPANY history

----------------------*/
.history-table th {
	display: block;
	width: auto;
	margin-bottom: 5px;
	padding: 0 !important;
	border: 0px !important;
}
.history-table td {
	display: block;
	width: auto;
	padding: 0 !important;
	border: 0 !important;
}
.history-table td.bge-type-table__text1 {
	margin-bottom: 5px;
}
.history-table td.bge-type-table__text2 {
	margin-bottom: 20px;
}






/*---------------------

COMPANY outline

----------------------*/
.outline-table tr {
	border: 0;
}
.outline-table td {
	border-bottom: 0 !important;
}
.outline-table table {
	border-bottom: 1px solid #666!important;
}
.glaph-data-table table {
	border-bottom: 1px solid #666!important;
}
.glaph-data-table tr {
	border: 0;
}
.glaph-data-table th {
	display: block;
	width: auto;
	padding: 10px !important;
	border-bottom: 0 !important;
	text-align: center !important;
}
.glaph-data-table .bge-type-table__text1 {
	display: block;
	padding: 10px 10px 10px 30px !important;
	border-bottom: 0 !important;
}
.glaph-data-table .bge-type-table__text2 {
	display: block;
	width: auto;
	padding: 10px 30px 10px 10px !important;
	border-bottom: 0 !important;
}
.map-canvas {
	width: auto !important;
}

.contact-agree {
	padding: 10px;
}
.contact-agree-box h4 {
	font-size: 13px;
}
.contact-agree-box {
	height: 100px;
	padding: 10px;
	font-size: 12px;
}












}
