@charset "UTF-8";
/* ------------------------------------------------------------------------
 Reset
 ------------------------------------------------------------------------ */
html, body, div, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: auto;
}

body {
	line-height: 1;
	font-family: "ヒラギノUD角ゴF W3 JIS2004", "Hiragino UD Sans F W3 JIS2004", sans-serif;
	-webkit-tap-highlight-color: transparent;
	-webkit-text-size-adjust: 100%;
}

article, aside, details, figcaption, figure,
footer, header, menu, nav, section {
	display: block;
}

nav ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

a {
	margin: 0;
	padding: 0;
	color: inherit;
	vertical-align: baseline;
	background: transparent;
	text-decoration: none;
}

ins {
	color: #000;
	text-decoration: none;
}

mark {
	color: #000000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

ul, ol {
	list-style: none;
}

.cf:after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}

body {
	color: #333333;
	width: 100%;
	position: relative;
}

html.isFixed, body.isFixed {
	position: fixed;
}

/*-------no-js----------*/
.jsc-no-js .kv-landing {
	display: none;
}

.jsc-no-js .isOutSide {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
	opacity: 1;
}

.jsc-no-js .slide-effect {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
	opacity: 1;
}

.jsc-no-js .no-script {
	display: block;
	background-color: #D34255;
	width: 100%;
	height: 100px;
	color: #FFFFFF;
	font-size: FONT_TITLE03_SP;
}

.jsc-no-js .no-script > .no-script-text {
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	line-height: 1.6;
	text-align: center;
}

.jsc-no-js .site-header {
	position: relative;
}

.jsc-no-js .section-heading {
	margin-top: 0;
}

@media print, screen and (min-width: 769px) {
	.event-contents .article-link,
	.news-contents .article-link {
		min-height: 3.2em;
	}
}

/*-------layout----------*/
.col-fullwidth {
	padding: 0 15px;
}

.col-ab {
	padding: 0;
}

.section-landing {
	padding: 50px 0 50px;
}

.section-hed {
	text-align: center;
}

/*-------font-size----------*/
body, html {
	font-size: 12px;
}

.section-title {
	font-size: 36px;
}

.section-desc {
	font-size: 14px;
}

.primary-btn {
	font-size: 14px;
}

.breadcrumbs-list > li > a {
	font-size: 9px;
}

.section-desc {
	font-size: 12px;
}

.info-hed {
	font-size: 18px;
}

.box-hed {
	font-size: 15px;
}

.box-hed-other {
	font-size: 14px;
}

/*-------font-family----------*/
.section-title {
	font-family: "Cabin", "ヒラギノUD角ゴF W3 JIS2004", sans-serif;
}

.title-text {
	font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
}

.primary-btn {
	font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
}

.box-hed-other {
	font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
}

.cabin-text {
	font-family: "Cabin", sans-serif;
}

/*-------other----------*/
.cf:after {
	content: '';
	display: block;
	clear: both;
}

.box-item > a {
	display: block;
}

.no-script {
	display: none;
}

.bold-text {
	text-decoration: underline;
	font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
}

/*-------common parts----------*/
html, body {
	position: relative;
}

.box-item + .box-item {
	margin-top: 35px;
}

.box-hed {
	margin-top: 20px;
	color: #2F4984;
	font-weight: bold;
	font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
}

.tag-item {
	display: inline-block;
	top: 2.5px;
	left: 2.5px;
	min-width: 95px;
	box-sizing: border-box;
	z-index: 10;
	line-height: 2;
	color: #FFFFFF;
	text-align: center;
	font-size: 9px;
	padding-top: 1px;
	vertical-align: middle;
}

@media (max-width: 768px) {
	.tag-item {
		padding-left: 5px;
		padding-right: 5px;
	}
}

.recruit-tag {
	background-color: #248074;
	font-size: 10px;
}

.service-tag {
	background-color: #2F4A85;
}

.opinion-tag {
	background-color: #D66994;
}

.trend-tag {
	background-color: #4575b9;
}

.tribeck-tag {
	background-color: #C04A3A;
}

.event-tag {
	background-color: #588037;
}

.news-tag {
	background-color: #3393D1;
}

.info-tag:after, .info-tag--inline {
	display: inline-block;
	min-height: 22px;
	margin-left: 20px;
	padding: 4px 14px 3px 14px;
	box-sizing: border-box;
	background-color: #DDE3ED;
	font-size: 12px;
	color: #667171;
	font-weight: normal;
}

.info-tag:after {
	content: "";
	position: absolute;
	top: -2px;
}

.info-tag--inline:nth-of-type(n+3) {
	margin-left: 10px;
}

.kv-landing {
	position: relative;
	top: 0;
	padding-top: 0;
	width: 100%;
}

.info-hed {
	position: relative;
	color: #284B77;
	padding-bottom: 10px;
	border-bottom: 2px solid #284B77;
	text-align: center;
}

.info-hed:after {
	content: "";
	display: block;
	position: absolute;
	width: 20.689%;
	height: auto;
	line-height: 0;
	overflow: hidden;
	bottom: -2px;
	border-bottom: 2px solid #CA311C;
	right: 39%;
	top: 0;
}

.breadcrumbs-list {
	padding-top: 12px;
}

.breadcrumbs-list > li {
	float: left;
}

.breadcrumbs-list > li + li {
	margin-left: 10px;
}

.breadcrumbs-list > li + li:before {
	content: "";
	display: inline-block;
	position: relative;
	width: 5px;
	height: 5px;
	border-top: 1px solid #FFFFFF;
	border-right: 1px solid #FFFFFF;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	margin-right: 10px;
}

.breadcrumbs-list > li > a {
	color: #FFFFFF;
}

.breadcrumbs-list:after {
	content: "";
	display: block;
	clear: both;
}

.section-title {
	display: inline-block;
	position: relative;
	padding-bottom: 10px;
	border-bottom: 2px solid #284B77;
	color: #284B77;
	font-weight: 600;
}

.section-title:after {
	content: "";
	display: block;
	overflow: hidden;
	position: absolute;
	bottom: -2px;
	width: 30px;
	border-bottom: 2px solid #CA311C;
	line-height: 0;
}

.title-text {
	margin-top: 10px;
	color: #284B77;
}

.title-text-pickup {
	letter-spacing: 2px;
}

.section-desc {
	margin-top: 20px;
	line-height: 1.6;
	color: #333333;
}

.scroll-link {
	position: absolute;
	bottom: 5%;
	right: 0;
	left: 0;
	width: 36px;
	margin: 0 auto;
	z-index: 15;
}

.scroll-link > a {
	position: relative;
	width: 36px;
	height: 36px;
	display: block;
	border-radius: 100%;
	border: 1px solid #FFFFFF;
}

.scroll-link > a:after {
	position: relative;
	left: 0;
	right: 0;
	top: 35%;
	content: "";
	display: block;
	height: 6px;
	width: 6px;
	margin: 0 auto;
	border-right: 2px solid #FFFFFF;
	border-bottom: 2px solid #FFFFFF;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.scroll-link > a > span {
	position: absolute;
	display: block;
	width: 100%;
	top: -20px;
	left: 0;
	right: 0;
	margin: 0 auto;
	height: 11px;
	background: url("/common/img/scroll-text.svg") no-repeat 0 0;
	background-size: 100% auto;
	text-indent: -9999px;
}

.primary-btn {
	position: relative;
	height: 50px;
	margin-top: 30px;
	border: 1px solid #284B77;
	box-sizing: border-box;
	text-align: center;
	color: #284B77;
	font-weight: bold;
}

.primary-btn--noBorder{
	border: 0px;
}

.primary-btn > a {
	display: block;
	height: 100%;
}

