@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@600&family=Noto+Sans+JP:wght@500..600&display=swap');


/* Global styles
-------------------------------*/
*, *:after, *:before {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

img {
	vertical-align: top;
	max-width: 100%;
}

/* デバイス定義
-------------------------------*/
.only--pc {
	display: block;
}
br.only--pc,
span.only--pc {
	display: inline;
}
.only--sp {
	display: none;
}

@media (max-width: 520px) {
	.only--pc {
		display: none!important;
	}
	.only--sp {
		display: block;
	}
	br.only--pc,
	span.only--pc {
		display: none!important;
	}
	br.only--sp {
		display: inline;
	}
}


/* 基本的な骨組み
-------------------------------*/
html {
	height: 100%;
	font-size: 62.5%;
	scroll-behavior: smooth;
}

body {
	height: 100%;
	margin: 0;
	padding: 0;
	background: #fff;
	color: #333;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.6;
	letter-spacing: 0.05em;
	-webkit-text-size-adjust: 100%;
	word-break: break-all;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
}


@media (max-width: 1024px) {
	body {
		font-size: 14px;
		font-size: 1.4rem;
	}
}



/* basic settings
-------------------------------*/
h1,
h2,
h3,
h4,
h5,
h6,
p,
li,
pre,
td,
th,
dt,
dd {
	line-height: 1.5;
}

/* font
-------------------------------*/
.mont {
	font-family: "Montserrat", sans-serif;
	font-weight: 600;
}
.corporate__color {
	color: #01339A;
}


/* aタグ(リンクボタン)の設定
-------------------------------*/
a, a:hover, a::after, a::before {
	-webkit-transition: all 0.3s ease-in-out 0s;
	transition: all 0.3s ease-in-out 0s;
	color: #333333;
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}
a:link {
	text-decoration: none;
}



/*-------------------------------
 mainSec
-------------------------------*/
.mainSec {
	position: relative;
	padding-top: 7.3125vw;
	z-index: 0;
}
section {
	width: 100%;
}

@media screen and (min-width:1600px) {
	.mainSec {
		padding-top: 117px;
	}
}

@media (max-width: 520px) {
	.mainSec {
		padding-top: 21.0667vw;
	}
}


/*-------------------------------
 header
-------------------------------*/
.headerSec {
	position: fixed;
	left: 0;
	top: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 7.3125vw;
	padding: 0;
	margin: 0;
	background: #fff;
	overflow:hidden;
	z-index: 999;
}
.headerSec .header__inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 1600px;
	height: 100%;
	padding: 0;
	margin: 0 auto;
}
.headerSec__toggle{
	display: none;
}
.headerSec__logo {
	display: block;
	width: 15.125vw;
	height: 100%;
	margin: 0 0 0 2.25vw;
}
.headerSec__logo a {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	height: 100%;
}
.headerSec__logo img {
	width: 100%;
}
.headerSec__nav {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.headerSec__navList {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	padding-right: 2.3125vw;
}
.headerSec__navItem a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 0.625vw 0.875vw;
	font-size: 1vw;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	color: #333;
	cursor: pointer;
}
.headerSec__navItem a:hover {
	color: #01339A;
}

@media screen and (min-width:1600px) {
	.headerSec {
		width: 100%;
		height: 117px;
	}
	.headerSec .header__inner {
		
	}
	.headerSec__logo {
		width: 242px;
		margin: 0 0 0 36px;
	}
	.headerSec__navList {
		padding-right: 37px;
	}
	.headerSec__navItem a {
		padding: 10px 14px;
		font-size: 16px;
	}
}

