@charset "UTF-8";



/* 見出し
----------------------------------------------- */
.hdg-a-wrapper {
	margin-bottom: 20px;
}

.section-inner > h2 {
	margin-bottom: 56px;
}
.concept {
    max-width: 1280px;
    text-align: center;
    margin: 0 auto 20px !important;
}
.left {
    text-align: left!important;
}

@media only screen and (max-width: 768px) {
	.concept {
		padding:0 5%; 
	}
}

/*
.hdg-a-wrapper + .section .section-inner {
	padding-top: 56px !important;
	min-height: 180px;
}
*/

.main-contents .hdg-a-wrapper + .section .section-inner {
	padding-top: 0 !important;
	padding-bottom: 20px !important;
	min-height: 0;
}

/* ローカルナビ
----------------------------------------------- */
/* ショートカットナビゲーション */
@media only screen and (max-width: 1000px) {
	.js-nav-fixed {
		display: none;
	}
}
/* ストラクチャーナビゲーション */
.nav-structure-a {
	margin-bottom: 10px;
}
@media only screen and (min-width: 1000px) {
	.nav-structure-a {
		display: none !important;
	}
}

/* メインビジュアル 
----------------------------------------------- */
.hero-area-c {
	background-color: #000;
}
.hero-area-c + * {
	margin-top: 0;
}

.hero-area-c .content-inner {
	padding-left: 5%;
	max-width: 760px;
    position: relative;
    z-index: 100;
}
.hero-area-c .content-inner .sub-txt {
	margin-bottom: 20px;
}

/* 新着情報 
----------------------------------------------- */
.list-news-a .news-content .date {
	flex-basis: 8em;
}

@media only screen and (max-width: 480px) {
	.hero-area-c + * h2 {
		margin-bottom: 20px !important;
	}
}

/* 導入事例
----------------------------------------------- */
.case-studies .lyt-col-feature-a > .col {
	width: 33.333%;
}
.case-studies .category-link {
	margin-top: 40px;
	padding-top: 52px;
	display: flex;
	border-top: 1px solid #9a9a9a;
}
.case-studies .category-link > h3 {
	width: 30%;
	font-size: 2.4rem;
	text-align: center;
}

@media only screen and (max-width: 768px) {
	.case-studies .lyt-col-feature-a > .col {
		width: 50%;
	}
	.case-studies .category-link > h3 {
		width: 50%;
	}
}
@media only screen and (max-width: 480px) {
	.case-studies .lyt-col-feature-a > .col {
		width: 100%;
	}
	.case-studies .category-link {
		flex-direction: column;
	}
	.case-studies .category-link > h3 {
		width: 100%;
		margin-bottom: 20px;
	}
}

/* 動画 
----------------------------------------------- */
.movie .lyt-idx-b {
	justify-content: center;
}
.movie .lyt-idx-b > * {
	display: flex;
}
.movie .lyt-idx-b > * .movie-wrap {
	width: 100%;
	display: block;
	text-decoration: none;
	border: 1px solid #c6c6c0;
}
.movie .lyt-idx-b .movie-wrap .text-box.diff-type-b {
	padding: 35px 24px;
}
.movie .lyt-idx-b .movie-wrap .text-box::before {
	display: none;
}
.movie .lyt-idx-b .movie-wrap .title > .icon-ctg-a {
	display: inline-block;
	min-width: 0;
	margin-bottom: 10px;
	padding: 4px 2em;
	font-weight: 400;
}
@media only screen and (max-width: 768px) {
	.movie .lyt-idx-b.diff-col3 > * {
		width: 100%;
	}
}

