@charset "utf-8";
/*
@import url(//fonts.googleapis.com/css?family=Open+Sans:400,400italic,600,600italic,700,700italic);
*/
/*@import url(//fonts.googleapis.com/css?family=Roboto+Slab:400,100,300,700);*/
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP&subset=japanese');
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Lexend:wght@100..900&display=swap');


:root {
	interpolate-size: allow-keywords;
	/*font-feature-settings: "palt";*/
}
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

/*要素のフォントサイズやマージン・パディングをリセットしています*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

/*行の高さをフォントサイズと同じにしています*/
body {
	line-height:1;
}

/*新規追加要素のデフォルトはすべてインライン要素になっているので、section要素などをブロック要素へ変更しています*/
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
	display:block;
}

/*nav要素内ulのマーカー（行頭記号）を表示しないようにしています*/
/*nav ul {
  list-style:none;
  }*/
ol, ul {
	list-style: none;
}

/*引用符の表示が出ないようにしています*/
blockquote, q {
	quotes:none;
}

/*blockquote要素、q要素の前後にコンテンツを追加しないように指定しています*/
blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}

/*a要素のフォントサイズなどをリセットしフォントの縦方向の揃え位置を親要素のベースラインに揃えるようにしています*/
a {
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

/* ins要素のデフォルトをセットし、色を変える場合はここで変更できるようにしています */
ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

/* mark要素のデフォルトをセットし、色やフォントスタイルを変える場合はここで変更できるようにしています
また、mark要素とは、文書内の検索結果で該当するフレーズをハイライトして、目立たせる際に使用するようです。*/
mark {
	background-color:#ff9;
	color:#000;
	font-style:italic;
	font-weight:bold;
}

/*テキストに打ち消し線が付くようにしています*/
del {
	text-decoration: line-through;
}

/*IEではデフォルトで点線を下線表示する設定ではないので、下線がつくようにしています
また、マウスオーバー時にヘルプカーソルの表示が出るようにしています*/
abbr[title], dfn[title] {
	border-bottom:1px dotted;
	cursor:help;
}

/*隣接するセルのボーダーを重ねて表示し、間隔を0に指定しています*/
table {
	border-collapse:collapse;
	border-spacing:0;
}

/*水平罫線のデフォルトである立体的な罫線を見えなくしています*/
hr {
	display:block;
	height:1px;
	border:0;  
	border-top:1px solid #cccccc;
	margin:1em 0;
	padding:0;
}

/*縦方向の揃え位置を中央揃えに指定しています*/
input, select {
	vertical-align:middle;
}

/*画像を縦に並べた時に余白が出ないように*/
img {
	vertical-align: top;
	font-size: 0;
	line-height: 0;
}

/*box-sizingを全ブラウザに対応*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}


.clearfix:after{
	content: "."; 
	display: block; 
	height: 0; 
	font-size:0;
	clear: both; 
	visibility:hidden;
}


.none{
	display:none;
}





/* 表示フォントの設定 */
body{
	font-family:  "Noto Sans JP" ,"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Roboto" , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "Osaka", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:14px;
}
@media all and (-ms-high-contrast:none){
    body {
		font-family: "Roboto" , "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		/* ヒラギノと游ゴシックがずれるので、IE11は除外する */
	}
}
.mincho{
	font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}
.eng{
	font-family: "Lexend", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
}
.inter {
	font-family: "Inter", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
}
.roboto{
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
}


a:hover{
	opacity:0.9;
}
/*
@media(max-width:1024px){
	a:hover{
		opacity:1;
	}
}
*/


.pc{
	display:inline-block;
}
.pc2{
	display:inline-block;
}
.sp{
	display:none;	/* 1024以下で */
}
.sp2{
	display:none;	/* 750以下で */
}

@media(max-width:1024px){
	.pc{
		display: none;
	}
	
	.sp{
		display: inline-block;
	}
}


@media(max-width:750px){
	.pc2{
		display:none;
	}
	.sp2{
		display:inline-block;
	}
}




/* ************************************************** */
body{
	background-color:#ffffff;
	color:#333333;
	overflow-x: hidden;
	overflow-y: auto;
}
#main{
	overflow-x: hidden;
}



/* ************************************************** */
header{
	width:100vw;
	position: fixed;
	height:140px;
	transition: height .4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	z-index: 100;
	background-color:#fff;
}
header.scroll{
	height: 60px;
}

header .wrapper{
	max-width:1400px;
	margin-inline: auto;
	position: relative;
}

header .menu{
	position:relative;
	padding:0 34px;
	width: 100%;
}
header .menu .inq{
	position:absolute;
	top:14px;
	right: 34px;
	padding:0;
	transition: top .4s cubic-bezier(.25,.46,.45,.94);
}
header.scroll .menu .inq{
	top: -50px;
}
header .menu .inq a{
	border:1px solid #043BB2;
	border-radius:18px;
	padding:10px 23px;
	text-decoration: none;
	color:#043BB2;
	font-size:14px;
	line-height: 1;
	display: inline-block;
}
header .menu .inq a:hover{
	border:1px solid #FF57AA;
	background-color:#FF57AA;
	color:#fff;
}
header .menu .inq span{

	font-weight: bold;
	padding-left: 30px;
	background-image:url("/assets/images/common/icon_mail_b.png");
	background-size:19px auto;
	background-repeat: no-repeat;
	background-position: left center;
}
header .menu .inq a:hover span{
	background-image:url("/assets/images/common/icon_mail_w.png");
}
header .menu .logo{
	width:510px;
	height: auto;
	display: inline-block;
	vertical-align: middle;
	padding:37px 0 0 0;
	transition: padding .4s cubic-bezier(.25,.46,.45,.94);
}
header.scroll .menu .logo{
	padding:6px 0;
}
header .menu .logo a{
	text-decoration: none;
	display: inline-block;
	vertical-align: middle;
}
header .menu .logo img{
	width:320px;
	height: auto;
	display: inline-block;
	vertical-align: middle;
	transition: width .4s cubic-bezier(.25,.46,.45,.94);
}
header.scroll .menu .logo img{
	width:240px;
}

header .menu .logo span{
	font-size:11px;
	color:#666666;
	display: inline-block;
	vertical-align: sub;
	margin:0 0 0 11px;
}
header .menu nav{
	display: inline-block;
	vertical-align: middle;
	text-align: right;
	width: calc(100% - 510px);
	padding:39px 0 0 0;
	transition: padding .4s cubic-bezier(.25,.46,.45,.94);
}
header.scroll .menu nav{
	padding:0
}
header .menu nav ul{
	padding:20px 0;

}

header .menu nav ul li{
	display: inline-block;
	vertical-align: top;
	margin:0 20px 0 0 ;
}
header .menu nav ul li:last-of-type{
	margin:0;
}
header .menu nav ul li a{
	font-size:14px;
	text-decoration: none;
	color:#333333;
}
header .menu nav ul li a i{
	background-image:url("/assets/images/common/icon_ext_b.png");
	background-repeat: no-repeat;
	background-position:top right;
	background-size:9.5px auto;
	display: inline-block;
	width:10px;
	height: 14px;
	margin:0 0 0 6px;
}
header .menu nav ul li a:hover{
	color:#043BB2;
}

header .spmenu{
	display: none;
}



@media(max-width:1380px){


	header,
	header.scroll,
	header.open
	{
		height:52px;
		transition: none;
	}

	header .menu .inq{
		display: none;
		transition: none;
	}
	header .menu nav{
		display: none;
		transition: none;
	}



	header .spmenu{
		display: block;
		position:absolute;
		top:16px;
		right:20px;
	}
	header .spmenu a{
		display: block;
		width:20px;
		height: 20px;
		cursor: pointer;
	}
	header .spmenu span{
		display: block;
		width:100%;
		height: 1px;
		background-color:#0260CB;
		position:absolute;
		transition: all 0.5s;
	}
	header .spmenu span:nth-child(1){
		top:5px;
	}
	header .spmenu span:nth-child(2){
		top:9px;
	}
	header .spmenu span:nth-child(3){
		top:13px;
	}

	header.open .spmenu span:nth-child(1){
		transform: rotate(45deg);
		top: 10px;
		left: 0;
	}

	header.open .spmenu span:nth-child(2){
		opacity: 0;
	}

	header.open .spmenu span:nth-child(3){
		transform: rotate(-45deg);
		top: 10px;
		left: 0;
	}



	header .wrapper{
		overflow-y: scroll;
		overflow-x:hidden;

	}
	header.open .wrapper{
		height:100dvh;
		background-color:#043BB2;
	}
	header .menu{
		padding:0;
		position:relative;
	}

	header .menu .logo{
		padding: 10px 0 10px 30px;
		background-color:#fff;
		width:100vw;
	}
	header.scroll .menu .logo{
		padding: 10px 0 10px 30px;
	}
	header .menu .logo img{
		width:160px;
	}
	header.scroll .menu .logo img{
		width:160px;
	}
	header .menu .logo span{
		font-size:11px;
		margin: 0 0 0 12px;
	}

	
	header.scroll .menu nav,
	header .menu nav
	{
		background-color:#043BB2;

		width:100dvw;
		text-align:left;
		padding:50px 40px 215px 40px;

	}
	header .menu nav ul {
		margin:0;
		padding:0;
	}
	header .menu nav ul li{
		margin:0;
		display: block;
		border-bottom:1px solid #fff;
	}
	header .menu nav ul li:hover{
		border-bottom:1px solid #FF57AA;
	}
	header .menu nav ul li a{
		font-size:16px;
		padding:15px 0;
		color:#fff;
		display: block;
		position:relative;

	}
	header .menu nav ul li:hover a{
		color:#FF57AA;
	}
	header .menu nav ul li a:after{
		content:"";
		display: block;
		width:18px;
		height:18px;
		border-radius:9px;
		background-color:#fff;
		background-image:url("/assets/images/common/icon_arror_b.png");
		background-repeat: no-repeat;
		background-position:center;
		background-size:4px auto;
		position:absolute;
		top:15px;
		right:10px;
	}
	header .menu nav ul li a:hover:after{
		background-image:url("/assets/images/common/icon_arror_w.png");
		background-color:#FF57AA;
	}

	header .menu .inq{
		transition: opacity .4s cubic-bezier(.25,.46,.45,.94);
		opacity:0;
	}

	header.open .menu .inq.fixed,
	header.scroll .menu .inq.fixed
	header .menu .inq.fixed
	{
		top:inherit;
		right:inherit;
		bottom:135px;
		left:40px;
		display: block;
		padding:0;
		width:calc(100% - 80px);
		text-align: center;
		opacity:1;

	}
	header .menu .inq a{
		border: 1px solid #fff;
		border-radius: 25px;
		padding: 0;
		width: 100%;
		display: block;
		overflow: hidden;
		background-color:#fff;
	}

	header .menu .inq span{
		font-size:12;
		padding:16px 0 16px 29px;;
		background-image:url("/assets/images/common/icon_mail_b.png");
		background-repeat: no-repeat;
		background-size:22px auto;
		background-position:left center;
		display: inline-block;
		color:#043BB2;

	}
	header .menu .inq a:hover span{
		color:#fff;
	}



}



@media(max-width:750px){

	header,
	header.scroll,
	header.open
	{
		height:14vw;	/*105*/
		transition: none;
	}

	header .menu .inq{
		display: none;
		transition: none;
	}
	header .menu nav{
		display: none;
		transition: none;
	}




	header .spmenu{
		display: block;
		position:absolute;
		top:4.4vw;	/*33*/
		right:5.33333333vw;	/*40*/
	}
	header .spmenu a{
		display: block;
		width:5.33333333vw;	/*40*/
		height: 5.33333333vw;	/*40*/
		cursor: pointer;
	}
	header .spmenu span{
		display: block;
		width:100%;
		height: 0.266666667vw;	/*2*/
		background-color:#0260CB;
		position:absolute;
		transition: all 0.5s;
	}
	header .spmenu span:nth-child(1){
		top:1.46666667vw;	/*11*/
	}
	header .spmenu span:nth-child(2){
		top:2.53333333vw;	/*19*/
	}
	header .spmenu span:nth-child(3){
		top:3.6vw;	/*27*/
	}

	header.open .spmenu span:nth-child(1){
		transform: rotate(45deg);
		top: 2.66666667vw;	/*20*/
		left: 0;
	}

	header.open .spmenu span:nth-child(2){
		opacity: 0;
	}

	header.open .spmenu span:nth-child(3){
		transform: rotate(-45deg);
		top: 2.66666667vw;	/*20*/
		left: 0;
	}

	header .wrapper{
		overflow-y: scroll;

	}
	header.open .wrapper{
		height:100dvh;
		background-color:#043BB2;
	}
	header .menu{
		padding:0;
		position:relative;
	}

	header .menu .logo{
		padding: 2.66666667vw 0 2.66666667vw 4vw;	/*20 0 20 30*/
		background-color:#fff;
		width:100vw;
		line-height: 1.6vw;	/*12*/
	}
	header.scroll .menu .logo{
		padding: 2.66666667vw 0 2.66666667vw 4vw ;	/*20 0 20 30*/
	}
	header .menu .logo img{
		width:42.66666667vw;	/*320*/
	}
	header.scroll .menu .logo img{
		width:42.66666667vw;	/*320*/
	}
	header .menu .logo span{
		font-size:1.6vw;	/*12*/
		margin: 0 0 0 1.6vw;	/*12*/
		line-height: 1.6vw;	/*12*/
		vertical-align: baseline;
	}

	
	header.scroll .menu nav,
	header .menu nav
	{
		background-color:#043BB2;

		width:100dvw;
		text-align:left;
		padding:13.33333333vw 10.66666667vw 57.33333333vw 10.66666667vw;	/*100 80 430 80*/

	}
	header .menu nav ul {
		margin:0;
		padding:0;
	}
	header .menu nav ul li{
		margin:0;
		display: block;
		border-bottom:0.133333333vw solid #fff;	/*1*/
	}
	header .menu nav ul li:hover{
		border-bottom:0.133333333vw solid #AC46AC;	/*1*/
	}
	header .menu nav ul li a{
		font-size:4.266666667vw;	/*32*/
		padding:4vw 0;	/*30*/
		color:#fff;
		display: block;
		position:relative;
	}
	header .menu nav ul li a:after{
		content:"";
		display: block;
		width:4.8vw;	/*36*/
		height:4.8vw;	/*36*/
		border-radius:2.4vw;	/*18*/
		background-color:#fff;
		background-image:url("/assets/images/common/icon_arror_b.png");
		background-repeat: no-repeat;
		background-position:center;
		background-size:1.066666667vw auto;	/*8*/
		position:absolute;
		top:4vw;	/*30*/
		right:2.66666667vw;	/*20*/
	}

	header .menu .inq{
		transition: opacity .4s cubic-bezier(.25,.46,.45,.94);
		opacity:0;
	}

	header.open .menu .inq.fixed,
	header.scroll .menu .inq.fixed
	header .menu .inq.fixed
	{
		top:inherit;
		right:inherit;
		bottom:36vw;	/*270*/
		left:10.66666667vw;	/*80*/
		display: block;
		padding:0;
		width:calc(100% - 21.33333333vw);	/*160*/
		text-align: center;
		opacity:1;

	}
	header .menu .inq a{
		border: 0.133333333vw solid #fff;	/*1*/
		border-radius: 6.66666667vw;	/*50*/
		padding: 0;
		width: 100%;
		display: block;
		overflow: hidden;
		background-color:#fff;
	}
	header .menu .inq span{
		font-size:3.2vw;	/*24*/
		padding:5.066666667vw 0 5.066666667vw 7.733333333vw;	/*38 0 38 58*/
		background-image:url("/assets/images/common/icon_mail_b.png");
		background-repeat: no-repeat;
		background-size:5.866666667vw auto;	/*44*/
		background-position:left center;
		display: inline-block;
		color:#043BB2;

	}

}





