@charset "utf-8";
/**********************************************

	basic_style.css

**********************************************/
/*--------------------------------------------

	デフォルト設定

---------------------------------------------*/
/* html */
html {
	height: 100%;
}
/* body */
body {
	position: relative;
	width: 100%;
	font-family: Helvetica,Arial,Doroid Sans,"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",sans-serif !important;
	color: #000000;
	-webkit-text-size-adjust: 100% !important;
	font-size: 14px;
}

p,
table tr td {
	line-height: 1.5em;
}
p,dl,h1,h2,h3,h4 {
	margin: 0;
}
h1,h2,h3,h4 {
	line-height: 1.0em;
}
small {
	font-size: 12px;
}

/* リンク */
a {
	color: #0066aa;
	text-decoration: none;
	line-height: 1.5em;
}
a:hover {
	color: #0066aa;
	text-decoration: underline;
}
a:hover img {
	text-decoration: none;
}
::selection {
	background: #ffc6cc;
}

/*--------------------------------------------

	レイアウト

---------------------------------------------*/
.outer-frame {
	width: 100%;
}
/* 内 960px固定値 */
.inner-frame {
	width: 960px;
	margin: 0 auto;
}
/*--------------------------------------------

	ヘッダーおよびフッター

---------------------------------------------*/
/* ヘッダー */
#header {
	border-top: 4px solid #cc0033;
	padding-top: 15px;
}
.header-up {
	padding-bottom: 10px;
}
h1.titile-1 {
	float: left;
	width: 490px;
	margin-right: 20px;
}
h1.titile-1 span {
	display: inline-block;
	float: left;
	font-size: 14px;
	padding-top: 18px;
}
.logo {
	float: left;
	margin-right: 17px;
}
.searcharea {
	float: left;
	width: 240px;
	margin-right: 10px;
	padding-top: 8px;
}
.searcharea.not {
	float: none;
	margin-top: 20px;
}
.wordsizearea {
	float: left;
	width: 200px;
	padding-top: 8px;
}
.wordsizearea span {
	font-size: 12px;
	padding-top: 6px;
	display: inline-block;
	float: left;
	padding-right: 4px;
	font-weight: bold;
}
ul#changeFontSize li {
	float: left;
	cursor: pointer;
}
/* メニューナビゲーション */
#menunavigation {
	border-bottom: 2px solid #d4d4d4;
}
ul.list-menu-navigation {
	
}
ul.list-menu-navigation li {
	float: left;
	width: 192px;
	background: url("/common/images/bg_menu_df.png")no-repeat left top;
	padding-top: 10px;
	height: 40px;
}
ul.list-menu-navigation li:first-child {
	background: url("/common/images/bg_menu_df_first.png")no-repeat left top;
	width: 193px;
	margin-left: -1px;
}
ul.list-menu-navigation li.active {
	background: url("/common/images/bg_menu_ov.png")no-repeat left top;
}
ul.list-menu-navigation li.active a {
	color: #cc0033;
}
ul.list-menu-navigation li a {
	display: block;
	height: 35px;
	text-decoration: none;
	font-size: 16px;
	color: #000000;
	text-align: center;
	font-weight: bold;
}
ul.list-menu-navigation li a:hover {
	color: #cc0033;
	font-weight: bold;
}
/* パンくず */
#breadclumb ul {
	padding: 8px 0;
}
#breadclumb ul li {
	display: inline;
	width: auto;
	height: 40px;
	text-align: center;
	font-size: 12px;
}
#breadclumb ul li:after {
	content: ">";
	padding-left: 5px;
}
#breadclumb ul li.display-page:after {
	content: "";
}
#breadclumb ul li a {
	color: #333333;
}
#breadclumb ul li a:hover {
	color: #333333;
	text-decoration: underline;
}

/*フッター*/
#footer {
	border-top: 1px solid #d4d4d4;
	padding-top: 30px;
}
ul.list-link-footer {
	margin: 0 65px;
}
ul.list-link-footer:before {
	content: "|";
	font-size: 14px;
	color: #666666;
	padding-right: 10px;
}
ul.list-link-footer li {
	display: inline;
	width: auto;
	height: 13px;
	line-height: 13px;
	text-align: center;
}
ul.list-link-footer li a {
	color: #666666;
	font-size: 14px;
}
ul.list-link-footer li a:hover {
	color: #666666;
	text-decoration: underline;
}
ul.list-link-footer li a:after {
	content: "|";
	padding-left: 13px;
	padding-right: 4px;
}
.footer-copyright {
	text-align: center;
	margin-top: 20px;
	font-size: 12px;
	color: #666666;
	margin-bottom: 30px;
}

/*--------------------------------------------

	タイトル

---------------------------------------------*/
h2.title-2-line {
	background: url("/images/titleline.gif")no-repeat left bottom;
	font-size: 24px;
	padding-bottom: 15px;
	color: #cc0033;
	line-height: 1.5em;
	margin-bottom: 20px;
	font-weight: bold;
}
h2.title-2-red {
	color: #cc0033;
	font-size: 28px;
	text-align: center;
	padding-bottom: 30px;
	line-height: 1.5em;
}
h3.title-3-red {
	color: #cc0033;
	font-size: 28px;
	text-align: center;
	padding-bottom: 30px;
	line-height: 1.5em;
}
h3.title-3-line {
	background: url("/images/titleline.gif")no-repeat left bottom;
	font-size: 24px;
	padding-bottom: 15px;
	color: #cc0033;
	line-height: 1.5em;
	margin-bottom: 20px;
}
.title-3-line p.txt {
	color: #000000;
	font-size: 14px;
	padding-top: 5px;
}

