@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP=swap');
*{font-family:YuGothic,"Yu Gothic Medium","Yu Gothic",sans-serif;}
a{outline:none!important;}

/* Header
-------------------------*/
#header{
	z-index:99;
	width:100%;
	height:80px;
	position:fixed;
	top:0;
	left:0;
	background:#FFF;}
#header:before{
	z-index:10;}
.h-container{
	margin:auto;
	width:calc(100% - 30px);
	max-width:1120px;}
.h-logo{
	margin:0;
	line-height:0;}
#gNav ul{
	margin:0;
	padding:0;}
#gNav li{
	list-style:none;}
#gNav li::after{
	display:none;}
#gNav li::before{
	background-color:#004EA1;
	bottom:10px;
	left:58%;
	right:0;
	margin:auto;}
#gNav li .sub-menu li::before{
	display:none;}
#gNav li a{
	font-weight:normal;}
#gNav a:hover{
	color:#999;}
#gNav .sub-menu li a{
	padding:15px 0;}
nav li a{
	position:relative;
	font-weight:bold;
	text-decoration:none;}
nav .sub-menu,.mean-container .mean-nav ul ul{
	background:#1f3863;}
a.meanmenu-reveal{
	display:none;}
.mean-container .mean-bar{
	width:100%;
	position:fixed;
	background:none;
	min-height:60px;
	z-index:999;
	top:0;
	left:0;}
.mean-container .mean-bar{
	width:100%;
	position:fixed;
	background:none;
	min-height:60px;
	z-index:98;
	top:0;
	left:0;}
.meanmenu-reveal-btn{
	position:absolute;
	display:block;
	z-index:999;
	box-sizing:border-box;
	width:60px;
	height:60px;
	right:0;
	top:0;}
.meanmenu-reveal{
	width:26px;
	height:20px;
	margin:20px 17px;
	display:block !important;
	position:relative;}
.meanmenu-reveal span{
	display:inline-block;
	transition:all .4s;
	box-sizing:border-box;
	position:absolute;
	left:0;
	height:2px;
	margin:0 auto;}
.meanmenu-reveal span:nth-of-type(1){
	top:0;
	background:#004EA1;
	width:100%;}
.meanmenu-reveal span:nth-of-type(2){
	top:8px;
	background:#004EA1;
	width:100%;}
.meanmenu-reveal span:nth-of-type(3){
	top:16px;
	background:#004EA1;
	width:100%;}
.meanmenu-reveal span:nth-of-type(1){
	-webkit-animation:menu-ber01 .75s forwards;
	animation:menu-ber01 .75s forwards;
	width:100%;}
.meanmenu-reveal span:nth-of-type(2){
	transition:all .25s .25s;
	opacity:1;}
.meanmenu-reveal span:nth-of-type(3){
	-webkit-animation:menu-ber02 .75s forwards;
	animation:menu-ber02 .75s forwards;}
.meanclose span:nth-of-type(1){
	-webkit-animation:active-menu-ber01 .75s forwards;
	animation:active-menu-ber01 .75s forwards;
	top:-2px;
	width:100%;}
.meanclose span:nth-of-type(2){
	opacity:0;
	width:100%;}
.meanclose span:nth-of-type(3){
	-webkit-animation:active-menu-ber03 .75s forwards;
	animation:active-menu-ber03 .75s forwards;
	width:100%;}
.mean-container .mean-nav{
	width:100%;
	margin-top:60px;
	max-height:100vh;
	overflow-y:auto;}
.mean-container .mean-nav ul{
	padding:0;
	margin:0;
	width:100%!important;
	list-style-type:none;
	overflow-y:scroll;
	position:relative;
	z-index:99;
	max-height:100vh;
	max-height:calc(100vh - 60px);
	background:#FFF;}
.mean-container .mean-nav ul ul{
	padding-bottom:0;
	margin-bottom:0;}
.mean-container .mean-nav ul li{
	position:relative;
	width:100%;
	box-sizing:border-box;}
.mean-container .mean-nav ul li a,
.mean-container .mean-nav ul li span.pre{
	display:block;
	width:100%;
	padding:12px 1em!important;
	margin:0;
	text-align:left;
	text-decoration:none;
	text-transform:uppercase;
	color:#333;
	box-sizing:border-box;}
.mean-container .mean-nav ul li li a{
	width:100%;
	padding:1em 20px;
	text-shadow:none !important;
	visibility:visible;
	color:#FFF;}
.mean-container .mean-nav ul li.mean-last a{
	border-bottom:none;
	margin-bottom:0;}
.mean-container .mean-nav ul li li li a{
	width:70%;
	padding:1em 15%;}
.mean-container .mean-nav ul li li li li a{
	width:60%;
	padding:1em 20%;}
.mean-container .mean-nav ul li li li li li a{
	width:50%;
	padding:1em 25%;}
.mean-container .mean-nav ul li a::before{
	display:none;}
.mean-container .mean-nav ul li a:hover{
	background:#333;
	background:rgba(255,255,255,0.1);}
.mean-container .mean-nav ul li a.mean-expand{
	width:60px;
	text-align:center!important;
	position:absolute!important;
	right:0;
	top:0;
	z-index:2;
	padding:12px 1em!important;
	font-size:24px;
	border-bottom:none;
	display:inline!important;
	width:auto!important;}
.mean-container .mean-push{
	float:left;
	width:100%;
	padding:0;
	margin:0;
	clear:both;}
.mean-nav .wrapper{
	width:100%;
	padding:0;
	margin:0;}
.mean-container .mean-bar,
.mean-container .mean-bar *{
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	box-sizing:content-box;}
.mean-remove{
	display:none!important;}
.h_logo{
	padding:0;
	line-height:1.6;
	left:0;}
.h_logo img{
	max-width:unset;}
.sp-nav{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
	list-style:none;}
.sp-nav li{
	margin:0 0 0 10px;
	text-align:center;}
.sp-nav li a{
	display:block;
	color:#000;}
#over-nav{
	margin:0;}
#over-spnav{
	position:relative;
	display:none;
	padding:15px 10px;
	background:#FFF;
	z-index:2;}
#over-spnav .sp-nav{
	margin:auto;
	display:flex;
	overflow-y:auto;
	width:120px;}
#over-spnav .sp-nav li{
	margin:0 5px;}
