@charset "utf-8";

/*
CSS リセット
*/

*,
*::before,
*::after {
    box-sizing: border-box;
}

* {
    margin: 0;
    padding: 0;
}

html,
body {
    height: 100%;
}

body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}
a{
    text-decoration: none;
}

img,
video,
canvas,
svg {
    display: block;
    max-width: 100%;
}

input,
button,
textarea,
select {
    font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
    overflow-wrap: break-word;
}

#root,
#__next {
    isolation: isolate;
}
ul,ol,li{
    list-style: none;
    margin: 0;
    padding: 0;
}


/*
/CSS リセット
*/

body {
    position: relative;
    font-weight: 400;
    color: #222222;
    font-family:'SyntaxNextRegular','TazuganeGothicBook',sans-serif;
    overflow-x: hidden;
    font-size: 14px;
    line-height: 1.6;
	font-feature-settings:initial;
}

.sp_only {
    display: none;
}
.pc_only{
    display: inline;
}

@media(max-width:1072px) {
	.sp_only {
		display: inline;
	}
	.pc_only{
		display: none;
	}
}

a {
    color: #222;
}

.container {
    max-width: 1100px;
    margin: 0 auto;
    display: block;
    width: 100%;
	position: relative;
}
@media(max-width:1072px) {
	.container {
        width: auto;
        margin: 0 20px;
	}
}

.container.full {
    max-width: none;
}

/* ヘッダー */
header.p-header{
    width: 100%;
    padding: 0 0px;
    margin: 0 auto;
    display: flex;
    justify-content:space-between;
    flex-wrap: wrap;
    height: 70px;
    align-items: center;
    z-index: 100;
	position: fixed;
	background: white;
}
header.p-header .p-header-left a img{
    display: block;
    max-width: none;
    height: 38px;
	width: 113px;
    width: auto;
}
header.p-header .p-header-left a.header-title{
    font-size: 12px;
    color: #0F55C1;
    border: 1px solid #0F55C1;
    display: inline-block;
    padding: 8px 10px;
    margin-left: 20px;
    font-family:'SyntaxNextBold','TazuganeGothicBold';
	transition: all 0.5s ease-out;
}
header.p-header .p-header-left a.header-title:hover{
	background: #f5f5f5;
	transition: all 0.5s ease-out;
}
header.p-header .p-header-left{
    display: flex;
    align-items: center;
	padding-left: 20px;
	z-index: 100;
}

header nav {
	height: 100%;
	display: flex;
}
header nav.sub{
	width: 100%;
	height: 70px;
	overflow: hidden;
	transition: all 0.2s ease-out;
}
header nav.sub.hide{
	height: 0;
	opacity: 0;
	transition: all 0.2s ease-out;
}
header nav > ul.p-gnav-list,
header nav > ul.p-recruit-nav-list {
	display: flex;
	align-items: center;
	height: 100%;
	justify-content: space-between;
}
header nav > ul.p-recruit-nav-list.sp_only{
	display: none;
}
header nav > ul.p-gnav-list{
	/*background: rgba(153 153 153/0.7);*/
	background: rgba(0 14 77/0.9);
	margin:0;
	justify-content: center;
	width: 100%;
}


@media(max-width:767px) {
	header nav > ul.p-gnav-list{
		display: none;
	}
	header.p-header .p-header-left{
		padding-left: 0px;
		height: 100%;
	}
}
header nav > ul.p-gnav-list li,
header nav > ul.p-recruit-nav-list li {
	text-align: center;
	font-size: 14px;
	height: 100%;
}

header nav > ul li a {
	display: flex;
	height: 100%;
	align-items: center;
    padding: 0 20px 0 20px;
	width: 100%;
	color: #333;
	font-family:'SyntaxNextBold','TazuganeGothicBold';
    text-decoration: none;
    position: relative;
	font-size: 16px;
}

