@charset "utf-8";

/* ========================================================================================

Name: design.css

Description: Base Design And Common Settings

Update: 2020.03.13

======================================================================================== */

/* fonts
-------------------------------------------------- */
@import url('https://fonts.googleapis.com/css?family=Roboto:400,500&display=swap');
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500&display=swap&subset=japanese');
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP:400,500,600&display=swap&subset=japanese');


/* 全体共通
-------------------------------------------------- */
html {
	height:100%;
}

body {
	font-family:"Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Helvetica, Arial, sans-serif;
	/*font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;*/
	-webkit-text-size-adjust:100%;
	font-size:15px;
	font-weight:400;
	line-height:2em;
	color: #333333;
	text-align:center;
	height:100%;
	position:relative;
	overflow-x: hidden;
}
a {
	color: #333333;
	overflow: hidden;
	outline: none;
	text-decoration:none;
	transition:all ease-out 0.15s;
}

a:hover {
	color:#01a1df;
	text-decoration: none;
	transition:all ease-out 0.15s;
	transition: 0.10s cubic-bezier(0.19, 1, 0.22, 1);
}

a:hover img {
	opacity:0.8;
	transition: 0.10s cubic-bezier(0.19, 1, 0.22, 1);
}

*:hover {
	transition: 0.10s cubic-bezier(0.19, 1, 0.22, 1);
}

.link_txt a {
	color: #cc0000;
	overflow: hidden;
	outline: none;
	text-decoration:underline;
}

.link_txt a:hover {
	color: #cc0000;
	text-decoration:none;
}

.clearfix:after {
	content: "."; display: block; clear: both; height: 0; line-height: 0; font-size: 0; visibility: hidden;
}

.clearfix {
	_height: 1px; min-height: 1px;
	*zoom: 1;
}

* html .clearfix {
	height: 1%;
	display: inline-block;
}

.rollover:hover{
	opacity:0.7;
	filter: alpha(opacity=70);
}

/* IE8以下でレイアウトが大崩れしないように */
header,
footer,
main,
article,
section,
aside {
	display:block;
}

.pc_only { display:block !important;}
.sp_only { display:none !important;}
.pc_only_inline { display:inline !important;}
.sp_only_inline { display:none !important;}

.js-sp-only { display:none; box-sizing:border-box; }

.loader {
	position:fixed;
	width:100%;
	height:100%;
	background-color:#fff;
	z-index:3000;
	left:0;
	top:0;
}
.loader .loader-inner {
	position:absolute;
	width:100px;
	height:30px;
	left:0;
	right:0;
	top:0;
	bottom:0;
	margin:auto;
}
.ball-pulse-sync>div, .ball-pulse>div, .ball-scale-random>div, .ball-scale>div {
    background-color: #01a1df;
    border-radius: 100%;
    margin: 2px;
    display: inline-block;
	opacity:0.6;
}

.font-roboto {
	font-family: 'Roboto', sans-serif;
}

.font-Noto-Serif {
	font-family: 'Noto Serif JP', serif;
}

.getting-ready {
	font-size:20px;
	text-align:center;
	margin:50px 0 0;
	padding:120px 0 180px;
	background-color:#eee;
	border-radius:10px;
}

.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}


@media screen and (min-width: 768px){
	
	a[href*="tel:"] {
		display:inline-block;
		line-height:1.33em;
		pointer-events: none;
		color:#333 !important;
		text-decoration:none !important;
		margin-bottom:-3px;
	}
	
}

@media screen and (min-width: 768px){
	
	
	/* 画像マウスオン時に画像拡大（img）
	-------------------------------------------------- */
	
	.pct_zoom ,
	.pct_zoom .photo ,
	.pct_zoom .hover-line-area {
		overflow:hidden;
	}
	
	.pct_zoom img {
		-moz-transition: -moz-transform 0.3s ease-out;
		-webkit-transition: -webkit-transform 0.3s ease-out;
		-o-transition: -o-transform 0.3s ease-out;
		-ms-transition: -ms-transform 0.3s ease-out;
		transition: transform 0.3s ease-out;
	}
	.pct_zoom:hover img ,
	.pct_zoom img:hover {
		opacity:1;
		-webkit-transform: scale(1.15);
		-moz-transform: scale(1.15);
		-o-transform: scale(1.15);
		-ms-transform: scale(1.15);
		transform: scale(1.15);
		transition: transform 0.3s ease-out;
	}
	
	
	/* 画像マウスオン時にLineアニメーション
	-------------------------------------------------- */

	.hover-line-animation ,
	.hover-line-animation .hover-line-area ,
	.hover-line-animation .hover-line-area > span.parts-line {
		position:relative;
		display:block;
		box-sizing:border-box;
	}

	.hover-line-animation .hover-line-area::before ,
	.hover-line-animation .hover-line-area::after ,
	.hover-line-animation .hover-line-area > span.parts-line::before ,
	.hover-line-animation .hover-line-area > span.parts-line::after {
		position:absolute;
		content:"";
		display:block;
		background-color:#01a1df;
		z-index:1;
	}

	.hover-line-animation .hover-line-area::before {
		left:0;
		top:0;
		height:2px;
		width:0%;
		transition: width 300ms;
	}
	
	.hover-line-animation .hover-line-area::after {
		left:0;
		top:0;
		height:0%;
		width:2px;
		transition: height 300ms;
	}
	
	.hover-line-animation:hover .hover-line-area::before {
		width:100%;
	}
	
	.hover-line-animation:hover .hover-line-area::after {
		height:100%;
	}
	
	.hover-line-animation .hover-line-area > span.parts-line::before {
		right:0;
		bottom:0;
		height:2px;
		width:0%;
		transition: width 300ms;
	}
	
	.hover-line-animation .hover-line-area > span.parts-line::after {
		right:0;
		bottom:0;
		height:0%;
		width:2px;
		transition: height 300ms;
	}
	
	.hover-line-animation:hover .hover-line-area > span.parts-line::before {
		width:100%;
	}
	
	.hover-line-animation:hover .hover-line-area > span.parts-line::after {
		height:100%;
	}

	.hover-line-animation {
		overflow:visible;
	}
	.no-photo .hover-line-animation .hover-line-area::before {
		top:-1px;
	}
	.no-photo .hover-line-animation .hover-line-area::after {
		left:-1px;
	}
	.no-photo .hover-line-animation .hover-line-area > span.parts-line::before {
		bottom:-1px;
	}
	.no-photo .hover-line-animation .hover-line-area > span.parts-line::after {
		right:-1px;
	}
	
	
}


/* ページ表示のフェード効果
-------------------------------------------------- */

.fade {
	opacity: 0;
}

.ready .fade {
    opacity: 0;
	/*
    -webkit-transform: translateY(40px);
	-moz-transform: translateY(40px);
	-ms-transform: translateY(40px);
	
	-webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
	-moz-transition: opacity 1s ease, -moz-transform 1s ease;
	-ms-transition: opacity 1s ease, -ms-transform 1s ease;
	
	transform: translateY(20px);
    */
	transition: opacity 1.5s ease, transform 1s ease;
    
}
.ready .fade.delay {
    transition-delay: 0.4s;
}
.ready .fade.delay2 {
    transition-delay: 0.8s;
}

.ready .fade-end {
	opacity: 1;
	/*
    -webkit-transform: translateY(0px);
	-moz-transform: translateY(0px);
	-ms-transform: translateY(0px);
	transform: translateY(0px);
    */
}

.slideInLeft {
    opacity: 0;
}
.ready .slideInLeft {
    transform: translateX(-50px);
    transition: opacity 0.52s ease, transform 1s ease;
    transition-delay: 0.5s;
}
.ready .slideInLeft-end {
    opacity: 1;
    transform: translateX(0px);
}

.slideInRight {
    opacity: 0;
}
.ready .slideInRight {
    transform: translateX(50px);
    transition: opacity 0.52s ease, transform 1s ease;
    transition-delay: 0.5s;
}
.ready .slideInRight-end {
    opacity: 1;
    transform: translateX(0px);
}

.slideInUp {
    opacity: 0;
}
.ready .slideInUp {
    transform: translateY(-50px);
    transition: opacity 0.5s ease, transform 1s ease;
}
.ready .slideInUp-end {
    opacity: 1;
    transform: translateY(0px);
}

.slideInDown {
    opacity: 0;
}
.ready .slideInDown {
    transform: translateY(-50px);
    transition: opacity 1s ease, transform 1s ease;
	transition-delay: opacity 0.5
}
.ready .slideInDown-end {
    opacity: 1;
    transform: translateY(0px);
}


/* ========================================================================================

 SmartPhone
 
======================================================================================== */
@media screen and (max-width: 767px){
	
	html {
		height:100%;
	}
	
	body {
		-webkit-text-size-adjust:100%;
		font-size:13px;
		line-height:2em;
		height:100%;
		position:relative;
	}
	
	header {
		width:100%;
		height:57px;
		position:relative;
		overflow:visible;
		z-index:1000;
	}
	
	.pc_only { display:none !important;}
	.sp_only { display:block !important;}
	.pc_only_inline { display:none !important;}
	.sp_only_inline { display:inline !important;}

	.js-sp-only { display:block; }

}




/* HEADER
-------------------------------------------------- */

header#page-header {
	width:auto;
	height:100px;
	position:fixed;
	margin: auto;
	left:0;
	right:0;
	top:0;
	z-index:101;
}

header#page-header > .inner {
	width:auto;
	height:100px;
	background-color:#FFF;
}

#logo-header {
	position:absolute;
	width:220px;
	height:46px;
	left:52px;
	top:27px;
	z-index:102;
}
#logo-header a {
	display:block;
}

.scrolled  #page-header {
	top:0;
	opacity:1;
	box-shadow:0px 4px 12px -6px #ddd;
}


/* >> header sns 
--------------------------------------*/
#global-button-sns {
	position: absolute;
    display: flex;
    justify-content: flex-end;
	width: 340px;
	right: 153px;
	top: 14px;
	font-size: 0;
	transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	z-index: 200;
	text-align: right;
}
#global-button-sns ul {
	display: inline-block;
    display: flex;
}
#global-button-sns ul.btn_language {
	margin-right: 29px;
}
#global-button-sns ul li {
	display: inline-block;
	font-size: 18px;
	line-height: 1.3em;
	margin: 0 9px;
}
#global-button-sns ul li a {
	color: #11283B;
}
#global-button-sns ul li a img {
    width: 26px;
    height: auto;
    border: 1px #ddd solid;
    border-radius: 4px;
    overflow: hidden;
}
li.icon-x a img {
    width: 24px;
    height: auto;
    border: none;
    border-radius: 4px;
    overflow: hidden;
}
#global-button-sns ul.btn-social li a:hover {
	color: #01a1df;
}
#global-button-sns ul.btn_language a {
	font-size: 13px;
}
#global-button-sns ul.btn_language li.active, #global-button-sns ul.btn_language li:hover {
	border-bottom: 1px solid #11283B;
}

/* >> header button 
--------------------------------------*/
body:not(#page-home) #header-button-network {
	display:none;
}
body:not(#page-home) #header-button-sns {
	display:none;
}

#header-button-area {
	position:fixed;
	width:100px;
	height:100px;
	right:0;
	top:0;
	font-size:0;
	z-index:202;
}
#header-button-area ul li {
	position:absolute;
	display:inline-block;
	width:100px;
	height:100px;
	font-size:11px;
	line-height:1em;
	color:#FFFFFF;
}
#header-button-area ul li:hover {
	cursor:pointer;
}

#header-button-area ul li.btn-menu {
	background-color:#12283b;
	transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	right:0;
	top:0;
}
#header-button-area ul li.btn-menu .txt-menu {
	display:inline-block;
	transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
#header-button-area ul li.btn-menu .txt-close {
	display:none;
	transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}

body.menu-open #header-button-area ul li.btn-menu {
	background-color:#fff;
}
body.menu-open #header-button-area ul li.btn-menu .txt-menu {
	display:none;
}
body.menu-open #header-button-area ul li.btn-menu .txt-close {
	display:inline-block;
	color:#12293c;
}

#header-button-area ul li > div {
	position:absolute;
	width:30px;
	height:30px;
	left:50%;
	top:30px;
	margin-left:-13px;
}
#header-button-area ul li > p {
	padding:70px 5px 0;
}

#header-button-area li.btn-menu  div span {
	position:absolute;
	display:block;
	width:26px;
	height:3px;
	border-radius: 1.5px;
	background-color:#FFFFFF;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}

#header-button-area li.btn-menu  div span:nth-child(1) {
	top:4px;
}
#header-button-area li.btn-menu  div span:nth-child(2) {
	top:13px;
}
#header-button-area li.btn-menu  div span:nth-child(3) {
	bottom:5px;
}

@media screen and (min-width: 768px){
	
	#header-button-area li.btn-menu:hover  div span:nth-child(1) {
		top:0;
	}
	#header-button-area li.btn-menu:hover  div span:nth-child(3) {
		bottom:0;
	}
}

body.menu-open #header-button-area li.btn-menu  div span:nth-child(1) {
	top:13px;
	background-color:#12293c;
	transform:rotate(25deg);
}
body.menu-open #header-button-area li.btn-menu  div span:nth-child(2) {
	opacity: 0;
}
body.menu-open #header-button-area li.btn-menu  div span:nth-child(3) {
	bottom:14px;
	background-color:#12293c;
	transform:rotate(-25deg);
}