.primary-btn > a > span {
	display: block;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.primary-btn > a > span:after {
	content: "";
	display: inline-block;
	position: absolute;
	-webkit-transform: rotate(45deg) translateY(-50%);
	        transform: rotate(45deg) translateY(-50%);
	top: 52.1%;
	right: 9%;
	width: 8px;
	height: 8px;
	border-top: 1px solid #C9311C;
	border-right: 1px solid #C9311C;
	margin-top: -2px;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

.primary-btn.before-arrow > a > span:after {
	-webkit-transform: rotate(-135deg) translateY(50%);
	        transform: rotate(-135deg) translateY(50%);
	right: auto;
	left: 7%;
}

.primary-btn-kv {
	margin-top: 42px;
	width: 168px;
	height: 36px;
	border: 1px solid #f6f7f7;
	color: #FFFFFF;
	text-align: center;
}

.primary-btn-kv > a {
	box-sizing: border-box;
}

.box-img > span > img {
	vertical-align: bottom;
	width: 100%;
}

.box-img-desc {
	float: left;
	width: 80px;
}

.box-img-large {
	width: 100%;
	float: none;
}

.picup-landing .box-text-desc .text-item {
	font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
}

@media (max-width: 768px) {
	.kv-landing {
		height: calc(100vh - 45px);
		min-height: 200px;
	}
	.picup-landing .section-desc {
		padding-left: 15px;
		padding-right: 15px;
	}
	.picup-landing .box-text-desc .text-item {
		font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
	}
	.picup-landing .desc-item {
		padding: 15px 15px 10px;
		border-top: solid 1px #B2B9C3;
		background: #FFFFFF;
	}
	.picup-landing .content-block-pickup .desc-item {
		border-top: none;
		padding-top: 0;
		padding-left: 0;
		padding-right: 0;
	}
	.picup-landing .col-abc-desc {
		border-bottom: solid 1px #B2B9C3;
	}
	.picup-landing .box-text-desc {
		padding: 0 0 0 10px;
		font-size: 14px;
	}
	.picup-landing .box-text-large {
		padding-left: 0;
	}
}

.text-link.external-link-left {
	position: relative;
}

.text-link.external-link-left:before {
	content: "";
	background: url(/common/img/blank_icn_osl.svg) no-repeat;
	position: absolute;
	top: 3px;
	left: 0;
	width: 15px;
	height: 15px;
}

@media (max-width: 768px) {
	.text-link.external-link-left:before {
		width: 15px;
		height: 15px;
		-webkit-transition: all 0.2s ease;
		transition: all 0.2s ease;
	}
}

.desc-item {
	position: relative;
	padding: 15px 15px;
}

.desc-item > a {
	display: block;
	background-color: #FFFFFF;
}

.desc-item > a.external-link {
	position: relative;
}

.desc-item > a.external-link:after {
	content: "";
	background: url(/common/img/blank_icn_osl.svg) no-repeat;
	position: absolute;
	top: 10px;
	right: 10px;
	width: 15px;
	height: 15px;
}

@media (max-width: 768px) {
	.desc-item > a.external-link:after {
		top: 0;
		right: 0;
	}
}

.desc-item :after {
	content: "";
	display: block;
	clear: both;
}

.desc-item-desc {
	width: 50%;
	float: left;
}

.desc-item-desc > span > img {
	width: 100%;
	vertical-align: bottom;
}

.desc-item-service-column {
	padding: 0;
}

.desc-item .text-item {
	margin-top: 10px;
	font-size: 16px;
}

@media (max-width: 768px) {
	.desc-item .text-item {
		font-size: 14px;
	}
}

.content-block-pickup .desc-item > a.external-link:after {
	top: 20px;
	right: 20px;
}

@media (max-width: 768px) {
	.content-block-pickup .desc-item > a.external-link:after {
		top: 15px;
		right: 15px;
	}
}

.column-landing {
	background-color: #F7F8F8;
	border-top: 1px dotted #284B77;
}

.column-landing .col-abc-column {
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin-left: -35px;
}

.column-landing .col-abc-column > .desc-item {
	margin-left: 0;
	padding-left: 35px;
	box-sizing: border-box;
}

.col-abc-column {
	margin-top: 20px;
}

.desc-item-service-column + .desc-item-service-column {
	margin-top: 30px;
}

.text-item-column {
	font-size: 14px;
	font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
	font-weight: bold;
	color: #2B4382;
}

.box-img-desc-column {
	width: 100%;
	float: none;
}

.box-text-desc-column {
	margin-top: 0;
	padding: 20px 20px 30px;
}

.box-text {
	line-height: 1.6;
	word-break: break-all;
}

.box-text-desc {
	padding: 0 0 0 10px;
	overflow: hidden;
	color: #2B4382;
	box-sizing: border-box;
}

.box-text-desc-column {
	margin-top: 0;
	padding: 20px 20px 30px;
}

.box-text-service {
	margin-top: 5px;
	color: #333333;
}

.box-text-market {
	margin-top: 17.5px;
	color: #333333;
}

.box-text-large {
	padding: 0;
	margin-top: 10px;
	width: 100%;
}

.box-text-show {
	margin-top: 17.5px;
}

.box-text-recruit {
	margin: 17.5px 15px 0 15px;
}

.menu-text {
	position: absolute;
	right: 0;
	left: 0;
	top: 0;
	margin: 0 auto;
	display: block;
}
.no-js.isFixed .menu-text {
	display: none;
}

.close-icon,
.menu-icon {
	display: block;
	position: absolute;
	top: 20px;
	right: 0;
	width: 100%;
	height: 1px;
	-webkit-transition: -webkit-transform 0.2s ease;
	transition: -webkit-transform 0.2s ease;
	transition: transform 0.2s ease;
	transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}

.close-icon {
	height: 0;
}

.close-icon:before,
.close-icon:after,
.menu-icon:before,
.menu-icon:after {
	display: block;
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: #999;
	-webkit-transition: .3s;
	transition: .3s;
}

.menu-icon:after {
	margin-top: 15%;
}

.close-icon:before {
	margin-top: -1px;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.close-icon:after {
	margin-top: -1px;
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

.banner-link {
	position: relative;
}

.banner-link:after {
	content: "";
	display: inline-block;
	position: absolute;
	width: 7.5px;
	height: 7.5px;
	background: url("/common/img/blank_icn.svg") no-repeat;
	background-size: 101%;
	top: 8px;
	right: 9px;
}

.banner-link.banner-link-reversal:after {
	background-image: url("/common/img/blank_icn_reversal.svg");
}

.banner-text-link {
	position: relative;
}

.banner-text-link:after {
	content: "";
	display: inline-block;
	position: static;
	width: 7.5px;
	height: 7.5px;
	background: url("/common/img/blank_icn.svg") no-repeat;
	background-size: 101%;
	margin-left: 3px;
}

* + #include_recommend {
	margin-top: 100px;
}

@media (max-width: 768px) {
	* + #include_recommend {
		margin-top: 50px;
	}
}

a:hover .banner-text-link:after {
	background: url("/common/img/blank_icn_ov_blue.svg") no-repeat;
	background-size: 101%;
}

.box-item-service {
	position: relative;
	padding: 100px 30px 0 30px;
	margin: 30px auto 0 auto;
}

.box-img-service,
.box-img-service-ov {
	position: absolute;
	width: 100px;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
}

.box-img-service {
	z-index: 10;
}

.box-img-service-ov {
	z-index: 1;
}

.box-item-service {
	padding-top: 100px;
}

.box-img-service,
.box-img-service-ov {
	width: 100px;
}

.box-item-service > span > img {
	width: 100%;
}

.box-hed-service {
	margin-top: 17.5px;
	text-align: center;
	line-height: 1.4;
	text-indent: -1em;
	padding-left: 1em;
	font-weight: bold;
}

.box-text-service {
	margin-top: 17.5px;
	color: #333333;
}

.col-abc-other {
	margin-top: 20px;
}

.box-item-other + .box-item-other {
	margin-top: 30px;
}

.box-hed-other {
	margin-top: 10px;
}

.section-title-other {
	border-bottom: none;
}

.section-title-other:after {
	display: block;
	overflow: hidden;
	position: absolute;
	bottom: -2px;
	width: 100%;
	border-bottom: 2px solid #CA311C;
	line-height: 0;
}

.title-block-other {
	border-bottom: 2px solid #284B77;
}

.sticky-banner {
	position: relative;
	height: 58px;
	margin-top: 17.5px;
	line-height: 1.6;
	background-color: #FFFFFF;
}

.sticky-banner > a {
	display: block;
	height: 100%;
	padding-left: 14px;
	-webkit-transition: opacity 0.2s ease, color 0.2s ease;
	transition: opacity 0.2s ease, color 0.2s ease;
}

.gbanner > a > span:after {
	top: -17px;
}

.rbanner > a > span:after {
	top: -30px;
}

.banner-text {
	display: inline-block;
	text-align: left;
}

.banner-text > span {
	display: block;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.rbanner {
	border-left: 8px solid #922654;
	-webkit-transition: border-color 0.2s ease;
	transition: border-color 0.2s ease;
}

.rbanner > a {
	color: #922654;
}

.gbanner {
	border-left: 8px solid #9AC340;
	-webkit-transition: border-color 0.2s ease;
	transition: border-color 0.2s ease;
}

.gbanner > a {
	color: #68933a;
}

.hirameki-title > *:after {
	content: "";
	display: inline-block;
	position: static;
	width: 8px;
	height: 8px;
	background: url("/common/img/blank_icn.svg") no-repeat;
	background-size: cover;
}

.rbanner:hover {
	border-color: rgba(146, 38, 84, 0.5);
}

.gbanner:hover {
	border-color: rgba(154, 194, 64, 0.5);
}

.rbanner a:hover {
	color: rgba(146, 38, 84, 0.5);
}

.gbanner a:hover {
	color: rgba(154, 194, 64, 0.5);
}

.sticky-banner > a:hover:after {
	opacity: 0.4;
}

.service-label:before {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border: 10px solid transparent;
	right: -10px;
	top: -10px;
	-webkit-transform: rotate(-135deg);
	        transform: rotate(-135deg);
	z-index: 10;
}

.red-label:before {
	border-top: 10px solid #922654;
}

.blue-label:before {
	border-top: 10px solid #284B77;
}

.service-label-01:before {
	border-top: 10px solid #9AC340;
}

.service-label-02:before {
	border-top: 10px solid #922654;
}

.service-label-03:before {
	border-top: 10px solid #4D8DC1;
}

.arrow:before {
	content: "";
	display: inline-block;
	position: relative;
	top: -0.25em;
	left: 0;
	width: 6px;
	height: 6px;
	margin-right: 5px;
	border-top: 1px solid #C9311C;
	border-right: 1px solid #C9311C;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.arrow-large:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 40%;
	right: 9%;
	width: 8px;
	height: 8px;
	border-top: 1px solid #C9311C;
	border-right: 1px solid #C9311C;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transition: border-color 0.2s ease;
	transition: border-color 0.2s ease;
}

.arrow-small > a:before {
	content: "";
	display: inline-block;
	position: static;
	width: 5px;
	height: 5px;
	margin-bottom: 0.15em;
	margin-right: 7px;
	border-top: 1px solid #C9311C;
	border-right: 1px solid #C9311C;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.section-heading {
	width: 100%;
	background: url(/module/img/heading_kv.jpg) no-repeat;
	background-size: cover;
	position: relative;
}

.section-heading:before {
	content: "";
	display: block;
	width: 100%;
	background-color: rgba(23, 68, 117, 0.73);
	position: absolute;
	top: 0;
}

.hash-tag {
	margin-top: 20px;
	font-size: 12px;
	font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
	font-weight: bold;
	color: #6A6A82;
}

.hash-tag > span {
	display: inline-block;
	margin-right: 10px;
}

/*-------contact----------*/
.contact-landing {
	padding: 40px 0;
	background-color: #284B77;
}

.contact-landing .section-title-contact:after {
	border-bottom: none;
}

.contact-landing .section-title-contact {
	border-bottom: none;
	font-size: 22px;
	font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
	font-weight: bold;
	color: #FFFFFF;
	padding-bottom: 0;
}

.contact-landing .title-text-contact {
	color: #FFFFFF;
	margin-top: 5px;
	font-family: "Cabin", sans-serif;
}

.contact-landing .section-desc-contact {
	width: 100%;
	margin-top: 20px;
	color: #FFFFFF;
	text-align: center;
	line-height: 1.8;
}

.contact-landing .primary-btn-contact {
	margin-top: 20px;
	border: 1px solid #FFFFFF;
}

.contact-landing .primary-btn-contact > a {
	color: #FFFFFF;
	position: relative;
}

.contact-landing .primary-btn-contact > a > span:after {
	border-top: 1px solid #FFFFFF;
	border-right: 1px solid #FFFFFF;
}

.contact-icon > *:before {
	content: "";
	display: inline-block;
	position: static;
	width: 16px;
	height: 12px;
	margin-right: 6px;
	background: url("/common/img/mail_icn.svg") no-repeat;
	background-size: cover;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

/*-------breadcrumb----------*/
.breadcrumb {
	color: #FFFFFF;
	font-size: 9px;
	position: absolute;
	left: 15px;
	top: 10px;
	overflow-x: auto;
	overflow-y: hidden;
	width: 85%;
	text-align: left;
}

@media (max-width: 768px) {
	.breadcrumb {
		white-space: nowrap;
		height: 30px;
	}
}

@media print, screen and (min-width: 769px) {
	.breadcrumb {
		white-space: normal;
		height: auto;
	}
}

.breadcrumb > li {
	padding-top: 1px;
	display: inline;
}

.breadcrumb > li a {
	text-decoration: none;
	color: #FFFFFF;
}

@media (max-width: 768px) {
	.breadcrumb > li {
		display: inline-block;
	}
}

@media print, screen and (min-width: 769px) {
	.breadcrumb > li {
		display: inline;
	}
}

.breadcrumb > li + li:before {
	content: "";
	height: 5px;
	width: 5px;
	display: inline-block;
	border-top: 1px solid #FFFFFF;
	border-right: 1px solid #FFFFFF;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	margin-right: 10px;
}

/*-------page-nation----------*/
.page-number-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin: 40px auto 0 auto;
	text-align: center;
}

.page-number-arrow {
	width: 30px;
	height: 30px;
	display: inline-block;
}

.page-number-arrow > a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid #2B4382;
	vertical-align: middle;
	text-align: center;
	box-sizing: border-box;
	font-family: "Cabin", sans-serif;
}

.page-number-list {
	position: relative;
	display: inline-block;
	margin: 0 10px;
}

.page-number-list > li {
	float: left;
}

.page-number-list > li + li {
	margin-left: 10px;
}

.page-number-list > li > a {
	display: block;
	width: 30px;
	height: 30px;
	line-height: 30px;
	border: 1px solid #2B4382;
	vertical-align: middle;
	text-align: center;
	box-sizing: border-box;
	font-family: "Cabin", sans-serif;
}

.page-number-list .more-page {
	width: 20px;
	margin-left: 0;
}

.page-number-list .more-page > a {
	border: none;
}

.btn-prev-arrow:before,
.btn-next-arrow:before {
	content: "";
	display: inline-block;
	position: relative;
	top: 8px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #C9311C;
	border-right: 2px solid #C9311C;
}

.btn-prev-arrow:before {
	-webkit-transform: rotate(225deg);
	        transform: rotate(225deg);
	left: 2px;
}

.btn-next-arrow:before {
	margin-right: 5px;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	left: -1px;
}

/*-------event----------*/
.event-heading-date {
	display: block;
	margin-bottom: 5px;
	text-align: left;
	font-size: 14px;
}

@media (max-width: 768px) {
	.sp-dn {
		display: none;
	}
	.arrow-small-info > a:before {
		display: none;
	}
	.arrow-small.arrow-sp-dn > a:before {
		display: none;
	}
}

.arrow:before {
	content: "";
	display: inline-block;
	position: relative;
	top: -0.25em;
	left: 0;
	width: 6px;
	height: 6px;
	margin-right: 5px;
	border-top: 1px solid #C9311C;
	border-right: 1px solid #C9311C;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.arrow-service:before {
	content: "";
	display: inline-block;
	position: relative;
	top: -0.25em;
	left: 0;
	width: 6px;
	height: 6px;
	margin-right: 5px;
	border-top: 1px solid #C9311C;
	border-right: 1px solid #C9311C;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	top: -0.15em;
}

.arrow-large:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 40%;
	right: 9%;
	width: 8px;
	height: 8px;
	border-top: 1px solid #C9311C;
	border-right: 1px solid #C9311C;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transition: border-color 0.2s ease;
	transition: border-color 0.2s ease;
}

.arrow-small > a:before {
	content: "";
	display: inline-block;
	position: static;
	width: 5px;
	height: 5px;
	margin-bottom: 0.15em;
	margin-right: 7px;
	border-top: 1px solid #C9311C;
	border-right: 1px solid #C9311C;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.arrow-ex-small > a:before {
	content: "";
	display: inline-block;
	position: static;
	width: 4px;
	height: 4px;
	margin-bottom: 0.25em;
	margin-right: 7px;
	border-top: 1px solid #C9311C;
	border-right: 1px solid #C9311C;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

/*-------show case----------*/
.showcase-tag {
	margin-top: 15px;
	font-size: 11px;
}

.showcase-tag > span {
	display: inline-block;
	margin-bottom: 10px;
	color: #6A6A82;
}

.box-hed-show {
	line-height: 1.4;
	margin-top: 17.5px;
}

/*-------fb-tag----------*/
.fb-like {
	float: right;
}

.box-text-desc {
	font-size: 0;
	padding: 20px 15px 30px;
}

/*-------pc----------*/
@media print, screen and (min-width: 769px) {
	.nav-fixed {
		position: fixed;
		z-index: 10;
	}
	.nav-absolute {
		position: absolute;
		z-index: 10;
	}
	/*-------layout----------*/
	.col-fullwidth,
	.col-sp {
		max-width: 1024px;
		margin: 0 auto;
		padding: 0;
	}
	.col-abc + .col-abc {
		margin-top: 40px;
	}
	.col-abcd,
	.col-abc,
	.col-ab {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
	.col-abcd.is-wrap,
	.col-abc.is-wrap,
	.col-ab.is-wrap {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	.col-abcd {
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}
	.col-abcd > * {
		width: auto;
	}
	.col-abc > * {
		width: 33.33%;
	}
	.col-ab > * {
		width: 50%;
	}
	.recruit-landing .col-sp {
		display: flex;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: flex-start;
	}
	.box-item + .box-item,
	.info-item + .info-item {
		margin-left: 40px;
	}
	.col-abc .desc-item {
		min-height: 328px;
	}
	.section-landing {
		padding: 95px 0 80px;
	}
	.section-hed {
		text-align: center;
	}
}

@media print, screen and (min-width: 769px) and (min-width: 769px) {
	.section-hed .section-title:after {
		left: 50%;
		margin-left: -50%;
	}
}

@media print and (max-width: 768px), screen and (min-width: 769px) and (max-width: 768px) {
	.section-hed .section-title:after {
		left: 50%;
		margin-left: -50%;
	}
}

@media print, screen and (min-width: 769px) {
	.site-nav {
		float: right;
	}
	/*-------font-size----------*/
	body, html {
		font-size: 16px;
	}
	.section-title {
		font-size: 48px;
	}
	.section-desc {
		font-size: 20px;
	}
	.primary-btn {
		font-size: 20px;
	}
	.info-hed {
		font-size: 30px;
	}
	.box-hed {
		font-size: 15px;
	}
	.box-hed-recruit {
		font-size: 20px;
	}
	.box-hed-other {
		font-size: 18px;
	}
	/*-------font-family----------*/
	.primary-btn {
		font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
	}
	.info-hed {
		font-family: "ヒラギノUD角ゴF W3 JIS2004", "Hiragino UD Sans F W3 JIS2004", sans-serif;
	}
	/*-------other----------*/
	.pc-dn {
		display: none;
	}
	.box-img-package > span > img {
		max-width: 226px;
	}
	.cf:after {
		content: '';
		display: block;
		clear: both;
	}
	.box-img {
		overflow: hidden;
	}
	/*-------hover text color----------*/
	a {
		color: #2B4382;
		-webkit-transition: color 0.2s ease;
		transition: color 0.2s ease;
	}
	a:hover,
	a:hover .box-hed {
		color: #3E7DBA;
	}
	/*-------common parts----------*/
	.box-item + .box-item {
		margin-top: 0;
		margin-left: 40px;
	}
	.tag-item {
		min-width: 112px;
		padding: 0 20px;
		box-sizing: border-box;
		color: #FFFFFF;
		text-align: center;
		font-size: 12px;
		font-weight: normal;
		line-height: 26px;
		vertical-align: middle;
	}
	.scroll-link {
		position: absolute;
		bottom: 30px;
		right: 0;
		left: 0;
		width: 60px;
		margin: 0 auto;
	}
	.scroll-link > a {
		width: 60px;
		height: 60px;
		border: 1px solid #FFFFFF;
		top: 0;
		-webkit-transition: top 0.3s ease;
		transition: top 0.3s ease;
	}
	.scroll-link > a:hover {
		top: 10px;
	}
	.scroll-link > a:after {
		content: "";
		display: block;
		position: relative;
		width: 11px;
		height: 11px;
		top: 20px;
	}
	.scroll-link > a > span {
		width: 65px;
		top: -30px;
	}
	.section-title {
		padding-bottom: 13px;
		font-weight: 600;
		letter-spacing: 3px;
		border-bottom: 2px solid #284B77;
	}
	.section-title:after {
		content: "";
		display: block;
		overflow: hidden;
		position: absolute;
		bottom: -2px;
		width: 40px;
		border-bottom: 2px solid #CA311C;
		line-height: 0;
	}
	.section-hed .title-text {
		margin-top: 15px;
	}
	.section-desc {
		margin-top: 40px;
	}
	.hamburger-menu,
	.menu-text {
		display: none;
	}
	.primary-btn {
		height: 68px;
	}
	.primary-btn > a {
		background-color: transparent;
		-webkit-transition: background-color 0.2s ease, color 0.2s ease;
		transition: background-color 0.2s ease, color 0.2s ease;
	}
	.primary-btn > a > span:after {
		right: 40px;
		width: 12px;
		height: 12px;
		border-top: 2px solid #CA311C;
		border-right: 2px solid #CA311C;
	}
	.primary-btn:hover > a {
		background-color: #284B77;
		color: #FFFFFF;
	}
	.primary-btn:hover > a > span:after {
		border-top: 2px solid #FFFFFF;
		border-right: 2px solid #FFFFFF;
	}
	.primary-btn.before-arrow > a > span:after {
		top: 0;
		bottom: 0;
		margin-top: auto;
		margin-bottom: auto;
		left: 34px;
		right: auto;
		-webkit-transform: rotate(-135deg);
		        transform: rotate(-135deg);
	}
	a:hover .box-img > span > img {
		-webkit-transform: scale(1.05);
		transform: scale(1.05);
	}
	a:hover .box-img-package > span > img {
		-webkit-transform: none;
		transform: none;
	}
	a:hover .mega-img > span > img {
		-webkit-transform: scale(1.05);
		transform: scale(1.05);
	}
	a:hover .box-text {
		color: #3E7DBA;
	}
	.box-hed-other {
		margin-top: 20px;
		font-size: 18px;
	}
	.box-img > span > img {
		-webkit-transition: -webkit-transform 0.25s ease;
		transition: -webkit-transform 0.25s ease;
		transition: transform 0.25s ease;
		transition: transform 0.25s ease, -webkit-transform 0.25s ease;
	}
	.box-img-desc {
		width: 100%;
		float: none;
	}
	.box-img-show {
		border: 1px solid #DDE3ED;
	}
	.box-img-large {
		max-width: 671px;
		overflow: hidden;
		vertical-align: bottom;
		box-sizing: border-box;
	}
	.box-img-large > span > img {
		width: 100%;
	}
	.mega-img {
		overflow: hidden;
	}
	.mega-img > span > img {
		-webkit-transition: -webkit-transform 0.3s ease;
		transition: -webkit-transform 0.3s ease;
		transition: transform 0.3s ease;
		transition: transform 0.3s ease, -webkit-transform 0.3s ease;
	}
	.box-text {
		line-height: 1.6;
	}
	.box-text-desc {
		float: none;
		width: 100%;
		padding: 20px 15px 30px;
		line-height: 1.6;
		font-size: 0;
	}
	.box-text-service {
		margin-top: 20px;
		font-size: 14px;
		line-height: 1.6;
		color: #333333;
	}
	.box-text-market {
		margin-top: 11px;
		color: #333333;
	}
	.box-text-large {
		margin-top: 26px;
		padding: 0;
	}
	.box-text-show {
		margin-top: 20px;
	}
	.box-text-recruit {
		margin: 20px 0 0 0;
		line-height: 1.75;
	}
	.box-text-package {
		margin-top: 14px;
	}
	a:hover .arrow:before {
		opacity: 0.7;
	}
	a:hover .arrow-service:before {
		opacity: 0.7;
	}
	.arrow-small > a:hover:before {
		opacity: 0.7;
	}
	.sticky-banner {
		height: 95px;
		margin-top: 20px;
		padding-left: 0;
	}
	.sticky-banner a {
		display: block;
		padding: 0 23px;
	}
	.desc-item {
		margin: 0;
		padding: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.desc-item.box-text {
		font-family: "ヒラギノUD角ゴF W5 JIS2004", "Hiragino UD Sans F W5 JIS2004", sans-serif;
		font-size: 18px;
	}
	.desc-item > a {
		height: auto;
		-webkit-transition: box-shadow 0.2s ease;
		transition: box-shadow 0.2s ease;
	}
	.desc-item > a:hover {
		box-shadow: 0px 0px 17px 4px #dddddd;
	}
	.desc-item .text-item {
		margin-top: 20px;
		font-size: 16px;
	}
	.text-item-column {
		font-size: 16px;
	}
	.desc-item-service-column + .desc-item-service-column {
		margin-top: 0;
		margin-left: 35px;
	}
	.col-abc-column {
		margin-top: 40px;
	}
	.box-text-desc-column {
		margin-top: 0;
	}
	.banner-link:after {
		display: none;
	}
	.banner-link > a:after {
		content: "";
		display: inline-block;
		position: absolute;
		width: 13px;
		height: 13px;
		background: url("/common/img/blank_icn.svg") no-repeat;
		background-size: cover;
		top: 10px;
		right: 9px;
	}
	.banner-link.banner-link-reversal > a:after {
		background-image: url("/common/img/blank_icn_reversal.svg");
	}
	.hirameki-title > *:after {
		content: "";
		display: inline-block;
		position: static;
		width: 13px;
		height: 13px;
	}
	a:hover .hirameki-title > *:after {
		opacity: 0.7;
	}
	.section-heading {
		margin-top: 110px;
	}
	.consulting-bg,
	.creative-bg,
	.techno-bg,
	.market-bg {
		background-size: 140px;
		-webkit-transition: background 0.2s ease;
		transition: background 0.2s ease;
	}
	a:hover .consulting-bg {
		background: url("/common/img/consulting_icn_ov.png") no-repeat 50% 0;
		background-size: 140px;
	}
	a:hover .creative-bg {
		background: url("/common/img/creative_icon_ov.png") no-repeat 50% 0;
		background-size: 140px;
	}
	a:hover .techno-bg {
		background: url("/common/img/techno_icn_ov.png") no-repeat 50% 0;
		background-size: 140px;
	}
	a:hover .market-bg {
		background: url("/common/img/market_icn_ov.png") no-repeat 50% 0;
		background-size: 140px;
	}
	.box-item-service {
		margin-top: 0;
		padding: 140px 0 0 0;
	}
	.box-item-service + .box-item-service {
		margin-top: 0;
	}
	.box-img-service,
	.box-img-service-ov {
		width: 140px;
	}
	.box-img-service {
		opacity: 1;
		-webkit-transition: opacity 0.2s ease;
		transition: opacity 0.2s ease;
	}
	a:hover .box-img-service {
		opacity: 0;
	}
	a:hover .box-img-service > span > img {
		-webkit-transform: none;
		transform: none;
	}
	a:hover .box-img-service-ov > span > img {
		-webkit-transform: none;
		transform: none;
	}
	.box-hed-service {
		margin-top: 34px;
		line-height: 1.3;
		font-size: 20px;
	}
	.box-hed-market {
		margin-top: 18px;
	}
	.box-text-service {
		margin-top: 25px;
		color: #333333;
	}
	.service-label {
		-webkit-transition: border 0.2s ease;
		transition: border 0.2s ease;
	}
	a:hover .red-label {
		border: 1px solid #922654;
	}
	a:hover .blue-label {
		border: 1px solid #284B77;
	}
	a:hover .service-label-01 {
		border: 1px solid #9AC340;
	}
	a:hover .service-label-02 {
		border: 1px solid #922654;
	}
	a:hover .service-label-03 {
		border: 1px solid #4D8DC1;
	}
	/*-------contact----------*/
	.contact-landing {
		padding: 60px 0;
	}
	.contact-landing .section-title-contact {
		font-size: 30px;
	}
	.contact-landing .title-text-contact {
		margin-top: 20px;
	}
	.contact-landing .section-desc-contact {
		text-align: center;
	}
	.contact-landing .primary-btn-contact {
		margin-top: 40px;
		height: 80px;
	}
	.contact-landing .primary-btn-contact > a {
		background-color: transparent;
		-webkit-transition: all 0.2s ease;
		transition: all 0.2s ease;
	}
	.contact-landing .primary-btn-contact > a > span {
		position: relative;
	}
	.contact-landing .primary-btn-contact > a > span:after {
		border-top: 2px solid #FFFFFF;
		border-right: 2px solid #FFFFFF;
	}
	.contact-landing .primary-btn-contact > .contact-icon:hover {
		background-color: #FFFFFF;
		color: #284B77;
	}
	.contact-landing .primary-btn-contact > .contact-icon:hover > span:after {
		border-top: 2px solid #284B77;
		border-right: 2px solid #284B77;
	}
	.contact-landing .primary-btn-contact > a:hover > span:before {
		background: url("/common/img/mail_icn_ov.svg") no-repeat;
		background-size: cover;
	}
	.contact-landing .contact-icon > *:before {
		content: "";
		display: inline-block;
		position: static;
		width: 18px;
		height: 14px;
		margin-right: 6px;
		background: url("/common/img/mail_icn.svg") no-repeat;
		background-size: cover;
		-webkit-transition: all 0.2s ease;
		transition: all 0.2s ease;
	}
	/*-------info----------*/
	.info-hed {
		color: #284B77;
		padding-bottom: 16px;
		border-bottom: 2px solid #284B77;
		text-align: center;
	}
	.info-hed:after {
		content: "";
		display: block;
		overflow: hidden;
		position: absolute;
		width: 23%;
		right: 38%;
		top: 0;
		bottom: -2px;
		border-bottom: 2px solid #CA311C;
		line-height: 0;
	}
	/*-------breadcrumb----------*/
	.breadcrumb {
		font-size: 12px;
		left: 22px;
		top: 16px;
	}
	.breadcrumb > li + li:before {
		content: "";
		height: 5px;
		width: 5px;
		display: inline-block;
		border-top: 1px solid #FFFFFF;
		border-right: 1px solid #FFFFFF;
		-webkit-transform: rotate(45deg);
		        transform: rotate(45deg);
		margin-right: 15px;
		margin-left: 10px;
		margin-bottom: 1px;
	}
	/*-------page-nation----------*/
	.page-number-box {
		margin-top: 75px;
	}
	.page-number-arrow {
		width: 40px;
		height: 40px;
	}
	.page-number-list {
		margin: 0 20px;
	}
	.page-number-list > li + li {
		margin-left: 20px;
	}
	.page-number-list > li > a {
		width: 40px;
		height: 40px;
		line-height: 40px;
	}
	.btn-prev-arrow:before,
	.btn-next-arrow:before {
		top: 13px;
	}
	/*-------show case----------*/
	.showcase-landing .box-hed {
		font-size: 18px;
	}
	.showcase-tag > span {
		font-size: 14px;
	}
	.showcase-landing .col-abc {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-around;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.box-hed-show {
		margin-top: 20px;
		font-size: 18px;
	}
	.showcase-tag {
		margin-top: 27px;
	}
	.showcase-landing .primary-btn {
		margin-top: 60px;
	}
	/*-------other-contents----------*/
	.col-abc-other {
		margin-top: 40px;
	}
	.box-item-other + .box-item-other {
		margin-top: 0;
	}
	.section-title-other {
		border-bottom: none;
	}
	.section-title-other:after {
		display: block;
		overflow: hidden;
		position: absolute;
		bottom: -2px;
		width: 100%;
		border-bottom: 2px solid #CA311C;
		line-height: 0;
	}
	.title-block-other {
		border-bottom: 2px solid #284B77;
	}
	.side-nav-current:after {
		content: "";
		display: inline-block;
		position: absolute;
		width: 100%;
		background-color: #ddd;
	}
}

/*-------font-size----------*/
.subnav-list > li > a {
	font-size: 10.5px;
}

/*-------icon-setting----------*/
.main-link > li:after,
.contact-link > li:after {
	content: "";
	display: inline-block;
	position: absolute;
	width: 8px;
	height: 8px;
	right: 15px;
	top: 17px;
	border-top: 1px solid #C9311C;
	border-right: 1px solid #C9311C;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.contact-link > li:after {
	right: 15px;
	border-top: 1px solid #FFFFFF;
	border-right: 1px solid #FFFFFF;
}

.contact-link > li:before {
	content: "";
	display: block;
	position: absolute;
	width: 12px;
	height: 9px;
	margin-right: 7px;
	background: url(/common/img/mail_icn.svg) no-repeat;
	background-size: cover;
	margin-top: 17px;
	margin-left: 15px;
}

/*-------to top----------*/
.totop-link {
	position: relative;
	width: 100%;
	-webkit-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
	z-index: 100;
}

.totop-link.is-fixed {
	position: fixed;
	bottom: 10px;
	z-index: 1;
}

.totop-link > a {
	position: relative;
	top: 0;
	display: block;
	width: 45px;
	height: 45px;
	margin-left: auto;
	margin-right: 12px;
	border-radius: 100%;
	background-color: #2A4E7C;
	-webkit-transition: top 0.3s ease;
	transition: top 0.3s ease;
}

.totop-link > a:hover {
	top: -10px;
}

.totop-link > a:after {
	content: "";
	display: block;
	position: relative;
	width: 6px;
	height: 6px;
	left: 18px;
	top: 18px;
	border-left: 2px solid #FFFFFF;
	border-top: 2px solid #FFFFFF;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.totop-link > a > span {
	position: relative;
	top: -20px;
	color: #FFFFFF;
	font-family: "Cabin", sans-serif;
}

/*-------footer----------*/
footer {
	padding-top: 120px;
	background-color: #fff;
	font-family: '游ゴシック体', 'Yu Gothic', 'Yu Gothic Medium', 'YuGothic', sans-serif;
	font-weight: 500;
}

.site-footer .social {
	width: 1360px;
	margin: 0 auto 85px;
	padding: 0 45px;
	text-align: right;
}
@media (max-width: 768px) {
	.site-footer .social {
		width: inherit;
		margin: 0 auto 85px;
		padding: 0 20px;
	}
}


.site-footer .social .social__list {
	display: inline-block;
	font-size: 0;
}

.site-footer .social .social__list li {
	display: inline-block;
	padding-left: 20px;
}

.site-footer .social .social__list li:first-child {
	padding-left: 0;
}

.site-footer .sitemap .sitemap__inner {
	position: relative;
	display: table;
	width: 1370px;
	margin: 0 auto;
	padding-bottom: 30px;
}

.site-footer .sitemap .sitemap__item {
	display: table-cell;
	width: 245px;
	padding-right: 35px;
}

.site-footer .sitemap .sitemap__item--recruit {
	padding-right: 0;
}

.site-footer .sitemap .sitemap__item--showcase {
	position: absolute;
	top: 75px;
	left: 0;
}
.site-footer .sitemap .sitemap__item--event {
	position: absolute;
	top: 150px;
	left: 0;
}
.site-footer .sitemap .sitemap__item--media {
	position: absolute;
	bottom: 0px;
	right: 280px;
	padding-top: 30px;
	padding-right: 0;
	border-top: solid 1px #707070;
}
.site-footer .sitemap .sitemap__item--other {
	position: absolute;
	top: 175px;
	right: 0;
	padding-right: 0;
}
.site-footer .sitemap .sitemap__item--other .jsc-accordion-trigger a {
	pointer-events: none;
	color: #444;
}

.site-footer .sitemap h2 {
	margin-bottom: 30px;
	padding-bottom: 14px;
	border-bottom: solid 1px #707070;
	font-size: 18px;
	font-weight: bold;
	color: #444;
	letter-spacing: 0.025em;
}

.site-footer .sitemap .sitemap__list a {
	font-size: 14px;
	color: #444;
	letter-spacing: 0.025em;
}
.site-footer .sitemap .sitemap__list a[target="_blank"]:after {
	content: '';
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-left: 5px;
	background: url(/common/img/blank_icn.svg) no-repeat;
	background-size: contain;
}

.site-footer .sitemap .sitemap__list li {
	margin-bottom: 30px;
}
.site-footer .sitemap .sitemap__list li.index-menu__sp {
	display: none;
}
.site-footer .site-footer-lower {
	margin-bottom: 25px;
	padding: 0 45px;
}

.site-footer .site-footer-lower__inner {
	display: table;
	width: 100%;
	max-width: 1700px;
	min-width: 1360px;
	margin: 0 auto;
}

.site-footer .lower-menu {
	display: table-cell;
	vertical-align: middle;
}

.site-footer .lower-menu li {
	display: inline-block;
	padding-right: 30px;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.025em;
}

.site-footer .lower-menu li a {
	color: #0E1C7F;
}

.site-footer .lower-badges {
	display: table-cell;
	width: 640px;
	padding-right: 45px;
	vertical-align: middle;
}

.site-footer .lower-badges .lower-badges-inner {
	display: table;
	width: 100%;
}

.site-footer .lower-badges .lower-badges-image {
	display: table-cell;
	vertical-align: middle;
}
.site-footer .lower-badges .lower-badges-image img {
	height: 90px;
}

.site-footer .lower-badges .lower-badges-text {
	display: table-cell;
	padding: 0 10px;
	vertical-align: middle;
	color: #333;
	font-size: 14px;
	line-height: 1.6;
}

.site-footer address {
	padding: 0 45px;
	background-color: #00227c;
}

.site-footer address .footer-address-inner {
	display: table;
	width: 100%;
	height: 150px;
	min-width: 1360px;
	margin: 0 auto;
	box-sizing: border-box;
	background-color: #00227c;
	color: #fff;
}

.site-footer address .footer-company-logo {
	display: table-cell;
	vertical-align: middle;
}

.site-footer address .footer-copyright {
	display: table-cell;
	padding-right: 45px;
	vertical-align: middle;
	text-align: right;
	font-style: normal;
	font-weight: normal;
	font-size: 13px;
	letter-spacing: 0.025em;
}
.site-footer address .footer-copyright img {
	width: 230px;
	height: 63px;
}

@media print, screen and (min-width: 768px) and (max-width: 1470px){
	.footer__sitemap .footer__sitemap--inner {
		padding: 0 30px;
	}
	.footer__sitemap .footer__sitemap--item.showcase,
	.footer__sitemap .footer__sitemap--item.event {
		left: 30px;
	}
}

@media screen and (max-width: 640px) {
	footer {
		margin-top: 30px;
		padding-top: 60px;
	}
	.site-footer .social {
		margin-bottom: 20px;
	}
	.site-footer .social a {
		display: block;
	}
	.site-footer .social a img {
		width: 40px;
	}
	.site-footer .social .social__list li {
		padding-left: 10px;
	}
	.site-footer .sitemap {
		margin-bottom: 30px;
	}
	.site-footer .sitemap .sitemap__inner {
		display: block;
		width: inherit;
		padding: 0 20px;
	}
	.site-footer .sitemap .sitemap__item {
		display: block;
		width: inherit;
		padding-right: 0;
	}
	.site-footer .sitemap .sitemap__item--recruit,
	.site-footer .sitemap .sitemap__item--media {
		display: none;
	}
	.site-footer .sitemap .sitemap__item--showcase,
	.site-footer .sitemap .sitemap__item--event,
	.site-footer .sitemap .sitemap__item--other {
		position: relative;
		top: inherit;
		left: inherit;
		right: inherit;
	}
	.site-footer .sitemap h2 {
		margin-bottom: 0;
		padding-bottom: 0;
		font-weight: normal;
	}
	.site-footer .sitemap h2 a {
		display: block;
		padding: 20px 0 16px;
		color: #444;
	}
	.site-footer .sitemap .sitemap__list li.index-menu__sp {
		display: inherit;
	}
	.site-footer .sitemap .jsc-accordion-trigger {
		z-index: 10;
		position: relative;
	}
	.site-footer .sitemap .jsc-accordion-trigger:before {
		position: absolute;
		top: 25px;
		right: 0;
		content: '';
		display: inline-block;
		width: 20px;
		height: 20px;
		border-top: solid 1px #444;
	}
	.site-footer .sitemap .active-nav .jsc-accordion-trigger:before {
		transform: rotate(0deg);
	}
	.site-footer .sitemap .more-nav .jsc-accordion-trigger:before {
		transform: rotate(0deg);
	}
	.site-footer .sitemap .more-nav .jsc-accordion-trigger:after {
		position: absolute;
		top: 15px;
		right: 8px;
		content: '';
		display: inline-block;
		width: 1px;
		height: 20px;
		border-left: solid 1px #444;
	}
	.site-footer .sitemap .jsc-accordion-trigger a {
		pointer-events: none;
		z-index: 1;
	}
	.site-footer .sitemap .sitemap__list {
		margin-top: 5px;
		margin-bottom: 10px;
	}
	.site-footer .sitemap .sitemap__list a {
		display: block;
		padding: 15px 0 15px 20px;
	}
	.site-footer .sitemap .sitemap__list li {
		margin-bottom: 0;
	}
	.site-footer .site-footer-lower {
		margin-bottom: 6.67%;
		padding: 0 5.334%;
	}
	.site-footer .site-footer-lower__inner {
		min-width: inherit;
	}
	.site-footer .lower-menu {
		display: block;
		margin-bottom: 2.986%;
	}
	.site-footer .lower-menu li {
		display: block;
		padding-right: 0;
		text-align: center;
		line-height: inherit;
	}
	.site-footer .lower-menu li a {
		display: block;
		padding: 4.48% 0;
	}

	.site-footer .lower-badges {
		display: block;
		width: inherit;
		padding-right: 0;
	}

	.site-footer .lower-badges .lower-badges-image img {
		width: auto;
		height: 55px;
	}
	.site-footer .lower-badges .lower-badges-text {
		font-size: 12px;
	}

	.site-footer address {
		padding: 0;
	}
	.site-footer address .footer-address-inner {
		display: block;
		height: auto;
		max-width: inherit;
		min-width: inherit;
		padding: 9.87% 0 2.67%;
	}
	.site-footer address .footer-company-logo {
		display: block;
		margin-bottom: 7.2%;
		text-align: center;
	}
	.site-footer address .footer-company-logo img {
		width: 60vw;
		height: auto;
	}
	.site-footer address .footer-copyright {
		display: block;
		padding-right: 0;
		text-align: center;
		font-size: 2.93333vw;
		letter-spacing: 0.33px;
	}
}


@media print, screen and (min-width: 769px) {
	/*-------to top----------*/
	.totop-link {
		right: 0;
		left: 0;
		width: 60px;
		margin: 0 auto;
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
	.totop-link.is-fixed {
		position: fixed;
		bottom: 10px;
		z-index: 1;
	}
	.totop-link > a {
		width: 60px;
		height: 60px;
		margin: 0 auto;
	}
	.totop-link > a:after {
		left: 25px;
		top: 25px;
		height: 8px;
		width: 8px;
	}
}

/*-------font-size----------*/
.nav-list > li > a {
	font-size: 18px;
	font-family: '游ゴシック体', 'Yu Gothic', 'Yu Gothic Medium', 'YuGothic', sans-serif;
}

/*-------z-index----------*/
.site-header {
	z-index: 30;
}

.site-nav {
	z-index: 10;
}

/*-------icon-setting----------*/
.nav-list li > a:after {
	content: "";
	display: inline-block;
	position: absolute;
	width: 8px;
	height: 8px;
	right: 15px;
	border-top: 1px solid #FFFFFF;
	border-right: 1px solid #FFFFFF;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	top: 40%;
}

.nav-list .active-nav > a:after {
	top: 22px;
	border-top: 1px solid #444;
	width: 20px;
	right: 0;
	border-right: none;
	-webkit-transform: rotate(0deg);
	        transform: rotate(0deg);
}

.nav-list .more-nav > a:after {
	top: 22px;
	right: 0;
	width: 20px;
	border-top: 1px solid #444;
	border-right: none;
	-webkit-transform: rotate(0deg);
	        transform: rotate(0deg);
}

.nav-list .more-nav > a:before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 20px;
	height: 20px;
	top: 13px;
	right: -10.5px;
	border-left: 1px solid #444;
}

/*-------header----------*/
.site-header {
	top: 0;
	min-height: 110px;
	background-color: #FFFFFF;
}

.logo-img {
	float: left;
	width: 220px;
	height: 37px;
	padding: 23px 0 0 58px;
}
@media (max-width: 768px) {
	.logo-img {
		width: 143px;
		padding: 36px 0 0 23px;
	}
}

.logo-img > a {
	display: block;
}

.logo-img > a > img {
	width: 100%;
}

.hamburger-box {
	position: relative;
	top: 42px;
	right: 0;
	left: 0;
	float: right;
	width: 45px;
	height: 45px;
	margin-right: 22px;
}

@media (max-width: 768px) {
	.hamburger-box {
		z-index: 21;
	}
}

.hamburger-menu {
	display: block;
	width: 100%;
	height: 100%;
}

/*-------navi----------*/
.site-nav {
	width: 90.625%;
	position: absolute;
	right: 0;
}

.nav-list {
	border-bottom: 1px solid #444;
}

.nav-list > li + li {
	border-top: 1px solid #444;
}

.nav-list > li.active-nav + li {
	border-top: 0;
}

.nav-list > li > a {
	display: block;
	position: relative;
	padding: 15px 0 14px 0;
	color: #444;
	letter-spacing: 0.025em;
}

.mega-box {
	opacity: 0;
}

.nav-sublist > li {
	position: relative;
}

.info-link > li,
.contact-link > li {
	position: relative;
}

.info-link > li {
	float: none;
}

.info-link > li + li {
	border-left: none;
}

.info-link > li > a {
	padding: 0 0 0 28.5px;
	font-weight: 500;
}

.nav-sublist > li > a,
.info-link > li > a {
	display: block;
	padding: 10px 0 15px 21px;
	color: #444;
	line-height: 1.6;
	font-size: 16px;
	font-family: '游ゴシック体', 'Yu Gothic', 'Yu Gothic Medium', 'YuGothic', sans-serif;
	letter-spacing: 0.025em;
}

.info-link > li > a {
	display: block;
	padding: 0 0 0 36px;
	color: #FFFFFF;
	line-height: 1.6;
}

.contact-link > li > a {
	color: #FFFFFF;
	padding: 15px 14px 14px 34px;
}

@media (max-width: 768px) {
	/*-------icon-setting----------*/
	.info-link > li:before {
		content: "";
		display: inline-block;
		position: absolute;
		width: 4px;
		height: 4px;
		top: 7px;
		left: 17.5px;
		border-right: 1px solid #FFFFFF;
		border-bottom: 1px solid #FFFFFF;
		-webkit-transform: rotate(-45deg);
		        transform: rotate(-45deg);
	}
	.overlay {
		width: 100%;
		height: 100%;
		position: fixed;
		background: #FFFFFF;
		opacity: 0.95;
		top: 0;
		z-index: 21;
		display: none;
	}
	.site-nav {
		right: 12%;
		width: 76%;
	}
	.site-nav .nav-list {
		margin-bottom: 50px;
	}
	.info-link {
		display: none;
		padding: 20px 0 100px;
	}
	.info-link > li {
		position: relative;
	}
	.info-link > li + li {
		margin-top: 20px;
	}
	.info-link > li > a {
		display: block;
		padding-left: 28px;
		color: #444;
		line-height: 1.6;
	}
	.contact > a {
		padding-left: 32.5px;
	}
	.nav-wrapper {
		position: fixed;
		width: 100%;
		height: 85%;
		overflow-y: auto;
		-webkit-transition: transform .4s;
		-webkit-transition: -webkit-transform .4s;
		transition: -webkit-transform .4s;
		transition: transform .4s;
		transition: transform .4s, -webkit-transform .4s;
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
		top: 45px;
		z-index: 21;
	}
	.nav-wrapper.isShow {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	.mega-box {
		display: none;
	}
}

/*-------header width setting----------*/
@media (max-width: 768px) {
	.site-header {
		min-width: 100%;
	}
}

@media print, screen and (max-width: 1024px) and (min-width: 769px) {
	.site-header {
		min-width: 1024px;
	}
}

@media print, screen and (min-width: 1024px) {
	.site-header {
		min-width: 100%;
	}
}

/*-------pc----------*/
@media print, screen and (min-width: 769px) {
	/*-------font-size----------*/
	.nav-list > li > a {
		font-size: 18px;
	}
	.info-link > li > a {
		font-size: 14px;
	}
	.mega-title {
		font-size: 24px;
	}
	.close-btn > span {
		font-size: 11px;
	}
	/*-------font-family----------*/
	.nav-list > li > a {
		font-family: '游ゴシック体', 'Yu Gothic', 'Yu Gothic Medium', 'YuGothic', sans-serif;
	}
	.close-btn > span {
		font-family: "Cabin", sans-serif;
	}
	/*-------font-weight----------*/
	.nav-list > li > a {
		font-weight: 500;
	}
	/*-------z-index----------*/
	.mega-box {
		z-index: 30;
	}
	/*-------icon-setting----------*/
	.nav-list > li > a:after,
	.nav-list .more-nav > a:before,
	.nav-list .avtive-nav > a:after {
		display: none;
	}
	.nav-list .more-nav > a:after {
		content: "";
		display: inline-block;
		position: relative;
		width: 8px;
		height: 8px;
		right: auto;
		top: -4px;
		margin-left: 20px;
		border-top: none;
		border-bottom: 1px solid #284C78;
		border-right: 1px solid #284C78;
		-webkit-transform: rotate(45deg);
		        transform: rotate(45deg);
	}
	/*-------header----------*/
	.site-header {
		position: fixed;
		height: 110px;
		overflow: hidden;
	}
	.scroll-nav .info-link {
		display: none;
	}
	.scroll-nav .site-nav {
		margin-top: 20px;
	}
	.site-nav {
		position: static;
		width: 870px;
		margin: 50px 0 0 0;
		overflow-y: auto;
	}
	.nav-list {
		border-bottom: none;
	}
	.nav-list > li {
		float: left;
		position: relative;
	}
	.nav-list > li + li {
		border-top: none;
		margin-left: 35px;
	}
	.nav-list > li > a {
		padding: 15px 10px;
		color: #0E1C7F;
		text-align: center;
		-webkit-transition: background-color 0.2s ease;
		transition: background-color 0.2s ease;
	}
	.avtive-nav > a {
		background: none;
	}
	.nav-list > .more-nav > a:before,
	.nav-list > li > a:before {
		content: "";
		display: block;
		position: absolute;
		width: 0;
		height: 2px;
		border-left: none;
		background: #284B77;
		top: auto;
		bottom: 0;
		right: 50%;
		left: 50%;
		-webkit-transition: width 0.2s ease, right 0.2s ease, left 0.2s ease;
		transition: width 0.2s ease, right 0.2s ease, left 0.2s ease;
	}
	.nav-list > li > .is-active:before {
		width: 100%;
		right: 0;
		left: 0;
	}
	.info-link {
		position: absolute;
		top: 25px;
		right: 83px;
		text-align: right;
	}
	.info-link > li {
		position: relative;
		display: inline-block;
		padding-left: 50px;
		background: none;
	}
	.info-link > li > a {
		display: inline-block;
		padding: 0;
		color: #0E1C7F;
		line-height: 1.6;
	}
	.info-link > li > a:hover {
		color: #3E7DBA; /* 2020-0817 */
	}
	/*-------mega-navi----------*/
}

@media print and (max-width: 768px), screen and (min-width: 769px) and (max-width: 768px) {
	.site-header {
		min-width: 100%;
	}
}

@media print, screen and (min-width: 769px) {
	.mega-box {
		position: absolute;
		top: 111px;
		background: #F0F5F7;
		width: 100%;
		min-height: 266px;
		padding-bottom: 30px;
		box-sizing: border-box;
		-webkit-transition: all 250ms;
		transition: all 250ms;
	}
	.mega-box.is-active {
		opacity: 1;
		min-height: 266px;
	}
	.mega-box.is-inactive {
		opacity: 0;
		min-height: 0;
	}
	.mtitle-block {
		max-width: 1253px;
		height: 100px;
		margin: 0 auto;
		border-bottom: 1px solid #444;
	}
	.mega-titlebox {
		position: relative;
		max-width: 1253px;
		margin: 0 auto;
	}
	.mega-title-text {
		display: inline-block;
		width: 400px;
		height: 100px;
		padding: 35px 0 0 0;
		border-bottom: 5px solid #444444;
		box-sizing: border-box;
		background: url(/common/img/mega_arrow.svg) no-repeat right 55%;
		color: #444;
	}
	.mega-title-text:hover {
		background: url(/common/img/mega_arrow_on.svg) no-repeat right 55%;
		color: #00227C;
	}
	.mega-title-text:before {
		content: none;
	}
	.mega-title-text > span {
		display: inline-block;
	}
	.mega-title-text .mega-title-main {
		vertical-align: middle;
		font-size: 34px;
		font-family: 'Noto Serif JP', serif;
		font-weight: 400;
		letter-spacing: 0.1em;
	}
	.mega-title-text .mega-title-sub {
		padding-left: 18px;
		font-size: 16px;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		letter-spacing: 0.025em;
	}
	.close-btn {
		position: absolute;
		width: 68px;
		height: 68px;
		display: block;
		right: 0;
		bottom: 7px;
	}
	.close-btn:hover {
		background-color: rgba(255, 255, 255, 0.1);
	}
	.close-btn > span {
		display: block;
		margin-top: 46px;
		color: #FFFFFF;
		letter-spacing: 1px;
		text-align: center;
	}
	.close-btn:before,
	.close-btn:after {
		background: #444;
		-webkit-transform: rotate(45deg);
		        transform: rotate(45deg);
	}
	.close-btn:before {
		content: "";
		display: block;
		position: absolute;
		width: 1px;
		height: 45px;
		bottom: 12px;
		right: 32px;
	}
	.close-btn:after {
		content: "";
		display: block;
		position: absolute;
		width: 45px;
		height: 1px;
		bottom: 35px;
		left: 12px;
	}
	.mega-box .col-fullwidth {
		position: relative;
	}
	.mega-box .col-abc,
	.mega-box .col-abcd {
		max-width: 1253px;
		margin: 0 auto;
	}
	.mega-servicebox .col-abcd {
		box-sizing: border-box;
	}
	.mega-iconbox {
		display: block;
		border-bottom: solid 1px #707070;
		color: #444;
	}
	.mega-iconbox + .mega-iconbox {
		margin-left: 25px;
	}
	.mega-iconbox:hover .mega-text {
		color: #0E1C7F;
	}
	.mega-iconbox:hover .mega-text:before {
		border-right: 2px solid rgba(255, 255, 255, 0.7);
		border-top: 2px solid rgba(255, 255, 255, 0.7);
	}
	.mega-iconbox:hover .mega-img > span {
		opacity: 0.8;
	}
	.mega-iconbox:hover .insight-box {
		background: url("/common/img/mega_insight_on.svg") no-repeat 50% 25%;
		background-size: 75px 72px;
	}
	.mega-iconbox:hover .research-box {
		background: url("/common/img/mega_research_on.svg") no-repeat 50% 25%;
		background-size: 67px 68px;
	}
	.mega-iconbox:hover .consulting-box {
		background: url("/common/img/mega_consulting_on.svg") no-repeat 50% 30%;
		background-size: 77px 51px;
	}
	.mega-iconbox:hover .creative-box {
		background: url("/common/img/mega_creative_on.svg") no-repeat 50% 25%;
		background-size: 61px 66px;
	}
	.mega-iconbox:hover .operation-box {
		background: url("/common/img/mega_operation_on.svg") no-repeat 50% 25%;
		background-size: 58px 71px;
	}
	.mega-iconbox:hover .techno-box {
		background: url("/common/img/mega_techno_on.svg") no-repeat 50% 25%;
		background-size: 72px 64px;
	}
	.mega-iconbox:hover .market-box {
		background: url("/common/img/mega_market_on.svg") no-repeat 50% 30%;
		background-size: 65px 52px;
	}

	.mega-servicebox .mega-iconbox {
		width: 25%;
	}
	.mega-iconbox.blank {
		border-bottom: none;
	}
	.consulting-box,
	.creative-box,
	.market-box,
	.techno-box {
		-webkit-transition: background 0.2s ease;
		transition: background 0.2s ease;
	}
	.insight-box {
		background: url("/common/img/mega_insight.svg") no-repeat 50% 25%;
		background-size: 75px 72px;
	}
	.research-box {
		background: url("/common/img/mega_research.svg") no-repeat 50% 25%;
		background-size: 67px 68px;
	}
	.consulting-box {
		background: url("/common/img/mega_consulting.svg") no-repeat 50% 30%;
		background-size: 77px 51px;
	}
	.creative-box {
		background: url("/common/img/mega_creative.svg") no-repeat 50% 25%;
		background-size: 61px 66px;
	}
	.operation-box {
		background: url("/common/img/mega_operation.svg") no-repeat 50% 25%;
		background-size: 58px 71px;
	}
	.techno-box {
		background: url("/common/img/mega_techno.svg") no-repeat 50% 25%;
		background-size: 72px 64px;
	}
	.market-box {
		background: url("/common/img/mega_market.svg") no-repeat 50% 30%;
		background-size: 65px 52px;
	}

	.mega-text {
		margin-top: 0;
		padding-left: 0;
		box-sizing: border-box;
		text-align: center;
		font-family: '游ゴシック体', 'Yu Gothic', 'Yu Gothic Medium', 'YuGothic', sans-serif;
		font-size: 18px;
		font-weight: 500;
		line-height: 1.3;
		-webkit-transition: color 0.3s ease;
		transition: color 0.3s ease;
	}
	.mega-text:hover {
		color: #00227C;
	}

	.mega-companybox .mega-text,
	.mega-columnbox .mega-text {
		line-height: 85px;
	}
	.mega-servicebox .col-abcd .mega-text {
		height: 205px;
		margin-top: 0;
		padding-top: 130px;
	}

	.mega-img {
		width: 100%;
		background-color: #FFFFFF;
	}
	.mega-img > span {
		display: block;
		-webkit-transition: opacity 0.2s ease;
		transition: opacity 0.2s ease;
	}
	.mega-img > span > img {
		width: 100%;
	}
	.mega-columnbox .mega-iconbox img,
	.mega-companybox .mega-iconbox img,
	.mega-recruitbox .mega-iconbox img {
		vertical-align: bottom;
	}
}

/*# sourceMappingURL=sourcemap/common/css/style.css.map */
