@charset "UTF-8";

/* ---------------------------------------------------

	Layout - Top Page
	ABOUT US
	/aboutus/

-------------------------- */

/* ---------------------------------------------------

	Base

-------------------------- */
/* ----------------------- */
@media (min-width: 751px) {
.secwrap { max-width: unset; }
}
/* ----------------------- */
@media (max-width: 750px) {
}

/* ---------------------------------------------------

	Intro

-------------------------- */
.abu-intro { margin: 0 auto; }
.abu-intro .ttl { font-weight: 500; }
/* ----------------------- */
@media (min-width: 751px) {
.abu-intro { max-width: 1000px; }
.abu-intro .ttl { font-size: 40px; }
.abu-intro .txt { margin-top: 20px; }
.abu-intro .txt p { font-size: 18px; }
}
/* ----------------------- */
@media (max-width: 750px) {
.abu-intro {}
.abu-intro .ttl { font-size: 30px; }
.abu-intro .txt { margin-top: 20px; }
.abu-intro .txt p { font-size: 16px; }
}

/* ---------------------------------------------------

	Anchor

-------------------------- */
.abu-anchor {
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: center;
	}
.abu-anchor a.item {
	color: initial;
	box-sizing: border-box;
	}
.abu-anchor a.item .thumb {
	overflow: hidden;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	}
.abu-anchor a.item .thumb img { position: relative; }
.abu-anchor a.item .ttl {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
	}
.abu-anchor a.item .ttl:after {
	background-color: rgba(0, 166, 118, 1); 
	background-image: url(/recruit/src/img/common/icon/arrow-right-white.svg);
	background-repeat: no-repeat;
	background-position: center;
	content: '';
	position: relative;
	border-radius: 100px;
	transform: rotate(90deg);
	}
/* ----------------------- */
@media (min-width: 751px) {
.abu-anchor { margin-top: 70px; }
.abu-anchor a.item {
	max-width: 260px;
	padding: 20px;
	}
.abu-anchor a.item .thumb img { transition: all .3s; }
.abu-anchor a.item .ttl {
	font-size: 18px;
	margin-top: 10px;
	transition: all .3s;
	}
.abu-anchor a.item .ttl:after {
	background-size: 10px;
	height: 20px;
	min-width: 20px;
	max-width: 20px;
	}
/* Hover */
.abu-anchor a.item:hover .thumb img { transform: scale(1.1); }
.abu-anchor a.item:hover .ttl { color: rgba(0, 166, 118, 1); }
}
/* ----------------------- */
@media (max-width: 750px) {
.abu-anchor {
	margin-left: -10px;
	margin-right: -10px;
	margin-top: 70px;
	}
.abu-anchor a.item {
	max-width: 50%;
	padding: 10px;
	}
.abu-anchor a.item .thumb { max-height: 150px; }
.abu-anchor a.item .ttl {
	font-size: min(3.5vw, 16px);
	margin-top: 10px;
	}
.abu-anchor a.item .ttl:after {
	background-size: 10px;
	height: 20px;
	min-width: 20px;
	max-width: 20px;
	}
}

/* ---------------------------------------------------

	Wrap

-------------------------- */
.abu-wrap {}
@media (min-width: 751px) {
.abu-wrap {
	margin-left: -100px;
	margin-right: -100px;
	}
}
@media (max-width: 750px) {
.abu-wrap {
	margin-left: -20px;
	margin-right: -20px;
	}
}
/* ----------------------- */
/* Item - Base */
.abu-item:last-child { padding-bottom: 0; }
.abu-item .ttlarea { margin: 0 auto; }
.abu-item .ttl-main {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	}
.abu-item .ttl-main span.en {
	color: rgba(0, 166, 118, 1);
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	}
.abu-item .ttl-main span.jp { font-weight: 500; }
.abu-item .outline p { text-align: justify; }
@media (min-width: 751px) {
.abu-item { padding: 100px 0; }
.abu-item .ttlarea { max-width: 1000px; }
.abu-item .ttl-main span.en { font-size: 16px; }
.abu-item .ttl-main span.jp { font-size: 40px; }
.abu-item .outline { margin-top: 40px; }
.abu-item .outline p {
	font-size: 18px;
	line-height: 2;
	}
}
@media (max-width: 750px) {
.abu-item { padding: 70px 25px; }
.abu-item .ttl-main span.en { font-size: 16px; }
.abu-item .ttl-main span.jp { font-size: 30px; }
.abu-item .outline { margin-top: 30px; }
.abu-item .outline p {
	font-size: 16px;
	line-height: 2;
	}
}
/* ----------------------- */
@media (min-width: 751px) {
}
@media (max-width: 750px) {
}