@media screen and (max-width: 767px){
	
	/* HEADER
	-------------------------------------------------- */
	header#page-header {
		width:auto;
		height:50px;
		position:fixed;
		margin: auto;
		left:0;
		right:0;
		top:0;
		z-index:101;
	}
	
	header#page-header > .inner {
		width:auto;
		height:70px;
		background-color:#FFF;
	}
	
	#logo-header {
		position:absolute;
		width:140px;
		height:29px;
		left:13px;
		top:19px;
		z-index:102;
	}
	#logo-header a {
		display:block;
	}
	#logo-header img {
		width:100%;
		height:auto;
	}
	
	/* >> header button 
	--------------------------------------*/
	body:not(#page-home) #header-button-network {
		display:none;
	}
	body:not(#page-home) #header-button-sns {
		display:none;
	}
	
	#header-button-area {
		position:fixed;
		width:50px;
		height:50px;
		right:0;
		top:0;
		font-size:0;
		z-index:202;
	}
	#header-button-area ul li {
		position:absolute;
		display:inline-block;
		width:70px;
		height:70px;
		font-size:11px;
		line-height:1em;
		color:#FFFFFF;
	}
	#header-button-area ul li:hover {
		cursor:pointer;
	}
	
	#header-button-area ul li.btn-menu {
		background-color:#12283b;
		transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
		right:0;
		top:0;
	}
	#header-button-area ul li.btn-menu .txt-menu {
		display:inline-block;
		transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	}
	#header-button-area ul li.btn-menu .txt-close {
		display:none;
		transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	}
	
	body.menu-open #header-button-area ul li.btn-menu {
		background-color:#fff;
	}
	body.menu-open #header-button-area ul li.btn-menu .txt-menu {
		display:none;
	}
	body.menu-open #header-button-area ul li.btn-menu .txt-close {
		display:inline-block;
		color:#12293c;
	}
	
	#header-button-area ul li > div {
		position:absolute;
		width:27px;
		height:22px;
		left:50%;
		top:18px;
		margin-left:-13px;
	}
	#header-button-area ul li > p {
		padding:45px 5px 0;
	}
	
	#header-button-area li.btn-menu  div span {
		position:absolute;
		display:block;
		width:27px;
		height:2px;
		background-color:#FFFFFF;
		transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	}
	
	#header-button-area li.btn-menu  div span:nth-child(1) {
		top:4px;
	}
	#header-button-area li.btn-menu  div span:nth-child(2) {
		top:18px;
	}
	#header-button-area li.btn-menu  div span:nth-child(3) {
		bottom:9px;
	}
	
	body.menu-open #header-button-area li.btn-menu  div span:nth-child(1) {
		top:9px;
		background-color:#12293c;
		transform:rotate(25deg);
	}
	body.menu-open #header-button-area li.btn-menu  div span:nth-child(3) {
		bottom: 11px;
		background-color:#12293c;
		transform:rotate(-25deg);
	}


	#global-button-sns {
		top: 24px;
		width: auto;
		right: 88px;
	}
	#global-button-sns ul.btn_language {
    margin-right: 0;
	}
	#global-button-sns ul.btn-social {
		display: none;
	}
	#global-button-sns ul li {
		font-size: 14px;
		margin: 0 5px;
		line-height: 1.6em;
	}

	
}


/* >> Global Navigation 
--------------------------------------*/

#global-navi {
	text-align:right;
	padding:0 145px 0 0;
	position:relative;
	box-sizing: border-box;
	/*
	display:none;
	*/
}

#global-navi > ul {
	vertical-align:top;
	height:100px;
}

#global-navi > ul > li {
	display:inline-table;
	height:55px;
	margin:45px 10px 0;
	vertical-align:top;
}

#global-navi > ul > li.navi-home {
	display:none;
}

#global-navi > ul > li > a {
	position:relative;
	display:table-cell;
	vertical-align:middle;
	font-family: 'Roboto', "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	font-size:15px;
	font-weight:500;
	line-height:1em;
	padding:0 5px;
}

#global-navi > ul > li:hover > a:after {
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	width:0;
	height:5px;
	background-color:#01a1df;
	transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}

#global-navi > ul > li.open:hover > a:after {
	width:100%;
}

#global-navi .sub-navi {
	/*display:none;*/
	position:absolute;
	top:100px;
	left:0;
	right:0;
	height:0;
	text-align:center;
	background-color:#01a1df;
	z-index:1;
	transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	overflow:hidden;
}

#global-navi > ul > li.open .sub-navi {
	height:60px;
}

#global-navi .sub-navi li {
	display:inline-table;
	height:60px;
}
#global-navi .sub-navi li+li {
	margin-left:20px;
}

#global-navi .sub-navi a {
	display:table-cell;
	vertical-align:middle;
	color:#fff;
	font-size:15px;
	font-weight:500;
	line-height:1.33em;
	padding:0 5px;
}

/* Global Navigation 現在ページ */
.ctg-vision #global-navi li.navi-vision > a:after,
.ctg-innovation #global-navi li.navi-vision > a:after,
.ctg-network #global-navi li.navi-network > a:after,
.ctg-company #global-navi li.navi-company > a:after,
.ctg-recruit #global-navi li.navi-recruit > a:after,
.ctg-news #global-navi li.navi-news > a:after,
.ctg-recruit_news #global-navi li.navi-news > a:after {
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	width:100%;
	height:5px;
	background-color:#01a1df;
}

#global-navi .navi-vision .sub-navi li:nth-child(1) ,
#global-navi .navi-company .sub-navi li:nth-child(1) ,
#global-navi .navi-recruit .sub-navi li:nth-child(1) {
	/*display:none;*/
}

#global-navi a[target="blank"],
#global-navi a[target="_blank"] {
	/*
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
	*/
}

#global-navi a[target="blank"]:after,
#global-navi a[target="_blank"]:after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
    content: "\f35d";
	margin-left:8px;
	text-decoration:none !important;
	font-size:12px;
	vertical-align:text-top;
	vertical-align:text-bottom;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	
	#global-navi {
		display:none;
	}

	#global-button-sns {
		top: 35px;
	}
	
}

@media screen and (max-width: 767px){
	
	#global-navi {
		display:none;
	}
	
	#global-navi > ul {
	}
	
	#global-navi > ul > li {
		display:inline-table;
		height:100px;
		margin:0 10px;
	}
	
	#global-navi > ul > li > a {
		position:relative;
		display:table-cell;
		vertical-align:middle;
		font-family: 'Roboto', sans-serif;
		font-size:17px;
		font-weight:400;
		line-height:1em;
		padding:0 5px;
	}
	
	#global-navi > ul > li:hover > a:after {
		content:"";
		position:absolute;
		left:0;
		right:0;
		bottom:0;
		margin:auto;
		width:0;
		height:5px;
		background-color:#01a1df;
		transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	}
	
	#global-navi > ul > li.open:hover > a:after {
		width:100%;
	}
	
	#global-navi .sub-navi {
		/*display:none;*/
		position:absolute;
		top:100px;
		left:0;
		right:0;
		height:0;
		text-align:center;
		background-color:#01a1df;
		z-index:1;
		transition: 0.3s cubic-bezier(0.19, 1, 0.22, 1);
		overflow:hidden;
	}
	
	#global-navi > ul > li.open .sub-navi {
		height:60px;
	}
	
	#global-navi .sub-navi li {
		display:inline-table;
		height:60px;
	}
	#global-navi .sub-navi li+li {
		margin-left:40px;
	}
	
	#global-navi .sub-navi a {
		display:table-cell;
		vertical-align:middle;
		color:#fff;
		font-size:15px;
		font-weight:500;
		line-height:1.33em;
	}
	
	/* Global Navigation 現在ページ */
	.ctg-vision #global-navi li.navi-vision > a:after,
	.ctg-innovation #global-navi li.navi-innovation > a:after,
	.ctg-network #global-navi li.navi-network > a:after,
	.ctg-company #global-navi li.navi-company > a:after,
	.ctg-recruit #global-navi li.navi-recruit > a:after,
	.ctg-news #global-navi li.navi-news > a:after,
	.ctg-recruit_news #global-navi li.navi-news > a:after {
		content:"";
		position:absolute;
		left:0;
		right:0;
		bottom:0;
		margin:auto;
		width:100%;
		height:5px;
		background-color:#01a1df;
	}
	
	#global-navi .navi-vision .sub-navi li:nth-child(1) ,
	#global-navi .navi-company .sub-navi li:nth-child(1) ,
	#global-navi .navi-recruit .sub-navi li:nth-child(1) {
		display:none;
	}
	
	#global-navi a[target="blank"],
	#global-navi a[target="_blank"] {
		/*
		-moz-osx-font-smoothing: grayscale;
		-webkit-font-smoothing: antialiased;
		display: inline-block;
		font-style: normal;
		font-variant: normal;
		text-rendering: auto;
		line-height: 1;
		*/
	}
	
	#global-navi a[target="blank"]:after,
	#global-navi a[target="_blank"]:after {
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		content: "\f35d";
		margin-left:8px;
		text-decoration:none !important;
		font-size:12px;
		vertical-align:text-top;
		vertical-align:text-bottom;
	}
	
}



/* >> Sub Navigation in Category 
--------------------------------------*/

#page-contents nav.sub-navi {
	border:1px #ddd solid;
	margin-top:70px;
	padding: 25px 10px 15px;
}

#page-contents nav.sub-navi ul {
	text-align:center;
}

#page-contents nav.sub-navi li {
	display:inline-block;
	vertical-align:top;
}

#page-contents nav.sub-navi a {
	color:#01a1df;
	display:block;
	padding:0 20px;
	font-weight:400;
	line-height:1.33em;
	text-decoration:underline;
}
#page-contents nav.sub-navi li + li a {
	border-left: 1px #ddd solid;
}



/* >> ページヘッダーまわり 
--------------------------------------*/

/* Page Title Area - Index */

#page-heading {
	background-position: center top;
	/*background-color:#ccc;*/
	color:#fff;
	width:100%;
}

#page-heading.index-page {
	height:450px;
}

#page-heading .inner {
	width:100%;
	max-width:1080px;
	height:100%;
	margin:auto;
	display:table;
	position:relative;
	z-index:2;
}

#page-heading .inner .page-title {
	display:table-cell;
	vertical-align:middle;
}

#page-heading h1 {
	display:inline-block;
	margin-top:-15px;
}

#page-heading h1 span {
	display:block;
}

#page-heading h1 .ttl_eng {
	font-family: 'Roboto', sans-serif;
	font-size:20px;
	font-weight:500;
	line-height:1em;
}

#page-heading h1 .ttl_jpn {
	font-size:48px;
	font-weight:500;
	line-height:1em;
	padding:0 0 20px;
}

#page-heading.lower-page h1 {
	margin-top:10px;
}

#page-heading.lower-page.lower01 {
	height:450px;
}
#page-heading.lower-page.lower02 {
	height:220px;
}

#page-heading.lower-page h1 .ttl_jpn {
	font-size:35px;
	font-weight:500;
	line-height:1em;
	padding:0 0 25px;
}
#page-heading.lower-page h1 .ttl_eng {
	font-family: 'Roboto', sans-serif;
	font-size:15px;
	font-weight:500;
	line-height:1em;
	padding:0;
}


/* Page Title Area - Message */

#page-heading.message {
	height:600px;
}

#page-company-message #page-heading {
	background-image:url(../img/company/message/pct_main.jpg);
}

.ctg-company #page-heading.message h1 {
	display:inline-block;
	margin-top:-100px;
	text-align:left;
	width:100%;
}

#page-heading.message h1 {
	display:inline-block;
	margin-top:-50px;
	text-align:left;
	width:100%;
}

.ctg-company #page-heading.message h1 .ttl_jpn {
	font-size:28px;
	font-weight:500;
	position:relative;
	padding:0 0 25px 120px;
}

#page-heading.message h1 .ttl_jpn {
	font-size:28px;
	font-weight:500;
	position:relative;
	padding:0 0 25px;
}

#page-heading.message h1 .ttl_jpn:after {
	display:block;
	position:absolute;
	left:120px;
	bottom:0;
	content:"";
	width:60px;
	height:1px;
	background-color:#FFF;
}

/*
#page-heading.message h1 .ttl_catch {
	font-size:70px;
	line-height:1em;
	font-family: 'Noto Serif JP', serif;
	font-weight:500;
	text-indent:-45px;
	margin:40px 0 0;
}
*/

#page-heading.message h1 .ttl_sign {
	padding:80px 0 0 120px;
	text-align:left;
}
#page-heading.message h1 .ttl_sign img {
	display:block;
	margin-top:10px;
}


/* Page Title Area - Vision Index */

#page-vision-index #page-heading {
  height: 600px;
	background-image:url(../img/vision/index/pct_main.jpg);
  background-repeat: repeat;
  background-size: cover;
  background-position: center center;
}

/* Page Title Area - Vision medical_system */

#page-vision-medical #page-heading {
	background-image:url(../img/vision/medical_system/pct_main.jpg);
}
/* Page Title Area - Vision regional_care */

#page-vision-regional #page-heading {
	background-image:url(../img/vision/regional_care/pct_main.jpg);
}
/* Page Title Area - Vision dialysis */

#page-vision-dialysis #page-heading {
	background-image:url(../img/vision/dialysis/pct_main.jpg);
}

.ctg-vision .lower-page .page-title h1 {
    width: 253px;
    height: 218px;
    background-image:url(../img/vision/pct_main_title.png);
    color:#01a1df;
}

#page-vision-medical #page-heading.lower-page h1 .ttl_eng {
    margin-top: 50px;
}
.ctg-vision #page-heading.lower-page h1 .ttl_eng {
    color: #333;
    font-size: 22px;
    line-height: 1.33em;
    font-family: 'Roboto', sans-serif;
    margin-top: 30px;
}
.ctg-vision #page-heading.lower-page h1 .ttl_number {
    font-size: 28px;
    line-height: 1.33em;
    font-family: 'Roboto', sans-serif;
    margin-top: 10px;
}
.ctg-vision #page-heading.lower-page h1 .ttl_jpn {
    font-size: 28px;
    line-height: 1.33em;
}


/* Page Title Area - Innovation */

.ctg-innovation #page-heading {
	background:none;
	height:auto;
	padding:110px 0 60px;
}

.ctg-innovation #page-heading h1 .ttl_eng {
	font-family: 'Roboto', sans-serif;
	font-size:26px;
	font-weight:500;
	line-height:1em;
}

.ctg-innovation #page-heading h1 .ttl_jpn {
	font-size:48px;
	line-height:1em;
	padding:0 0 20px;
}

.ctg-innovation #page-heading p {
	font-size:18px;
	line-height:2em;
	margin-top:50px;
}


/* Page Title Area - Network */

.ctg-network #page-heading {
	height:220px;
	background:none;
}

.ctg-network #page-heading h1 {
	display:inline-block;
	margin-top:20px;
	color:#333;
}
.ctg-network #page-heading h1 .ttl_eng {
	font-family: 'Roboto', sans-serif;
	font-size:20px;
	font-weight:500;
	line-height:1em;
	padding:0;
}
.ctg-network #page-heading h1 .ttl_jpn {
	font-size:48px;
	font-weight:500;
	line-height:1em;
	padding:10px 0 15px;
}


/* Page Title Area - News */

.ctg-news #page-heading {
	height:220px;
	background-image:url(../img/news/pct_category.jpg);
}

.ctg-news #page-heading h1,
.ctg-recruit_news #page-heading h1 {
	display:inline-block;
	margin-top:10px;
}

.ctg-news #page-heading h1 .ttl_jpn,
.ctg-recruit_news #page-heading h1 .ttl_jpn {
	font-size:35px;
	font-weight:500;
	line-height:1em;
	padding:0 0 25px;
}
.ctg-news #page-heading h1 .ttl_eng,
.ctg-recruit_news #page-heading h1 .ttl_eng {
	font-family: 'Roboto', sans-serif;
	font-size:15px;
	font-weight:500;
	line-height:1em;
	padding:0;
}


/* Page Title Area - Recruit News */

.ctg-recruit_news #page-heading {
	height:220px;
	background-image:url(../img/recruit_news/pct_category.jpg);
}



/* Page Title Area - Company */

#page-company-index #page-heading {
	background-image:url(../img/company/pct_main.jpg);
}

.ctg-company #page-heading {
	background-image:url(../img/company/pct_category.jpg);
}