#over-spnav .sp-nav li a{
	border:none;
	padding:0;}
@media only screen and (max-width:969px){
	.h-logo{
		width:190px;
		position:absolute;
		top:8px;
		left:10px;
		z-index:100;}
	.h_logo img{
		width:80%;}
	#over-nav{
		position:absolute;
		display:none;
		right:60px;
		top:0;
		z-index:98;}
	#over-spnav{
		display:block;}
	#header{
		height:60px;
		padding:0;}
	.h_logo{
		position:absolute;
		top:2px;
		z-index:100;
		padding:0;}
	#gNav .nav{
		overflow-y:auto;
		height:100vh;}
	.mean-nav .h-container{
		padding:0;}
	nav li .fa{
		display:none;}
	.fixed{
		position:fixed;
		width:100%;
		height:100%;
		z-index:1;}
	#header .mask{
		background:rgba(22,34,42,.4);
		top:60px;
		left:0;
		z-index:1;
		position:absolute;
		width:100%;
		height:100vh;
		opacity:1;
		display:none;}
	nav .sub-menu,
	.mean-container .mean-nav ul ul{
		display:none;}
}
@media only screen and (min-width:970px){
	.h-nav{
		margin:10px 0 0 auto;
		display:flex;
		flex-direction:column;
		justify-content:space-between;}
	#h-top{
		display:flex;
		justify-content:space-between;
		align-items:center;}
	#gNav ul{
		position:relative;
		display:flex;}
	#gNav li{
		position:relative;
		padding:0 0 0 10px;
		margin:0 0 0 10px;}
	#gNav li:last-child{margin-right:0;}
	#gNav li:first-child{
		padding:0;
		margin:0;}
	#gNav li{
		position:relative;}
	#gNav li::after{
		content:'';
		display:block;
		width:1px;
		height:calc(100% - 2em);
		border-radius:14px;
		background:#000;
		position:absolute;
		top:0;
		left:0;
		bottom:0;
		margin:auto;}
	#gNav li:first-child::after,
	#gNav .sub-menu li::after{
		display:none;}
	#gNav li a{
		position:relative;
		display:block;
		text-align:center;
		line-height:50px;
		height:50px;
		padding:0;}
	#gNav .sub-menu{
		visibility:hidden;
		opacity:0;
		z-index:1;
		display:block;
		position:absolute;
		top:40px;
		left:50%;
		margin-left:-100px;
		width:200px;
		-webkit-transition:all .2s ease;
		transition:all .2s ease;}
	#gNav .sub-menu a{
		padding:10px;
		display:block;
		border-bottom:none;
		padding:20px;
		line-height:1.2em;
		color:#333!important;}
	#gNav .sub-menu a:hover:after{
		content:none;}
	#gNav .sub-menu li{
		background-color:#FFF;
		display:block;
		font-size:16px;
		padding:0;
		margin:0;}
	#gNav .sub-menu li:last-child{
		border-bottom:none;}
	#gNav ul>li:hover{
		-webkit-transition:all .5s;
		transition:all .5s;}
	#gNav ul>li:hover a,
	#gNav .current-menu-item a,
	#gNav .current-menu-parent a{
		color:#004EA1;}
	#gNav li:hover ul.sub-menu{
		top:50px;
		visibility:visible;
		opacity:1;
		z-index:9999;}
	#gNav li ul li:after{
		content:none;}
	#gNav li:hover ul.sub-menu a{
		color:#FFF;
		height:auto;}
	#gNav .sub-menu li a:hover{
		background:#F5F5F5;
		color:#004EA1!important;}
	#gNav .contact_btn a:hover{
		color:#FFF;}
	.sp-nav li a{
		height:20px;
		line-height:20px;}
	.acNav{
		display:block!important;}
}
@-webkit-keyframes slideDown{
	0%{top:-70px;}
	100%{top:0px;}
}
@keyframes slideDown{
	0%{top:-70px;}
	100%{top:0px;}
}
@-webkit-keyframes menu-ber01{
	0%{-webkit-transform:translateY(8px) rotate(45deg);}
	50%{-webkit-transform:translateY(8px) rotate(0);}
	100%{-webkit-transform:translateY(0) rotate(0);}
}
@keyframes menu-ber01{
	0%{transform:translateY(8px) rotate(45deg);}
	50%{transform:translateY(8px) rotate(0);}
	100%{transform:translateY(0) rotate(0);}
}
@-webkit-keyframes menu-ber02{
	0%{-webkit-transform:translateY(-8px) rotate(-45deg);}
	50%{-webkit-transform:translateY(-8px) rotate(0);}
	100%{-webkit-transform:translateY(0) rotate(0);}
}
@keyframes menu-ber02{
	0%{transform:translateY(-8px) rotate(-45deg);}
	50%{transform:translateY(-8px) rotate(0);}
	100%{transform:translateY(0) rotate(0);}
}
@-webkit-keyframes active-menu-ber01{
	0%{-webkit-transform:translateY(0) rotate(0);}
	50%{-webkit-transform:translateY(10px) rotate(0);}
	100%{-webkit-transform:translateY(10px) rotate(45deg);}
}
@keyframes active-menu-ber01{
	0%{transform:translateY(0) rotate(0);}
	50%{transform:translateY(10px) rotate(0);}
	100%{transform:translateY(10px) rotate(45deg);}
}
@-webkit-keyframes active-menu-ber03{
	0%{-webkit-transform:translateY(0) rotate(0);}
	50%{-webkit-transform:translateY(-8px) rotate(0);}
	100%{-webkit-transform:translateY(-8px) rotate(-45deg);}
}
@keyframes active-menu-ber03{
	0%{transform:translateY(0) rotate(0);}
	50%{transform:translateY(-8px) rotate(0);}
	100%{transform:translateY(-8px) rotate(-45deg);}
}