/* ソリューションメニュー
----------------------------------------------- */
.section.diff-bg-a.solution {
	background: #85191c;
	color: #fff;
}
.section.solution h2 {
	font-size: 2.8rem;
}
.section.solution .btn-group {
	max-width: 752px;
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.section.solution .btn-group .btn-rectangle a {
	position: relative;
	text-decoration: none;
	display: flex;
	transition: 0.3s;
}
.section.solution .btn-group .btn-rectangle a::after  {
	display: inline-block;
	content: "";
	position: absolute;
	bottom: 4px;
	right: 4px;
	border-top: 15px solid transparent;
	border-right: 15px solid #85191c;
}
.section.solution .btn-group .btn-rectangle a:hover {
	opacity: 0.5;
}
.section.solution .btn-group .btn-rectangle a .icon {
	padding: 6px;
	border: 1px solid #fff;
	flex-basis: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.section.solution .btn-group .btn-rectangle a .text {
	width: 100%;
	padding: 10px 20px;
	background-color: #fff;
	color: #a10f1f;
	font-size: 1.8rem;
	display: flex;
	justify-content: center;
	align-items: center;
}
.section.solution .btn-group .btn-rectangle a .text p {
	text-align: center;
}
/*
.section.solution .btn-group .btn-rectangle a {
	width: 100%;
	display: block;
	position: relative;
	padding: 16px 70px 16px 70px;
	background: #fff;
	color: #85191c;
	font-size: 1.8rem;
	text-align: center;
	text-decoration: none;
	border: 1px solid #fff;
	transition: 0.3s;
}
.section.solution .btn-group .btn-rectangle a:hover {
	opacity: 0.5;
}
.section.solution .btn-group .btn-rectangle.icon1 a::before {
	display: inline-block;
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 50px;
	height: 50px;
	border: 1px solid #fff;
	background-color: #841a1f;
	background-image: url(/jp/imagesgig5/local-government/local-governmentImg_icon1.png);
	background-position: 0 0px;
}
.section.solution .btn-group .btn-rectangle.icon2 a::before {
	display: inline-block;
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 60px;
	height: 60px;
	background-image: url(/jp/imagesgig5/local-government/local-governmentImg_icon2.png);
	background-position: 0 0px;
}
.section.solution .btn-group .btn-rectangle a::after {
	display: inline-block;
	content: "";
	position: absolute;
	bottom: 4px;
	right: 4px;
	border-top: 15px solid transparent;
	border-right: 15px solid #85191c;
}
*/
.section.solution .btn-group ul {
	margin: 20px 0;
	display: flex;
	flex-wrap: nowrap;
}
.section.solution .btn-group ul li:not(:last-child) {
	margin-right: 4px;
}
.section.solution .btn-group ul li a {
	transition: 0.3s;
}
.section.solution .btn-group ul li a:hover {
	opacity: 0.5;
}
.section.solution .btn-group ul li a img {
	border: 1px solid #fff;
}
.section.solution .moreinfo {
	margin-top: 60px;
	display: flex;
	justify-content: center;
}

@media only screen and (max-width: 480px) {
	.section.solution .btn-group ul {
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.section.solution .btn-group ul li {
		width: 33%;
		margin-bottom: 4px;
	}
	.section.solution .btn-group ul li:not(:last-child) {
		margin-right: 0;
	}
}


/* コミュニティ
----------------------------------------------- */
.section.community {
}
.section.community a {
	width: 100%;
	max-width: 560px;
	margin: 0 auto;
	padding: 0 10px 20px;
	height: 220px;
	background: url(/jp/imagesgig5/local-governmentImg_bg_tcm102-4166878_tcm102-2750236-32.jpg) center bottom no-repeat;
	text-decoration: none;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	transition: 0.3s;
}
.section.community a:hover p {
	opacity: 0.5;
}
.section.community a p {
	position: relative;
	padding: 0 40px 0 100px;
	height: 60px;
	background: #fff;
	color: #85191c;
	border: 1px solid #85181c;
	text-align: center;
	text-decoration: none;
	transition: 0.3s;
	display: flex;
	justify-content: center;
	align-items: center;
}
.section.community a p::before {
	display: inline-block;
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 60px;
	height: 60px;
	background: #85181c;
	background-image: url(/jp/imagesgig5/local-governmentImg_icon3_tcm102-4166887_tcm102-2750236-32.png);
	background-position: 0 0px;
}
.section.community a p::after {
	display: inline-block;
	content: "";
	position: absolute;
	bottom: 4px;
	right: 4px;
	border-top: 15px solid transparent;
	border-right: 15px solid #85191c;
}

@media only screen and (max-width: 480px) {
	.section.community a {
		height: 180px;
	}
}
/* 関連リンク
----------------------------------------------- */
.bannerArea {
	width: 50%;
	margin: 0 auto !important;
}
.bannerArea a img.frame {
	display: block;
	width: 100%;
	max-width: 306px;
	border: 1px solid #ccc;
	margin: 0 0 8px;
}
.bannerArea li:before {
	display: none;
}

/* バナー
----------------------------------------------- */
ul.bannerArea li:hover{
	opacity: 0.7;
}

.list-a[class*=diff-col]>li {
    padding-left: 0;
    margin: 0 auto;
}
.list-a.diff-col2>li{
    width: 50%;
    max-width: 260px;
}

@media only screen and (max-width: 768px) {
	.list-a.diff-col2>li{
	    width: 100%;
	}
}


/* お問い合わせ */
.section.contact-box h2.hdg-d {
	color: #333;
	font-size: 2.8rem;
	margin-bottom: 30px;
}
.section.contact-box .cl-type-form .contact-inner::before {
	background-position: -50px -50px;
	width: 20px;
	height: 20px;
	margin-top: -10px;
}
.section.contact-box .lyt-contact-a > .col + .col {
	border-left: none;
}

/* 調整 
----------------------------------------------- */
hr {
	margin: 56px auto;
	border-top: 1px solid #ccc;
}

.pd0{
	padding: 0 !important;
}