/* Page Title Area - contact */

#page-contact-index #page-heading {
	background-image:url(../img/contact/pct_main.jpg);
}

.ctg-contact #page-heading {
	background-image:url(../img/contact/pct_category.jpg);
}




/* Page Title Area - Recruit Message */

#page-heading.message.recruit-message {
	height:450px;
	color:#333;
}

#page-recruit-message #page-heading {
	background-image:url(../img/recruit/message/pct_main.jpg);
}
#page-heading.message.recruit-message h1 .ttl_jpn:after {
	background-color:#01a1df;
    left: 0;
}
#page-heading.message.recruit-message h1 .ttl_catch {
	font-family:"Times New Roman", Times, serif;
	font-size:100px;
    line-height: 1em;
	text-indent:0;
	margin:30px 0 0;
}

#page-heading.message.recruit-message h1 .ttl_lead {
	padding:25px 440px 0 0;
	font-size:28px;
	font-weight:600;
	line-height:1.67em;
}




/* Page Title Area - Recruit Index */
#page-recruit-index #page-heading {
	background-image:url(../img/recruit/pct_main.jpg);
	background:none;
}
#page-recruit-index #page-heading .recruit-bg-photo .photo1 {
	background:url(../img/recruit/pct_main01.jpg) no-repeat center top;
	background-size: auto 100%;
	background-size:cover;
}
#page-recruit-index #page-heading .recruit-bg-photo .photo2 {
	background:url(../img/recruit/pct_main02.jpg) no-repeat center top;
	background-size: auto 100%;
	background-size:cover;
}
#page-recruit-index #page-heading .recruit-bg-photo .photo3 {
	background:url(../img/recruit/pct_main03.jpg) no-repeat right top;
	background-size: auto 100%;
	background-size:cover;
}
#page-recruit-index #page-heading .recruit-bg-photo .photo4 {
	background:url(../img/recruit/pct_main04.jpg) no-repeat center top;
	background-size: auto 100%;
	background-size:cover;
}



/* Page Title Area - Recruit General Index */

#page-recruit-general #page-heading {
	background-image:url(../img/recruit/general/index/pct_main.jpg);
}

/* Page Title Area - Recruit Welfare */

#page-recruit-welfare #page-heading {
	background-image:url(../img/recruit/general/welfare/pct_main.jpg);
}



/* Page Title Area - privacy */

.ctg-privacy #page-heading {
	height:220px;
	background-image:url(../img/privacy/pct_category.jpg);
}

.ctg-privacy #page-heading h1 {
	display:inline-block;
	margin-top:-5px;
}

.ctg-privacy #page-heading h1 .ttl_jpn{
	font-size:35px;
	font-weight:500;
	line-height:1em;
	padding:0 0 20px;
}
.ctg-privacy #page-heading h1 .ttl_eng {
	font-family: 'Roboto', sans-serif;
	font-size:15px;
	font-weight:500;
	line-height:1em;
	padding:0;
}





/* Page Title Area - Interview */

#page-heading.interview-page {
	height:600px;
	color:#fff;
	text-align:left;
}

#page-heading.interview01 {
	background-image:url(../img/recruit/general/interview01/pct_main.jpg);
}
#page-heading.interview02 {
	background-image:url(../img/recruit/general/interview02/pct_main.jpg);
}
#page-heading.interview03 {
	background-image:url(../img/recruit/general/interview03/pct_main.jpg);
}
#page-heading.interview04 {
	background-image:url(../img/recruit/general/interview04/pct_main.jpg);
}
#page-heading.interview05 {
	background-image:url(../img/recruit/general/interview05/pct_main.jpg);
}
#page-heading.interview06 {
	background-image:url(../img/recruit/general/interview06/pct_main.jpg);
}
#page-heading.interview07 {
	background-image:url(../img/recruit/general/interview07/pct_main.jpg);
}
#page-heading.interview08 {
	background-image:url(../img/recruit/general/interview08/pct_main.jpg);
}
#page-heading.interview09 {
	background-image:url(../img/recruit/general/interview09/pct_main.jpg);
}
#page-heading.interview10 {
	background-image:url(../img/recruit/general/interview10/pct_main.jpg);
}

.interview03 h1,
.interview05 h1,
.interview06 h1,
.interview07 h1,
.interview08 h1,
.interview09 h1,
.interview10 h1 {
	margin-left:50%;
	color:#333;
}

#page-heading.interview-page h1 .ttl_eng {
	padding:0 0 10px;
}
#page-heading.interview-page h1 .ttl_catch {
	font-family:"Times New Roman", Times, serif;
	font-size:100px;
	text-indent:0;
	margin:30px 0 0;
}

#page-heading.interview-page h1 .ttl_jpn {
	font-size:18px;
	font-weight:500;
	line-height:1em;
}

.staff-profile {
	box-sizing:border-box;
	width:50%;
	margin-top:40px;
	padding:30px 30px 30px 40px;
	background: linear-gradient( 90deg, rgba(1, 161, 223, 0.85), rgba(80, 209, 241, 0.85));
}
.interview03 .staff-profile,
.interview05 .staff-profile,
.interview06 .staff-profile,
.interview07 .staff-profile,
.interview08 .staff-profile,
.interview09 .staff-profile,
.interview10 .staff-profile {
	margin-left:50%;
}

.staff-profile h2 {
	font-family: 'Noto Serif JP', serif;
	font-size:55px;
	line-height:1.3em;
}
.interview04 .staff-profile h2 {
	font-size:44px;
	line-height:1.67em;
	letter-spacing:-0.03em;
}
.interview05 .staff-profile h2 {
	font-size:52px;
	line-height:1.3em;
}

.staff-profile dl {
	margin:22px 0 0;
	line-height:1.67em;
}

.staff-profile dt {
	padding-bottom:13px;
}

#page-recruit-requirements #page-heading,
#page-recruit-requirements #page-heading,
#page-recruit-requirements #page-heading {
	background-image:url(../img/recruit/general/requirements/pct_main.jpg);
}

@media all and (min-width: 768px) and (max-width: 1024px) {
    
    .interview03 .staff-profile,
    .interview05 .staff-profile,
    .interview06 .staff-profile,
    .interview07 .staff-profile,
    .interview08 .staff-profile,
    .interview09 .staff-profile,
    .interview10 .staff-profile {
        margin-left:45%;
    }

    .staff-profile h2 {
        font-family: 'Noto Serif JP', serif;
        font-size:36px;
        line-height:1.3em;
    }
    .interview04 .staff-profile h2 {
        font-size:36px;
        line-height:1.67em;
        letter-spacing:-0.03em;
    }
    .interview05 .staff-profile h2 {
        font-size:36px;
        line-height:1.3em;
    }
}


/* パンくず */

#pankuzu {
	box-sizing:border-box;
	width:100%;
	margin:5px 0 0;
}

#pankuzu ul {
	box-sizing:border-box;
	max-width:1080px;
	margin:auto;
	text-align:left;
}

#pankuzu ul li {
	display:inline-block;
	text-align:left;
	font-size:12px;
	line-height:1.33em;
}

#pankuzu ul li+li {
	margin-left:4px;
}

#pankuzu ul li+li:before {
	content:"/";
	display:inline-block;
	margin-right:8px;
}

#pankuzu ul li a {
	color:#666666;
}


@media screen and (min-width: 768px) and (max-width: 1023px) {
	
	#pankuzu {
		box-sizing:border-box;
		width:100%;
		margin:5px 20px 0;
	}
	
}


@media screen and (max-width: 767px){
	
	/* Page Title Area - Index */
	
	#page-heading {
		background-position: center top;
		/*background-color:#ccc;*/
		color:#fff;
		width:100%;
		background-size: auto 100%;
	}
	
	#page-heading.index-page {
		height:157px;
	}
	
	#page-heading .inner {
		width:100%;
		max-width:1080px;
		height:100%;
		margin:auto;
		display:table;
		position:relative;
		z-index:2;
	}
	
	#page-heading .inner .page-title {
		display:table-cell;
		vertical-align:middle;
	}
	
	#page-heading h1 {
		display:inline-block;
		margin-top:-5px;
	}
	
	#page-heading h1 span {
		display:block;
	}
	
	#page-heading h1 .ttl_eng {
		font-family: 'Roboto', sans-serif;
		font-size:15px;
		font-weight:500;
		line-height:1em;
	}
	
	#page-heading h1 .ttl_jpn {
		font-size:24px;
		line-height:1em;
		padding:0 0 10px;
	}
	
	#page-heading.lower-page h1 {
		margin-top:0;
	}
	
	#page-heading.lower-page.lower01 {
		height:157px;
	}
	#page-heading.lower-page.lower02 {
		height:110px;
	}
	
	#page-heading.lower-page h1 .ttl_jpn {
		font-size:20px;
		font-weight:500;
		line-height:1em;
		padding:0 0 10px;
	}

    #page-heading.lower-page h1 .ttl_eng {
		font-family: 'Roboto', sans-serif;
		font-size:13px;
		font-weight:500;
		line-height:1em;
		padding:0;
	}
	
	
	/* Page Title Area - Message */
	
	#page-heading.message {
		height:210px;
	}
	
	#page-company-message #page-heading {
		background-image:url(../img/company/message/pct_main.jpg);
	}
	
	#page-heading.message h1 {
		display:inline-block;
		margin-top:-20px;
		text-align:left;
		width:100%;
		box-sizing:border-box;
		padding:0 20px 0 10px;
	}
	
	#page-heading.message h1 .ttl_jpn {
		font-size:14px;
		font-weight:500;
		position:relative;
		padding:0 0 10px;
		margin:20px 0 0 20px;
	}

    .ctg-company #page-heading.message h1 .ttl_jpn {
        font-size:14px;
		font-weight:500;
		position:relative;
		padding:0 0 10px;
		margin:20px 0 0 20px;
    }
    
    #page-heading.message h1 .ttl_jpn:after {
		display:block;
		position:absolute;
		left:0;
		bottom:0;
		content:"";
		width:40px;
		height:1px;
		background-color:#FFF;
	}
	
	/*
	#page-heading.message h1 .ttl_catch {
		font-size:26px;
		line-height:1em;
		font-family: 'Noto Serif JP', serif;
		font-weight:500;
		text-indent:0;
		margin:10px 0 20px -10px;
	}
	*/
	
	#page-heading.message h1 .ttl_sign {
		padding:30px 0 0 20px;
		text-align:left;
		font-size:10px;
	}
	
	#page-heading.message h1 .ttl_sign img {
		width:82px;
		height:auto;
		margin-top:0;
	}
	
	/* Page Title Area - Vision Index */
	
	#page-vision-index #page-heading {
		height: 210px;
		background-image:url(../img/vision/index/pct_main.jpg);
		background-size: cover;
	}
	
	/* Page Title Area - Vision medical_system */
	
	#page-vision-medical #page-heading {
		background-image:url(../img/vision/medical_system/pct_main.jpg);
	}
	/* Page Title Area - Vision regional_care */
	
	#page-vision-regional #page-heading {
		background-image:url(../img/vision/regional_care/pct_main.jpg);
	}
	/* Page Title Area - Vision dialysis */
	
	#page-vision-dialysis #page-heading {
		background-image:url(../img/vision/dialysis/pct_main.jpg);
	}
	
	.ctg-vision .lower-page .page-title h1 {
		width: 253px;
		height: 218px;
		width: 127px;
		height: 109px;
		background:url(../img/vision/pct_main_title.png) center center;
		background-size: auto 100%;
		color:#01a1df;
		margin-top:20px;
	}
	
	#page-vision-medical #page-heading.lower-page h1 .ttl_eng {
		margin-top: 30px;
	}
	.ctg-vision #page-heading.lower-page h1 .ttl_eng {
		color: #333;
		font-size: 14px;
		line-height: 1.33em;
		font-family: 'Roboto', sans-serif;
		margin-top: 20px;
	}
	.ctg-vision #page-heading.lower-page h1 .ttl_number {
		font-size: 16px;
		line-height: 1.33em;
		font-family: 'Roboto', sans-serif;
		margin-top: 0px;
	}
	.ctg-vision #page-heading.lower-page h1 .ttl_jpn {
		font-size: 14px;
		line-height: 1.33em;
	}
	
	
	/* Page Title Area - Innovation */
	
	.ctg-innovation #page-heading {
		background:none;
		height:auto;
		padding:70px 20px 30px;
		box-sizing:border-box;
	}
	
	.ctg-innovation #page-heading h1 .ttl_eng {
		font-family: 'Roboto', sans-serif;
		font-size:16px;
		font-weight:500;
		line-height:1em;
	}
	
	.ctg-innovation #page-heading h1 .ttl_jpn {
		font-size:24px;
		line-height:1em;
		padding:0 0 10px;
	}
	
	.ctg-innovation #page-heading p {
		font-size:13px;
		line-height:2em;
		margin-top:30px;
		text-align:left;
	}
	
	
	/* Page Title Area - Network */
	
	.ctg-network #page-heading {
		height:110px;
		background:none;
	}
	
	.ctg-network #page-heading h1 {
		display:inline-block;
		margin-top:0;
		color:#333;
	}
	.ctg-network #page-heading h1 .ttl_eng {
		font-family: 'Roboto', sans-serif;
		font-size:16px;
		font-weight:500;
		line-height:1em;
		padding:0;
	}
	.ctg-network #page-heading h1 .ttl_jpn {
		font-size:24px;
		font-weight:500;
		line-height:1em;
		padding:10px 0 10px;
	}
	
	
	/* Page Title Area - News */
	
	.ctg-news #page-heading {
		height:110px;
		background-image:url(../img/news/pct_category.jpg);
		background-size: auto 100%;
	}
	
	.ctg-news #page-heading h1,
	.ctg-recruit_news #page-heading h1 {
		display:inline-block;
		margin-top:0;
	}
	
	.ctg-news #page-heading h1 .ttl_jpn,
	.ctg-recruit_news #page-heading h1 .ttl_jpn {
		font-size:20px;
		font-weight:500;
		line-height:1em;
		padding:0 0 10px;
	}
	.ctg-news #page-heading h1 .ttl_eng,
	.ctg-recruit_news #page-heading h1 .ttl_eng {
		font-family: 'Roboto', sans-serif;
		font-size:10px;
		font-weight:500;
		line-height:1em;
		padding:0;
	}
	
	
	/* Page Title Area - Recruit News */
	
	.ctg-recruit_news #page-heading {
		height:110px;
		background-image:url(../img/recruit_news/pct_category.jpg);
		background-size: auto 100%;
	}
	
	
	
	/* Page Title Area - Company */
	
	#page-company-index #page-heading {
		background-image:url(../img/company/pct_main.jpg);
	}
	
	.ctg-company #page-heading {
		background-image:url(../img/company/pct_category.jpg);
		background-size: auto 100%;
	}
	
	
	
	
	/* Page Title Area - contact */
	
	#page-contact-index #page-heading {
		background-image:url(../img/contact/pct_main.jpg);
	}
	
	.ctg-contact #page-heading {
		background-image:url(../img/contact/pct_category.jpg);
	}
	
	
	
	
	/* Page Title Area - Recruit Message */
	
	#page-heading.message.recruit-message {
		height:210px;
		color:#333;
	}
	
	#page-recruit-message #page-heading {
		background-image:url(../img/recruit/message/pct_main.jpg);
		background-size: auto 100%;
	}
	#page-heading.message.recruit-message h1 .ttl_jpn:after {
		background-color:#01a1df;
	}
	#page-heading.message.recruit-message h1 .ttl_catch {
		font-family:"Times New Roman", Times, serif;
		font-size:30px;
		text-indent:0;
		margin:10px 0 0 10px;
	}
	
	#page-heading.message.recruit-message h1 .ttl_lead {
		padding:15px 0 0 10px;
		font-size:15px;
		font-weight:600;
		line-height:1.67em;
	}
	
	
	
	
	/* Page Title Area - Recruit Index */
	#page-recruit-index #page-heading {
		background-image:url(../img/recruit/pct_main.jpg);
		background-size: auto 100%;
	}
	
	
	
	
	/* Page Title Area - Recruit General Index */
	
	#page-recruit-general #page-heading {
		background-image:url(../img/recruit/general/index/pct_main.jpg);
		background-size: auto 100%;
	}
	
	/* Page Title Area - Recruit Welfare */
	
	#page-recruit-welfare #page-heading {
		background-image:url(../img/recruit/general/welfare/pct_main.jpg);
		background-size: auto 100%;
	}
	
	
	
	/* Page Title Area - privacy */
	
	.ctg-privacy #page-heading {
		height:110px;
		background-image:url(../img/privacy/pct_category.jpg);
        background-size: auto;
	}
	
	.ctg-privacy #page-heading h1 {
		display:inline-block;
		margin-top:0;
	}
	
	.ctg-privacy #page-heading h1 .ttl_jpn{
		font-size:20px;
		font-weight:500;
		line-height:1em;
		padding:0 0 10px;
	}
	.ctg-privacy #page-heading h1 .ttl_eng {
		font-family: 'Roboto', sans-serif;
		font-size:13px;
		font-weight:500;
		line-height:1em;
		padding:0;
	}
	
	
	/* Page Title Area - Interview */
	
	#page-heading.interview-page {
		height:210px;
		color:#fff;
		text-align:left;
		padding:0 20px;
	}
	
	#page-heading.interview-page {
	}
	
	#page-heading.interview01 {
		background-image:url(../img/recruit/general/interview01/pct_main.jpg);
		background-size: auto 100%;
	}
	#page-heading.interview02 {
		background-image:url(../img/recruit/general/interview02/pct_main.jpg);
		background-size: auto 100%;
	}
	#page-heading.interview03 {
		background-image:url(../img/recruit/general/interview03/pct_main.jpg);
		background-size: auto 100%;
	}
	#page-heading.interview04 {
		background-image:url(../img/recruit/general/interview04/pct_main.jpg);
		background-size: auto 100%;
	}
	#page-heading.interview05 {
		background-image:url(../img/recruit/general/interview05/pct_main.jpg);
		background-size: auto 100%;
	}
	
	.interview03 h1,
	.interview05 h1,
	.interview06 h1,
	.interview07 h1,
	.interview08 h1,
    .interview09 h1 {
		margin-left:40% !important;
		color:#333;
	}
	
	#page-heading.interview-page h1 {
		margin:0;
	}
	
	#page-heading.interview-page h1 .ttl_eng {
		padding:0 0 5px;
		font-size:24px;
	}
	#page-heading.interview-page h1 .ttl_catch {
		font-family:"Times New Roman", Times, serif;
		font-size:100px;
		text-indent:0;
		margin:30px 0 0;
	}
	
	#page-heading.interview-page h1 .ttl_jpn {
		font-size:10px;
		font-weight:500;
		line-height:1em;
	}
	
	.staff-profile {
		box-sizing:border-box;
		width:57%;
		margin-top:10px;
		padding:10px 12px 10px 12px;
		background: linear-gradient( 90deg, rgba(1, 161, 223, 0.85), rgba(80, 209, 241, 0.85));
	}
	.interview03 .staff-profile,
	.interview05 .staff-profile, 
	.interview06 .staff-profile,
	.interview07 .staff-profile,
	.interview08 .staff-profile,
    .interview09 .staff-profile,
    .interview10 .staff-profile {
		margin-left:40%;
		width:50%;
	}
    
    .interview09 .staff-profile {
		margin-top:0px;
	}
	
	.staff-profile h2 {
		font-family: 'Noto Serif JP', serif;
		font-size:16px;
		line-height:1.3em;
	}
	.interview04 .staff-profile h2 {
		font-size:15px;
		line-height:1.3em;
		letter-spacing:-0.04em;
	}
	.interview05 .staff-profile h2 {
		font-size:16px;
		line-height:1.3em;
	}
	
	.staff-profile dl {
		margin:5px 0 0;
		font-size:10px;
		line-height:1.33em;
	}
	
	.staff-profile dt {
		padding-bottom:5px;
	}
	
	.staff-profile dt img {
		width:91px;
		height:auto;
	}
	
	#page-recruit-requirements #page-heading,
	#page-recruit-requirements #page-heading,
	#page-recruit-requirements #page-heading {
		background-image:url(../img/recruit/general/requirements/pct_main.jpg);
	}
	
	
	
	
	/* パンくず */
	
	#pankuzu {
		box-sizing:border-box;
		width:100%;
		margin:5px 0 0;
		padding:0 10px;
	}
	
	#pankuzu ul {
		box-sizing:border-box;
		max-width:1080px;
		margin:auto;
		text-align:left;
        line-height: 1.33em;
	}
	
	#pankuzu ul li {
		display:inline;
		text-align:left;
		font-size:10px;
		line-height:1.1em;
	}
	
	#pankuzu ul li+li {
		margin-left:4px;
	}
	
	#pankuzu ul li+li:before {
		content:"/";
		display:inline-block;
		margin-right:8px;
	}
	
	#pankuzu ul li a {
		color:#666666;
	}
	
}