header nav > ul.p-recruit-nav-list li a:hover{
	color: #00B7F1;
}
header nav > ul.p-gnav-list li a{
	color: white;
	font-size: 15px;
	font-family:'SyntaxNextBold','TazuganeGothicBold';
}
header nav > ul.p-gnav-list li a:hover{
	color: #00B7F1;
}
header nav > ul li:first-of-type a{
    padding: 0 20px;
}
header nav > ul li:first-of-type a.bt{
	padding: 15px 25px;
}
header nav > ul li:nth-of-type(8) a{
	padding-right: 15px;
}
header nav > ul li.ac_header a.this{
	color: #000E4E;
}
header nav > ul li.entry a.this{
	padding: 0 0px;
}
header nav > ul li.ac_header:hover{
	cursor: pointer;
}
header nav > ul li.ac_header:hover a.this{
	color: #00B7F1;
	cursor: pointer;
}
header nav > ul li.entry{
    padding-left: 10px;
}
header nav > ul li.entry a.this{
    background: #FF6A00;
	display: flex;
	justify-content: center;
	align-items: center;
    color: white;
    padding:0px 30px;
	position: relative;
	height: 100%;
	font-size: 21px;
}


header nav > ul li.ac_header.open:after{
	content: "";
	width: 100%;
	height:200%;
	position: fixed;
    display: block;
    top: 75px;
    left: 0;
    background: rgba(0,0,0,0.8);
    z-index: 11;
}
header nav > ul li.ac_header.open a.this::after{
    transform: translate(-50%,-50%)rotate(-45deg);
    top: 52%;
}
header nav > ul li.ac_header.entry:hover a.this,
header nav > ul li.ac_header.entry.open a.this{
	/*background: white;
	color: #FF6A00;*/
	background: #00B7F1;
	color: white;
}
header nav > ul li.ac_header.entry:hover a.this:after{
	/*border-top: solid 2px #FF6A00;
    border-right: solid 2px #FF6A00;*/
}
header nav > ul li.ac_header.entry.open a.this:after{
	/*border-top: solid 2px #FF6A00;
    border-right: solid 2px #FF6A00;
	top: 52%;*/
}
header nav > ul li.ac_header{
	cursor: pointer;
}

header ul.spMenuBox, header nav.spMenu {
	display: none
}
.inner {
	display: none;
	position: absolute;
	top: 70px;
	left: 0%;
	width: 100%;
	background:white;
	padding: 50px 30px;
	box-sizing: border-box;
    z-index: 100;
    text-align: left;
	border-top: 1px solid #efefef;
	font-size: 16px;
}

header .inner .row {
	height: auto;
}

.inner h2{
    font-size: 40px;
    font-family:'SyntaxNextBold','TazuganeGothicBold';
    color: #00B7F1;
    padding-bottom: 30px;
    line-height: 1em;
}
.inner h2 small{
    font-size: 16px;
    color: #000E4E;
}
.inner ul.sub {
	width: 100%;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
    margin: 0 -1%;
}
.inner ul.sub li {
	width: 23%;
    margin: 0 1%;
	margin-bottom: 20px;
    text-align: left;
}
.inner ul.sub li a{
    display: block;
	border: none;
    position: relative;
    width: 100%;
    height: 100%;
    aspect-ratio: 4 / 3.2;
	overflow: hidden;
	color: #000E4E;
}

