@charset "UTF-8";

/* -----------------------------------------------------------------------------

共通パーツ

----------------------------------------------------------------------------- */
a:hover img {
	opacity: .75;
}
/* subpage-mv
----------------------------------------------------*/
@media screen and (min-width: 769px) {
#subpage-mv {
  background: url("../img/project/coworker_head.jpg") center center / cover;
}
}
@media screen and (max-width: 768px) {
#subpage-mv {
  background: url("../img/project/coworker_head-sp.jpg") center right 10% / cover;
}
}
/* -----------------------------------------------------------------------------

coworker 職種紹介

----------------------------------------------------------------------------- */
.inner-area {
	padding-right: 0;
	padding-left: 0;
}
.about-text {
	margin-bottom: 0;
}
.job-menu.contents {
	padding-top: 0;
}
.job-content.contents {
	padding-top: 0;
}
/* 共通パーツ
----------------------------------------------------*/
.rookie {
  counter-reset: number 0;
}
.job-q-ttl {
	background: rgb(var(--main-color));
	color: #fff;
	font-size: 1.5em;
	font-weight: bold;
	text-align: center;
	display: inline-block;
	position: relative;
}
/*.job-q-ttl:before {
  counter-increment: number 1;
  content: "Q."counter(number);
  color: #ffdaa5;
  font-weight: bold;
  font-size: 2.5rem;
  position: absolute;
  top: -2rem;
}*/
.question-num {
  position: absolute;
  top: -1.5rem;
}
.question-num img {
	vertical-align: middle;
}
.job-q-ttl span:nth-child(2) {
	padding-bottom: .2em;
	border-bottom: 1px solid #fff;
}
@media screen and (min-width: 1000px) {
	.job-q-ttl {
		min-width: 590px;
		margin: 4em 0 2em;
		padding: .4em 4em .6em;
	}
	.question-num {
		left: 1em;
	}
	.job-q-ttl:after {
		content: "";
		width: 20px;
		height: 20px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		transform: rotate(45deg);
		position: absolute;
		top: 0;
		right: 1.5em;
		bottom: 0;
		margin: auto;
	}
	.text-cont {
		margin: 0 auto;
		width: 88%;
	}
}
@media screen and (max-width: 999px) {
	.job-q-ttl {
		min-width: 80%;
		margin: 3em 0 1em;
		padding: .4em 3em .6em;
	}
	.question-num {
		left: .3em;
	}
}
@media screen and (max-width: 576px) {
	.job-q-ttl {
		padding: .4em 2em .6em;
	}
	.question-num img {
    height: 5vw;
	}
	.job-q-ttl span:nth-child(2) {
		font-size: 4.8vw;
	}
}