/* FOOTER
-------------------------------------------------- */

footer {
	position: relative;
	color:#fff;
	background:url(../img/common/bg_footer.jpg) no-repeat center top;
	background-color:#12283b;
}
footer::after {
	content: "";
	position: absolute;
	top: -2px;
	left: 0;
	width: 100%;
	height: calc(44 / 1280 * 100vw);
	background: url(../img/home/footer_bg_top.svg) center bottom / 100% no-repeat;
}
footer a {
	color:#fff;
}
footer > .inner {
	width:auto;
	max-width:1080px;
	margin:auto;
	text-align:left;
	padding:57px 0 25px;
}

#logo-footer {
	width:20.37%;
	font-size:13px;
	line-height:1.85em;
	float:left;
}
#logo-footer .logo {
	padding:0 24px 0 10px;
}
#logo-footer .info {
	padding:20px 0 0 10px;
}

#logo-footer .btn-social {
	text-align:left;
	padding:25px 0 0 10px;
}
#logo-footer .btn-social li {
	display:inline-block;
	margin:0 5px;
}
#logo-footer .btn-social a {
	display:block;
	width:28px;
	height:28px;
	border-radius:14px;
	background-color:#fff;
	color:#12283b;
	font-size:18px;
	line-height:1.5em;
	text-align:center;
}
#logo-footer .btn-social a:hover {
	background-color:#000;
	color:#fff;
}
#logo-footer .btn-social .icon-x a:hover {
	opacity: 0.7;
	background-color:#fff;
	color:#fff;
}


#footer-navi {
	width:74.07%;
	float:right;
	padding:15px 0 0;
	font-size:13px;
	line-height:1.33em;
}
#footer-navi nav > ul > li {
	float:left;
}
#footer-navi nav > ul > li:nth-child(1) {
	width:25%;
}
#footer-navi nav > ul > li:nth-child(2) {
	width:27%;
}
#footer-navi nav > ul > li:nth-child(3) {
	width:27%;
}
#footer-navi nav > ul > li:nth-child(4) {
	width:21%;
}

#footer-navi nav > ul > li > ul {
	margin-bottom:30px;
}
#footer-navi nav > ul > li > ul > li {
	padding:7px 0 7px 15px;
	position:relative;
}
#footer-navi nav > ul > li > ul > li i {
	color:#4ac1eb;
	font-size:11px;
	display:inline-block;
	margin-left:5px;
}
#footer-navi nav > ul > li > ul > li:first-child {
	font-family: 'Roboto', "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	font-weight:500;
	font-size:17px;
	line-height:1.33em;
}
#footer-navi nav > ul > li > ul > li a:before ,
#footer-navi nav > ul > li > ul > li span:before {
	position:absolute;
	left:0;
	/*top:50%;*/
    top: 18px;
	display:inline-block;
	content:"";
	width:10px;
	height:1px;
	background-color:#4ac1eb;
	margin:-1px;
}

#footer-navi-other {
	clear:both;
	padding:30px 0 0;
}

#footer-navi-other .inner {
	position:relative;
    box-sizing: border-box;
	background-color:#0d1e2c;
	margin:0 4px;
    padding: 5px 55px 5px 0;
	font-size:13px;
	line-height:1.33em;
	/*height:50px;*/
    min-height: 50px;
}

#footer-navi-other nav li {
	display:inline-table;
	position:relative;
	padding:0 0 0 15px;
	margin:0 15px 0 20px;
	/*height:50px;*/
}

#footer-navi-other nav li a {
	display:table-cell;
	vertical-align:middle;
    display: block;
    padding: 10px 0;
}

#footer-navi-other nav li a:before {
	position:absolute;
	left:0;
	top:50%;
	display:inline-block;
	content:"";
	width:10px;
	height:1px;
	background-color:#4ac1eb;
	margin:-1px;
}

#footer-navi-other p {
	position:absolute;
	height:1.5em;
	right:70px;
	top:0;
	bottom:0;
	margin:auto;
	padding:0;
}
#footer-navi-other p small {
	font-size:12px;
}

#footer-navi-other #btn-pagetop {
	position:absolute;
	width:50px;
	height:50px;
	right:0;
	top:0;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}

#footer-navi-other #btn-pagetop:hover {
	opacity:0.8;
}

footer .copyright {
    text-align: center;
    margin-top: 20px;
}


@media screen and (min-width: 768px) and (max-width: 1023px) {
	
	footer {
		box-sizing:border-box;
		padding:0 20px;
	}

}

@media screen and (max-width: 767px){
	
	footer {
		color:#fff;
		background:none;
		background-color:#12283b;
	}
	footer::after {
		height: calc(44 / 375 * 100vw);
		background: url(../img/home/footer_bg_top_sp.svg) center bottom / 100% no-repeat;	
	}
	footer a {
		color:#fff;
	}
	footer > .inner {
		width:auto;
		max-width:1080px;
		margin:auto;
		text-align:left;
		padding:calc(44 / 375 * 100vw) 0 20px;
	}
	
	#logo-footer {
		width:auto;
		font-size:10px;
		line-height:1.85em;
		float:none;
		text-align:center;
	}
	#logo-footer .logo {
		width:132px;
		padding:0;
		margin:0 auto;
	}
	#logo-footer .info {
		padding:20px 0 0 0;
	}
	
	#logo-footer .btn-social {
		text-align:center;
		padding:15px 0 0 0;
	}
	#logo-footer .btn-social li {
		display:inline-block;
		margin:0 8px;
	}
	#logo-footer .btn-social a {
		display:block;
		width:28px;
		height:28px;
		border-radius:14px;
		background-color:#fff;
		color:#12283b;
		font-size:18px;
		line-height:1.5em;
		text-align:center;
	}
	#logo-footer .btn-social a:hover {
		background-color:#000;
		color:#fff;
	}
	
	
	#footer-navi {
		display:none;
	}
	
	#footer-navi-other {
        display: none;
		clear:both;
		padding:15px 0 0;
	}
	
	#footer-navi-other .inner {
		position:relative;
		background-color:#0d1e2c;
		margin:0 20px;
		font-size:13px;
		line-height:1.33em;
		height:auto;
	}

	#footer-navi-other nav {
		display:none;
	}
	
	#footer-navi-other p {
		position:relative;
		height:1.5em;
		right:inherit;
		top:inherit;
		bottom:inherit;
		margin:auto;
		padding:0;
		text-align:center;
		padding:5px 10px;
	}
	#footer-navi-other p small {
		font-size:10px;
	}
	
	#footer-navi-other #btn-pagetop {
		display:none;
	}

    footer .copyright {
        background-color:#0d1e2c;
        padding:5px 0 5px;
        margin: 20px 20px 0;
    }
    footer .copyright small {
        font-size: 12px;
    }
}


/* Menu Window
-------------------------------------------------- */

#menu_window {
	color:#fff;
	background:url(../img/common/bg_menu_window.jpg) no-repeat center top;
	background-color:#12283b;
	position:fixed;
	left:0;
	right:0;
	top:0;
	height:0;
	z-index:201;
	transition: all 0.35s cubic-bezier(0.19, 1, 0.22, 1);
	overflow:hidden;
}
body.menu-open #menu_window {
	height:100%;
	display:block;
}

#menu_window a {
	color:#fff;
}
#menu_window a:hover {
	color:#1db2e5;
}

#menu_window > .inner {
	box-sizing:border-box;
	width:auto;
	max-width:1080px;
	margin:auto;
	text-align:left;
	padding:100px 0 0;
}

#menu_window #menu_header_navi {
	position:absolute;
	left:0;
	right:140px;
	top:35px;
	text-align:right;
	line-height:1.67em;
    display: flex;
    justify-content: flex-end;
}

#menu_window #menu_header_navi ul {
	display:inline-block;
	padding:0 15px;
}

#menu_window #menu_header_navi ul.btn_language {
	font-size:13px;
}

#menu_window #menu_header_navi ul.btn_language li.active,
#menu_window #menu_header_navi ul.btn_language li:hover {
	border-bottom:1px solid #FFF;
}
#menu_window #menu_header_navi ul.btn_language li.active a,
#menu_window #menu_header_navi ul.btn_language a:hover {
	color:#FFFFFF;
}

#menu_window #menu_header_navi ul.btn-social {
	font-size:18px;
    display: block;
}

#menu_window #menu_header_navi ul li {
	display:inline-block;
	margin:0 7px;
}

#menu_window #menu_header_navi ul a {
	display:block;
}

#menu_window #menu_header_navi ul a img {
    width: 24px;
    height: auto;
}

#menu_window #logo-menu_window {
	width:auto;
	font-size:13px;
	line-height:1.85em;
	padding:0 80px;
}
#menu_window #logo-menu_window .logo {
	width:220px;
}
#menu_window #logo-menu_window .info {
	padding:20px 0 0 10px;
}

