@charset "UTF-8";
/* -------------------------------------------------------
 * SECURITY HOUSE KENT Theme
 * Version: 1.0
 * generator: Brackets, Sass, Gulp
 * ---------------------------------------------------- */
/* -------------------------------------------------------
 * layout
 * ---------------------------------------------------- */
/* -------------------------------------------------------
 * header
 * ---------------------------------------------------- */
.l-header {
	background: #ffffff;
}

.c-header__inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 100%;
	max-width: 900px;
	height: 92px;
	margin: 0 auto;
	padding: 0 48px;
	background: #ffffff;
}

@media screen and (max-width: 600px) {
	.c-header__inner {
		position: fixed;
		width: 100%;
		height: 44px;
		margin: 0;
		padding: 0;
		z-index: 2;
	}
}

/* header logo */
.c-header__logo {
	width: 100%;
	padding: 22px 0;
	background: #ffffff;
}

@media screen and (max-width: 900px) {
	.c-header__logo {
		padding: 26px 0;
	}
}

@media screen and (max-width: 600px) {
	.c-header__logo {
		width: auto;
		height: 44px;
		padding: calc((44px - 6vw) / 2);
	}
}

.c-header__logo--kent {
	display: block;
	width: auto;
	height: 48px;
}

@media screen and (max-width: 900px) {
	.c-header__logo--kent {
		height: 40px;
	}
}

@media screen and (max-width: 600px) {
	.c-header__logo--kent {
		width: auto;
		height: 6vw;
	}
}

.c-header__securityhouse {
	height: 24px;
}

@media screen and (max-width: 600px) {
	.c-header__securityhouse {
		width: 100px;
		height: auto;
		margin: 0 60px 0 0;
	}
}

.c-header__securityhouse img {
	width: auto;
	height: 24px;
}

@media screen and (max-width: 900px) {
	.c-header__securityhouse img {
		height: 20px;
	}
}

@media screen and (max-width: 600px) {
	.c-header__securityhouse img {
		width: 100px;
		height: auto;
	}
}

#c-gmenu--container {
	display: none;
	position: fixed;
	top: 44px;
	left: 0;
	width: 100%;
	height: 100vh;
	background: #0F5582;
	z-index: 1;
}

@media screen and (min-width: 600px) {
	#c-gmenu--container {
		display: block !important;
		position: static;
		width: 100%;
		height: 48px;
		line-height: 1em;
	}
}

.c-gmenu {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	width: 100%;
	max-width: 900px;
	height: 48px;
	margin: 0 auto;
	padding: 0 40px;
	font-family: "Shin Go Regular", sans-serif;
	font-size: 1.5rem;
	line-height: 1;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
}

@media screen and (max-width: 900px) {
	.c-gmenu {
		font-size: 1.4rem;
	}
}

@media screen and (max-width: 600px) {
	.c-gmenu {
		display: block;
		width: 100%;
		margin: 0;
		padding: 32px;
	}
}

.c-gmenu li {
	display: block;
	padding: 12px 0;
	z-index: 2;
	color: #ffffff;
}

@media screen and (max-width: 600px) {
	.c-gmenu li {
		margin: 0 0 1rem;
		padding: 0;
	}
}

.c-gmenu li a {
	display: block;
	padding: 6px;
	border-radius: 4px;
	color: #ffffff;
	-webkit-transition: .35s all ease;
	transition: .35s all ease;
	cursor: pointer;
}

.c-gmenu li a:hover {
	color: #0F5582;
	text-decoration: none;
	background: #ffffff;
}

@media screen and (max-width: 600px) {
	.c-gmenu li a {
		padding: 8px;
	}
	.c-gmenu li a:hover {
		color: #ffffff;
		background: transparent;
	}
}

.c-gmenu li.is-active a {
	color: #0F5582;
	background-color: #ffffff;
	cursor: default;
}

@media screen and (max-width: 600px) {
	.c-gmenu li.is-active a {
		border-bottom: 0;
		border-radius: 8px;
	}
}

/* 提供システムに階層表示アロー */
.c-gmenu li.has-children > a.is-trigger {
	position: relative;
	padding: 6px 24px 6px 6px;
}