/* Width and Height
--------------------*/
.w-25{width:25%!important;}
.w-50{width:50%!important;}
.w-75{width:75%!important;}
.w-100{width:100%!important;}
.w-auto{width:auto!important;}
.h-25{height:25%!important;}
.h-50{height:50%!important;}
.h-75{height:75%!important;}
.h-100{height:100%!important;}
.h-auto{height:auto!important;}
.mw-100{max-width:100%!important;}
.mh-100{max-height:100%!important;}
.min-vw-100{min-width:100vw!important;}
.min-vh-100{min-height:100vh!important;}
.vw-100{width:100vw!important;}
.vh-100{height:100vh!important;}

/* Headling
--------------------*/
.mainhead{
	font-weight:bold;
	font-size:25px;}
.subhead{
	border-bottom:1px dashed #CBCBCB;
	margin:0 0 20px;
	font-size:22px;}
.minihead{
	font-size:16px;
	background-repeat:no-repeat;
	padding:0 0 0 18px;
	margin:0 0 15px;
	position:relative;}
.minihead::after{
	content:'';
	width:8px;
	height:8px;
	border-radius:14px;
	background:#111;
	position:absolute;
	top:0.6em;
	left:0;}
.headA{
	font-size:35px;
	color:#004EA1;
	margin:0 0 40px;
	position:relative;}
.headA::before{
	content:'';
	width:80px;
	height:1px;
	background:#004EA1;
	position:absolute;
	bottom:0;
	left:0;}
.headA span{
	display:inline-block;
	font-size:16px;
	margin:0 0 0 10px;}
.headB{
	position:relative;
	padding:0 3em 0 10px;
	background:#004EA1;
	font-size:20px;
	height:50px;
	line-height:50px;
	color:white;
	margin:0 0 20px 15px;
	z-index:-1;
	display:table;}
.headB:before,
.headB:after{
	position:absolute;
	content:'';
	top:0;
	border:none;}
.headB:before{
	left:-15px;
	border-right:solid 15px #004EA1;
	border-top:solid 50px transparent;}
.headB:after{
	right:-15px;
	border-left:solid 15px #004EA1;
	border-bottom:solid 50px transparent;}
.headC{
	border:1px solid #004EA1;
	padding:5px 2em;
	color:#004EA1;
	margin:0 0 15px;}
.headD{
	font-size:20px;
	position:relative;
	padding:0 0 0 22px;
	margin:0 0 20px;}
.headD::before{
	content:'';
	width:10px;
	height:22px;
	background:#004EA1;
	position:absolute;
	top:0.3em;
	left:0;
	transform:skew(-15deg);}