#menu_window-navi {
	padding:30px 80px 0;
}
#menu_window-navi nav > ul > li {
	width:50%;
	float:left;
}
#menu_window-navi nav > ul > li:nth-child(2) {
	width:28%;
}
#menu_window-navi nav > ul > li:nth-child(3) {
	width:22%;
}
#menu_window-navi nav > ul > li > ul {
	margin-bottom:30px;
}
#menu_window-navi nav > ul > li > ul > li {
	padding:2px 0 2px 15px;
	position:relative;
}
#menu_window-navi nav > ul > li > ul > li i {
	color:#4ac1eb;
	font-size:12px;
	display:inline-block;
	margin-left:5px;
}
#menu_window-navi nav > ul > li > ul > li:first-child {
	font-family: 'Roboto', "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	font-weight:500;
	font-size:20px;
	line-height:1.33em;
}
#menu_window-navi nav > ul > li:first-child > ul > li:first-child {
	font-size:30px;
	line-height:1.33em;
	margin-bottom:10px;
}
#menu_window-navi nav > ul > li:first-child > ul > li:first-child span {
	font-size:16px;
    font-weight: 400;
	line-height:1.0em;
	display:block;
    margin-top: 5px;
}
#menu_window-navi nav > ul > li > ul > li a:before {
	position:absolute;
	left:0;
	top:18px;
	display:inline-block;
	content:"";
	width:10px;
	height:1px;
	background-color:#4ac1eb;
	margin:-1px;
}
#menu_window-navi nav > ul > li:first-child > ul > li:first-child a:before {
	top:22px;
}

#menu_window-navi-other {
	clear:both;
	padding:30px 0 0;
}

#menu_window-navi-other .inner {
	position:relative;
	background-color:#0d1e2c;
	margin:0 4px;
    padding: 10px 0;
	font-size:13px;
	line-height:1.33em;
	/*height:50px;*/
}

#menu_window-navi-other nav li {
	display:inline-table;
	position:relative;
	padding:0 0 0 15px;
	margin:0 15px 0 20px;
	/*height:50px;*/
}

#menu_window-navi-other nav li a {
	display:table-cell;
	vertical-align:middle;
    display: block;
    padding: 10px 0;
}

#menu_window-navi-other nav li a:before {
	position:absolute;
	left:0;
	top:50%;
	display:inline-block;
	content:"";
	width:10px;
	height:1px;
	background-color:#4ac1eb;
	margin:-1px;
}

#menu_window-navi-other p {
	position:absolute;
	height:1.5em;
	right:70px;
	top:0;
	bottom:0;
	margin:auto;
	padding:0;
}
#footer-navi-other p small {
	font-size:12px;
}

#footer-navi-other #btn-pagetop {
	position:absolute;
	width:50px;
	height:50px;
	right:0;
	top:0;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}

#footer-navi-other #btn-pagetop:hover {
	opacity:0.8;
}


@media screen and (max-width: 1024px){

	#menu_window {
		overflow-y: scroll;
	}

}

@media screen and (max-width: 767px){
	
	#menu_window {
		color:#fff;
		background:none;
		background-color:#12283b;
		position:fixed;
		left:0;
		right:0;
		top:0;
		height:0;
		z-index:201;
		transition: all 0.35s cubic-bezier(0.19, 1, 0.22, 1);
		overflow:hidden;
		/*
		height:100%;
		*/
	}
	body.menu-open #menu_window {
		height:100%;
		display:block;
		overflow: scroll;
	}
	
	#menu_window a {
		color:#fff;
		display:block;
	}
	#menu_window a:hover {
		color:#1db2e5;
	}
	
	#menu_window > .inner {
		box-sizing:border-box;
		width:auto;
		max-width:1080px;
		margin:auto;
		text-align:left;
		padding:70px 0 0;
	}
	
	#menu_window #menu_header_navi {
		position:absolute;
		left:0;
		right: auto;
		top:15px;
		text-align:right;
		line-height:1.67em;
        display: flex;
	}
	
	#menu_window #menu_header_navi ul {
		display:inline-block;
		padding:0 10px;
	}
	
	#menu_window #menu_header_navi ul.btn_language {
		font-size:13px;
	}
	
	#menu_window #menu_header_navi ul.btn_language li.active,
	#menu_window #menu_header_navi ul.btn_language li:hover {
		border-bottom:1px solid #FFF;
	}
	#menu_window #menu_header_navi ul.btn_language li.active a,
	#menu_window #menu_header_navi ul.btn_language a:hover {
		color:#FFFFFF;
	}
	
	#menu_window #menu_header_navi ul.btn-social {
		font-size:18px;
        display: flex;
	}
	
	#menu_window #menu_header_navi ul li {
		display:inline-block;
		margin:0 6px;
	}
	
	#menu_window #menu_header_navi ul a {
		display:block !important;
	}
	
	#menu_window #menu_header_navi ul a img {
        width: 20px;
        height: auto;
	}
	
	#menu_window #logo-menu_window {
		width:auto;
		font-size:13px;
		line-height:1.85em;
		padding:9px 0 9px 20px;
		text-align:left;
	}
	#menu_window #logo-menu_window .logo {
		width:160px;
	}
	#menu_window #logo-menu_window .info {
		padding:20px 0 0 10px;
	}
	
	#menu_window-navi {
		padding:0 0 0;
		font-size:14px;
		line-height:1.67em;
		border-bottom: 1px #5a6976 solid;
	}
	#menu_window-navi nav > ul > li {
		width:100%;
		float:none;
	}
	#menu_window-navi nav > ul > li:nth-child(2) {
		width:100%;
	}
	#menu_window-navi nav > ul > li:nth-child(3) {
		width:100%;
	}
	#menu_window-navi nav > ul > li > ul {
		margin-bottom:0;
	}
	#menu_window-navi nav > ul > li > ul > li {
		padding:0 0 0 0;
		position:relative;
		border-top: 1px #5a6976 solid;
	}
	#menu_window-navi nav > ul > li > ul > li i {
		color:#4ac1eb;
		font-size:12px;
		display:inline-block;
		margin-left:5px;
	}
	#menu_window-navi nav > ul > li > ul > li:first-child {
		/*font-family: 'Roboto', sans-serif;*/
		font-weight:400;
		font-size:17px;
		line-height:1.33em;
	}
	#menu_window-navi nav > ul > li:first-child > ul > li:first-child {
		font-size:17px;
		line-height:1.33em;
		margin-bottom:0;
	}
	#menu_window-navi nav > ul > li:first-child > ul > li:first-child span.txt-jp {
		display:none;
	}
	#menu_window-navi nav > ul > li > ul > li a:before {
		display:none;
	}
	
	#menu_window-navi nav > ul > li > ul > li:not(.ctg-top) {
		display:none;
		height:0 !important;
	}
	#menu_window-navi nav > ul > li > ul.active > li:not(.ctg-top) {
		display:block;
		height:auto !important;
	}
	
	#menu_window-navi nav > ul > li a {
		padding-top: 8px;
		padding-bottom: 9px;
		padding-right: 40px;
		padding-left:40px;
		background-color:#2a3e4f;
	}
	#menu_window-navi nav > ul > li > ul > li:first-child a {
		padding-left: 20px;
		background-color:#12283b;
	}
	
	#menu_window-navi nav > ul li.ctg-top.js-has-submenu a {
		pointer-events:none;
	}

	#menu_window-navi .sp-navi-trigger {
		display:block;
		width:17px;
		height:17px;
		position:absolute;
		right:20px;
		top:0;
		bottom:0;
		margin:auto;
	}

	#menu_window-navi .sp-navi-trigger span {
		display:block;
		position:absolute;
		background-color:#FFF;
	}
	#menu_window-navi .sp-navi-trigger span:nth-child(1) {
		width:17px;
		height:1px;
		left:0;
		top:8px;
		transition: all .1s;
	}
	#menu_window-navi .sp-navi-trigger span:nth-child(2) {
		width:1px;
		height:17px;
		left:8px;
		top:0;
		transition: all .3s;
	}
	#menu_window-navi ul.active li .sp-navi-trigger span:nth-child(1) {
		opacity: 0;
	}
	#menu_window-navi ul.active li .sp-navi-trigger span:nth-child(2) {
		-webkit-transform: translateY(0px) rotate(90deg);
		transform: translateY(0px) rotate(90deg);
	}


	
	#menu_window-navi-other {
		clear:both;
		padding:20px 0 20px;
	}
	
	#menu_window-navi-other .inner {
		position:relative;
		background:none;
		margin:0;
		font-size:12px;
		line-height:1.33em;
		height:auto;
	}
	
	#menu_window-navi-other nav li {
		display:block;
		position:relative;
		padding:0;
		margin:0;
		height:auto;
	}
	
	#menu_window-navi-other nav li a {
		display:block;
		padding:5px 10px 5px 20px;
	}
	
	#menu_window-navi-other nav li a:before {
		display:none;
	}
	
	#menu_window-navi-other p {
		position:absolute;
		height:1.5em;
		right:70px;
		top:0;
		bottom:0;
		margin:auto;
		padding:0;
	}
	#footer-navi-other p small {
		font-size:12px;
	}
	
	#footer-navi-other #btn-pagetop {
		position:absolute;
		width:50px;
		height:50px;
		right:0;
		top:0;
		transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	}
	
	#footer-navi-other #btn-pagetop:hover {
		opacity:0.8;
	}
	
}



/* MAIN
-------------------------------------------------- */

body > .inner {
	padding:100px 0 0;
	overflow:hidden;
}

#page-contents ,
#page-contents2 {    
	width:100%;
	padding:0 0 80px;
}

#page-contents a {
	color:#01a1df;
	text-decoration:underline;
}

#page-contents > .inner ,
#page-contents2 > .inner {
	width:auto;
	max-width:1080px;
	margin:0 auto;
	text-align:left;
	padding: 0 0 60px;
}

#page-contents > .inner.wide-contents {
	max-width: inherit;
	text-align: center;
}

.ctg-news #page-contents > .inner {
	padding: 0 0 80px;
}


#page-recruit-interview #page-contents > .inner {
	padding: 0 0 80px;
}

#page-innovation-index #page-contents > .inner {
	width:auto;
	max-width:none;
}

#page-network-index #page-contents > .inner {
	width:auto;
	max-width:none;
}


/* Column Layout */

.layout-column-even {
	width:auto;
	margin:0 -18px;
}

.layout-column-even2 {
	width:auto;
	margin:0 -30px;
}

.item_col {
	box-sizing:border-box;
	float:left;
}

.item_col2 {
	width:50%;
	padding:0 18px;
}

.item_col2_2 {
	width:50%;
	padding:0 30px;
	margin-top:40px;
}


@media screen and (min-width: 768px) and (max-width: 1023px) {
	
	#page-contents > .inner ,
	#page-contents2 > .inner {
		box-sizing: border-box;    
		width:100%;
		padding:0 20px;
	}
	
}



@media screen and (max-width: 767px){
	
	body > .inner {
		padding:70px 0 0;
	}
	
	#page-contents ,
	#page-contents2 {
		box-sizing: border-box;    
		width:100%;
		padding:0 20px 20px;
	}
	
	#page-contents a {
		color:#01a1df;
		text-decoration:underline;
	}
	
	#page-contents > .inner ,
	#page-contents2 > .inner {
		width:auto;
		max-width:1080px;
		margin:0 auto;
		text-align:left;
		padding: 0 0 30px;
	}
	
	#page-contents > .inner.wide-contents {
		max-width: inherit;
		text-align: center;
	}
	
	.ctg-news #page-contents > .inner {
		padding: 0 0 40px;
	}
	
	
	#page-recruit-interview #page-contents > .inner {
		padding: 0 0 40px;
	}
	
	#page-innovation-index #page-contents > .inner {
		width:auto;
		max-width:none;
	}
	
	#page-network-index #page-contents > .inner {
		width:auto;
		max-width:none;
	}
	
	
	/* Column Layout */
	
	.layout-column-even {
		width:auto;
		margin:0 2px;
	}
	
	.layout-column-even2 {
		width:auto;
		margin:0 -10px;
	}
	
	.item_col {
		box-sizing:border-box;
		float:none;
	}
	
	.item_col2 {
		width:100%;
		padding:0 18px;
	}
	
	.item_col2_2 {
		width:100%;
		padding:0 30px;
		margin-top:20px;
	}
	
	.item_col2_2.message {
		padding:0 10px;
	}
	
}


/* Relation Contents Banner
-------------------------------------------------- */

#relation-contents {
	width:100%;
	background-color:#dfe1e3;
}
#page-recruit-interview #relation-contents {
	width:100%;
	/*background-color:#203f5a;*/
}

#relation-contents > .inner {
	width:auto;
	max-width:1080px;
	margin:0 auto;
	text-align:left;
	padding:50px 0 0;
	position:relative;
}

.swiper-footer-banner {
	width: auto;
	max-width: 1080px;
	margin: auto;
	padding: 0 0 30px;
}
.swiper-footer-banner::after {
	content: "";
	display: block;
	clear: both;
}
.swiper-footer-banner ul {
	margin: 0 -12px;
	display: block;
}
.swiper-footer-banner > ul > li {
	padding: 0 13px 20px;
	width: 25%;
	box-sizing: border-box;
}

.swiper-button-prev,
.swiper-button-next {
	background:none;
	width:15px;
	height:30px;
	margin-top:-15px;
	color:#01a1df;
	font-size:18px;
	text-align:center;
    display: none;
}

.swiper-button-prev {
	left:-30px;
}

.swiper-button-next {
	right:-30px;
}

.swiper-pagination {
	display: none;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	
	#relation-contents {
		box-sizing:border-box;
		width:100%;
		padding:0 20px;
		background-color:#dfe1e3;
	}
	
}


@media screen and (max-width: 767px){
	
	#relation-contents {
		width:100%;
		background-color:#dfe1e3;
	}
	#page-recruit-interview #relation-contents {
		width:100%;
		/*background-color:#203f5a;*/
	}
	
	#relation-contents > .inner {
		width:auto;
		max-width:1080px;
		margin:0 auto;
		text-align:left;
		padding:20px 0 0;
		position:relative;
	}
	
	.swiper-footer-banner {
		width:auto;
		margin:0 10px !important;
		position:relative;
		padding: 0 0 50px;
		overflow: hidden;
	}
	
	.swiper-footer-banner ul {
		margin: auto;
		display: flex;
	}
	.swiper-footer-banner > ul > li {
		padding: 0;
	}
	.swiper-footer-banner li a {
		display:block;
		padding:0 5px;
	}
	
	.swiper-button-prev,
	.swiper-button-next {
		background:none;
		width:15px;
		height:30px;
		margin-top:-15px;
		color:#01a1df;
		font-size:18px;
		text-align:center;
		display: none;
	}
	
	.swiper-button-prev {
		left:-30px;
	}
	
	.swiper-button-next {
		right:-30px;
	}

	.swiper-pagination {
		display: block;
	}
	
	
}