/* ---------------------------------------------------

	Top Message

-------------------------- */
@media (min-width: 751px) {
.tms-wrap { margin-top: 40px; }
}
@media (max-width: 750px) {
.tms-wrap { margin-top: 30px; }
}
/* ----------------------- */
/* Intro */
.tms-intro {
	position: relative;
	box-sizing: border-box;
	}
.tms-int-fig {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	}
.tms-int-ttlarea {
	position: relative;
	width: 100%;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	}
.tms-int-ttlarea .tms-int-ttl {
	font-weight: 500;
	display: inline-flex;
	flex-direction: column;
	}
.tms-int-ttlarea .tms-int-name {
	display: inline-flex;
	flex-direction: column;
	}
@media (min-width: 751px) {
.tms-intro {
	margin-right: 100px;
	max-height: 600px;
	min-height: 600px;
	padding: 0 100px;
	display: flex;
	align-items: center;
	}
.tms-int-fig {
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	}
.tms-int-ttlarea {
	margin: 0 auto;
	max-width: 1000px;
	align-items: flex-end;
	}
.tms-int-ttlarea .tms-int-ttl {
	text-align: right;
	align-items: flex-end;
	}
.tms-int-ttlarea .tms-int-ttl span { font-size: min(3vw, 30px); }
.tms-int-ttlarea .tms-int-name {
	margin-top: 30px;
	align-items: flex-start;
	}
.tms-int-ttlarea .tms-int-name span.degree { font-size: 16px; }
.tms-int-ttlarea .tms-int-name span.name { font-size: 26px; }
}
@media (max-width: 750px) {
.tms-int-fig {
	height: 300px;
	margin-left: -25px;
	margin-right: -25px;
	position: relative;
	}
.tms-int-ttlarea {
	margin-top: -40px;
	text-align: center;
	align-items: center;
	}
.tms-int-ttlarea .tms-int-ttl {
	background-color: rgba(255, 255, 255, 1);
	padding: 15px 20px 0;
	border-radius: 4px 4px 0 0;
	}
.tms-int-ttlarea .tms-int-ttl span { font-size: min(5vw, 30px); }
.tms-int-ttlarea .tms-int-name {
	margin-top: 20px;
	align-items: center;
	}
.tms-int-ttlarea .tms-int-name span.degree { font-size: 16px; }
.tms-int-ttlarea .tms-int-name span.name { font-size: 26px; }
}
/* ----------------------- */
/* List */
.tms-list .ttl-sub {
	color: rgba(0, 166, 118, 1);
	font-weight: 500;
	margin: 0 auto;
	}
