<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";




/* CSS STYLE */

body {
	padding-top: 86px;
	line-height: 2;
	overflow: auto !important;
	overflow-x: hidden !important;
}

img {
	max-width: 100%;
	height: auto;
}

a:hover,
a:active {
	text-decoration: underline ;
	color: #274865;
}
a:hover img {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
a,
a img,
a:after,
a:link,
a:visited,
a:hover,
a:active {
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}

hr {
	margin: 40px 0;
}
hr:last-child {
	margin: 40px 0 0 0;
}

.pcnone {
	display: none;
}

.inner {
	position: relative;
	width: 100%;
	max-width: 1150px;
	margin-left: auto;
	margin-right: auto;
}
@media screen and (max-width:1150px) {
.inner {
	padding-left: 10px;
	padding-right: 10px;
}
}

/**/
.alert {
color:#c33;
}


/* header */

header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	background: #fff;
	width: 100%;
	height: 86px;
	line-height: 1;
	z-index: 1000;
}

header .header-inner {
	position: relative;
	width: 100%;
	z-index: 2;
}

header .logo {
	position: absolute;
	top: 0;
	left: 0;
	margin: 20px 0 0 40px;
	white-space: nowrap;
	z-index: 2;
}
header .logo img {
	width: 105px;
	height: 36px;
	vertical-align: middle;
}
header .logo a img {
	-webkit-transition: none;
	-ms-transition: none;
	transition: none;
}
header .logo a img:hover,
header .logo a img:active {
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
header .logo span {
	display: inline-block;
	padding: 12px 0 0 20px;
	font-size: 12px;
	font-weight: normal;
	vertical-align: middle;
	color: #666;
}

#spmenu {
	display: none;
}

header nav {
	display: block !important;
	position: relative;
	width: 100%;
	height: 86px;
	z-index: 1;
}

header nav .main {
	position: relative;
	width: 100%;
	height: 86px;
	margin: 0 auto;
	padding: 0;
	font-size: 0;
	text-align: center;
	z-index: 1;
}
header nav .main &gt; li {
	display: inline-block;
	position: relative;
	height: 86px;
	padding: 36px 10px 0 10px;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.075em;
	text-decoration: none;
	color: #274865;
	cursor: pointer;
}
header nav .main &gt; li:after {
	content:"";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	background: #fdff2d;
	width: 0%;
	height: 4px;
	z-index: -1;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
header nav .main &gt; li.mouseover:after,
header nav .main &gt; li:hover:after {
	width: 100%;
}
header nav .main &gt; li &gt; ul {
	display: none;
	position: absolute;
	top: 86px;
	left: 50%;
	background: rgba(255,255,255,0.8);
	font-size: 13px;
	font-weight: normal;
	white-space: nowrap;
	-webkit-transform: translate3d(-50%, 0, 0);
	-ms-transform: translate3d(-50%, 0, 0);
	transform: translate3d(-50%, 0, 0);
}
header nav .main &gt; li &gt; ul li {
	border-bottom: 1px solid #fff;
}
header nav .main &gt; li &gt; ul li:last-child {
	border-bottom: none;
}
header nav .main &gt; li &gt; ul a {
	display: block;
	padding: 14px 20px;
	text-align: center;
	color:#274865;
}
header nav .main &gt; li &gt; ul a:hover {
	color: #5099d8;
}
header nav .main &gt; li &gt; ul a &gt; span {
	position: relative;
	display: inline;
	padding: 0 20px 0 0;
}
header nav .main &gt; li &gt; ul a &gt; span:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	background: url(../img/icon-blank.svg) center center no-repeat;
	background-size: 12px;
	width: 12px;
	height: 12px;
	margin: -6px 0 0 0;
	z-index: 1;
}

header nav .sub {
	position: absolute;
	top: 0;
	right: 0;
	width: 155px;
	z-index: 2;
}
header nav .sub p {
	display: block;
	background: #ff395e;
	width: 100%;
	height: 86px;
	font-size: 14px;
	font-weight: bold;
	line-height: 86px;
	letter-spacing: 0.075em;
	text-align: center;
	color: #fff;
	cursor: pointer;
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
header nav .sub p.active,
header nav .sub:hover p {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
header nav .sub ul {
	display: none;
	background: #f5f5f5;
	width: 100%;
	padding: 10px 0;
}
header nav .sub ul a {
	display: block;
	padding: 8px 0 8px 20px;
	font-size: 13px;
	color: #274865;
}
header nav .sub ul a:hover {
	color: #5099d8;
}
header nav .sub ul a div {
	position: relative;
	display: inline;
	padding: 0 20px 0 0;
}
header nav .sub ul a div:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	background: url(../img/icon-blank.svg) center center no-repeat;
	background-size: 12px;
	width: 12px;
	height: 12px;
	margin: -6px 0 0 0;
	z-index: 1;
}
header nav .sub ul a span {
	display: none;
}

@media screen and (max-width:1000px) {
header .logo {
	margin: 23px 0 0 15px;
}
header .logo img {
	width: 90px;
	height: 30px;
	vertical-align: middle;
}
header .logo span {
	padding: 12px 0 0 10px;
	font-size: 11px;
}
header nav .main &gt; li {
	letter-spacing: 0em;
}
}

@media screen and (max-width:860px) {
header nav .main &gt; li {
	padding: 36px 5px 0 5px;
	font-size: 12px;
}
}



/* footer */

.gotop {
	width: 100%;
	border-top: 1px solid #f5f5f5;
	border-bottom: 1px solid #f5f5f5;
}
.gotop a {
	position: relative;
	display: block;
	background: #f5f5f5;
	width: 100%;
	height: 60px;
	padding: 60px 0 0 0;
	overflow: hidden;
}
.gotop a:after {
	content:"";
	position: absolute;
	top: 27px;
	left: 50%;
	width: 12px;
	height: 12px;
	border-top: 2px solid #274865;
	border-right: 2px solid #274865;
	margin: 0 0 0 -8px;
	transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	z-index: 1;
}
.gotop a:hover {
	background: #fff;
}

footer {
	background: #fff;
	width: 100%;
	padding: 25px 0;
	line-height: 1;
}
footer .site {
	float: left;
	font-size: 12px;
}
footer .site a {
	position: relative;
	padding: 0 12px 0 0;
	font-weight: bold;
	letter-spacing: 0.075em;
	color: #274865;
}
footer .site a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 5px;
	height: 5px;
	border-top: 1px solid #274865;
	border-right: 1px solid #274865;
	margin: -3px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}
footer .site a:hover {
	color: #5099d8;
}
footer .copy {
	float: right;
	padding: 1px 0;
	font-size: 10px;
	color: #a0a0a0;
}




/* main */

article {
	position: relative;
	width: 100%;
	z-index: 1;
}
article.main {
	padding: 0 0 120px 0;
}

.other {
	color: #0a88c5;
}

#page-title {
	position: relative;
	width: 100%;
	height: 650px;
	z-index: 1;
}
#page-title .pc-img {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: center top;
	width: 100%;
	height: 100%;
	z-index: 1;
}
@media screen and (min-width:1600px) {
#page-title .pc-img {
	background-size: 100%;
}
}
#page-title .sp-img {
	display: none;
}
#page-title .title {
	padding-top: 200px;
	z-index: 2;
}
#page-title.topic .title {
	position: relative;
	padding: 180px 0 0 0;
	z-index: 2;
}
#page-title.topic .n-title-b span,
#page-title.topic .n-title-w span {
	margin-right: 10px;
}
#page-title.topic .n-title-b br,
#page-title.topic .n-title-w br {
	display: none;
}
#page-title .title .maintxt {
	width: 100%;
	font-size: 36px;
	font-style: italic;
	font-weight: normal;
	line-height: 65px;
	letter-spacing: 0.3em;
	color: #274865;
	z-index: 2;
}
#page-title .title .maintxt span {
	background: rgba(253,255,45,0.8);
	padding: 0 20px;
}