/* ************************************************** */
#contact{
	position:relative;
	width: 100%;
	padding:60px 0;
	text-align: center;
	background-image:url("/assets/images/common/inq_bg_r.png");	
	background-repeat: no-repeat;
	background-size:cover;

}
#contact:before{
	position:absolute;
	top:0;
	left: 0;
	content:"";
	display: block;
	width:100%;
	height: 100%;
	opacity:1;
	background-image:url("/assets/images/common/inq_bg_b.png");
	background-repeat: no-repeat;
	background-size:cover;
	transition:opacity 0.3s;
	z-index: 1;
}
#contact:hover:before{
	opacity:0;
}
#contact:hover{

}

#contact .copy{
	font-size:20px;
	line-height: 32px;
	color:#fff;
	margin:0 auto 20px auto;
	z-index: 1;
	position: relative;
}
#contact .emphasis{
	font-size:28px;
	font-weight: bold;
	color:#FBD33F;
	margin:0 auto 40px auto;
	position: relative;
	z-index: 1;
}
#contact a{
	display: inline-block;
	text-decoration: none;
	color:#043BB2;
	font-size:20px;
	font-weight: bold;
	padding:32px 90px;
	background-color:#fff;
	border-radius:10px;
	position:relative;
	z-index: 1;
	transition: 0.3s;

}
#contact:hover a{
	color:#FF57AA;
}
#contact:hover a:hover{
	opacity: 1;
}
#contact a span{
	background-image:url("/assets/images/common/icon_mail_b.png");
	background-repeat: no-repeat;
	background-size: 32px auto;
	background-position: left center;
	padding:2px 0 2px 54px;
	display: inline-block;
	vertical-align: middle;
}
#contact:hover a span{
	background-image:url("/assets/images/common/icon_mail_r.png");
}

#contact a i{
	width:28px;
	height: 28px;
	border-radius:14px;
	background-color:#043BB2;
	background-image:url("/assets/images/common/icon_arror_w.png");
	background-size:6px auto;
	background-position: center;
	background-repeat: no-repeat;
	position:absolute;
	right:20px;
	top:30px;
	transition: 0.3s;
}
#contact:hover a i{
	background-color:#FF57AA;

}


@media(max-width:750px){
	#contact{
		padding:10.6666667vw;	/*80*/
	}
	#contact .copy{
		font-size:3.2vw;	/*24*/
		line-height: 5.33333333vw;	/*40*/
		margin: 0 auto 4.133333333vw auto;	/*31*/
	}
	#contact .emphasis{
		font-size: 3.73333333vw;	/*28*/
		margin: 0 auto 8.13333333vw auto;	/*61*/
	}
	#contact a{
		width:78.666666667vw;	/*590*/
		font-size: 3.73333333vw;	/*28*/
		padding: 6.66666667vw 0 6.6666667vw 14.26666667vw;	/*50 0 50 107*/
		text-align: left;
	}
	#contact a span{
		background-size: 4.26666667vw auto;	/*32*/
		padding:0 0 0 6.66666667vw;	/*50*/
	}
	#contact a i{
		width: 4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius:2.4vw;	/*18*/
		background-size: 1.06666667vw auto;	/*8*/
		top:6.66666667vw;	/*50*/
		right:4vw;	/*30*/
	}


}



/* ************************************************** */
footer{
	width:100%;
	background-color: #fff;
	position: relative;
}
footer:before{
	position:absolute;
	top:0;
	left:0;
	content:"";
	width:50%;
	height: 100%;;
	background-color:#EFF8FD;
	z-index: 0;
}
footer .inner{
	max-width:1000px;
	margin-inline:auto;
	position: relative;
	padding:100px 0 100px 0;
}
footer .inner:before{
	position:absolute;
	top:0;
	left:0;
	content:"";
	width:calc(100% - 208px);
	height: 100%;;
	background-color:#EFF8FD;
	border-radius:0 80px 0 0 ;
	z-index: 0;
}
footer .ft_left{
	display: inline-block;
	vertical-align: top;
	z-index: 1;
	position: relative;
	width:calc(100% - 208px);
}
footer .ft_left .logo{
	width:306px;
	margin:0 0 40px 0;
}
footer .ft_left .logo a{
	text-decoration: none;
}

footer .ft_left .logo img{
	width:100%;
	height: auto;
}

footer .ft_left .submenu{
	display: inline-block;
	vertical-align: top;
	margin:0 20px 0 0;
}
footer .ft_left .submenu p{
	font-size:16px;
	color:#333333;
	margin:0 0 20px 0;
	font-weight: bold;
}
footer .ft_left .submenu p a{
	color:#333333;
	text-decoration: none;
}
footer .ft_left .submenu p a:hover{
	color:#FF57AA;
	text-decoration: underline;
}
footer .ft_left .submenu span{
	font-size:14px;
	color:#333333;
	border-left:2px solid #043BB2;
	padding:0 0 0 6px;
	margin:0 0 20px 20px;
	display: inline-block;
	font-weight: bold;
}
footer .ft_left .submenu span a{
	text-decoration: none;
	color:#333333;
}
footer .ft_left .submenu ul{
	margin:0 0 0 20px;
	
}
footer .ft_left .submenu ul li{
	margin:0 0 20px 0;
	color:#333333;
}
footer .ft_left .submenu ul li a{
	text-decoration: none;
	color:#333333;
}
footer .ft_left .submenu ul li a:hover{
	color:#FF57AA;
	text-decoration: underline;
}

footer .ft_left .submenu2{
	display: inline-block;
	vertical-align: top;
	width:238px;
	margin:0 0 0 40px;
}
footer .ft_left .submenu2 p{
	font-size:12px;
	line-height: 18px;
	color:#333333;
	margin:0 0 12px 0;
	font-weight: bold;
}
footer .ft_left .submenu2 > p:nth-child(5){
	margin:20px 0 12px 0;
}


footer .ft_left .submenu2 a{
	text-decoration: none;
	display: inline-block;
	width:238px;
	height: auto;
	margin:0 0 12px 0;
}
footer .ft_left .submenu2 img{
	width:100%;
	height: auto;
}

footer .ft_right{
	z-index: 1;
	position: relative;
	display: inline-block;
	vertical-align: top;
	width:208px;
	padding:0 0 0 60px;
}
footer .ft_right .logo{
	width:137px;
	height: auto;
	margin:75px 0 40px 0;
}
footer .ft_right .logo a{
	text-decoration: none;
}
footer .ft_right .logo img{
	width:100%;
	height: auto;
}
footer .ft_right .sns{
	margin:0 0 60px 0;
}
footer .ft_right .sns li{
	margin:0 14px 0 0;
	display: inline-block;
	vertical-align: top;
}
footer .ft_right .sns li:last-of-type{
	margin:0;
}
footer .ft_right .sns li a{
	width:40px;
	display: inline-block;

}
footer .ft_right .sns li img{
	width:100%;
	height: auto;
}

footer .ft_right p{
	font-size:12px;
	font-weight: bold;
	margin:0 0 20px 0;
	color:#333333;
}
footer .ft_right p a{
	text-decoration: none;
	color:#333333;
}
footer .ft_right p a:hover{
	text-decoration: underline;
}

footer .ft_right .pmark{
	margin:67px 0 38px 0;
	width:63px;
	height: auto;
}
footer .ft_right .pmark a{
	width:100%;
	height: auto;
}
footer .ft_right .pmark img{
	width:100%;
	height: auto;
}

footer .ft_right .copyright{
	font-size:11px;
	color:#999999;
}


@media(max-width:1024px){
	footer .inner{
		max-width:100vw;
		padding: 100px 0 0 0;
	}
	footer .inner::before{
		width: 100vw;
		border-radius: 0;
	}
	footer .ft_left{
		width: 100%;
		padding:0 40px;
	}

	footer .ft_right{
		width:100%;
		padding:0 40px;
		background-color: #fff;
		position:relative;
	}
	footer .ft_right .sns{
		margin:0;
	}
	footer .ft_right p{
		position:absolute;
		right:40px;
		top:75px;
	}
	footer .ft_right > p:nth-child(4){
		top:120px;
	}
	footer .ft_right .pmark{
		position:absolute;
		right:40px;
		top:100px;
	}
	footer .ft_right .copyright{
		padding:88px 0;
		text-align: center;
	}

}


@media(max-width:800px){
	footer .ft_left .logo{
		margin-inline: auto;
	}
	footer .ft_left{
		text-align: center;
		padding: 0 0 40px 0;
	}
	footer .ft_left .submenu{
		text-align: left;
	}
	footer .ft_left .submenu2{
		display: block;
		margin:40px auto 0 auto;
		text-align: center;
	}
}


@media(max-width:750px){
	footer::before{
		display: none;
	}
	footer .inner{
		background-color: #EFF8FD;
		padding: 16vw 0 0 0;	/*120*/
	}
	footer .inner::before{
		display: none;
	}
	footer .ft_left{
		padding:0 10.66666667vw 13.33333333vw 10.66666667vw;	/*80 100 80*/
	}
	footer .ft_left .logo{
		width: 64.8vw;	/*486*/
		margin:0 0 8vw 0;	/*60*/
	}
	footer .ft_left .submenu{
		display: block;
		margin:0;
	}
	footer .ft_left .submenu p{
		font-size:3.2vw;	/*24*/
		margin: 0 0 4.13333333vw 0;	/*31*/

	}
	footer .ft_left .submenu span{
		font-size: 2.93333333vw;	/*22*/
		border-left: 0.53333333vw solid #043BB2;	/*4*/
		margin: 0 0 4.26666667vw 3.46666667vw;	/*32 26*/
	}
	footer .ft_left .submenu ul{
		margin: 0 0 0 3.46666667vw;	/*26*/
	}
	footer .ft_left .submenu ul li{
		margin: 0 0 4.8vw 0;	/*36*/
		font-size: 2.93333333vw;	/*22*/
	}
	footer .ft_left .submenu2{
		width:100%;
		margin: 11.466666667vw 0 0 0;	/*86*/
	}
	footer .ft_left .submenu2 .submenu2a{
		width:36.66666667vw;	/*275*/
		float:left;
	}
	footer .ft_left .submenu2 .submenu2b{
		width:36.66666667vw;	/*275*/
		float:right;
	}
	footer .ft_left .submenu2 p{
		font-size:2.66666667vw;	/*20*/
		line-height: 3.73333333vw;	/*28*/
		text-align: left;
		height: 11.2vw;	/*84*/
	}

	footer .ft_left .submenu2 a{
		width:36.66666667vw;	/*275*/
		margin: 0 0 1.33333333vw 0;	/*10*/
		display: block;
	}


	footer .ft_right{
		padding:13.33333333vw 10.66666667vw 11.73333333vw 13.33333333vw;	/*100 80 88 100*/
	}
	footer .ft_right .logo{
		width:26.66666667vw;	/*200*/
		margin: 0 0 10.266666667vw 0;	/*77*/
	}
	footer .ft_right .sns li{
		margin: 0 3.2vw 0 0;	/*24*/
	}
	footer .ft_right .sns li a{
		width:9.33333333vw;	/*70*/
	}
	footer .ft_right p{
		font-size:2.93333333vw;	/*22*/
		right: 10.66666667vw;	/*80*/
		top: 13.33333333vw;	/*100*/
	}
	footer .ft_right > p:nth-child(4){
		top: 24vw;	/*180*/
	}
	footer .ft_right .pmark{
		right: 10.66666667vw;	/*80*/
		top:34.66666667vw;	/*260*/
		width:13.33333333vw;	/*100*/
		margin:0;
	}
	footer .ft_right .copyright{
		padding:12.53333333vw 0 0 0;	/*94*/
		font-size:2.66666667vw;	/*20*/
	}

}


/* ************************************************** */

#top .keymain{
	width:100%;
	padding:214px 100px 0 100px;
	background-image:url("/assets/images/top/key.png");
	background-repeat: no-repeat;
	background-size:1204px auto;
	background-position:right -412px bottom 56px;
	min-height: 870px;
}
#top .keymain .maincopy{
	margin:0 0 50px 0;
}
#top .keymain .maincopy span{
	display: inline-block;
	font-size:36px;
	line-height: 52px;
	font-weight: bold;
	color:#fff;
	background-color:#043BB2;
	margin:0 0 6px 0;
	padding:0 12px;
}
#top .keymain .copy{
	padding:0 0 150px 0;
	font-size:22px;
	line-height: 44px;
	font-weight: bold;
	color:#333333;
}
#top .keymain .scroll{
	width:68px;
	height: auto;
	margin:0 auto 0 auto;
	position:relative;
}
#top .keymain .scroll img{
	width:100%;
	height: auto;
	position:absolute;
	top:0;
	left: 0;
}
#top .keymain .scroll img.scrollarrow{
    animation-name: bounce;
    animation-duration: 1s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    transform-origin: center bottom;
}
@keyframes bounce {
    0%   { transform:  translate(0%, -20%); } /* 初期状態 */
    30%  { transform:  translate(0%, 0%); } /* 潰れた反動で縦に伸び、その勢いでバウンド開始 */
    100% { transform:  translate(0%, -20%); } /* 初期状態に戻る */
}


@media(max-width:1200px){
	#top .keymain{
		background-size:86vw auto;	/*1204/1400*/
		background-position:right -412px bottom 56px;	/* -412/1400 56/1400 */
	}
}





/* ************************************************** */
#top .topics{
	margin:0 0 160px 190px;
	background-color:#043BB2;
	border-radius:80px 0 0 0 ;
	padding:50px 0;
}
#top .topics .left{
	display: inline-block;
	vertical-align: top;
	width:230px;
}
#top .topics .title{
	color:#FFFFFF;
	font-size:60px;
	line-height: 1;
	display: inline-block;
	margin:0 0 47px -96px;
	letter-spacing:12px;
}
#top .topics .title span{
	color:#043BB2;
}
#top .topics .title p{
	font-size:18px;
	text-align: right;
	margin: 10px 0 0 0;
	letter-spacing: 0;
}
#top .topics .more{
	padding:0;
	margin:0 0 0 55px;
}
#top .topics .more a{
	font-size:14px;
	color:#fff;
	display: inline-block;
	vertical-align: middle;
	text-decoration: none;
}
#top .topics .more a:hover{
	color:#FF9ECE;
}
#top .topics .more a i{
	display: inline-block;
	vertical-align: middle;
	width:28px;
	height: 28px;
	border-radius:14px;
	background-image:url("/assets/images/common/icon_arror_b.png");
	background-size:6px auto;
	background-position:center;
	background-repeat: no-repeat;
	background-color:#fff;
	margin:0 0 0 13px;
}
#top .topics .more a:hover i{
	background-color:#FF9ECE;
}