.headE{
	font-size:16px;
	position:relative;
	font-weight:normal;
	padding:0 0 0 35px;
	margin:0 0 10px;
	border-bottom:1px solid #C8CBCA;}
.headE::before,
.headE::after{
	content:'';
	width:14px;
	height:14px;
	background:#004EA1;
	position:absolute;
	top:0.4em;}
.headE::before{
	background:#070609;
	left:0;}
.headE::after{
	background:#438FCC;
	left:14px;}
@media only screen and (min-width:768px){
	.mainhead{
		font-size:30px;}
	.subhead{font-size:26px;}
	.minihead::after{
		top:0.55em;}
	.headA{
		font-size:40px;}
	.headA::before{
		width:110px;}
	.headA span{
		margin:0 0 0 20px;}
	.headB{
		font-size:24px;}
	.headD{
		font-size:24px;
		padding:0 0 0 30px;}
	.headD::before{
		width:15px;
		height:30px;
		top:0.35em;}
}

/* Font Weight
--------------------*/
.fw-light{font-weight:300!important;}
.fw-lighter{font-weight:lighter!important;}
.fw-normal{font-weight:400!important;}
.fw-bold{font-weight:700!important;}
.fw-bolder{font-weight:bolder!important;}

/* Margin auto
--------------------*/
.m-auto{margin:auto!important;}
.mt-auto,
.my-auto{margin-top:auto!important;}
.mr-auto,
.mx-auto{margin-right:auto!important;}
.mb-auto,
.my-auto{margin-bottom:auto!important;}
.ml-auto,
.mx-auto{margin-left:auto!important;}
.m0{margin:0!important;}

/* Table
--------------------*/
.tbl-p5 th,
.tbl-p5 td{padding:5px}
.tbl-p10 th,
.tbl-p10 td{padding:10px}

/* Column
--------------------*/
.postrow{
	display:flex;
	flex-wrap:wrap;}
.postcol{
	margin:60px 0 0;
	width:100%;}
.postcol:first-child{margin:0;}
.postrow.rowreverse .postcol{
	margin:0 0 20px;}
@media only screen and (min-width:768px){
	.postcol.col-2{width:calc(50% - 30px);}
	.postcol.col-2:nth-child(odd){margin:60px 30px 0 0;}
	.postcol.col-2:nth-child(even){margin:60px 0 0 30px;}
	.postcol.col-2:nth-child(1){margin:0 30px 0 0;}
	.postcol.col-2:nth-child(2){margin:0 0 0 30px;}
	.postcol.col-3{
		width:calc(100%/3 - 20px);
		margin:30px 30px 0 0;}
	.postcol.col-3:nth-child(3n){margin:30px 0 0;}
	.postcol.col-3:nth-child(-n+2){margin:0 30px 0 0;}
	.postcol.col-3:nth-child(3){margin:0;}
	.postcol.col-4{
		width:calc(25% - 15px);
		margin:40px 20px 0 0;}
	.postcol.col-4:nth-child(4n){margin:40px 0 0;}
	.postcol.col-4:nth-of-type(-n+4){margin:0 20px 0 0;}
	.postcol.col-4:nth-of-type(4){margin:0 0 0;}
	.postrow.rowreverse{flex-direction:row-reverse;}
	.postrow.rowreverse .postcol.col-2:nth-child(odd){margin:60px 0 0 30px;}
	.postrow.rowreverse .postcol.col-2:nth-child(even){margin:60px 30px 0 0;}
	.postrow.rowreverse .postcol.col-2:nth-child(1){margin:0 0 0 30px;}
	.postrow.rowreverse .postcol.col-2:nth-child(2){margin:0 30px 0 0;}
	.postcol.col-auto{
		width:auto;
		margin:30px 0 0 0;}
	.postcol.col-auto:nth-child(3n){margin:30px 0 0;}
	.postcol.col-auto:nth-child(-n+3){margin:0;}
}

/* Text
--------------------*/
.dp-block{display:block;}
.color-004EA1{color:#004EA1;}
.txt_j{text-align:justify;}
.fs-12{font-size:12px;}
.fs-14{font-size:14px;}
.fs-16{font-size:16px;}
.fs-18{font-size:18px;}
.fs-20{font-size:20px;}
.fs-2em{font-size:2em;}
.fs-3em{font-size:3em;}
.fs-4em{font-size:4em;}
.fs-5em{font-size:5em;}
.fs-6em{font-size:6em;}
.fs-7em{font-size:7em;}
@media only screen and (max-width:690px){
	.fs-2em{font-size:1em;}
	.fs-3em{font-size:2em;}
	.fs-4em{font-size:3em;}
	.fs-5em{font-size:4em;}
	.fs-6em{font-size:5em;}
	.fs-7em{font-size:6em;}
}

/* Img
--------------------*/
.img-inline{
	display:inline!important;
	margin-left:0!important;
	margin-right:0!important;}

/* Button
--------------------*/
.btn-main a{
	background:#004EA1;
	color:#FFF;
	border:1px solid #004EA1;
	display:block;
	padding:12px 10px;
	border-radius:50rem;
	max-width:280px;
	text-align:center;
	text-decoration:none;}
.btn-main a:hover{
	background:#FFF;
	color:#004EA1;}
.big-btn a{
	background:#707070;
	border:1px solid #707070;
	color:#FFF;
	display:block;
	width:80%;
	margin:auto;
	text-align:center;
	border-radius:70px;
	padding:25px 2em;
	font-size:20px;
	text-decoration:none;}
.big-btn a:hover{
	color:#707070;
	background:#FFF;}
.big-btn a span{
	display:table;
	margin:auto;
	padding:0 40px 0 0;
	position:relative;}
.big-btn a span:after{
	content:'';
	width:12px;
	height:12px;
	border:0px;
	border-width:2px 2px 0 0;
	border-style:solid;
	border-color:#FFF;
	transform:rotate(45deg);
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	margin:auto;
	transition:all .2s ease-in 0s;}
.big-btn a:hover span:after{
	border-color:#707070;}
@media only screen and (max-width:690px){
	.big-btn a{
		width:100%;
		font-size:16px;
		padding:20px 1em;}
	.big-btn a span{
		padding:0 25px 0 0;}
	.big-btn a span:after{
		width:20px;
		height:20px;}
}

/* Process
--------------------*/
.process{
	display:block;}
.process .step,
.process .arrow{
	width:100%;}
.process .step{
	background-color:#004EA1;
	color:white;
	padding:8px 20px;
	font-size:16px;
	position:relative;
	box-sizing:border-box;}
.process .step p{
	text-align:center;
	font-weight:bold;}
.process .arrow{
	font-size:24px;
	color:#002366;
	position:relative;
	height:35px;}
.process .arrow::before{
	content:'';
	position:absolute;
	margin:auto;
	top:0;
	left:0;
	right:0;
	width:20px;
	height:20px;
	border:none;
	background:#004EA1;
	clip-path:polygon(50% 0, 100% 100%, 0 100%);
	transform:rotate(180deg);}
@media only screen and (min-width:768px){
	.process{
		display:flex;
		justify-content:center;
		align-items:center;
		margin:auto;
		width:calc(100% - 160px);}
	.process .step{
		width:14%;}
	.process .arrow{
		width:calc(16%/5);}
	.process .arrow::before{
		width:20px;
		bottom:0;
		right:auto;
		transform:rotate(90deg);}
}

/* Link list
--------------------*/
.link-list li{
	list-style:none;
	border-bottom:1px dashed #CBCBCB;
	margin:0 0 6px;}
.link-list li:last-child{
	margin:0;}
.link-list li a{
	display:block;
	position:relative;
	font-weight:bold;
	font-size:18px;
	text-decoration:none;
	padding:16px 0 10px 0;
	color:#333;}
.link-list li a:hover{
	color:#A3A3A3;}
.link-list li a:after{
	content:'';
	width:12px;
	height:12px;
	border:0px;
	border-width:2px 2px 0 0;
	border-style:solid;
	border-color:#333;
	transform:rotate(45deg);
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	margin:auto;
	transition:all .2s ease-in 0s;}
.link-list li a:hover:after{
	border-color:#A3A3A3;}
@media only screen and (max-width:690px){
	.link-list li{
		margin:0;}
	.link-list li a{
		font-size:16px;
		padding:18px 0 10px 0;}
}

/* Work list
--------------------*/
.work-list{
	display:flex;
	flex-wrap:wrap;}
.work-box{
	margin:30px 0 0;
	width:100%;
	background:#EDECE9;
	padding:20px;}
.work-box:first-child{
	margin:0;}
.work-ttl{
	font-size:18px;
	padding:0 0 10px;
	margin:0 0 10px;
	border-bottom:1px solid #004EA1;
	color:#004EA1;}
.work-left{
	margin:0 0 10px;}
@media only screen and (min-width:768px){
	.work-box{
		width:calc(50% - 15px);}
	.work-box:nth-child(odd){
		margin:30px 0 0 15px;}
	.work-box:nth-child(even){
		margin:30px 15px 0 0;}
	.work-box:nth-child(1){
		width:100%;
		margin:0 0 30px;}
	.work-box:nth-child(2){
		margin:0 15px 0 0;}
	.work-box:nth-child(3){
		margin:0 0 0 15px;}
	.work-ttl{
		font-size:20px;}
	.work-row{
		display:flex;
		flex-wrap:wrap;}
	.work-left{
		width:calc(50% - 10px);
		margin:0 10px 0 0;}
	.work-right{
		width:calc(50% - 10px);
		margin:0 0 0 10px;}
}

/* Quarters
--------------------*/
.quarters{
	display:flex;
	flex-wrap:wrap;}
.quarters .leftbox,
.quarters .rightbox{
	width:100%;}
.quarters .rightbox{
	margin:0 0 20px;}
.flow-list{
	list-style:none;
	width:100%;}
.flow-list li{
	width:100%;
	padding:16px 2em;
	background:#DDD;
	margin:0 auto 30px;
	text-align:center;
	border-radius:10px;
	color:#FFF;
	position:relative;
	font-weight:bold;}
.flow-list li:last-of-type{
	margin:auto;}
.flow-list li.co-1{
	background:#9479A2;}
.flow-list li.co-2{
	background:#EEA242;}
.flow-list li.co-3{
	background:#A3B443;}
.flow-list li.co-4{
	background:#53A1CC;}
.flow-list li.co-5{
	background:#D67394;}
/*.flow-list li::before{
	content:"";
	position:absolute;
	bottom:-24px;
	margin:auto;
	display:block;
	left:0;
	right:0;
	width:20px;
	height:15px;
	background-image:url(../img/flow_arrow.svg);
	background-size:contain;
	background-repeat:no-repeat;}
.flow-list li:last-of-type::before{
	display:none;}*/
@media only screen and (min-width:768px){
	.quarters{
		flex-direction:row-reverse;}
	.quarters .leftbox{
		width:40%;
		display:flex;
		align-items:center;}
	.quarters .rightbox{
		width:60%;
		margin:0;}
	.flow-list li{
		width:calc(100% - 60px);}
}

/* Radius
--------------------*/
.radius-20{border-radius:20px;}

/* Flex
--------------------*/
.flex-space{
	display:flex;
	flex-direction:column;
	justify-content:space-between;}
.space-between{
	justify-content:space-between;}

/* Box
--------------------*/
.arrbox{
	border-top:1px solid #004EA1;
	padding-top:20px;
	margin:20px auto 0;
	position:relative;}
.arrbox::before{
	content:'';
	width:15px;
	height:15px;
	border:0px;
	border-width:1px 1px 0 0;
	border-style:solid;
	border-color:#004EA1;
	background:#FFF;
	transform:rotate(-45deg);
	position:absolute;
	top:-9px;
	left:0;
	right:0;
	margin:auto;
	transition:all .2s ease-in 0s;}
.arrbox p{
	display:table;
	margin:auto;
	font-size:17px;
	font-weight:bold;}
.nml-box{
	margin-left:auto;
	margin-right:auto;
	width:100%;
	border:1px solid #004EA1;}
.nml-box p{
	display:table;
	margin:auto;
	font-weight:bold;
	padding:5px 15px;
	color:#004EA1;}
.disc-box{
	border-left:10px solid #004EA1;
	padding:0 0 0 15px;}
.disc-box .title{
	font-size:18px;}
@media only screen and (min-width:768px){
	.arrbox p{
		width:calc(100% - 160px);}
	.nml-box{
		width:calc(100% - 160px);}
}

/* Breadcrumbs
--------------------*/
.breadcrumbs{
	margin-top:101px;
	margin-bottom:0;
	background-color:#E6E7E9;}
@media only screen and (max-width:1023px){
	.breadcrumbs{
		margin-top:68px;}
}
@media only screen and (max-width:979px){
	.breadcrumbs{
		margin-top:68px;}
}

/* Page Title
--------------------*/
.page-title{
	margin-top:0;
	background-color:#E6E7E9;
	margin-bottom:60px;
	padding:40px 0 80px;}
.page-title h1{
	font-size:50px;
	font-weight:bold;
	line-height:1;
	position:relative;
	color:#000;
	font-family:'Poppins', sans-serif;}
.page-title h1 .page-sub-title{
	font-family:YuGothic,"Yu Gothic Medium","Yu Gothic",sans-serif;}
.page-title h1.cp-title{
	font-size:35px;
	line-height:normal;
	font-family:YuGothic,"Yu Gothic Medium","Yu Gothic",sans-serif;}
.page-title h1.cp-title .page-sub-title{
	margin-top:5px;
	font-size:14px;}
@media only screen and (max-width:690px){
	.page-title{
		margin-top:0;
		background-color:#E6E7E9;
		margin-bottom:60px;
		padding:10px 0 40px;}
	.page-title h1{
		font-size:35px;}
	.page-title h1.cp-title{
		font-size:22px;}
}

/* Index list
--------------------*/
.index-list{
	display:flex;
	flex-wrap:wrap;}
.index-item{
	margin:30px 0 0;
	width:100%;}
.index-item:first-child{
	margin:0;}
.index-img{
	margin:0 0 10px;
	line-height:0;}
.index-title{
	font-size:20px;
	margin:0 0 5px;
	color:#004EA1;}
@media only screen and (min-width:768px){
	.index-item{width:calc(50% - 15px);}
	.index-item:nth-child(odd){margin:40px 15px 0 0;}
	.index-item:nth-child(even){margin:40px 0 0 15px;}
	.index-item:nth-child(1){margin:0 15px 0 0;}
	.index-item:nth-child(2){margin:0 0 0 15px;}
	.index-item{
		display:flex;
		flex-wrap:wrap;}
	.index-img{
		width:calc(45% - 5px);
		margin:0 5px 0 0;}
	.index-txt{
		width:calc(55% - 5px);
		margin:0 0 0 5px;}
	.index-title{
		line-height:1.4;}
}
@media only screen and (min-width:1024px){
	.index-item{width:calc(50% - 30px);}
	.index-item:nth-child(odd){margin:60px 30px 0 0;}
	.index-item:nth-child(even){margin:60px 0 0 30px;}
	.index-item:nth-child(1){margin:0 30px 0 0;}
	.index-item:nth-child(2){margin:0 0 0 30px;}
	.index-img{
		width:calc(40% - 5px);}
	.index-txt{
		width:calc(60% - 5px);}
	.index-title{
		font-size:22px;}
}
@media only screen and (min-width:940px) and (max-width:1060px){
	.index-title{
		font-size:20px;}
	.index-txt p{
		font-size:14px;}
}
@media only screen and (min-width:768px) and (max-width:939px){
	.index-title{
		font-size:17px;}
	.index-txt p{
		font-size:12px;}
}

/* Box2-8
--------------------*/
.dlb_box2-8_area.box2-8-design .dlb_box2-8_txt{
	background:#004EA1;
	border:none;
	color:#FFF;}
@media only screen and (min-width:691px){
	.dlb_box2-8_area.box2-8-design .dlb_box2-8_txt{
		top:auto;
		height:auto;
		bottom:-30px;}
}

/* Content-48
--------------------*/
.dlb_content-48{
	padding:0;
	background-color:transparent;}
.dlb_c48_block .col{
	padding:0;}
.dlb_c48_icon{
	width:auto;
	height:auto;}
.dlb_c48_icon img{
	padding:0;
	max-width:200px;}
.dlb_c48_arr::before{
	width:25px;
	height:15px;
	border:none;
	background:#004EA1;
	clip-path:polygon(50% 0, 100% 100%, 0 100%);
	transform:rotate(90deg);}
@media only screen and (max-width:690px){
	.dlb_c48_arr::before{
		transform:rotate(180deg);}
}

/* Content-57
--------------------*/
.dlb_c57_txtarea{
	left:56%;
	max-width:475px;
	height:285px;}
.dlb_color_base_bg{
	background-color:#707070;}
.dlb_c57_txt{
	color:#FFF;}
@media only screen and (max-width:768px){
	.dlb_c57_txtarea{
		left:auto;
		right:auto;
		position:relative;
		max-width:none;
		margin:auto;
		height:auto;
		width:100%;}
}

/* Example
--------------------*/
.pc-ctxt{text-align:center;}
.sp-ctxt{text-align:left;}
.sp-br{display:none;}
.pc-pw-10{padding:0 10px;}
.img100w{width:100%!important;}
.img80w{width:80%!important;}
.world{
	position:relative;}
.world-img{
	margin:0 0 20px;}
.award-img{
	border-top:3px solid #004EA1;
	margin:30px 0 0;}
.award-box{
	background:#EDECE9;
	padding:20px;
	position:relative;}
.award-box{
	padding:30px;}
.award-box-img{
	margin:0 0 15px;}
.award-box-ttl{
	font-size:20px;
	margin:0 0 15px;
	position:relative;
	text-align:center;}
.award-box-ttl span{
	display:inline-block;
	font-size:16px;}
.award-box-sign{
	margin:15px 0 0;
	text-align:right;}
.award-box-sign img{
	display:inline;}
.look{
	z-index:-1;
	position:relative;
	margin:-10em auto 0;}
@media only screen and (min-width:768px){
	.world-img{
		height:480px;
		background-size:75%;
		background-position:right center;
		background-repeat:no-repeat;}
	.world-txt{
		margin:auto;
		width:42%;
		position:absolute;
		top:0;
		bottom:0;}
	.world-txtin{
		position:absolute;
		top:50%;
		left:0;
		transform:translate(0, -50%);
		-webkit-transform:translate(0, -50%);
		-ms-transform:translate(0, -50%);}
	.world-end{
		width:60%;}
	.world-img figure{
		display:none;}
	.award-box{
		display:flex;
		flex-wrap:wrap;
		align-items:center;}
	.award-box-img{
		margin:0;
		width:170px;}
	.award-box-txt{
		width:calc(100% - 200px);
		margin:0 0 0 30px;
		display:flex;
		flex-wrap:wrap;
		align-items:end;}
	.award-box-txt section{
		width:calc(100% - 180px);}
	.award-box-ttl{
		text-align:left;
		font-size:22px;}
	.award-box-ttl span{
		margin:0 0 0 20px;}
	.award-box-ttl span{
		margin:0 0 0 10px;}
	.award-box-sign{
		margin:0;
		position:relative;
		width:180px;}
	.award-box-sign img{
		position:absolute;
		right:0;
		bottom:-20px;}
}
@media only screen and (min-width:971px){
	.award-box-sign img{
		bottom:-40px;}
}
@media only screen and (max-width:767px){
	.world-img{
		background-image:none!important;}
}
@media only screen and (max-width:690px){
	.pc-ctxt{text-align:left;}
	.sp-ctxt{text-align:center;}
	.pc-br{display:none;}
	.sp-br{display:block;}
	.pc-pw-10{padding:0 2px;}
}

/* Contact Fotter
--------------------*/
.contact-section{
	background-image:url('../img/contactbak.png');
	background-color:transparent;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
	padding:45px 0 60px;}
.contact-txt{
	display:flex;
	flex-wrap:wrap;
	align-items:center;}
.contact-txt h2{
	font-size:40px;
	line-height:1;
	position:relative;
	letter-spacing:0;
	margin:0 0 20px;
	font-weight:bold;
	font-family:'Poppins', sans-serif;}
.contact-txt .subttl{
	font-size:16px;
	font-weight:normal;
	display:block;
	margin:10px 0 0 0;
	vertical-align:middle;
	font-family:YuGothic, "Yu Gothic Medium", "Yu Gothic", sans-serif;}
.contact-options{
	display:flex;
	flex-wrap:wrap;
	margin:30px 0 0;}
#contact .inner{
	width:calc(100% - 40px);}
#contact .contact-item{
	margin:20px 0 0;
	width:100%;}
#contact .contact-item:first-child{
	margin:0;}
#contact .contact-item a{
	display:flex;
	border:1px solid #333;
	align-items:center;
	background-color:rgba(240,240,240,0.5);
	position:relative;
	height:auto;
	border-radius:10px;
	padding:20px 40px;}
#contact .contact-item a:hover{
	background-color:rgba(240,240,240,1);}
#contact .contact-item a:hover img{
	opacity:1;}
#contact .contact-item a::before{
	content:'';
	width:10px;
	height:10px;
	border:0px;
	border-width:2px 2px 0 0;
	border-style:solid;
	border-color:#333;
	transform:rotate(45deg);
	position:absolute;
	top:0;
	right:15px;
	bottom:0;
	margin:auto;
	transition:all .2s ease-in 0s;}
#contact .contact-item:first-child a::before{
	display:none;}
@media only screen and (min-width:768px){
	.contact-section{
		padding:90px 0 120px;}
	.contact-txt h2{
		font-size:42px;
		margin:0;}
	.contact-txt p{
		margin:10px 0 0 40px;}
	#contact .contact-item{
		width:calc(100%/3 - 20px);
		margin:30px 30px 0 0;}
	#contact .contact-item:nth-child(3n){margin:30px 0 0;}
	#contact .contact-item:nth-child(-n+2){margin:0 30px 0 0;}
	#contact .contact-item:nth-child(3){margin:0;}
	#contact .contact-item a{
		padding:0 25px;
		height:80px;}
	.contact-options{
		margin:50px 0 0;}
}
@media only screen and (min-width:940px){
	#contact .contact-item a{
		padding:0;
		height:120px;
		border-radius:15px;}
}
@media screen and (min-width:1024px){
	.contact-txt h2{
		font-size:50px;}
}

/* Under Fotter
--------------------*/
footer{
	background-color:#707070;}
#footer_logo .custom-logo-link{
	padding:20px 30px;
	background:#FFF;
	line-height:0;
	margin:0 0 10px;}
.f-widgets{
	padding:40px 15px;}
.f-widgets-grid{
	display:flex;
	flex-wrap:wrap;
	margin:auto;
	width:100%;
	max-width:1120px;}
.f-widgets-item{
	width:50%;
	margin:0;}
.f-widgets-item:first-child{
	width:100%;
	margin:0 0 40px;}
.f-widgets-menu ul{
	display:flex;
	flex-wrap:wrap;
	margin:0;}
.f-widgets-menu ul li{
	width:100%;
	margin:0 0 15px;
	list-style:none;}
.f-widgets-menu ul li a{
	font-weight:bold;
	display:inline-block;
	text-decoration:none;
	font-size:16px;
	position:relative;
	color:#FFF;}
.f-widgets-menu ul li a:hover{
	text-decoration:underline;}
.f-widgets-menu ul li ul{
	width:100%;
	margin:0;}
.f-widgets-menu ul li ul li{
	width:100%;
	margin:0;}
.f-widgets-menu ul li ul li a{
	font-weight:normal;
	font-size:14px;
	margin:0;}
.f-u-menu{
	padding:20px 0;
	max-width:1120px;
	width:calc(100% - 20px);
	margin:auto;}
.f-u-menu ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin:auto;
	width:100%;
	max-width:1090px;}
.f-u-menu ul li{
	padding:0 14px 0 0;
	margin:0 14px 0 0;
	list-style:none;
	position:relative;}
.f-u-menu ul li:last-child{
	padding:0;
	margin:0;}
.f-u-menu ul li a{
	color:#FFF;
	position:relative;
	text-decoration:none;}
.f-u-menu ul li a:hover{
	text-decoration:underline;}
.f-widgets-menu ul li.menu-item-has-children a{
	margin:0 0 10px;}
.f-widgets-menu ul li.menu-item-has-children ul li a{
	margin:0;}
.f-video{
	display:table;
	margin:15px 0 0;}
#copyright{
	margin:15px 0 0;
	color:#FFF;
	font-size:12px;}
@media only screen and (min-width:768px){
	.f-widgets{
		padding:80px 15px;}
	.f-widgets-item{
		width:calc(21% - 22.6px);
		margin:0 30px 0 0;}
	.f-widgets-item:first-child{
		width:35%;}
	.f-widgets-item:nth-child(4){
		margin:0;}
	.f-widgets-menu ul{
		margin:0;}
	.f-widgets-menu ul li{
		margin:0 0 20px;}
	.f-widgets-menu ul li a{
		font-size:18px;}
	.f-widgets-menu ul li a::before{
		top:0.8em;}
	.f-widgets-menu ul li ul li:last-child a{
		margin:0;}
	.f-u-grid{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;}
	.f-u-menu ul{
		justify-content:left;}
	.f-u-menu ul li:last-child::after{
		display:none;}
	.f-widgets-menu ul li.current-menu-item li a::after{
		display:none;}
	.f-widgets-menu ul li.current-menu-item li a:hover::after{
		display:block;}
	#copyright{
		margin:0;}
}
@media only screen and (min-width:1024px){
	#recruit-data,#job,#senior,#welfare,#recruitment{
		padding-top:150px;
		margin-top:-150px;}
}
@media only screen and (max-width:767px){
	.f-widgets-item:last-child{
		width:100%;}
	.f-widgets-item:last-child .f-widgets-menu ul li{
		width:50%;}
	.f-widgets-item:last-child .f-widgets-menu ul li ul li{
		width:100%;}
}
@media only screen and (max-width:430px){
	.f-u-menu ul{
		max-width:250px;
		margin:auto!important;}
	.f-u-menu ul li{
		width:calc(50% - 5px);
		padding:0;
		text-align:center;}
	.f-u-menu ul li:nth-child(odd){
		margin:0 5px 0 0;}
	.f-u-menu ul li:nth-child(even){
		margin:0 0 0 5px;}
	#copyright{
		text-align:center;}
}

/* Text in the image
-------------------------*/
.intitle{
	position:relative;
	background:#000;}
.intitle img{
	opacity:0.6;}
.intitle figcaption{
	color:#FFF;
	font-weight:bold;
	width:100%;
	position:absolute;
	top:50%;
	left:0;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);}

/* Page Top
-------------------------*/
a.arrow-link{
	text-decoration:none;}
.arrow-container{
	position:fixed;
	bottom:20px;
	right:20px;
	display:flex;
	font-family:Arial, sans-serif;
	cursor:pointer;
	align-items: flex-end;}
.arrow-text,.arrow-line,.arrow-head{
	transition:0.4s;}
.arrow-text{
	font-size:12px;
	color:#333;
	margin-bottom:18px;
	margin-right: -10px;
	text-align:right;
	transform:rotate(90deg);}
.arrow-line{
	width:1px;
	height:160px;
	background-color:#333;
	position:relative;}
.arrow-head{
	width:1px;
	height:20px;
	background:#333;
	position:absolute;
	top:-2px;
	left:-7px;
	transform:rotate(45deg);}
.f-color .arrow-text{
	color:#FFF;}
.f-color .arrow-line{
	background-color:#FFF;}
.f-color .arrow-head{
	background:#FFF;}
.no-color .arrow-text{
	color:transparent;}
.no-color .arrow-line{
	background-color:transparent;}
.no-color .arrow-head{
	background:transparent;}
@media only screen and (max-width:690px){
	.arrow-container{
		bottom:10px;
		right:10px;}
	.arrow-text{
		font-size:10px;}
	.arrow-line{
		height:90px;}
	.arrow-head{
		height:15px;
		left:-5px;}
}