.tms-list .txt { margin: 0 auto; }
.tms-list .txt:last-child { margin-bottom: 0; }
.tms-list .txt p:last-child { margin-bottom: 0; }
@media (min-width: 751px) {
.tms-list { margin-top: 60px; }
.tms-list .ttl-sub {
	font-size: 30px;
	max-width: 786px;
	}
.tms-list .txt {
	max-width: 786px;
	padding: 30px 0;
	}
.tms-list .txt p {
	font-size: 18px;
	line-height: 2;
	}
.tms-list .txt.fig { max-width:	1000px; }
.tms-list .txt.fig:after {
	clear: both;
	content: '';
	display: block;
	}
.tms-list .txt.fig .flt { max-width: 47%; }
.tms-list .txt.fig.left .flt {
	float: left;
	margin-right: 50px;
	}
.tms-list .txt.fig.right .flt {
	float: right;
	margin-left: 50px;
	}
.tms-list .txt.fig p { overflow: hidden; }
}
@media (max-width: 750px) {
.tms-list { margin-top: 50px; }
.tms-list .ttl-sub { font-size: 25px; }
.tms-list .txt { padding: 20px 0; }
.tms-list .txt p {
	font-size: 16px;
	line-height: 1.85;
	}
.tms-list .txt.fig .flt { margin-bottom: 30px; }
}
/* ----------------------- */
/* Outro */
.tms-outro {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	box-sizing: border-box;
	}
.tms-outro .catch {}
@media (min-width: 751px) {
.tms-outro {
	margin-top: 30px;
	max-width: 1000px;
	padding: 150px 7%;
	}
.tms-outro .catch { font-size: min(3vw, 30px); }
}
@media (max-width: 750px) {
.tms-outro {
	margin-left: -25px;
	margin-right: -25px;
	margin-top: 30px;
	padding: 60px 7%;
	}
.tms-outro .catch { font-size: min(5vw, 30px); }
}

/* ---------------------------------------------------

	Business Area

-------------------------- */
.abu-item.businessarea { background-color: rgba(248, 248, 248, 1); }
.bza-fig { text-align: center; }
/* ----------------------- */
@media (min-width: 751px) {
.bza-fig { margin-top: 40px; }
}
/* ----------------------- */
@media (max-width: 750px) {
.bza-fig {
	margin-left: -20px;
	margin-right: -20px;
	margin-top: 30px;
	}
}

/* ---------------------------------------------------

	CSR

-------------------------- */
.csr-wrap { margin: 0 auto; }
.csr-item .ttl {
	color: rgba(0, 166, 118, 1);
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	}
.csr-item .ttl:before {
	content: '・';
	font-size: 150%;
	}
.csr-item .con .txt p { line-height: 1.85; }
.csr-item .con .sdgslist ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	}
.csr-item .con .attempt {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: center;
	}
.csr-item .con .attempt figure {
	text-align: center;
	width: 100%;
	box-sizing: border-box;
	}
.csr-item .con .attempt figure .img {
	border: 1px solid rgba(0, 0, 0, .25);
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	}
.csr-item .con .attempt figure figcaption {
	display: inline-block;
	text-align: left;
	}
/* ----------------------- */
@media (min-width: 751px) {
.csr-wrap {
	margin-top: 20px;
	max-width: 1000px;
	}
.csr-item { padding: 20px 0; }
.csr-item .ttl { font-size: 30px; }
.csr-item .con .txt p { font-size: 18px; }
.csr-item .con .sdgslist { margin-top: 30px; }
.csr-item .con .sdgslist ul li { padding: 5px; }
.csr-item .con .attempt { margin-top: 10px; }
.csr-item .con .attempt figure {
	max-width: 50%;
	padding: 20px;
	}
.csr-item .con .attempt figure .img {
	min-height: 150px;
	padding: 20px;
	border-radius: 8px;
	transition: all .3s;
	}
.csr-item .con .attempt figure .img img { max-width: 240px; }
.csr-item .con .attempt figure figcaption {
	font-size: 16px;
	margin-top: 10px;
	}
.csr-item .con .attempt figure a.img:hover { opacity: .6; }
}
/* ----------------------- */
@media (max-width: 750px) {
.csr-wrap {
	margin-top: 20px;
	max-width: 1000px;
	}
.csr-item { padding: 20px 0; }
.csr-item .ttl { font-size: 25px; }
.csr-item .con .txt p { font-size: 16px; }
.csr-item .con .sdgslist { margin-top: 20px; }
.csr-item .con .sdgslist ul li { padding: 5px; }
.csr-item .con .attempt { margin-top: 10px; }
.csr-item .con .attempt figure { padding: 10px; }
.csr-item .con .attempt figure .img {
	padding: 20px;
	border-radius: 4px;
	}
.csr-item .con .attempt figure .img img { max-width: 200px; }
.csr-item .con .attempt figure figcaption {
	font-size: 16px;
	margin-top: 5px;
	}
}