#top .topics .news1,
#top .topics ul{
	display: inline-block;
	vertical-align: top;
	width:calc(100% - 230px);
	padding:0 200px 0 0;
}
#top .topics ul li{
	border-bottom:1px solid #FFFFFF;
	padding:20px 0;
}
#top .topics ul li:last-of-type{
	border-bottom:none;
}
#top .topics ul li a{
	color:#fff;
	text-decoration: none;
}

#top .topics ul li div{
	font-size:12px;
	display: inline-block;
	vertical-align: middle;
	margin:0;
	width:110px;
}
#top .topics ul li p{
	font-size:14px;
	line-height: 20px;
	display: inline-block;
	vertical-align: middle;	
	width:calc(100% - 110px);
}
#top .topics ul li a:hover p{
	color:#FF9ECE;
}


@media(max-width:1200px){
	#top .topics ul{
		padding:0 40px 0 0;
	}

}



/* ************************************************** */
#top .vision{

	background: linear-gradient(45deg,#0d51b6 ,#bc69df,#e966ce,#fe55a8,#f0118e);
	border-radius:0 80px 0 0 ;
	margin:0;
}
#top .vision .inner{
	padding:100px 0;
	max-width:1000px;
	margin-inline: auto;
	position: relative;
}
#top .vision .title{
	width:510px;
	height: auto;
	position:absolute;
	top:-30px;
	left:-100px;
}
#top .vision .title img{
	width:100%;
	height: auto;
}
#top .vision .leadcopy{
	font-size:36px;
	line-height: 56px;
	font-weight: bold;
	color:#FFFFFF;
	margin:0 0 40px 0;
}
#top .vision .leadcopy span{
	background-color:#043BB2;
	display: inline-block;
	padding:0 10px;
}
#top .vision .copy{
	font-size:16px;
	line-height: 32px;
	color:#FFFFFF;	
	margin:0 0 40px 0;
}
#top .vision .fig{
	width:100%;
}
#top .vision .fig img{
	width:100%;
	height: auto;
	margin:0 0 10px 0;
}
#top .vision .fig p{
	font-size:12px;
	color:#fff;
	text-align: right;
}


@media(max-width:1200px){
	#top .vision .inner{
		padding: 100px 40px;
	}
	#top .vision .title{
		width: 36.429vw;	/*510/1400*/
		left: 0;
	}

}




/* ************************************************** */
#top .inq{
	padding:100px 0;
}
#top .inq .bnr{
	position:relative;
	background-image:url("/assets/images/top/inq_r.png");
	background-repeat: no-repeat;
	background-size:cover;
	background-position: center;
	max-width:1000px;
	border-radius:30px;
	margin-inline:auto;
	padding:60px 40px;
}
#top .inq .bnr:before{
	position:absolute;
	top:0;
	left: 0;
	content:"";
	display: block;
	width:100%;
	height: 100%;
	background-image:url("/assets/images/top/inq_b.png");
	background-repeat: no-repeat;
	background-size:cover;
	background-position: center;
	z-index: 1;
	opacity: 1;
	transition:opacity 0.3s;
	border-radius:30px;
}
#top .inq .bnr:hover:before {
	opacity:0;
}
#top .inq .bnr .copy{
	display: inline-block;
	vertical-align: middle;
	margin:0 100px 0 0;
	z-index: 1;
	position:relative;
}
#top .inq .bnr .copy p{
	font-size:20px;
	line-height: 32px;
	color:#FFFFFF;
	margin:0 0 20px 0;
	
}
#top .inq .bnr .copy .emphasis{
	font-size:28px;
	color:#FBD33F;
	font-weight: bold;
	display: inline-block;
	vertical-align: middle;
}
#top .inq .bnr a{
	display: inline-block;
	vertical-align: middle;
	font-size:20px;
	color:#043BB2;
	padding:34px;
	width:390px;
	text-decoration: none;
	background-color:#fff;
	border-radius:14px;
	padding:34px 20px;
	position:relative;
	text-align: center;
	z-index: 1;

}
#top .inq .bnr:hover a{
	color:#FF57AA;
	opacity: 1;
}
#top .inq .bnr a span{
	
}
#top .inq .bnr a i{
	display: inline-block;
	width:28px;
	height: 28px;
	border-radius:14px;
	background-color:#043BB2;
	background-image:url("/assets/images/common/icon_arror_w.png");
	background-size:6px auto;
	background-position:center;
	background-repeat: no-repeat;
	position: absolute;
	right: 20px;
	top: 30px;
}
#top .inq .bnr:hover a i{
	background-color:#FF57AA;
}


@media(max-width:1024px){
	#top .inq{
		padding:100px 40px;
	}
	#top .inq .bnr .copy{
		display: block;
		margin: 0 0 40px 0;
		text-align: center;
	}
	#top .inq .bnr a{
		display: block;
		margin-inline: auto;
	}

}






/* ************************************************** */
#top .keystlengths{
	background: linear-gradient(-45deg,#0d51b6 ,#bc69df,#e966ce,#fe55a8,#f0118e);
	border-radius:80px 0 0 0 ;
	margin:40px 0 0 0;
}
#top .keystlengths .inner{
	padding:100px 0;
	max-width:1200px;
	margin-inline: auto;
	position: relative;
}
#top .keystlengths .title{
	width:1174px;
	height: auto;
	position: absolute;
	top:-30px;
	left:0;
}
#top .keystlengths .title img{
	width:100%;
	height: auto;
}
#top .keystlengths .leadcopy{
	font-size:36px;
	line-height: 56px;
	font-weight: bold;
	color:#FFFFFF;
	margin:0 auto 40px auto;
	max-width:1000px;
}
#top .keystlengths .leadcopy span{
	background-color:#043BB2;
	display: inline-block;
	padding:0 10px;
}
#top .keystlengths .copy{
	font-size:18px;
	line-height: 32px;
	color:#FFFFFF;	
	margin:0 auto 130px auto;
	max-width:1000px;

}
#top .keystlengths .strongpoint{
	background-color:#fff;
	max-width:1200px;
	margin-inline: auto;
	padding:110px 40px 100px 40px;
	position:relative;
}
#top .keystlengths .strongpoint .title{
	position:static;
	top:inherit;
	left:inherit;
	font-size:32px;
	color:#fff;
	font-weight: bold;
	padding:17px 20px;
	background-color:#043BB2;
	border-radius:4px;
	display: inline-block;
	width: 370px;
	position:absolute;
	top:-33px;
	left:calc((100% / 2) - (370px / 2));
	text-align: center;
}
#top .keystlengths .strongpoint ul{
	margin:0 0 88px 0;
}
#top .keystlengths .strongpoint ul li{
	margin:0;
	padding:0 0 140px 0;
}
#top .keystlengths .strongpoint ul li:nth-child(2n-1){
	padding-right:526px;

}
#top .keystlengths .strongpoint ul li:nth-child(2n){
	padding-left:480px;
}
#top .keystlengths .strongpoint ul li:last-of-type{
	padding-bottom:0;
}
#top .keystlengths .strongpoint ul li:nth-child(1){
	background-image:url("/assets/images/top/strengths1.png");
	background-size:368px auto;
	background-position:right 100px top;
	background-repeat: no-repeat;
}
#top .keystlengths .strongpoint ul li:nth-child(2){
	background-image:url("/assets/images/top/strengths2.png");
	background-size:454px auto;
	background-position:left top;
	background-repeat: no-repeat;
}
#top .keystlengths .strongpoint ul li:nth-child(3){
	background-image:url("/assets/images/top/strengths3.png");
	background-size:370px auto;
	background-position:right 100px top;
	background-repeat: no-repeat;
}
#top .keystlengths .strongpoint ul li .name{
	padding:0 0 0 60px;
	margin:0 0 47px 0;
}
#top .keystlengths .strongpoint ul li .name span{
	font-size:140px;
	font-weight: 300;
	color:#043BB2;
	display: inline-block;
	vertical-align: middle;
	margin:0 64px 0 0;
}
#top .keystlengths .strongpoint ul li .name p{
	font-size:28px;
	line-height: 40px;
	color:#043BB2;
	font-weight: bold;
	display: inline-block;
	vertical-align: middle;
}
#top .keystlengths .strongpoint ul li .copy{
	font-size:16px;
	line-height: 32px;
	color:#333333;
	margin:16px 0 0 0;
	padding:0 0 0 60px;
}

#top .keystlengths .strongpoint .orchestration{
	background-color:#FF57AA;
	border-radius:10px;
	max-width:1000px;
	margin-inline: auto;
	padding:40px 40px 40px 308px;
	background-image:url("/assets/images/top/orchestration.png");
	background-size:280px auto;
	background-repeat: no-repeat;
	background-position:left center;
}
#top .keystlengths .strongpoint .orchestration .title{
	position:static;
	top:inherit;
	left:inherit;
	background-color:inherit;
	font-size:24px;
	line-height: 32px;
	font-weight:bold;
	width:auto;
	padding:0;
	margin:0 0 24px 0;
}
#top .keystlengths .strongpoint .orchestration .title span{
	background-color:#043BB2;
	display: inline-block;
	padding:0 6px;


}
#top .keystlengths .strongpoint .orchestration p{
	font-size:14px;
	line-height: 28px;
	color:#FFFFFF;
	margin:0 0 20px 0;
}
#top .keystlengths .strongpoint .orchestration p:last-of-type{
	margin:0;
}


@media(max-width:1399px){
	#top .keystlengths .title{
		left:0;
	}
}
@media(max-width:1200px){
	#top .keystlengths .title{
		width: 83.857vw;/*1174/1400*/
	}
	#top .keystlengths .inner{
		padding:100px 40px;
	}
}
@media(max-width:1024px){
	#top .keystlengths .strongpoint ul li:nth-child(2n-1) {
		padding-right: 200px;
	}
	#top .keystlengths .strongpoint ul li:nth-child(2n) {
		padding-left: 200px;
	}
	#top .keystlengths .strongpoint ul li:nth-child(1){
		background-size: 190px auto;
	}
	#top .keystlengths .strongpoint ul li:nth-child(2){
		background-size: 190px auto;
	}
	#top .keystlengths .strongpoint ul li:nth-child(3){
		background-size: 190px auto;
	}


	#top .keystlengths .strongpoint .orchestration{
		background-size: 200px auto;
		padding: 40px 40px 40px 40px;
	}
	#top .keystlengths .strongpoint .orchestration p{
		padding:0 0 0 200px;
	}
}






/* ************************************************** */
#top .service{
	background: linear-gradient(45deg,#0d51b6 ,#bc69df,#e966ce,#fe55a8,#f0118e);
	border-radius:0 80px 0 0 ;
	margin:0;
}
#top .service .inner{
	padding:100px 0;
	max-width:1000px;
	margin-inline: auto;
	position: relative;
}
#top .service .title{
	width:635px;
	height: auto;
	position:absolute;
	top:-30px;
	left:-100px;
}
#top .service .title img{
	width:100%;
	height: auto;
}
#top .service .leadcopy{
	font-size:36px;
	line-height: 56px;
	font-weight: bold;
	color:#FFFFFF;
	margin:0 0 40px 0;
}
#top .service .leadcopy span{
	background-color:#043BB2;
	display: inline-block;
	padding:0 10px;
}
#top .service .copy{
	font-size:20px;
	line-height: 36px;
	color:#FFFFFF;	
	margin:0 0 80px 0;
}

#top .service .service2{
	margin:0 0 40px 0;
}
#top .service .service2:last-of-type{
	margin:0;
}
#top .service .service2 .title{
	position:static;
	top:inherit;
	left:inherit;
	background-color:#fff;
	font-size:28px;
	font-weight: bold;
	display: inline-block;
	width: auto;
	color:#043BB2;
	margin:0 0 25px 0;
	padding:6px;
}
#top .service .service2 p{
	font-size:14px;
	line-height: 24px;
	color:#fff;
	margin:0 0 30px 0;
}
#top .service .service2 ul{
	border-top:1px solid #043BB2;
	padding:30px 0 0 0;
}
#top .service .service2 ul li{
	display: inline-block;
	vertical-align: top;
	margin:0 60px 30px 0;
}
#top .service .service2 ul li a{
	font-size:20px;
	color:#FFFFFF;
	text-decoration: none;
	line-height: 28px;
}

#top .service .service2 ul li a:after{
	content:"";
	display: block;
	width:0;
	height: 1px;
	background-color: #fff;
	transition: width .4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	margin: 4px 0 0 0;
}
#top .service .service2 ul li a:hover:after{
	width:100%;
}
#top .service .service2 ul li a i{
	width:28px;
	height:28px;
	border-radius:14px;
	background-color:#fff;
	background-image:url("/assets/images/common/icon_arror_b.png");
	background-size:6px auto;
	background-position:center;
	background-repeat: no-repeat;
	display: inline-block;
	vertical-align: middle;
	margin:0 0 0 20px;
}


@media(max-width:1200px){
	#top .service .title{
		width: 45.357vw;	/*635/1400*/
		left: 0;
	}

	#top .service .inner{
		padding:100px 40px;
	}


}






/* ************************************************** */
#top .search{
	padding:80px 100px;
	margin:40px 0 0 0;
	background-image:url("/assets/images/top/search_bg_top.png"),url("/assets/images/top/search_bg_bottom.png");
	background-repeat: no-repeat,no-repeat;
	background-position:left top,right bottom;
	background-size:788px auto,787px auto;
	background-color:#EFF8FD;
}
#top .search .title{
	font-size:36px;
	line-height: 56px;
	font-weight: bold;
	color:#043BB2;
	margin:0 auto 46px auto;
	text-align: center;
}
#top .search .title span{
	color:#fff;
	background-color:#043BB2;
	padding:0 6px;
}
#top .search .navi{
	margin:0 auto 40px auto;
	max-width:1200px;
	display: block;
}
#top .search .navi li{
	font-size:24px;
	line-height: 40px;
	font-weight: 500;
	padding:0 0 0 20px;
	margin:0 72px 0 0;
	display: inline-block;
	vertical-align: top;
}
#top .search .navi li.ordermade{
	border-left:4px solid #043BB2;
	color:#043BB2;
}
#top .search .navi li.callcenter{
	border-left:4px solid #AC46AC;
	color:#AC46AC;
}

#top .search .context{
	margin:0 auto 60px auto;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap:30px;
	max-width:1200px;
}
#top .search .context li{
	background-color:#FFFFFF;
	border-radius:10px;
	display: inline-block;
	vertical-align: top;

	max-width:380px;
	padding:24px 40px 18px 40px ;
	box-shadow:  14px 20px 24px rgba(0,0,0,.2);
	transition: 0.3s;
}
#top .search .context li:nth-child(3n){
	/*margin:0 0 30px 0;*/
}