#page-title.about {
	width: 100%;
	height: 440px;
}
#page-title.about h1 {
	position: relative;
	top: 50%;
	font-size: 32px;
	font-weight: normal;
	text-align: center;
	letter-spacing: 0.08em;
	color: #fff;
	text-shadow: 0 0 30px #000;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
	z-index: 2;
}

#btn-area {
	position: relative;
	border-top: 1px solid #e4e6e8;
	width: 100%;
	padding: 60px 0;
}

.n-title-w {
	font-size: 20px;
	font-weight: normal;
	line-height: 1.6;
	color: #fff;
}
.n-title-w span {
	display: inline-block;
	border: 1px solid #fff;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 36px;
	height: 38px;
	margin: 0 0 20px 0;
	padding: 0 25px 0 61px;
	font-size: 14px;
	line-height: 36px;
	white-space: nowrap;
}
.n-title-w span.n01 {
	background-image:url(../img/icon-n_01.svg);
}
.n-title-w span.n02 {
	background-image:url(../img/icon-n_02.svg);
}
.n-title-w span.n03 {
	background-image:url(../img/icon-n_03.svg);
}
.n-title-w span.n04 {
	background-image:url(../img/icon-n_04.svg);
}
.n-title-w span.n05 {
	background-image:url(../img/icon-n_05.svg);
}
.n-title-w span.n06 {
	background-image:url(../img/icon-n_06.svg);
}
.n-title-b {
	font-size: 20px;
	font-weight: normal;
	line-height: 1.6;
	color: #274865;
}
.n-title-b span {
	display: inline-block;
	border: 1px solid #274865;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 36px;
	height: 38px;
	margin: 0 0 20px 0;
	padding: 0 25px 0 61px;
	font-size: 14px;
	line-height: 36px;
	white-space: nowrap;
}
.n-title-b span.n01 {
	background-image:url(../img/icon-n2_01.svg);
}
.n-title-b span.n02 {
	background-image:url(../img/icon-n2_02.svg);
}
.n-title-b span.n03 {
	background-image:url(../img/icon-n2_03.svg);
}
.n-title-b span.n04 {
	background-image:url(../img/icon-n2_04.svg);
}
.n-title-b span.n05 {
	background-image:url(../img/icon-n2_05.svg);
}
.n-title-b span.n06 {
	background-image:url(../img/icon-n2_06.svg);
}

.begin {
	display: table;
	border: 1px solid #274865;
	height: 32px;
	margin: 0 0 20px 0 !important;
}
.begin span {
	display: table-cell;
	padding: 0 15px;
	font-size: 14px;
	line-height: 32px;
	letter-spacing: 0.075em;
	text-align: center;
}
.begin span:nth-child(1) {
	background: #274865;
	font-weight: bold;
	color: #fff;
}
.begin span:nth-child(2) {
	color: #274865;
}

a.overbox {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(39,72,101,0.85);
	width: 100%;
	height: 100%;
	padding: 0;
	color: #fff;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	z-index: 10;
}
a.overbox:hover {
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}
a.overbox div {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	text-align: center;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}
a.overbox span {
	display: block;
	position: relative;
	border: 1px solid #fff;
	width: 150px;
	height: 44px;
	margin: 0 auto;
	font-size: 14px;
	font-weight: bold;
	line-height: 42px;
	letter-spacing: 0.075em;
	color: #fff;
	text-align: center;
}
a.overbox span:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 2;
}

.profile {
	position: relative;
	background: #fafafb;
	width: 370px;
	margin: 0;
	padding: 1px 30px 20px 30px;
	line-height: 1.6;
}
.profile h2 {
	position: relative;
	display: block;
	background: #274865;
	width: 120px;
	height: 32px;
	margin: -16px 0 15px 0;
	padding: 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 32px;
	letter-spacing: 0.075em;
	text-align: center;
	color: #fff;
}
.profile dt {
	font-size: 22px;
}
.profile dt small {
	font-size: 12px;
	letter-spacing: 0.3em;
}
.profile dd {
	margin: 10px 0 0 0;
	color: #80878e;
	font-size: 13px;
}
.profile dd.ds {
	font-size: 12px;
}
.topic-profile {
	position: absolute;
	top: 530px;
	left: 0;
	width: 100%;
	z-index: 2;
}
.interviews .profile {
	float: left;
	margin: 0 60px 20px 0;
}

.study-display {
	display: table;
	position: relative;
	background: #f5f5f5;
	width: 100%;
	margin: 0 0 40px 0;
}
.study-display:last-child {
	margin: 0;
}
.study-display div.text {
	display: table-cell;
	width: auto;
	margin: 0;
	padding: 30px 40px;
	vertical-align: top;
}
.study-display div.image {
	display: table-cell;
	margin: 0;
	width: 330px;
	vertical-align: top;
}
.study-display div.image img {
	width: 100%;
	max-width: 330px;
}
.main-field .study-display p,
.main-field .study-display ul,
.main-field .study-display ol {
	margin: 0;
}

.office-img {
	position: relative;
	width: 100%;
	margin: 30px 0 0 0;
}
.office-img div {
	margin: 0 0 40px 0;
}
.office-img div:last-child {
	margin: 0;
}
.office-img div.c1 {
	clear: both;
	width: 100%;
}
.office-img div.c2 {
	width: 48.26%;
}

.style-area {
	overflow: hidden;
}
.style-area .txt-area {
	width: 55%;
}
.style-area .img-area {
	width: 40%;
}
.style-area .column {
	float: left;
	width: 29%;
	margin: 0 6.5% 0 0;
}
.style-area .column .img-area {
	width: 100%;
	margin: 0 0 35px 0;
}
.style-area .column:nth-child(3n) {
	float: right;
	margin: 0;
}
.style-area .environ {
	width: 48%;
}
.style-area .environ-img {
	clear: both;
	position: relative;
	width: 100%;
	padding: 40px 0 0 30%;
	text-align: right;
}
.style-area .environ-img .chat {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 28%;
	text-align: left;
}
.style-area .environ-img .chat img {
	border: 1px solid #ccc;
}
.style-area .num {
	display: table;
	height: 72px;
	margin: 0 0 25px 0;
}
.style-area .num span {
	display: table-cell;
	vertical-align: middle;
	height: 72px;
}
.style-area .num span:nth-child(1) {
	background: #fdff2d;
	width: 72px;
	font-size: 36px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	color: #274865;
}
.style-area .num span:nth-child(2) {
	display: table-cell;
	padding: 0 0 0 30px;
	font-size: 26px;
	font-weight: normal;
	line-height: 1.3;
	color: #2f8cde;
}
@media screen and (max-width:1150px) {
.style-area .num br {
	display: none;
}
}
.style-area p span,
.style-area li span {
	background: -moz-linear-gradient(top, rgba(255,154,180,0) 0%, rgba(255,154,180,0) 50%, rgba(255,154,180,0.5) 51%, rgba(255,154,180,0.5) 100%);
	background: -webkit-linear-gradient(top, rgba(255,154,180,0) 0%,rgba(255,154,180,0) 50%,rgba(255,154,180,0.5) 51%,rgba(255,154,180,0.5) 100%);
	background: linear-gradient(to bottom, rgba(255,154,180,0) 0%,rgba(255,154,180,0) 50%,rgba(255,154,180,0.5) 51%,rgba(255,154,180,0.5) 100%);
}
.style-corevalue {
	background: #f7f7f7 url(../img/workstyle/workstyle-style-bg.png) center top no-repeat;
	background-size: cover;
	width: 100%;
	padding: 50px 70px 40px 70px;
	overflow: hidden;
}
.style-corevalue h3 {
	margin: 0 0 30px 0;
	font-size: 22px;
	font-weight: normal;
	text-align: center;
	line-height: 1.5;
	color: #2f8cde;
}
.style-corevalue h3 a {
	font-weight: bold;
}
.style-corevalue dl {
	float: left;
	background: #fff;
	width: 32%;
	margin: 0 2% 0 0;
	padding: 30px 20px 20px 20px;
}
.style-corevalue dl:last-of-type {
	float: right;
	margin: 0;
}
.style-corevalue dt {
	margin: 0 0 20px 0;
	font-size: 24px;
	line-height: 1;
	text-align: center;
}
.style-corevalue dd {
	font-size: 13px;
	line-height: 1.8;
}

