@charset "utf-8";
/*---------------------------------------------
 reset
---------------------------------------------*/

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
 margin: 0;
 padding: 0;
}
table {
 border-collapse: collapse;
 border-spacing: 0;
}
fieldset,
img {
 border: 0;
}
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
 font-style: normal;
 font-weight: normal;
}
ol,
ul {
 list-style: none;
}
caption,
th {
 text-align: left;
}
h1,
h2,
h3,
h4,
h5,
h6 {
 font-size: 100%;
 font-weight: normal;
}
q:before,
q:after {
 content: '';
}
abbr,
acronym {
 border: 0;
 font-variant: normal;
}
sup {
 vertical-align: text-top;
}
sub {
 vertical-align: text-bottom;
}
input,
textarea,
select {
 font-family: inherit;
 font-size: inherit;
 font-weight: inherit;
}
input,
textarea,
select {
*font-size:100%;
}
legend {
 color: #000;
}
li {
 list-style: none;
}
img {
 border: none;
 background: transparent;
 vertical-align: bottom;
}

a img,
a:hover img,
a:active img {
 border: none;
 background: transparent;
}
li {
 list-style: none;
}
img {
 border: none;
 background: transparent;
 vertical-align: bottom;
}
button{padding: 0;margin: 0;border: none; background: #FFF; cursor: pointer;}

/*---------------------------------------------
 custom
---------------------------------------------*/
html,
body { height: 100%; font-size:12px; color:#333;} 
a { text-decoration: underline;}
a:hover,
a:active { text-decoration: none;}


/* base */
*,*:after,*:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
body{
	color: #1e2021;
	font-size: 14px;
	line-height: 1.4;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka,"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
img {
	max-width: 100%;
}

/* Slider */
.slick-slider{position: relative;display: block;box-sizing: border-box;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;-webkit-touch-callout: none;-khtml-user-select: none;-ms-touch-action: pan-y;touch-action: pan-y;-webkit-tap-highlight-color: transparent;}
.slick-list{position: relative;display: block;overflow: hidden;margin: 0;padding: 0;}
.slick-list:focus{outline: none;}
.slick-list.dragging{cursor: pointer;cursor: hand;}
.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform: translate3d(0, 0, 0);-moz-transform: translate3d(0, 0, 0);-ms-transform: translate3d(0, 0, 0);-o-transform: translate3d(0, 0, 0);transform: translate3d(0, 0, 0);}
.slick-track{position: relative;top: 0;left: 0;display: block;}
.slick-track:before,.slick-track:after{display: table;content: '';}
.slick-track:after{clear: both;}
.slick-loading .slick-track{visibility: hidden;}
.slick-slide{display: none;float: left;height: 100%;min-height: 1px;}[dir='rtl'] .slick-slide{float: right;}
.slick-slide img{display: block; margin: 0 auto;}
.slick-slide.slick-loading img{display: none;}
.slick-slide.dragging img{pointer-events: none;}
.slick-initialized .slick-slide{display: block;}
.slick-loading .slick-slide{visibility: hidden;}
.slick-vertical .slick-slide{display: block;height: auto;border: 1px solid transparent;}
.slick-arrow.slick-hidden {display: none;}



/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}

#cboxWrapper {max-width:none; background: #fff;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:1000px; height: auto!important; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}
#cboxLoadedContent{padding: 1px;}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{opacity: 0.9; /*filter: alpha(opacity = 90); */background: #000;}
#colorbox{outline:0;}
#cboxTopLeft{width:21px; height:21px; }
#cboxTopRight{width:21px; height:21px; }
#cboxBottomLeft{width:21px; height:21px;}
#cboxBottomRight{width:21px; height:21px; }
#cboxMiddleLeft{width:21px; }
#cboxMiddleRight{width:21px; }
#cboxTopCenter{height:21px; }
#cboxBottomCenter{height:21px;}
.cboxIframe{background:#fff;}
#cboxError{padding:50px; border:1px solid #ccc;}
#cboxTitle{position:absolute; bottom:4px; left:0; text-align:center; width:100%; color:#949494;}
#cboxCurrent{position:absolute; bottom:4px; left:58px; color:#949494;}
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}
#cboxSlideshow{position:absolute; bottom:4px; right:30px; color:#0092ef;}
#cboxPrevious{position:absolute; bottom:0; left:0; width:25px; height:25px; text-indent:-9999px;}
#cboxPrevious:hover{background-position:-75px -25px;}
#cboxNext{position:absolute; bottom:0; left:27px; width:25px; height:25px; text-indent:-9999px;}
#cboxNext:hover{background-position:-50px -25px;}
#cboxClose{position:absolute; top:-25px; right:-20px; width:25px; height:25px;}
#cboxClose:before{ content: "×"; font-size: 30px; line-height: 1;}
#cboxClose:hover{background-position:-25px -25px;}
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}


.contentsWrap p.read{
	margin-top:30px;
}
.contentsWrap .aboutTbl {
	margin-top:30px;
	width: 880px;
	line-height:1.5;
}
.contentsWrap .aboutTbl th {
	width: 190px;
	padding: 7px 19px 7px 0;
	border-right: 1px #dddddd solid;
	color: #005299;
	text-align: right;
	font-weight:bold;
	vertical-align:top;
}
.contentsWrap .aboutTbl td {
	padding:7px 0 7px 19px;
}
.contentsWrap .aboutTbl td span {
	font-weight: bold;
}
.contentsWrap .aboutTbl td dl dt{
	font-weight:bold;
}
.contentsWrap .aboutTbl td dl dd{
	margin-bottom:7px;
}

h3.ttl{
	margin-top:30px;
	padding-top:30px;
	border-top: 1px solid #E6E6E6;
	font-size:24px;
	color: #005299;
	text-align:center;
}
body.iframe:before{
	display: none;

}
/*---------------------------------------------
 generic  class
---------------------------------------------*/