/*--------------------------------------------

	トップページスタイル

---------------------------------------------*/
/*トップスライダー*/
ul.slides {
	overflow: hidden;
	min-width: 980px;
}
ul.slides li {
	position: relative;
	width: 100%;
	margin: 0 auto;
	width: auto;
	height: 706px;
	min-width: 980px;
}
.herovisual-first {
	position: relative;
	margin-top: -2px;
}
/*各メッセージとボタン包括*/
.wrap-messages {
	top: 65px;
	position: absolute;
	text-align: center;
	margin: 0 auto;
	width: 100%;
}
.button-bg-round-red.top {
	position: absolute;
	top: 252px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.third .wrap-messages {
	top: 10px;
}
.fourth .wrap-messages {
	top: 50px;
}
ul.slides li.first {
	background: url("/common/images/herovisual_main_001.png")no-repeat left top / cover;
	width: 100%;
	height: 706px;
	min-width: 980px;
}
ul.slides li.second {
	background: url("/common/images/herovisual_main_002.png")no-repeat left top / cover;
	width: 100%;
	height: 706px;
	min-width: 980px;
}
ul.slides li.third {
	background: url("/common/images/herovisual_main_003.png")no-repeat left top / cover;
	width: 100%;
	height: 706px;
	min-width: 980px;
}
ul.slides li.fourth {
	background: url("/common/images/herovisual_main_004.png")no-repeat left top / cover;
	width: 100%;
	height: 706px;
	min-width: 980px;
}
/*トップコンテンツリンク（固定）*/
.contents-link-area {
	position: absolute;
	top: 375px;
	margin: 0 100px;
}

/* 20160809 追記 */
ul.list-link-circle-white li {
	/*float: left;*/
	width: 280px;
	margin-right: -15px;
	position: absolute;
}
ul.list-link-circle-white li.left {
	left: 0;
}
ul.list-link-circle-white li.middle {
	left: 265px;
}
ul.list-link-circle-white li.right {
	left: 530px;
}
/* //20160809 追記 */

ul.list-link-circle-white li a {
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	padding-top: 55px;
	font-size: 21px;
	line-height: 1.25em;
}
ul.list-link-circle-white li a span {
	font-size: 16px;
}
ul.list-link-circle-white li a:hover span {
	color: #000000;
}
.circlebtn-large {
	text-decoration:none;
	height: 55px;
	width: 240px;
	text-align: center;
	display: block;
	outline: none;
	position: relative;
	float: left;
	z-index: 2;
	-webkit-transition:all 0.3s;
	transition:all 0.3s;
}
.circlebtn-large:before,
.circlebtn-large:after {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	-webkit-transition:all 0.3s;
	transition:all 0.3s;
}

.link-white {
	width: 240px;
	height: 185px;
	color: #ffffff;
	background: url("/common/images/bg_link_large_df.png") no-repeat center 190px rgba(21,10,0,0.45);
	-o-border-radius: 120px;
	-webkit-border-radius: 120px;
	-moz-border-radius: 120px;
	-ms-border-radius: 120px;
	border-radius: 120px;
}
.link-white p {
	background: url("/common/images/bg_line.png")no-repeat center 52px;
	height: 72px;
	font-weight: bold;
}
.second .link-white p {
	background: url("/common/images/bg_line.png")no-repeat center 72px;
	height: 85px;
}
.link-white:hover{
	color: #cc0033;
	background: ;
	opacity: 1.0;
	background: url("/common/images/bg_link_large_ov.png")no-repeat center 190px #ffffff;
}
.link-white:before {
	bottom: -8.5%;
	right: -8.4%;
	z-index: 1;
	-o-border-radius: 140px;
	-webkit-border-radius: 140px;
	-moz-border-radius: 140px;
	-ms-border-radius: 140px;
	border-radius: 140px;
	border: 20px solid #ffffff;
	height: 100%;
	width: 100%;
	opacity: 0.7;

}
.link-white:hover:before {
	border: 20px solid #ffffff;
}
ul.list-link-circle-white li.active a.link-white:hover:before {
	border: 20px solid #e6f0f2;
}
/*文字調整 2番目以降*/
ul.list-link-circle-white li.second a {
	padding-top: 42px;
}
ul.list-link-circle-white li.second a.link-white {
	height: 198px;
}
ul.list-link-circle-white li.second a.link-blue {
	height: 80px;
}

/*コンテンツリンク（バナー）*/
ul.list-link-bnr-slides {
	margin-bottom: 50px;
}
ul.list-link-bnr-slides li {
	float: left;
	width: 200px !important;    /*20171102レコリサ削除時変更からimportantに */
	border: 1px solid #d9d9d9;
	-o-border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-ms-border-radius: 4px;
	border-radius: 4px;
	margin-left: 20px;
	height: 68px;
	position: relative;
	text-align: center;
}
ul.list-link-bnr-slides li img {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
	right: 0;
}
ul.list-link-bnr-slides li:first-child {
	margin-left: 0;
}
ul.list-link-bnr-slides li:hover {
	border: 1px solid #cc0033;
}
ul.list-link-bnr-slides li a {
	display: block;
	text-align: center;
	height: 68px;
}
ul.list-link-bnr-slides li a:hover {
	text-decoration: none;
}
.bnr-area {
	width: 940px;
	margin: 50px auto 0;
}

.slick-prev {
	background: url("/common/images/bnrslide_icon_left.png")no-repeat left top !important;
	height: 36px;
}
.slick-prev:hover {
	background: url("/common/images/bnrslide_icon_left_ov.png")no-repeat left top !important;
}
.slick-prev:before {
	content: none;
}
.slick-next {
	background: url("/common/images/bnrslide_icon_right.png")no-repeat left top !important;
	height: 36px;
	right: -10px !important;
}
.slick-next:hover {
	background: url("/common/images/bnrslide_icon_right_ov.png")no-repeat left top !important;
}
.slick-next:before {
	content: none;
}

/*--------------------------------------------

	基本構成パーツ

---------------------------------------------*/
/*コンテンツ包括*/
.contents {
	padding: 50px 40px;
	width: 880px;
}
/*レイアウト*/
/*２カラム	左img、右テキスト*/
.layout-2-clm-detail {
	
}
.layout-2-clm-detail .left-clm {
	width: 230px;
	float: left;
}
.layout-2-clm-detail .right-clm {
	width: 645px;
	float: left;
}
/*各ヒーロービジュアル*/
/*コンテンツビジュアル*/
.herovisual-second {
	margin: 0 auto;
	padding: 145px 0;
	width: auto;
	height: auto;
}
.herovisual-second h2 {
	position: relative;
	top: 50%;
	left: 0;
	color: #ffffff;
	font-size: 32px;
}
.herovisual-third {
	background: #e6f0f2;
	height: 100px;
}
.herovisual-third h2 {
	font-size: 32px;
	line-height: 100px;
	font-weight: bold;
}
/*各ページ*/
.herovisual-second.service {
	background: url("/service/images/herovisual_service.png")no-repeat center bottom / cover;
	width: 100%;
}
.herovisual-second.research {
	background: url("/service/research/images/herovisual_research.png")no-repeat center bottom / cover;
	width: 100%;
}
.herovisual-second.areamarketing {
	background: url("/service/area_marketing/images/herovisual_areamarketing.png")no-repeat center bottom / cover;
	width: 100%;
}
.herovisual-second.communication {
	background: url("/service/communication/images/herovisual_communication.png")no-repeat center bottom / cover;
	width: 100%;
}

/*事業紹介	各コンテンツへのリンク*/
ul.list-contentslinks {
	margin-top: 50px;
}
ul.list-contentslinks li {
	height: 222px;
	margin-top: 50px;
}
ul.list-contentslinks li:first-child {
	margin-top: 0;
}
ul.list-contentslinks li a {
	text-align: center;
	font-size: 28px;
	color: #ffffff;
	display: block;
	height: 137px;
	padding-top: 85px;
	text-align: center;

}
ul.list-contentslinks li:hover {
	opacity: 0.5;

}
ul.list-contentslinks li a:hover {
	text-decoration: none;
}
ul.list-contentslinks li a span {
	font-size: 14px;
}

ul.list-contentslinks li.list-bg-001 {
	background: url("/service/images/img_service_001.png")no-repeat left top;
}
ul.list-contentslinks li.list-bg-002 {
	background: url("/service/images/img_service_002.png")no-repeat left top;
}
ul.list-contentslinks li.list-bg-003 {
	background: url("/service/images/img_service_003.png")no-repeat left top;
}
/*事業紹介配下、各サービス紹介包括*/
.wrap-details {
	padding-bottom: 50px;
}
/*事業紹介配下、ページ内リンク	青背景*/
ul.list-pageinlinks {
	background: #e6f0f2;
	font-size: 0;
	-o-border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	-ms-border-radius: 20px;
	border-radius: 20px;
	padding: 30px 40px 30px 0;
	min-height: 20px;
	margin-bottom: 30px;
}
ul.list-pageinlinks li {
	display: inline-block;
	font-size: 14px;
	padding-left: 40px;
}

ul.list-pageinlinks li a:after {
	content: url("/service/images/link_arrow_under.gif");
	padding-left: 7px;
}
/*事業紹介配下、ほかサービスへのリンク	サークル*/
.other-link-area {
	border-top: 1px solid #e6f0f2;
	padding-top: 50px;
}
ul.list-link-circle {
	margin: 0 auto;
	width: 510px;
}
ul.list-link-circle li {
	float: left;
	width: 150px;
	margin-right: 20px;
}
ul.list-link-circle li a {
	color: #000000;
	text-align: center;
	text-decoration: none;
	padding-top: 50px;
	font-size: 12px;
}
ul.list-link-circle li.active a {
	color: #cc0033;
	background: #e6f0f2;
}

.circlebtn {
	text-decoration:none;
	height: 60px;
	width: 240px;
	text-align: center;
	display: block;
	outline: none;
	position: relative;
	float: left;
	z-index: 2;
	-webkit-transition:all 0.3s;
	transition:all 0.3s;
}
.circlebtn:before,.circlebtn:after{
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	-webkit-transition:all 0.3s;
	transition:all 0.3s;
}

.link-blue {
	width: 120px;
	/*line-height: 110px;*/
	height: 70px;
	color: #ffffff;
	background: #ffffff;
	-o-border-radius: 45px;
	-webkit-border-radius: 45px;
	-moz-border-radius: 45px;
	-ms-border-radius: 45px;
	border-radius: 45px;
}
.link-blue:hover{
	color:#19283c;
	background: #ffffff;
}
.link-blue:before {
	bottom: -8.4%;
	right: -8.5%;
	z-index: 1;
	-o-border-radius: 100px;
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	-ms-border-radius: 100px;
	border-radius: 100px;
	border: 10px solid #e6f0f2;
	height: 100%;
	width: 100%;
}
.link-blue p {
	background: url("/service/images/bg_arrow_circle.gif")no-repeat center bottom;
	padding-bottom: 20px;
}
.active .link-blue p {
	background: url("/service/images/bg_line_circle.gif")no-repeat center bottom;
	padding-bottom: 10px;
}
.link-blue:hover:before {
	border: 10px solid #cc0033;
}
ul.list-link-circle li.active a.link-blue:hover:before {
	border: 10px solid #e6f0f2;
}
/*文字調整　２番目*/
ul.list-link-circle li.second a {
	padding-top: 40px;
}
ul.list-link-circle li.second a.link-blue {
	height: 80px;
}

/*事業紹介トップへ　リンク*/
.link-border-blue {
	border-top: 1px solid #e6f0f2;
	padding-top: 20px;
	width: 240px;
	text-align: center;
	margin: 62px auto 0;
}

/*各トピックスリンクリスト*/
dl.list-2clm-article {
	padding-bottom: 20px;
}
dl.list-2clm-article dt,
dl.list-2clm-article dd {
	display: inline-block;
	margin-left: 10px;
	width: 120px;
	line-height: 1.5em;
}
dl.list-2clm-article dd {
	vertical-align: middle;
}
dl.list-2clm-article dt {
	width: 595px;
	vertical-align: top;
}
/*ラベル*/
span.label-blue,
span.label-orange,
span.label-green {
	padding: 3px 13px;
	font-size: 14px;
	color: #ffffff;
	-o-border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	-ms-border-radius: 2px;
	border-radius: 2px;
}
span.label-blue {
	background: #7bc4d7;
}
span.label-orange {
	background: #eb8842;
}
span.label-green {
	background: #92ba71;
}

/*社長メッセージ背景*/
.wrap-bg-message {
	position: relative;
	background: url("/test_message/images/bg_message.png")no-repeat left top;
	width: 100%;
	height: 600px;
}
.wrap-bg-message .text {
	position: absolute;
	top: 40px;
	left: 40px;
	width: 750px;
}

/*プラグインエリア*/
.plugInBox01 {
	border: 1px solid #b3b3b3;
	padding: 15px 30px;
}
.plugInBox01 .boxInner {
	display: block;
}
.plugInBox01 .colLeft {
	float: left;
	width: 540px;
	padding-top: 10px;
	background: url("/info/images/com_bg06.png") right top repeat-y;
}
.plugInBox01 p {
	margin-bottom: 0 !important;
}
.plugInBox01 .colRight {
	float: right;
	width: 250px;
	text-align: center;
}
.pb10 {
	padding-bottom: 10px !important;
}
/*--------------------------------------------

	汎用パーツ

---------------------------------------------*/
/*ページトップ*/
#pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	cursor: pointer;
	z-index: 5000;
}
/*別窓アイコン*/
a.link-icon-blank:after {
	content: url("/common/images/icon_blank.gif");
	padding-left: 7px;
}
a.link-icon-pdf:after {
	content: url("/common/images/icon_pdf.gif");
	padding-left: 5px;
}
/*電話番号表記*/
.tel {
	font-size: 32px;
	display: block;
}
/* 検索フォーム */
#searchInner {
	position: relative;
}
#searchInner .searchTxt {
	float: left;
	padding: 0 20px 0 15px;
	border: 1px solid #d4d4d4;
	width: 200px;
	color: #999999;
	height: 30px;
	-o-border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	border-radius: 15px;
	margin-right: -30px;
}
#searchInner .searchBtn {
	padding-top: 4px;
}
#searchInner input[type="image"] {
	background: url("/common/images/btn_search.png")no-repeat left center;
	position: absolute;
	right: 15px;
	top: 3px;
	width: 20px;
	height: 20px;
	border: none;
	text-indent: -9999px;
}
#searchInner input[type="text"] {
	color: #000000;
}
#searchInner:hover input[type="image"]{
	background: url("/common/images/btn_search_ov.png") no-repeat left center;
}
/*赤ボタン*/
.button-bg-round-red {
	text-align: center;
	height: 34px;
	line-height: 34px;
	-o-border-radius: 17px;
	-webkit-border-radius: 17px;
	-moz-border-radius: 17px;
	-ms-border-radius: 17px;
	border-radius: 17px;
	background: #cc0033;
	width: 240px;
	margin: 0 auto;
}
.button-bg-round-red:hover {
	background: #a60029;
	transition: all 0.5s;
}
.button-bg-round-red a {
	color: #ffffff;
	display: block;
	height: 34px;
	line-height: 34px;
}
.button-bg-round-red a:hover {
	text-decoration: none;
}
.button-bg-round-red.wh a:after {
	content: url("/common/images/icon_blank_wh.gif");
	padding-left: 5px;
}
/*テーブル（基本*/
table.table-2clm-left {
	width: 100%;
}
table.table-2clm-left th {
	width: 210px;
	border-bottom: 1px solid #ffffff;
	padding: 15px;
	vertical-align: top;
	text-align: left;
	background: #f0f0f0;
	line-height: 1.5em;
}
table.table-2clm-left td {
	border-bottom: 1px solid #d4d4d4;
	padding: 15px;
	vertical-align: top;
}

