@charset "UTF-8";
html {
	font-size:62.5%;
}
body, input, textarea {
	font-family: "小塚ゴシック Pro", "Kozuka Gothic Pro", "Noto Sans JP", "ヒラギノ角ゴ ProN W6", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
	font-size: 1.6rem;
	line-height: 1.3;
}
body {
	background-color: #FFFFFF;
	min-width: 1280px;
	width: 100%;
	line-height: 1.6;
	letter-spacing: 1px;
	color: #3d4040;
	margin: 0 auto;
}
h1 {
	font-size: 4.0rem;
}
h2 {
	font-size: 2.6rem;
}
h3 {
	font-size: 3.0rem;
}
h4 {
	font-size: 2.2rem;
}
h5 {
	font-size: 1.8rem;
}
p {
	font-size: 1.6rem;
}


/* header */
header {
	position: fixed;
	display: flex;
	background: #ffffff;
	width: 100%;
	min-width: 1220px;
	padding: 30px 0;
	justify-content: space-between;
	z-index: 100;
}
header .header {
	max-width: 1220px;
	width: 100%;
	margin: 0 auto;
}
header .header_l {
	float: left;
}
header .header_l a {
	position: relative;
	display: block;
	background: #F0F2F5;
	border-radius: 5px;
	box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
	font-size: 1.4rem;
	font-weight: bold;
	color: #0062AD;
	padding: 10px 20px 10px 40px;
	transition: .3s;
}
header .header_l a::before {
	content: '';
	position: absolute;
	width: 6px;
	height: 6px;
	border-top: solid 2px #0062AD;
	border-right: solid 2px #0062AD;
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	top: 50%;
	left: 17px;
	margin-top: -4px;
	transition: .3s;
}
header .header_l a:hover {
	background: #0062AD;
	color: #FFF;
}
header .header_l a:hover::before {
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
}

header ul.header_r {
	float: right;
}
header ul.header_r li {
	display: inline-block;
}
header ul.header_r li a {
	position: relative;
	display: inline;
	color: #363838;
	margin: 0 15px;
}
header ul.header_r li a::after {
	position: absolute;
	bottom: -8px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #FFF;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform .3s;
}
header ul.header_r li a:hover::after {
	transform: scale(1, 1);
}
header ul.header_r li a.disabled {
	position: relative;
	display: inline;
	font-size: 1.6rem;
	color: rgba(255, 255, 255, 0.5);
	margin: 0 15px;
}
header ul.header_r li a.disabled::after {
	display: none;
}
header ul.header_r li:last-child {
	position: relative;
	display: inline-block;
}
header ul.header_r li:last-child a {
	display: block;
	background-color: #1b2950;
	border-radius: 5px;
	font-weight: bold;
	color: #fff;
	margin: 0 0 0 20px;
	padding: 6px 38px;
	transition: .3s;
}
header ul.header_r li:last-child a::before {
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 2px #092450;
	border-right: solid 2px #092450;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -4px;
	transition: .3s;
}
header ul.header_r li:last-child a::after {
	display: none;
}
header ul.header_r li:last-child a:hover {
	background: #092450;
	font-weight: bold;
	color: #FFF;
	margin: 0 0 0 20px;
	padding: 6px 38px;
}
header ul.header_r li:last-child a:hover::before {
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -4px;
}


/* contents */
.bg-white {
	background-color: #FFF;
	margin: 0 auto 0px;
}
.bg-gray {
	background-color: #f2f2f2;
	margin: 0 auto;
}
.bg-darkgray {
	background-color: #7e868a;
	margin: 0 auto;
}
.bg-navy {
	background-color: #014c86;
	margin: 0px auto 0px;
}
.bg-darknavy {
	background-color: #1b2950;
	margin: 0px auto 0px;
}
.bg-blue {
	background-color: #a1b5d0;
	margin: 90px auto 0px;
}

.container {
    margin: 0 auto;
    padding: 80px 0px;
    width: 100%;
}

.left-part {
	float: left;
}
.right-part {
	float: right;
}

.contents {
    margin: 30px auto 0;
	position: relative;
	width: 1000px;
	overflow:hidden;
}
.contents-title h2 {
    color: #000000;
    font-size: 3.0rem;
    font-weight: 700;
	text-align: center;
}
.contents h3 {
	font-size: 2.0rem;
	font-weight: 700;
}
.flex-container {
	width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}


