@charset "utf-8";


/* all
-------------------------------------------------------------------*/
html {
	background: #FFFFFF;
	color: #333333;
	font-family: 'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 16px;
	line-height: 1.4;
	font-weight: 500;
	height: 100%;
}
html .goti,
html form * {
	font-family: 'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-weight: 500;
}
html .min,
html .min form * {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Times New Roman", "HG明朝B", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
html .orbitron,
html .orbitron form * {
	font-family: "Archivo Black", "Orbitron", sans-serif;
}
body {
	width: 100%;
	font-size: 100%;
	text-align: center;
	min-width: 1100px;
}
main {
	overflow: hidden;
	width: 100%;
	margin-top: 80px;
}
.sitewrap {
	width: 1200px;
	min-width: 1200px;
	overflow: hidden;
	margin: 0 auto;
	text-align: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
@media screen and (max-width:1200px) {

	body,
	.sitewrap {
		width: 100%;
		min-width: 0;
	}
	.sitewrap>* {
		padding-left: 2%;
		padding-right: 2%;
	}
}
@media screen and (max-width:924px) {
	main {
		margin-top: 0px;
	}
}
@media screen and (max-width:767px) {
	html {
		font-size: 14px;
	}
	.sitewrap>* {
		padding-left: 15px;
		padding-right: 15px;
	}
	main {
		margin-top: 0px;
	}
}
@media screen and (max-device-width:1200px) {
	body:not(.home){
		display:flex;
		flex-direction:column;
		min-height:100vh;
	}
	body:not(.home) main{
		display:flex;
		flex-direction:column;
		flex-grow:1;
	}
	body:not(.home) main #pan{
		margin-top:auto;
	}
}
/* header
-------------------------------------------------------------------*/
header#fix_menu {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
	transition: top .4s .2s;
}
body.article header#fix_menu {
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1)
}
header#fix_menu.fixedMenu {
	position: fixed;
	top: 0;
	background: #fff;
}
.menu_top {
	position: relative;
	float: left;
}
.menu_top #site_ttl {
	float: left;
	padding: 17px 10px;
	white-space: nowrap;
}
.menu_top #site_ttl a,
.menu_top #site_ttl p {
	display: inline-block;
	vertical-align: middle;
}
body.article .menu_top #site_ttl a img{
	height:45px;
}
.menu_top #site_ttl p {
	margin-left: 10px;
	font-size: 12px;
}
.menu_top .right_menu li a span {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	font-weight: bold;
}
.menu_bottom {
	float: right;
	max-width: 1084px;
	width: 49%;
}
.drop_menu {
	max-width: 1100px;
	margin: auto;
}
.drop_menu #NavWrap {
	padding: 0;
}
.drop_menu #NavWrap ul {
	margin: 0;
	padding: 0;
	display: table;
	width: 100%;
	box-sizing: border-box;
}
.drop_menu #NavWrap ul::after {
	display: none;
}
.drop_menu #NavWrap ul>li {
	vertical-align: middle;
	box-sizing: border-box;
	cursor: pointer;
	display: table-cell;
	width: auto;
	height: 80px;
	position: relative;
}
.drop_menu #NavWrap ul>li.toggle_switch{
	position:relative;
}
.drop_menu #NavWrap ul>li.toggle_switch .mega_menu:before{
	content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		background: rgba(0, 0, 0, 0.25);
		z-index: -2;
		opacity: 0;
		visibility: hidden;
		transition: all .2s;
}
.drop_menu #NavWrap ul>li.toggle_switch:checked ~ .mega_menu:before{
	visibility:visible;
	opacity:1;
}
.drop_menu #NavWrap ul>li.display_sp {
	display: none;
}
.drop_menu #NavWrap li a,
.drop_menu #NavWrap li p {
	display: block;
	padding: 5px 8px 5px;
	box-sizing: border-box;
	text-decoration: none;
	font-size: 17px;
	width: auto;
	line-height: 1;
	position: relative;
	color: #282828;
	text-align: center;
	transition: background 0.5s, color 0.5s, opacity 0.5s, color 0.5s;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
}
.drop_menu #NavWrap li a span {
	padding: 20px 0px 22px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	white-space: normal;
	font-weight: bold;
	position: relative;
}
.drop_menu #NavWrap li.txt_area{
	width: 14%;
}
.drop_menu #NavWrap li.txt_area.motorization{
	width: 28%;
}
.drop_menu #NavWrap li.txt_area>a span {
	padding: 0 0 2px;
	position: relative;
	display: inline-block;
}
.drop_menu #NavWrap li .mega_menu .head_tit a span {
	display: inline-block;
	padding: 0;
	color: #fff;
	padding-left: 2rem;
	position: relative;
}
.drop_menu #NavWrap li .mega_menu .head_tit a span.display_sp {
	display: none;
}
.drop_menu #NavWrap li.drop_wrap i {
	display: none;
}
.drop_menu #NavWrap li .mega_menu{
	position: fixed;
	opacity: 0;
	visibility: hidden;
	transition: opacity .4s;
	background: #5f78a7;
	top: 80px;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	overflow: auto;
	z-index: 999;
	box-sizing: border-box;
	max-height: 100vh;
	padding: 65px 0;
	bottom: auto;
	z-index: 10;
}
.drop_menu #NavWrap li.txt_area>p span {
	position: relative;
}
.drop_menu #NavWrap li.drop_wrap.txt_area > a:before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 5px solid transparent;
	border-left: 5px solid transparent;
	border-bottom: 12px solid #5f78a7;
	border-top: 0;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -26px;
	margin: auto;
	z-index: 10;
	opacity: 0;
	transition: .5s opacity;
}
.drop_menu #NavWrap li.txt_area>a span:after,
.drop_menu #NavWrap li.txt_area>p span:after {
	position: absolute;
	display: inline-block;
	content: "";
	width: 100%;
	height: 2px;
	background:#0c2960;
	bottom: -11px;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .4s;
	z-index: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.drop_menu #NavWrap li.drop_wrap.txt_area:hover > a:before {
	opacity: 1;
}
.drop_menu #NavWrap li.txt_area:hover>a span:after,
.drop_menu #NavWrap li.txt_area:hover>p span:after {
	transform: scale(1, 1);
	transform-origin: left top;
}
.drop_menu #NavWrap li:hover .mega_menu{
	opacity: 1;
	visibility: visible;
	z-index: 999;
}
.drop_menu #NavWrap li .mega_menu .menu_wrap {
	max-width: 1000px;
	margin: 0 auto;
}
.drop_menu #NavWrap li ul a {
	min-width: 10em;
	padding: 10px;
	color: #333;
}
.drop_menu #switch {
	position: absolute;
	display: none;
	opacity: 0;
}
.drop_menu #NavWrap li .mega_menu .menu_wrap .head_tit a {
	text-align: left;
	margin-bottom: 3em;
	display: block;
}
.drop_menu #NavWrap li:hover .mega_menu .menu_wrap .head_tit a:hover img {
	opacity: 1;
}
.drop_menu #NavWrap .head_drop_col {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	height: auto;
	flex-wrap: wrap;
}
.drop_menu #NavWrap .head_drop_col ul {
	width: 30%;
	margin-right: 2%;
}
.drop_menu #NavWrap .head_drop_col ul:last-child {
	margin-right: 0;
}
.drop_menu #NavWrap .head_drop_col ul li {
	display: block;
	margin-bottom: 10px;
}
.drop_menu #NavWrap .head_drop_col ul li.head_list {
	border-bottom: 2px solid #fff;
	width: 100%;
	height: auto;
}