/*テーブル（左右対称）*/
table.table-2clm-half {
	width: 100%;
}
table.table-2clm-half th {
	width: 50%;
	border-bottom: 1px solid #ffffff;
	padding: 15px;
	vertical-align: middle;
	text-align: left;
	background: #f0f0f0;
	line-height: 1.5em;
}
table.table-2clm-half th.first,
table.table-2clm-half td.first {
	text-align: center;
}
table.table-2clm-half td {
	width: 50%;
	border-bottom: 1px solid #d4d4d4;
	padding: 15px;
	vertical-align: middle;
}
/*テーブル(colspan/rowspan)*/
table.table-2clm-left.table-2clm-left-type2 th {
	width: auto;
}
table.table-2clm-left.table-2clm-left-type2 th.table-border {
	border-right: 1px solid #ffffff;
}

/*画像つきボタン*/
.MSS-rightBtn {
	width: 240px;
	margin-left: auto;
}
a.MSS-linkBtn {
	display: inline-block;
	background: url("/service/area_marketing/mobile_spatial_statistics/images/index_bt01.png") no-repeat 0 0;
	line-height: 1;
	padding: 22px 0 22px 20px;
	text-decoration: none;
	color: #424a4e;
	width: 240px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	text-align: center;
	font-size: 14px;
}
a.MSS-linkBtn:hover {
	opacity: 0.7;
}
.box-border {
	border: 1px solid #999999;
	padding: 10px;
}
.pd-top-10 {
	padding-top: 10px;
}
/* 外余白 */
.mg-top-20 {
	margin-top: 20px;
}
.mg-top-30 {
	margin-top: 30px;
}
.mg-top-40 {
	margin-top: 40px;
}

