@charset "UTF-8";

/* cbt-icon
---------------------------------------------------------- */
.cbt-icon::before { font-family: 'official'; margin-right: .5rem; }
.cbt-icon.cbt-icon-mail:before { content: '\e800'; }
.cbt-icon.cbt-icon-down-dir:before { content: '\e801'; }
.cbt-icon.cbt-icon-up-dir:before { content: '\e802'; }
.cbt-icon.cbt-icon-left-dir:before { content: '\e803'; }
.cbt-icon.cbt-icon-right-dir:before { content: '\e804'; }
.cbt-icon.cbt-icon-down-open:before { content: '\e805'; }
.cbt-icon.cbt-icon-left-open:before { content: '\e806'; }
.cbt-icon.cbt-icon-right-open:before { content: '\e807'; }
.cbt-icon.cbt-icon-up-open:before { content: '\e808'; }
.cbt-icon.cbt-icon-angle-left:before { content: '\e809'; }
.cbt-icon.cbt-icon-angle-right:before { content: '\e80a'; }
.cbt-icon.cbt-icon-angle-up:before { content: '\e80b'; }
.cbt-icon.cbt-icon-angle-down:before { content: '\e80c'; }
.cbt-icon.cbt-icon-phone:before { content: '\e80d'; }
.cbt-icon.cbt-icon-tag:before { content: '\e80e'; }
.cbt-icon.cbt-icon-cancel-circled2:before { content: '\e80f'; }
.cbt-icon.cbt-icon-zoom-in:before { content: '\e810'; }
.cbt-icon.cbt-icon-zoom-out:before { content: '\e811'; }
.cbt-icon.cbt-icon-angle-circled-up:before { content: '\e812'; }
.cbt-icon.cbt-icon-angle-circled-left:before { content: '\e813'; }
.cbt-icon.cbt-icon-angle-circled-down:before { content: '\e814'; }
.cbt-icon.cbt-icon-angle-circled-right:before { content: '\e815'; }
.cbt-icon.cbt-icon-ok-circled:before { content: '\e816'; }
.cbt-icon.cbt-icon-file-pdf:before { content: '\e817'; }
.cbt-icon.cbt-icon-train:before { content: '\e818'; }
.cbt-icon.cbt-icon-bookmark:before { content: '\e819'; }
.cbt-icon.cbt-icon-crown:before { content: '\e81a'; }
.cbt-icon.cbt-icon-facebook:before { content: '\e81b'; }
.cbt-icon.cbt-icon-twitter:before { content: '\e81c'; }
.cbt-icon.cbt-icon-menu:before { content: '\e81d'; }
.cbt-icon.cbt-icon-cancel:before { content: '\e81e'; }

/* cbt-image-hover
---------------------------------------------------------- */
.cbt-image-hover:hover { opacity: .7; }
.cbt-image-hover:hover,
.cbt-image-hover:hover a { text-decoration: none; }

/* cbt-header
---------------------------------------------------------- */
@media only screen and (max-width: 767px) {
	.cbt-header { padding-top: 5rem; margin-bottom: 1.5rem; }
}
@media only screen and (min-width: 768px) and (max-width: 1039px) {
	/* navigation分の余白を確保する */
	.cbt-header { padding-top: 7.5rem; margin-bottom: 4rem; }
}
@media only screen and (max-width: 1039px) {
}
@media only screen and (min-width: 1040px) {
	/* navigation分の余白を確保する */
	.cbt-header { padding-top: 10rem; margin-bottom: 4rem; }
}