.inner ul.sub li a::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border: none;
	transform: rotate(0);
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
	z-index: 5;
}
.inner ul.sub li a:hover::after{
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
.inner.about-connect ul.sub li:nth-of-type(5) a{
	aspect-ratio: 4 / 3.55;
}


.inner ul.sub li a span{
    display: block;
    width: 100%;
    background: white;
    position: absolute;
    bottom: 0;
    left: 0;
    padding:10px 10px 0 10px;
	z-index: 10;
}

.inner ul.sub li a span::after{
	content: "";
	background:url(../images/common/arrow_b.svg) no-repeat right center/100%;
	height: 100%;
	width: 20px;
	position:absolute;
	top: 5px;
	right: 10px;
}

.inner ul.sub li a[target="_blank"] span::after{
	background: url(../images/common/link_b.svg) no-repeat center center/100%;
	width: 17px;
}

.inner ul.sub li a:hover span::after{
	right: 0;
	transition: all 0.5s ease-out;
}
.inner ul.sub li a[target="_blank"]:hover span::after{
	right: 10px;
}
.inner ul.list {
	display: flex;
	justify-content:flex-start;
	margin-bottom: 40px;
	flex-wrap: wrap;
}
.inner ul.list li{
	padding: 0 20px 0 0;
}
header nav > ul li.ac_header .inner ul.list li a::after{
	border: none;
	transform: rotate(0);
}
.inner.entry p{
	padding-bottom: 10px;
	margin-top: -30px;
}
.inner.entry p.blank{
	margin-top: 0;
	padding-bottom: 0;
}


a.bt{
	display: block;
	min-width: 260px;
	background:#000E4E;
	color: white;
	padding: 15px 25px;
	border-radius: 40px;
	text-align: left;
	letter-spacing: 0.06em;
	position: relative;
	font-size: 16px;
	font-family: 'SyntaxNextBold','TazuganeGothicBold';
	transition: all 0.5s ease-out;
}
a.bt.white{
	background: white;
	color: #000E4D;
}
a.bt::after{
	content: "";
	display: block;
	position: absolute;
	background: url(../images/common/arrow.svg) no-repeat center center/100%;
	height: 100%;
	width: 20px;
	right: 20px;
	top: 0;
}
a.bt.white::after{
	background: url(../images/common/arrow_blue.svg) no-repeat center center/100%;
}
a[target="_blank"].bt::after{
	background: url(../images/common/link.svg) no-repeat center center/100%;
	width: 17px;
}
a[target="_blank"].bt.white::after{
	background: url(../images/common/link_blue.svg) no-repeat center center/100%;
	width: 17px;
}
a.bt:hover{
	background: #00B7F1;
	transition: all 0.5s ease-out;
}
a.bt:hover::after{
	right: 15px;
	transition: all 0.5s ease-out;
}
a[target="_blank"].bt:hover::after{
	right: 20px;
}

.inner.entry{
	background: url(../images/common/recruit-info-bg.jpg) no-repeat center center/cover;
	color: white;
}
.inner.entry .row{
	display: flex;
	flex-wrap: wrap;
}
.inner.entry h2,
.inner.entry h2 small{
	color: white;
}
.inner.entry .row h3{
	width: 100%;
	font-size: 24px;
	padding-bottom: 15px;
	font-family:'SyntaxNextBold','TazuganeGothicBold';
	font-weight: normal;
}
.inner.entry .row > div{
	width: 50%;
}
.inner.entry h4{
	margin-bottom: 10px;
	font-size: 16px;
	font-weight: normal;
	font-family:'SyntaxNextBold','TazuganeGothicBold';
}
.inner.entry h4:before{
	content: "";
	display: inline-block;
	width: 30px;
	height: 2px;
	margin-right: 5px;
	vertical-align: middle;
	background: white;
}
.inner.entry ul.list li{
	padding: 0 10px 0 0;
}
.inner.entry a.bt:hover{
    background: #0063CC;
}
header nav > ul.p-gnav-list li a br.middle{
	display:none;
}

/*@media(max-width:1270px) {*/
@media(max-width:1329px) {
	header {
        width: 100%;
		padding: 10px 0 5px 3%;
		width: 100%;
		left: 0;
		top: 0;
		border-radius: 0;
	}
	header.openNav{
		height: 100%;
	}
	header nav.sub {
		/*opacity: 0;
		transition: all 0.5s ease-out;*/
	}
	header nav > ul.p-gnav-list{
		height: 50px;
	}
	header .headLink{
		display: none;
	}

	header ul.spMenuBox {
		display: block;
		position: absolute;
		right: 0;
		top: 0;
		z-index: 1100;
	}
	header ul.spMenuBox li {}
	header ul.spMenuBox li a {
		display: block;
		box-sizing: border-box;
	}
	header ul.spMenuBox li.entry{
		display: none;
	}
	header nav > ul#entry-bt.p-recruit-nav-list{
		margin-right: 60px;
	}
	header ul.spMenuBox li.menu {
		position: absolute;
		width: 45px;
		right: 10px;
		top:15px;
		height: 45px;
	}
	header.openNav ul.spMenuBox li.menu {

	}
	header ul.spMenuBox li.menu a, header ul.spMenuBox li.menu span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	header ul.spMenuBox li.menu a {
		position: relative;
		width: 100%;
		height: 100%;
        top: 16px;
	}
	header ul.spMenuBox li.menu span {
		position: absolute;
		left: 0;
		width: 18px;
		height: 2px;
		background: #000E4E;
		left: 50%;
		margin-left:-9px;
	}
	header ul.spMenuBox li.menu span:nth-of-type(1) {
		top: 0px;
	}
	header ul.spMenuBox li.menu span:nth-of-type(2) {
		top: 8px;
	}
	header.openNav ul.spMenuBox li.menu a {
		height: 100%;
	}
	header.openNav ul.spMenuBox li.menu span:nth-of-type(1) {
		-webkit-transform: translateY(4px) rotate(-45deg);
		transform: translateY(4px) rotate(-45deg);
	}
	header.openNav ul.spMenuBox li.menu span:nth-of-type(2) {
		-webkit-transform: translateY(-4px) rotate(45deg);
		transform: translateY(-4px) rotate(45deg);
	}
	header.openNav nav,
	header.openNav nav.sub.hide {
		display: block;
		position: fixed;
		top: 60px;
		left: 0;
		z-index: 1000;
		width: 100%;
		height: 100%;
		background: white;
		opacity: 1;
		padding: 0px;
		overflow-y:auto;
		transition: all 0.5s ease-out;
		padding-bottom: 80px;
	}
	header.openNav > nav > ul li.ac_header {
		box-sizing: border-box;
		font-size: 14px;
		padding:0 10px;
		text-align: left;
		margin-bottom: 0;
	}
	.inner.environment a.dei{
		width: 100%;
	}
	.inner{
		padding: 30px;
		top: 60px;
	}
	.inner ul.sub li {
		border: none;
		padding: 10px 20px;
	}
}
@media(max-width: 1540px){
	header nav > ul.p-gnav-list li a br.middle{
		display: inline;
	}
	header nav > ul.p-gnav-list li a{
		padding: 15px 15px;
		line-height: 1.4em;
		font-size: 14px;
	}
}