#top .search .context li a{
	text-decoration: none;
}
#top .search .context li a:hover{
	opacity: 1;
}
#top .search .context li a .name{
	text-align: center;
	font-size:20px;
	font-weight: 500;
	line-height:26px;
	margin:0 0 20px 0;
	height:52px;
	align-content: center;

}
#top .search .context li a p{
	color:#333333;

	font-size:14px;
	line-height:28px;
	height:224px;

	margin:0 0 20px 0;

	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 8;
    overflow: hidden;

}
#top .search .context li a .link{
	font-size:14px;
	text-align: right;
}
#top .search .context li a .link i{
	width:28px;
	height: 28px;
	border-radius:14px;
	background-image:url("/assets/images/common/icon_arror_w.png");
	background-size:6px auto;
	background-repeat: no-repeat;
	background-position: center;
	display: inline-block;
	vertical-align: middle;
	margin:0 0 0 13px;
}
#top .search .context li.ordermade a .name{
	color:#043BB2;
}
#top .search .context li.callcenter a .name{
	color:#AC46AC;
}
#top .search .context li.ordermade a .link{
	color:#043BB2;
}
#top .search .context li.callcenter a .link{
	color:#AC46AC;
}
#top .search .context li.ordermade .link i{
	background-color:#043BB2;
}
#top .search .context li.callcenter .link i{
	background-color:#AC46AC;

}
#top .search .context li.ordermade:hover {
	background-color:#043BB2;
}
#top .search .context li.callcenter:hover{
	background-color:#AC46AC;
}
#top .search .context li.ordermade:hover  a .name,
#top .search .context li.callcenter:hover a .name,
#top .search .context li.ordermade:hover  a p,
#top .search .context li.callcenter:hover a p
{
	color:#fff;
}
#top .search .context li.ordermade:hover  a .link,
#top .search .context li.callcenter:hover a .link
{
	color:#fff;
}
#top .search .context li.ordermade:hover .link i,
#top .search .context li.callcenter:hover a .link i
{
	background-color:#fff;
}
#top .search .context li.ordermade:hover .link i{
	background-image:url("/assets/images/common/icon_arror_b.png");
}

#top .search .context li.callcenter:hover a .link i{
	background-image:url("/assets/images/common/icon_arror_v.png");
}



#top .search .contact{
	background-color:#043BB2;
	border-radius:20px;
	max-width:960px;
	margin-inline: auto;
	padding:30px 40px 40px 40px;
	background-image:url("/assets/images/top/search_inq.png");
	background-repeat: no-repeat;
	background-size:336px auto;
	background-position:top 22px left 92px;
}
#top .search .contact p{
	font-size:16px;
	line-height: 24px;
	color:#fff;
	margin:0 0 12px 0;

	padding-left:calc(100% / 2);
}
#top .search .contact .emphasis{
	font-size:20px;
	font-weight: bold;
	color:#FBD33F;
	margin:0 0 29px 0;
	padding-left:calc(100% / 2);
}
#top .search .contact ul{

}
#top .search .contact li.inq,
#top .search .contact li.dl
{
	padding:0;
	width:calc((100% - 20px)/ 2) ;
	background-color:#fff;
	border-radius:10px;
	display: inline-block;
	vertical-align: top;
	margin:0 20px 0 0;
	text-align: center;
	position:relative;
	transition:0.3s;
}
#top .search .contact li.inq:hover,
#top .search .contact li.dl:hover
{
	background-color:#FF57AA;

}

#top .search .contact li.dl{
	margin:0;
}
#top .search .contact li a{
	padding:30px 0;
	color:#043BB2;
	font-weight: bold;
	text-decoration: none;
	font-size:20px;
	line-height: 26px;
	display: inline-block;
	transition:0.3s;
}
#top .search .contact li:hover a{
	color:#fff;
}
#top .search .contact li span{
	padding:0 0 0 46px;
	height: 26px;
	display: inline-block;
}
#top .search .contact li.inq span{
	background-image:url("/assets/images/common/icon_mail_b.png");
	background-repeat: no-repeat;
	background-position:left center;
	background-size: auto 26px;
}
#top .search .contact li.inq:hover span{
	background-image:url("/assets/images/common/icon_mail_w.png");
}
#top .search .contact li.dl span{
	background-image:url("/assets/images/common/icon_dl_b.png");
	background-repeat: no-repeat;
	background-position:left center;
	background-size: auto 26px;

}
#top .search .contact li.dl:hover span{
	background-image:url("/assets/images/common/icon_dl_w.png");
}
#top .search .contact li i{
	width:28px;
	height: 28px;
	border-radius:14px;

	background-color:#043BB2;
	background-image:url("/assets/images/common/icon_arror_w.png");
	background-size:6px auto;
	background-repeat: no-repeat;
	background-position:center;
	position:absolute;
	top:30px;
	right:20px;
}

#top .search .contact li:hover i{
	background-color:#fff;
	background-image:url("/assets/images/common/icon_arror_r.png");
}



@media(max-width:1200px){
	#top .search .navi li{
		display:block;
		margin: 0 0 10px 0;
	}
	#top .search .context{
		grid-template-columns: 1fr 1fr;
	}
}

@media(max-width:1100px){
	#top .search .contact{
		background-size: 100px auto;
		background-position:top 40px left 40px;
	}
	#top .search .contact p{
		padding-left: 120px;
	}
	#top .search .contact .emphasis{
		padding-left: 120px;
	}
	#top .search .contact li.inq, 
	#top .search .contact li.dl
	{
		width: 100%;
		margin: 0;
	}
	#top .search .contact li.inq{
		margin: 0 0 20px 0;
	}
}








/* ************************************************** */
#top .partner{
	background-color:#A0BAC1;
	transition: 0.3s;
}
#top .partner:hover{
	background-color:#FF57AA;
}
#top .partner a{
	text-decoration: none;
	display: block;
}
#top .partner a:hover{
	opacity: 1;
}
#top .partner .inner{
	width:657px;
	height: 240px;
	margin-inline: auto;
	padding:0 0 0 393px;
	background-image:url("/assets/images/top/partner.png");
	background-size:393px auto;
	background-repeat: no-repeat;
	background-position:left center;
}
#top .partner p{
	font-size:24px;
	color:#fff;
	padding:63px 0 0 0;
	margin:0 0 55px 0;
}
#top .partner div{
	text-align: right;
}
#top .partner div span{
	font-size:14px;
	line-height: 28px;
	color:#fff;
}
#top .partner div i{
	width:28px;
	height: 28px;
	border-radius:14px;
	background-color:#fff;
	background-image:url("/assets/images/common/icon_arror_b.png");
	background-size:6px auto;
	background-repeat: no-repeat;
	background-position:center;
	display: inline-block;
	vertical-align: middle;
	margin:0 0 0 8px;
}







/* ************************************************** */
#top .casestudy{
	padding:160px 0;
}
#top .casestudy .inner{
	max-width:1200px;
	margin-inline: auto;
	text-align: center;
}
#top .casestudy .title{
	font-size:36px;
	line-height:40px;
	font-weight: bold;
	color:#043BB2;
	padding:0 20px;
	border-left:4px solid #043BB2;
	border-right:4px solid #043BB2;
	display: inline-block;
	margin:0 0 82px 0;
}

#top .casestudy ul{
	font-size:0;
	margin:0 auto 80px auto;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap:30px;
}
#top .casestudy ul li{
	/*margin:0 30px 0 0;*/
	max-width:380px;
	display: inline-block;
	vertical-align: top;
}
#top .casestudy ul li:last-of-type{
	/*margin:0;*/
}
#top .casestudy ul li a{
	display: block;
	text-decoration: none;
}
#top .casestudy ul li .fig{
	width:100%;
	height: 214px;

	margin:0 0 20px 0;
	overflow: hidden;
	border-radius:10px;
}
#top .casestudy ul li .fig img{
	height:auto;
	width:100%;
	object-fit: cover;
	transition: 0.3s;
}
#top .casestudy ul li:hover .fig img{
	transform: scale(1.2);
}
#top .casestudy ul li p{
	font-size:20px;
	line-height: 32px;
	color:#333333;
	text-align: left;
	padding:0 8px;
	margin:0 0 20px 0;

	height: 128px;
	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
}
#top .casestudy ul li:hover p{
	color:#FF57AA;
}
#top .casestudy ul li .sys{
	border-bottom:2px solid #043BB2;
	text-align: left;
	padding:0 0 10px 0;
}
#top .casestudy ul li:hover .sys{
	border-bottom:2px solid #FF57AA;
}
#top .casestudy ul li .sys img{
	width:auto;
	height:32px;
	display: inline-block;
	vertical-align: top;
	margin:0 10px 0 0;
}

#top .casestudy ul li .link{
	padding:11px 0 0 0;
	font-size:14px;
	color:#043BB2;
	text-align: right;
}
#top .casestudy ul li:hover .link{
	color:#FF57AA;
}
#top .casestudy ul li .link span{
	
}
#top .casestudy ul li .link i{
	width:20px;
	height: 20px;
	border-radius:10px;
	background-color:#043BB2;
	background-image:url("/assets/images/common/icon_arror_w.png");
	background-size:5px auto;
	background-repeat: no-repeat;
	background-position:center;
	display: inline-block;
	vertical-align: middle;
	margin:0 0 0 13px;
}
#top .casestudy ul li:hover .link i{
	background-color:#FF57AA;
}
#top .casestudy .more{
	display: inline-block;
	text-decoration: none;
	padding:20px;
	text-align: center;
	width:300px;
	border-radius:10px;
	background-color:#FFFFFF;
	box-shadow:  10px 10px 30px rgba(0,0,0,.2);
	font-size:16px;
	color:#043BB2;
	transition: 0.3s;
}
#top .casestudy .more:hover{
	background-color:#FF57AA;
	color:#fff;
}
#top .casestudy .more span{



}
#top .casestudy .more i{
	width:28px;
	height: 28px;
	border-radius:14px;
	background-color:#043BB2;
	background-image:url("/assets/images/common/icon_arror_w.png");
	background-size:5px auto;
	background-repeat: no-repeat;
	background-position:center;
	display: inline-block;
	vertical-align: middle;
	margin:0 0 0 22px;
	transition: 0.3s;
}
#top .casestudy .more:hover i{
	background-color:#fff;
	background-image:url("/assets/images/common/icon_arror_r.png");
}


@media(max-width:1200px){
	#top .casestudy .inner{
		padding:0 40px;
	}


}
@media(max-width:1024px){
	#top .casestudy ul{
		grid-template-columns: 1fr 1fr;
	}
}

/* ************************************************** */


