@charset "utf-8";
@media screen and (min-width:801px),print {

/* html
-------------------------------------------------------------*/

html {
	overflow: auto;
	overflow-y: scroll;
}

body {
	overflow: hidden;
	min-width: 1360px;
}


/* aside.skip
-------------------------------------------------------------*/

aside.skip {
	position: fixed;
	width: 100%;
	height: 0;
	top: -9999px;
	left: 0;
	z-index: 99999;
	text-align: center;
	background: #ddd;
	overflow: hidden;
}
aside.skip a {
	color: #000;
}
aside.skip.show {
	height: 30px;
	padding: 8px 0 0;
	top: 0;
	text-align: center;
}

/* header
-------------------------------------------------------------*/

header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	min-width: 1360px;
	height: 120px;
	box-shadow: 0 1px 0 0 #e9eeef;
}
#top header{
    min-width: 1500px;
}

header nav.main {
	position: relative;
	width: 100%;
	min-width: 1200px;
	height: 120px;
	background: #fff;
}

header nav.main_sp,
header nav.dropdown_sp {
	display: none !important;
}
header nav.main_sp p.btn:focus{
	outline: auto;
}	

/* ul.menu_1 */

header ul.menu_1 {
	display: flex;
	justify-content: flex-end;
	height: 40px;
	padding: 11px 25px 12px 0;
	background: #000;
}

header ul.menu_1 li {
	display: flex;
	align-items: center;
	border-left: solid 1px #fff;
}
header ul.menu_1 li:last-child {
	border-right: solid 1px #fff;
}
header ul.menu_1 a {
	display: block;
	padding: 0 30px;
	color: #fff;
	font-size: 1.6rem;
}
header ul.menu_1 a:hover {
	opacity: 0.6;
	transition: opacity 0.1s ease-in;
}

/* p.logo */

header p.logo a {
	position: absolute;
	top: 54px;
	left: 30px;
	width: 170px;
	height: 48px;
}
header p.logo a:hover {
	opacity: 0.6;
	transition: opacity 0.1s ease-in;
}
header p.logo img {
	display: block;
	width: 170px;
	height: 48px;
}
header p.logo span {
	position: absolute;
	top: 59px;
	left: 227px;
	font-size: 1.2rem;
	color: #000;
	line-height: 1.67;
}

/* ul.menu_2 */

header ul.menu_2 {
	position: absolute;
	bottom: 0;
	right: 160px;
	height: 80px;
	display: flex;

}
header ul.menu_2 > li {
	position: relative;
}
header ul.menu_2  > li:not(:first-child) {
	margin-left: 55px;
}
header ul.menu_2 > li > span {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 5px;
	background: url(../img/bg_current.svg);
	transform: scale(0,1);
	transform-origin: center center;
	transition: transform 0.1s ease-in;
}
header ul.menu_2 > li:hover span {
	transform: scale(1,1);
}
header ul.menu_2 > li a:focus span {
	transform: scale(1,1);
}	
header ul.menu_2 > li.active > span {
	transform: scale(1,1);
}	
header ul.menu_2 > li  > a {
	display: flex;
	align-items: center;
	height: 80px;
	font-weight: 400;
	font-size: 1.6rem;
	color: #000;
}
header ul.menu_2 > li  > a:hover {
	color: #072F93
}
header ul.menu_2 > li  > a.current {
	color: #072F93
}
header ul.menu_2 > li:hover > a,
header ul.menu_2 > li.ov > a{
    color: #072F93
}
header ul.menu_2 > li:hover > span,
header ul.menu_2 > li.ov > span{
    position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 5px;
	background: url(../img/bg_current.svg);
    transform: scale(1,1);
}
header a.nw {
	padding: 0 22px 0 0;
	background: url(../img/icon_nw.svg) no-repeat right center;
	background-size: 13px 13px;
}

/* p.support */