.c-gmenu li.has-children > a.is-trigger::after {
	content: '';
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	right: 9px;
	width: 6px;
	height: 6px;
	border-right: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.c-gmenu li.has-children > a.is-trigger:hover::after {
	border-right-color: #0F5582;
	border-bottom-color: #0F5582;
}

@media screen and (max-width: 600px) {
	.c-gmenu li.has-children > a.is-trigger {
		padding: 6px 24px 6px 6px;
	}
	.c-gmenu li.has-children > a.is-trigger:hover::after {
		border-right-color: #ffffff;
		border-bottom-color: #ffffff;
	}
}

/* 提供システムに階層表示アロー（アクティブ時） */
.c-gmenu li.has-children > a.is-trigger.is-active::after {
	top: calc(50% - 2px);
	border-top: 1px solid #ffffff;
	border-left: 1px solid #ffffff;
	border-right: 0;
	border-bottom: 0;
}

.c-gmenu li.has-children > a.is-trigger.is-active:hover::after {
	border-top-color: #0F5582;
	border-left-color: #0F5582;
}

@media screen and (max-width: 600px) {
	.c-gmenu li.has-children > a.is-trigger.is-active:hover::after {
		border-top-color: #ffffff;
		border-left-color: #ffffff;
	}
}

/* 提供システムに階層表示アロー（下層展開時） */
.c-gmenu li.has-children.is-active-parent > a.is-trigger::after {
	top: calc(50% - 2px);
	border-top: 1px solid #0F5582;
	border-left: 1px solid #0F5582;
	border-right: 0;
	border-bottom: 0;
}

@media screen and (max-width: 600px) {
	.c-gmenu li.has-children.is-active-parent > a.is-trigger::after {
		border-top: 1px solid #ffffff;
		border-left: 1px solid #ffffff;
	}
}

/* 提供システムに階層表示アロー（下層アクティブ／折りたたみ時） */
.c-gmenu li.has-children.is-active-parent > a.is-trigger.is-active::after {
	top: calc(50% - 5px);
	border-right: 1px solid #0F5582;
	border-bottom: 1px solid #0F5582;
	border-top: 0;
	border-left: 0;
}

@media screen and (max-width: 600px) {
	.c-gmenu li.has-children.is-active-parent > a.is-trigger.is-active::after {
		border-right: 1px solid #ffffff;
		border-bottom: 1px solid #ffffff;
	}
}

.is-target {
	display: none;
	position: absolute;
	left: 0;
	top: 140px;
	width: 100%;
	background: rgba(120, 195, 230, 0.8);
}

@media screen and (max-width: 600px) {
	.is-target {
		position: relative;
		left: auto;
		top: auto;
		width: 100%;
		margin: 0 auto;
		padding: 1rem 0 0;
		color: #fff;
		background: transparent;
		z-index: 1;
	}
}

.is-target ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	padding: 0 40px;
	line-height: 1.4;
	text-align: center;
}

@media screen and (max-width: 600px) {
	.is-target ul {
		display: block;
		width: 100%;
		margin: 0;
		padding: 0;
		text-align: left;
	}
	.is-target ul li {
		margin: 0 0 1rem 1.4rem;
		padding: 0;
	}
}

.c-gmenu br {
	display: none;
}

@media screen and (max-width: 900px) {
	.c-gmenu br {
		display: block;
	}
}

@media screen and (max-width: 600px) {
	.c-gmenu br {
		display: none;
	}
}

.is-target .is-active a {
	padding-left: 1em;
	padding-right: 1em;
	color: black;
	background: white;
	cursor: default;
}

.is-active-parent > .is-trigger {
	color: #0F5582;
	text-decoration: none;
	background: #ffffff;
	cursor: default;
}

@media screen and (max-width: 600px) {
	.is-active-parent > .is-trigger {
		color: #ffffff;
		background: transparent;
	}
}

.is-active-parent > .is-target {
	display: block;
}

.has-children.is-active .is-target {
	display: block;
}

.c-g-menu__hdg--container {
	display: none;
}

@media screen and (max-width: 600px) {
	.c-g-menu__hdg--container {
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		width: 44px;
		height: 44px;
		margin: 0;
		background: #0F5582;
		z-index: 3;
	}
}

.c-g-menu__hdg {
	display: block;
	margin: 28px 0 6px;
	font-size: 10px;
	line-height: 1;
	color: #ffffff;
	text-align: center;
	-webkit-transition: all .2s;
	transition: all .2s;
}

.c-g-menu__hdg::before,
.c-g-menu__hdg::after {
	position: absolute;
	content: '';
	display: block;
	width: 28px;
	height: 2px;
	background: #ffffff;
	-webkit-transition: all .2s;
	transition: all .2s;
}

.c-g-menu__hdg::before {
	top: 10px;
	left: 8px;
}

.c-g-menu__hdg::after {
	top: 18px;
	left: 8px;
}

.c-g-menu__hdg.is-active::before {
	width: 20px;
	-webkit-transform: rotate(45deg) translate(6px, 0px);
	        transform: rotate(45deg) translate(6px, 0px);
}

.c-g-menu__hdg.is-active::after {
	width: 20px;
	-webkit-transform: rotate(-45deg) translate(6px, 0px);
	        transform: rotate(-45deg) translate(6px, 0px);
}

/* -------------------------------------------------------
 * main
 * ---------------------------------------------------- */
.l-wrapper {
	width: 100%;
}

.l-main {
	width: 100%;
}

/* hero */
.c-hero {
	position: relative;
	width: 100%;
	height: 480px;
	z-index: -1;
}

@media screen and (max-width: 600px) {
	.c-hero {
		width: 100%;
		-webkit-transform: translateY(44px);
		        transform: translateY(44px);
	}
}