@media(max-width:750px){
	#top .keymain{
		padding:67.2vw 5.33333333vw 16vw 5.33333333vw;	/*504 40 120 40*/
		background-size: 160.53333333vw auto;	/*1204*/
		background-position: right -67.6vw top 14.13333333vw;	/*-507 106*/
		min-height:100vh;
	}
	#top .keymain .maincopy{
		margin: 0 0 4.266666667vw 0;	/*32*/
	}
	#top .keymain .maincopy span{
		font-size: 6.4vw;	/*48*/
		line-height: 8vw;	/*60*/
		margin: 0 0 1.33333333vw 0;	/*10*/
		padding: 0 1.6vw;	/*12*/
	}
	#top .keymain .copy{
		font-size:4vw;	/*30*/
		line-height: 6.4vw;	/*48*/
		padding: 0 0 10.66666667vw 0;	/*80*/
	}
	#top .keymain .scroll{
		width:14.93333333vw;	/*112*/
	}



	#top .topics{
		margin: 0 0 20vw 11.2vw;	/*150 84*/
		border-radius: 10.66666667vw 0 0 0;	/*80*/
		position:relative;
		padding:6.66666667vw 0 0 0;	/*50*/
	}
	#top .topics .left{
		width: 100%;
		display: block;
	}
	#top .topics .title{
		font-size: 9.066666667vw;	/*68*/
		margin: 0 0 5.33333333vw -5.866666667vw;	/*40 -44*/
		letter-spacing: 0.8vw;	/*6*/
	}
	#top .topics .title span{
		display: inline;

	}
	#top .topics .title > span:nth-child(2){
		color:#fff;
	}
	#top .topics .title p{
		font-size:2.4vw;	/*18*/
		margin: 0 0 0 2.66666667vw;	/*20*/
		display: inline-block;
		vertical-align: inherit;
	}
	#top .topics .more{
		position:absolute;
		bottom:6.66666667vw;	/*50*/
		left: -2.13333333vw;	/*16*/
		font-size:2.93333333vw;	/*22*/
	}
	#top .topics .more a{
		font-size:2.93333333vw;	/*22*/
	}
	#top .topics .more a i{

		width: 4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius: 2.4vw;	/*18*/
		background-size: 1.066666667vw auto;	/*8*/
	}
	#top .topics .news1,
	#top .topics ul{
		width:100%;
		padding:0 10.66666667vw 16.8vw 12.8vw;	/*0 80 126 96*/
	}
	#top .topics ul li:last-of-type,
	#top .topics ul li{
		padding:3.2vw 0;	/*24*/
		border-bottom:0.133333333vw solid #2E7FDB;	/*1*/
	}
	#top .topics ul li div{
		display: block;
		font-size:2.93333333vw;	/*22*/
		margin:0 0 1.466666667vw 0;	/*11*/
		width:100%;
	}
	#top .topics ul li p{
		width:100%;
		font-size: 3.2vw;	/*24*/
		line-height: 4.266666667vw;	/*32*/
	}



	#top .vision{
		border-radius: 0 10.66666667vw 0 0;	/*80*/
	}
	#top .vision .inner{
		padding: 12.53333333vw 10.66666667vw 10.66666667vw 10.66666667vw;	/*94 80 80 80*/
	}
	#top .vision .title{
		width:54vw;	/*405*/
		top: -3.46666667vw;	/*-26*/
		left:5.33333333vw;	/*40*/
	}
	#top .vision .leadcopy{
		font-size: 5.866666667vw;	/*44*/
		line-height: 8.266666667vw;	/*62*/
		margin: 0 0 5.33333333vw 0;	/*40*/
		letter-spacing: -0.13333333vw;	/*-1*/
	}
	#top .vision .leadcopy span{
		padding: 0 2.133333333vw;	/*16*/
	}
	#top .vision .copy{
		font-size: 3.2vw;	/*24*/
		line-height: 5.33333333vw;	/*40*/
		margin: 0 0 5.33333333vw 0;	/*40*/
	}
	#top .vision .fig img{
		margin: 0 0 2.66666667vw 0;	/*20*/
	}
	#top .vision .fig p{
		text-align: left;
		font-size: 2.66666667vw;	/*20*/
		line-height: 4.266666667vw;	/*32*/
	}


	#top .inq{
		padding:10.66666667vw;	/*80*/
	}
	#top .inq .bnr{
		border-radius: 4vw;	/*30*/
		padding: 5.33333333vw ;	/*40*/
	}
	#top .inq .bnr:before{
		border-radius: 4vw;	/*30*/
	}
	#top .inq .bnr .copy{
		margin: 0 0 6.93333333vw 0;	/*52*/
	}
	#top .inq .bnr .copy p{
		font-size: 2.93333333vw;	/*22*/
		line-height: 4.8vw;	/*36*/
		margin: 0 0 1.6vw 0;	/*12*/
	}
	#top .inq .bnr .copy .emphasis{
		font-size: 4.266666667vw;	/*32*/
	}
	#top .inq .bnr a{
		width: 100%;
		border-radius: 1.33333333vw;	/*10*/
		font-size: 3.73333333vw;	/*28*/
		padding: 4vw 0;	/*30*/
	}
	#top .inq .bnr a span{
		background-image:url("/assets/images/common/icon_mail_b.png");
		background-position:left center;
		background-repeat: no-repeat;
		background-size:4.266666667vw auto;	/*32*/
		padding:0 0 0 6.66666667vw;	/*50*/
	}
	#top .inq .bnr a i{
		width: 4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius: 2.4vw;	/*18*/
		background-size: 1.066666667vw auto;	/*8*/
		right: 2.66666667vw;	/*20*/
  		top: 3.466666667vw;	/*26*/
	}


	#top .keystlengths{
		margin:6.66666667vw 0 0 0;	/*50*/
		border-radius: 10.66666667vw 0 0 0;	/*80*/
	}
	#top .keystlengths .inner{
		padding:24.8vw 5.33333333vw 10.66666667vw 5.33333333vw;	/*186 40 80 40*/
	}
	#top .keystlengths .title{
		width:90.13333333vw;	/*676*/
		top: -3.46666667vw;	/*-26*/
	 	left: 5.33333333vw;	/*40*/
	}
	#top .keystlengths .leadcopy{
		font-size: 5.866666667vw;	/*44*/
		line-height: 8.266666667vw;	/*62*/
		margin: 0 auto 5.33333333vw auto;	/*40*/
		padding:0 5.33333333vw;	/*40*/
	}
	#top .keystlengths .leadcopy span{
		padding: 0 2.133333333vw;	/*16*/
	}
	#top .keystlengths .copy{
		font-size: 3.2vw;	/*24*/
		line-height: 5.33333333vw;	/*40*/
		margin: 0 auto 10.66666667vw auto;	/*80*/
		padding:0 5.33333333vw;	/*40*/
	}
	#top .keystlengths .strongpoint{
		padding: 14.66666667vw 5.33333333vw 5.33333333vw 5.33333333vw;	/*110 40 40 40*/
		border-radius:2.66666667vw;	/*20*/
	}
	#top .keystlengths .strongpoint .title{
		font-size: 4.266666667vw;	/*32*/
		padding: 1.733333333vw 0;	/*13*/
		width: 47.46666667vw;	/*356*/
		border-radius: 0.533333333vw;	/*4*/
		text-align: center;
		top: -4vw;	/*-30*/
  		left: calc((100% / 2) - (47.46666667vw / 2));	/*356*/
	}
	#top .keystlengths .strongpoint ul{
		margin: 0;
	}
	#top .keystlengths .strongpoint ul li{
		padding:0 0 64vw 0;	/*480*/
	}
	#top .keystlengths .strongpoint ul li:nth-child(1){
		padding-right:0;
		background-size: 61.33333333vw auto;	/*460*/
		background-position: center bottom 10.66666667vw;	/*80*/
		padding:0 0 74.66666667vw 0;/*560*/
	}
	#top .keystlengths .strongpoint ul li:nth-child(2){
		padding-left: 0;
		background-size: 61.33333333vw auto;	/*460*/
		background-position: center bottom 10.66666667vw;	/*80*/
	}
	#top .keystlengths .strongpoint ul li:nth-child(3){
		padding-right:0;
		background-size: 61.33333333vw auto;	/*460*/
		background-position: center bottom 10.66666667vw;	/*80*/
	}
	#top .keystlengths .strongpoint ul li:last-of-type{
		padding:0 0 76vw 0;	/*570*/

	}
	#top .keystlengths .strongpoint ul li .name{
		margin: 0 0 5.6vw 0;	/*42*/
		padding:0;
		font-size:0;
	}
	#top .keystlengths .strongpoint ul li .name span{
		font-size: 18.66666667vw;	/*140*/
		margin: 0 2.133333333vw 0 0;	/*16*/
		width:12.266666667vw;	/*92*/
	}
	#top .keystlengths .strongpoint ul li .name p{
		font-size: 4.8vw;	/*36*/
		line-height: 6.4vw;	/*48*/
		width:64vw;	/*480*/
		letter-spacing:-0.266666667vw /*-2*/

	}
	#top .keystlengths .strongpoint ul li .copy{
		font-size: 3.2vw;	/*24*/
		line-height: 5.33333333vw;	/*40*/
		margin: 0;
		padding: 0;
	}
	#top .keystlengths .strongpoint .orchestration{
		border-radius: 2.66666667vw;	/*20*/
		background-image:url("/assets/images/top/orchestration_sp.png");
		background-size: 73.3333333vw auto;	/*550*/
		background-position:top left -3.466666667vw;	/*-26*/
		padding: 44.53333333vw 5.33333333vw 5.33333333vw 5.33333333vw;	/*334 40 40 40*/
	}
	#top .keystlengths .strongpoint .orchestration .title{
		font-size: 4.266666667vw;	/*32*/
		line-height: 6.4vw;	/*48*/
		margin: 0 0 4.266666667vw 0;	/*32*/
		text-align: left;
	}
	#top .keystlengths .strongpoint .orchestration .title span{
		padding: 0 0.8vw;	/*6*/
		margin:0 0 1.066666667vw 0;	/*8*/
	}
	#top .keystlengths .strongpoint .orchestration p{
		padding:0;
		font-size: 3.2vw;	/*24*/
  		line-height: 5.33333333vw;	/*40*/
	}


	#top .service{
		border-radius: 0 10.66666667vw 0 0;	/*80*/
		margin:6.66666667vw 0 0 0;	/*50*/
	}
	#top .service .inner{
		padding:12.53333333vw 10.66666667vw 5.33333333vw 10.66666667vw;	/*94 80 40 80*/
	}
	#top .service .title{
		width:66.53333333vw;	/*499*/
		top: -3.46666667vw;	/*-26*/
  		left: 5.33333333vw;	/*40*/
	}
	#top .service .leadcopy{
		font-size:5.866666667vw;	/*44*/
		line-height: 7.466666667vw;	/*56*/
		margin: 0 0 5.33333333vw 0;	/*40*/
	}
	#top .service .leadcopy span{
		padding: 0 1.33333333vw;	/*10*/
	}
	#top .service .copy{
		font-size: 3.2vw;	/*24*/
		line-height: 5.33333333vw;	/*40*/
		margin: 0 0 8vw 0;	/*60*/
	}
	#top .service .service2{
		margin: 0 0 4vw 0;	/*30*/
	}
	#top .service .service2 .title{
		font-size: 4.266666667vw;	/*32*/
		line-height: 5.33333333vw;	/*40*/
		margin:0 0 2.66666667vw 0;	/*20*/
		padding:0.8vw;	/*6*/
	}
	#top .service .service2 p{
		font-size: 3.2vw;	/*24*/
		line-height: 5.33333333vw;	/*40*/
		margin: 0 0 4vw 0;	/*30*/
	}
	#top .service .service2 ul{
		border-top: 0.133333333vw solid #FFFFFF;	/*1*/
		padding: 5.33333333vw 0 0 0;	/*40*/
	}
	#top .service .service2 ul li{
		margin: 0 4vw 5.33333333vw 0;	/*30 40*/

	}
	#top .service .service2 ul li a{
		font-size: 3.466666667vw;	/*26*/
		line-height: 4.266666667vw;	/*32*/
	}
	#top .service .service2 ul li a i{
		width: 4.266666667vw;	/*32*/
		height: 4.266666667vw;	/*32*/
		border-radius: 2.133333333vw;	/*16*/
		background-size:0.93333333vw auto;	/*7*/
		margin: 0 0 0 2.133333333vw;	/*16*/
	}
	#top .service .service2 ul li a:after{
		height: 0.13333333vw;	/*1*/
		margin: 0.53333333vw 0 0 0;/*4*/
	}



	#top .search{
		margin:0;
		padding: 10.66666667vw;	/*80*/
		background-size: 73.46666667vw auto,100vw auto;	/*551 750*/
	}
	#top .search .title{
		font-size: 5.866666667vw;	/*44*/
		line-height: 8.266666667vw;	/*62*/
		margin: 0 auto 8vw auto;	/*60*/
	}
	#top .search .title span{
		padding: 0 0.8vw;	/*6*/
	}
	#top .search .navi{
		display: none;
	}
	#top .search .navi li{

	}
	#top .search .navi li.ordermade{

	}
	#top .search .navi li.callcenter{

	}


	
	#top .search .context{
		grid-template-columns: 1fr;
		gap:5.33333333vw;	/*40*/
		margin: 0 auto 10.66666667vw auto;	/*80*/
	}
	#top .search .context li{
		max-width:inherit;
		padding: 6.66666667vw 5.33333333vw 4.255555557vw 5.33333333vw;	/*50 40 32 40*/
		box-shadow: 1.866666667vw 2.66666667vw 3.2vw rgba(0,0,0,.2);	/*14 20 24*/

	}
	#top .search .context li a .name{
		font-size:3.73333333vw;	/*28*/
		line-height: 5.33333333vw;	/*40*/
		height: 10.66666667vw;	/*80*/
		margin: 0 0 4.255555557vw 0;	/*32*/
	}

	#top .search .context li a p{
		font-size:3.2vw;	/*24*/
		line-height: 5.33333333vw;	/*40*/
		height:inherit;
		display:block;
		margin: 0 0 4.255555557vw 0;	/*32*/
	}
	#top .search .context li a .link{
		font-size: 2.93333333vw;	/*22*/
	}
	#top .search .context li a .link i{
		width: 4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius: 2.4vw;/*18*/
		background-size:  1.066666667vw auto;/*8*/
		margin: 0 0 0 1.33333333vw;/*10*/
	}

	#top .search .context li a .link i{
		width: 4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius: 2.4vw;	/*18*/
		background-size: 1.066666667vw auto;	/*8*/
	}

	#top .search .context > li:nth-child(1){
		margin-top:9.33333333vw;	/*70*/
		position:relative;
	}
	#top .search .context > li:nth-child(1):before{
		content:"オーダーメイドCRMシステム";
		color:#005FCC;
		font-size:3.466666667vw;	/*26*/
		font-weight: 500;
		border-left:0.533333333vw solid #005FCC;	/*4*/
		padding-left:2.66666667vw;	/*20*/
		position:absolute;
		top:-9.33333333vw;	/*-70*/
		left:0;


	}
	#top .search .context > li:nth-child(2){
		margin-top:20vw;	/*150*/
		position:relative;
	}
	#top .search .context > li:nth-child(2):before{
		content:"コールセンターシステム／業務改革支援";
		color:#AC46AC;
		font-size:3.466666667vw;	/*26*/
		font-weight: 500;
		border-left:0.533333333vw solid #AC46AC;	/*4*/
		padding-left:2.66666667vw;	/*20*/
		position:absolute;
		top:-9.33333333vw;	/*-70*/
		left:0;
	}


	#top .search .contact{
		background-size: 55.46666666vw auto;	/*416*/
		background-position: top 5.33333333vw center;/*40*/
		padding: 40.8vw 5.33333333vw 5.33333333vw 5.33333333vw;	/*306  40 40 40*/
		border-radius: 2.66666667vw;	/*20*/

	}
	#top .search .contact p{
		font-size: 2.93333333vw;	/*22*/
		line-height: 4.8vw;	/*36*/
		padding-left: 0;
		text-align: center;
		margin: 0 0 1.6vw 0;	/*12*/
	}
	#top .search .contact .emphasis{
		font-size: 4.266666667vw;	/*32*/
		margin: 0 0 5.33333333vw 0;	/*40*/
		padding-left: 0;
		text-align: center;
	}

	#top .search .contact li.inq{
		margin: 0 0 2.66666667vw 0;	/*20*/
	}
	#top .search .contact li.dl{
		padding:0 0 0 6vw;	/*45*/
		text-align: left;
	}

	#top .search .contact li a{
		font-size: 3.73333333vw;	/*28*/
		line-height: 4.266666667vw;	/*32*/
		padding: 3.73333333vw 0	/*28*/
	}
	#top .search .contact li span{

		height: 4.266666667vw;	/*32*/
		letter-spacing:-0.13333333vw;	/*1*/
	}
	#top .search .contact li.inq span{
		padding: 0 0 0 6.133333333vw;	/*46*/
		background-size: auto 3.2vw;	/*24*/
	}

	#top .search .contact li.dl span{
		background-size: auto 4.266666667vw;	/*32*/
		padding: 0 0 0 5.866666667vw;	/*44*/
	}
	#top .search .contact li i{
		width: 4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius: 2.4vw;	/*18*/
		background-size: 1.066666667vw auto;	/*8*/
		top: 3.46666667vw;	/*26*/
  		right: 2.66666667vw;	/*20*/
	}


	#top .partner{

	}
	#top .partner .inner{
		width:100%;
		height: auto;
		padding:8vw;	/*60*/
		background-size: 52.4vw auto;	/*393*/
		background-position: left 6.66666667vw bottom;	/*50*/

	}
	#top .partner p{
		font-size: 3.73333333vw;	/*28*/
		line-height: 4.8vw;	/*36*/
		width:80vw;	/*600*/
		padding: 0 0 0 50.13333333vw;	/*376*/
		text-align: left;
		margin: 0 0 6.4vw 0;	/*48*/
	}
	#top .partner div{
		width:80vw;	/*600*/
		padding: 0 0 0 50.13333333vw;	/*376*/
	}
	#top .partner div span{
		font-size: 2.93333333vw;	/*22*/
		line-height: 4.8vw;	/*36*/
		display: inline-block;
		vertical-align: middle;
	}
	#top .partner div i{
		width: 4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius: 2.4vw;	/*18*/
		background-size: 1.066666667vw auto;	/*8*/
		margin: 0 0 0 1.33333333vw;	/*10*/
	}


	#top .casestudy{
		padding: 20vw 0 21.33333333vw 0;	/*150 160*/
	}
	#top .casestudy .inner{
		padding: 0 10.66666667vw;	/*80*/
	}
	#top .casestudy .title{
		font-size:4.8vw;	/*36*/
		line-height: 1;
		padding: 0 3.2vw;	/*24*/
		border-left: 0.533333333vw solid #043BB2;	/*4*/
  		border-right: 0.533333333vw solid #043BB2;	/*4*/
		margin: 0 0 8.266666667vw 0;	/*62*/
	}
	#top .casestudy ul{
		grid-template-columns: 1fr;
		gap:8vw;	/*60*/
		margin: 0 auto 10.66666667vw auto;	/*80*/
	}
	#top .casestudy ul li{
		max-width:inherit;
	}
	#top .casestudy ul li .fig{
		height: 44.266666667vw;	/*332*/
		margin: 0 0 2.66666667vw 0;	/*20*/
		border-radius:1.33333333vw;	/*10*/
	}
	#top .casestudy ul li p{
		font-size: 3.466666667vw;	/*26*/
		line-height: 5.33333333vw;	/*40*/
		padding: 0;
		margin: 0 0 2.133333333vw 0;	/*16*/
		display: block;
		height:auto;
	}
	#top .casestudy ul li .sys{
		border-bottom: 0.266666667vw solid #043BB2;	/*2*/
		padding: 0 0 2.66666667vw 0;	/*20*/
	}
	#top .casestudy ul li .sys img{
		height: 6.13333333vw;	/*46*/
		margin: 0 2.66666667vw 0 0;	/*20*/
	}
	#top .casestudy ul li .link{
		padding: 2.66666667vw 0 0 0;	/*20*/
		font-size: 2.93333333vw;	/*22*/
	}
	#top .casestudy ul li .link span{

	}
	#top .casestudy ul li .link i{
		width: 4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius: 2.4vw;	/*18*/
		background-size: 1.066666667vw auto;	/*8*/
		margin: 0 0 0 1.33333333vw;	/*10*/
	}

	#top .casestudy .more{
		padding: 5.066666667vw 4vw;	/*38 30*/
		font-size: 3.2vw;	/*24*/
		border-radius: 1.33333333vw;	/*10*/
  		box-shadow: 1.33333333vw 1.33333333vw 4vw rgba(0,0,0,.2);	/*10 10 30*/
		width:64vw;	/*480*/
	}
	#top .casestudy .more span{

	}
	#top .casestudy .more i{
		width: 4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius: 2.4vw;	/*18*/
		background-size: 1.066666667vw auto;	/*8*/
		margin: 0 0 0 1.33333333vw;	/*10*/
	}


}