header p.support {
	position: absolute;
	bottom: 0;
	right: 0;
}
header p.support a {
	display: block;
	background: url(../img/btn_inquire_on.svg);
	background-size: 120px 80px;
	border-left: solid 1px #e9eeef;
}
header p.support img {
	display: block;
	width: 120px;
	height: 80px;
}
header p.support a:hover img {
	opacity: 0;
	transition: opacity 0.1s ease-in;
}
header p.support.active a img {
	opacity: 0;
	transition: opacity 0.1s ease-in;
}
/* nav.dropdown */

header ul.menu_2 li > nav{
	visibility: hidden;
	position: fixed;
	top: 120px;
	left: 0;
	z-index: -1;
	width: 100%;
	min-width: 1360px;
	height: 600px;
	background: #E1E9F7;
	transform: translate(0,-120px);
	opacity: 0;
	transition: all 0.2s;

}
header ul.menu_2 li > nav.dropdown_service{
	height: 370px;

}	
header ul.menu_2 li:hover > nav,
header ul.menu_2 li.ov > nav {
	visibility: visible;
	transform: translate(0);
	opacity: 1;
    padding-top: 60px;
	
}
/*header li:hover > nav.dropdown_service {
	overflow-y: scroll;
}*/

header nav.dropdown > p, header nav.dropdown_service > p {
	position: relative;
	left: -50px;
	width: 1094px;
	margin: 40px auto 36px;
	font-weight: 100;
	font-size: 7.4rem;
	color: #fff;
}
header nav.dropdown dl {
	position: relative;
	width: 1094px;
	height: 330px;
	margin: 0 auto;
	padding-top: 36px;
}
header nav.dropdown dt, header nav.dropdown_service dt {
	font-size: 2.8rem;
	color: #000;
}
nav.dropdown_service dt{
	padding-left: 20px;
}	
header nav.dropdown li, header nav.dropdown_service li {
	position: absolute;
	top: 0;
	left: 0;
}
header nav.dropdown li.m1 {top: 90px; left: 0;}
header nav.dropdown li.m2 {top: 40px; left: 241px;}
header nav.dropdown li.m3 {top: 40px; left: 678px;}
header nav.dropdown li.m4 {top: 228px; left: 240px;}
header nav.dropdown li.m5 {top: 228px; left: 587px;}
header nav.dropdown li.m6 {top: 228px; left: 916px;}
header nav.dropdown li.m7 {top: 307px; left: 240px;}
header nav.dropdown li.m8 {top: 307px; left: 587px;}
header nav.dropdown li.m9 {top: 307px; left: 916px;}
header nav.dropdown li.m10 {top: 386px; left: 240px;}	
header nav.dropdown li.m11 {top: 386px; left: 587px;}
header nav.dropdown li.m12 {top: 386px; left: 916px;}	

header nav.dropdown li.m2,
header nav.dropdown li.m3 {
	width: 416px;
	height: 126px;
	overflow: hidden;
}
header nav.dropdown li.m2 a:focus,
header nav.dropdown li.m3 a:focus {
	outline: auto;
	border: 2px solid #9AA5AC;
}	
header nav.dropdown li > span, header nav.dropdown_service li > span {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 510px;
	height: 155px;
	background-size: 510px !important;
	transform: scale(1);
	transform-origin: center center;
	transition: transform 0.1s ease-in;
}

header nav.dropdown li.m2 > span {background: url(../img/bg_btn_m2.jpg);}
header nav.dropdown li.m3 > span {background: url(../img/bg_btn_m3.jpg);}