.work-img1 {
	position: relative;
	float: right;
	width: 430px;
	margin: 0 0 0 40px;
	padding: 0 0 50px 0;
}
.work-img1 img {
	position: relative;
	z-index: 1;
}
.work-img1 dl {
	position: absolute;
	right: 25px;
	bottom: 0;
	background: #274865;
	padding: 22px 40px;
	color: #fff;
	line-height: 1.2;
	z-index: 2;
}
.work-img1 dl dt {
	font-size: 20px;
}
.work-img1 dl dd {
	margin: 8px 0 0 0;
	font-size: 14px;
}
.work-img2 {
	position: relative;
	float: left;
	width: 350px;
	margin: 0 40px 0 0;
}
.work-txt2 {
	position: relative;
	margin: 0 0 0 390px;
}
.work-img3 {
	position: relative;
	float: right;
	width: 430px;
	margin: 0 0 20px 40px;
}

.work-display {
	position: relative;
	background: #f5f5f5;
	width: 100%;
	margin: 40px 0 0 0;
}
.work-display div.image {
	display: table-cell;
	margin: 0;
	width: 180px;
	vertical-align: top;
}
.work-display div.text {
	display: table-cell;
	width: auto;
	margin: 0;
	padding: 30px;
	vertical-align: top;
}
.work-display div.text h3 {
	margin-bottom: 15px;
	font-size: 22px;
	font-weight: normal;
	line-height: 1.2;
	color: #ff5e84;
}
.main-field .work-display p {
	margin: 0;
}




/* index */

.index-head {
	padding: 35px 0;
	font-size: 22px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}
.index-head span {
	position: relative;
	padding: 0 40px;
}
.index-head span:after {
	content:"";
	display: block;
	position: absolute;
	top: 12px;
	left: 0;
	background: #fdff2d;
	width: 100%;
	height: 8px;
	z-index: -1;
}

#index-mainimg {
	position: relative;
	width: 100%;
	height: 600px;
	z-index: 1;
}

#index-mainimg .index-mainimg {
	position: relative;
	width: 100%;
	height: 600px;
	z-index: 1;
}
#index-mainimg .slick-track {
	height: 600px;
}
#index-mainimg .index-mainimg &gt; div {
	width: 100%;
	height: 600px;
	overflow: hidden;
}
#index-mainimg .index-mainimg .pc-img {
	position: relative;
	width: 100%;
	height: 600px;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 1;
}
@media screen and (min-width:1600px) {
#index-mainimg .index-mainimg .pc-img {
	background-position: center center;
	background-size: 100%;
}
}
@media screen and (max-width:1200px) {
#index-mainimg .index-mainimg .pc-img.img1 {
	background-position: 70% center !important;
}
#index-mainimg .index-mainimg .pc-img.img2 {
	background-position: 30% center !important;
}
#index-mainimg .index-mainimg .pc-img.img3 {
	background-position: 70% center !important;
}
}
#index-mainimg .index-mainimg .sp-img {
	display: none;
}
#index-mainimg .index-maintxt {
	position: absolute;
	top: 50%;
	width: 100%;
	font-size: 26px;
	line-height: 60px;
	text-align: center;
	letter-spacing: 0.4em;
	font-style: italic;
	color: #274865;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
	z-index: 2;
}
#index-mainimg .index-maintxt span {
	background: rgba(253,255,45,0.8);
	padding: 0 20px;
}

#index-news {
	position: relative;
	background: #f5f5f5;
	width: 100%;
	padding: 15px 0;
	z-index: 2;
	display: flex;
    justify-content: center;
    text-align: center;
}
#index-news dl {
	font-size: 0;
	line-height: 2;
	text-align: center;
	display: flex;
    flex-direction: row;
    align-content: center;
    flex-wrap: nowrap;
    justify-content: center;
}
#index-news dl.new:before {
	content:"NEW";
	position: relative;
	display: inline-block ;
	vertical-align: middle;
	background: #274865;
	width: 65px;
	height: 24px;
	margin: 0 10px 0 0;
	font-size: 13px;
	line-height: 24px;
	color: #fff;
}
#index-news dl dt,
#index-news dl dd {
	display: inline-block ;
	vertical-align: middle;
	padding: 0 8px;
	font-size: 13px;
}


.news {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

#index-topics {
	position: relative;
	width: 100%;
	height: 500px;
	letter-spacing: 0.075em;
	overflow: hidden;
}
#index-topics .fir {
	position: absolute;
	top: 0;
	right: 50%;
	width: 60%;
	width : -webkit-calc(50% + 60px) ;
	width : calc(50% + 60px) ;
	height: 500px;
	margin-right: -60px;
	overflow: hidden;
	z-index: 1;
}
#index-topics .sec {
	position: relative;
	left: 50%;
	width: 60%;
	width : -webkit-calc(50% + 60px) ;
	width : calc(50% + 60px) ;
	height: 500px;
	margin-left: -60px;
	transform: skewX(-12.5deg);
	transform-origin: bottom left;
	z-index: 2;
}
#index-topics .sec-mask {
	height: 500px;
	overflow: hidden;
}
#index-topics .sec-img {
	width: 100%;
	height: 500px;
	transform: skewX(12.5deg);
	transform-origin: bottom left;
}
#index-topics .fir img,
#index-topics .sec-img img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 860px;
	max-width: 860px;
	height: 500px;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	z-index: 1;
}
@media screen and (min-width:1600px) {
#index-topics .fir img,
#index-topics .sec-img img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
}
#index-topics h3 {
	display: block;
	position: absolute;
	top: 52%;
	left: 50%;
	width: 100%;
	text-align: center;
	white-space: nowrap;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	z-index: 2;
}
@media screen and (min-width:1050px) {
#index-topics .n-title-w br {
	display: none;
}
#index-topics .n-title-w span {
	display: inline-block;
	margin: 0;
	vertical-align: middle;
}
}



#index-interview {
	position: relative;
	width: 100%;
	letter-spacing: 0.075em;
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center;
}
#index-interview &gt; div {
	position: relative;
	float: left;
	background: #fff;
	width: 33.33%;
	height: 400px;
	overflow: hidden;
}
#index-interview h3 {
	display: block;
	position: absolute;
	bottom: 35px;
	width: 100%;
	font-size: 16px;
	text-align: center;
	white-space: nowrap;
	z-index: 2;
}
#index-interview &gt; div img {
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	width: 600px;
	max-width: 600px;
	height: 400px;
	-webkit-transform: translate3d(-50%, 0, 0);
	-ms-transform: translate3d(-50%, 0, 0);
	transform: translate3d(-50%, 0, 0);
	z-index: 1;
}
@media screen and (min-width:1800px) {
#index-interview &gt; div img {
	width: 101%;
	max-width: 101%;
	height: auto;
}
}
#index-interview p {
	margin: 0 0 8px 0;
	line-height: 1.5;
}
#index-interview p.name {
	margin: 0 0 20px 0;
	font-size: 18px;
}