/* Common
-------------------------------------------------- */

/* Section And Wrapper */

.sec-base {
	clear:both;
	margin:70px 0 0;
}


/* Title */

.title-sec-index {
	font-size:15px;
	font-weight:500;
	line-height:1.67em;
}

.title-sec-index strong {
	display:inline-block;
	font-size:40px;
	font-weight:500;
	color:#01a1df;
	margin-right:15px;
}

.title-sec-01 {
	font-size:34px;
	font-weight:500;
	line-height:1.67em;
	position:relative;
	padding:15px 0 0;
}

.title-sec-01:before {
	content:"";
	position:absolute;
	width:60px;
	height:2px;
	left:0;
	top:0;
	background-color: #01a1df;
}

.title-sec-02 {
	text-align:center;
}

.title-sec-02 > span {
	display:block;
}

.title-sec-02 > span.ttl_eng {
	font-family: 'Roboto', sans-serif;
	font-size:55px;
	font-weight:500;
	line-height:1.33em;
	color:#01a1df;
}

.title-sec-02 > span.ttl_jpn {
	font-size:17px;
	line-height:1.33em;
}


.title-sec-03 {
	text-align:center;
	font-size:34px;
	font-weight:500;
	line-height:1.67em;
	position:relative;
	padding:0 0 20px;
}

.title-sec-03:after {
	content:"";
	position:absolute;
	width:60px;
	height:2px;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	background-color: #01a1df;
}

.title-sec-04 {
    text-align: center;
    padding: 0 0 30px;
}
.title-sec-04 span {
    display: block;
}
.title-sec-04 span.txt-eng {
    font-family: 'Roboto', sans-serif;
    font-size: 55px !important;
    font-weight: 500;
    line-height: 1em;
    color: #01a1df;
}
.title-sec-04 span.txt-jpn {
    margin: 10px 0 0;
}

.title-sec-05 {
	font-size:24px;
	font-weight:500;
	line-height:1.67em;
	position:relative;
	padding:0 0 0 1.5em;
  margin-top: 40px;
}
.title-sec-05:after {
	content:"";
	position:absolute;
	width:0.8em;
	height:2px;
	left:0;
  top: 0;
	bottom:0;
	margin:auto;
	background-color: #01a1df;
}


.title-style-01 {
    font-size: 28px;
    font-weight: 500;
    line-height: 1.5em;
    padding: 0 0 20px;
    position: relative;
}
.title-style-01:after {
    content:"";
	position:absolute;
	width:60px;
	height:1px;
	left:0;
	bottom:0;
	background-color: #01a1df;
}

.title-style-02 {
    font-size: 22px;
    font-weight: 500;
    line-height: 1.5em;
    padding: 0 0 20px;
    position: relative;
}


/* LeadText */
.lead-page-main {
	font-family: 'Noto Serif JP', serif;
	text-align:center;
	font-size:55px;
	font-weight:500;
	line-height:1.4em;
	margin-top:40px;
}

/* Text */

.txt-sign {
	clear:both;
	text-align:right;
	padding:40px 0 0;
	line-height:3em;
}

p.txt-main {
    margin: 40px 120px 0;
}

p.txt-main2 {
  margin: 40px 0 0;
  text-align: center;
}


/* Tab */

.tab-select-category {
	text-align:right;
	margin-top:-30px;
}

.tab-select-category li {
	display:inline-block;
	margin:0 3px;
}

.tab-select-category li span a {
	display:block;
	box-sizing:border-box;
	background-color:#fff;
	font-size:14px;
	line-height:1em;
	width:80px;
	padding:4px 5px;
	text-align:center;
	border-radius:2px;
}

#page-contents .tab-select-category li.active span,
#page-contents .tab-select-category li:hover span {
	color:#fff;
	background-color:#4ac1eb;
}

#page-contents .tab-select-category li.active span a,
#page-contents .tab-select-category li:hover span a {
	color:#fff;
	background-color:#4ac1eb;
}

#page-contents .tab-select-category.ctg-all li.ctg-all span,
#page-contents .tab-select-category.ctg-news li.ctg-news span,
#page-contents .tab-select-category.ctg-press li.ctg-press span,
#page-contents .tab-select-category.ctg-event li.ctg-event span,
#page-contents .tab-select-category.ctg-media li.ctg-media span {
	color:#fff;
	background-color:#4ac1eb;
}

#page-contents .tab-select-category.ctg-all li.ctg-all span a,
#page-contents .tab-select-category.ctg-news li.ctg-news span a,
#page-contents .tab-select-category.ctg-press li.ctg-press span a,
#page-contents .tab-select-category.ctg-event li.ctg-event span a,
#page-contents .tab-select-category.ctg-media li.ctg-media span a {
	color:#fff;
	background-color:#4ac1eb;
}

#page-contents .tab-select-category li a {
	display:block;
	text-decoration:none;
	color:#333;
}


/* dl */
.txt-dl-common01 dt {
	font-weight:500;
}
.txt-dl-common01 dd {
}

.txt-dl-common02 dt {
	width:7em;
	float:left;
	clear:both;
	font-weight:500;
}
.txt-dl-common02 dd {
	margin:0 0 0 8em;
}
 

/* Table */

.tbl-base-style {
	width:100%;
	border-collapse:collapse;
	margin-top:20px;
}
.tbl-base-style th,
.tbl-base-style td {
	box-sizing:border-box;
}

.tbl-style-01 th {
	width:22%;
	background-color:#f2f3f7;
	font-weight:500;
	padding:12px 20px 12px 30px;
	border:1px #dddddd;
	border-style: solid none;
}

.tbl-style-01 td {
	width:auto;
	padding:12px 30px 12px 30px;
	border:1px #dddddd;
	border-style: solid none;
}

.tbl-style-02 th {
	background-color:#f2f3f7;
	font-weight:500;
	padding:8px 15px 8px 15px;
	border:1px #dddddd solid;
	text-align:center;
}

.tbl-style-02 td {
	padding:8px 15px 8px 15px;
	border:1px #dddddd solid;
}



/* Button */

.btn-base {
    text-align: center;
}


.btn-base > a ,
#page-contents .btn-base > a ,
#page-contents2 .btn-base > a {
    position: relative;
    box-sizing: border-box;
    display: inline-block;
    width: 280px;
	height:78px;
    margin: auto;
    padding: 0;
    color: #fff;
    font-weight: 500;
	text-decoration:none !important;
	/*border: 2px #fff solid;*/
    border-radius: 2px;
    background-image: linear-gradient( 90deg, rgba(1, 161, 223, 1), rgba(80, 209, 241, 1));
    overflow: visible;
    transition: all 0.1s ease;
}

#page-contents .btn-base > a + a ,
#page-contents2 .btn-base > a + a {
    margin-left: 50px;
}

#page-contents .btn-base > a.btn-wd350 ,
#page-contents2 .btn-base > a.btn-wd350 {
    width: 350px;
}

.btn-base > a > span {
	height:20px;
	width:100%;
	display:inline-block;
	position:absolute;
	margin:auto;
	top:50%;
	left:0;
	border:0;
	margin-top:-15px;
	z-index:2;
	text-align:center;
}

.btn-base > a:after {
    content: "";
    position: absolute;
    background-color: #01a1df;
    width: 60px;
    height: 1px;
    margin: auto;
    right: -30px;
    top: 0;
    bottom: 0;
    transition: all 0.3s ease;
}

.btn-base > a:hover ,
#page-contents .btn-base > a:hover ,
#page-contents2 .btn-base > a:hover {
   /* background-image: linear-gradient( 90deg, rgba(255, 255, 255, 1), rgba(255, 255, 255, 1));*/
	/*border: 2px #01a1df solid;*/
    /*color: #01a1df;*/
    transition: all 0.3s ease;
}

.btn-base > a:before ,
#page-contents .btn-base > a:before ,
#page-contents2 .btn-base > a:before {
    content: "";
    position: absolute;
    background-color: #037cc8;
    width: 0;
    margin: auto;
	left:0;
	top:0;
	bottom:0;
    border-radius: 2px;
	z-index:1;
    transition: all 0.3s ease;
}

#page-contents .sec-home-vision .btn-base a:before ,
#page-home .sec-company-recruit > div.block-left .btn-base a:before {
    content: "";
    position: absolute;
    background-color: #037cc8;
    width: 0;
    margin: auto;
	left:0;
	top:0;
	bottom:0;
    border-radius: 2px;
	z-index:1;
    transition: all 0.3s ease;
}

@media screen and (min-width: 768px){
	
	#page-contents .sec-home-vision .btn-base a:hover ,
	#page-home .sec-company-recruit > div.block-left .btn-base a:hover {
		color: #fff;
		transition: all 0.3s ease;
	}
	
	.btn-base > a:hover:after {
		width: 0px !important;
	}
	
	.btn-base > a:hover:before {
		width: 100% !important;
	}
	
	#page-contents .btn-base.btn-large > a ,
	#page-contents2 .btn-base.btn-large > a {
		font-size:18px;
		padding: 25px 20px;
		width: 530px;
	}
	
}


/* List */
#page-contents .list-index-menu a {
    color: #333;
    text-decoration: none;
}
#page-contents .list-index-menu .btn-base a {
  color: #fff;
}

.list-index-menu a i.fas {
	color:#01a1df;
	margin-left:7px;
	font-size:14px;
	vertical-align:top;
	padding:8px 0 0;
}
.list-index-menu a i.fas:before {
}

.list-index-menu > ul {
	width:auto;
}

.list-index-menu > ul > li {
	float:left;
	box-sizing:border-box;
}

.list-column3 > ul {
	margin:0 -18px;
}
.list-column3 > ul > li {
	width:33.3333%;
	padding:0 18px;
	margin-bottom:40px;
}

.list-index-menu > ul > li.col2 {
	width:50% !important;
}

.list-index-menu > ul > li p.caption {
	font-size:18px;
	font-weight:500;
	line-height:1.33em;
	position:relative;
	padding:20px 10px 20px 20px;
}
.list-index-menu > ul > li p.caption:before {
	content:"";
	background-color:#01a1df;
	width:14px;
	height:1px;
	display:block;
	position:absolute;
	left:0;
	top:30px;
}

.list-index-menu > ul > li p.txt-explain {
	margin-top:5px;
}


/* Append Icon */

.append-icon-minus {
}
.append-icon-minus > a {
	position:relative;
	display:inline-block;
	padding:0 0 0 20px;
}
.append-icon-minus > a:before {
	content:"";
	background-color:#01a1df;
	width:14px;
	height:1px;
	display:block;
	position:absolute;
	left:0;
	top:12px;
}


/* Utility */

.valiable_image,
.valiable_image img {
	width:100%;
	height:auto;
}


/* Page Banner */
.page-banner-area {
	text-align:center;
}

/* Under Construction */

.txt-construction {
	text-align:center;
	font-size:18px;
	line-height:2.5em;
	padding:0 0 60px;
}