/* cbt-header-heading
---------------------------------------------------------- */
.cbt-header-heading { color: #fff; text-align: center; }
.cbt-header-heading .cbt-header-heading-title { font-family: 'Advent Pro'; display: block; font-size: 4rem; line-height: 1; font-weight: bold;  margin: 0; }
.cbt-header-heading .cbt-header-heading-main,
.cbt-header-heading .cbt-header-heading-sub { display: block; }

@media only screen and (max-width: 767px) {
	.cbt-header-heading { padding: 1.8rem 0; }
	.cbt-header-heading .cbt-header-heading-main { font-size: 3rem; }
	.cbt-header-heading .cbt-header-heading-sub { font-size: 1.2rem; margin-top: 1rem; }
}
@media only screen and (min-width: 768px) and (max-width: 1039px) {
	.cbt-header-heading { padding: 1.55rem 0; }
	.cbt-header-heading .cbt-header-heading-main { font-size: 4rem; }
	.cbt-header-heading .cbt-header-heading-sub { font-size: 1.4rem; margin-top: 1rem; }
}
@media only screen and (min-width: 1040px) {
	.cbt-header-heading { padding: 3.3rem 0; }
	.cbt-header-heading .cbt-header-heading-main { font-size: 4rem; }
	.cbt-header-heading .cbt-header-heading-sub { font-size: 1.4rem; margin-top: 1rem; }
}

/* cbt-navigation
---------------------------------------------------------- */
.cbt-navigation .cbt-navigation-inner { position: relative; box-shadow: 0 0 1rem .25rem rgba(25, 16, 26, .4); background-color: rgba(255, 255, 255, .9); z-index: 1; }
.cbt-navigation .cbt-navigation-inner::after { content: ''; display: block; height: 0; clear: both; visibility: hidden; }
.cbt-navigation .cbt-navigation-logo-link {
	position: relative;
	width: 100%;
	text-decoration: none;
	position: relative;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	color: #000;
}
.cbt-navigation .cbt-navigation-contact a:hover { opacity: .7; }
.cbt-navigation .cbt-navigation-contact a::after { font-family: 'official'; content: '\e800'; display: inline-block; font-weight: normal; line-height: 1; vertical-align: middle; }

@media only screen and (max-width: 767px) {
	.cbt-navigation .cbt-navigation-inner { padding-left: 1rem; padding-right: 1rem; }
	.cbt-navigation .cbt-navigation-logo-link { padding: 1rem 0; }
	.cbt-navigation .cbt-navigation-logo svg { width: 4.55rem; height: 3rem; }
	.cbt-navigation .cbt-navigation-right { height: 5rem; padding: 1rem 0; }
	.cbt-navigation .cbt-navigation-contact a::after { font-size: 2.4rem; }
}
@media only screen and (min-width: 768px) and (max-width: 1039px) {
	.cbt-navigation .cbt-navigation-inner { padding-left: 2rem; padding-right: 2rem; }
	.cbt-navigation .cbt-navigation-logo svg { width: 6.825rem; height: 4.5rem; }
	.cbt-navigation .cbt-navigation-logo-link { padding: 1.5rem 0; }
	.cbt-navigation .cbt-navigation-right { height: 7.5rem; padding: 1.5rem 0; }
	.cbt-navigation .cbt-navigation-contact a::after { font-size: 3.6rem; position: relative; top: .3rem; }
}
@media only screen and (max-width: 1039px) {
	.cbt-navigation .cbt-navigation-left { float: left; }
	.cbt-navigation .cbt-navigation-right {
		display: -ms-flexbox;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-ms-flex-pack: center;
		-webkit-box-pack: justify;
		-webkit-justify-content: center;
		justify-content: center;
		float: right;
	}
	/* TAB・SP時にvelocityから上書きを禁止する */
	.cbt-navigation .cbt-navigation-contact a { background-color: transparent !important; }
	.cbt-navigation .cbt-navigation-contact strong { display: none; }
}
@media only screen and (min-width: 1040px) {
	.cbt-navigation .cbt-navigation-logo-link {
		-ms-flex-pack: center;
		-webkit-box-pack: justify;
		-webkit-justify-content: center;
		justify-content: center;
	}
	.cbt-navigation .cbt-navigation-logo { position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: 9.1rem; margin: auto; z-index: 1; }
	.cbt-navigation .cbt-navigation-contact { position: fixed; overflow: hidden; white-space: nowrap; top: 0; right: 0; border-radius: 9% 0% 37% 104% / 0% 0% 8% 143%; box-shadow: 0 0 .75rem .05rem rgba(25, 16, 26, .4); z-index: 1; }
	.cbt-navigation .cbt-navigation-contact a { color: #fff; margin: 0; font-size: 1.2rem; text-align: center; line-height: 1; text-decoration: none; display: block; }
	.cbt-navigation .cbt-navigation-contact strong { display: block; margin-bottom: .5rem; }
	.cbt-navigation .cbt-navigation-logo { height: 10rem; }
	.cbt-navigation .cbt-navigation-logo-link { padding: 2rem 0; }
	.cbt-navigation .cbt-navigation-logo svg { width: 9.1rem; height: 6rem; }
	.cbt-navigation .cbt-navigation-contact a {
		width: 12rem;
		height: 9rem;
		padding: 1.3rem 0 1.5rem 2.5rem;
		-webkit-transition: height, width .4s;
		transition: height, width .4s;
	}
	.cbt-navigation .cbt-navigation-contact a::after { font-size: 4rem; }

	.cbt-navigation-is-shrinked .cbt-navigation .cbt-navigation-logo { height: 5rem; }
	.cbt-navigation-is-shrinked .cbt-navigation .cbt-navigation-logo-link { padding: 1rem 0; }
	.cbt-navigation-is-shrinked .cbt-navigation .cbt-navigation-logo svg { width: 4.55rem; height: 3rem; }
	.cbt-navigation-is-shrinked .cbt-navigation .cbt-navigation-contact a { width: 6rem; height: 4.5rem; padding: 1rem 0 1.5rem 1.3rem; }
	.cbt-navigation-is-shrinked .cbt-navigation .cbt-navigation-contact a::after { font-size: 2rem; }
	.cbt-navigation-is-shrinked .cbt-navigation .cbt-navigation-contact strong { display: none; }
}

/* cbt-navigation-list
---------------------------------------------------------- */
.cbt-navigation-list { position: relative; }
.cbt-navigation-list.cbt-navigation-list-bottom .cbt-navigation-list-item:nth-last-of-type(-n+3) a { background-color: #454545; }
.cbt-navigation-list .cbt-navigation-list-item { position: relative; }
.cbt-navigation-list .cbt-navigation-list-link {
	position: relative;
	width: 100%;
	text-decoration: none;
	position: relative;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	color: #000;
}
.cbt-navigation-list .cbt-navigation-list-link:hover { opacity: 1; }

@media only screen and (max-width: 767px) {
	.cbt-navigation-list .cbt-navigation-list-link { font-size: 1.2rem;; padding: 1.5rem 1rem; padding-right: 4rem; }
}
@media only screen and (min-width: 768px) and (max-width: 1039px) {
	.cbt-navigation-list .cbt-navigation-list-link { font-size: 1.5rem; padding: 1.25rem 1rem; padding-right: 4rem; }
}

@media only screen and (max-width: 1039px) {
	.cbt-navigation-list { padding-left: 0; padding-right: 0; }
	.cbt-navigation-list .cbt-navigation-list-item-top .cbt-navigation-list-link::before,
	.cbt-navigation-list .cbt-navigation-list-item-inquiry .cbt-navigation-list-link::before,
	.cbt-navigation-list .cbt-navigation-list-item-news .cbt-navigation-list-link::before,
	.cbt-navigation-list .cbt-navigation-list-item-policy .cbt-navigation-list-link::before,
	.cbt-navigation-list .cbt-navigation-list-item-recruitment .cbt-navigation-list-link::before {
		content: '\e804';
		right: 2rem;
		-webkit-transform: translate(100%, -50%);
		transform: translate(100%, -50%);
	}
	.cbt-navigation-list .cbt-navigation-list-item-top .cbt-navigation-list-link { background-color: #0096c2; }
	.cbt-navigation-list .cbt-navigation-list-item-cubit .cbt-navigation-list-link { background-color: #91aa23; }
	.cbt-navigation-list .cbt-navigation-list-item-products .cbt-navigation-list-link { background-color: #002f7b; }
	.cbt-navigation-list .cbt-navigation-list-item-service .cbt-navigation-list-link { background-color: #c90070; }
	.cbt-navigation-list .cbt-navigation-list-item-portfolio .cbt-navigation-list-link { background-color: #f9be00; }
	.cbt-navigation-list .cbt-navigation-list-link::before { font-family: 'official'; display: block; position: absolute; font-size: 2rem; line-height: 1; top: 50%; }
	.cbt-navigation-list .cbt-navigation-list-link,
	.cbt-navigation-list .cbt-navigation-list-link.cbt-navigation-list-link-is-current { color: #fff; }
	.cbt-navigation-list .cbt-navigation-list-sub { background: #454545 url(/application/themes/cubit/images/common/pattern/pattern_black.png); }
	.cbt-navigation-list .cbt-navigation-list-subitem { font-size: 1.2rem; padding: 1rem 1rem; padding-right: 4rem; color: #fff; position: relative; }
	.cbt-navigation-list .cbt-navigation-list-subitem:only-child { display: none; }
	.cbt-navigation-list .cbt-navigation-list-subitem a { color: inherit; display: block; padding: 1rem 1rem; padding-right: 4rem; margin: -1rem -1rem; margin-right: -4rem; }
	.cbt-navigation-list .cbt-navigation-list-subitem::before {
		font-family: 'official';
		content: '\e804';
		display: block;
		position: absolute;
		font-size: 2rem;
		line-height: 1;
		top: 50%;
		right: 2rem;
		-webkit-transform: translate(100%, -50%);
		transform: translate(100%, -50%);
	}
	.cbt-navigation-list .cbt-navigation-list-subitem + .cbt-navigation-list-subitem { border-top: 1px solid #3b3a38; }
}
@media only screen and (min-width: 1040px) {
	.cbt-navigation-list {
		display: -ms-flexbox;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-ms-flex-pack: center;
		-webkit-box-pack: justify;
		-webkit-justify-content: center;
		justify-content: center;
	}
	.cbt-navigation-list .cbt-navigation-list-item-cubit,
	.cbt-navigation-list .cbt-navigation-list-item-portfolio { width: 15rem; }
	.cbt-navigation-list .cbt-navigation-list-item-products,
	.cbt-navigation-list .cbt-navigation-list-item-service { width: 11rem; }
	.cbt-navigation-list .cbt-navigation-list-item-products { margin-right: 6.5rem; }
	.cbt-navigation-list .cbt-navigation-list-item-service { margin-left: 6.5rem; }
	.cbt-navigation-list .cbt-navigation-list-item-top,
	.cbt-navigation-list .cbt-navigation-list-item-inquiry,
	.cbt-navigation-list .cbt-navigation-list-item-news,
	.cbt-navigation-list .cbt-navigation-list-item-policy,
	.cbt-navigation-list .cbt-navigation-list-item-recruitment { display: none; }
	.cbt-navigation-list .cbt-navigation-list-link {
		font-size: 1.6rem;
		-ms-flex-pack: center;
		-webkit-box-pack: justify;
		-webkit-justify-content: center;
		justify-content: center;
	}
	.cbt-navigation-list .cbt-navigation-list-item-cubit .cbt-navigation-list-link:hover { color: #91aa23; }
	.cbt-navigation-list .cbt-navigation-list-item-products .cbt-navigation-list-link:hover { color: #002f7b; }
	.cbt-navigation-list .cbt-navigation-list-item-service .cbt-navigation-list-link:hover { color: #c90070; }
	.cbt-navigation-list .cbt-navigation-list-item-portfolio .cbt-navigation-list-link:hover { color: #f9be00; }
	.cbt-navigation-list .cbt-navigation-list-link { height: 10rem; padding: 2rem 0; position: relative; transition: height .4s; overflow: hidden; }
	.cbt-navigation-list .cbt-navigation-list-item .cbt-navigation-list-triangle {
		opacity: 0;
		display: none;
		overflow: hidden;
		display: block;
		width: 4rem;
		height: 4rem;
		position: absolute;
		bottom: 0;
		left: 50%;
		-webkit-transform: translate(-50%, 50%) rotate(45deg);
		transform: translate(-50%, 50%) rotate(45deg);
	}
	.cbt-navigation-list .cbt-navigation-list-item .cbt-navigation-list-triangle::before {
		content: '';
		display: block;
		border: 2rem solid transparent;
		width: 5.6rem;
		height: 5.6rem;
		position: absolute;
		top: 50%;
		left: 50%;
		background: #454545 url(/application/themes/cubit/images/common/pattern/pattern_black.png);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
		-webkit-transform: rotate(-45deg) translate(-50%, -50%);
		transform: rotate(-45deg) translate(-50%, -50%);
	}
	.cbt-navigation-list .cbt-navigation-list-item.cbt-navigation-list-item-is-active .cbt-navigation-list-triangle {
		-webkit-transition: opacity .25s ease-in-out;
		transition: opacity .25s ease-in-out;
		opacity: 1;
	}

	.cbt-navigation-is-shrinked .cbt-navigation-list .cbt-navigation-list-link { height: 5rem; padding: 1rem 0; }
	.cbt-navigation-is-shrinked .cbt-navigation-list .cbt-navigation-list-item.cbt-navigation-list-item-is-active .cbt-navigation-list-triangle { width: 2rem; height: 2rem; }
}

/* cbt-navigation-band
---------------------------------------------------------- */
.cbt-navigation-band-wrapper { display: none; }
.cbt-navigation-band-inner { display: table; min-height: 10rem; }
.cbt-navigation-band .cbt-navigation-band-title,
.cbt-navigation-band .cbt-navigation-band-list { display: table-cell; vertical-align: middle; padding-top: 2rem; padding-bottom: 2rem; position: relative; }
.cbt-navigation-band .cbt-navigation-band-list::before { content: ''; display: block; width: 100vw; height: 100%; position: absolute; top: 0; left: 0; background: #454545 url(/application/themes/cubit/images/common/pattern/pattern_black.png); background-clip: content-box; }
.cbt-navigation-band .cbt-navigation-band-item { display: inline-block; margin-right: 2rem; }
.cbt-navigation-band .cbt-navigation-band-title { width: 14%; color: #fff; }
.cbt-navigation-band .cbt-navigation-band-list { width: 86%; font-size: 0; padding-left: 2rem; padding-right: 2rem; }
.cbt-navigation-band .cbt-navigation-band-title strong,
.cbt-navigation-band .cbt-navigation-band-item { position: relative; padding-left: 1.5rem; font-size: 1.6rem; color: #fff; }
.cbt-navigation-band .cbt-navigation-band-item a { color: inherit; }
.cbt-navigation-band .cbt-navigation-band-title strong::before,
.cbt-navigation-band .cbt-navigation-band-item::before {
	font-family: 'official';
	content: '\e804';
	display: block;
	position: absolute;
	font-size: 2rem;
	text-decoration: none;
	line-height: 1;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
@media only screen and (max-width: 1039px) {
	/*.cbt-navigation-band { display: none; }*/
}
@media only screen and (min-width: 1040px) {
	/*.cbt-navigation-band { min-height: 10rem; }*/
	.cbt-navigation-band.cbt-navigation-band-cubit { background-color: #91aa23; }
	.cbt-navigation-band.cbt-navigation-band-cubit .cbt-navigation-band-item:hover { color: #91aa23; }
	.cbt-navigation-band.cbt-navigation-band-products { background-color: #002f7b; }
	.cbt-navigation-band.cbt-navigation-band-products .cbt-navigation-band-item:hover { color: #4f86df; } /* 異なる色を指定 */
	.cbt-navigation-band.cbt-navigation-band-service { background-color: #c90070; }
	.cbt-navigation-band.cbt-navigation-band-service .cbt-navigation-band-item:hover { color: #fb63b8; } /* 異なる色を指定 */
	.cbt-navigation-band.cbt-navigation-band-portfolio { background-color: #f9be00; }
	.cbt-navigation-band.cbt-navigation-band-portfolio .cbt-navigation-band-item:hover { color: #f9be00; }
	.cbt-navigation-band .cbt-navigation-band-item:first-child { display: none; }
}
/* cbt-footer-navigation
---------------------------------------------------------- */
@media only screen and (min-width: 768px) {
	.cbt-footer-navigation { display: none; }
}

/* cbt-drawer
---------------------------------------------------------- */
@media only screen and (max-width: 767px) {
	.cbt-drawer { width: 70%; border-top: 5rem solid transparent; }
}
@media only screen and (min-width: 768px) and (max-width: 1039px) {
	.cbt-drawer { width: 41.666666%; border-top: 7.5rem solid transparent; }
}
@media only screen and (max-width: 1039px) {
	.cbt-drawer { position: absolute; top: 0; right: 0; background-color: rgba(0, 0, 0, .8); height: 100vh; right: -100%; z-index: -1; background-clip: content-box; overflow-y: scroll; }
	.cbt-drawer.cbt-drawer-is-open { right: 0; }
}

/* cbt-drawer-btn
---------------------------------------------------------- */
.cbt-drawer-btn { display: block; margin: auto; background: none; padding: 0; border: none; position: relative; outline: none; }
.cbt-drawer-btn-icon {
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	background: #000;
	-webkit-transition: -webkit-transform .2s;
	transition: transform .2s;
}
.cbt-drawer-btn-icon.cbt-drawer-btn-icon-is-close { margin-top: -.6rem; }
.cbt-drawer-btn-icon::before,
.cbt-drawer-btn-icon::after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	background: #000;
	-webkit-transition: -webkit-transform .3s;
	transition: transform .3s;
}
.cbt-drawer-btn .cbt-drawer-btn-icon-is-close { background: transparent; }
.cbt-drawer-btn .cbt-drawer-btn-icon-is-close::before,
.cbt-drawer-btn .cbt-drawer-btn-icon-is-close::after { margin-top: 0; }
.cbt-drawer-btn .cbt-drawer-btn-icon-is-close::before {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.cbt-drawer-btn .cbt-drawer-btn-icon-is-close::after {
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
@media only screen and (max-width: 767px) {
	.cbt-drawer-btn { margin-left: 2.5rem; width: 2rem; height: 2rem;  }
	.cbt-drawer-btn-icon { width: 2rem; height: .4rem; margin: -.3rem 0 0 -1.75rem; }
	.cbt-drawer-btn-icon::before,
	.cbt-drawer-btn-icon::after { width: 2rem; height: .4rem; }
	.cbt-drawer-btn-icon::before { margin-top: -.9rem; }
	.cbt-drawer-btn-icon::after { margin-top: .5rem; }
}
@media only screen and (min-width: 768px) and (max-width: 1039px) {
	.cbt-drawer-btn { margin-left: 3.75rem; width: 3.75rem; height: 3.75rem; }
	.cbt-drawer-btn-icon { width: 3.75rem; height: .6rem; margin: -.3rem 0 0 -1.75rem; }
	.cbt-drawer-btn-icon::before,
	.cbt-drawer-btn-icon::after { width: 3.75rem; height: .6rem; }
	.cbt-drawer-btn-icon::before { margin-top: -1.6rem; }
	.cbt-drawer-btn-icon::after { margin-top: 1rem; }
}
@media only screen and (min-width: 1040px) {
	.cbt-drawer-btn { display: none; }
}

/* cbt-breadcrumb
---------------------------------------------------------- */
.cbt-breadcrumb { padding: 0; margin: 0; border-radius: 0; }
.cbt-breadcrumb .cbt-breadcrumb-inner { position: relative; }
.cbt-breadcrumb .cbt-breadcrumb-item { color: #fff; }
.cbt-breadcrumb .cbt-breadcrumb-link,
.cbt-breadcrumb .cbt-breadcrumb-current { color: inherit; display: inline-block; }
.cbt-breadcrumb .cbt-breadcrumb-current { text-decoration: none; cursor: default; }
.cbt-breadcrumb .cbt-breadcrumb-item:not(:last-of-type)::after { font-family: 'official'; content: '\e80a'; margin-left: .75rem; margin-right: .55rem; color: inherit; }

@media only screen and (max-width: 767px) {
	.cbt-breadcrumb { background-color: #454545; }
	.cbt-breadcrumb .cbt-breadcrumb-item { font-size: 1.2rem; }
	.cbt-breadcrumb .cbt-breadcrumb-link,
	.cbt-breadcrumb .cbt-breadcrumb-current { padding: .5rem 0; }
	.cbt-breadcrumb .cbt-breadcrumb-item { display: inline-table; }
	.cbt-breadcrumb .cbt-breadcrumb-item > * { display: table-cell; }
}
@media only screen and (min-width: 768px) {
	.cbt-breadcrumb {
		background: linear-gradient(to right, #454545 0%, #454545 50%, transparent 50%, transparent 100%),
					url(/application/themes/cubit/images/common/pattern/pattern_black.png),
					linear-gradient(to right, #454545 0%, #454545 50%, #000 50%, #000 100%);
		background: linear-gradient(to right, #454545 0%, #454545 50%, transparent 50%, transparent 100%),
					url(/application/themes/cubit/images/common/pattern/pattern_black.png),
					linear-gradient(to right, #454545 0%, #454545 50%, #000 50%, #000 100%);
	}
	.cbt-breadcrumb .cbt-breadcrumb-item,
	.cbt-breadcrumb .cbt-breadcrumb-list {
		display: -ms-flexbox;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-ms-flex-align: center;
		-webkit-box-align: center;
		-webkit-align-items: center;
		align-items: center;
	}
	.cbt-breadcrumb .cbt-breadcrumb-item { overflow: hidden; }
	.cbt-breadcrumb .cbt-breadcrumb-link,
	.cbt-breadcrumb .cbt-breadcrumb-current { padding: 1.3rem 0; }
	.cbt-breadcrumb .cbt-breadcrumb-list { height: 4rem; padding-right: 8rem; background-clip: content-box; background-color: #454545; }
	.cbt-breadcrumb .cbt-breadcrumb-item a { display: block; width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
}

/* cbt-footer
---------------------------------------------------------- */
.cbt-footer { color: #fff; }
.cbt-footer .cbt-footer-item { position: relative; overflow: hidden; }
.cbt-footer .cbt-footer-organization-mail::before,
.cbt-footer .cbt-footer-organization-telephone::before { font-family: 'official'; margin-right: .5rem; }
.cbt-footer .cbt-footer-organization-mail::before { content: '\e800'; }
.cbt-footer .cbt-footer-organization-telephone::before { content: '\e80d'; }
.cbt-footer .cbt-footer-aside-recruit .cbt-footer-aside-title { font-family: 'Dosis'; font-weight: bold; }
.cbt-footer .cbt-footer-aside-privacy .cbt-footer-aside-title { font-family: 'Aclonica'; }
.cbt-footer .cbt-footer-copyright > small { font-family: 'Advent Pro'; line-height: 1; text-align: center; display: block; }
.cbt-footer .cbt-footer-aside-link { color: inherit; }
.cbt-footer .cbt-footer-organization-address { color: inherit; }
.cbt-footer .cbt-footer-organization-mail a,
.cbt-footer .cbt-footer-organization-telephone a { color: inherit; }

.cbt-footer .cbt-footer-sns-list { display: table; }
.cbt-footer .cbt-footer-sns-list a { color: #fff; text-decoration: none; }
.cbt-footer .cbt-footer-sns-list a strong { display: none; }
.cbt-footer .cbt-footer-sns-list a::before { font-family: 'official'; display: block; }

.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-twitter a { background-color: #55acee; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-twitter a::before { content: '\e81c'; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-facebook a { background-color: #3b5998; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-facebook a::before { content: '\e81b'; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-googleplus a { background-color: #dd4b39; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-googleplus a::before { content: '\f0d5'; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-evernote a { background-color: #6fb536; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-evernote a::before { content: '\f333'; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-slack a { background-color: #56b68b; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-slack a::before { content: '\f198'; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-line a { background-color: #5ae628; }
.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-line a::before { content: '\e81f'; }

@media only screen and (max-width: 767px) {
	.cbt-footer { background-color: #000; padding-top: 2rem; padding-bottom: 2rem; }
	.cbt-footer .cbt-footer-info { margin-bottom: 2rem; }
	.cbt-footer .cbt-footer-organization-name,
	.cbt-footer .cbt-footer-organization-address,
	.cbt-footer .cbt-footer-organization-mail,
	.cbt-footer .cbt-footer-organization-telephone { font-size: 1.2rem; }
	.cbt-footer .cbt-footer-organization-object { width: 2.5rem; height: 1.6rem; }
	.cbt-footer .cbt-footer-aside { display: none; }
	.cbt-footer .cbt-footer-copyright > small { font-size: 1.2rem; }

	.cbt-footer .cbt-footer-sns { margin-bottom: 0; text-align: center; }
	.cbt-footer .cbt-footer-sns-list { margin: 0 auto; width: 18rem; text-align: center; }
	.cbt-footer .cbt-footer-sns-item { margin: 0 auto; display: table; text-align: center; }
	.cbt-footer .cbt-footer-sns-item { display: table-cell; padding: 0 4.4% 0 0; }
	.cbt-footer .cbt-footer-sns-item:last-child { padding-right: 0; }
	.cbt-footer .cbt-footer-sns-list a { font-size: 2rem; display: table-cell; width: 4rem; height: 4rem; padding: 0; text-align: center; vertical-align: middle; border-radius: 50%; }
	.cbt-footer .cbt-footer-sns-list a:hover { text-decoration: none; }
}
@media only screen and (min-width: 768px) {
	.cbt-footer {
		background-color: #000;
		background-image: url(/application/themes/cubit/images/common/pattern/pattern_black.png);
		background-position: left top;
	}
	.cbt-footer .cbt-footer-info { padding-top: 3.5rem; }
	.cbt-footer .cbt-footer-organization { float: left; }
	.cbt-footer .cbt-footer-organization-name,
	.cbt-footer .cbt-footer-organization-address,
	.cbt-footer .cbt-footer-organization-mail,
	.cbt-footer .cbt-footer-organization-telephone { font-size: 1.4rem; }
	.cbt-footer .cbt-footer-organization-name { margin-bottom: .5rem; }
	.cbt-footer .cbt-footer-organization-object { width: 2.5rem; height: 1.6rem; }
	.cbt-footer .cbt-footer-organization-telephone { margin-left: 1.5rem; }

	.cbt-footer .cbt-footer-aside { float: right; display: table; margin-bottom: 1.6rem; }
	.cbt-footer .cbt-footer-aside-link { display: table-cell; text-align: center; text-decoration: none; }
	.cbt-footer .cbt-footer-aside-link + .cbt-footer-aside-link { border-left: 2rem solid transparent; }
	.cbt-footer .cbt-footer-aside-title { font-size: 1.8rem; }
	.cbt-footer .cbt-footer-aside-text { font-size: 1rem; }
	.cbt-footer .cbt-footer-aside-text::before { font-family: 'official'; content: '\e804'; margin-right: .5rem; }
	.cbt-footer .cbt-footer-copyright { padding-top: 3.5rem; padding-bottom: 3.5rem; }
	.cbt-footer .cbt-footer-copyright > small { font-family: 'Advent Pro'; font-size: 1.8rem; line-height: 1; }

	.cbt-footer .cbt-footer-sns { float: right; clear: right; margin-bottom: 0; }
	.cbt-footer .cbt-footer-sns-item { display: table-cell; padding: .5rem; line-height: 1; }
	.cbt-footer .cbt-footer-sns-item.cbt-footer-sns-item-line a { display: none; }
	.cbt-footer .cbt-footer-sns-list a { font-size: 2rem; display: table-cell; width: 4rem; height: 4rem; padding: 0; text-align: center; vertical-align: middle; border-radius: 50%; }
	.cbt-footer .cbt-footer-sns-list a:hover {
		-webkit-transition: .6s;
		transition: .6s;
		text-decoration: none;
		opacity: .8;
		color: #fff;
	}
	.cbt-footer-sns .cbt-footer-sns-list a:hover::before {
		-webkit-animation: spinAround 2s linear infinite;
		animation: spinAround 2s linear infinite;
	}
}

/* cbt-pagetop
---------------------------------------------------------- */
.cbt-pagetop .cbt-pagetop-btn { outline: none; }
.cbt-pagetop .cbt-pagetop-btn::before { font-family: 'official'; }

@media only screen and (max-width: 767px) {
	.cbt-pagetop { position: fixed; background-color: rgba(238, 238, 238, .8); width: 6rem; height: 6rem; bottom: 1rem; right: 1rem; z-index: 10; border-radius: .5rem; }
	.cbt-pagetop .cbt-pagetop-btn { width: 100%; height: 100%; }
	.cbt-pagetop .cbt-pagetop-btn::before { content: '\e808'; color: #787878; font-size: 2rem; }
	.cbt-pagetop .cbt-pagetop-btn > span { display: none; }
}

@media only screen and (min-width: 768px) {
	.cbt-pagetop { text-align: right; position: relative; position: absolute; top: 0; right: 2rem; }
	.cbt-pagetop .cbt-pagetop-btn { width: 8rem; height: 4rem; font-size: 1.4rem; outline: none; font-family: 'Advent Pro'; font-weight: bold; padding: 0; color: #fff; }
	.cbt-pagetop .cbt-pagetop-btn::before { content: '\e808'; margin-right: .25rem; }
}

/* accordion
---------------------------------------------------------- */
.accordion .accordion-body { display: none; }

@media only screen and (max-width: 1039px) {
	.accordion .accordion-title::before {
		font-family: 'official';
		display: block;
		position: absolute;
		font-size: 2rem;
		line-height: 1;
		top: 50%;
		content: '\e805';
		right: 2rem;
		-webkit-transform: translate(50%, -50%);
		transform: translate(50%, -50%);
	}
	.accordion .accordion-title.accordion-title-is-active::before { content: '\e808'; }
}

@media only screen and (min-width: 1040px) {
	.accordion .accordion-body { display: none !important; }
}

/* cbt-overlay
---------------------------------------------------------- */
.cbt-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 120%; background-color: rgba(0, 0, 0, .4); z-index: 5; display: none; cursor: pointer; -webkit-tap-highlight-color: rgba(0,0,0,0); }

/* のちのち調整が必要 */
@media only screen and (min-width: 1040px) {
	.cbt-overlay { display: none !important; }
}

/* cbt-text
---------------------------------------------------------- */
.cbt-text { padding: 0 1rem; }

/* cbt-listt
---------------------------------------------------------- */
.cbt-list .cbt-list-item { position: relative; }

.cbt-list.cbt-list-num { counter-reset: lisr-num; }
.cbt-list.cbt-list-num .cbt-list-item { counter-increment: item-num; padding-left: 1.5em; }

.cbt-list.cbt-list-num .cbt-list-item::before,
.cbt-list.cbt-list-disc .cbt-list-item::before { position: absolute; top: 0; left: 0; }

.cbt-list.cbt-list-num .cbt-list-item::before { content: counter(item-num) '. '; }
.cbt-list.cbt-list-disc .cbt-list-item::before { content: '・'; }

/* cbt-link
---------------------------------------------------------- */
.cbt-link { display: inline-block; }
/*.cbt-link::before { content: '\e804'; font-family: 'official'; display: inline-block; line-height: 1; margin-right: .5rem; }*/
.cbt-link::before { content: ''; display: inline-block; width: 0; height: 0; border-style: solid; border-width: 4px 0 4px 5px; border-color: transparent transparent transparent #6d8c8c; margin-right: .5rem; }

/* cbt-btn-wrapper
---------------------------------------------------------- */
.cbt-btn-wrapper { font-size: 0; }
.cbt-btn-wrapper .cbt-btn-wrapper-item { display: inline-block; width: 30rem; letter-spacing: normal; }

@media only screen and (min-width: 768px) {
	.cbt-btn-wrapper .cbt-btn-wrapper-item +  .cbt-btn-wrapper-item { margin-left: 4%; }
}
@media only screen and (max-width: 767px) {
	.cbt-btn-wrapper .cbt-btn-wrapper-item { display: inline-block; width: 100%; }
	.cbt-btn-wrapper .cbt-btn-wrapper-item +  .cbt-btn-wrapper-item { margin-top: 1rem; }
}

/* cbt-btn
---------------------------------------------------------- */
.cbt-btn {
	position: relative;
	display: block;
	z-index: 2;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: none;
	outline: none;
	color: #fff;
	font-size: 1.6rem;
	padding: 1.9rem 1rem;
	text-align: center;
	border: .5rem solid transparent;
	background-clip: padding-box;
}
.cbt-btn:hover { text-decoration: none; }
.cbt-btn::before { content: '\e804'; font-family: 'official'; display: inline-block; line-height: 1; margin-right: .5rem; opacity: .5; }
.cbt-btn::after {
	position: absolute;
	z-index: -1;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transform: scale(.5);
	transform: scale(.5);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	content: '';
}
.cbt-btn:hover::after {
	-webkit-transform: scale(1);
	transform: scale(1);
}
.cbt-btn.cbt-btn-indigo { background-color: #002f7b; border-color: #a3acc4; }
.cbt-btn.cbt-btn-magenta { background-color: #c90070; border-color: #e5a3c0; }
.cbt-btn.cbt-btn-red { background-color: #ad181e; border-color: #d9a8a9; }
.cbt-btn.cbt-btn-cyan { background-color: #0096c2; border-color: #a3cfe2; }
.cbt-btn.cbt-btn-gray { background-color: #eee; border-color: #cccccc; color: #000; }

.cbt-btn.cbt-btn-ripple { z-index: 2; text-decoration: none; }
.cbt-btn.cbt-btn-ripple .cbt-btn-ripple-inner {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, .5);
	border-radius: 50%;
	box-shadow: 0 0 .5rem rgba(255, 255, 255, .5);
	z-index: 1;
	-webkit-animation-name: ripple;
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-duration: 2s;
	animation-name: ripple;
	animation-timing-function: ease-out;
	animation-iteration-count: infinite;
	animation-duration: 2s;
}

/* cbt-separator
---------------------------------------------------------- */
.cbt-separator.cbt-separator-service {
	margin-top: 4rem;
	margin-bottom: 4rem;
	height: 32px;
	background: -webkit-linear-gradient(top,  #d5d5d5 0%,#fefefe 100%);
	background: linear-gradient(to bottom,  #d5d5d5 0%,#fefefe 100%);
	border-top: #ccc 2px solid;
}
.cbt-separator.cbt-separator-service hr { display: none; }

@media only screen and (max-width: 767px) {
	.cbt-separator.cbt-separator-service {
		margin-bottom: 2rem;
	}
}

/* cbt-panel
---------------------------------------------------------- */
.cbt-panel .cbt-panel-title { margin-bottom: 1rem; font-size: 1.4rem; font-weight: bold; line-height: 1.72; }
.cbt-panel .cbt-panel-title::before { color: #c90070; }
.cbt-panel .cbt-panel-item { padding: 2rem; background-color: #eee; }
.cbt-panel .cbt-panel-item:nth-of-type(3n+1) { margin-left: 0; }
.cbt-panel .cbt-panel-text { font-size: 1.4rem; }

@media only screen and (max-width: 767px) {
	.cbt-panel .cbt-panel-item { margin-top: 2rem; padding: 1rem; }
}
@media only screen and (min-width: 768px) {
	.cbt-panel {
		display: -ms-flexbox;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		box-lines: multiple;
		-ms-flex-wrap: wrap;
		-webkit-box-lines: multiple;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-top: 2rem;
	}
	.cbt-panel .cbt-panel-item { width: 32%; margin-left: 2%; }
	.cbt-panel .cbt-panel-item:nth-of-type(3n+1) { margin-left: 0; }
}
@media only screen and (min-width: 768px) and (max-width: 1039px) {
	.cbt-panel .cbt-panel-item { padding: 1rem; }
}
@media only screen and (min-width: 1040px) {
	.cbt-panel .cbt-panel-item { padding: 2rem; }
}

/* cbt-title
---------------------------------------------------------- */
.cbt-title h1,
.cbt-title h2,
.cbt-title h3,
.cbt-title h4,
.cbt-title h5,
.cbt-title h6 { line-height: 1.72; position: relative; }

.cbt-title.cbt-title-crown h1,
.cbt-title.cbt-title-crown h2,
.cbt-title.cbt-title-crown h3,
.cbt-title.cbt-title-crown h4,
.cbt-title.cbt-title-crown h5,
.cbt-title.cbt-title-crown h6 { font-size: 2.4rem; margin-bottom: 1rem; }
.cbt-title.cbt-title-crown h1::before,
.cbt-title.cbt-title-crown h2::before,
.cbt-title.cbt-title-crown h3::before,
.cbt-title.cbt-title-crown h4::before,
.cbt-title.cbt-title-crown h5::before,
.cbt-title.cbt-title-crown h6::before { font-family: 'official'; content: '\e81a'; vertical-align: middle; margin-right: .5rem; line-height: 1; }

/* cbt-news-detail-createdate
---------------------------------------------------------- */
.cbt-news-detail-createdate { display: none; }

/* cbt-product-list
---------------------------------------------------------- */
.cbt-product-list {
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.cssanimations .cbt-product-list { opacity: 0; }
.cssanimations .cbt-product-list.cbt-product-list-is-loaded {
	-webkit-animation: fadeIn 2.5s ease-in-out forwards;
	animation: fadeIn 2.5s ease-in-out forwards;
}

/* cbt-not-found
---------------------------------------------------------- */
.cbt-not-found a { display: table; margin: auto; }

/* cbt-definition-list
---------------------------------------------------------- */
.cbt-definition-list dl { display: table; width: 100%; border-bottom: .4rem solid #ccc; margin: 0; }
.cbt-definition-list dl:first-child { border-top: .4rem solid #ccc; }
.cbt-definition-list dt,
.cbt-definition-list dd { display: table-cell; padding: 1rem; vertical-align: middle; }
.cbt-definition-list dt { width: 20rem; background: #eee; text-align: center; font-size: 1.4rem; font-weight: normal; }
.cbt-definition-list dd { padding-right: 0; }

@media only screen and (max-width: 767px) {
	.cbt-definition-list dl,
	.cbt-definition-list dl:first-child { display: block; border: none; }
	.cbt-definition-list dt,
	.cbt-definition-list dd { display: block; width: 100%; }
	.cbt-definition-list dt { margin-bottom: 0; text-align: left; }
	.cbt-definition-list dd { padding-left: 0; }
}

/* cbt-genre-select
---------------------------------------------------------- */
.cbt-genre-select { overflow: hidden; }
.cbt-genre-select .cbt-genre-select-link { position: relative; display: block; text-align: center; cursor: pointer; border: .5rem solid #ccc; background-color: #eee; line-height: 1; }
.cbt-genre-select .cbt-genre-select-link:hover { text-decoration: none; color: inherit; }
.cbt-genre-select .cbt-genre-select-link.cbt-genre-select-link-is-current { border-color: rgba(255, 255, 255, .65); color: #fff; background-color: #f9be00; }

@media only screen and (max-width: 767px) {
	.cbt-genre-select { margin-bottom: 2rem; }
	.cbt-genre-select .cbt-genre-select-item + .cbt-genre-select-item { margin-top: 1rem; }
	.cbt-genre-select .cbt-genre-select-link { font-size: 1.4rem; padding: .7rem 1rem; }
}
@media only screen and (min-width: 768px) {
	.cbt-genre-select .cbt-genre-select-item { float: left; width: 32%; margin-bottom: 2rem; }
	.cbt-genre-select .cbt-genre-select-item + .cbt-genre-select-item { margin-left: 2%; }
	.cbt-genre-select .cbt-genre-select-item:nth-of-type(3n+1) { margin-left: 0; }
	.cbt-genre-select .cbt-genre-select-link { font-size: 1.6rem; padding: .7rem 1rem; }
	.cbt-genre-select .cbt-genre-select-link.cbt-genre-select-link-is-current::before {
		content: '';
		display: block;
		position: absolute;
		bottom: -.5rem;
		left: 50%;
		border: 1rem solid transparent;
		-webkit-transform: translate(-50%, 100%);
		transform: translate(-50%, 100%);
		z-index: -1;
	}
	.cbt-genre-select .cbt-genre-select-link.cbt-genre-select-link-is-current::before { border-top-color: #f9be00; }
}

/* cbt-entry-step
---------------------------------------------------------- */
.cbt-entry-step ol li { font-weight: bold; text-align: center; position: relative; padding-left: 0; }

@media only screen and (max-width: 767px) {
	.cbt-entry-step ol li br { display: none; }
	.cbt-entry-step ol li::before { content: ''; display: none; }
	.cbt-entry-step ol li:not(:last-child)::after {
		content: '';
		display: block;
		width: 0;
		height: 0;
		margin: 0 auto;
		border-top: 2.75rem solid #0096c2;
		border-left: 5rem solid transparent;
		border-right: 5rem solid transparent;
		margin: 1rem auto;
	}
}
@media only screen and (min-width: 768px) {
	.cbt-entry-step ol {
		display: -ms-flexbox;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
	}
	.cbt-entry-step ol li { width: 25%; }
	.cbt-entry-step ol li::before { position: relative; display: block; margin: auto; }
	.cbt-entry-step ol li:nth-of-type(1)::before { content: ''; width: 3.1rem; height: 3.3rem; background: url(/application/themes/cubit/images/entry/p_step01.png) 0 0 no-repeat; }
	.cbt-entry-step ol li:nth-of-type(2)::before { content: ''; width: 3.1rem; height: 3.3rem; background: url(/application/themes/cubit/images/entry/p_step02.png) 0 0 no-repeat; }
	.cbt-entry-step ol li:nth-of-type(3)::before { content: ''; width: 3.1rem; height: 3.3rem; background: url(/application/themes/cubit/images/entry/p_step03.png) 0 0 no-repeat; }
	.cbt-entry-step ol li:nth-of-type(4)::before { content: ''; width: 3.1rem; height: 3.3rem; background: url(/application/themes/cubit/images/entry/p_step04.png) 0 0 no-repeat; }
	.cbt-entry-step ol li + li::after {
		content: '';
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		width: .8rem;
		height: 1.3rem;
		background: url(/application/themes/cubit/images/entry/icon_arrow.png) 0 0 no-repeat;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
}

/* cbt-modal
---------------------------------------------------------- */
.cbt-modal { position: fixed; width: 90%; max-width: 76rem; top: 0; bottom: 0; left: 0; right: 0; margin: auto; border: .5rem solid rgba(255, 255, 255, .5); background-color: #fff; background-clip: padding-box; border-radius: .5rem; display: none; z-index: 1010; text-align: center; overflow-y: scroll; }
.cbt-modal .cbt-modal-inner { position: relative; min-height: 100%; }
.cbt-modal .cbt-modal-logo { margin-bottom: 2rem; }
.cbt-modal .cbt-modal-heading { font-size: 2.4rem; margin-bottom: 1rem; }
.cbt-modal .cbt-modal-text { margin-bottom: 2rem; }
.cbt-modal .cbt-modal-detail { text-decoration: none; }
.cbt-modal .cbt-modal-detail::before { content: '\e804'; font-family: 'official'; margin-right: .5rem; color: #a3acc4; opacity: .5; }
.cbt-modal .cbt-modal-close { position: absolute; top: 1rem; right: 1rem; color: #002f7b; font-size: 3.2rem; line-height: 1; padding: 0; outline: none; }
.cbt-modal .cbt-modal-close::before { content: '\e80f'; font-family: 'official'; display: inline-block; vertical-align: top; }
.cbt-modal .cbt-modal-close span { display: none; }

.cbt-modal.cbt-modal-alert .cbt-modal-inner { padding-top: 7rem; padding-left: 0; padding-right: 0; padding-bottom: 42.666666%; }
.cbt-modal.cbt-modal-alert .cbt-modal-text { padding: 0 1rem; }
.cbt-modal.cbt-modal-alert .cbt-modal-image { position: absolute; bottom: 0; left: 0; right: 0; }
.cbt-modal.cbt-modal-alert .cbt-modal-text { position: relative; margin-bottom: 0; }
.cbt-modal.cbt-modal-alert .cbt-modal-text::before { content: '\e820'; font-family: 'official'; display: block; font-size: 3.5rem; }
.cbt-modal.cbt-modal-alert .cbt-modal-close { color: #000; }

@media only screen and (max-width: 767px) {
	.cbt-modal { height: 72.5%; max-height: 60rem; }
	.cbt-modal.cbt-modal-alert { max-height: 40rem; }
	.cbt-modal .cbt-modal-logo { margin-top: 3rem; }
	.cbt-modal .cbt-modal-logo img { width: 50%; }
	.cbt-modal .cbt-modal-heading { font-size: 1.8rem; }
	.cbt-modal .cbt-modal-inner { padding: 1rem; }
	.cbt-modal .cbt-modal-text { font-size: 1rem; }
	.cbt-modal .cbt-modal-text br { display: none; }
	.cbt-modal .cbt-modal-detail { position: relative; display: block; z-index: 2; -webkit-appearance: none; -moz-appearance: none; appearance: none; background: none; outline: none; color: #fff; font-size: 1.2rem; padding: 1rem 1rem; text-align: center; border: .5rem solid transparent; background-clip: padding-box; background-color: #002f7b; border-color: #a3acc4; margin-top: 2rem; }
	.cbt-modal .cbt-modal-detail::after {
		position: absolute;
		z-index: -1;
		display: block;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		-webkit-transform: scale(.5);
		transform: scale(.5);
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-transition: all .3s;
		transition: all .3s;
		content: '';
	}
	.cbt-modal .cbt-modal-detail:hover::after {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	.cbt-modal .cbt-modal-detail:hover::after { background-color: #a3acc4; }
}
@media only screen and (min-width: 768px) {
	.cbt-modal { height: 55rem; }
	.cbt-modal .cbt-modal-heading { font-size: 2.4rem; }
	.cbt-modal .cbt-modal-inner { padding: 3rem; }
	.cbt-modal .cbt-modal-image { padding: 0 10rem; }
	.cbt-modal .cbt-modal-detail {
		position: absolute;
		text-decoration: none;
		padding: 2rem 0 0 2rem;
		bottom: 0;
		right: 0;
		width: 12rem;
		height: 12rem;
		background-color: #002f7b;
		color: #fff;
		border-radius: 100% 0 0 0 ;
		display: block;
		text-align: center;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-align: center;
		-webkit-box-align: center;
		align-items: center;
		-ms-flex-pack: center;
		-webkit-box-pack: center;
		justify-content: center;
	}
	.cbt-modal.cbt-modal-alert .cbt-modal-image { padding: 0; }
}

/* cbt-modal-overlay
---------------------------------------------------------- */
.cbt-modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 120%; z-index: 1005; background-color: rgba(0, 0, 0, .5); display: none; cursor: pointer; }

/* cbt-banner
---------------------------------------------------------- */
.cbt-banner .cbt-banner-inner { position: relative; display: block; }
.cbt-banner .cbt-banner-front,
.cbt-banner .cbt-banner-back {
	position: absolute;
	width: 100%;
	height: 100%;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.cbt-banner .cbt-banner-front:hover,
.cbt-banner .cbt-banner-back:hover { opacity: .7; }

@media only screen and (max-width: 767px) {
	.cbt-banner { width: 100%; }
	.cbt-banner .cbt-banner-inner { height: 8rem; margin: .2rem 0; }
	.cbt-banner .cbt-banner-front {
		z-index: 2;
		background-color: #0096c2;
		background-image: url(/application/themes/cubit/images/top/banner_recruit_front_sp.png), url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAABCAYAAADn9T9+AAAAFklEQVQYV2NkwAKKDt77jyz85PMPBgBAcQXhLxTO0QAAAABJRU5ErkJggg==), url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAABCAYAAADn9T9+AAAAFklEQVQYV2NkwAKKDt77jyz85PMPBgBAcQXhLxTO0QAAAABJRU5ErkJggg==);
	}
	.cbt-banner .cbt-banner-back {
		background-color: #0096c2;
		background-image: url(/application/themes/cubit/images/top/banner_recruit_back_sp.png), url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAABCAYAAADn9T9+AAAAFklEQVQYV2NkwAKKDt77jyz85PMPBgBAcQXhLxTO0QAAAABJRU5ErkJggg==), url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAABCAYAAADn9T9+AAAAFklEQVQYV2NkwAKKDt77jyz85PMPBgBAcQXhLxTO0QAAAABJRU5ErkJggg==);
		-webkit-transform: rotateY(180deg);
	}
	.cbt-banner .cbt-banner-front,
	.cbt-banner .cbt-banner-back {
		background-position: center center, -.4rem .5rem, 0 7.5rem;
		background-repeat: no-repeat, repeat-x, repeat-x;
		background-size: contain, auto, auto;
	}
}

/* shake
---------------------------------------------------------- */
@-webkit-keyframes shake {
	 0% { -webkit-transform: translate(3px, 2px) rotate(0deg); }
	 10% { -webkit-transform: translate(-2px, -3px) rotate(-1deg); }
	 20% { -webkit-transform: translate(-4px, 0px) rotate(1deg); }
	 30% { -webkit-transform: translate(0px, 3px) rotate(0deg); }
	 40% { -webkit-transform: translate(2px, -2px) rotate(1deg); }
	 50% { -webkit-transform: translate(-2px, 3px) rotate(-1deg); }
	 60% { -webkit-transform: translate(-4px, 2px) rotate(0deg); }
	 70% { -webkit-transform: translate(3px, 2px) rotate(-1deg); }
	 80% { -webkit-transform: translate(-2px, -2px) rotate(1deg); }
	 90% { -webkit-transform: translate(2px, 4px) rotate(0deg); }
	 100% { -webkit-transform: translate(2px, -3px) rotate(-1deg); }
}
@keyframes shake {
	 0% { transform: translate(3px, 2px) rotate(0deg); }
	 10% { transform: translate(-2px, -3px) rotate(-1deg); }
	 20% { transform: translate(-4px, 0px) rotate(1deg); }
	 30% { transform: translate(0px, 3px) rotate(0deg); }
	 40% { transform: translate(2px, -2px) rotate(1deg); }
	 50% { transform: translate(-2px, 3px) rotate(-1deg); }
	 60% { transform: translate(-4px, 2px) rotate(0deg); }
	 70% { transform: translate(3px, 2px) rotate(-1deg); }
	 80% { transform: translate(-2px, -2px) rotate(1deg); }
	 90% { transform: translate(2px, 4px) rotate(0deg); }
	 100% { transform: translate(2px, -3px) rotate(-1deg); }
}

/* scaleOut
---------------------------------------------------------- */
@-webkit-keyframes scaleOut {
	0% { -webkit-transform: scale(0); }
	60% { -webkit-transform: scale(0); }
	100% { -webkit-transform: scale(1); }
}
@keyframes scaleOut {
	0% { transform: scale(0); }
	60% { transform: scale(0); }
	100% { transform: scale(1); }
}

/* fadeIn
---------------------------------------------------------- */
@-webkit-keyframes fadeIn {
	0% { opacity: 0; }
	100% { opacity: 1; }
}
@keyframes fadeIn {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

/* spinAround
---------------------------------------------------------- */
@-webkit-keyframes spinAround {
	0% {-webkit-transform: rotate(0deg);}
	100% {-webkit-transform: rotate(360deg);}
}
@keyframes spinAround {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}

/* rotateX
---------------------------------------------------------- */
@-webkit-keyframes top-banner-rotateX {
	0% { -webkit-transform: rotateX(0deg); }
	40% { -webkit-transform: rotateX(0deg); }
	55% { -webkit-transform: rotateX(180deg); }
	85% { -webkit-transform: rotateX(180deg); }
	100% { -webkit-transform: rotateX(359deg); }
}
@keyframes top-banner-rotateX {
	0% { transform: rotateX(0deg); }
	40% { transform: rotateX(0deg); }
	55% { transform: rotateX(180deg); }
	85% { transform: rotateX(180deg); }
	100% { transform: rotateX(359deg); }
}

/* rotateY
---------------------------------------------------------- */
@-webkit-keyframes top-banner-rotateY {
	0% { -webkit-transform: rotateY(0deg); }
	40% { -webkit-transform: rotateY(0deg); }
	55% { -webkit-transform: rotateY(180deg); }
	85% { -webkit-transform: rotateY(180deg); }
	100% { -webkit-transform: rotateY(359deg); }
}
@keyframes top-banner-rotateY {
	0% { transform: rotateY(0deg); }
	40% { transform: rotateY(0deg); }
	55% { transform: rotateY(180deg); }
	85% { transform: rotateY(180deg); }
	100% { transform: rotateY(359deg); }
}