/* main */
.main {
	background: url(../img/mainbg.jpg) center 92px no-repeat;
	margin: 0 auto;
	padding-top: 92px;
}
.main div {
	height: 576px;
	width: 100%;
	margin: 0 auto ;
	position: relative;
	
}
.main div img {
    width: 553px;
    position: absolute;
    top: 42%;
    left: 35%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.main div p {
    font-size: 2.2rem;
    font-weight: 700;
    left: 34%;
    text-align: center;
    position: absolute;
    top: 71%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.main div p {
	color: #2B6077;
}
.main aside {
	margin: 120px auto 0px;
	position: relative;
}
.main aside h1 {
	color: #FFFFFF;
	font-size: 4rem;
	font-weight: 700;
	padding-bottom: 10px;
	text-align: center;
	margin-top: 15px;
}
.main aside p {
	color: #FFFFFF;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: 0;
	text-align: center;
}


/* info */
.info div p {
	color: #1b2950;
	font-size: 1.6rem;
	font-weight: 700;
}
.info div {
	padding: 30px 0px 30px 140px;
	width: 1000px;
}


/* features */
.features aside {
	margin: 40px 10px;
	width: 320px;
}
.features img {
	width: 320px;
}
.features h3 {
	color: #254870;
	font-size: 2.0rem;
	font-weight: 700;
	margin: 20px 0px;
	text-align: center;	
}
.features p {
	margin-top: 20px;
}


/* demo */
.demo.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.demo.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

.demo .contents {
	margin-bottom: 50px;
}
.demo .movie {
	margin: 0 auto;
	width: 75%;
}
.demo .movie video {
	width: 100%;
}
.demo h2 {
	color: #fff;
}


/* usecase */
.usecase aside {
	margin: 40px 0px;
	width: 640px;
}
.usecase h3 {
	color: #254870;
	font-size: 2.4rem;
	font-weight: 700;
	margin-bottom: 0;
	width: 465px;
}
.usecase p {
	margin-top: 20px;
	font-size: 1.4rem;
    margin-bottom: 5px;
    padding: 0 30px;
}
.usecase .usecase-bg {
    display: block;
    position: absolute;
    top: -70px;
    z-index: 1;
    width: 100%;
    height: 480px;
    background: linear-gradient(#4DB0A1,#87FCEE);
    content: "";
}
.usecase .wrap {
	position: relative;
    z-index: 5;
    width: 980px;
    height: 541px;
    margin: 120px auto 0px;
    background-color: #FFFFFF;
	border: 2px solid #f2f2f2;
}
.usecase .card {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    top: -30px;
	left:395px;
    width: 208px;
    height: 132px;
    box-shadow: 0 7px 10px rgb(0 0 0 / 20%);
    background-color: #1b2950;
}
.usecase .text {
	width: 812px;
    padding-bottom: 80px;
    background-color: #fff;
}
.usecase .card-logo-1 {
	width: 100px;
    height: 60px;
    background: url(../img/icon_category_01.png) 50%/cover no-repeat;
    margin: 15px auto 0px;
}
.usecase .card-logo-2 {
	width: 80px;
    height: 61px;
    background: url(../img/icon_category_02.png) 50%/cover no-repeat;
    margin: 15px auto 0px;
}
.usecase .card-text {
	font-size: 1.8rem;
    color: #FFFFFF;
    margin: 0px auto 15px;
    font-weight: 700;
}
.usecase .catch {
	margin-top: 5px;
    padding: 0 30px;
    color: #014c86;
    font-size: 2.0rem;
    font-weight: 700;
}
.usecase .description {
	display: flex;
    justify-content: space-between;
    margin-top: 30px;
    padding: 0 30px;
}
.usecase .left-part {
	float: left;
	margin: 150px 0px 0px 60px;
}
.usecase .left-part img {
	width: 408px;
}
.usecase .right-part {
	float: right;
	width: 500px;
	margin: 150px auto;
}
.usecase .right-part img {
	width: 90px;
}
.usecase .usecase-target {
    display: flex;
    text-align: center;
}
.usecase .usecase-target-item {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 135px;
    padding: 5px 20px 15px;
    flex: 1;
	border-left: 4px dotted #e8eaea;
}
.usecase .usecase-target-item-f {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 135px;
    padding: 5px 20px 15px;
    flex: 1;
}
.usecase .usecase-target-item span{
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.2em;
}
.usecase .usecase-target-item-f span{
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.2em;
}
.usecase .contents {
	width: 100%;
}
.usecase .attention {
	margin: 5px auto 0;
    text-align: left;
    width: 980px;
}


/*
.usecase p::before {
	background: url(../img/arrow.png) 50% 0 no-repeat;
    content: '';
	height: 40px;
    left: 0;
    top: -25%;
    width: 40px;
}

.usecase li {
	margin-top: 5px;
}
.usecase ul li {
	color: #254870;
	font-size: 1.6rem;
    margin: 5px;
    padding-left: 3.0rem;
    text-indent: -1.4rem;
}
.usecase ul li::before {
	content: '●';
}
 */

/* about */
.about aside {
	margin: 40px auto;
	width: 300px;
	padding: 10px auto;
	text-align: center;
}
.about img {
	width: 220px;
}

.about h3 {
	border-bottom: solid 3px #b6c2e5;
  	position: relative;
    padding-bottom: 10px;
	color: #254870;
	font-size: 2.2rem;
	font-weight: 700;
	margin: 60px 0px;
	text-align: center;	
}
.about h3:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #1b2950;
  bottom: -3px;
  width: 20%;
  left: 398px;
}

.about p {
	margin-top: 20px;
	text-align: center;
}


/* webapp */
/* 
.webapp img {
	width: 640px;
	margin: 40px auto 10px;
}
.webapp aside {
	margin: 40px auto 40px;
	width: 640px;
	text-align: center;
}
.webapp h3 {
	color: #254870;
	font-size: 2.2rem;
	font-weight: 700;
	margin: 60px 0px;
	text-align: center;	
}
.webapp p {
	width: 640px;
	text-align: left;
	font-size: 1.4rem;
}
*/

/* device */
.device h3 {
	border-bottom: solid 3px #b6c2e5;
  	position: relative;
    padding-bottom: 10px;
	color: #254870;
	font-size: 2.2rem;
	font-weight: 700;
	margin: 60px 0px;
	text-align: center;	
}
.device h3:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #1b2950;
  bottom: -3px;
  width: 20%;
  left: 398px;
}

.device aside aside {
    background: none;
    padding: 20px 168px 0;
}
.device .webdevice {
	margin: 0px auto 100px;
}

/*
.contents_device {
	width: 420px;
}

.device ol {
	margin-bottom: 60px;
}
.device ol li {
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 10px;
}
.device ol li:last-child {
	margin-bottom: 0;
}
*/
.device aside aside:nth-of-type(1) p {
    font-size: 1.8rem;
    line-height: 1.6;
	margin-bottom: 40px;
}
.device aside aside:nth-of-type(1) div {
    width: 70%;
	margin: 0 auto;
}
.device aside aside:nth-of-type(1) div img {
	border: 1px solid #CCC;
    width: 100%;
}
.device aside aside:nth-of-type(1) div p {
    font-size: 1.4rem;
    margin: 5px auto 40px;
}
.device aside aside:nth-of-type(1) div:last-of-type p {
    margin-bottom: 0px;
}
.deviceaside aside aside:nth-of-type(2) {
	padding-top: 40px;
}
.device aside aside:nth-of-type(2) h4 {
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 10px;
    padding-bottom: 10px;
    text-align: left;
	color: #254870;
}
.device aside aside:nth-of-type(2) .left-part,
.device aside aside:nth-of-type(2) .right-part {
    width: 50%;
}
.device aside aside:nth-of-type(2) .device_in {
    border: 1px solid #84898b;
    display: table;
    width: 100%;
}
.device aside aside:nth-of-type(2) .device_in div {
    display: table-cell;
    vertical-align: middle;
}
.device aside aside:nth-of-type(2) .device_in div p {
    display: inline-block;
}
.device aside aside:nth-of-type(2) .device_in div.ti {
    background-color: #84898b;
    border-right: 1px solid #84898b;
	text-align: center;
	width: 28%;
}
.device aside aside:nth-of-type(2) .right-part .device_in div.ti {
	width: 24%;
}
.device aside aside:nth-of-type(2) .device_in div.ti p {
    color: #FFF;
    vertical-align: middle;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
}
.device aside aside:nth-of-type(2) .device_in div.ti p:nth-child(1) {
    padding: 5px 0px 5px 3px;
}
.device aside aside:nth-of-type(2) .device_in div.ti p:nth-child(2) {
    padding: 5px 3px 5px 0px;
}
.device aside aside:nth-of-type(2) .device_in div:nth-of-type(2) {
	width: 39%;
}
.device aside aside:nth-of-type(2) .device_in div:nth-of-type(2) p,
.device aside aside:nth-of-type(2) .device_in div:nth-of-type(3) p {
    text-align: center;
    width: 100%;
}
.device aside aside:nth-of-type(2) .device_in div:nth-of-type(2) p.ti,
.device aside aside:nth-of-type(2) .device_in div:nth-of-type(3) p.ti {
    background-color: #F2FAFF;
    font-size: 1.4rem;
	padding: 30px 0;
	width: 65%;
}
.device aside aside:nth-of-type(2) .right-part .device_in div:nth-of-type(2) p,
.device aside aside:nth-of-type(2) .right-part .device_in div:nth-of-type(3) p {
	vertical-align: middle;
	width: 100%;
}
.device aside aside:nth-of-type(2) .right-part .device_in div:nth-of-type(2) p.ti,
.device aside aside:nth-of-type(2) .right-part .device_in div:nth-of-type(3) p.ti {
	width: 45%;
}
.device aside aside:nth-of-type(2) .right-part .device_in div:nth-of-type(2) p span,
.device aside aside:nth-of-type(2) .right-part .device_in div:nth-of-type(3) p span {
	font-size: 1.2rem;
}

.device p.sub {
    font-size: 1.2rem;
    margin-top: 10px;
    text-align: center;
}



/* cost */
.cost .contents {
	margin-top: 70px;
}
.cost h2 {
	color: #FFFFFF;
    font-size: 3.0rem;
    font-weight: 700;
	text-align: center;
}
.cost h3 {
	background-color: #FFF;
	color: #012B3F;
	font-size: 2.4rem;
	font-weight: 700;
	margin: 0 auto 70px;
    padding: 10px 0;
    text-align: center;
    width: 510px;
}
.cost h3 span {
	font-size: 4.6rem;
	font-weight: 700;
	padding-left: 20px;
}
.cost h3 span:nth-child(2) {
	font-size: 2.0rem;
	font-weight: 500;
	padding-left: 0;
}
.cost ul li {
	margin-bottom: 10px;
	padding-left: 1.6rem;
	text-indent: -1.6rem;
	color: #FFFFFF;
	font-size: 1.5rem;
}
.cost ul li::before {
	content: '※';
}


/* flow */
.flow .contents {
	padding-top: 20px;
}
.flow .contents div:nth-of-type(1) {
	margin-bottom: 70px;
}
.flow div img {
	width: 700px;
	margin: 0px auto 0px;
}
.flow .frow div img {
	width: 700px;
	margin: 40px auto 100px;
}
.flow aside {
	text-align: center;
}
.flow .send_btn button {
	background: #1b2950;
	border: 2px solid #1b2950;
	border-radius: 5px;
	font-size: 2.0rem;
	font-weight: bold;
	color: #FFF;
	cursor: pointer;
	text-align: center;
	padding: 15px 130px;
	transition: .3s;
}
.flow .send_btn button:hover {
	background: #FFF;
	border: 2px solid #1b2950;
	font-size: 2.0rem;
	font-weight: bold;
	color: #1b2950;
	text-align: center;
	padding: 15px 130px;
}
.flow .aibox .attention {
    margin: 5px auto 0;
    text-align: right;
    width: 980px;
}


/* system */
.system .contents {
    padding-top: 20px;
}
.system .contents div:nth-of-type(1) {
    /* margin-bottom: 70px; */
}

.system div img {
    width: 700px;
    margin: 10px auto;
}
.system aside {
    text-align: center;
    /* margin: 60px auto 0px; */
}
.system .flex-container {
	width: 900px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.system .flex-container aside img {
    width: 260px;
    border: 1px solid #e0e0e0;
    margin: 30px 0px;
}

.system h4 {
  	position: relative;
    padding-bottom: 10px;
	color: #254870;
	font-size: 2.2rem;
	font-weight: 700;
	margin: 20px 0px;
	text-align: left;	
}
.system h5 {
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 10px;
    text-align: left;
	color: #3d4040;
}

.system h3 {
    border-bottom: solid 3px #b6c2e5;
    position: relative;
    padding-bottom: 10px;
    color: #254870;
    font-size: 2.2rem;
    font-weight: 700;
    margin: 0px 0px 60px;
    text-align: center;
}
.system h3:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #1b2950;
  bottom: -3px;
  width: 20%;
  left: 398px;
}
.system p {
	margin-top: 0px;
	text-align: center;
	font-size: 1.6rem;
}
.system .right-part p {
	margin-top: 0px;
	margin-bottom: 50px;
	text-align: left;
	font-size: 1.6rem;
}

.system .left-part {
	float: left;
	margin: 0px 0px 5px 0px;
}
.system .left-part img {
	width: 320px;
	margin: 0px;
}
.system .right-part {
	float: right;
	margin: 0px auto;
	width: 640px;
	
}
.system .right-part img {
	width: 90px;
}
.system .detail {
	height: 220px;
}


.system_table {
	border: 1px solid #071023;
	width: 100%;
	margin-bottom: 30px;
}
.system_table:last-of-type {
	margin-bottom: 0;
}
.system_table tr {
	margin: 30px 0;
}
.system_table tr:first-of-type {
	margin: 15px 0 30px 0;
}
.system_table tr td {
	border-right: 1px solid #071023;
    border-bottom: 1px solid #071023;
    vertical-align: middle;
    background-color: #f9f9f9;
}
.system_table tr td:last-child {
	border-right: 1;
}
.system_table tr td.ti {
	background: #747474;
	border-right: 1px solid #071023;
	border-bottom: 1px solid #071023;
	width: 20% !important;
	vertical-align: middle;
	font-weight: 500;
	color: #FFF;
	padding: 15px 20px;
}
.system_table tr.box1 td p {
    display: table-cell;
    /*font-size: 1.4rem;*/
    padding: 15px 20px;
    vertical-align: middle;
    width: 300px;
}
.system_table tr.box1 td p.ti {
	display: table-cell;
	background: #f1f1f1;
	width: 141px;
	font-weight: 500;
	padding: 20px 0px 20px 20px;
}
.system_table tr.box1 td p.ti span {
	font-size: 1.2rem;
	margin-left: 5px;
}
.system_table tr.box2 td p {
	display: table-cell;
	width: 220px;
	text-align: center;
	vertical-align: middle;
}
.system_table tr.box2 td p.ti {
    display: table-cell;
    background: #eaeaea;
    width: 156px;
    /* font-weight: 500; */
    text-align: left;
    padding: 28px 0px 28px 20px;
}
.system_table tr.box2 td p.ti span {
	font-size: 1.2rem;
	margin-left: 5px;
}
.system_table tr.box2 td.camera-ip p {
    padding: 10px 20px;
}
.system_table tr.box2 td.camera-ip p span {
	display: block;
	font-size: 1.4rem;
    line-height: 1.6;
    padding: 5px 0;
}
.system_table tr.box2 td.camera-usb p {
    padding: 48px 20px;
}
.system_table tr td.type01 p {
	display: table-cell;
	padding: 15px 145px;
	vertical-align: middle;
}
.system_table tr td.type01 p.ti {
	display: table-cell;
	background: #f1f1f1;
	width: 100px;
	font-weight: 500;
	padding: 20px 0px 20px 20px;
}
.system_table tr td.type01 p.dtl {
	font-size: 1.4rem;
	text-align: left;
}
.system_table tr.box3 td p {
	display: table-cell;
	width: 95px;
	text-align: center;
	vertical-align: middle;
}
.system_table tr.box3 td p.ti {
    display: table-cell;
    background: #eaeaea;
    width: 156px;
    /* font-weight: 500; */
    text-align: left;
    padding: 20px 5px 20px 10px;
}
.system_table tr.box3 td p.ti span {
	font-size: 1.2rem;
	margin-left: 5px;
}
.system_table tr.box3 td p.ti_s {
    display: table-cell;
    background: #eaeaea;
    width: 116px;
    /* font-weight: 500; */
    text-align: left;
    padding: 20px 5px 20px 10px;
}

.system_table tr.box3 td p.ti_xs {
    display: table-cell;
    background: #c1c1c1;
    width: 30px;
    /* font-weight: 500; */
    text-align: center;
    padding: 5px 5px;
	color: #fff;
}
.system_table tr.box5 td {
	width: 16%;
}
.system_table tr.box5 td p {
	background: #f1f1f1;
	text-align: center;
	padding-bottom: 10px;
}
.system_table tr.box5 td p:last-child {
	background: #FFF;
	padding: 10px 0;
}
.system_table tr.box5 td p.ti {
	font-size: 12px;
	font-weight: bold;
	padding: 10px 0;
}
.system_table tr td p span.dtl {
	font-size: 1.4rem;
	letter-spacing: 0;
}
.system_table .grayout {
	color: #bcbdbd;
	background-color: #f2f2f2;
}
.system_table tr.box2 span {
	font-size: 1.4rem;
	margin: 20px 10px;
}
/* 右上がりの斜線 */
.system_table .right_up_border {
    background-image: linear-gradient(13deg, /*角度*/
                     transparent 50%,
                     black 50%, /*斜線の色*/
                     black 50%, /*斜線の色*/
                     transparent 51%, 
                     transparent); 
}
.system .send_btn button {
	background: #1b2950;
	border: 2px solid #1b2950;
	border-radius: 5px;
	font-size: 2.0rem;
	font-weight: bold;
	color: #FFF;
	cursor: pointer;
	text-align: center;
	padding: 15px 130px;
	transition: .3s;
}
.system .send_btn button:hover {
	background: #FFF;
	border: 2px solid #1b2950;
	font-size: 2.0rem;
	font-weight: bold;
	color: #1b2950;
	text-align: center;
	padding: 15px 130px;
}
.system .aibox .attention p{
    margin: -40px auto 40px;
    text-align: right;
    width: 980px;
}

.system ul li {
	margin-bottom: 10px;
	padding-left: 1.6rem;
	text-indent: -1.6rem;
	color: .system;
	font-size: 1.5rem;
}


/* contact */
.contact .container {
	padding: 120px 0 100px;
}
.contact .contents-title {
    padding: 0 0 50px 0;
}
.contact .contents {
	border-bottom: 0;
	padding-bottom: 0;
}
.contact p.sub {
	font-size: 16px;
	color: #ff5046;
	margin: 0 0 10px 200px;
}
.contact p.sub span.must {
	font-size: 16px;
	color: #ff5046;
}

.contact h2 {
	color: #000;
}

.contact aside {
	margin: 0px auto;
}

.contact div.conbtn {
	margin: 0px auto 0px;
	text-align: center;
}
.contact div.conbtn a {
	font-size: 2.0em;
	background-color: #0097dd;
	color: #FFF;
	margin: 60px auto 0px;
	display: inline-block;
 	padding: 40px 250px 40px;
	text-align: center;
	font-weight: 700;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}

.contact div.conbtn a:hover {
	background: #FFF;
	color: #0097dd;
}


.formtable {
	table-layout: fixed;
	width: 910px;
	margin: 0 auto;
}
.formtable tr {
	margin: 30px 0;
}
.formtable tr:first-of-type {
	margin: 15px 0 30px 0;
}
.formtable tr td {
	width: 245px;
	font-size: 16px;
	text-align: right;
	vertical-align: top;
	margin-bottom: 20px;
	padding: 7px 20px 0 0;
}
.formtable tr td span.must {
	font-size: 16px;
	color: #ff5046;
}
.formtable tr td input {
	width: 100%;
	color: #000;
}
.formtable tr td textarea {
	display: block;
	box-sizing: border-box;
	width: 630px;
	max-width: 630px;
	min-height: 180px;
	font-size: 16px;
	border: 1px solid #F4F4F4;
	color: #000;
	text-align: left;
	padding: 5px;
}
.formtable tr td:last-child {
	display: block;
	background-color: #F4F4F4;
	box-sizing: border-box;
	width: 630px;
	max-width: 630px;
	font-size: 16px;
	border: 1px solid #F4F4F4;
	color: #84848D;
	text-align: left;
	padding: 5px;
}
.formtable tr td.contact_list_ti {
	padding: 10px 20px 5px 0;
}
.formtable tr td:last-child.contact_list {
	background: transparent;
	border: 0;
	padding: 0;
}
.formtable tr td label {
	position: relative;
	display: block;
	width: 230px;
	border: 1px solid #84848D;
	border-radius: 5px;
	background: #F4F4F4;
}
.formtable tr td label::before {
	position: absolute;
	content: "";
	top: 50%;
	right: 10px;
	width: 0px;
	height: 0px;
	margin: -4px 0 0 0;
	border: 7px solid transparent;
	border-top: 9px solid #D1D1DE;
	cursor: pointer;
	pointer-events: none;
}
.formtable tr td label select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	width: 230px;
	padding: 5px;
    border: none;
    background: transparent;
    font-size: 1.6rem;
}
::-ms-expand {
	display: none;
}
.formtable tr td.textarea {
	border: 0;
	padding: 0;
}
#form-messages.success {
	background-color: #BFD3E9;
	border: 2px solid #88B4E5;
	color: #002A4E;
}