.c-hero--container {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	max-width: 900px;
	height: auto;
	margin: 0 auto;
	padding: 0 40px;
	text-align: center;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

.c-hero__heading--large--ja {
	margin: 0 0 1rem;
	font-family: "Shin Go Regular", sans-serif;
	font-size: 4rem;
	line-height: 1.4;
	color: #ffffff;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
}

@media screen and (max-width: 900px) {
	.c-hero__heading--large--ja {
		font-size: 3rem;
	}
}

@media screen and (max-width: 600px) {
	.c-hero__heading--large--ja {
		width: 100%;
		font-size: 1.8rem;
		text-align: center;
	}
}

.c-hero__txt--ja {
	font-family: "Shin Go Regular", sans-serif;
	font-size: 1.8rem;
	line-height: 1.6;
	color: #ffffff;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
}

@media screen and (max-width: 600px) {
	.c-hero__txt--ja {
		font-size: 1.2rem;
	}
}

.c-hero__txt--en {
	font-family: "Open Sans", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 2rem;
	line-height: 1;
	color: #ffffff;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
}

@media screen and (max-width: 600px) {
	.c-hero__txt--en {
		margin-top: 1rem;
		font-size: 1.4rem;
	}
}

/* main */
.l-main--container {
	position: relative;
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	padding: 64px 40px 104px;
}

@media screen and (max-width: 600px) {
	.l-main--container {
		width: 100%;
		margin: 44px 0 0;
		padding: 32px 32px 96px;
	}
}

.l-col--container {
	margin: 0 0 2rem;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

@media screen and (max-width: 600px) {
	.l-col--container {
		display: block;
	}
}

.c-heading--xlarge--ja {
	font-family: "Shin Go Regular", sans-serif;
	font-size: 4rem;
	line-height: 1.2;
	color: #0F5582;
}

.c-heading--large--ja {
	margin: 0 0 2rem;
	font-family: "Shin Go Bold", sans-serif;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.3;
	color: #0F5582;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
}

@media screen and (max-width: 900px) {
	.c-heading--large--ja {
		font-size: 2rem;
	}
}

@media screen and (max-width: 600px) {
	.c-heading--large--ja {
		font-size: 1.8rem;
		text-align: center;
	}
}

.c-heading--medium--ja {
	margin: 0 0 1.6rem;
	font-family: "Shin Go Bold", sans-serif;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.2;
	color: #0F5582;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
}

@media screen and (max-width: 600px) {
	.c-heading--medium--ja {
		font-size: 1.8rem;
		text-align: center;
	}
}

.c-txt--large--ja {
	margin: 0 0 4rem;
	font-family: sans-serif;
	font-size: 1.6rem;
	line-height: 1.8;
	color: #000000;
}

@media screen and (max-width: 900px) {
	.c-txt--large--ja {
		font-size: 1.4rem;
		line-height: 1.6;
	}
}

.c-txt--medium--ja {
	margin: 0 0 4rem;
	font-family: sans-serif;
	font-size: 1.4rem;
	line-height: 1.6;
	color: #000000;
}

.c-article--col2 {
	width: 50%;
	padding: 0 20px 0 0;
}

.c-article--col2:last-of-type {
	padding: 0 0 0 20px;
}

@media screen and (max-width: 600px) {
	.c-article--col2 {
		width: 100%;
		margin-bottom: 8rem;
		padding: 0;
	}
	.c-article--col2:last-of-type {
		padding: 0;
	}
}

.c-button {
	height: 44px;
	margin: 0 0 4rem;
	padding: 0;
	font-size: 1.6rem;
	line-height: 1;
	color: #0F5582;
	text-align: center;
	border: none;
	background: transparent;
}

.c-button a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 1.4rem;
	border-radius: 8px;
	border: 1px solid #0F5582;
	color: #0F5582;
	background: #ffffff;
	-webkit-transition: all .2s;
	transition: all .2s;
}

.c-button a:hover {
	color: #ffffff;
	text-decoration: none;
	background: #0F5582;
}

.c-fig--system {
	width: 100%;
	padding: 40px;
	border: 3px solid #78C3E6;
	border-radius: 8px;
}

@media screen and (max-width: 600px) {
	.c-fig--system {
		padding: 20px;
	}
}

.c-equip-container {
	width: 100%;
}

.c-equip-fig {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: space-around;
	    -ms-flex-pack: distribute;
	        justify-content: space-around;
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	margin: 0 0 2rem;
}

@media screen and (max-width: 600px) {
	.p-fig--bein {
		width: 40%;
	}
}

.c-equip-fig:nth-child(even) {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
}

@media screen and (max-width: 600px) {
	.p-pic--bein--app {
		width: 100%;
	}
}

.c-equip-fig__cap__txt {
	margin: 0 0 1rem;
	font-size: 1.4rem;
	line-height: 1.4;
}

@media screen and (max-width: 600px) {
	.c-equip-fig__cap__txt {
		font-size: 1rem;
	}
}

.p-button--equip {
	height: 32px;
}

.p-button--equip a {
	padding: 8px;
	color: #ffffff;
	border: 0;
	background: #82AF50;
}

.p-button--equip a:hover {
	background: #587b33;
}

.p-button--equip--other {
	width: 100%;
}

/* home */
.p-hero--home {
	background: url("../img/hero--home.jpg") no-repeat;
	background-position: center top;
	background-size: cover;
}

.p-hero--home .c-hero--container::after {
	position: absolute;
	bottom: -30rem;
	right: 40px;
	display: block;
	content: '';
	width: 240px;
	height: 240px;
	border-radius: 120px;
	background: #ffffff url("../img/logo--symbol.svg") no-repeat;
	background-size: contain;
	-webkit-box-shadow: 0 2px 4px 4px rgba(0, 0, 0, 0.15);
	        box-shadow: 0 2px 4px 4px rgba(0, 0, 0, 0.15);
}

@media screen and (max-width: 900px) {
	.p-hero--home .c-hero--container::after {
		bottom: -27rem;
		width: 160px;
		height: 160px;
		border-radius: 80px;
	}
}

@media screen and (max-width: 600px) {
	.p-hero--home {
		height: calc(100vh - 44px);
	}
	.p-hero--home .c-hero--container::after {
		position: absolute;
		top: calc(50% - 120px);
		left: 50%;
		width: 120px;
		height: 120px;
		-webkit-box-shadow: none;
		        box-shadow: none;
		-webkit-transform: translate(-50%, 0);
		        transform: translate(-50%, 0);
	}
}

.p-hero__heading--home {
	text-align: left;
}

@media screen and (max-width: 600px) {
	.p-hero__heading--home {
		text-align: center;
		-webkit-transform: translate(0, 4.8rem);
		        transform: translate(0, 4.8rem);
	}
}

.p-copy--main--home {
	margin: 7rem 0 6.4rem;
	font-size: 8rem;
}

.p-copy--main--home img {
	width: 50%;
}

@media screen and (max-width: 600px) {
	.p-copy--main--home img {
		width: 64%;
	}
}

.p-shacho--home {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: space-around;
	    -ms-flex-pack: distribute;
	        justify-content: space-around;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
	-webkit-box-align: end;
	-webkit-align-items: flex-end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	position: absolute;
	top: 13rem;
	right: 40px;
	width: 50%;
	height: auto;
}

.p-shacho--home img {
	width: 50%;
	height: auto;
	margin: 0;
}

@media screen and (max-width: 600px) {
	.p-shacho--home {
		display: block;
		top: 10rem;
		right: 32px;
		width: 80px;
		height: auto;
	}
	.p-shacho--home img {
		width: 80px;
	}
}

.c-shacho__name {
	width: 50%;
	margin: 0 10px 0 0;
	font-family: sans-serif;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1;
	text-align: right;
}

.c-shacho__name span {
	display: inline-block;
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: normal;
}

@media screen and (max-width: 600px) {
	.c-shacho__name {
		width: 80px;
		font-size: 1.4rem;
		text-align: center;
	}
	.c-shacho__name span {
		margin: 0 0 4px;
	}
}

.p-button--tel {
	width: 100%;
	font-family: "Open Sans", sans-serif;
	font-size: 2.4rem;
	font-weight: 700;
	font-style: normal;
	border: 0;
}

.p-button--tel a {
	padding: 1rem;
	color: #ffffff;
	border: 0;
	background: #A0292E;
}

.p-button--tel a:hover {
	color: #ffffff;
	background: #A0292E;
	cursor: default;
}

.p-button--contact {
	width: 100%;
	font-size: 1.4rem;
}

.p-sect--system {
	width: 100%;
	padding: 64px 0;
	background: #E6F0F5;
}

.p-sect--system .c-heading--large--ja {
	width: 100%;
	text-align: center;
	-webkit-transform: translate(0, -78px);
	        transform: translate(0, -78px);
}

.p-sect--system__list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	width: 100%;
	max-width: 900px;
	margin: 0 auto 116px;
	padding: 0 40px;
	list-style-type: none;
}