@media screen and (max-width: 767px){
	
	/* Section And Wrapper */
	
	.sec-base {
		clear:both;
		margin:30px 0 0;
	}
	
	
	/* Title */
	
	.title-sec-index {
		font-size:13px;
		font-weight:400;
		line-height:1.67em;
	}
	
	.title-sec-index strong {
		display:inline-block;
		font-size:28px;
		font-weight:500;
		color:#01a1df;
		margin-right:10px;
		display:block;
		padding-bottom:5px;
	}
	
	.title-sec-01 {
		font-size:18px;
		font-weight:500;
		line-height:1.67em;
		position:relative;
		padding:5px 0 0;
	}
	
	.title-sec-01:before {
		content:"";
		position:absolute;
		width:40px;
		height:1px;
		left:0;
		top:0;
		background-color: #01a1df;
	}
	
	.title-sec-02 {
		text-align:center;
	}
	
	.title-sec-02 > span {
		display:block;
	}
	
	.title-sec-02 > span.ttl_eng {
		font-family: 'Roboto', sans-serif;
		font-size:24px;
		font-weight:500;
		line-height:1.33em;
		color:#01a1df;
	}
	
	.title-sec-02 > span.ttl_jpn {
		font-size:12px;
		line-height:1.33em;
		margin-top:5px;
	}
	
	
	.title-sec-03 {
		text-align:center;
		font-size:20px;
		font-weight:500;
		line-height:1.67em;
		position:relative;
		padding:0 0 15px;
	}
	
	.title-sec-03:after {
		content:"";
		position:absolute;
		width:60px;
		height:1px;
		left:0;
		right:0;
		bottom:0;
		margin:auto;
		background-color: #01a1df;
	}
.title-sec-05 {
	font-size:24px;
	font-weight:500;
	line-height:1.67em;
	position:relative;
	padding:0 0 0 1.5em;
  margin-top: 40px;
}
.title-sec-05:after {
	content:"";
	position:absolute;
	width:0.8em;
	height:2px;
	left:0;
  top: 0;
	bottom:0;
	margin:auto;
	background-color: #01a1df;
}


	
	.title-sec-04 {
		text-align: center;
		padding: 0 0 30px;
	}
	.title-sec-04 span {
		display: block;
	}
	.title-sec-04 span.txt-eng {
		font-family: 'Roboto', sans-serif;
		font-size: 26px !important;
		font-weight: 500;
		line-height: 1em;
		color: #01a1df;
	}
	.title-sec-04 span.txt-jpn {
		margin: 5px 0 0;
	}

  .title-sec-05 {
    font-size:18px;
    font-weight:500;
    line-height:1.67em;
    position:relative;
    padding:0 0 0 1.5em;
    margin-top: 30px;
  }
  .title-sec-05:after {
    content:"";
    position:absolute;
    width:0.8em;
    height:2px;
    left:0;
    top: 0;
    bottom:0;
    margin:auto;
    background-color: #01a1df;
  }

	
	.title-style-01 {
		font-size: 15px;
		font-weight: 500;
		line-height: 1.5em;
		padding: 0 0 10px;
		position: relative;
	}
	.title-style-01:after {
		content:"";
		position:absolute;
		width:60px;
		height:1px;
		left:0;
		bottom:0;
		background-color: #01a1df;
	}
	
	.title-style-02 {
		font-size: 18px;
		font-weight: 500;
		line-height: 1.5em;
		padding: 0 0 10px;
		position: relative;
	}
		
	
	/* LeadText */
	.lead-page-main {
		font-family: 'Noto Serif JP', serif;
		text-align:center;
		font-size:25px;
		font-weight:500;
		line-height:1.4em;
		margin-top:40px;
	}
	
	/* Text */
	
	.txt-sign {
		clear:both;
		text-align:right;
		padding:40px 0 0;
		line-height:3em;
	}
	
	p.txt-main {
		margin: 20px 0 0;
	}

  p.txt-main2 {
    margin: 20px 0 0;
    text-align: left;
  }

	/* Tab */
	
	.tab-select-category {
		text-align:left;
		margin-top:20px;
		line-height:1em;
	}
	
	.tab-select-category li {
		display:inline-block;
		margin:0 1px;
	}
	
	.tab-select-category li span a {
		display:block;
		box-sizing:border-box;
		background-color:#fff;
		font-size:14px;
		line-height:1em;
		width:auto;
		padding:3px 5px;
		text-align:center;
		border-radius:2px;
	}
	
	#page-contents .tab-select-category li.active span,
	#page-contents .tab-select-category li:hover span {
		color:#fff;
		background-color:#4ac1eb;
	}
	
	#page-contents .tab-select-category li.active span a,
	#page-contents .tab-select-category li:hover span a {
		color:#fff;
		background-color:#4ac1eb;
	}
	
	#page-contents .tab-select-category.ctg-all li.ctg-all span,
	#page-contents .tab-select-category.ctg-news li.ctg-news span,
	#page-contents .tab-select-category.ctg-press li.ctg-press span,
	#page-contents .tab-select-category.ctg-event li.ctg-event span,
	#page-contents .tab-select-category.ctg-media li.ctg-media span {
		color:#fff;
		background-color:#4ac1eb;
	}
	
	#page-contents .tab-select-category.ctg-all li.ctg-all span a,
	#page-contents .tab-select-category.ctg-news li.ctg-news span a,
	#page-contents .tab-select-category.ctg-press li.ctg-press span a,
	#page-contents .tab-select-category.ctg-event li.ctg-event span a,
	#page-contents .tab-select-category.ctg-media li.ctg-media span a {
		color:#fff;
		background-color:#4ac1eb;
	}
	
	#page-contents .tab-select-category li a {
		display:block;
		text-decoration:none;
		color:#333;
	}
	
	
	/* dl */
	.txt-dl-common01 dt {
		font-weight:500;
	}
	.txt-dl-common01 dd {
	}
	
	.txt-dl-common02 dt {
		width:7em;
		float:left;
		clear:both;
		font-weight:500;
	}
	.txt-dl-common02 dd {
		margin:0 0 0 8em;
	}
	 
	
	/* Table */
	
	.tbl-base-style {
		width:100%;
		border-collapse:collapse;
		margin-top:20px;
	}
	.tbl-base-style th,
	.tbl-base-style td {
		box-sizing:border-box;
	}
	
	.tbl-style-01 th {
		width:22%;
		background-color:#f2f3f7;
		font-weight:500;
		padding:12px 20px 12px 30px;
		border:1px #dddddd;
		border-style: solid none;
	}
	
	.tbl-style-01 td {
		width:auto;
		padding:12px 30px 12px 30px;
		border:1px #dddddd;
		border-style: solid none;
	}
	
	.tbl-style-02 th {
		background-color:#f2f3f7;
		font-weight:500;
		padding:8px 15px 8px 15px;
		border:1px #dddddd solid;
		text-align:center;
	}
	
	.tbl-style-02 td {
		padding:8px 15px 8px 15px;
		border:1px #dddddd solid;
	}
	
	
	
	/* Button */
	
	.btn-base {
		text-align: center;
	}
	
	
	.btn-base > a ,
	#page-contents .btn-base > a ,
	#page-contents2 .btn-base > a {
		position: relative;
		box-sizing: border-box;
		display: inline-block;
		width: 200px;
		height:50px;
		margin: auto;
		padding: 0;
		color: #fff;
		font-size:13px;
		font-weight: 500;
		text-decoration:none !important;
		/*border: 2px #fff solid;*/
		border-radius: 2px;
		background-image: linear-gradient( 90deg, rgba(1, 161, 223, 1), rgba(80, 209, 241, 1));
		overflow: visible;
		transition: all 0.1s ease;
	}
    
    #page-contents .btn-base > a + a ,
    #page-contents2 .btn-base > a + a {
        margin-left: 0;
    }

    #page-contents .btn-base > a.btn-wd350 ,
    #page-contents2 .btn-base > a.btn-wd350 {
        width: 280px;
    }

	.btn-base > a > span {
		height:20px;
		width:100%;
		display:inline-block;
		position:absolute;
		margin:auto;
		top:50%;
		left:0;
		border:0;
		margin-top:-14px;
		z-index:2;
		text-align:center;
	}
	
	.btn-base > a:after {
		content: "";
		position: absolute;
		background-color: #01a1df;
		width: 40px;
		height: 1px;
		margin: auto;
		right: -20px;
		top: 0;
		bottom: 0;
		transition: all 0.3s ease;
	}
	
	.btn-base > a:hover ,
	#page-contents .btn-base > a:hover ,
	#page-contents2 .btn-base > a:hover {
		transition: all 0.3s ease;
	}
	
	
	.btn-base > a:before ,
	#page-contents .btn-base > a:before ,
	#page-contents2 .btn-base > a:before {
		content: "";
		position: absolute;
		background-color: #037cc8;
		width: 0;
		margin: auto;
		left:0;
		top:0;
		bottom:0;
		border-radius: 2px;
		z-index:1;
		transition: all 0.3s ease;
	}
	
	#page-contents .sec-home-vision .btn-base a:before ,
	#page-home .sec-company-recruit > div.block-left .btn-base a:before {
		content: "";
		position: absolute;
		background-color: #037cc8;
		width: 0;
		margin: auto;
		left:0;
		top:0;
		bottom:0;
		border-radius: 2px;
		z-index:1;
		transition: all 0.3s ease;
	}
	
	/*
	#page-contents .sec-home-vision .btn-base a:hover ,
	#page-home .sec-company-recruit > div.block-left .btn-base a:hover {
		color: #fff;
		transition: all 0.3s ease;
	}
	
	.btn-base > a:hover:after {
		width: 0px !important;
	}
	
	.btn-base > a:hover:before {
		width: 100% !important;
	}
	*/
	
	#page-contents .btn-base.btn-large > a ,
	#page-contents2 .btn-base.btn-large > a {
		font-size:13px;
		padding: 23px 20px 25px;
		width: 250px;
	}
	
	
	/* List */
	#page-contents .list-index-menu a {
		color: #333;
		text-decoration: none;
	}
	
	.list-index-menu a i.fas {
		color:#01a1df;
		margin-left:7px;
		font-size:11px;
		vertical-align:top;
		padding:4px 0 0;
	}
	.list-index-menu a i.fas:before {
	}
	
	.list-index-menu > ul {
		width:auto;
	}
	
	.list-index-menu > ul > li {
		float:left;
		box-sizing:border-box;
	}
	
	.list-column3 > ul {
		margin:0 -5px;
	}
	.list-column3 > ul > li {
		width:50%;
		padding:0 5px;
		margin-bottom:20px;
	}
	
	.list-index-menu > ul > li.col2 {
		width:50% !important;
	}
	
	.list-index-menu > ul > li p.caption {
		font-size:13px;
		font-weight:500;
		line-height:1.33em;
		position:relative;
		padding:10px 0 10px 13px;
	}
	.list-index-menu > ul > li p.caption:before {
		content:"";
		background-color:#01a1df;
		width:10px;
		height:1px;
		display:block;
		position:absolute;
		left:0;
		top:18px;
	}
	
	.list-index-menu > ul > li p.txt-explain {
		margin-top:5px;
		line-height:1.67em;
	}
	
	
	/* Append Icon */
	
	.append-icon-minus {
	}
	.append-icon-minus > a {
		position:relative;
		display:inline-block;
		padding:0 0 0 20px;
	}
	.append-icon-minus > a:before {
		content:"";
		background-color:#01a1df;
		width:14px;
		height:1px;
		display:block;
		position:absolute;
		left:0;
		top:12px;
	}
	
	
	/* Utility */
	
	.valiable_image,
	.valiable_image img {
		width:100%;
		height:auto;
	}
	
	
	/* Page Banner */
	.page-banner-area {
		text-align:center;
	}
	
	.page-banner-area img {
		width:100%;
		height:auto;
	}
	
	/* Under Construction */
	
	.txt-construction {
		text-align:center;
		font-size:15px;
		line-height:2em;
		padding:0 0 10px;
	}
		
	/*********************/
	
	/* Table */

	.tbl-base-style {
		width:100%;
		border-collapse:collapse;
		margin-top:10px;
	}
	.tbl-base-style th,
	.tbl-base-style td {
		box-sizing:border-box;
	}
	
	.tbl-style-01 th {
		width:25%;
		background-color:#f2f3f7;
		font-weight:500;
		padding:12px 10px 12px 10px;
		border:1px #dddddd;
		border-style: solid none;
        line-height: 1.5em;
	}
	
	.tbl-style-01 td {
		width:auto;
		padding:8px 0 8px 10px;
		border:1px #dddddd;
		border-style: solid none;
        line-height: 1.8em;
	}
	
	.tbl-style-02 th {
		background-color:#f2f3f7;
		font-weight:500;
		padding:8px 15px 8px 15px;
		border:1px #dddddd solid;
		text-align:center;
	}
	
	.tbl-style-02 td {
		padding:8px 15px 8px 10px;
		border:1px #dddddd solid;
	}
	
	
}


/* News
-------------------------------------------------- */

.news-list {
	margin:25px 0 0;
	line-height:1.67em;
}

.news-list ul {
	border-top:1px #dddddd solid;
}

.news-list li {
	clear:both;
	border-bottom:1px #dddddd solid;
}

.news-list li > span,
.news-list li a {
	display:block;
	padding:0 5px 0 15px;
	vertical-align:middle;
	color:#333 !important;
	text-decoration:none !important;
}

.news-list li > span.news-notfound {
    padding:15px 5px 15px 15px;
}

.news-list li a:hover {
	color:#01a1df !important;
}

.news-notfound {
	display:block;
	padding:15px 5px 15px 15px;
	vertical-align:middle;
	color:#333 !important;
	text-decoration:none !important;
}

.news-list dl {
	display:table;
}

.news-list dt {
	width:110px;
	display:table-cell;
	font-family: 'Roboto', sans-serif;
	font-size:14px;
	vertical-align:middle;
	min-height:2em;
}

.news-list dl {
	padding-top:15px;
	padding-bottom:15px;
}

.news-list dd {
	display:table-cell;
	vertical-align:middle;
}

.news-list dd.label-category {
	font-size:12px;
	line-height:1.33em;
	box-sizing:border-box;
	width:170px;
	padding-right:30px;
}
.news-list dd.label-category span {
	display:inline-block;
	color:#01a1df;
	background-color:#fff;
	border:1px #01a1df solid;
	border-radius:12px;
	box-sizing:border-box;
	width:100%;
	text-align:center;
	padding:4px 10px;
}

.news-list dd.label-category.ctg-group span {
	color:#01a1df;
	border-bottom-color:#01a1df;
}
.news-list dd.label-category.ctg-kyuseiki span {
	color:#1765c4;
	border-color:#8bb2e1;
}
.news-list dd.label-category.ctg-kaifukuki span {
	color:#099f4f;
	border-color:#7fc9ad;
}
.news-list dd.label-category.ctg-manseiki span {
	color:#7fa801;
	border-color:#c7de81;
}
.news-list dd.label-category.ctg-gazou-shindan span {
	color:#c55462;
	border-color:#e2a9b0;
}
.news-list dd.label-category.ctg-touseki span {
	color:#aa8209;
	border-color:#d4c084;
}
.news-list dd.label-category.ctg-zaitaku span {
	color:#7759a4;
	border-color:#bbacd1;
}


.news-read-more {
	text-align:right;
	margin-top:10px;
	font-size:14px;
}

#page-contents .news-read-more a {
	text-decoration:none;
	color:#333;
}

.news-pagenation .page-numbers {
	text-align:center;
	margin-top:30px;
}

.news-pagenation .page-numbers li {
	display:inline-block;
	vertical-align:bottom;
}

#page-contents .news-pagenation .page-numbers li a ,
#page-contents .news-pagenation .page-numbers li span {
	display:block;
	width:1em;
	padding:10px 12px;
	margin:0 2px;
	text-align:center;
	line-height:1em;
	background-color:#fff;
	border:1px #ddd solid;
	text-decoration:none;
	color:#333;
	font-size:13px;
	font-weight:bold;
}

#page-contents .news-pagenation .page-numbers li a:hover {
	background-color:#ddd;
}

#page-contents .news-pagenation .page-numbers li span.current {
	color:#fff;
	background-color:#949ea7;
	border:1px #949ea7 solid;
}


@media screen and (max-width: 767px){
	
	.news-list {
		margin:10px 0 0;
		line-height:1.67em;
	}
	
	.news-list ul {
		border-top:1px #dddddd solid;
	}
	
	.news-list li {
		clear:both;
		border-bottom:1px #dddddd solid;
	}
	
	.news-list li > span,
	.news-list li a {
		display:block;
		padding:0 0 0 0;
		vertical-align:middle;
		color:#333 !important;
		text-decoration:none !important;
	}
	
	.news-list li > span.news-notfound {
		padding:10px 0 10px 0;
	}
	
	.news-list li a:hover {
		color:#01a1df !important;
	}
	
	.news-notfound {
		display:block;
		padding:10px 5px 10px 15px;
		vertical-align:middle;
		color:#333 !important;
		text-decoration:none !important;
	}
	
	.news-list dl {
		display:block;
		padding-top:10px;
		padding-bottom:10px;
	}
	
	.news-list dt {
		width:70px;
		display:inline-block;
		font-family: 'Roboto', sans-serif;
		font-size:11px;
		vertical-align:middle;
		min-height:2em;
	}
	
	.news-list dd {
		display:block;
		vertical-align:middle;
	}

	.news-list dd.txt-title {
		padding-top:8px;
	}
	
	.news-list dd.label-category {
		display:inline-block;
		font-size:10px;
		line-height:1.33em;
		box-sizing:border-box;
		width:120px;
		padding-right:0;
	}
	.news-list dd.label-category span {
		display:inline-block;
		color:#01a1df;
		background-color:#fff;
		border:1px #01a1df solid;
		border-radius:12px;
		box-sizing:border-box;
		width:100%;
		text-align:center;
		padding:2px 5px;
	}
	
	.news-list dd.label-category.ctg-group span {
		color:#01a1df;
		border-bottom-color:#01a1df;
	}
	.news-list dd.label-category.ctg-kyuseiki span {
		color:#1765c4;
		border-color:#8bb2e1;
	}
	.news-list dd.label-category.ctg-kaifukuki span {
		color:#099f4f;
		border-color:#7fc9ad;
	}
	.news-list dd.label-category.ctg-manseiki span {
		color:#7fa801;
		border-color:#c7de81;
	}
	.news-list dd.label-category.ctg-gazou-shindan span {
		color:#c55462;
		border-color:#e2a9b0;
	}
	.news-list dd.label-category.ctg-touseki span {
		color:#aa8209;
		border-color:#d4c084;
	}
	.news-list dd.label-category.ctg-zaitaku span {
		color:#7759a4;
		border-color:#bbacd1;
	}
	
	
	.news-read-more {
		text-align:right;
		margin-top:10px;
		font-size:12px;
	}
	
	#page-contents .news-read-more a {
		text-decoration:none;
		color:#333;
	}
	
	.news-pagenation .page-numbers {
		text-align:center;
		margin-top:30px;
	}
	
	.news-pagenation .page-numbers li {
		display:inline-block;
		vertical-align:bottom;
	}
	
	#page-contents .news-pagenation .page-numbers li a ,
	#page-contents .news-pagenation .page-numbers li span {
		display:block;
		width:1em;
		padding:10px 12px;
		margin:0 2px;
		text-align:center;
		line-height:1em;
		background-color:#fff;
		border:1px #ddd solid;
		text-decoration:none;
		color:#333;
		font-size:13px;
		font-weight:bold;
	}
	
	#page-contents .news-pagenation .page-numbers li a:hover {
		background-color:#ddd;
	}
	
	#page-contents .news-pagenation .page-numbers li span.current {
		color:#fff;
		background-color:#949ea7;
		border:1px #949ea7 solid;
	}
	
}