header nav.dropdown li:hover > span {
	transform: scale(1.1);
}
header nav.dropdown_service li:hover > span {
	transform: scale(1.1);
}	
header nav.dropdown li a, header nav.dropdown_service li a {
	position: relative;
	white-space: nowrap;
}
header nav.dropdown li a.current, header nav.dropdown_service li.current a {
	color: #072F93;
}
header nav.dropdown li.m2 a,
header nav.dropdown li.m3 a {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3;
	width: 416px;
	height: 126px;
	display: flex;
	align-items: center;
	padding: 0 0 0 41px;
	font-size: 2.6rem;
}
header nav.dropdown li.m2 a{
	color: #fff !important;
}	
header nav.dropdown li.m3 a{
	color: #072f93;
}	
header nav.dropdown li.m1 a,
header nav.dropdown li.m4 a,
header nav.dropdown li.m5 a,
header nav.dropdown li.m6 a,
header nav.dropdown li.m7 a,
header nav.dropdown li.m8 a,
header nav.dropdown li.m9 a,
header nav.dropdown li.m10 a,
header nav.dropdown li.m11 a,
header nav.dropdown li.m12 a,
header nav.dropdown li.m13 a,	
header nav.dropdown_service li.m1 a	{
	display: flex;
	align-items: center;
	height: 32px;
	padding: 0 54px 0 0;
	font-size: 2rem;
	color: #072F93;
}

header nav li.active > a	{

	color: #000 !important;
}

header nav.dropdown li a span, header nav.dropdown_service li a span {
	position: absolute;
	top: 0;
	right: 0;
	width: 32px;
	height: 32px;
	background-size: 32px;
	background: url(../img/icon_arrow_1.svg);
	transform: scale(1);
	transform-origin: center center;
	transition: transform 0.1s ease-in;
}
header nav.dropdown li.m2 a span,
header nav.dropdown li.m3 a span {
	top: 45px;
	right: 24px;
}
header nav.dropdown li a:hover span, header nav.dropdown_service li a:hover span {
	transform: scale(1.2);
}
/*-----Service */
header nav.dropdown_service dl {
	position: relative;
	width: 1360px;
	height: 330px;
	margin: 0 auto;
	padding-top: 40px;
}	
header nav.dropdown_service li.m1 {top: 38px; left: 170px;}	
header nav.dropdown_service li.m2 {top: 100px; left: 50px;}
header nav.dropdown_service li.m3 {top: 100px; left: 380px;}
header nav.dropdown_service li.m3-1 {top: 152px; left: 690px;}	
header nav.dropdown_service li.m4 {top: 100px; left: 650px;}	
header nav.dropdown_service li.m5 {top: 380px; left: 990px;}		
header nav.dropdown_service li.m2 a.housing, 
header nav.dropdown_service li.m3 a.cloud,
header nav.dropdown_service li.m4 a.stream,
header nav.dropdown_service li.m5 a.data {
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	padding-left: 65px;
	padding-right: 0;
	height: 55px;
	/*pointer-events: none;*/
}	
header nav.dropdown_service li.m2 a.housing{
	background-image: url(../../company/img/biz_h_img01.png);
	padding-right: 55px;
}
header nav.dropdown_service li.m3 a.cloud{
	background-image: url(../../company/img/biz_h_img02.png);
}
header nav.dropdown_service li.m4 a.stream{
	background-image: url(../../company/img/biz_h_img03.png);
	padding-left: 60px;
}
header nav.dropdown_service li.m5 a.data{
	background-image: url(../../company/img/biz_h_img04.png);
	padding-left: 62px;
	height: 42px;
}	
header nav.dropdown_service li.m2 a,
header nav.dropdown_service li.m3 a,
header nav.dropdown_service li.m3-1 a,	
header nav.dropdown_service li.m4 a,
header nav.dropdown_service li.m5 a {
	display: flex;
	align-items: center;
	height: 42px;
	padding: 0 30px 0 0;
	font-size: 2.4rem;
	color: #072f93;
}	
header nav.dropdown_service li.m2 a, header nav.dropdown_service li.m3 a{
	color: #072f93;
}	