@media screen and (max-width: 600px) {
	.p-sect--system__list {
		display: block;
		width: 100%;
	}
}

.p-sect--system__list__item {
	width: 30%;
}

.p-sect--system__list__item img {
	width: 100%;
	height: auto;
	margin: 0 0 2rem;
}

@media screen and (max-width: 600px) {
	.p-sect--system__list__item {
		width: 100%;
		margin: 0 auto 8rem;
	}
	.p-sect--system__list__item img {
		display: block;
		width: 200px;
		height: auto;
		margin: 0 auto 2rem;
	}
	.p-sect--system__list__item .c-heading--medium--ja br {
		display: none;
	}
}

.p-sect--system__list__item .c-heading--medium--ja {
	margin: 0 0 1rem;
	text-align: center;
}

@media screen and (max-width: 900px) {
	.p-sect--system__list__item .c-heading--medium--ja {
		font-size: 2.4vw;
	}
}

@media screen and (max-width: 600px) {
	.p-sect--system__list__item .c-heading--medium--ja {
		font-size: 1.8rem;
	}
}

.p-sect--system__list__item .c-txt--large--ja {
	margin: 0 0 2rem;
	line-height: 1.3;
	text-align: center;
	color: #0F5582;
}

.p-sect--system__button {
	width: 100%;
}

/* securityhouse */
.p-hero--securityhouse {
	background: url("../img/hero--securityhouse.jpg") no-repeat;
	background-position: center center;
	background-size: cover;
}

@media screen and (max-width: 600px) {
	.p-hero--securityhouse {
		height: 40vh;
	}
}

.c-logo--securityhouse {
	width: 80%;
	height: auto;
	margin: 0 0 6.4rem;
}

@media screen and (max-width: 600px) {
	.c-logo--securityhouse {
		width: 100%;
	}
}

.p-fig--securityhouse-network {
	float: right;
	width: 300px;
	height: auto;
	-webkit-transform: translate(0, -100px);
	        transform: translate(0, -100px);
}

@media screen and (max-width: 600px) {
	.p-fig--securityhouse-network {
		width: 50%;
		-webkit-transform: translate(0, 0);
		        transform: translate(0, 0);
	}
}

/* system */
.p-hero--system {
	background: url("../img/hero--system.jpg") no-repeat;
	background-position: center center;
	background-size: cover;
}

@media screen and (max-width: 600px) {
	.p-hero--system {
		height: 40vh;
	}
}

@media screen and (max-width: 600px) {
	.p-hero__heading--system {
		font-size: 1.8rem;
	}
}

.c-systemindex__article {
	position: relative;
	width: 100%;
	height: 320px;
	margin: 0 0 64px;
	padding: 0 0 0 340px;
}

.c-systemindex__article::before {
	position: absolute;
	top: -45px;
	left: -45px;
	display: block;
	content: '';
	width: 180px;
	height: 180px;
}

@media screen and (max-width: 900px) {
	.c-systemindex__article {
		height: auto;
		padding: 0 0 0 260px;
	}
	.c-systemindex__article::before {
		top: -24px;
		left: -24px;
		width: 120px;
		height: 120px;
	}
}

@media screen and (max-width: 600px) {
	.c-systemindex__article {
		width: 100%;
		height: auto;
		margin: 0 auto 10rem;
		padding: calc(100vw - 64px) 0 0;
	}
	.c-systemindex__article::before {
		top: -20px;
		left: -20px;
		width: 120px;
		height: 120px;
	}
}