/* ************************************************** */
.subpage{
	padding:162px 0 100px 0;
}
.subpage .inner{
	width:100%;
	max-width:1000px;
	margin:auto;
}
.subpage a{
	text-decoration: none;
}

@media(max-width:1024px){
	.subpage{
		padding:162px 40px 100px 40px;
	}
}


@media(max-width:750px){
	.subpage{
		padding: 18.53333333vw 5.33333333vw 7.066666667vw 5.33333333vw;	/*139 40 53 40*/
	}

}



/* ************************************************** */
.contents .subkey{
	padding:162px 0 100px 0;
	background-image:url("/assets/images/common/sub_key.png");
	background-repeat: no-repeat;
	background-size:1000px auto;
	background-position:right -400px top 107px;
	min-height: 602px;
}
.contents .subkey .inner{
	max-width:1200px;
	margin-inline: auto;
}
.contents .subkey .lead{
	margin:0 0 40px 0;
}
.contents .subkey .lead img{
	width:auto;
	height:106px;
	margin:0 0 20px 0;
}
.contents .subkey .lead p{
	font-size:104px;
	line-height:1;
	font-weight: bold;
	color:#fff;
	-webkit-text-stroke: 2px #043BB2;
	text-stroke:2px #043BB2;
	font-family: "Inter", sans-serif;
}
.contents .subkey .lead span{
	font-size:36px;
	line-height: 1;
	font-weight: bold;
	color:#043BB2;
	display: block;
}
.contents .subkey p{
	font-size:16px;
	line-height: 32px;
	color:#333333;
	max-width:690px;
}
.contents .subkey p span{
	color:#999999;
}


@media(max-width:1200px){
	.contents .subkey{
		padding: 162px 40px 100px 40px;
		background-size: 71.429vw auto;/*1000/1400*/
	}
	.contents .subkey .lead img{
		height: 12.143vw;	/*170/1400*/
	}
}


@media(max-width:750px){
	.contents .subkey{
		padding: 18.53333333vw 5.33333333vw 7.066666667vw 5.33333333vw;	/*139 40 53 40*/
		background-size: 121.86666667vw auto;	/*914*/
		background-position: right -74.93333333vw bottom;/*-562*/
		background-image: url("/assets/images/common/sub_key_sp.png");
		min-height: 99.2vw;	/*744*/
	}
	.contents .subkey .lead{
		margin: 0 0 8.133333333vw 0;/*61*/
	}
	.contents .subkey .lead img{
		height:9.86666667vw;/*74*/
	}
	.contents .subkey .lead span{
		font-size: 4.266666667vw;/*32*/
		margin: 2.133333333vw 0 0 0;/*16*/
	}
	.contents .subkey p{
		font-size: 3.466666667vw;/*26*/
		line-height: 6.4vw;/*48*/
		width:59.73333333vw;	/*448*/
	}

}



/* ************************************************** */
#service .servicemenu{
	padding:100px 0 36px 0;
}
#service .servicemenu .inner{
	max-width:1000px;
	margin-inline: auto;
}
#service .servicemenu .title{
	font-size:28px;
	font-weight: bold;
	color:#fff;
	margin:0 0 145px 0;
}
#service .servicemenu .servicelist{
	
}
#service .servicemenu .servicelist li{
	background-size:520px auto;
	background-repeat: no-repeat;
}
#service .servicemenu .servicelist li:nth-child(2n-1){
	background-position:top right -26px;

}
#service .servicemenu .servicelist li:nth-child(2n){
	background-position:top left -26px;

}
#service .servicemenu .servicelist li .number{
	position:relative;
	margin:0 0 32px 0;
	display: inline-block;
}
#service .servicemenu .servicelist li:nth-child(2n-1) .number{
	margin-right:530px;
}
#service .servicemenu .servicelist li:nth-child(2n) .number{
	margin-left:530px;
}

#service .servicemenu .servicelist li .number img{
	width:auto;
	height: 170px;
	position:absolute;
	top:-104px;
	left:-100px;
	z-index: 0;
}
#service .servicemenu .servicelist li:nth-child(2n) .number img{
	right:-122px;
	left:inherit;
}
#service .servicemenu .servicelist li .number span{
	font-size:24px;
	font-weight: bold;
	display: block;
	z-index: 1;
	position: relative;
}
#service .servicemenu .servicelist li p{
	font-size:16px;
	line-height: 28px;
}
#service .servicemenu .servicelist li:nth-child(2n-1) p{
	margin-right:530px;
}
#service .servicemenu .servicelist li:nth-child(2n) p{
	margin-left:530px;
}
#service .servicemenu .servicelist li a{
	margin:0 0 124px 0;
	border-radius:10px;
	background-color:#043BB2;
	display: inline-block;
	width:195px;
	text-align: center;
	position:relative;
	transition: 0.3s;
	opacity: 0;
	visibility: hidden;
}
#service .servicemenu .servicelist li a.visible{
	visibility: visible;
	opacity:1;
	margin:30px 0 124px 0;
}
#service .service1.servicemenu .servicelist li a:hover{
	opacity: 0;
}
#service .servicemenu .servicelist li:nth-child(2n-1) a{
	margin-right:530px;
}
#service .servicemenu .servicelist li:nth-child(2n) a{
	margin-left:530px;
}
#service .servicemenu .servicelist li a span{
	font-size:14px;
	font-weight: bold;
	padding:15px 0;
	color:#fff;
	display: inline-block;
}
#service .servicemenu .servicelist li a i{
	position:absolute;
	top:11px;
	right:11px;
	width:22px;
	height: 22px;
	border-radius:11px;
	background-image:url("/assets/images/common/icon_arror_b.png");
	background-position:center;
	background-repeat: no-repeat;
	background-size:6px auto;
	background-color:#fff;
}




/* ************************************************** */
#service .service1{
	background: linear-gradient(45deg,#0d51b6 ,#bc69df,#e966ce,#fe55a8,#f0118e);
	border-radius:0 80px 0 0;
}


#service .service1.servicemenu .servicelist li:nth-child(1){
	background-image:url("/assets/images/service/dx_01.png");	
}
#service .service1.servicemenu .servicelist li:nth-child(2){
	background-image:url("/assets/images/service/dx_02.png");	
}
#service .service1.servicemenu .servicelist li:nth-child(3){
	background-image:url("/assets/images/service/dx_03.png");
}
#service .service1.servicemenu .servicelist li:nth-child(4){
	background-image:url("/assets/images/service/dx_04.png");
}
#service .service1.servicemenu .servicelist li:nth-child(5){
	background-image:url("/assets/images/service/dx_05.png");
}

#service .service2.servicemenu .servicelist li:nth-child(1){
	background-image:url("/assets/images/service/aws_01.png");
}
#service .service2.servicemenu .servicelist li:nth-child(2){
	background-image:url("/assets/images/service/aws_02.png");	
}
#service .service2.servicemenu .servicelist li:nth-child(3){
	background-image:url("/assets/images/service/aws_03.png");
}

#service .service1.servicemenu .servicelist li .number span{
	color:#fff;
}
#service .service1.servicemenu .servicelist li p{
	color:#fff;
}
#service .service1.servicemenu .servicelist li a{
	background-color:#fff;
}
#service .service1.servicemenu .servicelist li a span{
	color:#043BB2;
}
#service .service1.servicemenu .servicelist li a i{
	background-color:#043BB2;
	background-image:url("/assets/images/common/icon_arror_w.png");
}

#service .service2.servicemenu .servicelist li:nth-child(2n) a{
	margin-left:0;
}


#service .service2.servicemenu .title{
	color:#FF57AA;	
}
#service .service2.servicemenu .servicelist li .number span{
	color:#FF57AA;
}

#service .service1.servicemenu .servicelist li .bnr{
	margin:40px 0 164px 0;
	font-size:0;
}
#service .service1.servicemenu .servicelist li .bnr a{
	margin:0;
	background-color:#FFFFFF;
	visibility: visible;
	opacity: 1;
	width:320px;
	height: 116px;
	transition: 0.3s;
	display: inline-block;
	vertical-align: top;
	margin:0 20px 0 0;
	text-decoration: none;
	border-radius:10px;
}
#service .service1.servicemenu .servicelist li .bnr a:last-of-type{
	margin:0;
}
#service .service1.servicemenu .servicelist li .bnr a:hover{
	background-color:#FF57AA;
}
#service .service1.servicemenu .servicelist li .bnr a:hover span{
	color:#fff;
}

#service .service1.servicemenu .servicelist li .bnr a.inspirx{
	background-image:url("/assets/images/service/icon_inspirx.png");
	background-position:left 20px top 24px;
	background-repeat: no-repeat;
	background-size:163px auto;
}
#service .service1.servicemenu .servicelist li .bnr a.inspirx span{
	font-size:14px;
	font-weight: bold;
	color:#043BB2;
	transition: 0.3s;
	padding:75px 0 0 20px;
	display: block;
	text-align: left;
}
#service .service1.servicemenu .servicelist li .bnr a.inspirx:hover span{
	color:#FFFFFF;
}
#service .service1.servicemenu .servicelist li .bnr a.ixclouz{
	background-image:url("/assets/images/service/icon_ixclouz.png");
	background-position:left 3px top 10px;
	background-repeat: no-repeat;
	background-size:193px auto;
}
#service .service1.servicemenu .servicelist li .bnr a.ixclouz span{
	font-size:14px;
	font-weight: bold;
	color:#043BB2;
	transition: 0.3s;
	padding:75px 0 0 20px;
	display: block;
	text-align: left;
}
#service .service1.servicemenu .servicelist li .bnr a.ixclouz:hover span{
	color:#FFFFFF;
}
#service .service1.servicemenu .servicelist li .bnr a.connectrek{
	background-image:url("/assets/images/service/icon_connectrek.png");
	background-position:left 20px top 24px;
	background-repeat: no-repeat;
	background-size:215px auto;
}
#service .service1.servicemenu .servicelist li .bnr a.connectrek span{
	font-size:14px;
	font-weight: bold;
	color:#043BB2;
	transition: 0.3s;
	padding:75px 0 0 20px;
	display: block;
	text-align: left;
}
#service .service1.servicemenu .servicelist li .bnr a.connectrek:hover span{
	color:#FFFFFF;
}
#service .service1.servicemenu .servicelist li .bnr a.amazonconnect{
	background-image:url("/assets/images/service/icon_amazonconnect.png");
	background-position:left 20px top 20px;
	background-repeat: no-repeat;
	background-size:55px auto;
}
#service .service1.servicemenu .servicelist li .bnr a.amazonconnect span{
	font-size:14px;
	line-height: 24px;
	font-weight: bold;
	color:#043BB2;
	transition: 0.3s;
	padding:25px 0 0 90px;
	display: block;
	text-align: left;
}
#service .service1.servicemenu .servicelist li .bnr a.amazonconnect:hover span{
	color:#FFFFFF;
}
#service .service1.servicemenu .servicelist li .bnr a.awscalldirect{
	background-image:url("/assets/images/service/icon_awscalldirect.png");
	background-position:left 20px top 10px;
	background-repeat: no-repeat;
	background-size:88px auto;
}
#service .service1.servicemenu .servicelist li .bnr a.awscalldirect span{
	font-size:14px;
	line-height: 24px;
	font-weight: bold;
	color:#043BB2;
	transition: 0.3s;
	padding:16px 0 0 124px;
	display: block;
	text-align: left;
}
#service .service1.servicemenu .servicelist li .bnr a.awscalldirect:hover span{
	color:#FFFFFF;
}
#service .service1.servicemenu .servicelist li .bnr a i{
	position: absolute;
	top: inherit;
	bottom:10px;
	right: 10px;
	width: 22px;
	height: 22px;
	border-radius: 11px;
	background-image:url("/assets/images/common/icon_arror_w.png");
	background-position: center;
	background-repeat: no-repeat;
  	background-size: 6px auto;
	background-color:#043BB2;
	transition: 0.3s;
}
#service .service1.servicemenu .servicelist li .bnr a:hover i{
	background-image:url("/assets/images/common/icon_arror_r.png");
	background-color:#fff;
}


#service .servicelist li .awsmenu{
	margin:67px 0 0 0;
	overflow: hidden;
}

#service .servicelist li .awsmenu .title{
	margin:0 0 29px 0;
}
#service .servicelist li .awsmenu .title span{
	font-size:18px;
	font-weight: bold;
	color: #043BB2;
	display: inline-block;
	border-top:1px solid #043BB2;
	border-left:1px solid #043BB2;
	border-right:1px solid #043BB2;
	border-radius:10px 10px 0 0;
	padding:16px 0 4px 32px;
	position:relative;
	width:190px;
}
#service .servicelist li .awsmenu .title span:after{
	content:"";
	display: inline-block;
	position:absolute;
	bottom:0;
	left:189px;
	height:1px;
	width:100vw;
	background-color:#043BB2;
}
#service .servicelist li .awsmenu .menulist{
	display: grid;
	gap:20px 60px ;
	grid-template-columns: 1fr 1fr;
	border-bottom:1px solid #043BB2;
	padding:0 0 30px 0;
}