/* News Detail */

#page-news-detail main article,
#page-recruit_news-detail main article {
	background-color:#f2f3f7;
}

#page-news-detail #page-contents > .inner,
#page-recruit_news-detail #page-contents > .inner {
	box-sizing:border-box;
	padding: 10px 60px 60px;
	background-color:#fff;
	margin-top:50px;
}

.news-heading {
	margin:0;
	border-bottom:1px #01a1df solid;
	padding:5px 0 10px;
}

.news-detail h1 {
	font-size:26px;
	font-weight:500;
	line-height:1.67em;
	margin-top:35px;
}

#news-body h2 {
	font-size:22px;
	font-weight:500;
	line-height:1.67em;
	margin:50px 0 0;
	padding:15px 0 0;
	position:relative;
}
#news-body h2:before {
	content:"";
	position:absolute;
	width:60px;
	height:1px;
	left:0;
	top:0;
	background-color: #01a1df;
}

#news-body h3 {
	font-size:18px;
	font-weight:500;
	line-height:1.67em;
	margin:40px 0 0;
}

#news-body h4 {
	font-size:15px;
	font-weight:500;
	line-height:1.67em;
	margin:15px 0 0;
}

#news-body p {
	margin:30px 0 0;
}
#news-body h2 + h3,
#news-body h3 + h4 {
	margin:15px 0 0;
}

#news-body h2 + p,
#news-body h3 + p,
#news-body p + p {
	margin:15px 0 0;
}
#news-body h4 + p {
	margin:5px 0 0;
}

#news-body table {
	width:100%;
	border-collapse:collapse;
	margin: 30px 0 0;
}

#news-body table th,
#news-body table td {
	border:1px #dddddd;
	border-style: solid none;
	box-sizing:border-box;
	padding:15px 20px 15px 25px;
}
#news-body table th {
	background-color:#f2f3f7;
	width:22%;
	font-weight:500;
}

#news-body ul {
	margin:20px 0 0;
	padding:0 0 0 25px;
}

#news-body ul li {
	list-style: disc outside;
}

#news-body ol {
	margin:20px 0 0;
	padding:0 0 0 25px;
}

#news-body ol li {
	list-style: decimal outside;
}

.pdf-download {
}

#news-body .pdf-download .fa-file-pdf:before {
    content: "";
}

#news-body .pdf-download .fa-file-pdf:after {
	font-family: "Font Awesome 5 Free";
	font-weight: 400;
    content: "\f1c1";
	margin-left:5px;
	color: #da251c;
	text-decoration:none !important;
}

#news-body a[target="blank"],
#news-body a[target="_blank"] {
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    /*display: inline-block;*/
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1.33em;
}

#news-body a[target="blank"]:after,
#news-body a[target="_blank"]:after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
    content: "\f35d";
	margin-left:5px;
	text-decoration:none !important;
}

#news-body .btn-base {
	margin: 50px 0 0;
}

#news-body .lst-about-channel {
    margin-top: 10px;
}

#news-body .lst-about-channel ul {
    margin: 0;
}

#news-body .lst-about-channel ul > li {
    list-style: disc;
}


@media screen and (max-width: 767px){
	
	#page-news-detail main article,
	#page-recruit_news-detail main article {
		background-color:#fff;
	}
	
	#page-news-detail #page-contents > .inner,
	#page-recruit_news-detail #page-contents > .inner {
		box-sizing:border-box;
		padding: 10px 0 30px;
		background-color:#fff;
		margin-top:0;
	}
	
	.news-heading {
		margin:0;
		border-bottom:1px #01a1df solid;
		padding:5px 0 0;
	}
	
	.news-detail h1 {
		font-size:18px;
		font-weight:500;
		line-height:1.67em;
		margin-top:15px;
	}
	
	#news-body h2 {
		font-size:16px;
		font-weight:500;
		line-height:1.67em;
		margin:20px 0 0;
		padding:10px 0 0;
		position:relative;
	}
	#news-body h2:before {
		content:"";
		position:absolute;
		width:60px;
		height:1px;
		left:0;
		top:0;
		background-color: #01a1df;
	}
	
	#news-body h3 {
		font-size:14px;
		font-weight:500;
		line-height:1.67em;
		margin:20px 0 0;
	}
	
	#news-body h4 {
		font-size:13px;
		font-weight:500;
		line-height:1.67em;
		margin:15px 0 0;
	}
	
	#news-body p {
		margin:15px 0 0;
	}
	#news-body h2 + h3,
	#news-body h3 + h4 {
		margin:10px 0 0;
	}
	
	#news-body h2 + p,
	#news-body h3 + p,
	#news-body p + p {
		margin:10px 0 0;
	}
	#news-body h4 + p {
		margin:0px 0 0;
	}
	
	#news-body table {
		width:100%;
		border-collapse:collapse;
		margin: 15px 0 0;
	}
	
	#news-body table th,
	#news-body table td {
		border:1px #dddddd;
		border-style: solid none;
		box-sizing:border-box;
		padding:10px 5px 10px 10px;
	}
	#news-body table th {
		background-color:#f2f3f7;
		width:25%;
		font-weight:500;
	}
	
	#news-body ul {
		margin:20px 0 0;
		padding:0 0 0 25px;
	}
	
	#news-body ul li {
		list-style: disc outside;
		vertical-align:top;
	}
	
	#news-body ol {
		margin:20px 0 0;
		padding:0 0 0 25px;
	}
	
	#news-body ol li {
		list-style: decimal outside;
	}
	
	.pdf-download {
	}
	
	#news-body .pdf-download .fa-file-pdf:before {
		content: "";
	}
	
	#news-body .pdf-download .fa-file-pdf:after {
		font-family: "Font Awesome 5 Free";
		font-weight: 400;
		content: "\f1c1";
		margin-left:5px;
		color: #da251c;
		text-decoration:none !important;
	}
	
	#news-body a[target="blank"],
	#news-body a[target="_blank"] {
		-moz-osx-font-smoothing: grayscale;
		-webkit-font-smoothing: antialiased;
		/*display: inline-block;*/
		font-style: normal;
		font-variant: normal;
		text-rendering: auto;
		line-height: 1.33em;
	}
	
	#news-body a[target="blank"]:after,
	#news-body a[target="_blank"]:after {
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		content: "\f35d";
		margin-left:5px;
		text-decoration:none !important;
	}
	
	#news-body .btn-base {
		margin: 30px 0 0;
	}
	
}



/* Message (Company & Recruit)
-------------------------------------------------- */
.sec-message {
	padding:0 0 20px;
	margin:50px 0 0;
}

.message-left {
	width:50%;
	float:left;
}

.message-left p {
	box-sizing:border-box;
	padding-right:25px;
}

.message-right {
	width:50%;
	float:left;
}

.message-right p {
	box-sizing:border-box;
	padding-left:25px;
}



.txt-senmu-sign {
    text-align: right;
}
.txt-senmu-sign dl {
    display: inline-block;
    font-size: 14px;
    margin-top: 10px;
}
.txt-senmu-sign dt ,
.txt-senmu-sign dd {
    text-align: left;
}
.txt-senmu-sign strong {
    font-size: 20px;
    font-weight: 500;
}


@media screen and (max-width: 767px){
	
	.sec-message {
		padding:0 0 20px;
		margin:20px 0 0;
	}
	
	.message-left {
		width:50%;
		float:left;
	}
	
	.message-left p {
		box-sizing:border-box;
		padding-right:25px;
	}
	
	.message-right {
		width:50%;
		float:left;
	}
	
	.message-right p {
		box-sizing:border-box;
		padding-left:25px;
	}
	
	
	
	.txt-senmu-sign {
		text-align: right;
	}
	.txt-senmu-sign dl {
		display: inline-block;
		font-size: 12px;
		margin-top: 10px;
	}
	.txt-senmu-sign dt ,
	.txt-senmu-sign dd {
		text-align: left;
	}
	.txt-senmu-sign strong {
		font-size: 16px;
		font-weight: 500;
	}
	
}

/* Social Media Policy
-------------------------------------------------- */
#news-body .sns-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8%;
	margin-top: 0;
}
#news-body .sns-list > li {
	width: 28%;
	
	margin-top: 30px;
	font-weight: 500;
	list-style-type: square;
}
#news-body .sns-list > li > ul {
	margin: 0 0 0 -5px;
	font-weight: 400;
}
#news-body .sns-list > li > ul > li {
	list-style-type: circle;
}

@media screen and (max-width: 767px) {
	#news-body .sns-list > li {
		width: 100%;
		margin-top: 10px;
	}
}


/* Other
-------------------------------------------------- */

.box-contact-info {
    border: 1px #ddd solid;
    padding: 10px 20px 20px 20px;
    margin: 30px 0 0;
}

.box-contact-info p {
    margin: 10px 0 0 !important;
}

.sitemap-menu {
    margin: 50px 0 0;
    clear: both;
    padding-bottom: 20px;
}

#page-contents .sitemap-menu a {
    color: #333;
    text-decoration: none;
    display: inline-block;
    position: relative;
    padding: 0 0 0 15px;
}

#page-contents .sitemap-menu a:hover {
    color:#01a1df;
}

#page-contents .sitemap-menu a::before {
    position:absolute;
	left:0;
	top:15px;
	display:inline-block;
	content:"";
	width:12px;
	height:1px;
	background-color:#01a1df;
	margin:-1px;
}
#page-contents .sitemap-menu > li > ul a::before {
    top:12px;
}

.sitemap-menu > li {
    width: 25%;
    float: left;
    font-size: 20px;
    font-weight: 500;
    font-family: 'Roboto', "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}

.sitemap-menu > li > ul {
    /*font-family:"Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Helvetica, Arial, sans-serif;*/
    font-family: 'Roboto', "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    font-size: 15px;
    font-weight: 300;
    line-height: 1.67em;
    padding: 5px 20px 0 0;
}

.sitemap-menu > li > ul > li {
    margin: 2px 0 0;
}

.sitemap-menu > li > ul > li.top_level {
    font-size: 22px;
    font-weight: 500;
    font-family: 'Roboto', "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    margin-top: 35px;
}

.sitemap-menu a[target="blank"],
.sitemap-menu a[target="_blank"] {
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1.67em;
}

.sitemap-menu a[target="blank"]:after,
.sitemap-menu a[target="_blank"]:after {
    font-size: 12px;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
    content: "\f35d";
	margin-left:5px;
	text-decoration:none !important;
    color:#01a1df;
}


.background{

	width:auto;
	height:auto;
}

.block-center{
	text-align:center;
	padding:60px 0 20px 0;
	background:url(../img/error/bg_contents.jpg);
	background-repeat: no-repeat;
	
}

.block-center h2{
	margin:25px 0 5px 0;
	font-size:18px;
}

.block-center p{
	margin:0px 0 50px 0;
}

.btn-area{
	margin:0;
	width:auto;
}

.btn-center{
	text-align:center;
}


.btn-float{
	margin:0 20px;
	display:inline-block;
}


@media screen and (max-width: 767px){
	
	.box-contact-info {
		border: 1px #ddd solid;
		padding: 0 15px 10px 15px;
		margin: 20px 0 0;
		line-height:1.67em;
	}
	
	.box-contact-info p {
		margin: 10px 0 0 !important;
	}
	
	.sitemap-menu {
		margin: 20px 0 0;
		clear: both;
		padding-bottom: 0;
	}
	
	#page-contents .sitemap-menu a {
		color: #333;
		text-decoration: none;
		display: block;
		position: relative;
		padding: 0 0 0 15px;
	}
	
	#page-contents .sitemap-menu a:hover {
		color:#01a1df;
	}
	
	#page-contents .sitemap-menu a::before {
		position:absolute;
		left:0;
		top:13px;
		display:inline-block;
		content:"";
		width:10px;
		height:1px;
		background-color:#01a1df;
		margin:-1px;
	}
	#page-contents .sitemap-menu > li > ul a::before {
		top:12px;
	}
	
	.sitemap-menu > li {
		width: 100%;
		float: none;
		font-size: 18px;
		font-weight: 500;
		/*font-family: 'Roboto', sans-serif;*/
		margin-top:20px;
	}
	
	.sitemap-menu > li > ul {
		font-family:"Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Helvetica, Arial, sans-serif;
		font-size: 13px;
		font-weight: 300;
		line-height: 1.67em;
		padding: 5px 20px 0 0;
	}
	
	.sitemap-menu > li > ul > li {
		margin: 2px 0 0;
	}
	
	.sitemap-menu > li > ul > li.top_level {
		font-size: 18px;
		font-weight: 500;
		/*font-family: 'Roboto', sans-serif;*/
		margin-top: 20px;
	}
	
	.sitemap-menu a[target="blank"],
	.sitemap-menu a[target="_blank"] {
		-moz-osx-font-smoothing: grayscale;
		-webkit-font-smoothing: antialiased;
		display: inline-block;
		font-style: normal;
		font-variant: normal;
		text-rendering: auto;
		line-height: 1.67em;
	}
	
	.sitemap-menu a[target="blank"]:after,
	.sitemap-menu a[target="_blank"]:after {
		font-size: 12px;
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		content: "\f35d";
		margin-left:5px;
		text-decoration:none !important;
		color:#01a1df;
	}
	
	
	.background{
	
		width:auto;
		height:auto;
	}
	
	.block-center{
		text-align:center;
		padding:40px 0 20px 0;
		background:url(../img/error/bg_contents.jpg) center 20px;
		background-repeat: no-repeat;
		background-size:100% auto;
	}
	
	.block-center h2{
		margin:25px 0 5px 0;
		font-size:18px;
	}
	
	.block-center p{
		margin:0px 0 30px 0;
	}
	
	.block-center img {
		width:110px;
		height:auto;
	}
	
	.btn-area{
		margin:0;
		width:auto;
		
	}
	
	.btn-center{
		text-align:center;
	}
	
	
	.btn-float{
		float:none;
		margin:0 0 0 0;
	}
	
}