.txtB { font-weight: bold; }
.txtN { font-weight: normal; }
.layoutC { text-align: center !important; }
.layoutL { text-align: left !important; }
.layoutR { text-align: right !important; }
.fz14{ font-size:14px !important; }
.fz16{ font-size:16px !important; }
.fz18{ font-size:18px !important; }
.fz20{ font-size:20px !important; }
/*---------------------------------------------
 base margin
---------------------------------------------*/
.mt0 { margin-top: 0px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.ml0 { margin-left: 0 !important; }
.ml5 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml30 { margin-left: 30px !important; }
.ml40 { margin-left: 40px !important; }
.mb0 { margin-bottom: 0px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }
.mr5 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr20 { margin-right: 20px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }
.pd0{padding: 0!important;}

/*---------------------------------------------
 grid system
---------------------------------------------*/
.grid_center{text-align: center; letter-spacing: -0.4em;}
.grid_center .colNum{ float: none; text-align: left; display: inline-block; letter-spacing: normal;}
.grid {margin: 0 auto;overflow: hidden;padding-right: 0;}
.grid:after {content: "";display: table;clear: both;}
.colNum {float: left;min-height: 1px; box-sizing:border-box;}.push_right { float: right; }
.gd_0 { margin-right: -0px; margin-bottom: -0px;}.gd_1 { margin-right: -1px; margin-bottom: -1px;}.gd_8 { margin-right: -8px; margin-bottom: -8px;}.gd_10 { margin-right: -10px; margin-bottom: -10px;}.gd_15 { margin-right: -15px; margin-bottom: -15px;}.gd_16 { margin-right: -16px; margin-bottom: -16px;}.gd_20 { margin-right: -20px; margin-bottom: -20px;}.gd_24 { margin-right: -24px; margin-bottom: -24px;}.gd_25 { margin-right: -25px; margin-bottom: -25px;}.gd_30 { margin-right: -30px; margin-bottom: -30px;}.gd_40 { margin-right: -40px; margin-bottom: -40px;}.gd_50 { margin-right: -50px; margin-bottom: -50px;}.gd_60 { margin-right: -60px; margin-bottom: -60px;}
.gd_0>.colNum {margin-bottom: 0; padding-right: 0;}.gd_1>.colNum {margin-bottom: 1px; padding-right: 1px;}.gd_8>.colNum {margin-bottom: 8px; padding-right: 8px;}.gd_10>.colNum {margin-bottom: 10px; padding-right: 10px;}.gd_15>.colNum {margin-bottom: 15px; padding-right: 15px;}.gd_16>.colNum {margin-bottom: 16px; padding-right: 16px;}.gd_20>.colNum {margin-bottom: 20px; padding-right: 20px;}.gd_24>.colNum {margin-bottom: 24px; padding-right: 24px;}.gd_25>.colNum {margin-bottom: 25px; padding-right: 25px;}.gd_30>.colNum {margin-bottom: 30px; padding-right: 30px;}.gd_40>.colNum {margin-bottom: 40px; padding-right: 40px;}.gd_50>.colNum {margin-bottom: 50px; padding-right: 50px;}.gd_60>.colNum {margin-bottom: 60px; padding-right: 60px;}
.grid.border .colNum{border-right: 1px solid rgba(0,0,0,0.2);/*$カラム間ボーダー*/}
.grid.border.gd_8 { margin-right: -4px; margin-left: -4px; margin-bottom: -8px;}.grid.border.gd_10 { margin-right: -5px; margin-left: -5px; margin-bottom: -10px;}.grid.border.gd_15 { margin-right: -7px; margin-left: -7px; margin-bottom: -15px;}.grid.border.gd_20 { margin-right: -10px; margin-left: -10px; margin-bottom: -20px;}.grid.border.gd_25 { margin-right: -12px; margin-left: -12px; margin-bottom: -25px;}.grid.border.gd_30 { margin-right: -15px; margin-left: -15px; margin-bottom: -30px;}.grid.border.gd_40 { margin-right: -20px; margin-left: -20px; margin-bottom: -40px;}
.grid.border.gd_10 .colNum {margin-bottom: 10px; padding-right: 5px; padding-left: 5px; }.grid.border.gd_10 .colNum {margin-bottom: 10px; padding-right: 5px; padding-left: 5px; }.grid.border.gd_15 .colNum {margin-bottom: 15px; padding-right: 7px; padding-left: 7px; }.grid.border.gd_16 .colNum {margin-bottom: 16px; padding-right: 8px; padding-left: 8px; }.grid.border.gd_20 .colNum {margin-bottom: 20px; padding-right: 10px; padding-left: 10px; }.grid.border.gd_24 .colNum {margin-bottom: 24px; padding-right: 12px; padding-left: 12px; }.grid.border.gd_25 .colNum {margin-bottom: 25px; padding-right: 12px; padding-left: 12px; }.grid.border.gd_30 .colNum {margin-bottom: 30px; padding-right: 15px; padding-left: 15px; }.grid.border.gd_40 .colNum {margin-bottom: 40px; padding-right: 20px; padding-left: 20px; }
.col_1_1 { width: 100% }.col_2_3,.col_8_12 { width: 66.66% }.col_1_2,.col_6_12 { width: 50% }.col_1_3,.col_4_12 { width: 33.33% }.col_1_4,.col_3_12 { width: 25% }.col_1_5 { width: 20% }.col_1_6,.col_2_12 { width: 16.667% }.col_1_7 { width: 14.28% }.col_1_8 { width: 12.5% }.col_1_9 { width: 11.1% }.col_1_10 { width: 10% }.col_1_11 { width: 9.09% }.col_1_12 { width: 8.33% }.col_11_12 { width: 91.66% }.col_10_12 { width: 83.333% }.col_9_12 { width: 75% }.col_5_12 { width: 41.66% }.col_7_12 { width: 58.33% }
.push_2_3,.push_8_12 { margin-left: 66.66% }.push_1_2,.push_6_12 { margin-left: 50% }.push_1_3,.push_4_12 { margin-left: 33.33% }.push_1_4,.push_3_12 { margin-left: 25% }.push_1_5 { margin-left: 20% }.push_1_6,.push_2_12 { margin-left: 16.667% }.push_1_7 { margin-left: 14.28% }.push_1_8 { margin-left: 12.5% }.push_1_9 { margin-left: 11.1% }.push_1_10 { margin-left: 10% }.push_1_11 { margin-left: 9.09% }.push_1_12 { margin-left: 8.33% }
.colInner{height: 100%;}

body:before {
	background-color: #edf4f7;
	content: "";
	display: block;
	width: 50%;
	height: 514px;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}
body.top:before {
	height: 1046px;
}
/* header */
#header {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
}
#header .logo {
	padding-left: 32px;
}
#header .logo img + img {
	margin-left: 13px;
}
#header .headLink {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
}
#header .headLink ul li {
	display: inline-block;
	margin-right: 24px;
}
#header .headLink ul li a {
	color: #1e2021;
	font-size: 15px;
	text-decoration: none;
}
#header .headLink .entry {
	background-color: #f27900;
	color: #fff;
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	width: 90px;
	height: 90px;
	position: relative;
	text-align: center;
	text-decoration: none;
}
#header .headLink .entry.career {
	background-color: #f29900;
}
#header .headLink .entry:after {
	background: url(../images/icn_arrow_w.svg) no-repeat center center / contain;
	content: "";
	display: block;
	width: 24px;
	height: 8px;
	position: absolute;
	right: 8px;
	bottom: 8px;
}

/* footer */
.footNav {
	background: url(../images/bg_footer.png) no-repeat center bottom / 100% auto;
	padding: 100px 10px 120px;
}
.footNav ul {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	justify-content: center;
}
.footNav ul li + li {
	margin-left: 65px;
}
.footNav ul li a {
	background-color: #fff;
	border: 3px solid #d7dcde;
	color: #1e2021;
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	text-align: center;
	text-decoration: none;
	width: 352px;
	height: 222px;
}
.footNav ul li a:after {
	background: url(../images/icn_arrow_b.svg) no-repeat center center / contain;
	content: "";
	display: block;
	width: 24px;
	height: 8px;
	position: absolute;
	right: 17px;
	bottom: 17px;
}
.footNav ul li a .icon {
	display: block;
	height: 72px;
}
.footNav ul li a .icon img {
	width: auto;
	height: 100%;
}
.footNav ul li a .title {
	font-size: 18px;
	font-weight: bold;
	margin-top: 20px;
}
#footer {
	background-color: #292e33;
	color: #fff;
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 32px 40px;
}
#footer a {
	color: #fff;
	text-decoration: none;
}
#footer .home {
	font-size: 18px;
	font-weight: bold;
}
#footer .home a:after {
	background: url(../images/icn_external.svg) no-repeat center center / contain;
	content: "";
	display: inline-block;
	width: 13px;
	height: 11px;
	margin-left: 8px;
}
#footer .right .link {
	text-align: right;
}
#footer .right .link li {
	display: inline-block;
	font-size: 12px;
}
#footer .right .link li + li {
	border-left: 1px solid #abacad;
	margin-left: 6px;
	padding-left: 7px;
}
#footer .right .copy {
	font-size: 10px;
	margin-top: 24px;
}