#index-workstyle {
	position: relative;
	width: 100%;
	padding: 0 20px;
	letter-spacing: 0.075em;
	overflow: hidden;
}
#index-workstyle h2 {
	position: relative;
	padding: 30px 0;
	font-size: 40px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.08em;
	text-align: center;
}
#index-workstyle h2 span {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	border-radius: 50%;
	background: #00ffe6;
	width: 370px;
	height: 20px;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	z-index: -1;
}
#index-workstyle div {
	position: relative;
	float: left;
	width: 49%;
	width: calc(50% - 10px);
	height: 270px;
	margin: 0 0 20px 0;
	overflow: hidden;
}
#index-workstyle div:nth-of-type(2n) {
	float: right;
}
#index-workstyle div a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,48,0);
	width: 100%;
	height: 270px;
	z-index: 2;
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
#index-workstyle div a h3 {
	position: absolute;
	top: 240px;
	left: 20px;
	font-size: 18px;
	font-weight: normal;
	text-decoration: none;
	line-height: 1;
	text-shadow: 0 0 20px #000;
	white-space: nowrap;
	color: #fff;
}
#index-workstyle div a:hover {
	background: rgba(0,0,48,0.8);
}
#index-workstyle div a:hover h3 {
	bottom: auto;
	top: 50%;
	left: 50%;
	font-size: 24px;
	text-shadow: none;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	opacity: 1;
	-webkit-animation: work 0.3s ease-out 1;
	-ms-animation: work 0.3s ease-out 1;
	animation: work 0.3s ease-out 1;
}
@-webkit-keyframes work { 
	from { opacity: 0; } 
	to { opacity: 1; }
}
@-ms-keyframes work { 
	from { opacity: 0; } 
	to { opacity: 1; }
}
@keyframes work { 
	from { opacity: 0; } 
	to { opacity: 1; }
}
#index-workstyle div img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: inherit;
	width: 720px !important;
	height: auto;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	-webkit-transition: 0.3s linear;
	-ms-transition: 0.3s linear;
	transition: 0.3s linear;
	z-index: 1;
}
#index-workstyle div:hover img {
	width: 740px !important;
	height: auto;
}
@media screen and (min-width:1500px) {
#index-workstyle div img {
	width: 100% !important;
}
#index-workstyle div:hover img {
	width: 105% !important;
}
}
@media screen and (max-width:1200px) {
#index-workstyle div:nth-of-type(1) img {
	left: 62%;
}
#index-workstyle div:nth-of-type(2) img {
	left: 38%;
}
#index-workstyle div:nth-of-type(3) img {
	left: 38%;
}
#index-workstyle div:nth-of-type(4) img {
	left: 62%;
}
#index-workstyle div:nth-of-type(5) img {
	left: 62%;
}
#index-workstyle div:nth-of-type(6) img {
	left: 38%;
}
}


#index-about {
	position: relative;
	background: #f2f2f2;
	width: 100%;
	padding: 0 20px 20px 20px;
	overflow: hidden;
	z-index: -2;
}
#index-about h2 {
	position: relative;
	padding: 30px 0;
	font-size: 40px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.08em;
	text-align: center;
}
#index-about .about-link {
	position: relative;
	width: 100%;
	height: 300px;
	overflow: hidden;
}
#index-about .about-link .about-box {
	position: absolute;
	top: 0;
	width: 50%;
	height: 300px;
	overflow: visible;
}
#index-about .about-link .about-box:nth-of-type(1) {
	left: 0;
}
#index-about .about-link .about-box:nth-of-type(2) {
	right: 0;
}
#index-about .about-link .about-box div {
	position: absolute;
	top: 0;
	width: calc(100% + 40px);
	height: 300px;
	transform: skewX(-18deg);
	overflow: hidden;
}
#index-about .about-link .about-box:nth-of-type(1) div {
	left: -50px;
}
#index-about .about-link .about-box:nth-of-type(2) div {
	right: -50px;
}
#index-about .about-link .about-box div span {
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 300px;
	-webkit-transform: skewX(18deg);
	-ms-transform: skewX(18deg);
	transform: skewX(18deg);
	-webkit-transition: 0.3s linear;
	-ms-transition: 0.3s linear;
	transition: 0.3s linear;
	z-index: 1;
}
#index-about .about-link .about-box:nth-of-type(1) div span {
	left: 50px;
	background: url(../img/index-about_01.jpg) center center no-repeat;
	background-size: 780px;
}
#index-about .about-link .about-box:nth-of-type(2) div span {
	right: 50px;
	background: url(../img/index-about_02.jpg) center center no-repeat;
	background-size: 780px;
}
#index-about .about-link .about-box:hover div span {
	opacity: 0.5;
	background-size: 800px;
}
@media screen and (min-width:1550px) {
#index-about .about-link .about-box div span{
	background-size: 100% !important;
}
#index-about .about-link .about-box:hover div span {
	opacity: 0.5;
	background-size: 105% !important;
}
}
#index-about .about-link .about-box a &gt; div {
	display: none;
}
#index-about .about-link a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 300px;
	-webkit-font-smoothing: subpixel-antialiased;
	-webkit-transform: translateZ(0) scale(1.0, 1.0);
	z-index: 2;
}
#index-about .about-link h3 {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	font-size: 22px;
	font-weight: normal;
	text-align: center;
	white-space: nowrap;
	letter-spacing: 0.08em;
	text-shadow: 0 0 20px #000;
	color: #fff;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	-webkit-transition: 0.3s linear;
	-ms-transition: 0.3s linear;
	transition: 0.3s linear;
	z-index: 2;
}
#index-about .about-link a:hover h3 {
	font-size: 32px;
	text-shadow: 0 0 20px #fff;
	color: #274865;
}


#index-info {
	position: relative;
	width: 100%;
	background: url(../img/index-info-bg.jpg) center center no-repeat;
	background-size: cover;
	padding: 80px 0;
}
#index-info ul {
	display: table;
	table-layout: fixed;
	width: 100%;
	height: 120px;
	margin: 0 auto;
	padding: 0 10px;
}
#index-info ul li {
	display: table-cell;
	height: 120px;
}
#index-info ul li a {
	display: block;
	position: relative;
	background: #fff;
	width: 90%;
	height: 120px;
	font-size: 16px;
	line-height: 120px;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	color: #274865;
	margin:0 auto;
}
#index-info ul li a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #274865;
	border-right: 2px solid #274865;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 2;
}
#index-info ul li a span {
	position: relative;
	display: inline;
	padding: 0 16px 0 0;
}
#index-info ul li a span:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	background: url(../img/icon-blank.svg) center center no-repeat;
	background-size: 12px;
	width: 12px;
	height: 12px;
	margin: -6px 0 0 0;
	z-index: 1;
}
#index-info ul li a:hover {
	background: #405d77;
	color: #fff;
}
#index-info ul li a:hover:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
#index-info ul li a:hover span:before {
	background: url(../img/icon-blank2.svg) center center no-repeat;
	background-size: 12px;
}
@media screen and (max-width:1000px) {
#index-info ul {
	padding: 0;
}
#index-info ul li a {
	width: 94%;
	font-size: 14px;
}
#index-info ul li a:after {
	display: none;
}
}