.p-systemindex__prevention {
	background: url("../img/systemindex--prevention.jpg") no-repeat;
}

.p-systemindex__prevention::before {
	background: url("../img/system__prevention--baloon.svg") no-repeat;
	background-size: contain;
}

@media screen and (max-width: 900px) {
	.p-systemindex__prevention {
		background-size: 240px auto;
	}
}

@media screen and (max-width: 600px) {
	.p-systemindex__prevention {
		background-size: contain;
	}
}

.p-systemindex__bein {
	background: url("../img/systemindex--bein.jpg") no-repeat;
}

.p-systemindex__bein::before {
	background: url("../img/system__bein--baloon.svg") no-repeat;
	background-size: contain;
}

@media screen and (max-width: 900px) {
	.p-systemindex__bein {
		background-size: 240px auto;
	}
}

@media screen and (max-width: 600px) {
	.p-systemindex__bein {
		background-size: contain;
	}
}

.p-systemindex__remote {
	background: url("../img/systemindex--remote.jpg") no-repeat;
}

.p-systemindex__remote::before {
	background: url("../img/system__remote--baloon.svg") no-repeat;
	background-size: contain;
}

@media screen and (max-width: 900px) {
	.p-systemindex__remote {
		background-size: 240px auto;
	}
}

@media screen and (max-width: 600px) {
	.p-systemindex__remote {
		background-size: contain;
	}
}

.c-systemindex__article .c-heading--large--ja {
	font-size: 2.8rem;
}

@media screen and (max-width: 600px) {
	.c-systemindex__article .c-heading--large--ja {
		margin-top: 2rem;
		font-size: 1.8rem;
	}
}

.p-system__heading--medium {
	margin-bottom: 0.8rem;
	color: #78C3E6;
}

@media screen and (max-width: 600px) {
	.p-system__heading--medium {
		font-size: 1.4rem;
	}
}

.c-systemindex__article .c-button {
	width: 50%;
}

@media screen and (max-width: 900px) {
	.c-systemindex__article .c-button {
		width: 100%;
	}
}

/* prevention */
.p-hero--prevention {
	background: url("../img/hero--prevention.jpg") no-repeat;
	background-position: center center;
	background-size: cover;
}

@media screen and (max-width: 600px) {
	.p-hero--prevention {
		height: 40vh;
	}
}

.p-pic--prevention--speaker,
.p-pic--prevention--sensor,
.p-pic--prevention--admin {
	display: block;
	width: 186px;
	height: auto;
	margin: 0 auto 1rem;
}

@media screen and (max-width: 900px) {
	.p-pic--prevention--speaker,
	.p-pic--prevention--sensor,
	.p-pic--prevention--admin {
		width: 60%;
	}
}

.p-pic--prevention--admin {
	width: 276px;
}

@media screen and (max-width: 900px) {
	.p-pic--prevention--admin {
		width: 90%;
	}
}

.p-fig--prevention__arrow {
	display: block;
	width: 40px;
	height: auto;
	margin: 0 auto 3rem;
}

.p-pic--prevention--PA-6812W,
.p-pic--prevention--PB-20TE {
	width: 50%;
}

/* bein */
.p-hero--bein {
	background: url("../img/hero--bein.jpg") no-repeat;
	background-position: center center;
	background-size: cover;
}

@media screen and (max-width: 600px) {
	.p-hero--bein {
		height: 40vh;
	}
}

.p-bein-lead {
	padding: 0 143.6px 0 0;
}

.p-bein-lead::after {
	position: absolute;
	top: 60px;
	right: 40px;
	display: block;
	content: '';
	width: 123.6px;
	height: 267.6px;
	background: url("../img/bein--app_select.png") no-repeat;
	background-size: contain;
}

@media screen and (max-width: 600px) {
	.p-bein-lead {
		padding: 0;
	}
	.p-bein-lead::after {
		display: none;
	}
}