.drop_menu #NavWrap .head_drop_col ul li.head_list.black {
	border-bottom: none;
}
.drop_menu #NavWrap .head_drop_col ul li a {
	min-width: 0;
	min-height: 0;
	padding: 0;
	text-align: left;
	padding: 23px 45px 23px 15px;
	position: relative;
	overflow: hidden;
	height: auto;
	justify-content: flex-start;
}
.drop_menu #NavWrap .head_drop_col ul li a span {
	text-align: left;
	display: block;
	padding: 0;
	z-index: 1;
	color: #fff;
	transition: .5s color;
}
.drop_menu #NavWrap .head_drop_col ul li.black a{
	background: #fff;
	height: 60px;
	border: 1px solid #fff;
}
.drop_menu #NavWrap .head_drop_col ul li.black a span{
	color:#0c2960;
}
.drop_menu #NavWrap .head_drop_col ul li a:before,
.drop_menu #NavWrap li .mega_menu .head_tit a>span:before {
	right: 20px;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: .5s background;
	z-index: 1;
	content: "";
	width: 16px;
	height: 16px;
	position: absolute;
	background: url(../img/common/arrow_white.png);
	background-size: contain;
}
.drop_menu #NavWrap .head_drop_col ul li.head_list.black a:before{
	background: url(../img/common/arrow_blue.png);
	background-size: contain;
}
.drop_menu #NavWrap .head_drop_col ul li.head_list.black a[target="_blank"]:before {
	content: "";
	width: 25px;
	height: 25px;
	background: url(../img/common/head_out_link_blue.png);
	background-size: contain;
	transition: .5s background;
}
.drop_menu #NavWrap li .mega_menu .head_tit a span:before {
	left: auto;
	right: -30px;
	transition: .5s transform;
}
.drop_menu #NavWrap .recruit_area,
.drop_menu #NavWrap .contact_area {
	width: 24.13%;
}
.drop_menu #NavWrap .recruit_area a,
.drop_menu #NavWrap .contact_area a {
	position: relative;
	display: flex;
	padding: 22.5px 10px;
	justify-content:center;
	align-items:center;
	height: 100%;
}
.drop_menu #NavWrap .recruit_area a {
	color: #fff;
	background: #0c2960;
	border: 1px solid #0c2960;
}
.drop_menu #NavWrap .contact_area a {
	color: #282828;
	background: #f0f0f0;
}
.drop_menu #NavWrap a .icon{
	width: 34px;
	transition: .5s opacity;
	height: 34px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: 15px;
}
.drop_menu #NavWrap .contact_area .icon{
	width: 28px;
	height: 28px;
}
.drop_menu #NavWrap a .icon img.on,
.drop_menu #NavWrap a:hover .icon img.off {
	opacity: 1;
	visibility: visible;
	height: auto;
	width: 100%;
}
.drop_menu #NavWrap a .icon img.off,
.drop_menu #NavWrap a:hover .icon img.on {
	opacity: 0;
	visibility: hidden;
	height: 0;
	width: 0;
}
.drop_menu #NavWrap .recruit_area a span,
.drop_menu #NavWrap .contact_area a span {
	padding: 0;
	font-weight: 500;
	font-size: 1rem;
	letter-spacing: 0.1em;
}
.drop_menu #NavWrap li .mega_menu .menu_wrap .head_tit a em{
	font-size:2.875rem;
	font-weight:bold;
	color:#fff;
}
@media (hover: hover) {
	.drop_menu #NavWrap li .mega_menu .head_tit a:hover {
		opacity: 1;
	}
	.drop_menu #NavWrap li .mega_menu .head_tit a:hover span:before {
		transform: translateX(10px);
	}
	.drop_menu #NavWrap .head_drop_col ul li.head_list.black a:hover{
		background:#0c2960;
	}
	.drop_menu #NavWrap .head_drop_col ul li.head_list.black a:hover span{
		color:#fff;
	}
	.drop_menu #NavWrap .head_drop_col ul li.head_list.black a:hover:before{
		background: url(../img/common/head_arrow_white.png);
		background-size: contain;
	}
	.drop_menu #NavWrap .head_drop_col ul li.head_list.black a[target="_blank"]:hover:before{
		background: url(../img/common/head_out_link.png);
		background-size: contain;
	}
	.drop_menu #NavWrap .head_drop_col ul li a:hover{
		background:#fff;
	}
	.drop_menu #NavWrap .head_drop_col ul li a:hover:before{
		background: url(../img/common/arrow_blue.png);
		background-size: contain;
	}
	.drop_menu #NavWrap .head_drop_col ul li a:hover span{
		color:#0c2960;
	}
	.drop_menu #NavWrap .recruit_area a:hover {
		color: #0c2960;
		background: #fff;
	}
	.drop_menu #NavWrap .contact_area a:hover {
		color: #fff;
		background: #282828;
	}
}
@media screen and (max-width:1420px) {
	.drop_menu #NavWrap .contact_area a{
		padding: 23px 5px;
	}
	.drop_menu #NavWrap a .icon{
		width: 20px;
		margin-right: 5px;
	}
	.drop_menu #NavWrap .recruit_area a span,
	.drop_menu #NavWrap .contact_area a span {
		font-size:0.875rem;
	}
}
@media screen and (max-device-width: 1180px) {
	.drop_menu #NavWrap li.drop_wrap i {
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 100%;
	}
	.drop_menu #NavWrap li.txt_area:hover>a span:after,
	.drop_menu #NavWrap li.txt_area:hover>p span:after {
		transform: scale(0);
		transform-origin: left top;
	}
	.drop_menu #NavWrap li.txt_area.opened >a span:after,
	.drop_menu #NavWrap li.txt_area.opened >p span:after {
		transform: scale(1,1);
		transform-origin: left top;
	}
	.drop_menu #NavWrap li.drop_wrap.txt_area:hover > a:before {
		opacity: 0;
	}
	.drop_menu #NavWrap li.drop_wrap.txt_area.opened > a:before{
		opacity: 1;
	}
	.drop_menu #NavWrap .head_drop_col ul li.head_list.black a[target="_blank"]:before {
		width:16px;
		height:16px;
	}
	.drop_menu #NavWrap li:hover .mega_menu{
		display:none;
	}
	.drop_menu #NavWrap li:hover .mega_menu{
		opacity: 0;
	}
	.drop_menu #NavWrap li.opened .mega_menu{
		opacity: 1;
		visibility: visible;
		z-index: 999;
		padding: 40px 0;
	}
	.drop_menu #NavWrap li .mega_menu .menu_wrap .head_tit a {
		margin-bottom: 1.5em;
	}
	.drop_menu #NavWrap .head_drop_col ul li a {
		padding: 10px 45px 10px 15px;
	}
	.drop_menu #NavWrap .head_drop_col ul li.head_list.banner a{
		margin-top:25px;
	}
	.drop_menu #NavWrap li.drop_wrap:before{
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		background: rgba(0, 0, 0, 0);
		z-index: 1;
		opacity: 0;
		visibility: hidden;
		transition: all .2s;
		height:100vh
	}
	.drop_menu #NavWrap li.opened.drop_wrap:before{
		opacity: 1;
		visibility: visible;
		z-index: -1;
	}
	.drop_menu #NavWrap li.drop_wrap > a{
		pointer-events:none;
	}
	.drop_menu #NavWrap li.drop_wrap.txt_area > a:before{
		opacity: 0;
		visibility:hidden;
		bottom: -28px;
	}
	.drop_menu #NavWrap li.opened.drop_wrap.txt_area > a:before {
		opacity: 1;
		visibility: visible;
		z-index: 999;
	}
	.drop_menu #NavWrap ul>li {
		height: auto;
	}
}
@media screen and (max-width:1780px) {
	.menu_bottom {
		max-width: 1084px;
		width: 70%;
	}
}
@media screen and (max-width:1290px) {
	.menu_bottom {
		max-width: 700px;
		width: auto;
	}
	.drop_menu #NavWrap li .mega_menu .menu_wrap {
		padding: 0 2%;
	}
	.drop_menu #NavWrap .head_drop_col ul {
		width: 29%;
		margin-right: 1%;
	}
	.drop_menu #NavWrap li.txt_area>p span,
	.drop_menu #NavWrap li.txt_area>a span,
	.drop_menu #NavWrap li.recruit_area>a span,
	.drop_menu #NavWrap li.contact_area>a span {
		font-size: 0.75rem;
	}
	.drop_menu #NavWrap .recruit_area a,
	.drop_menu #NavWrap .contact_area a{
		padding: 33px 0;
		height: 80px;
		width: auto;
	}
	.drop_menu #NavWrap .recruit_area,
	.drop_menu #NavWrap .contact_area {
		width: 150px;
	}
	.drop_menu #NavWrap li.txt_area.motorization{
		width: 32%;
	}
	.drop_menu #NavWrap li.drop_wrap.txt_area > a:before{
		bottom: -29px;
	}
}
@media screen and (max-width:1080px) {
	.menu_bottom {
		width: 70%;
	}
	.drop_menu #NavWrap li .mega_menu .menu_wrap {
		padding: 0 15px;
	}
	.menu_top #site_ttl a {
		width: 100%;
	}
	.menu_top #site_ttl a img {
		max-width: 100%;
		height: auto;
	}
	.menu_top {
		width: 30%;
	}
	.drop_menu #NavWrap .contact_area a .icon img {
		left:5%;
	}
	body.article .menu_top #site_ttl a img{
		height:auto;
	}
}
@media screen and (max-width: 930px) {
	body {
		padding-top: 60px;
	}
	header .menu_top {
		padding: 0;
	}
	.drop_menu #NavWrap li a{
		pointer-events:all;
	}
	.drop_menu #switch~label {
		display: block;
		cursor: pointer;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 900;
		-webkit-transition: 0.5s transform;
		transition: 0.4s transform, right 0.4s;
		padding: 0;
	}
	.drop_menu #switch~label b {
		padding: 12px;
		width: 50px;
		height: 50px;
		box-sizing: border-box;
		background: #fff;
		text-align: center;
		display: block;
		z-index: 2;
	}
	.drop_menu #switch~label span {
		cursor: -webkit-grabbing;
		display: block;
		width: 60px;
		height: 3px;
		background: #000;
		-webkit-transition: 0.2s transform, 0.5s background;
		transition: 0.2s transform, 0.5s background;
		position: absolute;
		top: 50%;
		left: 0;
		right: 0;
		margin: auto;
		margin-top: -5px;
	}
	.drop_menu #switch~label span:before,
	.drop_menu #switch~label span:after {
		content: "";
		display: block;
		width: 60px;
		height: 3px;
		background: #282828;
		position: absolute;
		margin-top: 0;
	}
	.drop_menu #NavWrap li.txt_area>a span,
	.drop_menu #NavWrap li.txt_area>p span {
		position: relative;
		color: #fff;
		font-size: 1.14rem;
	}
	.drop_menu #switch~label span:before {
		top: -18px;
		width: 29px;
	}
	.drop_menu #switch~label span:after {
		top: 18px;
	}
	.drop_menu #switch:checked~label span {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.drop_menu #switch:checked~label span:before {
		top: 0;
		width: 24px;
	}
	.drop_menu #switch:checked~label span:after {
		-webkit-transform: rotate(270deg);
		transform: rotate(270deg);
		top: 0;
		margin-top: 0;
		width: 24px;
	}
	.drop_menu #switch:checked~label {
		right: 0;
		padding: 0;
	}
	.drop_menu #NavWrap {
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 800;
		height: 100%;
		overflow: auto;
		visibility: hidden;
		padding-top: 100px;
		box-sizing: border-box;
		transition: all 0.4s;
		overscroll-behavior: contain;
	}
	.drop_menu #NavWrap::-webkit-scrollbar {
		height: 10px;
		width: 10px;
	}
	.drop_menu #NavWrap::-webkit-scrollbar-track {
		border-radius: 10px;
		background: #b3b3b3;
	}
	.drop_menu #NavWrap::-webkit-scrollbar-thumb {
		border-radius: 10px;
	}
	.drop_menu #switch:checked~label+#NavWrap {
		visibility: visible;
		max-height: 100vh;
		top: 0;
	}
	.drop_menu #NavWrap>ul {
		width: 100%;
		margin-right: 0;
		margin-left: auto;
	}
	.drop_menu #NavWrap li a {
		width: auto;
		min-height: 50px;
		display: flex;
		justify-content: flex-start;
		text-align: left;
		padding: 15px 40px 15px 10px;
		padding-left: 10px;
		text-decoration: none;
		background: none;
		font-size: 1rem;
		color: #282828;
		border-bottom: solid 1px #fff;
	}
	.drop_menu #NavWrap ul li.drop_wrap>a {
		pointer-events: none;
	}
	.drop_menu #NavWrap li a span {
		padding: 10px 0px;
		border-left: none;
		white-space: normal;
	}
	.drop_menu #NavWrap li .mega_menu .head_tit a span.display_sp {
		display: inline-block;
	}
	.drop_menu #NavWrap ul>li.display_sp {
		display: block;
	}
	header#fix_menu,
	header#fix_menu.fixedMenu {
		top: 0;
		transition: none;
		position: fixed;
	}
	header .menu_top {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 700;
		background: none;
		padding: 0;
		box-sizing: border-box;
		background: #fff;
	}
	header .menu_top #site_ttl {
		padding: 12.5px 5px;
	}
	header .sp_contact {
		position: absolute;
		right: 60px;
	}
	header .sp_contact a {
		width: 60px;
		height: 60px;
		background: #f0f0f0;
		padding: 12px 0;
		display: block;
		text-decoration: none;
	}
	header .sp_contact a span {
		font-size: 0.57rem;
	}
	header .menu_top #site_ttl img {
		max-height: 35px;
		width: auto;
	}
	header .menu_top #site_ttl p {
		display: none;
	}
	.menu_top .right_menu {
		padding: 5px 60px 5px 5px
	}
	.menu_top .right_menu li {
		display: none;
	}
	header .menu_top .logo a+a {
		margin-left: 6px;
	}
	header .menu_top .logo a img {
		width: 58px;
		height: auto;
		vertical-align: middle;
	}
	header .menu_top .logo a+a img {
		width: 181px;
	}
	header .menu_top .logo span {
		font-size: 8px;
		vertical-align: middle;
	}
	header .menu_top .menu_fix {
		position: relative;
	}
	.type_general header .menu_top .outwrap {
		background: rgba(255, 255, 255, 0.6);
	}
	.drop_menu #NavWrap {
		padding-top: 0;
		position: fixed;
		z-index: 1000;
		top: 60px;
		left: auto;
		right: -100%;
		padding: 0;
		width: 70%;
		height: 100%;
	}
	.drop_menu #switch:checked~label+#NavWrap {
		top: 60px;
		left: auto;
		right: 0;
		background: #282828;
	}
	.drop_menu #switch~label b {
		padding: 12px;
		width: 60px;
		height: 60px;
	}
	.drop_menu #switch~label:before {
		content: "";
		display: block;
		position: fixed;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		background: rgba(0, 0, 0, 0.25);
		z-index: -2;
		opacity: 0;
		visibility: hidden;
		transition: all .2s;
	}
	.drop_menu #switch:checked~label:before {
		visibility: visible;
		opacity: 1;
	}
	.drop_menu #switch~label span {
		width: 24px;
		height: 2px;
		top: 30px;
		margin: auto;
	}
	.drop_menu #switch~label span:before,
	.drop_menu #switch~label span:after {
		width: 22px;
		height: 2px;
		margin-top: 0;
	}
	.drop_menu #switch~label span:before {
		top: -9px;
		width: 32px;
	}
	.drop_menu #switch~label span:after {
		top: 9px;
		width: 16px;
	}
	.drop_menu #NavWrap ul {
		display: block;
		border-left: none;
		height: 100%;
		width: 100%;
		padding: 0;
		background: #282828;
	}
	.drop_menu #NavWrap ul li {
		position: relative;
		z-index: 10;
		display: block;
		padding: 0;
		width: 100%;
		background: #9c9c9c;
		height: auto;
	}
	.drop_menu #NavWrap li.txt_area,
	.drop_menu #NavWrap li.txt_area.motorization{
		width: 100%;
	}
	.drop_menu #NavWrap .recruit_area,
	.drop_menu #NavWrap .contact_area {
		width: 100%;
	}
	.drop_menu #NavWrap .recruit_area a,
	.drop_menu #NavWrap .contact_area a {
		background: #9c9c9c;
		padding: 15px 40px 15px 10px;
		border: none;
		border-bottom: 1px solid #fff;
	}
	.drop_menu #NavWrap .recruit_area a .icon,
	.drop_menu #NavWrap .contact_area a .icon {
		display: none;
	}
	.drop_menu #NavWrap ul li a span {
		font-weight: bold;
	}
	.drop_menu #NavWrap .recruit_area a span,
	.drop_menu #NavWrap .contact_area a span {
		color: #fff;
	}
	.drop_menu #NavWrap .grobal_area>p {
		width: auto;
		display: block;
		height: auto;
		padding: 18.5px 10px;
		font-size: 1rem;
	}
	.drop_menu #NavWrap .grobal_area>p span {
		text-align: left;
		margin-top: 0;
	}
	.drop_menu #NavWrap .grobal_area>p img {
		display: none;
	}
	.drop_menu #NavWrap li:hover .mega_menu .menu_wrap .head_tit a img,
	.drop_menu #NavWrap li.drop_wrap.txt_area p:before,
	.drop_menu #NavWrap li.txt_area>a span:after,
	.drop_menu #NavWrap li.txt_area>p span:after,
	.drop_menu #NavWrap li:hover .mega_menu .menu_wrap .head_tit a:hover img {
		display: none;
	}
	.drop_menu #NavWrap li .mega_menu .menu_wrap .head_tit a span {
		color: #282828;
		font-size: 1rem;
		font-weight: bold;
		padding: 0;
		height: auto;
	}
	.drop_menu #NavWrap .contact_area.sp_gray a {
		background: #9c9c9c;
	}
	.drop_menu #NavWrap .contact_area.sp_black a {
		background: #282828;
	}
	.drop_menu #NavWrap li:hover .mega_menu .menu_wrap .head_tit a span span {
		padding: 0;
	}
	.drop_menu #NavWrap li a:hover,
	.drop_menu #NavWrap ul li.inquiry a:hover {
		background: none;
	}
	.drop_menu #NavWrap li a span,
	.drop_menu #NavWrap ul li.inquiry a span {
		display: block;
		padding: 17px 20px;
		font-weight: normal;
		background: none;
		line-height: 1.4;
	}
	.drop_menu #NavWrap li a span br {
		display: block;
	}
	.drop_menu #NavWrap li a span:after {
		display: none;
	}
	.drop_menu #NavWrap li.drop_wrap i {
		display: block;
		height: 50px;
		cursor: pointer;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 10;
		left: 0;
		margin: auto;
		bottom: auto;
	}
	.drop_menu #NavWrap li .mega_menu{
		position: relative;
		opacity: 1;
		visibility: visible;
		background: transparent;
		top: 0px;
		padding: 0;
		height: auto;
		display: none;
	}
	.drop_menu #NavWrap li:hover .mega_menu{
		opacity: 1;
		visibility:visible;
	}
	.drop_menu #NavWrap li.opened .mega_menu{
		height: auto;
		padding: 0;
	}
	.drop_menu #NavWrap li .mega_menu .menu_wrap .head_tit a {
		margin-bottom: 0;
		background: #fff;
		padding: 15px 10px;
		border-bottom: 1px solid #e3e3e3;
	}
	.drop_menu #NavWrap li .mega_menu .head_tit a:before,
	.drop_menu #NavWrap ul li:not(.drop_wrap) a:before {
		content: "";
		width: 16px;
		height: 16px;
		position: absolute;
		background: url(../img/common/arrow_blue.png);
		background-size: contain;
		right: 20px;
		top: 0;
		bottom: 0;
		margin: auto;
		z-index: 1;
		transition: .5s transform;
	}
	.drop_menu #NavWrap ul li:not(.drop_wrap) a:before {
		background-image: url(../img/common/arrow_white.png);
	}
	.drop_menu #NavWrap ul li:not(.drop_wrap) a[target="_blank"]:before {
		background-image: url(../img/common/head_out_link.png);
		width: 18px;
		height: 18px;
	}
	.drop_menu #NavWrap li .mega_menu .menu_wrap .head_tit img {
		display: none;
	}
	.drop_menu #NavWrap ul li.drop_wrap i:before,
	.drop_menu #NavWrap ul li.drop_wrap i:after {
		content: "";
		width: 20px;
		height: 2px;
		display: block;
		position: absolute;
		right: 20px;
		top: 0;
		bottom: 0;
		margin: auto;
		z-index: 20;
		background: #fff;
		transition: transform .4s;
	}
	.drop_menu #NavWrap li.drop_wrap ul,
	.drop_menu #NavWrap li.drop_wrap:hover ul {
		opacity: 1;
		visibility: visible;
		position: static;
		transform: none;
		width: 100%;
		max-height: 100%;
		overflow: hidden;
		transition: opacity .4s, visibility .4s, max-height .4s;
	}
	.drop_menu #NavWrap .head_drop_col ul {
		margin-right: 0;
	}
	.drop_menu #NavWrap ul li.drop_wrap.opened ul {
		opacity: 1;
		visibility: visible;
		max-height: 100vh;
		padding: 0;
		background: #282828;
	}
	.drop_menu #NavWrap li.txt_area>p span,
	.drop_menu #NavWrap li.recruit_area>a span,
	.drop_menu #NavWrap li.contact_area>a span {
		font-size: 1.14rem;
		font-weight: bold;
	}
	.drop_menu #NavWrap ul li.drop_wrap i:after {
		transform: rotate(90deg);
	}
	.drop_menu #NavWrap ul li.drop_wrap.opened i:before {
		transform: rotate(180deg);
	}
	.drop_menu #NavWrap ul li.drop_wrap.opened i:after {
		transform: rotate(-180deg);
	}
	.drop_menu #NavWrap li.drop_wrap ul li a {
		font-size: 12px;
		text-align: left;
		width: auto;
		padding: 0;
		text-decoration: none;
		background: rgba(255, 255, 255, 0.1);
		color: #333;
		border-bottom: none;
	}
	.drop_menu #NavWrap .head_drop_col ul li.head_list.banner a {
		margin-top: 0;
	}
	.drop_menu #NavWrap .recruit_area a,
	.drop_menu #NavWrap .contact_area a{
		height:auto;
		justify-content: flex-start;
		width: auto;
	}
	.drop_menu #NavWrap .head_drop_col ul li.black a {
		background: transparent;
	}
	.drop_menu #NavWrap .head_drop_col ul li.black a {
		color: #282828;
		height: auto;
	}
	.drop_menu #NavWrap li.drop_wrap ul li a span {
		padding: 15px 40px 15px 30px;
		color: #282828;
		font-size: 1rem;
	}
	.drop_menu #NavWrap .head_drop_col ul li a:after {
		display: none;
	}
	.drop_menu #NavWrap .head_drop_col ul li a:before {
		background: url(../img/common/arrow_blue.png);
		background-size: contain;
		right: 21px;
	}
	.drop_menu #NavWrap li .mega_menu .head_tit a span:before {
		display: none;
	}
	.drop_menu #NavWrap .head_drop_col ul li.head_list,
	.drop_menu #NavWrap .head_drop_col ul li.head_list.black {
		border-bottom: 1px solid #c9c9c9;
		margin-bottom: 0;
		background: #fff;
	}
	.drop_menu #NavWrap .head_drop_col ul li a[target="_blank"]:before {
		background: url(../img/common/head_out_link_blue.png);
		background-size: contain;
		width: 20px;
		height: 20px;
		right: 20px;
	}
	.drop_menu #NavWrap .head_drop_col ul li.display_pc {
		display: none;
	}
	.drop_menu #NavWrap li.opened:before{
		visibility:hidden;
		opacity:0;
	}
	.drop_menu #NavWrap li.opened .mega_menu:before{
		display:none;
	}
	.drop_menu #NavWrap .head_drop_col ul li.black a span{
		color:#282828;
	}
	.drop_menu #NavWrap li .mega_menu .menu_wrap {
		padding: 0;
	}
	.drop_menu #NavWrap li .mega_menu .menu_wrap .head_tit a em{
		display:none;
	}
}
@media screen and (max-width:355px) {
	header .menu_top #site_ttl img {
		max-height: 25px;
	}
	header .menu_top #site_ttl {
		padding: 17.5px 5px;
	}
}
/* contents
-------------------------------------------------------------------*/
main {
	display: block;
}
body.home .base_btn {
	position: relative;
}
body.home .base_btn a {
	width: 100%;
	max-width: 370px;
	height: 77px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #282828;
	background: #fff;
	transition: .5s transform;
	font-weight: bold;
	position: relative;
	pointer-events: auto;
	border: 1px solid #0c2960;
	font-size: 1.0625rem;
}
body.home .base_btn a:before {
	content: "";
	width: 16px;
	height: 16px;
	position: absolute;
	background: url(../img/common/arrow_blue.png);
	background-size: contain;
	right: 30px;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
	transition: .5s transform;
}
body.home .base_btn a:hover {
	text-decoration: none;
	transform: translateY(5px);
}
body.home .base_btn a:hover:before {
	transform: translateX(5px);
}
body.home .products .products_whole .products_wrap .products_item .base_btn02 a {
	width: 75px;
	height: 75px;
	border-radius: 50%;
	background: #0c2960;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	font-size: 1.5rem;
	position: relative;
}
body.home .base_btn02 a:before {
	width: 75px;
	height: 75px;
	content: "";
	background: #fff;
	border-radius: 50%;
	position: absolute;
	z-index: 1;
	transform: scale(0);
	transition: .5s transform;
}
body.home .base_btn02 a:after {
	width: 92px;
	height: 92px;
	content: "";
	border: 1px solid #282828;
	border-radius: 50%;
	position: absolute;
	left: auto
}
body.home .base_btn02 a span {
	position: relative;
	z-index: 2;
	width: 75px;
	height: 75px;
	display: flex;
	justify-content: center;
	align-items: center;
}
body.home .base_btn02 a span:before {
	z-index: 1;
	content: "";
	width: 20px;
	height: 20px;
	position: absolute;
	background: url(../img/common/arrow_white.png);
	background-size: contain;
	right: 0px;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: .5s background;
}
body.home .base_btn02 a[target="_blank"] span:before {
	display: none;
}
body.home .base_btn02 a span .on {
	display: block;
}
body.home .base_btn02 a span .off {
	display: none;
}
body.home .base_btn02 a:hover {
	background: #fff;
	text-decoration: none;
}
body.home .base_btn02 a:hover:before {
	transform: scale(1);
}
body.home .base_btn02 a:hover span:before {
	background: url(../img/common/arrow_blue.png);
	background-size: contain;
}
body.home .base_btn02 a:hover span .on {
	display: none;
}
body.home .base_btn02 a:hover span .off {
	display: block;
}
@media screen and (max-width:767px) {
	body.home .products .products_whole .products_wrap .products_item .base_btn02 a {
		width: 56px;
		height: 56px;
		font-size: 1.42rem;
	}
	body.home .base_btn02 a:before {
		width: 56px;
		height: 56px;
	}
	body.home .base_btn02 a:after {
		width: 70px;
		height: 70px;
	}
	body.home .base_btn a{
		width: 87%;
		height: 64px;
		margin: 0 auto;
	}
	.base_btn a{
		width: 80%;
		height: 59px;
		margin: 0 auto;
	}
	.base_btn a:before {
		right: 25px;
		font-size: 1.14rem;
		height: 14px;
	}
}
/* mv
-------------------------------------------------------------------*/
body.home .visual {
	position: relative;
}
body.home .visual .position {
	position: relative;
	overflow: hidden;
	background: url(../img/top/mv_bg_logo01.png);
	background-repeat: no-repeat;
	background-size: 60%;
	background-position-y: -200%;
	background-position-x: -47%;
}
body.home .visual .position {
	height: 860px;
	height: 44.792vw;
	overflow: hidden;
	position: relative;
}
body.home .visual .position .bg_area>* {
	position: absolute;
}
body.home .visual .position .bg_area img {
	max-width: 100%;
	height: auto;
}
body.home .visual .position .mv_tit {
	z-index: 5;
	left: 18.5%;
	top: 18.75%;
	margin: auto;
	height: 42%;
	position: absolute;
}
body.home .visual .position .mv_tit .mv_style {
	font-size: min(5.1vw,6.125rem);
	font-family: "Archivo Black", "Orbitron", sans-serif;
	line-height: 1;
	font-weight: 900;
	background: linear-gradient(90deg, #0c2960 0%, #076ea8 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
body.home .visual .position .mv_tit .mv_style img {
	max-width: 100%;
	height: auto;
}
body.home .visual .position .mv_tit p strong {
	text-align: left;
	font-size: 2.25rem;
	font-weight: 500;
	display: block;
	padding-top: 7%;
	letter-spacing: 0.15em;
}
body.home .visual .position .bg_area .town01 {
	right: -7%;
	top: -17%;
	z-index: 4;
	width: 59.896%;
}
body.home .visual .position .bg_area .town02 {
	right: 25%;
	top: 68%;
	z-index: 5;
	width: 27.136%;
}
body.home .visual .position .bg_area .town03 {
	left: -4.8%;
	top: 35.2%;
	z-index: 3;
	width: 20.192%;
}
body.home .visual .position .bg_area .town04 {
	top: 72%;
	left: -1.39%;
	z-index: 3;
	width: 7.917%;
}
body.home .visual .position .bg_area .town05 {
	left: 7.9%;
	z-index: 1;
	top: 69.5%;
	width: 15.1045%;
}
body.home .visual .position .bg_area .person01  {
	right: 49%;
	z-index: 4;
	top: 5%;
	width: 4.896%;
}
body.home .visual .position .bg_area .person02 {
	left: 11.75%;
	z-index: 4;
	top: 63.3%;
	width: 2.5%;
}
body.home .visual .position .bg_area .person03 {
	left: 26.1%;
	z-index: 2;
	top: 80.1%;
	width: 2.969%;
}
body.home .visual .position .bg_area .person04 {
	left: 5.5%;
	z-index: 5;
	width: 1.042%;
	top: 93%;
}
body.home .visual .position .bg_area .car01 {
	left: 25.5%;
	top: 88.5%;
	margin: auto;
	z-index: 15;
	width: 6.042%;
}
body.home .visual .pickup {
	position: relative;
	margin-top: -90px;
	z-index: 25;
	margin-bottom: -50px;
}
body.home .visual .pickup_whole {
	background: #282828;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	padding: 25px 50px 25px 50px;
	width: calc(100% - 20px);
	margin: 0 auto;
}
body.home .visual .pickup_whole .pickup_tit {
	width: 10%;
	border-right: 1px solid #fff;
}
body.home .visual .pickup_whole .pickup_tit p strong {
	display: block;
	color: #fff;
	font-size: 1.25rem;
}
body.home .visual .pickup_whole .pickup_wrap {
	width: 85%;
	box-sizing: border-box;
}
body.home .visual .pickup_whole .pickup_wrap li {
	display: block;
	box-sizing: border-box;
}
body.home .visual .pickup_wrap a {
	color: #fff;
	padding: 10px 0;
	display: block;
	width: calc(100% - 40px);
	box-sizing: border-box;
}
body.home .visual .slick-prev:before,
body.home .visual .slick-next:before {
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "";
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	left: 10px;
	bottom: 4px;
	margin: auto;
	transform: rotate(-135deg);
}
body.home .visual .slick-next:before {
	left: -5px;
	transform: rotate(45deg);
}
.slick-prev,
.slick-next {
	font-size: 0;
	line-height: 0;
	position: absolute;
	top: 50%;
	display: block;
	width: 20px;
	height: 20px;
	padding: 0;
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	cursor: pointer;
	color: transparent;
	border: none;
	outline: none;
	background: transparent;
	z-index: 100;
}
body.home .visual .slick-prev {
	left: auto;
	right: 0;
	top: -30px;
	bottom: 0;
	transform: rotate(90deg);
	margin: auto;
}
body.home .visual .slick-next {
	left: auto;
	right: 0;
	top: 0;
	bottom: -30px;
	transform: rotate(90deg);
	margin: auto;
}
@media screen and (min-width:1920px) {
	body.home .visual .position {
		height: 42.761vw;
		width: 100vw;
		overflow: hidden;
		position: relative;
	}
}
@media screen and (max-width:1450px) {
	body.home .visual .position .mv_tit{
		left: 16%;
	}
	body.home .visual .position .mv_tit p strong {
		font-size: 1.375rem;
		padding-top: 5%;
	}
}
@media screen and (max-width:1000px) {
	body.home .visual .position .mv_tit {
		left: 14%;
		top: 15%;
	}
}
@media screen and (max-width:767px) {
	body.home .visual .pickup_whole {
		padding: 10px 10px;
		width: calc(100% - 20px);
		margin: 0 auto;
		position: absolute;
		top: -125px;
		left: 0;
		right: 0;
	}
	body.home .visual .pickup_whole .pickup_tit {
		width: 100%;
		border-right: none;
	}
	body.home .visual .pickup_whole .pickup_tit p strong {
		display: inline-block;
		font-size: 1.26rem;
		position: relative;
	}
	body.home .visual .pickup_whole .pickup_tit p strong:before {
		content: "";
		background: #fff;
		width: 27px;
		height: 1px;
		position: absolute;
		bottom: -5px;
		left: 0;
	}
	body.home .visual .pickup_whole .pickup_wrap {
		width: 100%;
	}
	body.home .visual .pickup_wrap a time {
		display: block;
		margin-bottom: 5px;
	}
	body.home .visual .pickup {
		margin-top: 0px;
		margin-bottom: 0;
	}
	body.home .visual .position {
		height: 148vw;
		width: auto;
		background-size: 155%;
		background-position-y: 155%;
		background-position-x: 25%;
	}
	body.home .visual .position .bg_area>* {
		position: absolute;
	}
	body.home .visual .position .bg_area img {
		max-width: 100%;
		height: auto;
	}
	body.home .visual .position .mv_tit {
		z-index: 5;
		left: 0%;
		bottom: auto;
		margin: auto;
		height: auto;
		position: absolute;
		width: 100%;
		top: 58%;
	}
	body.home .visual .position .mv_tit img {
		max-width: 100%;
		height: auto;
	}
	body.home .visual .position .mv_tit p strong {
		font-size: 1.28rem;
		padding-top: 9%;
	}
	body.home .visual .position .bg_area .town01 {
		right: -32%;
		top: -16%;
		width: 130%;
	}
	body.home .visual .position .bg_area .town02 {
		right: auto;
		bottom: auto;
		z-index: 7;
		left: 15px;
		top: 36%;
		width: 56%;
	}
	body.home .visual .position .bg_area .person01{
	right: 49%;
	z-index: 4;
	top: 5%;
	width: 4.896%;
}
	body.home .visual .position .bg_area .town03,
	body.home .visual .position .bg_area .town04,
	body.home .visual .position .bg_area .town05,
	body.home .visual .position .bg_area .person02,
	body.home .visual .position .bg_area .person03,
	body.home .visual .position .bg_area .person04,
	body.home .visual .position .bg_area .car01{
		display: none;
	}
	body.home .visual .position .bg_area .town10 {
		left: auto;
		z-index: 4;
		bottom: -34%;
		width: 74.075%;
		right: -35%;
	}
	body.home .visual .position .bg_area .town11 {
		left: -29%;
		z-index: 2;
		bottom: -25%;
	}
	body.home .visual .position .bg_area .mv_car {
		left: 70%;
		top: 53%;
		z-index: 15;
		width: 25%;
		height: 16%;
	}
	body.home .visual .pickup_wrap a {
		font-size: 1rem;
		padding: 10px 0 5px;
	}
	body.home .visual .slick-list {
		max-width: calc(100% - 20px);
	}
	body.home .visual .slick-prev {
		top: -60px;
	}
	body.home .visual .slick-next {
		bottom: -20px;
	}
	body.home .visual .position .mv_tit .mv_style {
		font-size: min(13vw,6.125rem);
	}
}
/* business
-------------------------------------------------------------------*/
body.home .business {
	position: relative;
	background: url(../img/top/business_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
	padding: 189px 15px 170px;
	z-index: 5;
}
body.home .business:before {
	content: "";
	width: 598px;
	height: 750px;
	background: url(../img/top/business_left_item.png);
	position: absolute;
	right: -5px;
	top: 54%;
	background-size: contain;
}
body.home .business .sitewrap {
	overflow: visible;
}
body.home .business .business_wrap {
	position: relative;
}
body.home .image_style em {
	font-size:3.875rem;
	line-height:1;
	text-transform: uppercase;
	font-weight: bold;
}
body.home .business .business_wrap .text_area {
	max-width: 545px;
	position: relative;
	z-index: 2;
	pointer-events: none;
}
body.home .business .business_wrap .text_area .image_style {
	margin-bottom: 40px;
	font-size: 1.25rem;
	font-weight: 500;
	color: #fff;
}
body.home .business .business_wrap .text_area .image_style img {
	max-width: 100%;
	height: auto;
}
body.home .business .business_wrap .text_area .image_style span {
	display: block;
	margin-top: 1.45em;
}
body.home .business .business_wrap .text_area p {
	line-height: 2.125;
	color: #fff;
	margin-bottom: 2em;
	position: relative;
	z-index: 2;
	font-weight: 400;
}
body.home .business .business_wrap .image_area {
	position: absolute;
	right: -18%;
	top: -20px;
	bottom: 0;
	margin: auto;
	width: 69%;
}
body.home .business .base_btn a{
	padding-right:2em;
}
@media screen and (max-width:1500px) {
	body.home .business .business_wrap .image_area {
		width: 65%;
		right: -6%;
		top:5%;
	}
	body.home .business .business_wrap .image_area img {
		max-width: 100%;
		height: auto;
	}
}
@media screen and (max-width:1350px) {
	body.home .business .business_wrap .image_area ol{
		width: 100%;
		height:120%;
	}
		body.home .business:before {
		width: 30%;
		height: 60%;
		right: -5px;
		background-size: contain;
		top: 70%;
		background-repeat: no-repeat;
	}
}
@media screen and (max-width:1200px) {
	body.home .business .business_wrap .image_area {
		top: 14%;
		width: 60%;
	}
	body.home .business .business_wrap .image_area ol{
		height: 465px;
		width: 730px;
	}

	body.home .business {
		padding: 189px 0 10%;
		z-index: 5;
	}
}
@media screen and (max-width:1000px) {
	body.home .business .business_wrap .image_area {
		top: 100px;
	}
	body.home .business .business_wrap .image_area {
		top: 29%;
	}
	body.home .business .business_wrap .image_area ol{
		height: 81vw;
		width: 127%;
	}
}
@media screen and (max-width:1000px) {
	body.home .business .business_wrap .image_area {
		top: 24%;
		width:55%;
	}
}
@media screen and (max-width:768px) {
	body.home .business {
		padding: 70px 0 68%;
		z-index: 5;
		background: url(../img/top/business_bg_sp.png);
		background-size: cover;
		background-position: top center;
		background-repeat: no-repeat;
	}
	body.home .business .business_wrap .text_area {
		margin-bottom: 30px;
		padding: 0 15px;
	}
	body.home .business .business_wrap .text_area .image_style {
		margin-bottom: 30px;
		font-size: 1.26rem;
		width: 90%;
	}
	body.home .business .business_wrap .image_area {
		position: relative;
		top: 0;
		width: 100%;
		left: 0;
	}
	body.home .business .business_wrap {
		padding: 0;
	}
	body.home .business:before {
		width: 80vw;
		height: 100.534vw;
		right: 0px;
		background-size: contain;
		top: auto;
		bottom: -11%;
	}
	body.home .business .business_wrap .text_area p {
		margin-bottom: 25px;
		font-size: 1.14rem;
		letter-spacing: -0.05em;
	}
	body.home .image_style em {
		font-size:2.64rem;
	}
}
@media screen and (min-width:500px) and (max-width:768px) {
	body.home .business {
		padding: 90px 0 46vw;
		background-size: cover;
		background-position: bottom;
	}
}
@media screen and (max-width:499px) {
	body.home .business {
		padding: 90px 0 39vw;
		background-size: cover;
		background-position: bottom;
	}
}
@media screen and (max-width:350px) {
	body.home .business:before {
		bottom: -8%;
	}
}


/* products
-------------------------------------------------------------------*/
body.home .products {
	position: relative;
	background: url(../img/top/products_bg.png);
	background-repeat: no-repeat;
	background-position: bottom left 160px;
	padding: 150px 0 170px;
	z-index: 4;
}
body.home .products .products_whole .products_tit{
	display:flex;
	justify-content:flex-start;
	align-items:center;
	gap:2%;
}
body.home .products .products_whole .image_style {
	margin-bottom: 55px;
	font-size: 1.25rem;
	font-weight: bold;
	width:40%;
}
body.home .products .base_btn{
	width:50%;
	max-width:370px;
	top:-50px;
	position:relative;
}
body.home .products .sitewrap {
	overflow: visible;
	width: 1350px;
	min-width: 1350px;
}
body.home .products .products_whole .image_style img {
	max-width: 100%;
	height: auto;
}
body.home .products .products_whole .image_style span {
	display: block;
	margin-top: 1em;
}
body.home .products .products_whole .products_wrap{
	position: relative;
	margin-left: 80px;
}
body.home .products .products_whole .products_wrap ul{
	display:flex;
	justify-content:flex-start;
	align-items:stretch;
	gap: 1%;
	flex-wrap:wrap;
}
body.home .products .products_whole .products_wrap ul li{
	width: 31.5%;
	margin-bottom: 2.5em;
	max-width: 390px;
}
body.home .products .products_whole .products_wrap ul li img{
	max-width:100%;
	height:auto;
}
body.home .products .products_whole .products_wrap ul li a{
	display:block;
}
body.home .products .products_whole .products_wrap ul li a .image{
	margin-bottom: 0.5em;
	overflow: hidden;
	border: 2px solid #e5e5e5;
	display: inline-block;
	transition:.5s border-color;
}
body.home .products .products_whole .products_wrap ul li a p{
	font-size:1.5rem;
	font-weight:bold;
	position:relative;
	display:inline-block;
}
body.home .products .products_whole .products_wrap ul li a p i{
	width: 16px;
	height: 16px;
	position: relative;
	background: url(../img/common/arrow_blue.png);
	background-size: contain;
	right: -0.75em;
	z-index: 1;
	transition: .5s transform;
	display: inline-block;
	top: 2px;
}
body.home .products .products_whole .products_wrap ul li a:hover .image{
	border-color:#0c2960;
}
body.home .products .products_whole .products_wrap ul li a:hover p i{
	transform:translateX(5px);
}
body.home .products .base_btn a {
	color: #fff;
	background: #0c2960;
}
body.home .products .base_btn a:before {
	background: url(../img/common/arrow_white.png);
	background-size: contain;
}
@media screen and (max-width:1500px) {
	body.home .products {
		background-position: bottom left 0px;
		padding: 150px 0 170px;
		z-index: 4;
	}
	body.home .products .sitewrap {
		max-width: 100%;
		width: 100%;
		min-width: 0;
	}
	body.home .products .products_whole{
		padding:0 15px;
	}
	body.home .products .products_whole .products_wrap{
		margin-left:0;
	}
}
@media screen and (max-width:1200px) {
	body.home .products .products_whole .products_wrap {
		margin-left: 0;
	}
	body.home .products .products_whole .products_wrap ul li a p{
		font-size:1.125rem;
	}
	body.home .products .products_whole .image_style {
		width:50%;
	}
}
@media screen and (max-width:768px) {
	body.home .products {
		background: url(../img/top/products_bg_sp.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: top center;
		padding: 510px 0 90px;
		margin-top: -400px;
	}
	body.home .products .products_whole .image_style {
		margin-bottom: 35px;
		font-size: 1.26rem;
		width: 85%;
	}
	body.home .products .products_whole{
		padding: 0 15px;
	}
	body.home .products .products_whole .products_tit{
		flex-wrap:wrap;
		gap:0%;
		margin-bottom: 35px;
	}
	body.home .products .products_whole .image_style {
		margin-bottom: 15px;
		font-size: 1.14rem;
		width: 90%;
	}
	body.home .products .base_btn{
		width:100%;
		max-width:370px;
		top:0px;
	}
	body.home .products .base_btn a{
		margin-left:0;
	}
	body.home .products .products_whole .products_wrap ul{
		gap: 0%;
		justify-content:space-between;
	}
	body.home .products .products_whole .products_wrap ul li{
		width: 49%;
		margin-bottom: 1.5em;
		max-width: 390px;
	}
	body.home .products .products_whole .products_wrap ul li a p{
		font-size:1rem;
	}
	body.home .products .products_whole .products_wrap ul li a p i{
		width: 8px;
		height: 8px;
		top: 0px;
		right:-0.5em
	}
}
/* company
-------------------------------------------------------------------*/
body.home .company {
	position: relative;
	margin-bottom: 100px;
	margin-top: -20px;
	z-index: 5;
}
body.home .company img {
	max-width: 100%;
	height: auto;
}
body.home .company .image_style {
	margin-bottom: 25px;
	font-size: 1.25rem;
	font-weight: bold;
}
body.home .company .image_style img {
	max-width: 100%;
	height: auto;
}
body.home .company .image_style span {
	display: block;
	margin-top: 1em;
}
body.home .company .sitewrap > p {
	margin-bottom: 70px;
	line-height: 1.875;
}
body.home .company .company_wrap{
	max-width: 100%;
	margin-left:auto;
	position: relative;
}
body.home .company .company_wrap .slider_arrow{
	width:75px;
	height:75px;
	background:#0c2960;
	border:1px solid #0c2960;
	border-radius:50%;
	position:absolute;
	cursor:pointer;
	transition: .5s background;
}
body.home .company .company_wrap .slider_arrow.prev_arrow{
	right: 500px;
	bottom: -26%;
	transform:rotate(180deg);
	z-index:2;
	cursor: pointer;
}
body.home .company .company_wrap .slider_arrow.next_arrow{
	position:absolute;
	right: 400px;
	bottom:-26%;
	z-index:2;
	cursor: pointer;
}
body.home .company .company_wrap .slider_arrow:before{
	content: "";
	width: 20px;
	height: 20px;
	position: absolute;
	background: url(../img/common/arrow_white.png);
	background-size: contain;
	right: 0;
	left:0;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
	transition: .5s background;
}
body.home .company .company_wrap .slider_arrow:hover{
	background:#fff;
}
body.home .company .company_wrap .slider_arrow:hover:before{
	background: url(../img/common/arrow_blue.png);
	background-size: contain;
}
body.home .company .company_wrap li {
	max-width: 380px;
	padding: 0 10px;
}
body.home .company .company_wrap .slick-dots li {
	margin: 0 10px;
	transform: none;
}
body.home .company .company_wrap li a {
	position: relative;
	display: block;
	border: 1px solid #e5e5e5;
}
body.home .company .company_wrap li a p {
	padding: 25px 20px;
	background: #0c2960;
	text-align: left;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 500;
	text-decoration: none;
}
body.home .company .company_wrap li a .arrow {
	width: 79px;
	height: 79px;
	border-radius: 50%;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	font-size: 1.5rem;
	color: #0c2960;
	transition: .5s background, .5s color;
	border: 1px solid transparent;
	position: absolute;
	bottom: 10%;
	right: 10%;
}
body.home .company .company_wrap li a .arrow:before {
	content: "";
	width: 16px;
	height: 16px;
	position: absolute;
	background: url(../img/common/arrow_blue.png);
	background-size: contain;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
	transition: .5s transform;
	left: 0;
}
body.home .base_btn02 a .arrow {
	position: absolute;
	z-index: 2;
	color: #fff;
	transition: .5s color;
}
body.home .company .company_wrap li a:hover {
	text-decoration: none;
}
body.home .company .company_wrap li a:hover .arrow {
	background: #0c2960;
	color: #fff;
	border-color: #fff;
}
body.home .company .company_wrap li a:hover .arrow:before {
	background: url(../img/common/arrow_white.png);
	background-size: contain;
}
body.home .company .base_btn {
	position: absolute;
	top: 0;
	right: 18.5%;
	width: 370px;
}
body.home .company .base_btn {
	width: 370px;
}
body.home .company .base_btn a {
	color: #fff;
	background: #0c2960;
}
body.home .company .base_btn a:before {
	background: url(../img/common/arrow_white.png);
	background-size: contain;
}
body.home .slick-dots li button:before {
	width: 12px;
	height: 12px;
	content: '';
	background: #ebebeb;
	border-radius: 20px;
}
body.home .slick-dots li.slick-active button:before {
	background: #797979;
}
body.home .slick-dots {
	bottom: -82px;
	max-width: 1200px;
	box-sizing: border-box;
	left: 0;
	right: 0;
	text-align: left;
	margin: auto;
}
body.home .slick-dotted.slick-slider {
	margin-bottom: 90px;
}
@media screen and (max-width:1400px) {
	body.home .company .base_btn {
		right: 10px;
	}
	body.home .company .company_wrap li a p {
		font-size: 1.25rem;
		padding: 15px 10px;
	}
	body.home .company .company_wrap li a .arrow {
		width: 60px;
		height: 60px;
		font-size: 1.5rem;
		bottom: 5%;
	}
	body.home .company .company_wrap li a p {
		font-size: 1rem;
	}
}
@media screen and (max-width:1300px) {
	body.home .company .company_wrap .slider_arrow.prev_arrow{
		right:120px;
	}
	body.home .company .company_wrap .slider_arrow.next_arrow{
		right: 10px;
	}
}
@media screen and (max-width:1156px) {
	body.home .company .company_wrap li {
		transform: none;
	}
}
@media screen and (max-width:1100px) {
	body.home .company .company_wrap li a .arrow {
		width: 50px;
		height: 50px;
		font-size: 1.125rem;
		bottom: 30px;
		right: 10px;
	}
}
@media screen and (max-width: 768px) {
	body.home .company .base_btn {
		right: 0px;
		position: relative;
		padding: 0;
	}
	body.home .company .base_btn a {
		width: 80%;
		max-width: 370px;
		height: 64px;
	}
	body.home .company {
		margin-bottom: 80px;
		margin-top: 0;
	}
	body.home .company .image_style {
		margin-bottom: 35px;
		font-size: 1.26rem;
		width: 80%;
	}
	body.home .company .image_style span {
		display: block;
		margin-top:0.75em;
	}
	body.home .company .sitewrap > p {
		margin-bottom: 35px;
		font-size: 1.14rem;
		letter-spacing: -0.05em;
	}
	body.home .slick-dots {
		bottom: -40px;
		text-align: center;
	}
	body.home .company .company_wrap li a .arrow {
		width: 56px;
		height: 56px;
		bottom: 25px;
		right: 15px;
	}
	body.home .company .company_wrap li a .arrow:before {
		right: 0;
		left: 0;
	}
	body.home .company .base_btn {
		width: 100%;
	}
	body.home .company .company_wrap li {
		max-width: 310px;
		padding: 0 10px;
	}
	body.home .company .company_wrap .slick-dots li {
		margin: 0 5px;
	}
	body.home .company .company_wrap li a p {
		font-size: 1.4rem;
	}
	.drop_menu #NavWrap ul>li{
		height:auto;
	}
	body.home .company .company_wrap .slider_arrow.prev_arrow,
	body.home .company .company_wrap .slider_arrow.next_arrow{
		display:none !important;
	}
}
/* rec_banner
-------------------------------------------------------------------*/
body.home .rec_banner {
	position: relative;
	margin-bottom: 150px;
	padding: 0 10px;
}
body.home .rec_banner a {
	transition: .5s transform;
	display: block;
	max-width: 1100px;
	margin: 0 auto;
}
body.home .rec_banner a:hover {
	transform: translateY(5px);
}
body.home .rec_banner img {
	max-width: 100%;
	height: auto;
}
@media screen and (max-width:768px) {
	body.home .rec_banner {
		margin-bottom: 60px;
		padding: 0 10px;
	}
	body.home .company .company_wrap .prev_icon,
	body.home .company .company_wrap .next_icon{
		display:none;
	}
}

/* connection
-------------------------------------------------------------------*/
body.home .connection {
	position: relative;
	background: #f0f0f0;
	padding: 100px 0;
}
body.home .connection .sitewrap {
	overflow: visible;
}
body.home .connection .prev_icon,
body.home .connection .next_icon {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 5;
}
body.home .connection .prev_icon {
	left: -50px;
	transform: rotate(180deg);
}
body.home .connection .next_icon {
	right: -50px;
}
body.home .connection li a {
	text-align: center;
	margin: 0 10px;
	transition: .5s opacity;
	height: 110px;
	display: flex;
	justify-content: center;
	align-items: center;
}
body.home .connection li a:hover {
	opacity: 0.7;
}
body.home .connection .slick-dotted.slick-slider {
	margin-bottom: 0;
}
body.home .connection .slick-dots li button:before {
	background: #fff;
}
body.home .connection .slick-dots li.slick-active button:before {
	background: #797979;
}
body.home .connection .slick-dots li {
	margin: 0 5px;
}
body.home .connection .slick-dots {
	bottom: -40px;
	left: 0;
	text-align: center;
}
body.home .connection li a img {
	max-width: 100%;
	height: auto;
}
@media screen and (max-width:1300px) {
	body.home .connection ul {
		padding: 0px 60px;
	}
	body.home .connection .prev_icon {
		left: 15px;
	}
	body.home .connection .next_icon {
		right: 15px;
	}
}
@media screen and (max-width:768px) {
	body.home .connection {
		padding: 65px 0;
	}
	body.home .connection ul {
		padding: 0;
	}
	body.home .connection .prev_icon {
		left: 30px;
		width: 25px;
		height: 25px;
	}
	body.home .connection .next_icon {
		right: 30px;
		width: 25px;
		height: 25px;
	}
	body.home .connection .slick-dots {
		bottom: -35px;
	}
}
/* footer
-------------------------------------------------------------------*/
#pageTop {
	position: fixed;
	bottom: 15px;
	right: 5%;
	width: 70px;
	z-index: 500;
	transition: bottom .4s;
}
footer {
	position: relative;
}
footer .footer_logo {
	border-top: 2px solid #0c2960;
	border-bottom: 2px solid #0c2960;
}
main a.page_link {
	margin-top: -60px;
	padding-top: 60px;
	display: block;
	position: relative;
	z-index: -10;
}
footer .footer_logo a {
	display: inline-block;
	padding: 45px 10px;
	transition: .5s opacity;
}
footer .footer_logo a:hover {
	opacity: 0.7;
	text-decoration: none;
}
footer .footer_sitemap {
	max-width: 1100px;
	margin: 70px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}
footer .footer_sitemap .f_sitewrap_item {
	width: max-content;
	margin-right: 1em;
	margin-bottom: 1em;
}
footer .footer_sitemap .f_sitewrap_item:last-child {
	margin-right: 0;
}
footer .footer_sitemap .f_sitewrap_item .f_item01 a {
	padding-left: 1.75em;
	position: relative;
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: 1em;
	display: block;
}
footer .footer_sitemap .f_sitewrap_item .f_item01 a:before {
	content: "";
	width: 13px;
	height: 13px;
	position: absolute;
	background: url(../img/common/arrow_blue.png);
	background-size: contain;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
	transition: .5s transform;
}
footer .footer_sitemap .f_sitewrap_item .f_item02 a {
	padding-left: 0.5em;
	position: relative;
	font-size: 1rem;
	margin-bottom: 0.75em;
	display: block;
}
footer .footer_sitemap .f_sitewrap_item .f_item02 a:before {
	content: "";
	width: 5px;
	height: 1px;
	position: absolute;
	left: 0px;
	top: 0;
	bottom: 0;
	margin: auto;
	background: #282828;
}
footer .footer_sitemap .f_sitewrap_item a span {
	position: relative;
}
footer .footer_sitemap .f_sitewrap_item a span:before {
	position: absolute;
	display: inline-block;
	content: "";
	width: 100%;
	height: 2px;
	background: #0c2960;
	bottom: -5px;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .4s;
	z-index: 0;
	left: 0;
	right: 0;
	margin: auto;
}
footer .footer_sitemap .f_sitewrap_item a:hover {
	text-decoration: none;
}
footer .footer_sitemap .f_sitewrap_item a:hover span:before {
	transform: scale(1, 1);
	transform-origin: left top;
}
footer small {
	padding: 15px 0;
	background: #111111;
	display: block;
	color: #a6a6a6;
	text-align: center;
	font-size: 0.75rem;
}
@media screen and (max-width:767px) {
	#pageTop {
		width: 49px;
		right: 10px;
		bottom: 10px;
	}
	footer {
		padding: 0;
	}
	#foot_right small {
		font-size: 10px;
	}
	footer .footer_sitemap {
		display: none;
	}
	footer .footer_logo a {
		padding: 20px 10px;
	}
	footer .footer_logo a img {
		max-width: 100%;
		height: 54px;
		width: auto;
	}
}
/* common_font
-------------------------------------------------------------------*/
body.article img {
	max-width: 100%;
	height: auto;
}
body.article p {
	word-break: break-word;
	margin-bottom: 0;
}
body.article .site_title {
	position: relative;
}
body.article .site_title .title_image img {
	margin: 0 auto;
}
body.article .site_title:before {
	content: "";
	width: 743px;
	height: 213px;
	background: url(../img/common/kaso_mv_tmy.png);
	position: absolute;
	right: 0;
	top: 0;
	z-index: 0;
	background-size: 100%;
	background-repeat: no-repeat;
}
body.article .title_area {
	margin-bottom: 4.375em;
	padding-bottom: 3.25em;
	border-bottom: 1px solid #e5e5e5;
	margin-top: 9.375em;
	position: relative;
	z-index: 1;
}
body.article .site_title .site_style01 {
	font-size: 3.5em;
	font-weight: bold;
	line-height: 1.25;
}
body.article .site_title p {
	font-size: 1.25rem;
	font-weight: 500;
	margin-top: 50px;
	line-height: 1.875;
}
body.article .point {
	position: relative;
}
body.article .site_title02 {
	position: relative;
	font-size: 2rem;
	font-weight: bold;
	padding: 0 0 0 0.5em;
	margin-bottom: 1em;
	letter-spacing: -0.05em;
}
body.article .site_title02>img.product_icon {
	margin-right: 15px;
	position: relative;
}
body.article .site_title02 span {
	display: block;
	margin-bottom: 0.5em;
	line-height: 1;
}
body.article .site_title02 .point_img{
	font-size:1.25rem;
	font-weight:bold;
	color:#0c2960;
	letter-spacing:0.03em
}
body.article .site_title02 .point_img .point_number{
	display:inline-block;
	font-size:2rem;
	padding-left:5px;
	margin-bottom: 0;
}
body.article .site_title02:before {
	content: "";
	width: 4px;
	background: #0c2960;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
body.article .site_title03 {
	position: relative;
	font-size: 1.75em;
	font-weight: 500;
	padding-bottom: 0.75em;
	margin-bottom: 0.75em;
	border-bottom: 1px solid #f0f0f0;
}
body.article .site_title03:before {
	content: "";
	width: 55px;
	height: 2px;
	background: #0c2960;
	position: absolute;
	left: 0;
	bottom: -1px;
}
body.article a * i {
	width: 37px;
	height: 37px;
	background: #cfcfcf;
	border-radius: 50%;
	display: inline-block;
	position: relative;
	top: 10px;
	margin-left: 0.5em;
	transition: .5s background;
}
body.article a * i:before {
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: .5s background;
	z-index: 1;
	content: "";
	width: 10px;
	height: 10px;
	position: absolute;
	background: url(../img/common/arrow_white.png);
	background-size: contain;
}
body.article a[target="_blank"] * i:before {
	content: "";
	width: 17px;
	height: 17px;
	position: absolute;
	right: 0px;
	left: 0px;
	top: 0;
	bottom: 0;
	margin: auto;
	background: url(../img/common/head_out_link.png);
	background-size: contain;
}
body.article a .p_link {
	font-size: 0.875rem;
	font-weight: 500;
	color: #cfcfcf;
	transition: .5s color;
}
body.article a:hover {
	text-decoration: none;
}
body.article a:hover * i {
	background: #0c2960;
}
body.article a:hover .p_link {
	color: #0c2960;
}
@media screen and (max-width:768px) {
	body.article .title_area {
		margin: 4em 0 3em;
		border-bottom: 1px solid #e5e5e5;
		padding: 0 0 2em;
	}
	body.article .site_title .site_style01 {
		font-size: 2.875em;
		margin-bottom: 0.5em;
	}
	body.article .site_title02 {
		font-size: 1.47rem;
	}
	body.article .site_title p {
		font-size: 1.07rem;
	}
	body.article .site_title03 {
		font-size: 1.25em;
	}
	body.article a * i {
		width: 27px;
		height: 27px;
	}
	body.article a * i:before {
		width: 10px;
		height: 10px;
		font-size: 1rem;
	}
	body.article a[target="_blank"] * i:before {
		width: 14px;
		height: 14px;
	}
	body.article .site_title:before {
		width: 70%;
		height: 70%;
	}
	body.article .site_title02>img.product_icon {
		max-height: 27px;
		width: auto;
		margin-right: 8px;
	}
	body.article .site_title02 .point_img {
		font-size: 1rem;
	}
	body.article .site_title02 .point_img .point_number {
		font-size: 1.5rem;
	}
}
/* common_btn
-------------------------------------------------------------------*/
body.article .base_btn {
	position: relative;
}
body.article.list_business .base_btn {
	margin-top: 40px;
	width: 100%;
}
body.article .base_btn a {
	width: 100%;
	max-width: 370px;
	height: 77px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	color: #fff;
	background: #0c2960;
	transition: .5s transform;
	font-weight: bold;
	position: relative;
	text-decoration: none;
	padding: 0 50px;
}
body.article .base_btn a:before {
	right: 30px;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: .5s transform;
	z-index: 1;
	content: "";
	width: 16px;
	height: 16px;
	position: absolute;
	background: url(../img/common/arrow_white.png);
	background-size: contain;
}
body.article .base_btn a:hover {
	transform: translateY(5px);
}
body.article .base_btn a:hover:before {
	transform: translateX(5px);
}
body.article .base_btn a[target="_blank"]:before {
	content: "";
	width: 19px;
	height: 19px;
	right: 30px;
	background: url(../img/top/out_link.png);
	background-size: contain;
	transition: .5s background;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
body.article .base_btn a[target="_blank"]:hover:before {
	transform: translateX(0px);
}
.link_none {
	pointer-events: none;
}
@media screen and (max-width:768px) {
	body.article .base_btn a:hover {
		transform: none;
	}
	body.article.list_business .base_btn {
		margin:30px auto 0;
		width: 80%;
	}
	body.article .base_btn a[target="_blank"]:before {
		right: 30px;
	}
}
/* common_to_contact
-------------------------------------------------------------------*/
body.article .to_contact {
	padding: 100px 0;
	position: relative;
	background: url(../img/products/contact_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
}
body.article .to_contact .to_col {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}
body.article .to_contact .to_col .to_item {
	background: #fff;
	padding: 40px;
	width: 48%;
	text-align: center;
}
body.article .to_contact .to_col .to_item p {
	line-height: 1.75;
}
body.article .to_contact .to_col .to_item p strong {
	display: block;
	margin-bottom: 0.75em;
	font-size: 1.25rem;
}
body.article .to_contact .to_col .to_item .system_col {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin-top: 2.5em;
}
body.article .to_contact .to_col .to_item .system_col .system_item {
	width: 100%;
}
body.article .to_contact .to_col .to_item .system_col .system_item a {
	border: 1px solid #0c2960;
	padding: 20px;
	text-align: center;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	font-weight: 500;
	transition: .5s transform;
	position:relative;
}
body.article .to_contact .to_col .to_item .system_col .system_item a{
	width:100%;
}
body.article .to_contact .to_col .to_item .system_col .system_item a span {
	display: block;
	font-size: 1.75rem;
	font-weight: bold;
	color: #0c2960;
}
body.article .to_contact .to_col .to_item .system_col .system_item a:before{
	content: "";
	width: 16px;
	height: 16px;
	position: absolute;
	background: url(../img/common/arrow_blue.png);
	background-size: contain;
	right: 30px;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
	transition: .5s transform;
}
body.article .to_contact .to_col .to_item .system_col .system_item a:hover {
	transform: translateY(5px);
}
body.article .to_contact .base_btn a {
	margin: 2em auto 0;
	max-width: 100%;
	height: 95px;
	font-size: 1.125rem;
}
body.article .to_contact .to_col .to_item .system_col .system_item a:hover:before{
	transform: translateX(5px);
}
.page_st_brands .site_title02 img{
	padding: 5px 0;
}
@media screen and (max-width:768px) {
	body.article .to_contact {
		padding: 50px 0;
		background: url(../img/products/contact_bg_sp.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: top right;
	}
	body.article .to_contact .to_col .to_item {
		padding: 10px;
		width: 100%;
	}
	body.article .to_contact .to_col .to_item+.to_item {
		margin-top: 1em;
	}
	body.article .to_contact .to_col .to_item .system_col {
		flex-wrap: wrap;
		margin-top: 1em;
	}
	body.article .to_contact .to_col .to_item .system_col .system_item {
		width: 100%;
	}
	body.article .to_contact .to_col .to_item .system_col .system_item+.system_item {
		margin-top: 1em;
	}
	body.article .to_contact .to_col .to_item p strong {
		font-size: 1.14rem;
	}
	body.article .to_contact .base_btn a {
		margin: 1em auto 0;
		height: 65px;
		font-size: 1rem;
		padding-right: 2em
	}
	body.article .to_contact .to_col .to_item .system_col .system_item a {
		padding: 10px;
	}
	body.article .to_contact .to_col .to_item .system_col .system_item a:hover {
		transform: translateY(0);
	}
	body.article .to_contact .to_col .to_item .system_col .system_item a {
		font-size:1rem;
	}
	body.article .to_contact .to_col .to_item .system_col .system_item a span {
		font-size: 1.47rem;
	}
	.page_st_brands .site_title02 img{
		padding: 3px 0;
	}
}