.mg-bottom-10 {
	margin-bottom: 10px;
}
.mg-bottom-20 {
	margin-bottom: 20px;
}
.mg-bottom-50 {
	margin-bottom: 50px;
}
.mg-bottom-70 {
	margin-bottom: 70px;
}
.mg-left-80 {
	margin-left: 80px;
}
.mg-right-40 {
	margin-right: 40px;
}
.mg-left-20 {
	margin-left: 20px;
}

/* 内余白 */
.pd-bottom-20 {
	padding-bottom: 20px;
}
.pd-bottom-30 {
	padding-bottom: 30px;
}
.pd-bottom-40 {
	padding-bottom: 40px;
}
.pd-bottom-50 {
	padding-bottom: 50px;
}
.bd-bottom-60 {
	padding-bottom: 60px;
}
.pd-top-20 {
	padding-top: 20px;
}
.pd-top-40 {
	padding-top: 40px;
}
.pd-top-40 {
	padding-top: 40px;
}
.pd-left-20 {
	padding-left: 20px;
}
/* 文字位置 */
.ta-center {
	text-align: center;
}
.ta-right {
	text-align: right;
}
.ta-left {
	text-align: left !important;
}
.fw-bold {
	font-weight: bold;
}
/* float */
.f-left {
	float: left;
}
.f-right {
	float: right;
}