#service .servicelist li .awsmenu .menulist li{
	background-image:none !important;
}
#service .servicelist li .awsmenu .menulist li div{
	font-size:18px;
	color:#043BB2;
	margin:0 0 11px 0;
}
#service .servicelist li .awsmenu .menulist li p{
	margin-right:inherit;
	margin-left:inherit;
	font-size:16px;
	line-height: 28px;
	color:#333333;
}

#service .servicelist li .awsmenu .menulist li span{
	display: inline-block;
	margin:14px 0 0 0;
	font-size:16px;
	line-height: 28px;
	color:#333333;
}
#service .servicelist li .awsmenu .menulist li span i{
	font-style: normal;
	color: #043BB2;
}


#service .service1.servicemenu .servicelist li a:hover{
	opacity: 1;
	background-color:#043BB2;
}
#service .service1.servicemenu .servicelist li a:hover span{
	color:#fff;
}
#service .service1.servicemenu .servicelist li a:hover i{
	background-color:#fff;
	background-image:url("/assets/images/common/icon_arror_b.png");
}

#service .service2.servicemenu .servicelist li a:hover{
	opacity: 1;
	background-color:#FF57AA;
}
#service .service2.servicemenu .servicelist li a:hover span{
	color:#fff;
}
#service .service2.servicemenu .servicelist li a:hover i{
	background-color:#fff;
	background-image:url("/assets/images/common/icon_arror_r.png");
}


@media(max-width:1200px){
	#service .servicemenu .inner{
		max-width:100%;
		padding:0 40px;
	}
	#service .servicemenu .servicelist li .number img{
		left: 0;
	}
	#service .servicemenu .servicelist li:nth-child(2n) .number img{
		right: inherit;
		left: 0;
	}
	#service .servicemenu .servicelist li{
			background-size: 280px auto;
	}
	#service .servicemenu .servicelist li:nth-child(2n-1) .number{
		margin-right: 300px;
	}
	#service .servicemenu .servicelist li:nth-child(2n) .number {
		margin-left: 300px;
	}
	#service .servicemenu .servicelist li:nth-child(2n-1) p{
		margin-right: 300px;
	}
	#service .servicemenu .servicelist li:nth-child(2n) p{
		margin-left: 300px;
	}
	#service .servicemenu .servicelist li:nth-child(2n) a{
		margin-left: 300px;
	}
}


@media(max-width:1080px){
	#service .service1.servicemenu .servicelist li .bnr a{
		margin: 0 20px 20px 0;
	}
}


@media(max-width:960px){
	#service .servicelist li .awsmenu .menulist{
		grid-template-columns: 1fr;
	}



}



@media(max-width:750px){
	#service .servicemenu{
		padding: 13.33333333vw 10.66666667vw 0 10.66666667vw;	/*100 80 0 80*/
	}
	#service .service1{
		border-radius: 0 10.66666667vw 0 0;	/*80*/
	}
	#service .servicemenu .inner{
		padding: 0;
	}
	#service .servicemenu .title{
		font-size: 4.8vw;	/*36*/
		margin: 0 0 20.26666667vw 0;	/*152*/
	}
	#service .servicemenu .servicelist{

	}
	#service .servicemenu .servicelist li,
	#service .servicemenu .servicelist li:nth-child(2n-1),
	#service .servicemenu .servicelist li:nth-child(2n)
	{
		background-position:top 13.33333333vw center;	/*100*/
		background-size:88.266666667vw auto;	/*662*/
	}
	#service .service2.servicemenu .servicelist li:nth-child(1),
	#service .service2.servicemenu .servicelist li:nth-child(2),
	#service .service2.servicemenu .servicelist li:nth-child(3)
	{
		background-image:none;
	}



	#service .servicemenu .servicelist li .number,
	#service .servicemenu .servicelist li:nth-child(2n-1) .number,
	#service .servicemenu .servicelist li:nth-child(2n) .number{
		padding:0 0 0 10.66666667vw;	/*80*/
		margin-right:0;
		margin-left: 0;
		
	}
	#service .servicemenu .servicelist li .number img,
	#service .servicemenu .servicelist li:nth-child(2n-1) .number img,
	#service .servicemenu .servicelist li:nth-child(2n) .number img{
		height: 22.66666667vw;	/*170*/
		margin-left:-2.66666667vw;	/*-20*/
		margin-right:0;
		top: inherit;
		bottom: -5.6vw;	/*-42*/
	}
	
	#service .servicemenu .servicelist li .number span{
		font-size: 4.8vw;	/*36*/
	}
	#service .servicemenu .servicelist li p,
	#service .servicemenu .servicelist li:nth-child(2n-1) p,
	#service .servicemenu .servicelist li:nth-child(2n) p
	{
		margin-right:auto;
		margin-left: auto;
		font-size:3.466666667vw;	/*26*/
		line-height: 5.33333333vw;	/*40*/
		padding-top:53.33333333vw;	/*400*/
		width:72.53333333vw;	/*544*/

	}
	#service .service2.servicemenu .servicelist li p,
	#service .service2.servicemenu .servicelist li:nth-child(2n-1) p,
	#service .service2.servicemenu .servicelist li:nth-child(2n) p
	{
		padding-top:0;
		width:72.53333333vw;	/*544*/
	}

	#service .servicemenu .servicelist li a ,
	#service .servicemenu .servicelist li:nth-child(2n-1) a,
	#service .servicemenu .servicelist li:nth-child(2n) a
	{

		width:42.66666667vw;	/*320*/

		display: block;
		border-radius:2.66666667vw;	/*20*/
		margin:0 auto 8vw auto !important;	/*60*/

	}
	#service .servicemenu .servicelist li a.visible ,
	#service .servicemenu .servicelist li:nth-child(2n-1) a.visible,
	#service .servicemenu .servicelist li:nth-child(2n) a.visible
	{
		margin:8vw auto 20vw auto !important;	/*60 150*/
	}

	
	#service .servicemenu .servicelist li:last-of-type a{
		margin:0 auto 0 auto !important;
	}
	#service .service2.servicemenu .servicelist li a ,
	#service .service2.servicemenu .servicelist li:nth-child(2n-1) a,
	#service .service2.servicemenu .servicelist li:nth-child(2n) a
	{
		margin:0 auto 20vw auto !important;	/*150*/
	}
	#service .service2.servicemenu .servicelist li a.visible ,
	#service .service2.servicemenu .servicelist li:nth-child(2n-1) a.visible,
	#service .service2.servicemenu .servicelist li:nth-child(2n) a.visible
	{
		margin:8vw auto 22.13333333vw auto !important;	/*60 166*/
	}
	#service .service2.servicemenu .servicelist li:last-of-type a{
		margin:8vw auto 0 auto !important;	/*60*/
	}


	#service .servicemenu .servicelist li a span{
		font-size:2.66666667vw;	/*20*/
		padding:5.066666667vw 0;	/*38*/
	}
	#service .servicemenu .servicelist li a i{
		top: 4vw;	/*30*/
		right: 2.66666667vw;	/*20*/
		width: 4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius: 2.4vw;	/*18*/
		background-size: 1.066666667vw auto;	/*8*/
	}

	#service .service1.servicemenu .servicelist li .bnr{
		margin:8vw auto 20vw auto !important;	/*60 150*/
	}
	#service .service1.servicemenu .servicelist li .bnr a{
		margin:0 auto 4vw auto !important;	/*30*/
		width:72.53333333vw;	/*544*/
		height: 16vw;	/*120*/
		border-radius:2.66666667vw;	/*20*/
		display: block;
	}
	#service .service1.servicemenu .servicelist li .bnr a:last-of-type{
		margin:0 auto !important;
	}
	#service .service1.servicemenu .servicelist li .bnr a i{
		width:4.8vw;	/*36*/
		height: 4.8vw;	/*36*/
		border-radius:2.4vw;	/*18*/
		background-size:1.066666667vw auto;	/*8*/
		bottom:5.6vw;	/*42*/
		right:2.66666667vw;	/*20*/
	}
	#service .service1.servicemenu .servicelist li .bnr a.inspirx{
		background-position: left 4vw top 4.4vw;	/*30 33*/
		background-size: 32.13333333vw auto;	/*241*/
	}
	#service .service1.servicemenu .servicelist li .bnr a.inspirx span{
		padding:3.46666667vw 0 0 46.4vw;	/*26 348*/
		font-size:3.2vw;	/*24*/
		line-height: 4.266666667vw;	/*32*/
	}
	#service .service1.servicemenu .servicelist li .bnr a.ixclouz{
		background-position: left 0.533333333vw top 2.266666667vw;	/*4 17*/
		background-size: 38vw auto;	/*285*/
	}
	#service .service1.servicemenu .servicelist li .bnr a.ixclouz span{
		padding:3.46666667vw 0 0 46.4vw;	/*26 348*/
		font-size:3.2vw;	/*24*/
		line-height: 4.266666667vw;	/*32*/
	}
	#service .service1.servicemenu .servicelist li .bnr a.connectrek{
		background-position: left 2.66666667vw top 5.33333333vw;	/*20 40*/
		background-size: 33.6vw auto;	/*252*/
	}
	#service .service1.servicemenu .servicelist li .bnr a.connectrek span{
		padding:3.46666667vw 0 0 41.33333333vw;	/*26 310*/
		font-size:3.2vw;	/*24*/
		line-height: 4.266666667vw;	/*32*/
	}
	#service .service1.servicemenu .servicelist li .bnr a.amazonconnect{
		background-position: left 4vw top 3.066666667vw;	/*30 23*/
		background-size: 9.86666667vw auto;	/*74*/
	}
	#service .service1.servicemenu .servicelist li .bnr a.amazonconnect span{
		padding:3.46666667vw 0 0 20.8vw;	/*26 156*/
		font-size:3.2vw;	/*24*/
		line-height: 4.266666667vw;	/*32*/
	}
	#service .service1.servicemenu .servicelist li .bnr a.awscalldirect{
		background-position: left 2.66666667vw top 1.2vw;	/**20 9*/
		background-size: 14.93333333vw auto;	/*112*/
	}
	#service .service1.servicemenu .servicelist li .bnr a.awscalldirect span{
		padding:1.33333333vw 0 0 20.8vw;	/*10 156*/
		font-size:3.2vw;	/*24*/
		line-height: 4.266666667vw;	/*32*/
	}


	#service .servicelist li .awsmenu{
		margin: 5.33333333vw 0 0 0;	/*40*/
	}

	#service .servicelist li .awsmenu:before{
		content:"";
		width:100%;
		height:56vw;	/*420*/
		background-position:top  center;
		background-size:88.26666667vw auto;	/*662*/
		background-repeat: no-repeat;
		display: block;
	}
	#service .servicelist li:nth-child(1) .awsmenu:before{
		background-image:url("/assets/images/service/aws_01.png");
	}
	#service .servicelist li:nth-child(2) .awsmenu:before{
		background-image:url("/assets/images/service/aws_02.png");
	}
	#service .servicelist li:nth-child(3) .awsmenu:before{
		background-image:url("/assets/images/service/aws_03.png");
	}


	#service .servicelist li .awsmenu .title{
		margin: 0 0 8vw 0;	/*60*/
	}
	#service .servicelist li .awsmenu .title span{
		font-size: 3.733333333vw;	/*28*/
		border-top: 0.266666667vw solid #043BB2;	/*2*/
		border-left: 0.266666667vw solid #043BB2;	/*2*/
		border-right: 0.266666667vw solid #043BB2;	/*2*/
		border-radius: 2.66666667vw 2.66666667vw 0 0;	/*20 20*/
		padding: 3.2vw 0 1.6vw 7.2vw;	/*24 12 54*/
		width: 40.53333333vw;	/*304*/
	}
	#service .servicelist li .awsmenu .title span::after{
		left: 40.26666667vw;	/*302*/
		height: 0.266666667vw;	/*2*/
	}

	#service .servicelist li .awsmenu .menulist{
		gap: 8vw;	/*60*/
		padding:0 0 8vw 0;	/*60*/
		border-bottom:0.266666667vw solid #043BB2;	/*2*/
	}
	#service .servicelist li .awsmenu .menulist li{
		width:72.53333333vw;	/*544*/
		margin:0 auto;
	}
	#service .servicelist li .awsmenu .menulist li div{
		font-size:4.266666667vw;	/*32*/
		line-height: 5.33333333vw;	/*40*/
		margin: 0 0 4.266666667vw 1.5em;	/*32*/
		text-indent:-1.5em
	}
	#service .servicelist li .awsmenu .menulist li p{
		font-size:3.466666667vw;	/*26*/
		line-height: 5.33333333vw;	/*40*/
	}
	#service .servicelist li .awsmenu .menulist li span{

		margin: 4.26666667vw 0 0 0;	/*32*/
		font-size:3.466666667vw;	/*26*/
		line-height: 5.33333333vw;	/*40*/

	}


}



/* ************************************************** */
#casestudy .caselist{

}
#casestudy .caselist .searchmenu{
	background-color:#EFF8FD;
	padding:40px 184px 30px 184px;
	margin-inline: auto;
}
#casestudy .caselist .searchmenu .category{
	
}
#casestudy .caselist .searchmenu .category .title{
	font-size:20px;
	font-weight: bold;
	color:#043BB2;
	margin:0 0 10px 0;
}
#casestudy .caselist .searchmenu .category ul{
	margin:0 0 10px 0;
}
#casestudy .caselist .searchmenu .category ul li{
	display: inline-block;
	vertical-align: top;
	margin:0 10px 10px 0;
	border-radius:10px;
	box-shadow: 0 3px 6px rgba(0,0,0,.1);
	cursor: pointer;
}
#casestudy .caselist .searchmenu .category ul li a{
	text-decoration: none;
}
#casestudy .caselist .searchmenu .category ul li span{
	font-size:14px;
	color:#043BB2;
	font-weight: bold;
	padding:15px;
	border-radius:10px;
	background-color:#fff;
	display: inline-block;
}
#casestudy .caselist .searchmenu .category ul li.active span,
#casestudy .caselist .searchmenu .category ul li:hover span{
	background-color:#FF57AA;
	color:#fff;
}


#casestudy .caselist .result{
	max-width:1200px;
	padding:60px 0 100px 0;
	margin-inline: auto;
}
#casestudy .caselist .result ul{
	font-size:0;
	display: grid;
	gap:60px 30px ;
	grid-template-columns: 1fr 1fr 1fr;
}
#casestudy .caselist .result ul li{
	display: inline-block;
	vertical-align: top;
	/*margin:0 30px 60px 0;*/
	/*width:380px;*/
}
#casestudy .caselist .result ul li:nth-child(3n){
	/*margin:0 0 60px 0;*/
}
#casestudy .caselist .result ul li a{
	text-decoration: none;
}
#casestudy .caselist .result ul li .fig{
	width:100%;
	height:214px;
	margin:0 0 21px 0;
	border-radius:10px;
	overflow: hidden;
}
#casestudy .caselist .result ul li .fig img{
	width:100%;
	height:214px;
	object-fit: cover;
	transition: 0.3s;
}
#casestudy .caselist .result ul li:hover .fig img{
	transform: scale(1.2);
}
#casestudy .caselist .result ul li .name{
	font-size:20px;
	line-height: 32px;
	color:#333333;
	margin:0 0 20px 0;

	height: 64px;

	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