.send_box {
	text-align: center;
	margin: 60px 0 0 0;
}
.send_box .send_btn button {
	background: #1b2950;
	border: 2px solid #1b2950;
	border-radius: 5px;
	font-size: 2.0rem;
	font-weight: bold;
	color: #FFF;
	cursor: pointer;
	text-align: center;
	padding: 15px 130px;
	transition: .3s;
}
.send_box .send_btn button:hover {
	background: #FFF;
	border: 2px solid #1b2950;
	font-size: 2.0rem;
	font-weight: bold;
	color: #1b2950;
	text-align: center;
	padding: 15px 130px;
}

.attention {
    margin: 60px 0 0;
    text-align: center;
}
.attention p {
	font-size: 1.4rem;
	padding-left: 1.4rem;
	text-indent: -1.4rem;
}
.attention p::before {
	content: '※';
}

/* developer */
/* 
.developer .container {
	background-image:
	url(../img/parts_bg-04.png),
	url(../img/parts_bg-05.png);
	background-position: 
		left top,
		right top;
	background-repeat: no-repeat;
	border-left: 0;
    border-right: 0;
	padding: 70px 0 80px;
}
*/

.developer .contents-title {
    padding: 0 0 20px 0;
}
.developer h2 {
	background: none;
    color: #FFF;
    font-size: 2.4rem;
	font-weight: 700;
	padding: 0;
	text-align: center;
}
.developer .contents {
	border-bottom: 0;
	margin-top: 20px;
	padding-bottom: 0;
	width: 680px;
}
.developer dl {
    color: #FFF;
    margin-bottom: 10px;
}
.developer dl:last-child {
	margin-bottom: 0;
}
.developer dl dt {
	float: left;
	border-right: 2px solid #f2f2f2;
	width: 180px;
	font-size: 18px;
	font-weight: 500;
	text-align: right;
	padding-right: 20px;
}
.developer dl dd {
    float: left;
    width: 450px;
    font-size: 18px;
    /* font-weight: 500; */
    padding-left: 20px;
}

.developer dl dd a {
	position: relative;
	color: #FFFFFF;
}
.developer dl dd a::after {
	position: absolute;
	bottom: -5px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #FFFFFF;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform .3s;
}
.developer dl dd a:hover::after {
	transform: scale(1, 1);
}

/* footerlink */

.footerlink {
	background: #3d4040;
}
.footerlink p {
	color: #FFF;
	text-align: center;
	padding: 60px 0 20px;
	font-size: 1.4rem;
}
.footerlink a {
	position: relative;
	color: #FFFFFF;
}
.footerlink a::after {
	position: absolute;
	bottom: -5px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #FFFFFF;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform .3s;
}
.footerlink a:hover::after {
	transform: scale(1, 1);
}

/* footer */

footer {
	background: #3d4040;
}
footer .credit p {
	color: #FFF;
	text-align: center;
	padding: 60px 0 60px;
	font-size: 1.2rem;
}