/* ---------------------------------------------------

	Apwaep

-------------------------- */
.abu-item.apwaep { padding-top: 0; }
.apw-wrap { margin: 0 auto; }
@media (min-width: 751px) {
.apw-wrap {
	margin-top: 40px;
	max-width: 1000px;
	}
}
@media (max-width: 750px) {
.apw-wrap { margin-top: 30px; }
}
/* ----------------------- */
/* Anchor */
.apw-anchor {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	}
.apw-anchor a {
	background-color: rgba(0, 166, 118, 1);
	color: rgba(255, 255, 255, 1);
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
	border-radius: 100px;
	}
.apw-anchor a:after {
	background-color: rgba(255, 255, 255, 1);
	background-image: url(/recruit/src/img/common/icon/arrow-right-green.svg);
	background-repeat: no-repeat;
	background-position: center;
	content: '';
	position: relative;
	border-radius: 100px;
	transform: rotate(90deg);
	}
@media (min-width: 751px) {
.apw-anchor a {
	font-size: 16px;
	margin: 5px;
	padding: 10px 10px 10px 20px;
	}
.apw-anchor a:after {
	background-size: 10px;
	height: 20px;
	margin-left: 30px;
	min-width: 20px;
	max-width: 20px;
	}
}
@media (max-width: 750px) {
.apw-anchor a {
	font-size: 16px;
	margin-bottom: 15px;
	padding: 15px 10px 15px 20px;
	width: 100%;
	}
.apw-anchor a:last-child { margin-bottom: 0; }
.apw-anchor a:after {
	background-size: 10px;
	height: 20px;
	margin-left: 30px;
	min-width: 20px;
	max-width: 20px;
	}
}
/* ----------------------- */
/* List */
.apw-item {
	display: flex;
	align-items: flex-start;
	}
@media (min-width: 751px) {
.apw-list { margin-top: 30px; }
.apw-item { padding: 30px 0; }
}
@media (max-width: 750px) {
.apw-list { margin-top: 30px; }
.apw-item { padding: 30px 0; }
}
/* ----------------------- */
/* Title */
.apw-item .ttl {
	font-weight: 500;
    display: flex;
    align-items: flex-start;
	}
.apw-item .ttl:before {
	color: rgba(0, 166, 118, 1);
	line-height: 1;
	content: '・';
	font-size: 120%;
	position: relative;
	}
.apw-item .ttl span.main {
	color: rgba(0, 166, 118, 1);
	line-height: 1.25;
    display: flex;
	}
.apw-item .ttl small.sub {
	color: initial;
	font-size: 60%;
	}
@media (min-width: 751px) {
.apw-item .ttl {
	font-size: 30px;
	min-width: 300px;
	}
.apw-item .ttl.row:before { top: -8px; }
.apw-item .ttl span.main { flex-direction: column; }
}
@media (max-width: 750px) {
.apw-item { flex-wrap: wrap; }
.apw-item .ttl {
	font-size: 25px;
	margin-left: -10px;
	}
.apw-item .ttl span.main { align-items: center; }
.apw-item .ttl small.sub { margin-right: 10px; }
}
/* ----------------------- */
/* Contents */
.apw-item .con .table dl {
	border-bottom: 1px solid rgba(0, 0, 0, .5);
	display: flex;
	align-items: flex-start;
	}