/*@media(max-width: 1270px){*/
@media(max-width: 1329px){
	body.open{
		overflow: hidden;
	}
	a.bt{
		min-width:auto;
	}
	header ul.spMenuBox li.menu{
		top: 7px;
	}
	header.p-header{
		height: 60px;
	}
	header.p-header .p-header-left a img{
		height: 32px;
		width: 113px;
	}
	header.p-header .p-header-left a.header-title{
		font-size: 12px;
		padding: 6px 6px;
		margin-left: 7px;
	}
	header nav > ul.p-gnav-list{
		height: auto;
		/*display: none;*/
	}

	header.openNav nav ul.p-recruit-nav-list,
	header.openNav nav ul {
		display:block;
		flex-wrap: wrap;
		margin: 0 0 0px 0;
		height: auto;
	}
	header.openNav nav ul.p-entry-list{
		width: 100%;
		display: block;
	}
	header.openNav nav ul li {
		/*width: 100%;*/
		position: relative;
		width: 100%;
	}
	header.openNav > nav > ul li{
		padding: 0 10px;
	}
	header nav > ul.p-recruit-nav-list li a,
	header nav > ul.p-gnav-list li a{
		padding: 15px 20px;
		/*border-bottom:1px solid #CECECE;*/
		font-size: 15px;
	}
	header nav > ul.p-recruit-nav-list li .inner.entry a.bt{
		color: #fff;
	}
	header nav > ul.p-recruit-nav-list li a{
		color: #222;
	}
	header nav > ul li.ac_header:hover a.this{
		color: #000E4E;
	}
	header nav > ul li.ac_header.open:after{
		display: none;
	}
	header nav > ul li.ac_header a.this::after{
		right: 10px;
	}
	.inner{
		border: none;
	}
	.inner ul.sub li {
		width: 100%;
		padding: 0;
		margin: 0;
	}
	.inner .container{
		padding: 0;
		margin: 0;
	}
	
	.inner ul.sub li a[target="_blank"] span::after{
		width: 14px;
	}
	.inner ul.sub li a::after{
		display: none!important;
	}
	.inner ul.sub a {
		padding: 10px 30px;
	}
	.inner h2{
		display: none;
	}
	header.openNav > nav > ul li.entry{
		/*padding: 20px 0 0 0;*/
		margin: 0;
		display: block;
		width: 100%;
	}


	header nav > ul li.ac_header.entry:hover a.this span, header nav > ul li.ac_header.entry.open a.this span,
	header.openNav > nav > ul li.entry a span{
		padding: 15px 20px;
		display: block;
		width: 100%;
		border-radius: 0;
		background: #00B7F1;
		border: none;
		color: white;
	}
	header nav > ul li.ac_header.entry:hover a.this:after,
	header nav > ul li.ac_header.entry.open a.this:after{
		border-top: solid 2px #fff;
		border-right: solid 2px #fff;
	}
	header nav > ul li.ac_header.entry a.this:after{
		right: 20px;
	}

	.inner.entry .row > div{
		width: 100%;
	}
	
	.inner.entry .row.second,
	.inner.entry ul.list{
		justify-content: space-between;
	}
	.inner.entry ul.list li{
		padding: 0;
		width: 48%;
	}
	header.openNav > nav > ul li.entry a.bt{
		padding:15px 20px;
		border: none;
	}
	/*.inner.entry .row.second > div ul.list li{
		width: 100%;
	}*/
	.inner.entry .row h3{
		font-size: 18px;
	}
	header nav > ul li.ac_header.entry.open a.this{
		border: none;
	}
	header nav > ul li.ac_header.entry.open a.this span{
		background: #00B7F1;
		color: white;
	}
	.inner.entry p{
		font-size: 13px;
	}
}