/*リストスタイル（番号）*/
ul.list-style-number {
	padding-left: 20px;
	line-height: 1.5em;
}
ul.list-style-number > li {
	list-style-type:decimal;
	line-height: 1.5em;
}
ul.list-style-circle > li {
	list-style-type: disc;
	line-height: 1.5em;
	margin-left: 20px;
}
/*矢印アイコンつきリンク*/
ul.list-style-bg-arrow > li {
	padding-left: 19px;
	background: url("/common/images/com_ic07.gif") 0 0.4em no-repeat;
	margin-top: 8px;
}
ul.list-style-bg-arrow > li:first-child {
	margin-top: 0;
}
ul.list-sub li {
	padding-left: 20px;
}
ul.list-sub li span {
	padding-left: 20px;
}
/*プライバシーマークエリア*/
.wrapper-privacymark p {
	width: 785px;
	float: left;
}

/*iphone　スマホ対応*/
@media only screen
 and (min-device-width: 320px)
 and (max-device-width: 568px)
 and (-webkit-min-device-pixel-ratio: 2) {

	/*トップコンテンツリンク（固定）*/
	.contents-link-area {
		position: absolute;
		top: 360px;
		margin: 0 100px;
	}

	ul.list-link-circle-white li {
		float: left;
		width: 270px;
		margin-right: -20px;
	}
}
/*--------------------------------------------

	モバイル空間統計 共通パーツ

---------------------------------------------*/
#mobileSpatialStatisticsIndex .contents.inner-frame {
	width: 960px !important;
	padding: 0;
	padding-top: 50px;
}
.innerchild-frame {
	padding-left: 40px;
	padding-right: 40px;
}