.apw-item .con .table dl:first-child { border-top: 1px solid rgba(0, 0, 0, .5); }
.apw-item .con .table dl dt { color: rgba(0, 166, 118, 1); }
.apw-item .con .table dl dd .period { color: rgba(0, 166, 118, 1); }
.apw-item .con .table dl dd .block:last-child { margin-bottom: 0; }
@media (min-width: 751px) {
.apw-item .con .info {
	font-size: 16px;
	line-height: 1.85;
	margin-bottom: 30px;
	}
.apw-item .con .table dl { padding: 20px 0; }
.apw-item .con .table dl dt {
	font-size: 18px;
	min-width: 180px;
	}
.apw-item .con .table dl dd {
	font-size: 16px;
	line-height: 1.75;
	}
.apw-item .con .table dl dd .period { margin-bottom: 10px; }
.apw-item .con .table dl dd .block { margin-bottom: 30px; }
}
@media (max-width: 750px) {
.apw-item .con {
	margin-top: 15px;
	padding-left: 20px;
	}
.apw-item .con .info {
	font-size: 16px;
	line-height: 1.85;
	margin-bottom: 30px;
	}
.apw-item .con .table dl {
	padding: 20px 0;
	flex-direction: column;
	}
.apw-item .con .table dl dt { font-size: 18px; }
.apw-item .con .table dl dd {
	font-size: 16px;
	line-height: 1.75;
	margin-top: 5px;
	}
.apw-item .con .table dl dd .period { margin-bottom: 10px; }
.apw-item .con .table dl dd .block { margin-bottom: 30px; }
}
/* ----------------------- */
/* Contents - Parts */
.apw-item .con .table dl dd .list ol { color: rgba(0, 166, 118, 1); }
.apw-item .con .table dl dd .list ol li span { color: initial; }
.apw-item .con .table dl dd .col2 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	}
.apw-item .con .table dl dd .col2 .col2-data {
	border: 1px solid rgba(0, 0, 0, .5);
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 100px;
	}
.apw-item .con .table dl dd .table-num table tr th,
.apw-item .con .table dl dd .table-num table tr td { border-bottom: 1px solid rgba(0, 0, 0, .5); }
.apw-item .con .table dl dd .table-num table tr th {
	color: rgba(0, 166, 118, 1);
	text-align: left;
	}
.apw-item .con .table dl dd .table-num table tr td strong {
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	font-size: 150%;
	}
.apw-item .con .table dl dd .table-num table tbody tr th,
.apw-item .con .table dl dd .table-num table tbody tr td { border-bottom: 1px dashed rgba(0, 0, 0, .5); }
.apw-item .con .table dl dd .table-num table tbody tr:last-child th,
.apw-item .con .table dl dd .table-num table tbody tr:last-child td { border-bottom: none; }
.apw-item .con .table dl dd .table-num table tbody td { border-bottom: 1px dashed rgba(0, 0, 0, .5); }
@media (min-width: 751px) {
.apw-item .con .table dl dd .list { margin-top: 15px; }
.apw-item .con .table dl dd .list ol { padding-left: 20px; }
.apw-item .con .table dl dd .note { margin-top: 15px; }
.apw-item .con .table dl dd .note li { font-size: 16px; }
.apw-item .con .table dl dd .col2 { font-size: 16px; }
.apw-item .con .table dl dd .col2 .col2-data {
	margin-left: 15px;
	padding: 2.5px 10px;
	}
.apw-item .con .table dl dd .table-num table tr th,
.apw-item .con .table dl dd .table-num table tr td { padding: 5px 20px; }
}
@media (max-width: 750px) {
.apw-item .con .table dl dd .list { margin-top: 15px; }
.apw-item .con .table dl dd .list ol { padding-left: 20px; }
.apw-item .con .table dl dd .note { margin-top: 15px; }
.apw-item .con .table dl dd .note li { font-size: 16px; }
.apw-item .con .table dl dd .col2 { font-size: 16px; }
.apw-item .con .table dl dd .col2 .col2-data {
	margin-left: 15px;
	padding: 2.5px 10px;
	}
.apw-item .con .table dl dd .table-num table tr th,
.apw-item .con .table dl dd .table-num table tr td { padding: 5px 20px; }
}

/* ---------------------------------------------------

	*****

-------------------------- */
/* ----------------------- */
@media (min-width: 751px) {
}
/* ----------------------- */
@media (max-width: 750px) {
}