/* #entry-info {
	position: relative;
	width: 100%;
	background: url(../img/index-info-bg.jpg) center center no-repeat;
	background-size: cover;
	padding: 80px 0;
}
#entry-info ul {
	width: 670px;
	height: 120px;
	margin: 0 auto;
}
#entry-info ul li {
	float: left;
	width: 100%;
	height: 120px;
}
#entry-info ul li a {
	display: block;
	position: relative;
	background: #fff;
	width: 100%;
	height: 120px;
	font-size: 16px;
	line-height: 120px;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	color: #274865;
}
#entry-info ul li a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #274865;
	border-right: 2px solid #274865;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 2;
}
#entry-info ul li a span {
	position: relative;
	display: inline;
	padding: 0 20px 0 0;
}
#entry-info ul li a span:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	background: url(../img/icon-blank.svg) center center no-repeat;
	background-size: 12px;
	width: 12px;
	height: 12px;
	margin: -6px 0 0 0;
	z-index: 1;
}
#entry-info ul li a:hover {
	background: #405d77;
	color: #fff;
}
#entry-info ul li a:hover:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
#entry-info ul li a:hover span:before {
	background: url(../img/icon-blank2.svg) center center no-repeat;
	background-size: 12px;
} */
#entry-info {
	position: relative;
	width: 100%;
	background: #fff;
	padding: 0 0 80px 0;
}
#entry-info ul {
	width: 670px;
	height: 120px;
	margin: 0 auto;
}
#entry-info ul li {
	float: left;
	width: 100%;
	height: 120px;
}
#entry-info ul li a {
	display: block;
	position: relative;
	background: #ff395e;
	width: 100%;
	height: 120px;
	font-size: 16px;
	line-height: 120px;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	color: #fff;
}
#entry-info ul li a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	color: #fff;
	z-index: 2;
}
#entry-info ul li a:hover {
	background: #405d77;
}




/* main-field */

.main-field {
	position: relative;
	padding: 80px 0;
	z-index: 2;
}
.main-field.gr {
	background: #f7f7f7;
}
.main-field.cp {
	padding: 60px 0;
}
.main-field.st {
	padding: 50px 0;
}

.main-field a:link,
.main-field a:visited {
	color: #5099d8;
	text-decoration: underline;
}
.main-field a:hover,
.main-field a:active {
	text-decoration: underline ;
	color: #274865;
}

.main-field .head1 {
	margin-bottom: 40px;
	font-size: 28px;
	font-weight: normal;
	letter-spacing: 0.075em;
	line-height: 1.3;
}
.main-field .head1 .pt {
	display: inline-block;
	vertical-align: middle;
	background: #274865;
	margin: 0 10px 4px 0;
	padding: 6px 18px;
	font-size: 20px;
	line-height: 1;
	color: #fff;
}
.main-field .head2 {
	margin: 60px 0 30px 0;
	font-size: 24px;
	font-weight: normal;
	letter-spacing: 0.075em;
	line-height: 1.3;
}
.main-field .head3 {
	border-left: 4px solid #2f8cde;
	margin: 40px 0 20px 0;
	padding: 0 0 0 20px;
	font-size: 22px;
	font-weight: normal;
	line-height: 1.3;
}
.main-field .head4 {
	position: relative;
	min-height: 44px;
	padding: 9px 0 9px 60px;
	font-size: 22px;
	font-weight: normal;
	line-height: 1.2;
}
.main-field .head4 span {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	background: #fdff2d;
	width: 44px;
	height: 44px;
	font-size: 20px;
	font-weight: bold;
	line-height: 44px;
	text-align: center;
	overflow: hidden;
}
.main-field .head4 + p {
	margin-top: 15px;
}

.main-field .head1:first-child,
.main-field .head2:first-child,
.main-field .head3:first-child,
.main-field .head4:first-child {
	margin-top: 0;
}
.main-field .head1:last-child,
.main-field .head2:last-child,
.main-field .head3:last-child,
.main-field .head4:last-child {
	margin-bottom: 0;
}

.main-field p {
	margin: 20px 0;
}
.main-field p:first-child {
	margin-top: 0;
}
.main-field p:last-child {
	margin-bottom: 0;
}

.main-field .big {
	font-size: 16px;
}
.main-field .normal {
	font-size: 14px;
}
.main-field .small {
	font-size: 12px;
}

.main-field ul.list {
	margin-top: 20px;
	margin-bottom: 20px;
}
.main-field ul.list:first-of-type {
	margin-top: 0;
}
.main-field ul.list:last-of-type {
	margin-bottom: 0;
}
.main-field ul.list li {
	position: relative;
	padding: 0 0 0 1.5em;
}
.main-field ul.list li:before {
	content:"";
	position: absolute;
	top: 0.75em;
	left: 0.5em;
	background: #2e3b4e;
	width: 5px;
	height: 5px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.main-field ul.list .alert {
	padding-left:20px;
}

.main-field ol.list {
	counter-reset: num;
	margin-top: 20px;
	margin-bottom: 20px;
}
.main-field ol.list:first-of-type {
	margin-top: 0;
}
.main-field ol.list:last-of-type {
	margin-bottom: 0;
}
.main-field ol.list li {
	position: relative;
	padding: 0 0 0 2.4em;
}
.main-field ol.list li:before {
	counter-increment: num;
	content: counter(num) " .";
	position: absolute;
	top: 0;
	left: 0;
	width: 1.8em;
	text-align: right;
	text-wrap: none;
	white-space: nowrap;
}

.main-field .column1,
.main-field .column2,
.main-field .column3,
.main-field .column4 {
	position: relative;
	width: 100%;
}
.main-field .column2 &gt; div {
	position: relative;
	float: left;
	width: 47.4%;
}
.main-field .column2 &gt; div:nth-child(2n) {
	float: right;
}
.main-field .column2 &gt; div.txt-left,
.main-field .column2 &gt; div.img-left {
	float: left;
}
.main-field .column2 &gt; div.img-right,
.main-field .column2 &gt; div.txt-right {
	float: right;
}

.main-field .column3 &gt; div {
	position: relative;
	float: left;
	width: 31.13%;
	margin-right: 3.3%;
}
.main-field .column3 &gt; div:nth-child(3n) {
	float: right;
	width: 31.13%;
	margin-right: 0;
}
.main-field .column3.double &gt; div {
	float: left;
	width: 31.13%;
	margin: 0;
}
.main-field .column3.double &gt; div:nth-child(2) {
	float: right;
}
.main-field .column3.double &gt; div.text {
	width: 65.56%;
}
.main-field .column4 &gt; div {
	position: relative;
	float: left;
	width: 22.6%;
	margin-right: 3.2%;
}
.main-field .column4 &gt; div:nth-child(4n) {
	float: right;
	width: 22.6%;
	margin-right: 0;
}

.main-field .border-box {
	position: relative;
	max-width: 100%;
	border-bottom: 1px solid #e4e4e4;
	margin: 0 0 60px 0;
	padding: 0 0 60px 0;
}

.main-field .imgbox {
	position: relative;
	width: 100%;
	margin: 0 auto 15px auto;
	padding: 66% 0 0 0;
	overflow: hidden;
}
.main-field .imgbox:last-child {
	margin-bottom: 0px;
}
.main-field .imgbox &gt; img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}

.main-field .youtube {
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 56.25% 0 0 0;
	overflow: hidden;
}
.main-field .youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
.main-field .youtube-wrapper {
	position: relative;
	width: 100%;
	max-width: 768px;
	margin: 0 auto;
}

.main-field table {
	width: 100%;
}
.main-field table.basic {
	margin: 0 0 20px 0;
}
.main-field table.basic &gt; tr &gt; th,
.main-field table.basic &gt; tbody &gt; tr &gt; th {
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	background: #e7f5fb;
	padding: 12px 15px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}
.main-field table.basic .table-top th {
	background: #3197ca;
	text-align: center;
	color: #fff;	
}
.main-field table.basic &gt; tr &gt; td,
.main-field table.basic &gt; tbody &gt; tr &gt; td {
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	background: #fff;
	padding: 12px 15px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}