.c-bein-fig-container {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.c-bein-fig-heading {
	width: 100%;
	margin: 0 auto 1rem;
	padding: 0.5rem;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1;
	color: #ffffff;
	text-align: center;
	border-radius: 4px;
	background: #78C3E6;
}

@media screen and (max-width: 600px) {
	.c-bein-fig-heading {
		line-height: 1.3;
	}
}

.c-fig--system > .c-bein-fig-container:nth-of-type(1) .c-equip-fig:nth-of-type(3) {
	position: relative;
}

.c-fig--system > .c-bein-fig-container:nth-of-type(1) .c-equip-fig:nth-of-type(3)::after {
	position: absolute;
	left: -84px;
	bottom: 18px;
	display: block;
	content: '';
	width: 148px;
	height: 96px;
	background: url("../img/bein--baloon.svg") no-repeat;
	background-size: contain;
}

@media screen and (max-width: 600px) {
	.c-fig--system > .c-bein-fig-container:nth-of-type(1) .c-equip-fig:nth-of-type(3)::after {
		display: none;
	}
}

.p-fig--bein__arrow {
	display: block;
	width: 40px;
	height: auto;
	margin: 0 auto 3rem;
}

@media screen and (max-width: 600px) {
	.p-fig--bein__arrow {
		width: 20px;
	}
}

.p-bein-article--article {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

@media screen and (max-width: 600px) {
	.p-bein-article--article {
		display: block;
	}
}

.p-bein-article--article .c-equip-container .c-equip-fig {
	width: 100%;
}

.p-pic--bein--vcam {
	width: 100%;
	height: auto;
}

/* remote */
.p-hero--remote {
	background: url("../img/hero--remote.jpg") no-repeat;
	background-position: center center;
	background-size: cover;
}

@media screen and (max-width: 600px) {
	.p-hero--remote {
		height: 40vh;
	}
}

.p-pic--remote--entrance,
.p-pic--remote--recorder,
.p-pic--remote--shop {
	display: block;
	width: 186px;
	height: auto;
	margin: 0 auto 1rem;
}

@media screen and (max-width: 600px) {
	.p-pic--remote--entrance,
	.p-pic--remote--recorder,
	.p-pic--remote--shop {
		width: 60%;
	}
}

.p-pic--remote--entrance {
	width: 358px;
}

@media screen and (max-width: 600px) {
	.p-pic--remote--entrance {
		width: 100%;
	}
}

.p-pic--remote--shop {
	width: 253px;
}

@media screen and (max-width: 600px) {
	.p-pic--remote--shop {
		width: 80%;
	}
}

.p-fig--remote__arrow {
	display: block;
	width: 40px;
	height: auto;
	margin: 0 auto 3rem;
}

.p-artcle--remote {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	position: relative;
}

@media screen and (max-width: 600px) {
	.p-artcle--remote {
		display: block;
	}
}

.p-txt--remote-container {
	width: 50%;
	margin-right: 2rem;
}

@media screen and (max-width: 600px) {
	.p-txt--remote-container {
		width: 100%;
	}
}

.p-pic--remote-container {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 50%;
}

@media screen and (max-width: 600px) {
	.p-pic--remote-container {
		width: 100%;
	}
}

.p-pic--remote--KT1080VD-IR36,
.p-pic--remote--KT1080BL-IR48 {
	display: block;
	height: 24%;
	margin: 0 auto 2rem;
}

@media screen and (max-width: 600px) {
	.p-pic--remote--KT1080VD-IR36,
	.p-pic--remote--KT1080BL-IR48 {
		width: auto;
		height: 80px;
	}
}

.p-button--equip--remote {
	position: absolute;
	top: 20rem;
	right: 0;
	width: calc(50% - 1rem);
}

@media screen and (max-width: 600px) {
	.p-button--equip--remote {
		top: initial;
		bottom: -6rem;
		width: 100%;
	}
}

/* about */
.p-hero--about {
	background: url("../img/hero--about.jpg") no-repeat;
	background-position: center center;
	background-size: cover;
}

@media screen and (max-width: 600px) {
	.p-hero--about {
		height: 40vh;
	}
}

.p-heading--about {
	padding: 0 0 0.4rem;
	text-align: left;
	border-bottom: 2px solid #0F5582;
}

.c-def-list {
	font-size: 1.6rem;
	line-height: 1.4;
}

@media screen and (max-width: 600px) {
	.c-def-list {
		font-size: 1.2rem;
	}
}

.c-def-list dt {
	float: left;
	clear: left;
	width: 9.6rem;
	margin: 0 1.6rem 0.8rem 0;
}

@media screen and (max-width: 600px) {
	.c-def-list dt {
		width: 7.2rem;
		margin-right: 1.2rem;
	}
}

.c-def-list dd {
	margin: 0 0 0.8rem 11.2rem;
}

@media screen and (max-width: 600px) {
	.c-def-list dd {
		margin-left: 8.4rem;
	}
}

.l-col--container > .c-article--col2:not(:last-of-type) > .c-normal-list:last-of-type {
	margin-bottom: -6rem;
}

@media screen and (max-width: 600px) {
	.p-heading--about--medium {
		text-align: left;
	}
}

.c-normal-list {
	margin: 0 0 2rem;
	font-size: 1.4em;
	line-height: 1.4;
	list-style-position: inside;
}

@media screen and (max-width: 600px) {
	.c-normal-list {
		font-size: 1.2rem;
	}
}

.c-list-paren {
	font-size: 1.2rem;
	vertical-align: middle;
}

/* contact */
.p-hero--contact {
	background: url("../img/hero--contact.jpg") no-repeat;
	background-position: center bottom;
	background-size: cover;
}

@media screen and (max-width: 600px) {
	.p-hero--contact {
		height: 40vh;
	}
}

.p-contact__warning {
	width: 30%;
}

@media screen and (max-width: 900px) {
	.p-contact__warning {
		width: 100%;
	}
}

@media screen and (max-width: 900px) {
	.c-form--container {
		display: block;
	}
}

.c-form {
	width: 70%;
}

@media screen and (max-width: 900px) {
	.c-form {
		width: 100%;
		margin: 0 0 12rem;
	}
}

.c-form--col2 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	margin: 0 0 2rem;
	font-size: 1.6rem;
	line-height: 1.6;
}

@media screen and (max-width: 600px) {
	.c-form--col2 {
		display: block;
	}
}

.c-form__label {
	width: 19rem;
	padding: 0.5rem 0;
	font-family: "Shin Go Bold", sans-serif;
	font-weight: bold;
	color: #0F5582;
}

@media screen and (max-width: 600px) {
	.c-form__label {
		display: block;
		margin: 0 0 0.8rem;
	}
}

.c-form--col2 > div {
	width: calc(100% - 19rem);
}

@media screen and (max-width: 600px) {
	.c-form--col2 > div {
		width: 100%;
	}
}

.c-badge {
	display: inline-block;
	padding: 0.4rem;
	font-size: 1.2rem;
	line-height: 1;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	border-radius: .25rem;
}

.c-badge--required {
	margin: -0.25rem 0 0 0;
	background: #A0292E;
}

.c-form__box {
	display: block;
	width: 100%;
	height: 3.5rem;
	padding: 0.5rem 0.75rem;
	font-size: 1.6rem;
	line-height: 1.6;
	border: 1px solid gray;
	border-radius: 4px !important;
	background: #fff;
	-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
	transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
	transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
	transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
}

.c-form__confirm__box {
	width: 100%;
	padding: 0.5rem 0;
	font-size: 1.6rem;
	line-height: 1.6;
}

.c-form__area {
	height: 16rem;
}

.c-form__group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
}