/*--------------------------------------------
	コンテンツ切り替え遷移タブ
---------------------------------------------*/
ul.list-tabs-mss {
	font-size: 0;
	border-bottom: 4px solid #e6f0f2;
	text-align: center;
	margin-bottom: 50px;
}
ul.list-tabs-mss > li {
	display: inline-block;
	width: 212px;
	height: 55px;
	font-size: 16px;
	margin-left: 10px;
	/*margin-bottom: -4px;*/
	border: 2px solid #e6f0f2;
	border-bottom: none;
	-o-border-radius: 10px 10px 0 0;
	-webkit-border-radius: 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
	-ms-border-radius:10px 10px 0 0;
	border-radius: 10px 10px 0 0;
	text-align: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}
ul.list-tabs-mss > li.active:after,
ul.list-tabs-mss > li:hover:after {
	content: "";
	position: absolute;
	left: -2px;
	bottom: -4px;
	width: 212px;
	height: 4px;
	background-color: #cc0033;
}
ul.list-tabs-mss > li:first-child {
	margin-left: 0;
}
ul.list-tabs-mss > li > a {
	display: block;
	width: 100%;
	height: 100%;
	line-height: 55px;
	color: #000000;
	font-weight: bold;
}
ul.list-tabs-mss > li > a:hover {
	text-decoration: none;
}
ul.list-tabs-mss > li.active > a {
	color: #cc0033;
}
/*--------------------------------------------
	モバイル空間統計に関するお問い合わせについて
---------------------------------------------*/
dl.list-msscommon-contact {
	padding: 50px 40px;
	background: #e6f0f2;
}
dl.list-msscommon-contact > dt {
	color: #cc0033;
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 30px;
}
dl.list-msscommon-contact > dd > p {
	margin-bottom: 30px;
}
/*--------------------------------------------
	2カラム配置リスト
---------------------------------------------*/
ul.layout-2clm-mss {
	font-size: 0;
}
ul.layout-2clm-mss > li {
	font-size: 14px;
	display: inline-block;
	width: 425px;
	margin-left: 30px;
}
ul.layout-2clm-mss > li:nth-child(2n+1) {
	margin-left: 0;
}
ul.layout-2clm-mss > li:nth-child(n+3) {
	margin-top: 50px;
}
/*--------------------------------------------
	サムネイルリスト　赤18pxタイトル
---------------------------------------------*/
/* タイトル */
dl.list-thumbnail-lineup > dt {
	color: #cc0033;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
	font-size: 0;
}
/* サムネイル画像 */
dl.list-thumbnail-lineup > dt > img {
	display: block;
	margin-bottom: 20px;
}
dl.list-thumbnail-lineup > dt > span {
	display: inline-block;
	vertical-align: middle;
	font-size: 18px;
}