@media screen and (max-width:520px) {
	.headerSec {
		width: 100%;
		height: 21.0667vw;
		left: 0;
		overflow: visible;
	}
	.headerSec__logo {
		width: 64.5333vw;
		margin: 0 0 0 4.5333vw;
	}
	.headerSec__logo img {
		width: 64.5333vw;
		margin-top: -1.3333vw;
	}
	.navi__box {
		position: fixed;
		width: 100%;
		height: 100vh;
		top: 0;
		right: -120%;
		z-index: 1;
		opacity: 0;
		-webkit-transition: all 0.5s ease-in-out 0s;
		transition: all 0.5s ease-in-out 0s;
	}
	.navi__box.active {
		right: 0;
		opacity: 1;
	}
	.navi__wrap {
		position: fixed;
		width: 100%;
		height: 100vh;
		top: 0;
		right: -120%;
		opacity: 0;
		z-index: 10;
		-webkit-transition: all 0.5s ease-in-out 0s;
		transition: all 0.5s ease-in-out 0s;
	}
	.navi__wrap.active {
		right: 0;
		opacity: 1;
	}
	.navi__inner {
		position: fixed;
		top: 0;
		width: 100%;
		height: 100%;
		padding: 16vw 0;
		background: #fff;
		-webkit-transition: all 0.5s ease-in-out 0s;
		transition: all 0.5s ease-in-out 0s;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	.headerSec__navList {
		display: block;
		padding-right: 0;
	}
	.headerSec__navItem a {
		position: relative;
		flex-flow: column;
		align-items: flex-start;
		justify-content: center;
		padding: 3.2vw 0;
		color: #333;
		font-size: 4.2667vw;
		font-weight: 600;
		text-align: center;
	}
	.headerSec__navItem a span {
		display: block;
		margin: 0 auto;
		text-align: center;
	}
	.headerSec__toggle {
		position: fixed;
		top: 0;
		right: 0;
		width: 20.8vw;
		height: 20.8vw;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		cursor: pointer;
		background: #fff;
		z-index: 9999;
	}
	.headerSec__toggle span {
		display: block;
		position: absolute;
		width: 9.0667vw;
		border-bottom: solid 3px #000;
		transition: all 0.6s;
	}
	.headerSec__toggle span:nth-child(1) {
		top: 5.0667vw;
	}
	.headerSec__toggle span:nth-child(2) {
		top: 8.5333vw;
	}
	.headerSec__toggle span:nth-child(3) {
		top: 12vw;
	}
	.headerSec__toggle.active span {
		border-bottom: solid 3px #000;
	}
	.headerSec__toggle.active span:nth-child(1) {
		top: 8.5333vw;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.headerSec__toggle.active span:nth-child(2) {
		opacity: 0;
	}
	.headerSec__toggle.active span:nth-child(3) {
		top: 8.5333vw;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
}


/*-------------------------------
	footer
-------------------------------*/
.footerSec {
	position: relative;
	display: block;
	padding: 2.375vw 0 2.5vw;
	border-top: solid 3px #01339A;
	background: #fff;
	z-index: 1;
}
.footerSec__upper {
	margin-bottom: 2.125vw;
}
.footerSec__bottom {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
.footer__pageLink {
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer__pageLinkItem a {
	display: block;
	padding: 0.3125vw 0.9375vw;
	font-size: 1vw;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
}
.company__info h2.company__logo a {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-left: -0.375vw;
}
.company__info h2.company__logo img {
	width: 15.125vw;
}
.company__address {
	margin-top: 0.625vw;
	font-size: 1vw;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: .05em;
}
.company__wire {
	display: flex;
	flex-flow: column;
	align-items: flex-end;
	justify-content: space-between;
	padding-top: 0.625vw;
}
.link__corporate {
	display: block;
	width: 14.875vw;
	height: 3.6875vw;
}
.link__corporate.only--sp{
	display: none;
}
.link__corporate a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	padding-left: 1.375vw;
	font-size: 1vw;
	font-weight: 600;
	color: #fff;
	background: #01339a;
}
.link__corporate a:hover {
	opacity: 0.6;
}
.link__corporate a::before {
	position: absolute;
	top: 50%;
	left: 0.75vw;
	content: "";
	width: 1.5625vw;
	height: 1.375vw;
	background: url(../img/icon__arrow-w.png) no-repeat;
	background-size: contain;
	transform: translateY(-50%);
}
.copyright {
	font-size: 0.75vw;
	font-weight: 600;
	letter-spacing: 0;
}

@media screen and (min-width:1600px) {
	.footerSec {
		padding: 38px 0 40px;
	}
	.footerSec__upper {
		margin-bottom: 34px;
	}
	.footer__pageLinkItem a {
		padding: 5px 15px;
		font-size: 16px;
	}
	.company__info h2.company__logo a {
		margin-left: -6px;
	}
	.company__info h2.company__logo img {
		width: 242px;
	}
	.company__address {
		margin-top: 10px;
		font-size: 16px;
	}
	.company__wire {
		padding-top: 10px;
	}
	.link__corporate {
		width: 238px;
		height: 59px;
	}
	.link__corporate.only--sp{
		display: none;
	}
	.link__corporate a {
		padding-left: 22px;
		font-size: 16px;
	}
	.link__corporate a::before {
		left: 12px;
		width: 25px;
		height: 22px;
	}
	.copyright {
		font-size: 12px;
	}
}

@media screen and (max-width:520px) {
	.footerSec {
		padding: 5.6vw 0 10.6667vw;
	}
	.footerSec__upper {
		margin-bottom: 7.2vw;
	}
	.footerSec__bottom {
		flex-flow: column;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.footer__pageLink {
		justify-content: flex-start;
		flex-flow: wrap;
		margin-bottom: 0;
	}
	.footer__pageLinkItem:not(:last-of-type) {
		margin-right: 4vw;
	}
	.footer__pageLinkItem a {
		padding: 2.4vw 2.1333vw;
		font-size: 4.2667vw;
	}
	.company__info h2.company__logo img {
		width: 64.5333vw;
	}
	.company__address {
		padding: 0 1.3333vw;
		margin-top: 2.6667vw;
		font-size: 4.2667vw;
	}
	.company__wire {
		display: block;
		width: 100%;
		padding-top: 6.4vw;
	}
	.link__corporate.only--sp{
		display: block;
		width: 63.4667vw;
		height: 15.7333vw;
		margin: 5.3333vw auto 0;
	}
	.link__corporate a {
		font-size: 4.2667vw;
		padding-left: 5.8667vw;
	}
	.link__corporate a::before {
		left: 3.2vw;
		width: 6.1333vw;
		height: 5.3333vw;
	}
	.copyright {
		font-size: 3.2vw;
		text-align: center;
	}
}


/*-------------------------------
 common
-------------------------------*/
.l-inner {
	width: 75%;
	max-width: 1200px;
	margin: 0 auto;
}
.flex__box {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
.box__title {
	font-size: 1.875vw;
	font-weight: 600;
	line-height: 1.61;
	letter-spacing: 0;
	color: #01339A;
}
.box__text p {
	font-size: 1.125vw;
	line-height: 2.56;
	letter-spacing: .05em;
}
.sec__copy {
	margin-left: 3px;
	font-size: 1.125vw;
	line-height: 2.22;
	letter-spacing: .05em;
}
.sec__title {
	position: relative;
	width: 100%;
	margin: 0 auto -0.75vw;
	padding-left: 12.5vw;
	overflow: hidden;
}
.sec__title .sec__title-en {
	position: relative;
	padding-left: 11.375vw;
	font-size: 10vw;
	font-weight: 600;
	line-height: 1.225;
	letter-spacing: .1em;
	color: #FFF;
	z-index: 0;
}
.sec__title .sec__title-en.text--grey {
	color: #F0EFEF;
}
.sec__title .sec__title-jp {
	position: absolute;
	top: 50%;
	left: 13.125vw;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.625vw;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .05em;
	color:#FA9F0E;
	transform: translateY(-50%);
	z-index: 1;
}
.sec__title .sec__title-jp::before {
	content: '';
	width: 0.25vw;
	height: 2.625vw;
	margin-right: 1.25vw;
	background-color: #FA9F0E;
	transform: rotate(35deg)
}

@media screen and (min-width:1600px) {
	.box__title {
		font-size: 30px;
	}
	.box__text p {
		font-size: 18px;
	}
	.sec__copy {
		font-size: 18px;
	}
	.sec__title {
		width: 1600px;
		margin: 0 auto -12px;
		padding-left: 200px;
	}
	.sec__title .sec__title-en {
		padding-left: 182px;
		font-size: 160px;
	}
	.sec__title .sec__title-jp {
		left: 210px;
		font-size: 26px;
	}
	.sec__title .sec__title-jp::before {
		width: 4px;
		height: 42px;
		margin-right: 20px;
	}
}

@media (max-width: 520px) {
	.l-inner {
		width: 92%;
	}
	.flex__box {
		flex-flow: column;
	}
	.box__title {
		font-size: 5.8667vw;
		line-height: 1.5;
	}
	.box__text p {
		font-size: 4.2667vw;
		line-height: 1.625;
		letter-spacing: 0;
	}
	.sec__copy {
		margin-left: 0;
		font-size: 4.2667vw;
		line-height: 1.625;
		letter-spacing: .05em;
	}
	.sec__title {
		width: 100%;
		margin: 0 auto;
		padding-left: 0;
		overflow: hidden;
	}
	.sec__title .sec__title-en {
		padding-left: 0;
		font-size: 16vw;
		line-height: 1.21;
		text-align: justify;
		white-space: nowrap;
	}
	.sec__title .sec__title-jp {
		left: 5.8667vw;
		font-size: 5.3333vw;
	}
	.sec__title .sec__title-jp::before {
		width: 2px;
		height: 7.2vw;
		margin-right: 4vw;
	}
}



/*-------------------------------
 mvSec
-------------------------------*/
.mvSec {
	position: relative;
	height: 43.75vw;
	max-height: 700px;
	background: url( ../img/mv.jpg) no-repeat;
	background-size: cover;
}
.mv__title {
	position: absolute;
	top: 11.6875vw;
	left: calc( 50% - 2.5vw);
}
.mv__title__jp {
	font-size: 2.875vw;
	font-weight: 600;
	line-height: 1.43;
	letter-spacing: 0;
	color: #FFF;
	text-shadow: 0px 0px 0.625vw rgba(0, 0, 0, 0.35);
}
.mv__title__en {
	margin-top: 0.875vw;
	margin-left: 0.25vw;
	font-size: 1.375vw;
	font-weight: 600;
	line-height: normal;
	letter-spacing: .017em;
	color: #FFF;
	text-shadow: 0px 0px 0.625vw rgba(0, 0, 0, 0.35);
}
.mv__title__copy {
	margin-top: 1.625vw;
	margin-left: 0.25vw;
	padding: 0.8125vw 1.125vw 1.125vw 1.5vw;
	font-size: 2.125vw;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .1em;
	color: #FA9F0E;
	text-align: center;
	background: #fff;
}

@media screen and (min-width:1600px) {
	.mv__title {
		top: 187px;
		left: calc( 50% - 40px);
	}
	.mv__title__jp {
		font-size: 46px;
		text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.35);
	}
	.mv__title__en {
		margin-top: 14px;
		margin-left: 4px;
		font-size: 22px;
		text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.35);
	}
	.mv__title__copy {
		margin-top: 26px;
		margin-left: 4px;
		padding: 13px 18px 18px 24px;
		font-size: 34px;
	}
}

@media screen and (max-width: 520px) {
	.mvSec {
		position: relative;
		display: flex;
		flex-flow: column;
		justify-content: flex-end;
		height: 97.3333vw;
		max-height: 97.3333vw;
		background: url( ../img/mv-sp.jpg) no-repeat;
		background-size: cover;
	}
	.mv__title {
		position: static;
		width: 90.6667vw;
		margin: 0 auto 5.6vw;
	}
	.mv__title__jp {
		font-size: 6.4vw;
		text-shadow: 0px 0px 2.6667vw rgba(0, 0, 0, 0.35);
	}
	.mv__title__en {
		margin-top: 1.8667vw;
		font-size: 3.2vw;
		letter-spacing: 0;
		text-shadow: 0px 0px 2.6667vw rgba(0, 0, 0, 0.35);
	}
	.mv__title__copy {
		margin-top: 4vw;
		padding: 1.6vw 0 2.4vw;
		font-size: 4.8vw;
	}
}


/*-------------------------------
 introSec
-------------------------------*/
.introSec {
	padding: 7.25vw 0 7.125vw;
}
.intro__img {
	width: 37.5vw;
}
.intro__text {
	width: 33.4375vw;
}
.introSec .box__title {
	margin-bottom: 1.375vw;
	font-size: 2.125vw;
}
.introSec .box__text p {
	line-height: 2.56;
	letter-spacing: .05em;
}

@media screen and (min-width:1600px) {
	.introSec {
		padding: 116px 0 114px;
	}
	.intro__img {
		width: 600px;
	}
	.intro__text {
		width: 535px;
	}
	.introSec .box__title {
		margin-bottom: 22px;
		font-size: 34px;
	}
}

@media screen and (max-width: 520px) {
	.introSec {
		padding: 14.1333vw 0 12vw;
	}
	.intro__img {
		width: 100%;
		margin-bottom: 6.6667vw;
		text-align: center;
	}
	.intro__img img {
		width: 89.8667vw;
	}
	.intro__text {
		width: 89.6vw;
		margin: 0 auto;
	}
	.introSec .box__title {
		margin-bottom: 2.6667vw;
		font-size: 5.8667vw;
		letter-spacing: 0;
	}
	.introSec .box__text p {
		line-height: 1.625;
		letter-spacing: 0;
	}
}



/*-------------------------------
 aboutSec
-------------------------------*/
.aboutSec {
	padding: 1.125vw 0 5.1875vw;
	background: #F8F8F8;
}
.about__box {
	align-items: center;
}
.about__text {
	width: 33.4375vw;
	margin-top: 0.875vw;
}
.about__img {
	width: 37.5vw;
}
.aboutSec .box__text p {
	margin-top: 0.625vw;
	margin-left: 0.1875vw;
	line-height: 2.22;
}

@media screen and (min-width:1600px) {
	.aboutSec {
		padding: 18px 0 83px;
	}
	.about__text {
		width: 535px;
		margin-top: 14px;
	}
	.about__img {
		width: 600px;
	}
	.aboutSec .box__text p {
		margin-top: 10px;
		margin-left: 3px;
	}
}

@media screen and (max-width: 520px) {
	.aboutSec {
		padding: 6.4vw 0 12.2667vw;
	}
	.about__box {
		flex-flow: column-reverse;
	}
	.about__text {
		width: 100%;
		margin-top: 6.4vw;
	}
	.about__img {
		width: 100%;
		margin-top: 4vw;
	}
	.aboutSec .box__text p {
		margin-top: 2.6667vw;
		margin-left: 0.8vw;
		line-height: 1.625;
	}
}



/*-------------------------------
 workSec
-------------------------------*/
.workSec {
	padding: 1.5625vw 0 4.8125vw;
}
.workSec .sec__title {
	margin-bottom: -0.1875vw;
}
.workSec .sec__title .sec__title-en {
	padding-left: 16.25vw;
}
.work__list {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	margin-top: 2.1875vw;
}
.work__item {
	display: flex;
	flex-flow: column;
	justify-content: flex-start;
	align-items: center;
}
.work__item img {
	width: 23.375vw;
	margin: 0 auto;
}
.work__item .work__name {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	margin-top: 1.5625vw;
	font-size: 1.375vw;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: .05em;
	color: #01339A;
	text-align: center;
}

@media screen and (min-width:1600px) {
	.workSec {
		padding: 25px 0 77px;
	}
	.workSec .sec__title {
		margin-bottom: -3px;
	}
	.workSec .sec__title .sec__title-en {
		padding-left: 260px;
	}
	.work__list {
		margin-top: 35px;
	}
	.work__item img {
		width: 374px;
	}
	.work__item .work__name {
		margin-top: 25px;
		font-size: 22px;
	}
}

@media screen and (max-width: 520px) {
	.workSec {
		padding: 10.1333vw 0 15.4667vw;
	}
	.workSec .sec__title {
		margin-bottom: -0.8vw;
	}
	.workSec .sec__title .sec__title-en {
		padding-left: 40vw;
	}
	.workSec .sec__copy.work__copy {
		margin-top: 1.0667vw;
	}
	.work__list {
		flex-flow: column;
		width: 100%;
		margin-top: 6.1333vw;
	}
	.work__item {
		display: flex;
		flex-flow: column;
		justify-content: flex-start;
		align-items: center;
	}
	.work__item:not(:last-of-type) {
		margin-bottom: 9.8667vw;
	}
	.work__item img {
		width: 80vw;
		margin: 0 auto;
	}
	.work__item .work__name {
		margin-top: 3.7333vw;
		font-size: 5.3333vw;
	}
}



/*-------------------------------
 careerSec
-------------------------------*/
.careerSec {
	padding: 1.25vw 0 5vw;
	background: #F8F8F8;
}
.careerSec .sec__title {
	margin-bottom: -0.5625vw;
}
.careerSec .sec__title .sec__title-en {
	padding-left: 11.5vw;
}
.sec__copy.career__copy {
	margin-left: 0;
}
.career__list {
	width:100%;
	margin-top: 3.5vw;
}
.career__item:not(:last-of-type) {
	margin-bottom: 5.375vw;
}
.career__item h3 {
	padding-bottom: 1.125vw;
	margin-bottom: 2.5vw;
	font-size: 1.6250vw;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .05em;
	border-bottom: 3px solid #01339A;
}
.career__item__box {
	align-items: center;
	margin-bottom: 3.125vw;
}
.career__item-02 .career__item__box {
	margin-bottom: 2.5vw;
}
.career__item-03 .career__item__box {
	margin-bottom: 2.5vw;
}
.career__item__box .cItemBox__img {
	width: 23.125vw;
	margin-right: 3.75vw;
}
.career__item__box .cItemBox__detail {
	flex: 1;
	margin-top: 0.375vw;
}
.career__item__box .cItemBox__detail .cItemBox__name {
	margin-bottom: 1.125vw;
	font-size: 1.375vw;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .05em;
}
.career__item__box .cItemBox__detail .cItemBox__year {
	margin-bottom: 1.125vw;
	font-size: 1.25vw;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .05em;
	color: #FA9F0E;
}
.career__item__box .cItemBox__detail .cItemBox__job {
	margin-bottom: 1.6250vw;
	font-size: 1.125vw;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .05em;
	color: #01339A;
}
.cItemBox__text {
	font-size: 1vw;
	line-height: 1.87;
	letter-spacing: 0;
}
.career__pass {
	margin: 0 auto;
}
.career__item-01 .career__pass {
	width: 50vw;
}
.career__item-02 .career__pass {
	width: 47.5vw;
}
.career__item-03 .career__pass {
	width: 65vw;
}

@media screen and (min-width:1600px) {
	.careerSec {
		padding: 20px 0 80px;
	}
	.careerSec .sec__title {
		margin-bottom: -9px;
	}
	.careerSec .sec__title .sec__title-en {
		padding-left: 184px;
	}
	.career__list {
		margin-top: 56px;
	}
	.career__item:not(:last-of-type) {
		margin-bottom: 86px;
	}
	.career__item h3 {
		padding-bottom: 18px;
		margin-bottom: 40px;
		font-size: 26px;
	}
	.career__item__box {
		margin-bottom: 50px;
	}
	.career__item-02 .career__item__box {
		margin-bottom: 40px;
	}
	.career__item-03 .career__item__box {
		margin-bottom: 40px;
	}
	.career__item__box .cItemBox__img {
		width: 370px;
		margin-right: 60px;
	}
	.career__item__box .cItemBox__detail {
		margin-top: 6px;
	}
	.career__item__box .cItemBox__detail .cItemBox__name {
		margin-bottom: 18px;
		font-size: 22px;
	}
	.career__item__box .cItemBox__detail .cItemBox__year {
		margin-bottom: 18px;
		font-size: 20px;
	}
	.career__item__box .cItemBox__detail .cItemBox__job {
		margin-bottom: 26px;
		font-size: 18px;
	}
	.cItemBox__text {
		font-size: 16px;
	}
	.career__pass {
		margin: 0 auto;
	}
	.career__item-01 .career__pass {
		width: 800px;
	}
	.career__item-02 .career__pass {
		width: 760px;
	}
	.career__item-03 .career__pass {
		width: 1040px;
	}
}

@media screen and (max-width: 520px) {
	.careerSec {
		padding: 8.5333vw 0 4.8vw;
	}
	.careerSec .sec__title {
		margin-bottom: 4.5333vw;
	}
	.careerSec .sec__title .sec__title-en {
		padding-left: 3.2vw;
		letter-spacing: 0;
	}
	.sec__copy.career__copy {
		margin-left: 0;
		letter-spacing: 0;
	}
	.career__list {
		width:100%;
		margin-top: 17.3333vw;
	}
	.career__item.career__item-01 {
		margin-bottom: 16vw;
	}
	.career__item.career__item-02 {
		margin-bottom: 17.3333vw;
	}
	.career__item h3 {
		padding-bottom: 4vw;
		margin-bottom: 5.3333vw;
		font-size: 5.3333vw;
		border-bottom: 2px solid #01339A;
	}
	.career__item.career__item-02 h3 {
		padding-bottom: 3.2vw;
		line-height: 1.45;
	}
	.career__item__box {
		flex-flow: row;
		align-items: center;
		margin-bottom: 5.3333vw;
	}
	.career__item-02 .career__item__box {
		margin-top: -2px;
		margin-bottom: 5.6vw;
	}
	.career__item-03 .career__item__box {
		margin-bottom: 5.6vw;
	}
	.career__item__box .cItemBox__img {
		width: 25.6vw;
		margin-top: 2.9333vw;
		margin-right: 5.3333vw;
	}
	.career__item__box .cItemBox__detail {
		margin-top: 3.7333vw;
	}
	.career__item__box .cItemBox__detail .cItemBox__name {
		margin-bottom: 4.2667vw;
		font-size: 5.3333vw;
	}
	.career__item__box .cItemBox__detail .cItemBox__year {
		margin-bottom: 4.5333vw;
		font-size: 3.7333vw;
	}
	.career__item__box .cItemBox__detail .cItemBox__job {
		margin-bottom: 0;
		font-size: 3.7333vw;
	}
	.cItemBox__text {
		margin-bottom: 5.3333vw;
		font-size: 4.2667vw;
		line-height: 1.625;
	}
	.career__pass {
		margin: 0 auto;
	}
	.career__item-01 .career__pass,
	.career__item-02 .career__pass,
	.career__item-03 .career__pass {
		width: 100%;
	}
}



/*-------------------------------
 featuresSec
-------------------------------*/
.featuresSec {
	padding: 2.5vw 0 6.625vw;
}
.featuresSec .sec__title .sec__title-en {
	padding-left: 12.5vw;
}
.features__list {
	margin-top: 2.375vw;
}
.features__item {
	align-items: center;
}
.features__item:not(:last-of-type) {
	margin-bottom: 4.25vw;
}
.features__item:nth-of-type(2) {
	flex-flow: row-reverse;
}
.features__item .fItem__text {
	width: 33.625vw;
}
.features__item .fItem__text .box__title {
	letter-spacing: 0;
}
.features__item .fItem__text .fItem__no{
	display: block;
	margin-bottom: 0.625vw;
	font-size: 1.625vw;
	font-weight: 600;
	line-height: normal;
	letter-spacing: .1em;
	color: #FA9F0E;
}
.features__item .fItem__text p {
	margin-top: 0.625vw;
	margin-left: 0.1875vw;
	font-size: 1.125vw;
	line-height: 2.22;
	letter-spacing: 0;
}
.features__item .fItem__img {
	width: 37.5vw;
}

@media screen and (min-width:1600px) {
	.featuresSec {
		padding: 40px 0 106px;
	}
	.featuresSec .sec__title .sec__title-en {
		padding-left: 200px;
	}
	.features__list {
		margin-top: 38px;
	}
	.features__item:not(:last-of-type) {
		margin-bottom: 68px;
	}
	.features__item .fItem__text {
		width: 538px;
	}
	.features__item .fItem__text .fItem__no {
		margin-bottom: 10px;
		font-size: 26px;
	}
	.features__item .fItem__text p {
		margin-top: 10px;
		margin-left: 3px;
		font-size: 18px;
	}
	.features__item .fItem__img {
		width: 600px;
	}
}

@media screen and (max-width: 520px) {
	.featuresSec {
		padding: 10.6667vw 0 13.0667vw;
	}
	.featuresSec .sec__title .sec__title-en {
		padding-left: 12.8vw;
		letter-spacing: 0;
	}
	.features__list {
		margin-top: 3.7333vw;
	}
	.features__item,
	.features__item:nth-of-type(2) {
		flex-flow: column-reverse;
	}
	.features__item:not(:last-of-type) {
		margin-bottom: 12vw;
	}
	.features__item .fItem__text {
		width: 100%;
		margin-top: 5.3333vw;
	}
	.features__item .fItem__text .box__title {
		letter-spacing: 0;
	}
	.features__item .fItem__text .fItem__no {
		margin-bottom: 1.8667vw;
		font-size: 5.8667vw;
	}
	.features__item .fItem__text p {
		margin-top: 1.6vw;
		margin-left: 0;
		font-size: 4.2667vw;
		line-height: 1.65;
		letter-spacing: 0;
	}
	.features__item .fItem__img {
		width: 100%;
	}
}



/*-------------------------------
 interviewSec
-------------------------------*/
.interviewSec {
	padding: 2.4375vw 0 5.375vw;
	background: #F8F8F8;
}
.interviewSec .sec__title .sec__title-en {
	padding-left: 15.125vw;
}
.interview__list {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin-top: 1.3125vw;
}
.interview__item {
	position: relative;
	width: 23.125vw;
	padding: 1.6875vw 1.625vw 1.8125vw;
	background: #fff;
}
.interview__item::before,
.interview__item::after {
	position: absolute;
	content: "";
	width: 1.4375vw;
	height: 1.125vw;
}
.interview__item::before {
	top: 0;
	left: 0;
	background: url(../img/interview__bg-left.png) no-repeat;
	background-size: cover;
}
.interview__item::after {
	bottom: -0.4375vw;
	right: 0;
	background: url(../img/interview__bg-right.png) no-repeat;
	background-size: cover;
}
.interview__item .interview__item__box {
	align-items: center;
	margin-bottom: 1.0625vw;
}
.interview__item .iItemBox__img {
	width: 5.625vw;
	margin-right: 1.25vw;
}
.interview__item .iItemBox__detail {
	flex: 1;
}
.interview__item .iItemBox__detail .iItemBox__name {
	margin-bottom: 0.4375vw;
	font-size: 1.375vw;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .05em
}
.interview__item .iItemBox__detail .iItemBox__job {
	font-size: 1vw;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: .05em;
	color: #01339A;
	transform: translateY(0.4375vw);
}
.interview__item .iItemBox__text {
	font-size: 1vw;
	line-height: 1.625;
	letter-spacing: 0;
}

@media screen and (min-width:1600px) {
	.interviewSec {
		padding: 39px 0 86px;
	}
	.interviewSec .sec__title .sec__title-en {
		padding-left: 242px;
	}
	.interview__list {
		margin-top: 21px;
	}
	.interview__item {
		width: 370px;
		padding: 27px 26px 29px;
	}
	.interview__item::before,
	.interview__item::after {
		width: 23px;
		height: 18px;
	}
	.interview__item::after {
		bottom: -7px;
	}
	.interview__item .interview__item__box {
		margin-bottom: 17px;
	}
	.interview__item .iItemBox__img {
		width: 90px;
		margin-right: 20px;
	}
	.interview__item .iItemBox__detail .iItemBox__name {
		margin-bottom: 7px;
		font-size: 22px;
	}
	.interview__item .iItemBox__detail .iItemBox__job {
		font-size: 16px;
		transform: translateY(7px);
	}
	.interview__item .iItemBox__text {
		font-size: 16px;
	}
}

@media screen and (max-width: 520px) {
	.interviewSec {
		padding: 9.3333vw 0 18.1333vw;
	}
	.interviewSec .sec__title .sec__title-en {
		padding-left: 14.4vw;
		letter-spacing: 0;
	}
	.interviewSec .sec__title .sec__title-jp {
		left: 15.4667vw;
		top: 43%;
	}
	.interview__list {
		margin-top: 0.8vw;
		flex-flow: column;
	}
	.interview__item {
		width: 100%;
		padding: 7.2vw 6.4vw 7.7333vw;
	}
	.interview__item:not(:last-of-type) {
		margin-bottom: 4.5333vw;
	}
	.interview__item::before,
	.interview__item::after {
		width: 5.8667vw;
		height: 4.5333vw;
	}
	.interview__item::after {
		bottom: -1.8667vw;
	}
	.interview__item .interview__item__box {
		flex-flow: row;
		margin-bottom: 4.5333vw;
	}
	.interview__item .iItemBox__img {
		width: 24vw;
		margin-right: 5.3333vw;
	}
	.interview__item .iItemBox__detail .iItemBox__name {
		margin-bottom: 1.8667vw;
		font-size: 5.8667vw;
	}
	.interview__item .iItemBox__detail .iItemBox__job {
		font-size: 3.7333vw;
		transform: translateY(1.8667vw);
	}
	.interview__item .iItemBox__text {
		font-size: 4.2667vw;
	}
}



/*-------------------------------
 educationSec
-------------------------------*/
.educationSec {
	padding: 4.8125vw 0 5.6875vw;
}
.educationSec .sec__title {
	margin-bottom: -1.125vw;
}
.educationSec .sec__title .sec__title-en {
	padding-left: 9.75vw;
	letter-spacing: .05em;
}
.sec__copy.edu__copy {
	margin-left: 0;
}
.edu__list {
	margin-top: 2.0625vw;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
.edu__list .edu__item {
	width: 23.125vw;
}
.edu__list .edu__item .edu__title {
	margin: 1vw 0 0.375vw;
	font-size: 1.5vw;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: .05em;
	color: #01339A;
}
.edu__list .edu__item p {
	font-size: 1vw;
	line-height: 1.75;
	letter-spacing: 0;
}

@media screen and (min-width:1600px) {
	.educationSec {
		padding: 77px 0 91px;
	}
	.educationSec .sec__title {
		margin-bottom: -18px;
	}
	.educationSec .sec__title .sec__title-en {
		padding-left: 156px;
	}
	.edu__list {
		margin-top: 33px;
	}
	.edu__list .edu__item {
		width: 370px;
	}
	.edu__list .edu__item .edu__title {
		margin: 16px 0 6px;
		font-size: 24px;
	}
	.edu__list .edu__item p {
		font-size: 16px;
	}
}

@media screen and (max-width: 520px) {
	.educationSec {
		padding: 12vw 0 16vw;
	}
	.educationSec .sec__title {
		margin-bottom: 3.2vw;
	}
	.educationSec .sec__title .sec__title-en {
		padding-left: 8.8vw;
		letter-spacing: 0;
	}
	.educationSec .sec__title .sec__title-jp {
		padding-left: 9.6vw;
	}
	.sec__copy.edu__copy {
		margin-left: 0;
	}
	.edu__list {
		margin-top: 9.6vw;
		flex-flow: column;
	}
	.edu__list .edu__item {
		width: 100%;
	}
	.edu__list .edu__item:not(:last-of-type) {
		margin-bottom: 9.8667vw;
	}
	.edu__list .edu__item .edu__title {
		margin: 5.8667vw 0 1.8667vw;
		font-size: 5.8667vw;
	}
	.edu__list .edu__item p {
		font-size: 4.2667vw;
		line-height: 1.625;
	}
}



/*-------------------------------
 benefitsSec
-------------------------------*/
.benefitsSec {
	padding: 1.25vw 0 7.25vw;
	background: #F8F8F8;
}
.benefitsSec .sec__title .sec__title-en {
	padding-left: 5.875vw;
}
.benefits__list {
	display: flex;
	flex-flow: wrap;
	align-items: stretch;
	justify-content: space-between;
	margin-top: 1.0625vw;
}
.benefits__list .benefit__item {
	width: 13.125vw;
	font-size: 1.25vw;
	font-weight: 600;
	letter-spacing: .05em;
	text-align: center;
}
.benefits__list .benefit__item:nth-of-type(-n+5){
	margin-bottom: 2.5vw;
}
.benefits__list .benefit__item img {
	width: 9.3750vw;
	margin-bottom: 0.9375vw;
}
.benefits__list .benefit__item p {
	margin-top: -0.25vw;
}

@media screen and (min-width:1600px) {
	.benefitsSec {
		padding: 20px 0 116px;
	}
	.benefitsSec .sec__title .sec__title-en {
		padding-left: 94px;
	}
	.benefits__list {
		margin-top: 17px;
	}
	.benefits__list .benefit__item {
		width: 210px;
		font-size: 20px;
	}
	.benefits__list .benefit__item:nth-of-type(-n+5){
		margin-bottom: 40px;
	}
	.benefits__list .benefit__item img {
		width: 150px;
		margin-bottom: 15px;
	}
	.benefits__list .benefit__item p {
		margin-top: -4px;
	}
}

@media screen and (max-width: 520px) {
	.benefitsSec {
		padding: 4.8vw 0 12.2667vw;
	}
	.benefitsSec .sec__title .sec__title-en {
		padding-left: 28.2667vw;
		letter-spacing: 0;
	}
	.benefitsSec .sec__title .sec__title-jp {
		left: 15.4667vw;
		top: 44%;
	}
	.benefits__list {
		align-items: flex-start;
		margin-top: 3.2vw;
	}
	.benefits__list .benefit__item {
		width: 45.6vw;
		font-size: 4.8vw;
		letter-spacing: 0;
	}
	.benefits__list .benefit__item:nth-of-type(-n+8){
		margin-bottom: 4.2667vw;
	}
	.benefits__list .benefit__item img {
		width: 100%;
		margin-bottom: 0.8vw;
	}
	.benefits__list .benefit__item p {
		margin-top: 0;
	}
}



/*-------------------------------
 companySec
-------------------------------*/
.companySec {
	padding: 3.5vw 0 5.375vw;
}
.companySec .sec__title {
	margin-bottom: -1.125vw;
	padding-left: 5.875vw;
	letter-spacing: .05em;
}
.companySec .sec__title .sec__title-en {
	padding-left: 12.5vw;
	letter-spacing: .05em;
}
.sec__copy.company__copy {
	margin-left: 0;
}
.outer__contents {
	height: 42.625vw;
	margin-top: 3vw;
	background: #CCCCCC;
}

@media screen and (min-width:1600px) {
	.companySec {
		padding: 56px 0 86px;
	}
	.companySec .sec__title {
		margin-bottom: -18px;
		padding-left: 94px;
	}
	.companySec .sec__title .sec__title-en {
		padding-left: 200px;
	}
	.outer__contents {
		height: 682px;
		margin-top: 48px;
	}
}

@media screen and (max-width: 520px) {
	.companySec {
		padding: 13.0667vw 0 16vw;
	}
	.companySec .sec__title {
		margin-bottom: 3.2vw;
		padding-left: 0;
	}
	.companySec .sec__title .sec__title-en {
		padding-left: 13.3333vw;
		letter-spacing: 0;
	}
	.outer__contents {
		height: 52vw;
		margin-top: 5.8667vw;
	}
}


/*-------------------------------
 occupationSec
-------------------------------*/
.occupationSec {
	padding: 3.1875vw 0 6.125vw;
	background: #F8F8F8;
}
.occupationSec .sec__title {
	margin-bottom: 2px;
}
.occupationSec .sec__title .sec__title-en {
	padding-left: 5.625vw;
}
.sec__copy.occupation__copy {
	margin-left: 1px;
}
.occupationSec .recruit__link a {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin-top: 1.875vw;
	padding: 2.75vw 3.5625vw;
	font-size: 2.625vw;
	font-weight: 600;
	letter-spacing: .1em;
	color: #01339A;
	border: 3px solid #01339A;
	background: #FFF;
}
.occupationSec .recruit__link a::after {
	position: absolute;
	content: "";
	top: calc( 50% - 1.9375vw);
	right: 3.375vw;
	width: 4.1875vw;
	height: 3.8125vw;
	background: url(../img/icon__arrow-b.png) no-repeat;
	background-size: contain;
}
.occupationSec .recruit__link a:hover {
	color: #FFF;
	border: 3px solid #01339A;
	background: #01339A;
}
.occupationSec .recruit__link a:hover::after {
	background: url(../img/icon__arrow-w.png) no-repeat;
	background-size: contain;
}

@media screen and (min-width:1600px) {
	.occupationSec {
		padding: 51px 0 98px;
	}
	.occupationSec .sec__title {
		margin-bottom: 2px;
	}
	.occupationSec .sec__title .sec__title-en {
		padding-left: 93px;
	}
	.occupationSec .recruit__link a {
		margin-top: 30px;
		padding: 44px 57px;
		font-size: 42px;
	}
	.occupationSec .recruit__link a::after {
		top: calc( 50% - 31px);
		right: 54px;
		width: 67px;
		height: 61px;
	}
}

@media screen and (max-width: 520px) {
	.occupationSec {
		padding: 5.3333vw 0 16vw;
	}
	.occupationSec .sec__title {
		margin-bottom: 4.5333vw;
	}
	.occupationSec .sec__title .sec__title-en {
		padding-left: 15.4667vw;
		font-size: 13.3333vw;
		letter-spacing: 0;
	}
	.occupationSec .sec__title .sec__title-jp {
		left: 15.4667vw;
	}
	.occupationSec .recruit__link a {
		margin-top: 8vw;
		padding: 5.0667vw 4.5333vw;
		font-size: 5.8667vw;
	}
	.occupationSec .recruit__link a::after {
		top: calc( 50% - 3.2vw);
		right: 4vw;
		width: 6.9333vw;
		height: 6.4vw;
	}
}



/*-------------------------------
 otherSec
-------------------------------*/
.otherSec {
	padding: 6.3125vw 0 6vw;
}
.other__title {
	margin-bottom: 0.3125vw;
	font-size: 1.5vw;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: .05em;
	color: #01339A;
}
.other__title:nth-of-type(2) {
	margin-top: 2.5vw;
}
.otherSec p {
	font-size: 1vw;
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 0;
}

@media screen and (min-width:1600px) {
	.otherSec {
		padding: 101px 0 96px;
	}
	.other__title {
		margin-bottom: 5px;
		font-size: 24px;
	}
	.other__title:nth-of-type(2) {
		margin-top: 40px;
	}
	.otherSec p {
		font-size: 16px;
	}
}

@media screen and (max-width: 520px) {
	.otherSec {
		padding: 15.7333vw 0 16vw;
	}
	.other__title {
		margin-bottom: 1.6vw;
		font-size: 5.3333vw;
	}
	.other__title:nth-of-type(2) {
		margin-top: 7.4667vw;
		letter-spacing: 0;
	}
	.otherSec p {
		font-size: 4.2667vw;
		line-height: 1.65;
	}
}