.main-field table.basic.light th {
	background: #fff;
	color: #2e3b4e;
}
.main-field table.basic.light .table-top th {
	background: #fff;
	text-align: center;
	color: #2e3b4e;
}

.main-field table.simple {
	margin: 0 0 20px 0;
}
.main-field table.simple &gt; tr &gt; th,
.main-field table.simple &gt; tbody &gt; tr &gt; th {
	vertical-align: top;
	white-space: nowrap;
	border-bottom: 1px solid #e7e7e7;
	padding: 15px 15px 15px 0;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}
.main-field table.simple &gt; tr &gt; td,
.main-field table.simple &gt; tbody &gt; tr &gt; td {
	vertical-align: top;
	border-bottom: 1px solid #e7e7e7;
	padding: 15px 0;
	text-align: left;
	line-height: 1.6;
}
.main-field table.simple table {
	width: 100%;
}
.main-field table.simple table th {
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	background: #e7f5fb;
	padding: 12px 15px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}
.main-field table.simple table td {
	vertical-align: middle;
	border: 1px solid #d5d5d5;
	background: #fff;
	padding: 12px 15px;
	font-weight: normal;
	text-align: left;
	line-height: 1.6;
}

.main-field .blankbox {
	position: absolute;
	background: #f5f5f5;
	z-index: -1;
}

.main-field .link a {
	position: relative;
	display: inline-block;
	padding: 0 14px 0 0;
}
.main-field .link a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 6px;
	height: 6px;
	border-top: 1px solid #3093cc;
	border-right: 1px solid #3093cc;
	margin: -3px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 1;
}

.main-field .pdf a {
	position: relative;
	padding: 0 0 0 20px;
}
.main-field .pdf a:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: url(../img/icon-pdf.svg) center center no-repeat;
	background-size: 14px 18px;
	width: 14px;
	height: 18px;
	margin: -11px 0 0 0;
	z-index: 1;
}

.main-field .blank a {
	position: relative;
	padding: 0 20px 0 0;
}
.main-field .blank a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 2px;
	background: url(../img/icon-blank.svg) center center no-repeat;
	background-size: 12px;
	width: 12px;
	height: 12px;
	margin: -6px 0 0 0;
	z-index: 1;
}




/* btn */

a.hottopic-btn {
	position: relative;
	display: table;
	width: 600px;
	height: 150px;
	margin: 0 auto;
	text-decoration: none;
}
a.hottopic-btn:before {
	content:"";
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	background: #fff;
	width: 24px;
	height: 24px;
	margin: -12px 0 0 0;
	border-radius: 12px;
	-moz-border-radius: 12px;
	-webkit-border-radius: 12px;
	z-index: 1;
}
a.hottopic-btn:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #274865;
	border-right: 1px solid #274865;
	margin: -4px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 2;
}
a.hottopic-btn .image {
	position: relative;
	display: table-cell;
	width: 300px;
	height: 150px;
	overflow: hidden;
}
a.hottopic-btn .image img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}
a.hottopic-btn .text {
	position: relative;
	display: table-cell;
	background: #274865;
	width: 300px;
	height: 150px;
	padding: 20px;
	color: #fff;
	font-size: 18px;
	line-height: 1;
	text-decoration: none;
	vertical-align: middle;
}
a.hottopic-btn .text .n-title-w span {
	margin: 0 0 15px 0;
}
a.hottopic-btn:hover .text {
	background: #405d77;
	text-decoration: none;
}

.interviews-btn {
	width: 100%;
	height: 204px;
	display: flex !important;
	justify-content: center;
}
.interviews-btn li {
	position: relative;
	float: left;
	width: 17.7%;
	height: 204px;
	margin: 0 2.86% 0 0;
	overflow: hidden;
}
.interviews-btn li:last-child {
	float: right;
	margin: 0;
}
.interviews-btn li img {
	position: absolute;
	top: 0;
	left: 50%;
	right: 0;
	width: 204px;
	max-width: 204px;
	height: 204px;
	-webkit-transform: translate3d(-50%, 0, 0);
	-ms-transform: translate3d(-50%, 0, 0);
	transform: translate3d(-50%, 0, 0);
	z-index: 1;
}
.interviews-btn li p {
	margin: 0 0 15px 0;
	font-size: 20px;
	line-height: 1;
}
.interviews-btn a.overbox div {
	padding: 0 5px;
}
.interviews-btn a.overbox span {
	width: 100%;
	max-width: 150px;
}

.office-btn {
	width: 100%;
	margin: 30px 0 60px 0;
	text-align: center;
	font-size: 0;
	line-height: 1;
}
.office-btn li {
	display: inline-block;
	width: 326px;
	margin: 0 10px;
}
.office-btn li a {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	background-color: #2f8cde;
	width: 100%;
	padding: 25px 30px 25px 96px;
	font-size: 14px;
	line-height: 1;
	text-align: center;
	text-decoration: none !important;
	color: #fff !important;
}
.office-btn li:nth-of-type(1) a {
	background: #2f8cde url(../img/aboutus/aboutus-office_01.jpg) left center no-repeat;
	background-size: contain;
}
.office-btn li:nth-of-type(2) a {
	background: #2f8cde url(../img/aboutus/aboutus-office_02.jpg) left center no-repeat;
	background-size: contain;
}
.office-btn li a:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 8px;
	height: 8px;
	margin: -8px 0 0 0;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 2;
}
.office-btn li a:hover {
	background-color: #8abce8;
}

.aboutus-btn {
	position: relative;
	width: 100%;
	overflow: hidden;
	margin-bottom: -30px;
}
.aboutus-btn li {
	position: relative;
	float: left;
	width: 31.65%;
	height: 130px;
	margin: 0 2.52% 30px 0;
	overflow: hidden;
}
.aboutus-btn li:nth-of-type(3n) {
	float: right;
	margin: 0 0 30px 0;
}
.aboutus-btn.tc {
	text-align: center;
}
.aboutus-btn.tc li {
	display: inline-block;
	float: none;
	margin: 0 1.26% 30px 1.26%;
}
.aboutus-btn li img {
	position: absolute;
	top: 50%;
	left: 50%;
	right: 0;
	width: 366px;
	max-width: 366px;
	height: auto;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	z-index: 1;
}
.aboutus-btn li p {
	position: absolute;
	top: 50%;
	left: 50%;
	right: 0;
	width: 100%;
	padding: 0 10px;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	color: #fff;
	letter-spacing: 0.08em;
	text-shadow: 0 0 10px #000;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	z-index: 1;
}
.aboutus-btn li.active {
	opacity: 0.5;
}
.aboutus-btn li.active a {
	pointer-events: none;
}

.entry-btn {
	width: 100%;
	margin: 60px 0 0 0 !important;
	text-align: center;
}
.entry-btn a {
	display: inline-block;
	vertical-align: middle;
	background: #ff395e;
	min-width: 540px;
	padding: 28px 35px;
	font-size: 16px;
	line-height: 1;
	text-align: center;
	text-decoration: none !important;
	color: #fff !important;
}
.entry-btn a:hover {
	opacity: 0.8;
}




/* contact */

.contact-menu {
	position: relative;
	width: 100%;
	margin: 30px 0 0 0;
}
.contact-menu &gt; div {
	float: left;
	background: #f5f5f5;
	width: 32.7%;
	margin: 0 0.95% 11px 0;
	padding: 40px 45px 30px 45px;
}
.contact-menu &gt; div:nth-child(3n) {
	margin: 0 0 11px 0;
}
.contact-menu &gt; div &gt; div {
	margin: 0 0 11px 0;
	padding: 0 0 1px 0;
}
.contact-menu h2 {
	position: relative;
	display: table;
	width: 100%;
	height: 46px;
	margin: 0 0 20px 0;
}
.contact-menu h2:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	display:block;
	background: #bebebe;
	width: 46px;
	height: 46px;
	-webkit-transform: translate3d(0, -50%, 0);
	-ms-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