header nav.dropdown_service li.m2 .cild,
header nav.dropdown_service li.m3 .cild,
header nav.dropdown_service li.m3-1 .cild,	
header nav.dropdown_service li.m4 .cild,
header nav.dropdown_service li.m5 .cild {
	position: static;
	padding-left: 63px;
	margin-top: 10px;
}
header nav.dropdown_service li.m2 .cild{
	padding-left: 57px;
}	
header nav.dropdown_service li.m5 .cild{
	padding-left: 63px;
}
header nav.dropdown_service li.m3-1 .cild{
	padding-left: 0;
}	
header nav.dropdown_service li ul.cild li a{
	font-size: 1.8rem;
	line-height: 1.4;
	display: inline-block;
	height: 32px;
	padding-top: 0;
	padding-bottom: 0;
}
header nav.dropdown_service li ul.cild li a small {
	font-size: 1.4rem;
}	
header nav.dropdown_service li ul.cild li a span{
	width: 18px;
	height: 18px;
	top: 5px;
}
header nav.dropdown_service li.m3-1 ul.cild li a span{
	display: inline-block;
	right: auto;
	top: auto;
	margin-left: 10px;
	margin-top: 5px;
}
header nav.dropdown_service li.m4 ul.cild li a span{
	display: inline-block;
	right: auto;
	top: auto;
	margin-left: 10px;
	margin-top: 5px;
}		
header nav.dropdown_service li ul.cild li a:hover span{
	transform: scale(1.2);
}
header nav.dropdown_service li.m2 a span,
header nav.dropdown_service li.m3 a span,
header nav.dropdown_service li.m3-1 a span,	
header nav.dropdown_service li.m4 a span,
header nav.dropdown_service li.m5 a span {
	background: url(../img/icon_nw.svg);
}	
header nav.dropdown_service li ul.cild li.current a{
	color: #072F93;
}
header nav.dropdown_service li.m2 .cild li, 
header nav.dropdown_service li.m3 .cild li,	
header nav.dropdown_service li.m4 .cild li,
header nav.dropdown_service li.m5 .cild li {
	position: static;
	margin-bottom: 10px;
}	
header nav.dropdown_service li.m3-1 .cild li{
	position: static;
	margin-bottom: 15px;
}
header nav.dropdown_service li.m4 .cild li{
	position: static;
	margin-bottom: 15px;
}	
header nav.dropdown_service li .cild li:last-of-type {
	margin-bottom: 0;
}
header nav.dropdown_service li.m3-1 ul.cild li a{
	height: auto;
	padding-right: 0;
}	

/* main
-------------------------------------------------------------*/

main {
	padding-top: 120px;
}

/* nav.breadcrumb */

main nav.breadcrumb {
	padding: 20px 0 0 30px;
}
main nav.breadcrumb ul {
	font-weight: 300;
	line-height: 1.4;
	overflow: hidden;
}
main nav.breadcrumb li {
	float: left;
	padding: 0 10px;
	margin-bottom: 10px;
	border-left: #000 solid 1px;
    color: #000;
}
main nav.breadcrumb li:first-child {
	padding: 0 10px 0 0;
	border-left: none;
}
main nav.breadcrumb li a{
    color: #000;
}
main nav.breadcrumb li a:hover{
    text-decoration: underline;
}	

/* article and section */

main article {
	width: auto;
	min-width: 1200px;
	margin: 0 auto;
	padding-top: 35px;
}
main article section {
	padding: 0 0 85px 50px;
}
main article .inner {
	width: 100%;
    max-width: 1360px;
    margin-left: auto;
    margin-right: auto;
}

/* h1 - h4 */

main article h1 {
    padding-top: 20px;
    padding-bottom: 90px;
    margin-bottom: 90px;
	text-align: center;
	font-size: 3.6rem;
	color: #000;
    border-bottom: 1px solid #E9EEEF;
}

main article h1 span.en {
	display: block;
	margin-bottom: 28px;
	font-weight: 100;
	font-size: 6rem;
	color: #000000;
}

main article h1 span,
main article h1 em {
	display: block;
	transform: translate(0,50px);
	opacity: 0;
	transition: all 0.3s ease-in;
}
main article h1 span.on,
main article h1 em.on {
	transform: translate(0);
	opacity: 1;
}