/*@media (max-width: 1270px) {*/
@media(max-width: 1329px){
	header nav > ul.p-gnav-list{
		display: none;
	}
	header.openNav nav.sub > ul.p-gnav-list{
		display: block;
		background: white;
	}
	header.openNav nav.sub > ul.p-gnav-list li a{
		color: #00B7F1;
	}
	header.openNav nav.sub > ul.p-gnav-list li a br.middle{
		display: none;
	}
	header nav > ul.p-recruit-nav-list{
		/*display: none;*/
	}
	header nav > ul#recruit-slide li{
		display: none;
	}
	header.openNav nav.main > ul.p-recruit-nav-list li a{
		display: flex;
		width: 100%;
		font-size: 14px;
		align-items: center;
		justify-content: center;
		padding: 8px 0;
		border-bottom: 0;
	}
	header nav > ul#entry-bt.p-recruit-nav-list {
		position: fixed;
        top: 0px;
        height: 60px;
        right: 0px;
		width: 100%;
		padding: 0;
		background: none;
		margin-right: 0;
	}
	header nav.main > ul.p-recruit-nav-list li a.this{
		padding: 0 20px;
		font-size: 16px;
		width: 100px;
		position: absolute;
		right: 60px;
		border: none;
	}
	header.openNav nav.main > ul.p-recruit-nav-list li a:after{
		content: "";
		width: 1px;
		height: 24px;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		background: rgba(112 112 112/0.5);
	}

	header.openNav ul.p-recruit-nav-list.sp_only li{
		display: block;
	}
	header nav > ul.p-recruit-nav-list li a,
	header nav > ul.p-gnav-list li a{
		border-bottom:1px solid #CECECE;
		position: relative;
		padding: 20px 15px;
	}
	header nav.sub > ul.p-recruit-nav-list li a:after,
	header nav.sub > ul.p-gnav-list li a:after{
		content: "";
		width: 10px;
		height: 10px;
		border-top: solid 1px #00B7F1;
		border-right: solid 1px #00B7F1;
		transform: rotate(135deg) translateY(-50%);
		position: absolute;
		right: 15px;
		top: 30%;
	}
	.inner.entry .row{
		max-width: 550px;
	}
}
@media (max-width: 768px) {
	header nav.main{
		height: auto;
		position: absolute;
        top: 60px;
		width: 100%;
	}
	header nav > ul#recruit-slide li{
		display: block;
	}
	header nav.main.hide ul#recruit-slide{
		height: 0;
		opacity: 0;
		transition: all 0.2s ease-out;
	}
	header nav.main > ul.p-recruit-nav-list{
		display: flex;
		margin-right: 0;
		flex-wrap: wrap;
		background: rgba(255 255 255 / 0.8);
		padding: 10px 0;
		width: 100%;
	}
	.inner.entry ul.list li {
        padding: 0;
    }
	header nav.main > ul.p-recruit-nav-list li{
		width: 33%;
		display: block;
	}
	header nav.main > ul.p-recruit-nav-list li.entry{
		width: 100%;
		padding-left: 0;
	}
	header nav.main > ul.p-recruit-nav-list li a{
		display: flex;
		width: 100%;
		font-size: 14px;
		align-items: center;
		justify-content: center;
		padding: 8px 0;
		border-bottom: 0;
		font-family:'SyntaxNextRegular','TazuganeGothicBook';
	}
	header nav.main > ul.p-recruit-nav-list li a:after{
		content: "";
		width: 1px;
		height: 24px;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		background: rgba(112 112 112/0.5);
	}
	header nav.main > ul.p-recruit-nav-list li:nth-of-type(3) a:after,
	header nav.main > ul.p-recruit-nav-list li:nth-of-type(6) a:after{
		display: none;
	}
	header nav > ul#entry-bt.p-recruit-nav-list {
		position: fixed;
        top: 0px;
        height: 60px;
        right: 0px;
		width: 100%;
		padding: 0;
		background: none;
		margin-right: 0;
	}
	header nav.main > ul.p-recruit-nav-list li a.this{
		padding: 0 20px;
		font-size: 16px;
		width: 86px;
		position: absolute;
		right: 60px;
		margin: 5px 0;
		height: 83%;
	}
	header nav > ul.p-recruit-nav-list li a,
	header nav > ul.p-gnav-list li a{
		padding: 15px 5px;
	}
	header nav.sub > ul.p-recruit-nav-list li a:after,
	header nav.sub > ul.p-gnav-list li a:after{
		right: 10px;
	}

	header nav.main > ul.p-recruit-nav-list li.entry.open a.bt{
		padding: 15px 25px;
		max-width: none;
	}
	header nav.main > ul.p-recruit-nav-list li.entry.open a.bt:after{
		display: none;
	}

	header nav > ul li.ac_header.entry a.this:after{
		display: none;
	}
	header nav > ul.p-gnav-list li,
	header.openNav nav ul li {
		width: 100%;
	}
	.inner{
		top: 54px;
	}
	.inner.entry .row.second > div ul.list li{
		width: 100%;
	}
}
body main{
    position: relative;
	padding-top: 70px;
}
@media (max-width: 1548px) {
    body main{
        padding-top: 60px;
    }
}
main.open::after{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0;
    background: rgba(0,0,0,0.8);
    z-index: 11;
}