.c-form__addon {
	width: 3.5rem;
	height: 3.5rem;
	padding: 0.5rem;
	font-size: 1.6rem;
	line-height: 1.6;
	color: gray;
	text-align: center;
	background: #e9e9e9;
	border: 1px solid gray;
	border-radius: 4px 0 0 4px;
}

.c-form__plusaddon {
	width: calc(100% - 3.5rem);
	border-left: 0;
	border-radius: 0 4px 4px 0 !important;
}

.c-form__addon--suffix {
	width: 3.5rem;
	height: 3.5rem;
	padding: 0.5rem;
	font-size: 1.6rem;
	line-height: 1.6;
	color: gray;
	text-align: center;
	background: #e9e9e9;
	border: 1px solid gray;
	border-radius: 0 4px 4px 0;
}

.c-form__plusaddon--suffix {
	width: calc(100% - 3.5rem);
	border-right: 0;
	border-radius: 4px 0 0 4px !important;
}

.c-alert {
	position: relative;
	width: 360px;
	margin: 1rem 0 0;
	padding: 9px;
	font-size: 1.4rem;
	line-height: 1.4;
	color: #ffffff;
	border-radius: 4px;
	background: #A0292E;
}

.c-alert::before {
	position: absolute;
	top: -4px;
	left: 1rem;
	display: block;
	content: "";
	width: 12px;
	height: 12px;
	background: #A0292E;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.c-alert--message {
	width: 100%;
	margin: 0 0 4rem;
}

.c-alert--message::before {
	display: none;
}

.p-button--zip {
	margin: 1rem 0;
	padding: 0.5rem 0.75rem;
	font-size: 1.2rem;
	color: #ffffff;
	border: 0;
	border-radius: 4px !important;
	background: #0F5582;
	cursor: pointer;
	-webkit-transition: all .2s;
	transition: all .2s;
}

.p-button--zip:hover {
	background: #78C3E6;
}

@media screen and (max-width: 600px) {
	.p-button--zip {
		width: 100%;
	}
}

.c-button--input {
	display: block;
	height: 44px;
	margin: 0 0 4rem auto;
	padding: 1.4rem;
	font-size: 1.6rem;
	line-height: 1;
	color: #0F5582;
	text-align: center;
	border: 1px solid #0F5582;
	border-radius: 8px !important;
	background: #ffffff;
	cursor: pointer;
	-webkit-transition: all .2s;
	transition: all .2s;
}

.c-button--input:hover {
	background: #78C3E6;
}

@media screen and (max-width: 600px) {
	.c-button--input {
		width: 100%;
	}
}

.c-submit--container {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 0 0 0 auto;
}

@media screen and (max-width: 600px) {
	.c-submit--container > .c-button--input {
		width: 50%;
	}
}

.c-button--input--submit {
	margin: 0 0 0 1rem;
	color: #ffffff;
	background: #0F5582;
}

.c-button--input--submit:hover {
	color: #0F5582;
	border: 1px solid #78C3E6;
}

@media screen and (max-width: 600px) {
	.c-button--input--submit {
		width: 50%;
	}
}

.p-form--copyright {
	font-size: 1.4rem;
	line-height: 1.4;
}

/* -------------------------------------------------------
 * footer
 * ---------------------------------------------------- */
.l-footer {
	position: relative;
	width: 100%;
	padding: 120px 40px 40px;
	background: #0F5582;
}

.c-footer__pagetop {
	position: absolute;
	left: calc(50% - 52px);
	top: -52px;
	width: 104px;
	height: 104px;
	margin: 0 auto;
	border-radius: 52px;
	background: #ffffff;
	-webkit-transition: all .15s;
	transition: all .15s;
}

.c-footer__pagetop:hover {
	-webkit-box-shadow: 0 4px 8px 8px rgba(0, 0, 0, 0.1);
	        box-shadow: 0 4px 8px 8px rgba(0, 0, 0, 0.1);
	-webkit-transform: scale(1.1);
	        transform: scale(1.1);
}

.c-footer__bannerlist {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: space-around;
	    -ms-flex-pack: distribute;
	        justify-content: space-around;
	width: 100%;
	max-width: 900px;
	margin: 0 auto 4rem;
	padding: 0;
	list-style-type: none;
}

.c-footer__bannerlist li {
	margin: 0 1rem 0 0;
}

.c-footer__bannerlist li:last-of-type {
	margin: 0;
}

.c-footer__bannerlist li a {
	display: block;
	width: 100%;
}

.c-footer__bannerlist li a img {
	display: block;
	width: 100%;
}

@media screen and (max-width: 600px) {
	.c-footer__bannerlist {
		display: block;
		width: 100%;
		padding: 0;
	}
	.c-footer__bannerlist li {
		height: 60px;
		margin: 0 0 32px;
		border-radius: 8px;
		background: #ffffff;
	}
	.c-footer__bannerlist li:nth-of-type(2) {
		background: #F29C9F;
	}
	.c-footer__bannerlist li:nth-of-type(3) {
		background: #000000;
	}
	.c-footer__bannerlist li:nth-of-type(4) {
		background: #A4BA75;
	}
	.c-footer__bannerlist li a {
		display: block;
		width: 100%;
		height: 60px;
		border-radius: 8px;
	}
	.c-footer__bannerlist li a img {
		display: block;
		width: auto;
		height: 60px;
		margin: 0 auto;
	}
}