/*main article section h2 {
	position: relative;
	left: -50px;
	margin-bottom: 45px;
	font-size: 3rem;
	font-weight: 500;
	color: #000;
}*/
h2{
	position: relative;
	left: -50px;
	padding: 0 0 0 48px;
	margin: 0 0 40px;
	background: url(../../common/img/icon_leadcopy.svg) no-repeat left center;
	background-size: 32px 6px;
	font-size: 3rem;
	font-weight: 500;
	color: #000;
	margin-bottom: 45px;
}	
main article section h2 span.en {
	display: block;
	margin-bottom: 30px;
	font-weight: 100;
	font-size: 8rem;
	color: #9AA5AC;
}

main article h3 {
	margin: 40px 0 15px;
	font-weight: 500;
	font-size: 2.4rem;
	color: #072f93;
	letter-spacing: 0;
	line-height: 1.4;
}
main article h3:first-child {
	margin: 0 0 15px;
}
main article h4 {
	margin: 40px 0 15px;
	font-weight: 500;
	font-size: 2rem;
	color: #000;
	letter-spacing: 0;
	line-height: 1.4;
}
main article section h2:first-child,
main article h3:first-child,
main article h4:first-child,
main article p:first-child {
	margin-top: 0;
}
main article section p.leadcopy:first-child {
	margin-top: -10px;
}

/* p */

main article section p.leadcopy {
	position: relative;
	left: -50px;
	padding: 0 0 0 50px;
	margin: 75px 0 40px;
	background: url(../img/icon_leadcopy.svg) no-repeat left center;
	background-size: 32px 6px;
	line-height: 1.4;
	font-weight: 500;
	font-size: 3em;
	color: #000;
}
main article section h2 + p.leadcopy {
	margin-top: 5px;
}
.lead_copy{
    font-size: 5.0rem;
    line-height: 1.4;
    font-weight: 500;
    margin-bottom: 40px;
}

main article section p.txt {
	font-size: 1.8rem;
	color: #000;
	line-height: 2.3;
	margin-bottom: 18px;
}
main article section p.txt:last-of-type {
	margin-bottom: 0;
}	
main article section p.img_right {
	float: right;
	padding: 0.9em 0 30px 50px;
}
main article section p.img_right img {
	display: block;
}
main article section p.img_left {
	float: left;
	padding: 0.9em 50px 30px 0;
}
main article section p.img_left img {
	display: block;
}
    
/* font-size */
main article section .fs_s{font-size: 1.4rem !important;}
main article section .fs_m{font-size: 1.6rem !important;}
main article section .fs_l{font-size: 2.0rem !important;}

/* font-bold */
main article section .fw_m{font-weight: 500!important;}
main article section .fw_b{font-weight: 700!important;}
	