/* コンテンツ見出し
----------------------------------------------------*/
.rookie-Head {
  display: flex;
  justify-content: center;
  align-items: center;
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;
}
.rookie-Head .in {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.rookie-Head .in .rookie-ttl {
	position: relative;
}
.rookie-ttl p.rookie-name {
  width: 100%;
	font-weight: bold;
  margin-bottom: 0;
}
.rookie-ttl p.division-name {
	background: rgb(var(--main-color));
	color: #fff;
	padding: 0 .5em;
	margin-bottom: 10px;
	display: inline-block;
	font-size: 1.2rem;
	line-height: 1.6rem;
	padding: 10px;
}
.rookie-ttl p.division-name span {
	font-size: .9rem;
}
.rookie-ttl p.rookie-name span {
  color: #fff;
  letter-spacing: .3rem;
}
.rookie-ttl p.rookie-name-en {
	color: #fff;
	font-size: 1.3em;
	position: absolute;
}
.rookie-Head .in p.sub-title {
  width: 100%;
  color: #fff;
  font-family: dnp-shuei-shogomincho-std, sans-serif;
  font-weight: bold;
  text-shadow: 0 0 10px #000;
}
.rookie-Head .in .head-text {
	font-size: .9em;
	font-weight: bold;
}
.rookie-Head .in .head-text p:first-child {
	margin-bottom: .5em;
}
@media screen and (min-width: 1000px) {
	.leaseback .rookie-Head {
		background-image: url("../project/img/leaseback/job-ttl-img.jpg");
	}
	.resale .rookie-Head {
		background-image: url("../project/img/resale/job-ttl-img.jpg");
	}
	.resale2 .rookie-Head {
		background-image: url("../project/img/resale2/job-ttl-img.jpg");
	}
	.investment .rookie-Head {
		background-image: url("../project/img/investment/job-ttl-img.jpg");
	}
	.crm .rookie-Head {
		background-image: url("../project/img/crm/job-ttl-img.jpg");
	}
	.purchase .rookie-Head {
		background-image: url("../project/img/purchase/job-ttl-img.jpg");
	}
	.sales .rookie-Head {
		background-image: url("../project/img/sales/job-ttl-img.jpg");
	}
	.management .rookie-Head {
		background-image: url("../project/img/management/job-ttl-img.jpg");
	}
	.global .rookie-Head {
		background-image: url("../project/img/global/job-ttl-img.jpg");
	}
  .rookie-Head {
    height: calc(100vh - 90px);
  }
  .rookie-Head .in {
    width: 90vw;
		height: 80%;
    max-width: 1530px;
    border: 3px solid #fff;
    padding: 5% 10%;
  }
	.rookie-ttl p.division-name {
		margin-left: -1em;
	}
	.rookie-ttl p.rookie-name {
		background: #000;
    padding: .4em 5em .8em;
	}
  .rookie-Head .in p.rookie-name span {
    font-size: 1.5em;
  }
	.rookie-ttl p.rookie-name-en {
		right: 0;
		bottom: -0.6em;
	}
  .rookie-Head .in p.sub-title {
    font-size: 4.2vw;
  }
  .rookie-Head .in p.sub-title span {
    border-bottom: 3px solid #fff;
  }
	.rookie-Head .in .head-text {
		width: 60%;
		max-width: 500px;
		text-shadow: 0 0 1.5em #fff, 0 0 1.5em #fff;
	}
}
@media screen and (min-width: 1300px) {
  .rookie-Head .in p.sub-title {
    font-size: 2.6em;
  }
}
@media screen and (max-width: 999px) {
	.resale .rookie-Head {
		background-image: url("../project/img/resale/job-ttl-img-sp.jpg");
	}
	.resale2 .rookie-Head {
		background-image: url("../project/img/resale2/job-ttl-img-sp.jpg");
	}
	.investment .rookie-Head {
		background-image: url("../project/img/investment/job-ttl-img-sp.jpg");
	}
	.leaseback .rookie-Head {
		background-image: url("../project/img/leaseback/job-ttl-img-sp.jpg");
	}
	.crm .rookie-Head {
		background-image: url("../project/img/crm/job-ttl-img-sp.jpg");
	}
	.global .rookie-Head {
		background-image: url("../project/img/global/job-ttl-img-sp.jpg");
	}
	.management .rookie-Head {
		background-image: url("../project/img/management/job-ttl-img-sp.jpg");
	}
	.sales .rookie-Head {
		background-image: url("../project/img/sales/job-ttl-img-sp.jpg");
	}
  .rookie-Head {
    height: 90vw;
  }
  .rookie-Head .in {
    max-width: 100%;
		height: 100%;
    /*margin-bottom: 10vh;*/
    padding: 5% 5vw;
    align-content: flex-end;
  }
	.rookie-ttl {
		margin-bottom: 2em;
	}
	.rookie-ttl p.division-name {
		position: absolute;
		left: -1em;
	}
  .rookie-Head .in p.rookie-name span {
		background: #000;
    font-size: 5.2vw;
    padding: 1vw 12vw 2vw 12vw;
		display: block;
  }
	.rookie-ttl p.rookie-name-en {
		font-size: 3.5vw;
    right: 0;
    bottom: -2.2vw;
	}
  .rookie-Head .in p.sub-title {
    font-size: 5.5vw;
		margin-bottom: 0.5rem;
  }
  .rookie-Head .in p.all,
  .rookie-Head .in p.sub-title span {
    padding: 0 2vw 0 0;
  }
  .rookie-Head .in p.sub-title span {
    border-bottom: 2px solid #fff;
  }
	.rookie-Head .in .head-text {
		width: 100%;
		background: rgba(255,255,255,.5);
		padding: 1em;
	}
}
@media screen and (min-width: 577px) and (max-width: 999px) {
	.rookie-ttl p.division-name {
		top: -12vw;
		font-size: 2.8vw;
		left: 0;
		line-height: 1.4rem;
		padding: .9rem ;
	}
	.rookie-ttl p.division-name span{
		font-size: 2.3vw;
	}
}
@media screen and (max-width: 576px) {
	.rookie-ttl p.division-name {
		top: -12vw;
		font-size: 3.2vw;
		left: 0;
		line-height: 1rem;
		padding: .4rem .5rem ;
	}
	.rookie-ttl p.division-name span{
		font-size: 2.3vw;
	}
}
/* job-menu 職業選択
----------------------------------------------------*/
.job-menu {
	display: flex;
	flex-wrap: wrap;
}
.job-menu li {
	display: inline-block;
	position: relative;
}
.job-menu li:hover {
	cursor: pointer;
}
.job-menu li .img-box {
	overflow: hidden;
}
.job-menu li img {
	display: inline;
	vertical-align: top;
}
.job-menu li .img-box img {
  transform: scale(1);
  transition: transform 1s ease;
}
.job-menu li:hover .img-box img {
	transform: scale(1.2);
}
.job-menu li p {
	margin-bottom: 0;
}
.job-menu li .job-menu-inner {
	height: 100%;
	width: 100%;
	padding: 1rem;
	position: absolute;
	top: 0;
	left: 0;
	transition: background .2s ease;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
}
.job-menu li .division {
	background: #ffae00;
	color: #fff;
	font-size: 1vw;
	display: inline-block;
	margin-bottom: 2vw;
	padding: 0 1em;
	position: absolute;
	left: 0;
	bottom: 0;
}
.job-menu li .job-menu-detail {
	font-weight: bold;
}
.job-menu li .job-menu-detail .coworker-name-jp {
	font-size: 1.5em;
	text-shadow: 1px 1px #fff;
}
.job-menu li .job-menu-detail .coworker-name-en {
	margin-top: .1em;
	text-shadow: 1px 1px #fff;
}
@media screen and (min-width: 1100px) {
	.job-menu {
		width: 1100px;
		margin: auto;
	}
	.job-menu li {
		width: 275px;
	}
}
@media screen and (max-width: 1099px) {
	.job-menu li .division {
		margin-bottom: 2vw;
		font-size: 1.5vw;
	}
}
@media screen and (min-width: 768px) and (max-width: 1099px) {
	.job-menu {
    max-width: 730px;
		margin: auto;
	}
	.job-menu li {
    width: 50%;
	}
}
@media screen and (min-width: 768px) {
	.job-menu li .division {
		margin-bottom: 1.6em;
	}
	.job-menu li .job-menu-detail .coworker-detail {
		font-size: .6em;
	}
}
@media screen and (max-width: 767px) {
	.job-menu li {
    width: 50%;
	}

	p.coworker-detail {
			font-size: .9em;
	}
	.job-menu li .job-menu-inner .job-menu-detail {
		width: 100%;
		text-shadow: 0 0 20px #fff, 0 0 20px #fff;
		order: 1;
	}
	.job-menu li .job-menu-inner .division {
		margin-bottom: 0;
		order: 2;
	}
	.job-menu li .division {
		font-size: .8em;
	}
}

/* banner
----------------------------------------------------*/
.tabcontents-list {
    display: none;
}
.tabcontents-list.open {
    display: block;
}
/* banner
----------------------------------------------------*/
.banner-area {
	display: flex;
	justify-content: space-between;
}
.banner-area p:first-child {
	margin-right: 1.5em;
}
@media screen and (min-width: 1000px) {
}
@media screen and (max-width: 999px) {
}


/* schedule
----------------------------------------------------*/
/* title */
.schedule-title-wrap {
	margin-bottom: 60px;
	color: rgb(var(--sub-color));
	text-align: center;
}
.schedule-title-wrap .schedule-title-en {
	display: block;
	font-family: var(--mincho-font);
	font-size: 2.5rem;
	line-height: 1;
}
.schedule-title-wrap .schedule-title {
	display: block;
	margin-top: 10px;
	line-height: 1;
}
@media screen and (max-width: 576px) {
	.schedule-title-wrap {
		margin-bottom: 20px;
	}
	.schedule-title-wrap .schedule-title-en {
		font-size: 2rem;
	}
}

/* スライダー */
.slider {
	margin: 0 auto;
	position: relative;
}
.slider ul {
	width: 100%;
}
.slider ul li {
	display: none;
	margin: 0 auto;
	width: 88%;
	position: relative;
}
.slider ul li.active {
	display: block;
}
.slider-arrow {
	width: 100%;
}
.slider-arrow .prev,
.slider-arrow .next {
	cursor: pointer;
	width: 6%;
	height: 100%;
	background: url(../img/common/arrow_or_fill.svg) no-repeat center center / 60% auto;
	position: absolute;
	top: 0;
	z-index: 2;
}
.slider-arrow .prev {
	left: 0;
	transform: rotate(-180deg);
}
.slider-arrow .next {
	right: 0;
}

/* schedule写真付き */
.schedule-list li {
	padding-bottom: 46px;
	position: relative;
}
.schedule-list .schedule-item-box {
	display: flex;
	align-items: stretch;
}
/* 写真横テキスト */
.schedule-list .schedule-item-box .detail {
	flex: 1 0 34%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 30px;
	background: rgb(var(--main-color));
	color: #fff;
	font-size: .85em;
}
.schedule-list .schedule-item-box .detail b {
	display: flex;
	align-items: center;
	font-size: 1.25rem;
	line-height: 1.2;
}
.schedule-list .schedule-item-box .detail b span {
	margin-right: 0.5em;
	font-size: 0.7em;
}
.schedule-list .schedule-item-box .detail .text {
	margin-top: 20px;
	font-size: 0.9em;
}
/* img */
.schedule-list .schedule-item-box .img-area img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (min-width: 769px) {
	.schedule-list li::before {
		content: '';
		display: block;
		margin: 0 auto;
		width: 100%;
		height: 46px;
		background-color: #1c110a;
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
	}
	.schedule-list li img {
		vertical-align: middle;
	}
}
@media screen and (max-width: 1024px) {
	.schedule-list .schedule-item-box {
		flex-direction: column;
	}
}
@media screen and (max-width: 768px) {
	.schedule-list li {
		padding-bottom: 20px;
	}
	.schedule-list li .img-area {
		position: relative;
	}
	.schedule-list li .img-area::before {
		content: '';
		display: block;
		margin: 0 auto;
		width: 100%;
		height: 46px;
		background-color: #1c110a;
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
	}
	.schedule-list li .img-area::before {
		height: 10px;
	}
	.schedule-list .schedule-item-box .detail b {
		font-weight: bold;
		font-size: 1.125rem;
	}
	.schedule-list .schedule-item-box .detail b span {
		font-weight: normal;
	}
	.schedule-list .schedule-item-box .detail .text {
		margin-top: 10px;
	}
}



/* time table
----------------------------------------------------*/
/* 時間下の線を入れるためのwrap */
.time-table-wrap {
	margin-top: 40px;
	width: 100%;
	position: relative;
	z-index: 1;
}
/* 時間下の線　.timeのmargin/padding/font-sizeと一緒に変更 */
.time-table-wrap::before {
	content: '';
	display: block;
	width: 100%;
	height: 5px;
	background-color: rgb(var(--sub-color));
	position: absolute;
	top: calc(1rem + 30px + 20px);
	left: 50%;
	transform: translateX(-50%);
}
.time-table {
	display: flex;
	flex-flow: row nowrap;
	overflow-x: auto;
	position: relative;
}
.time-table .cell {
	flex: 1 0 100px;
	display: flex;
	flex-flow: column wrap;
	align-items: center;
	margin-bottom: 30px;
	position: relative;
	overflow: hidden;
}
/* 縦線 */
.time-table .cell::before {
	content: '';
	display: block;
	width: 1px;
	height: 100%;
	background-color: #ddd;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}
/* テキスト */
.time-table .cell .time {
	margin-bottom: 20px;
	padding-top: 30px;
	padding-bottom: 20px;
	width: 100%;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}
.time-table .cell .plans {
	display: flex;
	align-items: center;
	margin-bottom: 2rem;
	padding: 0 20px;
	min-height: 4em;
	font-size: 0.875rem;
	line-height: 1.3;
	text-align: center;
}
/* サムネイル */
.time-table .cell .img-area {
	cursor: pointer;
	margin-top: auto;
	margin-bottom: 0;
}
/* clickを入れるためのbox */
.time-table .cell .img-area .img-area-box {
	width: 70px;
	height: 50px;
	overflow: hidden;
}
.time-table .cell .img-area img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* click */
.time-table .cell .img-area p {
	margin-top: 0.5em;
	font-size: 0.875rem;
	line-height: 1;
	text-align: center;
}
@media screen and (max-width: 576px) {
	.time-table-wrap {
		margin-top: 20px;
	}
	.time-table .cell .plans {
		padding: 0 10px;
	}
}


/* Q4
----------------------------------------------------*/
.img-text-area {
	position: relative;
}
.question-middle-inner {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	flex-wrap: wrap;
}
.question-middle-inner .question-middle-ttl {
	width: 100%;
}
.question-middle-inner .question-middle-ttl span {
	background: #000;
	color: #fff;
	font-weight: 400;
	letter-spacing: .1em;
	padding: 0.1em 1em;
	display: inline-block;
}
.question-middle-inner .question-middle-ttl span img {
	vertical-align: sub;
	margin: 0 .5em;
}
.question-middle-inner .text-box {
	font-weight: bold;
}
@media screen and (min-width: 1000px) {
	.question-middle-inner {
		align-content: center;
		padding: 1.5em;
	}
	.question-middle-inner .question-middle-ttl span {
		font-size: 1.8em;
	}
	.question-middle-inner .question-middle-ttl span img {
		height: 1.2em;
	}
	.question-middle-inner .text-box {
		font-size: .8em;
		max-width: 500px;
		margin: 0 2em;
	}
}
@media screen and (max-width: 999px) {
	.question-middle-inner {
		align-content: flex-end;
	}
	.question-middle-inner .question-middle-ttl span {
		font-size: 5vw;
	}
	.question-middle-inner .question-middle-ttl span img {
		height: 1.2em;
	}
	.question-middle-inner .text-box {
		background: rgba(255,255,255,.5);
		padding: 1em;
		margin: 0 1.5em 2em;
	}
}
@media screen and (max-width: 767px) {
	.question-middle-inner .text-box {
		font-size: 2.6vw;
	}
}

/* Q5
----------------------------------------------------*/
@media screen and (min-width: 1000px) {
	.flex-img-cont {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.flex-img-cont .img-box,
	.flex-img-cont .text-box {
		width: 48%;
	}
}
@media screen and (max-width: 999px) {
}

/* buyer-banner
----------------------------------------------------*/
.buyer-banner {
	padding-bottom: 0 !important;
}

/* footer上コンテンツ
----------------------------------------------------*/
.next-btn {
	display: inline-block;
}
.next-btn a {
	background: #000;
	color: #fff;
	padding: .3em 1em;
	text-decoration: none;
	display: block;
}

/* ネクストボタン右よせ
----------------------------------------------------*/
.tabcontents-list .job-btn-cont {
	position: relative;
}

.tabcontents-list .job-btn-cont .next-btn {
	position: absolute;
	right: 0;
	bottom: 0;
}