/* 国内・訪日ラベル配置 */
dl.list-thumbnail-lineup > dt > span.label-red,
dl.list-thumbnail-lineup > dt > span.label-white {
	margin-left: 5px;
}
/* 分析内容表記枠 */
dl.list-thumbnail-lineup > dd > dl {
	margin-top: 20px;
	margin-bottom: 30px;
}
dl.list-thumbnail-lineup > dd > dl > dt {
	display: inline-block;
	font-weight: bold;
}
dl.list-thumbnail-lineup > dd > dl > dt:after {
	content: ":";
}
dl.list-thumbnail-lineup > dd > dl > dd {
	display: inline-block;
}
/*--------------------------------------------
	国内・訪日ラベル
---------------------------------------------*/
.label-red {
	color: #ffffff;
	background: #cc0033;
	-o-border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	-ms-border-radius: 2px;
	border-radius: 2px;
	font-size: 12px !important;
	padding: 4px 15px;
	font-weight: normal;
	line-height: 1em;
}
.label-white {
	color: #cc0033;
	background: #ffffff;
	border: 2px solid #cc0033;
	-o-border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	-ms-border-radius: 2px;
	border-radius: 2px;
	font-size: 12px !important;
	padding: 4px 15px;
	font-weight: normal;
	line-height: 1em;
}
/*--------------------------------------------
	目的から探す・対象者から探す
---------------------------------------------*/
.tabset-mss-service {
	margin-top: 50px;
}
ul.list-tabs-serviceselecter {
	margin-top: 20px;
}
/* タブ */
ul.list-tabs-serviceselecter {
	font-size: 0;
	border-bottom: 4px solid #e6f0f2;
	text-align: center;
	margin-bottom: 50px;
}
ul.list-tabs-serviceselecter > li {
	display: inline-block;
	width: 395px;
	height: 55px;
	font-size: 16px;
	margin-left: 10px;
	border: 2px solid #e6f0f2;
	border-bottom: none;
	-o-border-radius: 10px 10px 0 0;
	-webkit-border-radius: 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
	-ms-border-radius: 10px 10px 0 0;
	border-radius: 10px 10px 0 0;
	text-align: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	color: #000000;
	font-weight: bold;
	cursor: pointer;
}
ul.list-tabs-serviceselecter > li > span:hover,
ul.list-tabs-serviceselecter > li.active > span {
	border-bottom: 4px solid #cc0033;
	color: #cc0033;
	width: 395px;
	margin-left: -2px;
}
ul.list-tabs-serviceselecter > li:first-child {
	margin-left: 0;
}
ul.list-tabs-serviceselecter > li > span {
	display: block;
	line-height: 53px;
}
/* タブコンテンツ内容 */
.box-tabcontents {
	padding: 50px 40px;
	padding-top: 0;
}
#tabcontents_02 {
	display: none;
}
/* アイコン付き黒文字タイトルリスト */
dl.list-icontitle-mss {
	margin-top: 20px;
}
dl.list-icontitle-mss:first-child {
	margin-top: 0;
}
dl.list-icontitle-mss > dt {
	position: relative;
	font-size: 18px;
	margin-bottom: 15px;
	font-weight: bold;
}
dl.list-icontitle-mss > dt > img,
dl.list-icontitle-mss > dt > span {
	display: inline-block;
}
dl.list-icontitle-mss > dt > span {
	position: absolute;
	padding-left: 10px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
dl.list-icontitle-mss > dt > span.fs-normal {
	font-size: 14px;
	font-weight: normal;
	margin-top: 20px;
	position: static;
	padding-left: 0;
	top: 0;
	-webkit-transform: none;
	transform: none;
}
/*--------------------------------------------
	青グレー背景　3カラムボタンリスト
---------------------------------------------*/
ul.list-3clm-buttons {
	background: #e6f0f2;
	padding: 20px 10px;
}
ul.list-3clm-buttons > li {
	float: left;
	width: 253px;
	margin-left: 10px;
}
ul.list-3clm-buttons > li:first-child {
	margin-left: 0;
}
ul.list-3clm-buttons > li > a {
	display: block;
	height: 50px;
	line-height: 50px;
	-o-border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	border-radius: 10px;
	padding: 0 20px;
	background: url("/service/area_marketing/images/service/index_icon05.png") no-repeat right 20px center #ffffff;
}
ul.list-3clm-buttons > li > a:hover {
	text-decoration: none;
}
ul.list-3clm-buttons > li:hover span {
	text-decoration: underline;
}
ul.list-3clm-buttons > li > a > span.label-red,
ul.list-3clm-buttons > li > a > span.label-white {
	margin-left: 10px;
}
ul.list-3clm-buttons > li:hover span.label-red,
ul.list-3clm-buttons > li:hover span.label-white {
	text-decoration: none;

}
/*--------------------------------------------
	赤18pxタイトル
---------------------------------------------*/
h4.title-4-red18 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
	color: #cc0033;
}
/*--------------------------------------------
	黒18pxタイトル
---------------------------------------------*/
h4.title-4-black18 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
	color: #000000;
}
/*--------------------------------------------
	サムネイルモーダルコンテンツリスト
---------------------------------------------*/
ul.list-thumbnail-modalcontents {
	font-size: 0;
	padding: 20px;
	background: #e6f0f2;
}
ul.list-thumbnail-modalcontents > li {
	font-size: 14px;
	display: inline-block;
	width: 266px;
	margin-left: 20px;
	vertical-align: top;
}
ul.list-thumbnail-modalcontents > li:first-child {
	margin-left: 0;
}
ul.list-thumbnail-modalcontents > li > a {
	display: block;
}
ul.list-thumbnail-modalcontents > li > a > dl > dt {
	color: #0066aa;
	margin-bottom: 10px;
}
ul.list-thumbnail-modalcontents > li > a > dl > dd > img {
	display: block;
}
ul.list-thumbnail-modalcontents > li > a > dl > dd > img  {
	width: 266px;
	height: 130px;
}
ul.list-thumbnail-modalcontents > li > p {
	color: #000000;
	margin-top: 10px;
}
.h30 {
	height: 30px;
}
/*--------------------------------------------
	モーダル　デザインカスタマイズ
---------------------------------------------*/
.lightboxOverlay {
	opacity: 0.5 !important;
}
.lightbox {
	width: 960px !important;
	left: 50% !important;
	-webkit-transform: translateX(-50%) !important;
	transform: translateX(-50%) !important;
}
.lb-outerContainer {
	position: relative !important;
	-o-border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
	-moz-border-radius: 0 !important;
	-ms-border-radius: 0 !important;
	border-radius: 0 !important;
}
.lb-container {
	padding: 0 !important;
	margin-top: 30px;
}
.lb-data {
	padding: 0 !important;
	color: #ffffff !important;
}
.lb-dataContainer {
	margin: 10px auto 0 !important;
	padding-top: 0 !important;
}
.lb-data .lb-details {
	width: 100% !important;
}
.lb-data .lb-caption {
	font-size: 14px !important;
	line-height: 1.4em !important;
}
.lb-number {
	display: none !important;
}
.lb-close {
	position: absolute;
	top: 0;
	right: 85px;
	width: 14px !important;
	height: 14px !important;
	opacity: 1.0 !important;
	background: url("/service/area_marketing/images/service/modal_icon01.png") no-repeat center center;
	z-index: 99999;
}
.lb-nav {
	left: 50% !important;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 0 !important;
}
.lb-nav a.lb-prev {
	position: absolute;
	left: -40px !important;
	float: none !important;
	width: 34px !important;
	height: 51px !important;
	background: url("/service/area_marketing/images/service/modal_icon02.png") no-repeat center center !important;
	top: 50%;
	transform: translateY(-50%);
	opacity: 1.0 !important;
}
.lb-nav a.lb-next {
	position: absolute;
	right: -40px !important;
	float: none !important;
	width: 34px !important;
	height: 51px !important;
	background: url("/service/area_marketing/images/service/modal_icon03.png") no-repeat center center !important;
	top: 50%;
	transform: translateY(-50%);
	opacity: 1.0 !important;
}
/*--------------------------------------------
	モバイル空間統計とは
---------------------------------------------*/
#mainvisual {
	background: url("/service/area_marketing/mobile_spatial_statistics/images/index_bg09.png") no-repeat center bottom;
	background-size: 100% 2px;
	padding-bottom: 80px;
}
#mainvisual > .inner-frame > img {
	display: block;
}
.box-contents-img-area > div,
.box-contents-img-area > a {
	display: block;
	position: relative;
}
.box-contents-img-area > a > img {
	display: block;
}
.box-contents-img-area > a:hover {
	opacity: 0.5;
}
.box-contents-img-area > div > span,
.box-contents-img-area > a > span {
	color: #ffffff;
	font-size: 28px;
	line-height: 1.5em;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	text-align: center;
	width: 100%;
}
.box-contents-img-area span.small {
	font-size: 50%;
}