.contact-menu h2.i01:before {
	background: #bebebe url(../img/contact/contact-icon_01.svg) center center no-repeat;
	background-size: 46px;
}
.contact-menu h2.i02:before {
	background: #bebebe url(../img/contact/contact-icon_02.svg) center center no-repeat;
	background-size: 46px;
}
.contact-menu h2.i03:before {
	background: #bebebe url(../img/contact/contact-icon_03.svg) center center no-repeat;
	background-size: 46px;
}
.contact-menu h2.i04:before {
	background: #bebebe url(../img/contact/contact-icon_04.svg) center center no-repeat;
	background-size: 46px;
}
.contact-menu h2.i05:before {
	background: #bebebe url(../img/contact/contact-icon_05.svg) center center no-repeat;
	background-size: 46px;
}
.contact-menu h2 span {
	display: table-cell;
	width: 100%;
	height: 46px;
	padding: 0 0 0 60px;
	font-size: 18px;
	font-weight: normal;
	line-height: 1.3;
	vertical-align: middle;
}
.module .contact-menu .btn a {
	margin: 0;
	padding: 20px 30px 20px 20px;
	font-size: 14px;
	line-height: 1.2;
}
.module .contact-menu p {
	margin: 0;
	font-size: 12px;
}

.module ul.contact-flow {
	position: relative;
	border: 1px solid #d5d5d5;
	background: #f5f5f5;
	width: 100%;
	height: 50px;
	margin: 0 0 40px 0;
	color: #999;
	overflow: hidden;
}
.module ul.contact-flow li {
	position: relative;
	float: left;
	width: 33.3333%;
	margin: 0;
	padding: 0;
	line-height: 48px;
	text-align: center;
}
.module ul.contact-flow li:nth-child(1n) {
	z-index: 3;
}
.module ul.contact-flow li:nth-child(2n) {
	z-index: 2;
}
.module ul.contact-flow li:nth-child(3n) {
	z-index: 1;
}
.module .contact-flow li:before {
	display: none;
}
.module .contact-flow li:after {
	content: "";
	position: absolute;
	top: 0;
	right: -14px;
	background: url(../img/flow_02.png) ;
	background-size: 100% 100%;
	width: 15px;
	height: 48px;
}
.module .contact-flow li.now {
	background: #004d65;
	color: #fff;
}
.module .contact-flow li.now:after {
	content: "";
	position: absolute;
	top: 0;
	right: -14px;
	background: url(../img/flow_01.png) ;
	background-size: 100% 100%;
	width: 15px;
	height: 48px;
}
.module .contact-flow li:last-child:after {
	display: none;
}
.module .contact-flow li span {
	position: relative;
	display: inline-block;
	padding: 0 0 0 20px;
	white-space: nowrap;
}
.module .contact-flow li span.no1:before {
	content: "1";
	position: absolute;
	top: 50%;
	left: 0;
	height: 24px;
	margin-top: -12px;
	line-height: 24px;
	font-size: 24px;
}
.module .contact-flow li span.no2:before {
	content: "2";
	position: absolute;
	top: 50%;
	left: 0;
	height: 24px;
	margin-top: -12px;
	line-height: 24px;
	font-size: 24px;
}
.module .contact-flow li span.no3:before {
	content: "3";
	position: absolute;
	top: 50%;
	left: 0;
	height: 24px;
	margin-top: -12px;
	line-height: 24px;
	font-size: 24px;
}

.contact-form {
	position: relative;
	width: 100%;
}
.contact-form table {
	position: relative;
	border-top: 1px solid #e7e7e7;
	width: 100%;
	margin: 0 0 40px 0;
}
.contact-form table th {
	position: relative;
	vertical-align: top;
	white-space: nowrap;
	border-bottom: 1px solid #e7e7e7;
	width: 300px;
	padding: 22px 15px 22px 0;
	font-weight: normal;
	text-align: left;
	line-height: 1.4;
}
.contact-form table th .required {
	display: block;
	position: absolute;
	top: 21px;
	right: 15px;
	background: #45b8a9;
	width: 50px;
	height: 22px;
	font-size: 11px;
	line-height: 22px;
	text-align: center;
	color: #fff;
}
.contact-form table td {
	position: relative;
	vertical-align: middle;
	border-bottom: 1px solid #e7e7e7;
	padding: 10px 0;
	text-align: left;
	line-height: 1.6;
}
.contact-form table.check td {
	padding: 20px 0;
	line-height: 1.6;
}
.contact-form table td div {
	position: relative;
	width: 100%;
	padding: 11px 0;
}
.module .contact-form table ul {
	margin: 0;
	padding: 0;
}
.module .contact-form table li {
	margin: 0;
	padding: 0;
}
.module .contact-form table li:before {
	display: none;
}
.module .contact-form table .error {
	padding: 0 6px;
	color: #c33;
}

.contact-form input[type="text"],
.contact-form input[type="tel"],
.contact-form input[type="email"],
.contact-form input[type="url"],
.contact-form select {
	border: 1px solid #f4f4f4;
	background: #f4f4f4;
	width: 65%;
	height: 45px;
	padding: 10px 15px;
	font-size: 14px;
	cursor: pointer;
	vertical-align: middle;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
}
.contact-form.nf input[type="text"] {
	width: 40%;
}
.contact-form textarea {
	border: 1px solid #f4f4f4;
	background: #f4f4f4;
	border: none;
	width: 100%;
	margin: 0;
	padding: 10px 15px;
	font-size: 14px;
	cursor: pointer;
	vertical-align: middle;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
}
.contact-form input[type="text"]:hover,
.contact-form input[type="tel"]:hover,
.contact-form input[type="email"]:hover,
.contact-form input[type="url"]:hover,
.contact-form select:hover,
.contact-form textarea:hover {
	border: 1px solid #ccc;
}
.contact-form input[type="submit"].search {
	background: #666;
	border: none;
	height: 45px;
	padding: 0 20px;
	font-size: 14px;
	line-height: 1;
	text-align: center;
	vertical-align: middle;
	color: #fff;
	cursor: pointer;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	-webkit-transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	transition: 0.2s linear;
}
.contact-form input[type="submit"].search:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

.contact-form input[type="checkbox"],
.contact-form input[type="radio"] {
	display: none;
}
.contact-form label {
	display:inline-block;
	cursor: pointer;
	margin: 2px 0;
}
.contact-form label span {
	padding-right: 15px;
}
.contact-form label span:before {
	content: "";
	display:inline-block;
	background: #fff;
	border: 2px solid #c1c1c1;
	width: 8px;
	height: 8px;
	margin: 2px 6px 4px 0;
	vertical-align: middle;
}
.contact-form input[type="radio"] + span:before {
	border-radius: 20px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
}
.contact-form input[type="checkbox"]:checked + span,
.contact-form input[type="radio"]:checked + span {
	color: #000;
}
.contact-form input[type="checkbox"]:checked + span:before,
.contact-form input[type="radio"]:checked + span:before {
	border: 2px solid #004e65;
	background: #458ec7;
}
.contact-form input[type="checkbox"][disabled] + span,
.contact-form input[type="radio"][disabled] + span {
	display: none;
}
.contact-form label input[type="hidden"] + span {
	display: inline !important;
	color: #000 !important;
}
.contact-form label input[type="hidden"] + span:before {
	border: 2px solid #458ec7 !important;
	background: #fff !important;
}