#footlink{
	background: #000E4D;
	font-family:'SyntaxNextBold','TazuganeGothicBold';
	padding: 80px 0 60px 0;
}
@media (max-width: 767px) {
    section#footlink {
        padding: 50px 0;
    }
}
#footlink .row{
	display: flex;
	justify-content:space-between;
	flex-wrap: wrap;
}
#footlink .row ul{
	width: 35%;
	padding: 0 2%;
	position: relative;
}
#footlink .row ul::after{
	content: "";
	height: 100%;
	width: 1px;
	background: rgba(255 255 255/0.2);
	position: absolute;
	top: 0;
	right: 0;
}
#footlink .row ul.recruit{
	width: 28%;
}
#footlink .row ul.recruit::after,
#footlink .row ul li > ul::after{
	display: none;
}
#footlink .row ul li{
	color: #00B7F1;
	font-size: 18px;
}
#footlink .row ul li a{
	color: #00B7F1;
	display: block;
	padding: 20px 0;
	border-bottom:1px solid rgba(255 255 255/0.2);
}
#footlink .row ul li > ul{
	width: 100%;
	padding-top: 20px;
}
#footlink .row ul li > ul li a{
	color: white;
	border-bottom: none;
	padding: 0 0 20px 20px;
	position: relative;
	font-size: 14px;
	position: relative;
}
#footlink .row ul li > ul li a:before{
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	border-left: 2px solid white;
	border-bottom:2px solid white;
	margin-right: 10px;
	position: absolute;
	top: 2px;
	left: 0;
}
@media(max-width:767px) {
	#footlink .row ul.recruit,
	#footlink .row ul{
		width: 80%;
		margin: auto;
	}
	#footlink .row ul.first{
		border-top:1px solid rgba(255 255 255/0.2);
	}
	#footlink .row ul.recruit{
		padding-top: 15px;
	}
	#footlink .row ul::after{
		display: none;
	}
	#footlink .row ul li{
		font-size: 13px;
	}
	#footlink .row ul li a{
		padding: 15px 0;
	}
	#footlink .row ul li > ul li a{
		font-size: 12px;
	}
}