/*--------------------------------------------
	サービスラインナップ
---------------------------------------------*/
h2.title-2-red span.label-red,
h2.title-2-red span.label-white {
	display: inline-block;
	margin-left: 10px;
	vertical-align: middle;
	line-height: 1em;
}

/*--------------------------------------------
	活用事例
---------------------------------------------*/

/*--------------------------------------------
	お問い合わせ
---------------------------------------------*/
ul.listlayout-3clm-contents > li {
	float: left;
	margin-left: 20px;
	width: 280px;
	position: relative;
}
ul.listlayout-3clm-contents > li:first-child {
	margin-left: 0;
}
ul.listlayout-3clm-contents > li > a {
	display: block;
	position: relative;
}
ul.listlayout-3clm-contents > li > a[target="_blank"]:after {
	content: "";
	background: url(/common/images/icon_blank.gif) no-repeat;
	position: absolute;
	width: 10px;
	height: 9px;
	top: 10px;
	right: 10px;
}
ul.listlayout-3clm-contents > li img {
	border: 1px solid #d9d9d9;
	-o-border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
	display: block;
	width: 100%;
	height: 100px;
}
ul.listlayout-3clm-contents > li > a > img:hover {
	border: 1px solid #cc0033; 
}

/*--------------------------------------------
	CSSアニメーション
---------------------------------------------*/
.animation-area {
	width: 100%;
	height: 300px;
}
/* 人口分布統計アニメーション */
.type-bumpu {
	background: url(/service/area_marketing/mobile_spatial_statistics/service/bumpu/images/css-animation_001-041.png) no-repeat 0 0;
	-webkit-animation: anime-bumpu 18s steps(41) infinite;
	animation: anime-bumpu 18s steps(41) infinite;
}
@-moz-keyframes anime-bumpu {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -12300px;}
}
@-webkit-keyframes anime-bumpu {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -12300px;}
}
@keyframes anime-bumpu {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -12300px;}
}

/* 人口流動統計アニメーション */
.type-ryudo {
	background: url(/service/area_marketing/mobile_spatial_statistics/service/ryudo/images/css-animation_001-111.png) no-repeat 0 0;
	-webkit-animation: anime-ryudo 18s steps(111) infinite;
	animation: anime-ryudo 18s steps(111) infinite;
}
@-moz-keyframes anime-ryudo {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -33300px;}
}
@-webkit-keyframes anime-ryudo {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -33300px;}
}
@keyframes anime-ryudo {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -33300px;}
}

/* 訪日外国人分布統計アニメーション */
.type-bumpu-foreigner {
	background: url(/service/area_marketing/mobile_spatial_statistics/service/bumpu_foreigner/images/css-animation_01-63.png) no-repeat 0 0;
	-webkit-animation: anime-bumpu-foreigner 18s steps(68) infinite;
	animation: anime-bumpu-foreigner 18s steps(68) infinite;
}
@-moz-keyframes anime-bumpu-foreigner {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -20400px;}
}
@-webkit-keyframes anime-bumpu-foreigner {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -20400px;}
}
@keyframes anime-bumpu-foreigner {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -20400px;}
}

/* 訪日外国人動態統計アニメーション */
.type-dotai {
	background: url(/service/area_marketing/mobile_spatial_statistics/service/dotai_foreigner/images/css-animation_01-59.png) no-repeat 0 0;
	-webkit-animation: anime-dotai 18s steps(70) infinite;
	animation: anime-dotai 18s steps(70) infinite;
}
@-moz-keyframes anime-dotai {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -21000px;}
}
@-webkit-keyframes anime-dotai {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -21000px;}
}
@keyframes anime-dotai {
	0% {background-position: 0px 0;}
	100% {background-position: 0 -21000px;}
}