.module .contact-form .product {
	padding: 11px 0 0 0;
}
.contact-form .product label {
	display:block;
	cursor: pointer;
	padding: 0;
}
.module .contact-form .product ul {
	float: left;
	width: 48%;
	margin: 0 1.83% 12px 0;
	padding: 0;
}
.module .contact-form .product ul:nth-child(odd) {
	clear: both;
	float: left;
}
.module .contact-form .product ul:nth-child(even) {
	margin: 0 0 12px 0;
}
.module .contact-form .product li {
	margin: 0 0 4px 0;
	padding: 0 0 0 10px;
	font-size: 12px;
}
.module .contact-form .product li.category {
	background: #ebf0f3;
	margin: 0 0 10px 0;
	padding: 8px 10px;
	font-size: 14px;
	color: #2e3b4e;
}
.contact-form .industry {
	width: 100%;
}
.module .contact-form .industry li {
	float: left;
	width: 170px;
	margin: 0 0 5px 0;
	padding: 0 10px;
}
.module .contact-form .send {
	margin: 30px 0 0 0;
}

.module .contact-form .ul3c {
	width: 100%;
	margin: 5px 0 0 0;
}
.module .contact-form .ul3c li {
	float: left;
	width: 250px;
	margin: 5px 0 0 0;
}

.information-box {
	border: 1px solid #e7e7e7;
	width: 100%;
	height: 200px;
	margin: 0 0 40px 0;
	padding: 20px;
	overflow-y: scroll;
}
.information-box li ul,
.information-box li ol {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

.contact-form .wpcf7-confirm,
.contact-form .wpcf7-submit,
.contact-form .wpcf7-back {
	display: inline-block;
	position: relative;
	border: none;
	background: #3193cc;
	width: 100%;
	max-width: 730px;
	padding: 28px 30px;
	font-size: 20px;
	font-weight: normal;
	color: #fff;
	text-decoration: none;
	text-align: center;
	line-height: 1;
	cursor: pointer;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	-webkit-transition: 0.2s linear;
}
.contact-form .wpcf7-back {
	background: #004e65;
}
.contact-form .wpcf7-confirm:hover,
.contact-form .wpcf7-submit:hover,
.contact-form .wpcf7-back:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

.custom-wpcf7c-confirmed .contact-form {}
.custom-wpcf7c-confirmed .contact-form input[type="text"],
.custom-wpcf7c-confirmed .contact-form input[type="tel"],
.custom-wpcf7c-confirmed .contact-form input[type="email"],
.custom-wpcf7c-confirmed .contact-form input[type="url"],
.custom-wpcf7c-confirmed .contact-form textarea,
.custom-wpcf7c-confirmed .contact-form select {
	border: 1px solid #fff;
	background: #fff;
}
.custom-wpcf7c-confirmed .contact-form input,
.custom-wpcf7c-confirmed .contact-form textarea,
.custom-wpcf7c-confirmed .contact-form label {
	cursor: default;
}

.information-box {
	border: 1px solid #e7e7e7;
	width: 100%;
	height: 200px;
	margin: 0 0 40px 0;
	padding: 20px;
	overflow-y: scroll;
}
.information-box li ul,
.information-box li ol {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

.rc-anchor-alert,
.rc-anchor {
	z-index: 9999;
}

div.wpcf7-response-output {
    border: 2px solid #e66 !important;
    margin: 30px auto !important;
    padding: 15px !important;
	text-align: center !important;
	color: #222 !important;
}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
	border: 2px solid #e33 !important;
	color: #e33 !important;
}
div.wpcf7 .ajax-loader {
	display: none !important;
}

span.wpcf7-list-item {
	margin: 0 !important;
}

.wpcf7-form {
	margin-top: -100px;
	padding-top: 100px;
}


.module .btn {
	font-size: 0px;
}
.module .btn a,
.module .btn button {
	display: inline-block;
	position: relative;
	border: none;
	background: #3193cc;
	width: 100%;
	max-width: 730px;
	padding: 28px 40px 28px 30px;
	font-size: 20px;
	font-weight: normal;
	color: #fff;
	text-decoration: none;
	text-align: center;
	line-height: 1;
	cursor: pointer;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	transition: 0.2s linear;
	-ms-transition: 0.2s linear;
	-webkit-transition: 0.2s linear;
}
.module .btn a:after,
.module .btn button:after {
	content:"";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	margin: -5px 0 0 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	z-index: 2;
}
.module .btn a:hover,
.module .btn button:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
.module .btn .blank,
.module .btn .contact,
.module .btn .download,
.module .btn .material,
.module .btn .people {
	position: relative;
	display: inline-block;
	padding: 0 0 0 60px;
}
.module .btn .print,
.module .btn .map {
	position: relative;
	display: inline-block;
	padding: 0 0 0 50px;
}
.module .btn .blank:before,
.module .btn .contact:before,
.module .btn .download:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	border: 1px solid #fff;
	width: 42px;
	height: 42px;
	margin-top: -21px;
	border-radius: 22px;
	-moz-border-radius: 22px;
	-webkit-border-radius: 22px;
}
.module .btn .blank:before {
	background: url(../img/icon-blank2.svg) center center no-repeat;
	background-size: 24px;
}
.module .btn .contact:before {
	background: url(../img/icon-mail2.svg) center center no-repeat;
	background-size: 24px;
}
.module .btn .download:before {
	background: url(../img/icon-dl2.svg) center center no-repeat;
	background-size: 24px;
}
.module .btn .material:before,
.module .btn .people:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	border: 1px solid #004e65;
	width: 42px;
	height: 42px;
	margin-top: -21px;
	border-radius: 22px;
	-moz-border-radius: 22px;
	-webkit-border-radius: 22px;
}
.module .btn .material:before {
	background: url(../img/icon-mt.svg) center center no-repeat;
	background-size: 24px;
}
.module .btn .people:before {
	background: url(../img/icon-pe.svg) center center no-repeat;
	background-size: 24px;
}
.module .btn .print:before,
.module .btn .map:before {
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	background-color: #a5a5a5;
	width: 34px;
	height: 34px;
	margin-top: -17px;
	border-radius: 17px;
	-moz-border-radius: 17px;
	-webkit-border-radius: 17px;
}
.module .btn .print:before {
	background: #a5a5a5 url(../img/icon-print.svg) center center no-repeat;
	background-size: 18px;
}
.module .btn .map:before {
	background: #a5a5a5 url(../img/icon-map.svg) center center no-repeat;
	background-size: 20px;
}


.module ol {
	counter-reset: num;
	margin-top: 20px;
	margin-bottom: 20px;
}
.module ol:first-of-type {
	margin-top: 0;
}
.module ol:last-of-type {
	margin-bottom: 0;
}
.module ol li {
	position: relative;
	padding: 0 0 0 2.4em;
}
.module ol li:before {
	counter-increment: num;
	content: counter(num) " .";
	position: absolute;
	top: 0;
	left: 0;
	width: 1.8em;
	text-align: right;
	text-wrap: none;
	white-space: nowrap;
}

.module ol.num li {
	margin-left: 1em;
	padding: 0 0 0 2.6em;
}
.module ol.num li:before {
	content: "("counter(num)")";
	left: 0;
	width: 2em;
	text-align: center;
	white-space: nowrap;
}

.module ol.notes li {
	padding: 0 0 0 2.8em;
}
.module ol.notes li:before {
	content: "\203B"counter(num);
	width: 2.5em;
	text-align: left;
	color: #5f6a7d;
	white-space: nowrap;
}

.inner.recruit_job_seminar ul li em {
    font-weight: normal;
    text-decoration: line-through;
}




/* fade */

.fade {
	position: relative;
	opacity: 0;
	bottom: -50px !important;
	-webkit-transition: 1s ease;
	-ms-transition: 1s ease;
	transition: 1s ease;
}
.fadein {
	opacity: 1;
	bottom: 0 !important;
}
</pre></body></html>