footer {
    background: #000E4E;
    font-size: 12px;
    color: #fff;
    padding: 30px 0;
    line-height: 1.5em;
    position: relative;
	border-top: 1px solid #939393;
}

footer .container {
    max-width: 980px;
    margin: 0 auto
}

@media screen and (max-width: 767px) {
	body main {
		padding-top: 60px;
	}
    footer .container {
        padding:0 15px
    }
}

footer .container:first-child {
    max-width: none;
    border-bottom: 1px solid #939393
}

footer .container:first-child>div {
    max-width: 980px;
    margin: 0 auto
}

footer a {
    color: #fff;
    text-decoration: none
}

a#footer-to-top {
    position: relative
}

a#footer-to-top::before,a#footer-to-top::after {
    content: "";
    position: absolute;
    width: 14px;
    height: 1px;
    background: #fff;
    right: 50%;
    top: 18px;
    transform: rotate(-45deg);
    margin-right: -3px
}

a#footer-to-top::after {
    transform: rotate(45deg);
    margin-right: -13px
}

div#footer-site-map a {
    margin-right: 15px;
    display: inline-block;
    white-space: nowrap
}

div#footer-site-map div a:first-child {
    width: 110px;
    display: inline-block
}

div#footer-site-map div {
    margin-bottom: 10px
}

div#footer-site-map {
    padding-bottom: 10px;
    border-bottom: 1px solid #939393
}

div#footer-other-link {
    padding: 30px 0
}

div#footer-other-link a {
    margin-right: 24px;
    display: inline-block;
    white-space: nowrap
}

div#footer-three-links a {
    padding-top: 30px;
    font-family:'SyntaxNextBold','TazuganeGothicBold';
    display: inline-block;
    text-align: center
}

a#footer-counry {
    position: absolute;
    top: 0;
    right: 0
}

#footer-print {
    background: url(../images/common/print.svg) no-repeat left bottom 4px/17px;
    position: absolute;
    top: 0;
    left: 0;
    padding-left: 25px
}

div#footer-three-links {
    display: flex;
    justify-content: center;
    position: relative
}

p#copyright {
    text-align: center;
    margin-top: 30px;
    font-size: 11px
}

div#footer-bottom-link {
    text-align: center;
    margin-top: 4px;
    font-size: 11px
}