#casestudy .caselist .result ul li:hover .name{
	color:#FF57AA;
}
#casestudy .caselist .result ul li .corp{
	font-size:16px;
	line-height: 32px;
	color:#333333;
	margin:0 0 10px 0;

	height:32px;

	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}
#casestudy .caselist .result ul li:hover .corp{
	color:#FF57AA;
}
#casestudy .caselist .result ul li .desc{
	font-size:16px;
	line-height: 26px;
	color:#333333;
	margin:0 0 30px 0;

	height:78px;

	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;

}
#casestudy .caselist .result ul li:hover .desc{
	color:#FF57AA;
}

#casestudy .caselist .result ul li .category{
	margin:0 0 14px 0;
}
#casestudy .caselist .result ul li .category span{
	font-size:13px;
	display: inline-block;
	vertical-align: top;
	padding:13px 10px;
	border-radius:10px;
	background-color:#fff;
	margin:0 6px 6px 0;
	box-shadow: 0px 3px 6px rgba(0,0,0,.1); 
	color:#043BB2;
}
#casestudy .caselist .result ul li .sol{
	padding:0 0 10px 0;
	margin:0 0 10px 0;
	border-bottom:1px solid #999;
}
#casestudy .caselist .result ul li .sol img{
	height:32px;
	width: auto;
	margin:0 10px 0 0;
	display: inline-block;
	vertical-align: top;
}
#casestudy .caselist .result ul li .link{
	display: block;
	text-align: right;
}
#casestudy .caselist .result ul li .link span{
	font-size:14px;
	line-height: 21px;
	color:#043BB2;
	display: inline-block;
	vertical-align: middle;
}
#casestudy .caselist .result ul li .link i{
	width:21px;
	height:21px;
	border-radius:10.5px;
	background-color:#043BB2;
	background-image:url("/assets/images/common/icon_arror_w.png");
	background-repeat: no-repeat;
	background-position:center;
	background-size:5px auto;
	display: inline-block;
	vertical-align: middle;
	margin:0 0 0 13px;
}


@media(max-width:1200px){
	#casestudy .caselist .result{
		padding: 60px 40px 100px 40px;
	}

}


@media(max-width:1024px){
	#casestudy .caselist .result ul{
		grid-template-columns: 1fr 1fr;
	}



}



@media(max-width:750px){

	#casestudy .caselist .searchmenu{
		padding:8vw 5.33333333vw 0.8vw 5.33333333vw;	/*60 40 6 40*/
		font-size:0;
	}
	#casestudy .caselist .searchmenu .category{

	}
	#casestudy .caselist .searchmenu .category .title{
		font-size: 3.733333333vw;	/*28*/
		margin: 0 0 2.8vw 0;	/*21*/
	}
	#casestudy .caselist .searchmenu .category ul{
		margin: 0 0 4.8vw 0;	/*24*/
	}
	#casestudy .caselist .searchmenu .category ul li{
		margin: 0 1.866666667vw 2.133333333vw 0;	/*14 16*/
		border-radius: 2.66666667vw;	/*20*/
		box-shadow: 0 0.4vw 0.8vw rgba(0,0,0,.1);	/*3 6 */
	}
	#casestudy .caselist .searchmenu .category ul li span{
		font-size: 3.466666667vw;	/*26*/
		padding: 2.66666667vw;	/*20*/
  		border-radius: 2.66666667vw;	/*20*/
	}

	#casestudy .caselist .result{
		padding: 8vw 10.66666667vw 21.33333333vw 10.66666667vw;	/*60 80 160 80*/
	}
	#casestudy .caselist .result ul{
		grid-template-columns: 1fr;
		gap:8vw;	/*60*/
	}
	#casestudy .caselist .result ul li{

	}
	#casestudy .caselist .result ul li .fig{
		height:44.266666667vw;	/*332*/
		border-radius:2.66666667vw;	/*20*/
		margin: 0 0 2.66666667vw 0;	/*20*/
		border-radius:1.33333333vw;	/*10*/
	}
	#casestudy .caselist .result ul li .fig img{
		height: auto;
	}
	#casestudy .caselist .result ul li .name{
		font-size: 4.266666667vw;	/*32*/
		line-height: 6.4vw;	/*48*/
		height:auto;
		display:block;
	}
	#casestudy .caselist .result ul li .corp{
		font-size: 3.733333333vw;	/*28*/
		line-height: 5.866666667vw;	/*44*/
		margin: 0 0 4vw 0;	/*30*/
  		height: auto;
		display:block;;
	}
	#casestudy .caselist .result ul li .desc{
		font-size: 3.466666667vw;	/*26*/
		line-height: 5.33333333vw;	/*40*/
		margin: 0 0 4vw 0;	/*30*/
		height: auto;
		display: block;
	}
	#casestudy .caselist .result ul li .category{
		margin: 0 0 4vw 0;	/*30*/
	}
	#casestudy .caselist .result ul li .category span{
		font-size: 3.2vw;	/*24*/
		padding: 3.066666667vw 2.66666667vw;	/*23 20*/
		border-radius: 2.66666667vw;	/*20*/
		margin: 0 1.33333333vw 1.33333333vw 0;	/*10 10*/
		box-shadow: 0 0.4vw 0.8vw rgba(0,0,0,.1);	/*3 6*/
	}
	#casestudy .caselist .result ul li .sol{
		padding: 0 0 2.66666667vw 0;	/*20*/
		margin: 0 0 2.66666667vw 0;	/*20*/
		border-bottom: 0.266666667vw solid #999;	/*2*/
	}
	#casestudy .caselist .result ul li .sol img{
		height: 6.13333333vw;	/*46*/
		width: auto;
		margin: 0 2.4vw 0 0;	/*18*/
	}
	#casestudy .caselist .result ul li .link{
		font-size: 3.2vw;	/*24*/
		line-height: 6.4vw;	/*48*/
	}
	#casestudy .caselist .result ul li .link span{
		font-size: 3.2vw;	/*24*/
		line-height: 6.4vw;	/*48*/
	}
	#casestudy .caselist .result ul li .link i{
		width: 6.4vw;	/*48*/
		height: 6.4vw;	/*48*/
		border-radius: 3.2vw;	/*24*/
		background-size: 1.33333333vw auto;	/*10*/
		margin: 0 0 0 2.13333333vw;	/*16*/
	}

}




/* ************************************************** */
#partner .partnerlist{
	
}
#partner .partnerlist ul{
	max-width:1200px;

	display: grid;
	grid-template-columns:  1fr 1fr 1fr;
	gap:18px 30px;
	margin:0 auto 160px auto;
}
#partner .partnerlist ul li{
	display: block;
}
#partner .partnerlist ul li a{
	text-decoration: none;
}
#partner .partnerlist ul li .fig{
	width:100%;
	/*height: 214px;*/
	border:1px solid #CCCCCC;
	position:relative;
	margin:0 0 10px 0;
	transition: 0.3s;
}
#partner .partnerlist ul li:hover .fig{
	border:1px solid #FF57AA;
}
#partner .partnerlist ul li .fig:before{
	content:"";
	width:10px;
	height: 10px;
	background-image:url("/assets/images/common/icon_ext_b.png");
	background-position:center;
	background-repeat: no-repeat;
	background-size:10px auto;
	display: block;
	position:absolute;
	top:10px;
	right: 10px;
}
#partner .partnerlist ul li:hover .fig:before{
	background-image:url("/assets/images/common/icon_ext_r.png");
}

#partner .partnerlist ul li .fig img{
	width:100%;
	height: auto;
	object-fit: contain;
}
#partner .partnerlist ul li .fig i{
	position:absolute;
	bottom:10px;
	right: 10px;
	width:21px;
	height: 21px;
	border-radius:10.5px;
	background-color:#043BB2;
	background-image:url("/assets/images/common/icon_arror_w.png");
	background-repeat: no-repeat;
	background-position:center;
	background-size:5px auto;
	transition: 0.3s;
}
#partner .partnerlist ul li:hover .fig i{
	background-color:#FF57AA;
}

#partner .partnerlist ul li .name{
	font-size:16px;
	line-height: 22px;
	color:#333333;
	
	height:44px;

	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
#partner .partnerlist ul li:hover .name{
	color:#FF57AA;
}


@media(max-width:1200px){
	#partner .partnerlist ul{
		padding:0 40px;
	}
}

@media(max-width:1024px){
	#partner .partnerlist ul{
		grid-template-columns:  1fr 1fr;
	}
}



@media(max-width:750px){
	#partner .partnerlist ul{
		padding: 0 10.66666667vw;	/*80*/
		grid-template-columns: 1fr;
		gap: 10.66666667vw;	/*80*/
		margin: 0 auto 20.53333333vw auto;	/*154*/
	}
	#partner .partnerlist ul li .fig{
		margin: 0 0 2.66666667vw 0;	/*20*/
		border: 0.266666667vw solid #CCCCCC;	/*2*/
	}
	#partner .partnerlist ul li:hover .fig{
		border: 0.266666667vw solid #FF57AA;	/*2*/
	}
	#partner .partnerlist ul li .fig::before{
		width: 3.466666667vw;	/*26*/
  		height: 3.466666667vw;	/*26*/
		background-size: 3.466666667vw auto;	/*26*/
		top: 2.66666667vw;	/*20*/
		right: 2.66666667vw;	/*20*/
	}
	#partner .partnerlist ul li .fig img{

	}
	#partner .partnerlist ul li .fig i{
		bottom: 2.66666667vw;	/*20*/
		right: 2.66666667vw;	/*20*/
		width: 6.4vw;	/*48*/
		height: 6.4vw;	/*48*/
		border-radius: 3.2vw;	/*24/*/
		background-size: 1.33333333vw auto;	/*10*/
	}
	#partner .partnerlist ul li .name{
		font-size: 3.733333333vw;	/*28*/
		line-height: 5.33333333vw;	/*40*/
		height:auto;
		display: block;
	}

}





/* ************************************************** */

#resource .resourcelist{
	margin:-32px 0 0 0;
}
#resource .resourcelist ul{
	max-width:1000px;

	display: grid;
	grid-template-columns:  1fr 1fr;
	gap:28px 40px;
	margin:0 auto 160px auto;
}
#resource .resourcelist ul li{
	
}
#resource .resourcelist ul li a{
	text-decoration: none;	
}
#resource .resourcelist ul li a:hover{
	opacity: 1;
}
#resource .resourcelist ul li .fig{
	position: relative;
	width:100%;
	/*height:270px;*/
	margin:0 0 28px 0;
	background-color:#043BB2;
	overflow: hidden;
	transition: 0.3s;

}
#resource .resourcelist ul li:hover .fig{
	background-color:#FF57AA;
}
#resource .resourcelist ul li .fig img{
	width:100%;
	height: auto;
	object-fit: cover;
	transition: 0.3s;
	
}
#resource .resourcelist ul li:hover .fig img{
	transform: scale(1.2);
}
#resource .resourcelist ul li a.ext .fig:before{
	content:"";
	width:10px;
	height: 10px;
	background-image:url("/assets/images/common/icon_ext_w.png");
	background-position:center;
	background-repeat: no-repeat;
	background-size:10px auto;
	display: block;
	position:absolute;
	top:10px;
	right: 10px;
}
#resource .resourcelist ul li .name{
	margin:0 0 17px 0;
}
#resource .resourcelist ul li .name span{
	font-size:24px;
	color:#333333;
	display: inline-block;
	vertical-align: middle;
}
#resource .resourcelist ul li .name i{
	width:21px;
	height: 21px;
	border-radius:10.5px;
	background-color:#043BB2;
	background-image:url("/assets/images/common/icon_arror_w.png");
	background-repeat: no-repeat;
	background-position:center;
	background-size:5px auto;

	display: inline-block;
	vertical-align: middle;
	margin:0 0 0 15px;
}
#resource .resourcelist ul li:hover .name i{
	background-color:#FF57AA;
}
#resource .resourcelist ul li .desc{
	font-size:16px;
	line-height: 28px;
	color:#333333;
}
#resource .resourcelist ul li .desc span{
	font-size:13px;
	line-height: 28px;
	color:#999999;
	display: inline-block;
}



@media(max-width:1200px){
	#resource .resourcelist ul{
		padding:0 40px;
	}

}
@media(max-width:1024px){
	#resource .resourcelist ul li .name span{
		font-size:20px;
	}
}


@media(max-width:750px){
	#resource .resourcelist{
		margin:0;
	}
	#resource .resourcelist ul{
		padding: 0 10.66666667;	/*80*/
		grid-template-columns: 1fr;
		gap:8vw;	/*60*/
		margin: 0 auto 21.33333333vw auto;	/*160*/
	}
	#resource .resourcelist ul li .fig{
		margin: 0 0 4vw 0;	/*30*/
		border-radius:2.66666667vw;	/*20*/
	}
	#resource .resourcelist ul li a.ext .fig::before{
		width: 3.466666667vw;	/*26*/
  		height: 3.466666667vw;	/*26*/
		background-size: 3.466666667vw auto;	/*26*/
		top: 2.66666667vw;	/*20*/
		right: 2.66666667vw;	/*20*/
	}
	#resource .resourcelist ul li .name{
		margin: 0 0 2.93333333vw 0;	/*22*/
	}
	#resource .resourcelist ul li .name span{
		font-size: 4.266666667vw;	/*32*/
		line-height: 6.4vw;	/*48*/
	}
	#resource .resourcelist ul li .name i{
		width: 6.4vw;	/*48*/
		height: 6.4vw;	/*48*/
		border-radius: 3.2vw;	/*24*/
		background-size: 1.33333333vw auto;	/*10*/
		margin: 0 0 0 2.13333333vw;	/*16*/
	}
	#resource .resourcelist ul li .desc{
		font-size: 3.466666667vw;	/*26*/
  		line-height: 5.33333333vw;	/*40*/
	}
	#resource .resourcelist ul li .desc span{
		font-size: 3.2vw;	/*24*/
  		line-height: 5.33333333vw;	/*40*/
		display: block;
	}
}



/* ************************************************** */
#news .newslist{
	padding:60px 0 160px 0;
	background-color:#EFF8FD;
	border-radius:0 80px 0 0;
}
#news .newslist .inner{
	max-width:1000px;
	margin-inline: auto;
	
}
#news .newslist iframe{
	border-radius:10px;
	width:100%;
}


@media(max-width:1200px){
	#news .newslist .inner{
		padding:0 40px;
	}
}


@media(max-width:750px){
	#news .newslist{
		margin-top:14.13333333vw;	/*106*/
		padding: 8vw 0 21.33333333vw 0;	/*60 160*/
		border-radius: 0 10.66666667vw 0 0;	/*80*/
	}
	#news .newslist .inner{
		padding: 0 5.33333333vw;	/*40*/
	}
	#news .newslist iframe{
		border-radius: 2.66666667vw;	/*20*/
	}
}



/* ************************************************** */