.c-footer__menu {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: 100%;
	margin: 0 auto 4rem;
	font-family: sans-serif;
	font-size: 1.4rem;
	line-height: 1;
	list-style-type: none;
	color: #ffffff;
}

@media screen and (max-width: 900px) {
	.c-footer__menu {
		font-size: 1.2rem;
	}
}

@media screen and (max-width: 600px) {
	.c-footer__menu {
		display: block;
		width: 100%;
	}
}

.c-footer__menu__item {
	margin: 0 1rem 0 0;
	padding: 0.4rem 1rem 0.4rem 0;
	border-right: 1px solid #ffffff;
}

.c-footer__menu__item:nth-of-type(5) {
	border-right: 0;
}

@media screen and (max-width: 600px) {
	.c-footer__menu__item {
		margin: 0;
		padding: 0;
		border-right: 0;
		border-top: 1px solid #ffffff;
	}
	.c-footer__menu__item:last-of-type {
		border-bottom: 1px solid #ffffff;
	}
}

.c-footer__menu__item a {
	color: #ffffff;
}

.c-footer__menu__item a:hover {
	text-decoration: none;
	opacity: 0.8;
}

@media screen and (max-width: 600px) {
	.c-footer__menu__item a {
		position: relative;
		display: inline-block;
		width: 100%;
		height: auto;
		padding: 1.6rem 0;
	}
	.c-footer__menu__item a::after {
		content: '';
		position: absolute;
		top: 42%;
		right: 4%;
		display: block;
		width: 8px;
		height: 8px;
		border-top: 1px solid #ffffff;
		border-right: 1px solid #ffffff;
		-webkit-transform: rotate(45deg);
		        transform: rotate(45deg);
	}
}

.c-footer__spec {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}

@media screen and (max-width: 600px) {
	.c-footer__spec {
		width: 100%;
	}
}

.c-footer__logo {
	display: inline-block;
	width: auto;
	height: 36px;
}

@media screen and (max-width: 600px) {
	.c-footer__logo {
		display: block;
		width: 100%;
		height: auto;
		margin: 0 auto 2rem;
	}
	.c-footer__logo img {
		width: 100%;
		height: auto;
	}
}

.c-footer__tel {
	margin: 0 0 0.4rem;
	font-family: "Open Sans", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 2.4rem;
	line-height: 1;
	color: #ffffff;
	text-align: right;
	letter-spacing: 0.1rem;
	-webkit-transform: translate(0, -4rem);
	        transform: translate(0, -4rem);
}

@media screen and (max-width: 600px) {
	.c-footer__tel {
		margin: 0 0 2rem;
		text-align: center;
		-webkit-transform: translate(0, 0);
		        transform: translate(0, 0);
	}
}

.c-footer__copyright {
	font-family: Verdana, sans-serif;
	font-size: 1rem;
	line-height: 1;
	color: #ffffff;
	text-align: right;
	letter-spacing: 0.1rem;
	-webkit-transform: translate(0, -3.8rem);
	        transform: translate(0, -3.8rem);
}

.c-footer__copyright br {
	display: none;
}

@media screen and (max-width: 600px) {
	.c-footer__copyright {
		line-height: 1.6;
		text-align: center;
		-webkit-transform: translate(0, 0);
		        transform: translate(0, 0);
	}
	.c-footer__copyright br {
		display: block;
	}
}

/* -------------------------------------------------------
 * utility
 * ---------------------------------------------------- */
.is-none {
	display: none !important;
}

.is-strong {
	font-family: "Shin Go Bold", sans-serif;
	color: #0F5582;
	font-weight: bold;
}

.u-clearfix::after {
	content: '';
	display: block;
	clear: both;
}

.u-wd--4p {
	width: 40%;
}

.u-wd--5p {
	width: 50%;
}

.u-wd--6p {
	width: 60%;
}

.u-wd--7p {
	width: 70%;
}

.u-hg--1000 {
	height: 1000px;
}

.u-ml--1r {
	margin-left: 1rem;
}

.u-mr--1r {
	margin-right: 1rem;
}

.u-mr--2r {
	margin-right: 2rem;
}

.u-mr--3r {
	margin-right: 3rem;
}

.u-mr--2r {
	margin-right: 2rem;
}

.u-mb--1r {
	margin-bottom: 1rem;
}

.u-mb--2r {
	margin-bottom: 2rem;
}

.u-mb--3r {
	margin-bottom: 3rem;
}

.u-mb--4r {
	margin-bottom: 4rem;
}

.u-mb--5r {
	margin-bottom: 5rem;
}

.u-mb--6r {
	margin-bottom: 6rem;
}

.u-centering {
	margin: 0 auto;
}

.u-ta--c {
	text-align: center;
}

.u-fw--b {
	font-weight: bold;
}

.u-dp--b {
	display: block;
}

.u-dp--fl {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.u-dp--fl--jc--sa {
	-webkit-justify-content: space-around;
	    -ms-flex-pack: distribute;
	        justify-content: space-around;
}

.u-dp--fl--ac--fs {
	-webkit-align-content: flex-start;
	    -ms-flex-line-pack: start;
	        align-content: flex-start;
}

.u-dp--fl--fg--1 {
	-webkit-box-flex: 1;
	-webkit-flex-grow: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
}

.u-fl--l {
	float: left;
}

.u-fl--r {
	float: right;
}

.u-ps--r {
	position: relative;
}