/* font-color */
main article section .tc_r{color: #DB0808!important;}
main article section .tc_b{color: #072f93!important;}
	
/* box_blue */

main article .box_blue {
	padding: 35px 35px 35px;
	background: #eef3fb;
}
main article .box_blue dt {
	font-weight: 500;
	font-size: 2rem;
	color: #072f93;
	letter-spacing: 0;
	line-height: 2.33;
}
main article .box_blue dd {
	font-size: 1.8rem;
	color: #000;
	line-height: 2.33;
}
main article .box_blue .ttl {
	margin: 0;
	font-weight: 500;
	font-size: 2rem;
	color: #072f93;
	letter-spacing: 0.05em;
	line-height: 2.33;
}

/* box_border */

main article .box_border {
	padding: 35px 35px 35px;
	background: #fff;
    border: 3px solid #ddd;
}
main article .box_border dt {
	font-weight: 500;
	font-size: 2.0rem;
	color: #072f93;
	letter-spacing: 0.05em;
	line-height: 1.7;
}
main article .box_border dd {
	font-size: 1.8rem;
	color: #000;
	line-height: 2.33;
}
main article .box_border .ttl {
	margin: 0;
	font-weight: 500;
	font-size: 2rem;
	color: #072f93;
	letter-spacing: 0.05em;
	line-height: 2.33;
}

.img_2col{
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.img_2col .img{
    width: 48.5%;
    max-width: 557px;
}

/* ul ol */

main article section ul.img_2col_right {
	float: right;
	display: flex;
	padding: 0.9em 0 30px 10px;
}
main article section ul.img_2col_right li {
	padding: 0 0 0 40px;
}
main article section ul.img_2col_left {
	float: left;
	display: flex;
	padding: 0.9em 10px 30px 0;
}
main article section ul.img_2col_left li {
	padding: 0 40px 0 0;
}

main article section ul.type1 {
	margin: 0 0 40px 0;
}
main article section ul.type1 li {
	padding-left: 1.2em;
	background: url(../img/ico_list_bullet.svg) no-repeat left top 0.55em;
	background-size: 9px 9px;
	font-size: 1.8rem;
	color: #000;
	line-height: 1.44;
	margin-bottom: 12px;
}
main article section ul.type1 li:last-of-type {
	margin-bottom: 0;
}
main article section ol.type1 {
	margin: 0 0 40px 20px;
}
main article section ol.type1 li {
	list-style-type: decimal;
	padding-left: 0.3em;
	font-size: 1.8rem;
	color: #000;
	line-height: 2.3;
}
main article section ol.type2{
    margin: 0 0 40px 30px;
}
main article section ol.type2 li {
    list-style-type: none;
    counter-increment: cnt;
    position: relative;
    padding-left: 0.8em;
	font-size: 1.8rem;
	color: #000;
	line-height: 2.3;
}
main article section ol.type2 li:before {
    content: "（"counter(cnt) "）";
    text-align: right;
    position: absolute;
    top: 0;
    left: 0;
    margin-left: -1.8em;
}

main article section ul.notice {
	margin: 0 0 40px 20px;
}
main article section ul.notice li {
	position: relative;
	padding-left: 0.2em;
	color: #333;
	line-height: 1.57;
}
main article section ul.notice li span {
	position: absolute;
	left: -1.4em;
	top: 0;
	color: #072f93
}

main article section ol.notice_num {
	margin: 0 0 40px 20px;
}
main article section ol.notice_num li {
	position: relative;
	padding-left: 0.8em;
	color: #333;
	line-height: 1.57;
}
main article section ol.notice_num li span {
	position: absolute;
	left: -1.4em;
	top: 0;
	color: #072f93
}

/* table */

main article section table.type1 {
	margin: 0 0 40px;
	border-top: 1px solid #c7c7c7;
}
main article section table.type1 th,
main article section table.type1 td {
	padding: 28px;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid #c7c7c7;
	font-size: 1.8rem;
	color: #000;
	line-height: 1.44;
}
main article section table.type1 th {
	background: #f1f2f6;
	font-weight: 500;
}

/* a */

main a:hover {
	color: #072f93;
}

main a.blue {
	color: #072f93;
    font-weight: 500;
}
main a.blue:hover {
	text-decoration: underline;
}

main a.nw {
	padding: 0 22px 0 0;
	background: url(../img/icon_nw.svg) no-repeat right center;
	background-size: 13px 13px;
}
main a.pdf {
	padding: 0 27px 0 0;
	background: url(../img/icon_pdf.svg) no-repeat right center;
	background-size: 18px 20px;
}
main a.anchor {
	padding: 0 31px 4px 0;
	background: url(../img/icon_anchor.svg) no-repeat right center;
	background-size: 22px 22px;
}

main a.link {
	position: relative;
	display: inline-block;
	height: 30px;
	padding: 6px 42px 0 0;
	font-size: 2rem;
	font-weight: 500;
	color: #072f93;
}
main a.link span {
	position: absolute;
	top: 0;
	right: 0;
	width: 32px;
	height: 32px;
	background-size: 32px;
	background: url(../img/icon_arrow_1.svg);
	transform: scale(1);
	transform-origin: center center;
	transition: transform 0.1s ease-in;
}
main a.link:hover span {
	transform: scale(1.15);
}
a.no_link{
	pointer-events: none;
}	
main a.btn_img {
	position: relative;
	width: 510px;
	height: 155px;
	display: flex;
	align-items: center;
	padding: 0 0 0 41px;
	font-size: 2.6rem;
	color: #fff;
	overflow: hidden;
}
main a.btn_img span.a_img {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -2;
	width: 510px;
	height: 155px;
	background: url(../img/bg_btn_m2.jpg);
	background-size: 510px !important;
	transform: scale(1);
	transform-origin: center center;
	transition: transform 0.1s ease-in;
}
main a.btn_img:hover span.a_img {
	transform: scale(1.1);
}
main a.btn_img span.a_arrow {
	position: absolute;
	top: 57px;
	right: 31px;
	z-index: -1;
	width: 42px;
	height: 42px;
	background-size: 42px;
	background: url(../img/icon_arrow_1.svg);
	transform: scale(1);
	transform-origin: center center;
	transition: transform 0.1s ease-in;
}
main a.btn_img:hover span.a_arrow {
	transform: scale(1.4);
}
main a.btn_img:focus span.a_img {
	transform: scale(1.1);
}	
main a.btn_img:focus span.a_arrow {
	transform: scale(1.4);
}	
	

.ico_no{
    background: none !important;
    color: #000 !important;
    padding-right: 0;
    width: 100%;
    pointer-events: none;
}
a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
}	

/* footer
-------------------------------------------------------------*/

footer {
	position: relative;
	width: 100%;
	min-width: 1360px;
	border-top: #e9eeef solid 1px;
}

footer a:hover {
	text-decoration: underline;
	opacity: 0.6;
	transition: opacity 0.1s ease-in;
}
.footer{
	margin-top: 100px;
}
/* nav.local */

nav.local ul {
	display: flex;
	flex-wrap: wrap;
	width: 1360px;
	margin: 100px auto 100px;
	border-left: 1px solid #c7c7c7;
}
nav.local li {
	border-top: 1px solid #c7c7c7;
	border-bottom: 1px solid #c7c7c7;
	border-right: 1px solid #c7c7c7;
}
nav.local li:nth-child(n + 6) {
	border-top: none;
}	
nav.local li a {
	display: block;
	width: 270px;
	padding: 28px 50px 26px 28px;
	background: url(../img/icon_arrow_1.svg) no-repeat center right 20px ;
	background-size: 22px;
	font-size: 1.8rem;
	color: #000;
	line-height: 1.4;
    height: 100%;
	transition: all 0.3s ease 0s;
}
nav.local li a:hover {
	color: #072F93;
}	
nav.local li a.current {
	color: #000;
	font-weight: 700;
	background: none;
}
	

/* nav.footer_sp */

nav.footer_sp {
	display: none !important;
}

/* nav.footer_pc */

nav.footer_pc {
	background: #F1F2F6;
	width: 100%;
	min-width: 1360px;
	height: 580px;
}
nav.footer_pc > div {
	display: flex;
	justify-content: space-between;
	width: 1360px;
	min-width: 1360px;
	height: 100%;
	padding-bottom: 50px;
	margin: 0 auto;
	position: relative;
}
nav.footer_pc > div > ul {
	position: relative;
	width: 210px;
	width: auto;
	margin: 60px auto 0;
}
nav.footer_pc > div > ul:nth-child(2) {
	position: relative;
	/*left: 60px;*/
}
nav.footer_pc > div > ul > li >a,
nav.footer_pc dt > a {
	position: relative;
	display: inline-block;
	margin: 0 0 20px;
	padding: 3px 38px 3px 0;
	line-height: 1.4;
	font-size: 2.0rem;
	color: #072f93;
}
nav.footer_pc li.case a {
	margin: 0 0 20px;
}
nav.footer_pc > div > ul > li >a span,
nav.footer_pc dt > a span {
	position: absolute;
	top: 0;
	right: 0;
	width: 30px;
	height: 30px;
	background-size: 42px;
	background: url(../img/icon_arrow_1.svg);
	transform: scale(1);
	transform-origin: center center;
	transition: transform 0.1s ease-in;

}
nav.footer_pc li.partner a, nav.footer_pc li.recruit a, nav.footer_pc li.nw_link a {
	padding: 1px 28px 3px 0;
}	
nav.footer_pc li.partner a span, nav.footer_pc li.recruit a span, nav.footer_pc li.nw_link a span {
	background: url(../img/icon_nw.svg);
	width: 18px;
	height: 18px;
	background-size: 18px;
	top: 50%;
	transform: translateY(-50%);
}

nav.footer_pc dd a {
	display: inline-block;
	margin: 0 0 15px;
	font-size: 1.8rem;
	color: #000;
	letter-spacing: 0em;
	line-height: 1.7;
}
nav.footer_pc .certifications {
	position: absolute;
	bottom: 50px;
	right: 0;
}	
nav.footer_pc .certifications ul {
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	width: 700px;
}	
nav.footer_pc .certifications ul li {
	width: 140px;
	margin-right: 20px;
}
nav.footer_pc .certifications ul li:first-of-type {
	width: 180px;
}	
nav.footer_pc .certifications ul li:last-of-type {
	width: 100px;
	margin-right: 0px;
}
nav.footer_pc .certifications ul li a {
	transition: all 0.3s ease 0s;
}	
nav.footer_pc .certifications ul li a:hover {
	opacity: 0.7;
}	
nav.footer_pc .certifications ul li img{
	max-width: 100%;
	width: auto;
}	

/* p.logo */
footer .logo{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 15px 0;
}
footer .logo a {
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	transition: all 0.3s ease 0s;
}
footer .logo a:hover {
	text-decoration: none;
	opacity: 0.7;
}
footer .logo a .sp{
	display: none;
}	
footer .logo img {
	width: 170px;
	height: 48px;
}
footer .logo span {
	font-size: 1.2rem;
	color: #000;
	line-height: 1.67;
}
	

/* nav:nth-child(3) */

footer nav:nth-child(4), footer nav.no04 {
	position: relative;
	width: 1150px;
	min-width: 1150px;
	height: 150px;
	margin: 0 auto;
}
footer nav.no04{
	height: 115px;
}	
footer nav:nth-child(4) ul, footer nav.no04 ul{
	position: absolute;
	top: 20px;
	left: 487px;
	width: 580px;
	overflow: hidden;
}
footer nav:nth-child(4) ul li, footer nav.no04 ul li{
	float: left;
	margin: 0 0 15px;
	padding: 0 20px;
	border-left: solid 1px #000;
}
footer nav.no04 ul li:nth-child(3),
footer nav.no04 ul li:last-child {
	border-right: solid 1px #000;
}
footer nav:nth-child(4) ul li:nth-child(3),
footer nav:nth-child(4) ul li:last-child {
	border-right: solid 1px #000;
}	

footer nav:nth-child(4) ul ul a, footer nav.no04 ul ul a{
	display: block;
	font-size: 1.2rem;
	color: #000;
}

footer p.gotop {
	position: fixed;
	bottom: 24px;
	right: 24px;
	transition: 0.3s;
	visibility: hidden;
	opacity: 0;
}
footer p.gotop.on {
	visibility: visible;
	opacity: 1;
}
footer p.gotop a img {
	width: 68px;
	height: 68px;
}

footer p.copy {
	position: absolute;
	bottom: 20px;
	left: 0;
	width: 100%;
	/*min-width: 1200px;*/
	text-align: center;
	color: #000;
}
}