div#footer-bottom-link a {
    border-right: 1px solid #fff;
    padding: 0 10px;
    display: inline-block
}

div#footer-bottom-link a:last-child {
    border: none
}

div#footer-sns {
    display: flex;
    width: 100%;
    height: auto;
    margin: 0 auto 20px;
    justify-content: center;
    display: none
}

div#footer-sns>a {
    height: 30px;
    width: 30px;
    background-position: center;
    background-repeat: no-repeat;
    margin: 0 10px
}

a#footer-twitter {
    background-image: url(../images/common/icon-twitter-white.svg);
    background-size: 20px
}

a#footer-facebook {
    background: url(../images/common/icon-facebook-white.svg);
    background-size: 11px
}

@media(max-width: 767px) {
    div#footer-site-map div a:first-child {
        display:block;
        font-weight: bold
    }

    div#footer-site-map div {
        margin-bottom: 15px
    }

    div#footer-bottom-link a {
        width: 50%;
        margin-bottom: 6px;
        text-align: right
    }

    div#footer-bottom-link a:nth-of-type(2n) {
        border: none;
        text-align: left
    }

    div#footer-bottom-link a:last-child {
        text-align: center;
        width: 100%
    }

    div#footer-site-map div a:first-child {
        display: block;
        font-weight: bold
    }

    div#footer-site-map div {
        margin-bottom: 15px
    }

    div#footer-sns {
        display: flex
    }
}


.employee-interview-list li img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 4 / 2.5;
}

.flex{
	display: flex;
}

.p-entry-h2 small{
	color: white;
}

.c-h1-inner{
	font-weight: normal!important;
    font-family: 'SyntaxNextBold','TazuganeGothicBold'!important;
}

.common-table {
	font-size: 16px;
	border-collapse: collapse;
	width: 100%;
	height: 100%;
}
.common-table tr {
	border-top: solid 1px #000e4e;
}
.common-table tr:first-child {
	border-top: none;
}
.common-table th {
	padding: 8px 10px;
	width: 180px;
	height: 100%;
}
.common-table th > div {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	min-height: 74px;
	padding: 20px 0;
	background: linear-gradient(135deg, #00B7F1 0%, #00B7F1 14px, #E9F2F8 14px, #E9F2F8 100%);
	line-height: 1.5;
}
.common-table td {
	padding: 30px 50px 30px 30px;
	line-height: 1.75;
}


@media screen and (max-width: 769px) {
	.common-table {
		font-size: 14px;
	}
	.common-table th {
		padding: 4px 0;
		width: 95px;
	}
	.common-table th > div {
		min-height: 20px;
		padding: 15px 0;
		background: linear-gradient(135deg, #00B7F1 0%, #00B7F1 9px, #E9F2F8 9px, #E9F2F8 100%);
		line-height: 1.428;
	}
	.common-table td {
		padding: 16px 0px 16px 11px;
		line-height: 1.714;
	}
}

.course-list > li {
	padding-left: 20px;
	position: relative;
	line-height: 1.75;
}
.course-list > li::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	background: #00B7F1;
	border-radius: 8px;
}


#selection-process{
	margin: 0;
	padding: 80px 0;
}
@media screen and (max-width: 769px) {
	#selection-process{
		margin: 0;
		padding: 60px 0;
	}
}

footer .container:first-child>div{
	max-width: 1100px;
}

button#ot-sdk-btn.ot-sdk-show-settings, #ot-sdk-btn.optanon-show-settings{
	border: none!important;
	color: white!important;
	padding: 0 10px!important;
	border-right: 1px solid #fff!important;
	display: inline-block!important;
	background: transparent!important;
}
#ot-sdk-btn.ot-sdk-show-settings:hover, #ot-sdk-btn.optanon-show-settings:hover{
	background: transparent!important;
}
@media (max-width: 767px){
	button#ot-sdk-btn.ot-sdk-show-settings, #ot-sdk-btn.optanon-show-settings{
		border-right:none!important;
		width: 50%;
		text-align: left;
	}
}