/* contents */
.pageTitle {
	background: #005098;
	background: -moz-linear-gradient(left,  #005098 0%, #007599 100%);
	background: -webkit-linear-gradient(left,  #005098 0%,#007599 100%);
	background: linear-gradient(to right,  #005098 0%,#007599 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#005098', endColorstr='#007599',GradientType=1 );
	color: #fff;
	font-weight: bold;
	padding: 32px 10px;
	text-align: center;
}
.pageTitle .en {
	opacity: .3;
}
.pageTitle .jp {
	display: inline-block;
	font-size: 40px;
	font-weight: bold;
	margin-top: 8px;
}
.h2Ttl {
	font-size: 36px;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 40px;
	padding-bottom: 10px;
	position: relative;
	text-align: center;
}
.h2Ttl:after {
	background-color: #005098;
	content: "";
	display: block;
	width: 30px;
	height: 2px;
	margin: 0 auto;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

/* top */
.mainvisual {
	text-align: center;
	position: relative;
}
.mainvisual .mvSlider {
	margin: 0 auto;
	overflow: hidden;
	position: relative;
	z-index: 1;
	max-width: 1186px;
}
.mainvisual .mvSlider {
	opacity: 0;
  transition: opacity .8s linear;
}
.mainvisual .mvSlider.slick-initialized  {
	opacity: 1;
}

.mainvisual .scroll {
	color: #005098;
	font-weight: bold;
	position: relative;
	padding-top: 38px;
	text-align: center;
	z-index: 2;
}
.mainvisual .scroll:before {
	background-color: #005098;
	content: "";
	display: block;
	width: 2px;
	height: 40px;
	margin-left: -1px;
	position: absolute;
	left: 50%;
	top: -10px;
}
.messageSection {
	margin: 0 auto;
	max-width: 1100px;
	padding-top: 50px;
}
.titleWrap {
	margin-bottom: 48px;
}
.titleWrap h2 {
	line-height: 1.2;
}
.titleWrap h2 .en {
	display: inline-block;
	font-weight: bold;
	margin-bottom: 10px;
}
.titleWrap h2 .jp {
	color: #005098;
	background: -webkit-linear-gradient(0deg, #005098, #007599);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: 48px;
	font-weight: bold;
}
.messageSection .messageWrap {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
}
.messageSection .messageWrap .message {
	flex: 1;
}
.messageSection .messageWrap .message .catch {
	font-size: 24px;
	font-weight: bold;
	line-height: 1.3;
	padding-bottom: 16px;
	position: relative;
}
.messageSection .messageWrap .message .catch:after {
	background-color: #f29900;
	content: "";
	display: block;
	width: 30px;
	height: 3px;
	position: absolute;
	left: 0;
	bottom: 0;
}
.messageSection .messageWrap .message p + p {
	margin-top: 32px;
}
.messageSection .messageWrap .message .catch + p {
	margin-top: 24px;
}
.messageSection .messageWrap .message .signature {
	text-align: right;
}
.messageSection .messageWrap .message .signature .name {
	font-size: 20px;
	font-weight: bold;
}
.messageSection .messageWrap .img {
	margin-left: 64px;
	width: 424px;
}
.visionSection {
	padding-top: 100px;
}
.visionSection .visionWrap {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
}
.visionSection .visionWrap .img {
	order: 1;
	width: 50%;
	overflow: hidden;
	position: relative;
}
.visionSection .visionWrap .img:before {
	background-color: #edf4f7;
	content: "";
	display: block;
	width: 100vw;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}
.visionSection .visionWrap .img img {
	max-width: 100%;
	float: right;
	position: relative;
	z-index: 2;
}
.visionSection .visionWrap .vision {
	order: 2;
	padding: 0 50px;
	width: 50%;
}
.visionSection .visionWrap .vision .block {
	max-width: 500px;
	padding-left: 40px;
}
.visionSection .visionWrap .vision .block + .block {
	margin-top: 64px;
}
.visionSection .visionWrap .vision .block h3 {
	margin-bottom: 16px;
}
.visionSection .visionWrap .vision .block h3 .jp {
	font-size: 24px;
	font-weight: bold;
	margin-right: 8px;
}
.visionSection .visionWrap .vision .block h3 .en {
	font-size: 12px;
	font-weight: bold;
	opacity: .5;
}

/* company */
.companySection {
	padding-top: 100px;
	text-align: center;
}
.companySection .companyCatch {
	font-size: 36px;
	font-weight: bold;
}
.companySection .companyCatch .blue {
	color: #005098;
	font-weight: bold;
}
.companySection .companyCatch .orange {
	color: #f29900;
	font-weight: bold;
}
.companySection .lead {
	font-size: 22px;
	font-weight: bold;
	margin: 24px 0 16px;
}
.companySection .serviceBlock {
	background-color: #005098;
	margin-top: 40px;
	text-align: left;
}
.companySection .serviceBlock .productsImg {
	background: url(../images/bg_company.png) no-repeat center bottom / 100% auto;
	padding-bottom: 9.736%;
}
.companySection .serviceBlock .productsImg .links {
	width: 79.063%;
	margin: 0 auto;
	overflow: hidden;
	padding-left: 8.6111%;
}
.companySection .serviceBlock .productsImg .links a {
	display: inline-block;
	float: left;
}
.companySection .serviceBlock .productsImg .links a:nth-of-type(1) {
	width: 13.79%;
}
.companySection .serviceBlock .productsImg .links a:nth-of-type(2) {
	width: 16.111%;
	margin-left: 5%;
}
.companySection .serviceBlock .productsImg .links a:nth-of-type(3) {
	width: 17.222%;
	margin-left: 5.425%;
}
.companySection .serviceBlock .productsImg .links a:nth-of-type(4) {
	width: 12.4074%;
	margin-left: 3.555%;
}
.companySection .serviceBlock .productsImg .links a:nth-of-type(5) {
	width: 12.4074%;
	margin-left: 5.2777%;
}
.companySection .serviceBlock .productsImg img,
.companySection .serviceBlock .img img {
	width: 100%;
}
.companySection .serviceBlock .service {
	padding: 74px 10px 90px;
	max-width: 1100px;
	margin: 0 auto;
}
.companySection .serviceBlock .service ul {
	background-color: #fff;
	padding: 20px 40px;
}
.companySection .serviceBlock .service ul li {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	padding: 40px 8px;
}
.companySection .serviceBlock .service ul li + li {
	border-top: 1px solid #d7d7d7;
}
.companySection .serviceBlock .service ul li .target {
	font-size: 28px;
	font-weight: bold;
	width: 300px;
	text-align: center;
}
.companySection .serviceBlock .service ul li .target strong {
	color: #f29900;
	font-size: 36px;
	font-weight: bold;
}
.companySection .serviceBlock .service ul li .img {
	margin: 16px auto 0;
	width: 192px;
}
.companySection .serviceBlock .service ul li .products {
	flex: 1;
	font-size: 18px;
	font-weight: bold;
	position: relative;
	padding: 0 200px 0 140px;
}
.companySection .serviceBlock .service ul li .products:before {
	border-style: solid;
	border-width: 17px 0 17px 22px;
	border-color: transparent transparent transparent #005198;
	content: "";
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 36px;
	top: 50%;
}
.companySection .serviceBlock .service ul li .products .way {
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 16px;
}
.companySection .serviceBlock .service ul li .products .way strong {
	color: #005098;
	display: inline-block;
	font-size: 36px;
	font-weight: bold;
	line-height: 1.1;
}
.companySection .serviceBlock .service ul li .products .img {
	width: 192px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(0,-50%);
}

/* interview */
.interviewIndex {
	padding: 80px 0;
	position: relative;
}
.interviewIndex:before {
	background-color: #edf4f7;
	content: "";
	display: block;
	width: 100%;
	height: calc(100% - 95px);
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.interviewIndex ul {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1080px;
	margin: 0 auto;
}
.interviewIndex ul li {
	width: 486px;
}
.interviewIndex ul li a {
	background-color: #fff;
	color: #1e2021;
	display: block;
	position: relative;
	text-decoration: none;
	width: 100%;
	height: 100%;
}
.interviewIndex ul li a:after {
	background: url(../images/icn_arrow_b.svg) no-repeat center center / contain;
	content: "";
	display: block;
	width: 24px;
	height: 8px;
	position: absolute;
	right: 16px;
	bottom: 16px;
}
.interviewIndex ul li a .txt {
	padding: 32px 16px;
	text-align: center;
}
.interviewIndex ul li a .txt .title {
	color: #005098;
	background: -webkit-linear-gradient(0deg, #005098, #007599);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: 20px;
	font-weight: bold;
}
.interviewIndex ul li a .txt .person {
	margin-top: 16px;
}
.interviewIndex ul li a .txt .person .name {
	font-size: 20px;
	font-weight: bold;
}
.interviewTitle {
	position: relative;
}
.interviewTitle:before {
	background-color: #edf4f7;
	content: "";
	display: block;
	width: 620px;
	height: 800px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}
.interviewTitle .inner {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	max-width: 1186px;
	margin: 0 auto;
	position: relative;
}
.interviewTitle .txtWrap {
	background-color: #fff;
	margin-right: -280px;
	padding: 48px 32px;
	position: relative;
	width: 504px;
	z-index: 2;
}
.interviewTitle .txtWrap h1 {
	color: #005098;
	background: -webkit-linear-gradient(0deg, #005098, #007599);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	display: inline-block;
	font-size: 40px;
	font-weight: bold;
	line-height: 1.3;
}
.interviewTitle .txtWrap .person {
	margin-top: 32px;
}
.interviewTitle .txtWrap .person p + p {
	margin-top: 8px;
}
.interviewTitle .txtWrap .person .post {
	font-weight: bold;
}
.interviewTitle .txtWrap .person .name {
	font-size: 20px;
	font-weight: bold;
}
.interviewTitle .img {
	flex: 1;
	position: relative;
	z-index: 1;
}
.interviewWrap {
	margin-top: 70px;
}
.interviewWrap .interview {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: flex-start;
	max-width: 1186px;
	margin: 0 auto;
}
.interviewWrap .interview + .interview {
	margin-top: 136px;
}
.interviewWrap .interview .txtWrap {
	background-color: #fff;
	flex: 1;
	padding: 0 50px;
}
.interviewWrap .interview:nth-of-type(2n) .txtWrap {
	order: 2;
}
.interviewWrap .interview:first-of-type .img,
.interviewWrap .interview:first-of-type .txtWrap {
	padding-top: 50px;
}
.interviewWrap .interview .txtWrap h2 {
	color: #005098;
	background: -webkit-linear-gradient(0deg, #005098, #007599);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	display: inline-block;
	font-size: 28px;
	font-weight: bold;
}
.interviewWrap .interview .txtWrap p {
	margin-top: 32px;
}
.interviewWrap .interview .img {
	position: relative;
	width: 592px;
}
.interviewWrap .interview:nth-of-type(2n) .img {
	order: 1;
}
.interviewWrap .interview .img:before {
	background-color: #edf4f7;
	content: "";
	display: block;
	width: 100vw;
	height: calc(100% - 50px);
	position: absolute;
	bottom: -75px;
}
.interviewWrap .interview:nth-of-type(2n-1) .img:before {
	left: 64px;
}
.interviewWrap .interview:nth-of-type(2n) .img:before {
	right: 64px;
}
.interviewWrap .interview .img img {
	position: relative;
	z-index: 2;
}
.forStudent {
	margin-top: 160px;
	position: relative;
}
.forStudent:before {
	background: #009ac9;
	background: -moz-linear-gradient(-45deg,  #009ac9 0%, #005098 100%);
	background: -webkit-linear-gradient(-45deg,  #009ac9 0%,#005098 100%);
	background: linear-gradient(135deg,  #009ac9 0%,#005098 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#009ac9', endColorstr='#005098',GradientType=1 );
	content: "";
	display: block;
	width: 100%;
	height: calc(100% - 52px);
	position: absolute;
	left: 0;
	top: 26px;
	z-index: 1;
}
.forStudent .messageWrap {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	color: #fff;
	max-width: 1186px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.forStudent .messageWrap .txtWrap {
	flex: 1;
	padding: 50px;
}
.forStudent .messageWrap .txtWrap h2 {
	display: inline-block;
	font-size: 40px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 40px;
	position: relative;
}
.forStudent .messageWrap .txtWrap h2:after {
	background: url(../images/icn_message.svg) no-repeat center center / contain;
	content: "";
	display: block;
	width: 46px;
	height: 41px;
	position: absolute;
	left: calc(100% + 12px);
	top: -30px;
}
.forStudent .messageWrap .txtWrap p + p {
	margin-top: 32px;
}
.backToIndex {
	margin-top: 80px;
}
.backToIndex .btn {
	background-color: #005098;
	color: #fff;
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 325px;
	height: 70px;
	margin: 0 auto;
	position: relative;
	text-decoration: none;
}
.backToIndex .btn:after {
	background: url(../images/icn_arrow_w.svg) no-repeat center center / contain;
	content: "";
	display: block;
	width: 24px;
	height: 8px;
	margin-top: -4px;
	position: absolute;
	right: 16px;
	top: 50%;
}
.interviewNav {
	background-color: #fafafa;
	margin-top: 80px;
	overflow: hidden;
}
.interviewNav a {
	color: #fff;
	display: block;
	width: 50%;
	position: relative;
	text-decoration: none;
}
.interviewNav a.leftBtn {
	float: left;
}
.interviewNav a.rightBtn {
	float: right;
}
.interviewNav a:after {
	content: "";
	display: block;
	width: 24px;
	height: 8px;
	position: absolute;
	bottom: 24px;
	z-index: 3;
}
.interviewNav a.leftBtn:after {
	background: url(../images/icn_arrow_prev_w.svg) no-repeat center center / contain;
	left: 32px;
}
.interviewNav a.rightBtn:after {
	background: url(../images/icn_arrow_w.svg) no-repeat center center / contain;
	right: 32px;
}
.interviewNav a .img {
	position: relative;
	z-index: 1;
}
.interviewNav a .img img {
	width: 100%;
}
.interviewNav a .txt {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	padding-left: 50px;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 2;
}
.interviewNav a.txtR .txt {
	justify-content: flex-end;
	padding-right: 50px;
}
.interviewNav a .txt .title {
	font-size: 20px;
	font-weight: bold;
}
.interviewNav a .txt .person {
	margin-top: 16px;
}
.interviewNav a .txt .person .name {
	font-size: 20px;
	font-weight: bold;
}
.interviewNav a .txt .person .career {
	margin-top: 4px;
}

/* recruit */
.jobTypeBlock {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	justify-content: space-between;
	padding-top: 80px;
	max-width: 1180px;
	margin: 0 auto;
}
.jobTypeBlock .jobCol {
	background: #005098;
	background: -moz-linear-gradient(left,  #005098 0%, #007599 100%);
	background: -webkit-linear-gradient(left,  #005098 0%,#007599 100%);
	background: linear-gradient(to right,  #005098 0%,#007599 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#005098', endColorstr='#007599',GradientType=1 );
	padding: 10px;
	width: 573px;
}
.jobTypeBlock .jobCol ul {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}
.jobTypeBlock .jobCol ul li {
	background-color: #fff;
	padding: 32px;
	width: 100%;
}
.jobTypeBlock .jobCol ul li.jobType {
	text-align: center;
}
.jobTypeBlock .jobCol ul li.hours,
.jobTypeBlock .jobCol ul li.location {
	width: 50%;
}
.jobTypeBlock .jobCol ul li.hours {
	border-left: 1px solid #d7d7d7;
}
.jobTypeBlock .jobCol ul li + li {
	border-top: 1px solid #d7d7d7;
}
.jobTypeBlock .jobCol ul li.jobType .icon {
	height: 45px;
	margin-bottom: 10px;
}
.jobTypeBlock .jobCol ul li.jobType .icon img {
	width: auto;
	height: 100%;
}
.jobTypeBlock .jobCol ul li.jobType .txt {
	color: #005098;
	background: -webkit-linear-gradient(0deg, #005098, #007599);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: 22px;
	font-weight: bold;
}
.jobTypeBlock .jobCol ul li h3 {
	font-weight: bold;
	margin-bottom: 10px;
}
.jobTypeBlock .jobCol ul li.outline h3:before {
	background: url(../images/icn_note.svg) no-repeat 0 0 / contain;
	content: "";
	display: inline-block;
	margin-right: 8px;
	width: 16px;
	height: 18px;
	vertical-align: middle;
}
.jobTypeBlock .jobCol ul li.location h3:before {
	background: url(../images/icn_location.svg) no-repeat 0 0 / contain;
	content: "";
	display: inline-block;
	margin-right: 8px;
	width: 12px;
	height: 18px;
	vertical-align: middle;
}
.jobTypeBlock .jobCol ul li.hours h3:before {
	background: url(../images/icn_time.svg) no-repeat 0 0 / contain;
	content: "";
	display: inline-block;
	margin-right: 8px;
	width: 16px;
	height: 16px;
	vertical-align: middle;
}
.cmnOutlineBlock {
	margin-top: 80px;
	position: relative;
}
.cmnOutlineBlock:before {
	background-color: #edf4f7;
	content: "";
	display: block;
	width: 100%;
	height: calc(100% + 360px);
	position: absolute;
	left: 0;
	top: -170px;
	z-index: -1;
}
.cmnOutlineBlock .tableWrap {
	max-width: 1080px;
	margin: 0 auto;
}
.cmnOutlineBlock .tableWrap table {
	width: 100%;
}
.cmnOutlineBlock .tableWrap table tr + tr {
	border-top: 1px solid #edf4f7;
}
.cmnOutlineBlock .tableWrap table tr td,
.cmnOutlineBlock .tableWrap table tr th {
	background-color: #fff;
	padding: 32px;
}
.cmnOutlineBlock .tableWrap table tr th {
	font-weight: bold;
}
.cmnOutlineBlock .tableWrap table tr td dl {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
}
.cmnOutlineBlock .tableWrap table tr td dl dd {
	flex: 1;
	padding-left: 24px;
}
.staffMessageBlock {
	margin-top: 100px;
	position: relative;
	z-index: 3;
}
.staffMessageBlock .h2Ttl {
	margin-bottom: 10px;
}
.staffMessageBlock .messageWrap {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	max-width: 800px;
	margin: 0 auto;
}
.staffMessageBlock .messageWrap .txt {
	flex: 1;
}
.staffMessageBlock .messageWrap .txt .lead {
	color: #005098;
	background: -webkit-linear-gradient(0deg, #005098, #007599);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 24px;
}
.staffMessageBlock .messageWrap .img {
	width: 348px;
}
.methodBlock {
	margin-top: 80px;
	position: relative;
	z-index: 2;
}
.methodBlock:before {
	background-color: #edf4f7;
	content: "";
	display: block;
	width: 100%;
	height: calc(100% + 30px);
	position: absolute;
	left: 0;
	top: -110px;
	z-index: -1;
}
.methodBlock .methodList {
	background-color: #fff;
	max-width: 848px;
	margin: 0 auto;
	padding: 64px 64px 80px;
	position: relative;
}
.methodBlock .methodList:before {
	background-color: #fff;
	content: "";
	width: 100vw;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}
.methodBlock .methodList ul {
	position: relative;
	z-index: 2;
}
.methodBlock .methodList ul li {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	position: relative;
}
.methodBlock .methodList ul li + li {
	padding-top: 30px;
}
.methodBlock .methodList ul li + li:before {
	background-color: #d7dcde;
	content: "";
	display: block;
	width: 2px;
	height: 52px;
	position: absolute;
	left: 30px;
	top: -11px;
}
.methodBlock .methodList ul li + li:after {
	border-style: solid;
	border-width: 12px 9px 0 9px;
	border-color: #b2cae0 transparent transparent transparent;
	content: "";
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 290px;
	top: 10px;
}
.methodBlock .methodList ul li .step {
	height: 45px;
	margin-right: 38px;
	width: 63px;
}
.methodBlock .methodList ul li .detail {
	background-color: #005098;
	color: #fff;
	flex: 1;
	font-size: 22px;
	font-weight: bold;
	padding: 32px;
}
.methodBlock .methodList ul li.offer:before {
	display: none;
}
.methodBlock .methodList ul li.offer p {
	background-color: #f29900;
	color: #fff;
	font-size: 28px;
	font-weight: bold;
	padding: 40px;
	text-align: center;
	width: 100%;
}
.contactBlock {
	background: #007599;
	background: -moz-linear-gradient(left,  #007599 0%, #005098 100%);
	background: -webkit-linear-gradient(left,  #007599 0%,#005098 100%);
	background: linear-gradient(to right,  #007599 0%,#005098 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007599', endColorstr='#005098',GradientType=1 );
	color: #fff;
	font-size: 18px;
	margin-top: -90px;
	padding: 200px 0 100px;
	position: relative;
	text-align: center;
	z-index: 1;
}
.contactBlock .h2Ttl:after {
	background-color: #fff;
}
.contactBlock a {
	color: #fff;
	text-decoration: none;
}
.contentsWrap .backToIndex .btn{
	width: auto;
	max-width: 480px;
	padding: 0 20px;
}
.contentsWrap .backToIndex .btn span{
	padding-right: 40px;
	display: inline-block;

}

 /*==========================================================================================================
 PC Only
 ==========================================================================================================*/
@media screen and (min-width: 768px){

.menuBtn,
.spOnly {
	display: none !important;
}
#wrap {
	min-width: 1300px;
	overflow: hidden;
	width: 100%;
}

a, a img {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

/* hover */
.companySection .serviceBlock .productsImg .links a:hover,
.interviewNav a:hover,
.backToIndex .btn:hover,
.interviewIndex ul li a:hover,
.footNav ul li a:hover,
.entry:hover {
	opacity: .7;
}

.telNum {display: inline-block;pointer-events: none;}

}

/*==========================================================================================================
 SP Only
==========================================================================================================*/
@media screen and (max-width: 767px){

	.contentsWrap .aboutTbl th{
		width: 100px;
	}


.pcOnly {
	display: none !important;
}

.grid:not(.sp_grid){margin-right: 0; margin-bottom: 0;}
.grid:not(.sp_grid)>.colNum{ width: 100%; padding-right: 0; margin-bottom: 15px;}
.grid:not(.sp_grid)>.colNum:last-child{ margin-bottom: 0};

.sp_gd_0 { margin-right: -0px; margin-bottom: -0px;}.sp_gd_1 { margin-right: -1px; margin-bottom: -1px;}.sp_gd_8 { margin-right: -8px; margin-bottom: -8px;}.sp_gd_10 { margin-right: -10px; margin-bottom: -10px;}.sp_gd_15 { margin-right: -15px; margin-bottom: -15px;}.sp_gd_16 { margin-right: -16px; margin-bottom: -16px;}.sp_gd_20 { margin-right: -20px; margin-bottom: -20px;}.sp_gd_24 { margin-right: -24px; margin-bottom: -24px;}.sp_gd_25 { margin-right: -25px; margin-bottom: -25px;}.sp_gd_30 { margin-right: -30px; margin-bottom: -30px;}.sp_gd_40 { margin-right: -40px; margin-bottom: -40px;}.sp_gd_88 { margin-right: -88px; margin-bottom: -88px;}
.sp_gd_0>.colNum {margin-bottom: 0; padding-right: 0;}.sp_gd_1>.colNum {margin-bottom: 1px; padding-right: 1px;}.sp_gd_8>.colNum {margin-bottom: 8px; padding-right: 8px;}.sp_gd_10>.colNum {margin-bottom: 10px; padding-right: 10px;}.sp_gd_15>.colNum {margin-bottom: 15px; padding-right: 15px;}.sp_gd_16>.colNum {margin-bottom: 16px; padding-right: 16px;}.sp_gd_20>.colNum {margin-bottom: 20px; padding-right: 20px;}.sp_gd_24>.colNum {margin-bottom: 24px; padding-right: 24px;}.sp_gd_25>.colNum {margin-bottom: 25px; padding-right: 25px;}.sp_gd_30>.colNum {margin-bottom: 30px; padding-right: 30px;}.sp_gd_40>.colNum {margin-bottom: 40px; padding-right: 40px;}.sp_gd_88>.colNum {margin-bottom: 88px; padding-right: 88px;}
.sp_grid.border.sp_gd_8 { margin-right: -4px; margin-left: -4px; margin-bottom: -8px;}.sp_grid.border.sp_gd_10 { margin-right: -5px; margin-left: -5px; margin-bottom: -10px;}.sp_grid.border.sp_gd_15 { margin-right: -7px; margin-left: -7px; margin-bottom: -15px;}.sp_grid.border.sp_gd_20 { margin-right: -10px; margin-left: -10px; margin-bottom: -20px;}.sp_grid.border.sp_gd_25 { margin-right: -12px; margin-left: -12px; margin-bottom: -25px;}.sp_grid.border.sp_gd_30 { margin-right: -15px; margin-left: -15px; margin-bottom: -30px;}.sp_grid.border.sp_gd_40 { margin-right: -20px; margin-left: -20px; margin-bottom: -40px;}
.sp_grid.border.sp_gd_10>.colNum {margin-bottom: 10px; padding-right: 5px; padding-left: 5px; }.sp_grid.border.sp_gd_10>.colNum {margin-bottom: 10px; padding-right: 5px; padding-left: 5px; }.sp_grid.border.sp_gd_15>.colNum {margin-bottom: 15px; padding-right: 7px; padding-left: 7px; }.sp_grid.border.sp_gd_16>.colNum {margin-bottom: 16px; padding-right: 8px; padding-left: 8px; }.sp_grid.border.sp_gd_20>.colNum {margin-bottom: 20px; padding-right: 10px; padding-left: 10px; }.sp_grid.border.sp_gd_24>.colNum {margin-bottom: 24px; padding-right: 12px; padding-left: 12px; }.sp_grid.border.sp_gd_25>.colNum {margin-bottom: 25px; padding-right: 12px; padding-left: 12px; }.sp_grid.border.sp_gd_30>.colNum {margin-bottom: 30px; padding-right: 15px; padding-left: 15px; }.sp_grid.border.sp_gd_40>.colNum {margin-bottom: 40px; padding-right: 20px; padding-left: 20px; }
.sp_col_1_1 { width: 100%; }.sp_col_2_3,.sp_col_8_12 { width: 66.66%; }.sp_col_1_2,.sp_col_6_12 { width: 50%; }.sp_col_1_3,.sp_col_4_12 { width: 33.33%; }.sp_col_1_4,.sp_col_3_12 { width: 25%; }.sp_col_1_5 { width: 20%; }.sp_col_1_6,.sp_col_2_12 { width: 16.667%; }.sp_col_1_7 { width: 14.28%; }.sp_col_1_8 { width: 12.5%; }.sp_col_1_9 { width: 11.1%; }.sp_col_1_10 { width: 10%; }.sp_col_1_11 { width: 9.09%; }.sp_col_1_12 { width: 8.33%; }.sp_col_11_12 { width: 91.66%; }.sp_col_10_12 { width: 83.333%; }.sp_col_9_12 { width: 75%; }.sp_col_5_12 { width: 41.66%; }.sp_col_7_12 { width: 58.33%; }
.sp_dBlock { display: block!important; }
.sp_w5p{ width: 5%!important;}.sp_w8p{ width: 8%!important;}.sp_w10p{ width: 10%!important;}.sp_w11p{ width: 11%!important;}.sp_w12p{ width: 12%!important;}.sp_w15p{ width: 15%!important;}.sp_w16p{ width: 16%!important;}.sp_w18p{ width: 18%!important;}.sp_w20p{ width: 20%!important;}.sp_w22p{ width: 22%!important;}.sp_w25p{ width: 25%!important;}.sp_w30p{ width: 30%!important;}.sp_w35p{ width: 35%!important;}.sp_w40p{ width: 40%!important;}.sp_w45p{ width: 45%!important;}.sp_w50p{ width: 50%!important;}.sp_w55p{ width: 55%!important;}.sp_w60p{ width: 60%!important;}.sp_w65p{ width: 65%!important;}.sp_w70p{ width: 70%!important;}.sp_w75p{ width: 75%!important;}.sp_w80p{ width: 80%!important;}.sp_w85p{ width: 85%!important;}.sp_w90p{ width: 90%!important;}.sp_w95p{ width: 95%!important;}.sp_w100p{ width: 100%!important;}
.sp_wmax{ width: 100%!important; height: auto!important; max-width: inherit;}.sp_wAuto{ width: auto !important; }
.sp_layoutC{ text-align: center; }.sp_layoutR{ text-align: right; }.sp_layoutL{ text-align: left; }
.sp_fz10{ font-size: 62.5% !important; }.sp_fz11{ font-size: 68.75% !important; }.sp_fz12{ font-size: 75% !important; }.sp_fz14{ font-size: 87.5% !important; }.sp_fz16{ font-size: 100% !important; }.sp_fz18{ font-size: 112.5% !important; }.sp_fz20{ font-size: 125% !important; }.sp_fz22{ font-size: 137.5% !important; }.sp_fz24{ font-size: 150% !important; }.sp_fz26{ font-size: 162.5% !important; }.sp_fz28{ font-size: 175% !important; }.sp_fz30{ font-size: 187.5% !important; }.sp_fz32{ font-size: 200% !important; }.sp_fz34{ font-size: 212.5% !important; }.sp_fz36{ font-size: 225% !important; }.sp_fz38{ font-size: 237.5% !important; }.sp_fz40{ font-size: 250% !important; }.sp_fz42{ font-size: 262.5% !important; }.sp_fz44{ font-size: 275% !important; }.sp_fz46{ font-size: 287.5% !important; }.sp_fz48{ font-size: 300% !important; }

body:before {
	height: 360px;
}
body.top:before {
	height: 512px;
}
/* header */
#header {
	z-index: 10;
}
#header .logo {
	padding-left: 8px;
	position: relative;
	z-index: 2;
}
#header .logo img + img {
	margin-left: 8px;
}
#header .logo img {
	height: auto;
	height: 20px;
}
#header .headLink {
	background-color: #005098;
	display: none;
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
	z-index: 1;
}
#header .headLink ul li {
	display: block;
	margin-right: 0;
}
#header .headLink ul li + li {
	border-top: 1px solid #fff;
}
#header .headLink ul li a {
	color: #fff;
	display: block;
	font-size: 16px;
	padding: 16px 24px;
}
.menuBtn {
	background-color: #005098;
	display: block;
	width: 48px;
	height: 48px;
	position: relative;
	z-index: 2;
}
#header .headLink .entry {
	font-size: 16px;
	width: 100%;
	height: 64px;
}
#header .headLink .entry:after {
	bottom: 50%;
	margin-top: 4px;
}
#header .headLink .entry br {
	display: none;
}
.menuBtn span:after,
.menuBtn span:before,
.menuBtn span,
.menuBtn:after,
.menuBtn:before {
	background-color: #fff;
	content: "";
	display: block;
	width: 16px;
	height: 1px;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.menuBtn span:before {
	transform: translate(0,-6px);
}
.menuBtn span:after {
	transform: translate(0,6px);
}
.menuBtn.opened span {
	opacity: 0;
}
.menuBtn.opened:before {
	transform: rotate(45deg);
}
.menuBtn.opened:after {
	transform: rotate(-45deg);
}

/* footer */
.footNav {
	padding: 64px 10px 64px;
}
.footNav ul li {
	width: calc((100% - 20px) / 3);
}
.footNav ul li + li {
	margin-left: 10px;
}
.footNav ul li a {
	border: 2px solid #d7dcde;
	width: 100%;
	height: 80px;
}
.footNav ul li a:after {
	width: 12px;
	height: 4px;
	right: 8px;
	bottom: 8px;
}
.footNav ul li a .icon {
	height: 24px;
}
.footNav ul li a .title {
	font-size: 12px;
	margin-top: 10px;
}
#footer {
	display: block;
}
#footer .home {
	text-align: center;
}
#footer .right {
	margin-top: 24px;
	text-align: center;
}
#footer .right .link {
	text-align: center;
}

/* contents */
.pageTitle .jp {
	font-size: 32px;
}
.h2Ttl {
	font-size: 24px;
	margin-bottom: 32px;
}

/* top */
.mainvisual .scroll {
	padding-top: 24px;
	font-size: 12px;
}
.mainvisual .scroll:before {
	height: 24px;
	top: -8px;
}
.messageSection {
	padding: 32px 10px 0;
}
.titleWrap {
	margin-bottom: 24px;
}
.titleWrap h2 .en {
	margin-bottom: 8px;
}
.titleWrap h2 .jp {
	font-size: 24px;
}
.messageSection .messageWrap {
	display: block;
}
.messageSection .messageWrap .message .catch {
	font-size: 16px;
	padding-bottom: 10px;
}
.messageSection .messageWrap .message p + p {
	margin-top: 24px;
}
.messageSection .messageWrap .message .catch + p {
	margin-top: 16px;
}
.messageSection .messageWrap .message .signature .name {
	font-size: 18px;
}
.messageSection .messageWrap .img {
	margin: 16px 0 0;
	width: 100%;
	text-align: center;
}
.messageSection .messageWrap .img img {
	max-width: 212px;
}
.visionSection {
	padding: 32 10px 0;
}
.visionSection .visionWrap {
	display: block;
}
.visionSection .visionWrap .img {
	margin-top: 16px;
	position: relative;
	width: 100%;
}
.visionSection .visionWrap .vision {
	width: 100%;
	margin-top: 16px;
	padding: 0 10px;
}
.visionSection .visionWrap .vision .block {
	padding-left: 0;
}
.visionSection .visionWrap .vision .block + .block {
	margin-top: 16px;
}
.visionSection .visionWrap .vision .block h3 {
	margin-bottom: 8px;
}
.visionSection .visionWrap .vision .block h3 .jp {
	font-size: 18px;
}

/* company */
.companySection {
	padding: 64px 10px 0;
}
.companySection .companyCatch {
	font-size: 24px;
}
.companySection .lead {
	font-size: 18px;
	margin: 16px 0 8px;
}
.companySection .serviceBlock {
	margin: 24px -10px 0;
	position: relative;
	width: calc(100% + 20px);
}
.companySection .serviceBlock > .productsImg {
	display: none;
}
.companySection .serviceBlock .service {
	padding: 32px 10px 24px;
}
.companySection .serviceBlock .service ul {
	padding: 10px;
}
.companySection .serviceBlock .service ul li {
	display: block;
	padding: 16px 8px;
}
.companySection .serviceBlock .service ul li .target {
	display: -webkit-box;
	display:-ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	width: 100%;
}
.companySection .serviceBlock .service ul li .target > p {
	order: 2;
	margin-left: 8px;
}
.companySection .serviceBlock .service ul li .target strong {
	font-size: 24px;
}
.companySection .serviceBlock .service ul li .img {
	order: 1;
	width: 96px;
	margin: 0;
}
.companySection .serviceBlock .service ul li .products {
	font-size: 16px;
	padding: 32px 0 0;
}
.companySection .serviceBlock .service ul li .products:before {
	border-width: 16px 10px 0 10px;
	border-color: #005198 transparent transparent transparent;
	left: 50%;
	top: 8px;
}
.companySection .serviceBlock .service ul li .products .way {
	font-size: 20px;
	margin-bottom: 8px;
}
.companySection .serviceBlock .service ul li .products .way strong {
	font-size: 24px;
}
.companySection .serviceBlock .service ul li .products .img {
	width: 96px;
	margin: 8px auto 0;
	position: static;
	transform: translate(0,0);
}

/* interview */
.interviewIndex {
	padding: 32px 10px;
}
.interviewIndex:before {
	height: calc(100% - 160px);
}
.interviewIndex ul {
	display: block;
}
.interviewIndex ul li {
    margin-bottom: 40px;
	width: 100%;
}
.interviewIndex ul li + li {
	margin-top: 16px;
}
.interviewIndex ul li a {
	height: auto;
}
.interviewIndex ul li a .img img {
	width: 100%;
}
.interviewIndex ul li a .txt {
	padding: 16px;
}
.interviewIndex ul li a .txt .title {
	font-size: 18px;
}
.interviewIndex ul li a .txt .person {
	margin-top: 10px;
}
.interviewIndex ul li a .txt .person .name {
	font-size: 18px;
}
.interviewTitle {	
	padding-top: 32px;
}
.interviewTitle:before {
	width: 50%;
	height: 320px;
}
.interviewTitle .inner {
	display: block;
}
.interviewTitle .txtWrap {
	margin: 0 16px -32px;
	padding: 16px;
	position: relative;
	width: calc(100% - 32px);
}
.interviewTitle .txtWrap h1 {
	font-size: 24px;
}
.interviewTitle .txtWrap .person {
	margin-top: 16px;
}
.interviewTitle .img {
	position: relative;
	z-index: 1;
}
.interviewWrap {
	margin-top: 24px;
	overflow-x: hidden;
	width: 100%;
}
.interviewWrap .interview {
	display: block;
	padding: 0 10px;
}
.interviewWrap .interview + .interview {
	margin-top: 24px;
}
.interviewWrap .interview .txtWrap {
	padding: 0;
}
.interviewWrap .interview:first-of-type .img,
.interviewWrap .interview:first-of-type .txtWrap {
	padding-top: 0;
}
.interviewWrap .interview .txtWrap h2 {
	font-size: 20px;
}
.interviewWrap .interview .txtWrap p {
	margin-top: 16px;
}
.interviewWrap .interview .img {
	width: 100%;
	margin-top: 16px;
	padding-bottom: 24px;
}
.interviewWrap .interview .img:before {
	height: calc(100% - 32px);
	bottom: 0;
}
.interviewWrap .interview .img img {
	width: 100%;
}
.forStudent {
	margin-top: 48px;
}
.forStudent:before {
	height: 100%;
	top: 0;
}
.forStudent .messageWrap {
	display: block;
	padding: 24px 10px;
}
.forStudent .messageWrap .txtWrap {
	padding: 0;
	text-align: center;
}
.forStudent .messageWrap .txtWrap h2 {
	font-size: 24px;
	margin-bottom: 24px;
}
.forStudent .messageWrap .txtWrap h2:after {
	width: 23px;
	height: 21px;
	left: calc(100% + 8px);
	top: -10px;
}
.forStudent .messageWrap .txtWrap p {
	text-align: left;
}
.forStudent .messageWrap .txtWrap p + p {
	margin-top: 16px;
}
.forStudent .messageWrap .img {
	margin-top: 16px;
	text-align: center;
}
.forStudent .messageWrap .img img {
	width: 100%;
}
.backToIndex {
	margin-top: 32px;
}
.backToIndex .btn {
	width: 100%;
}
.interviewNav {
	margin-top: 24px;
}
.interviewNav a {
	width: 100%;
	overflow: hidden;
}
.interviewNav a.interview01 {
	background: url(../images/btn_intervew01.png) no-repeat center center / cover;
}
.interviewNav a.interview02 {
	background: url(../images/btn_intervew02.png) no-repeat center center / cover;
}
.interviewNav a:after {
	bottom: 8px;
}
.interviewNav a.leftBtn:after {
	left: 8px;
}
.interviewNav a.rightBtn:after {
	right: 8px;
}
.interviewNav a .img {
	display: none;
}
.interviewNav a.txtR .txt,
.interviewNav a .txt {
	padding: 24px 10px;
	position: relative;
}
.interviewNav a .txt .person .name,
.interviewNav a .txt .title {
	font-size: 16px;
}
.interviewNav a .txt .person {
	margin-top: 4px;
}

/* recruit */
.jobTypeBlock {
	display: block;
	padding: 32px 10px 0;
}
.jobTypeBlock .jobCol {
	width: 100%;
}
.jobTypeBlock .jobCol + .jobCol {
	margin-top: 16px;
}
.jobTypeBlock .jobCol ul li {
	padding: 10px;
}
.jobTypeBlock .jobCol ul li.jobType .icon {
	margin-bottom: 8px;
}
.jobTypeBlock .jobCol ul li.jobType .txt {
	font-size: 18px;
}
.jobTypeBlock .jobCol ul li h3 {
	margin-bottom: 8px;
}
.cmnOutlineBlock {
	margin-top: 32px;
	padding: 0 10px;
}
.cmnOutlineBlock:before {
	height: calc(100% + 32px);
	top: -16px;
}
.cmnOutlineBlock .tableWrap table {
	display: block;
}
.cmnOutlineBlock .tableWrap table tr td,
.cmnOutlineBlock .tableWrap table tr th,
.cmnOutlineBlock .tableWrap table tr {
	display: block;
	width: 100%;
}
.cmnOutlineBlock .tableWrap table tr th {
	padding: 10px 16px 0;
}
.cmnOutlineBlock .tableWrap table tr td {
	padding: 8px 16px 10px;
}
.cmnOutlineBlock .tableWrap table tr td dl {
	display: block;
}
.cmnOutlineBlock .tableWrap table tr td dl dt {
	text-align: center;
}
.cmnOutlineBlock .tableWrap table tr td dl dd {
	padding: 8px 0 0;
}
.staffMessageBlock {
	margin-top: 32px;
	padding: 0 10px;
}
.staffMessageBlock .h2Ttl {
	margin-bottom: 32px;
}
.staffMessageBlock .messageWrap {
	display: block;
}
.staffMessageBlock .messageWrap .txt .lead {
	font-size: 18px;
	margin-bottom: 16px;
}
.staffMessageBlock .messageWrap .img {
	margin-top: 16px;
	text-align: center;
	width: 100%;
}
.staffMessageBlock .messageWrap .img img {
	max-width: 174px;
}
.methodBlock {
	margin-top: 32px;
}
.methodBlock:before {
	height: calc(100% + 48px);
	top: -48px;
}
.methodBlock .methodList {
	padding: 16px 10px 24px;
}
.methodBlock .methodList:before {
	display: none;
}
.methodBlock .methodList ul li + li:before {
	height: 24px;
	left: 20px;
	top: 3px;
}
.methodBlock .methodList ul li + li:after {
	left: 100px;
}
.methodBlock .methodList ul li .step {
	height: 30px;
	margin-right: 10px;
	width: 42px;
}
.methodBlock .methodList ul li .detail {
	font-size: 16px;
	padding: 10px;
}
.methodBlock .methodList ul li.offer p {
	font-size: 24px;
	padding: 24px;
}
.contactBlock {
	margin-top: 0;
	padding: 32px 10px;
}
.contentsWrap .aboutTbl tr,
.contentsWrap .aboutTbl td,
.contentsWrap .aboutTbl th{
	display: block;
	padding: 0;
	width: 100%;
}
.contentsWrap .aboutTbl th{
	border: none;
	padding-bottom: 10px;
	border-bottom: 1px solid #ddd;
	margin-bottom: 10px;
	margin-top: 20px;
	text-align: left;
}
.contentsWrap .aboutTbl tr:first-of-type th{
	margin-top: 0;

}


.contentsWrap .aboutTbl{
	width: 100%;
}


}

@media screen and (max-width: 360px){
.footNav ul li a .title {
	font-size: 10px;
}

}
