@charset "utf-8";

.c-visual {
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
}
.p-works .c-visual::before,
.p-recruit .c-visual::before,
.p-career .c-visual::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.15);
}
.visual_panel {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 24px 24px 40px;
	color: white;
	line-height: 1.4;
	background: #c00;
}
.visual_title {
	display: flex;
	flex-direction: column;
	position: absolute;
	top: calc(50% - .7em);
	left: 0;
	width: 100%;
	color: white;
	font-size: 70px;
	line-height: 1.2;
	text-align: center;
}
.visual_title .main {
	font-weight: 500;
	letter-spacing: .1em;
}
.visual_title .sub {
	margin-top: .3em;
	font-size: 25%;
	letter-spacing: .2em;
}
.p-about .visual_panel {
	align-items: center;
	min-width: 240px;
}
.p-interview .visual_panel {
	position: absolute;
	bottom: 80px;
	left: 0;
	padding: 48px 24px;
}
.visual_panel .label {
	position: relative;
	padding-left: 2.5em;
	font-size: 13px;
	font-weight: 400;
}
.visual_panel .label .num {
	font-size: 123%;
}
.visual_panel .main {
	font-size: 43px;
	font-weight: 500;
}
.p-interview .visual_panel .main {
	margin-top: .3em;
}
.visual_panel .sub {
	position: relative;
	margin-top: 1em;
	font-size: 16px;
}
.visual_panel .label::before,
.visual_panel .sub::before {
	content: "";
	position: absolute;
	top: calc(50% - .1em);
	width: 2em;
	border-top: 1px solid currentcolor;
}
.visual_panel .label::before {
	left: 0;
}
.visual_panel .sub::before {
	right: calc(100% + .5em);
}
@media screen and (min-width: 640px) {
	.p-about .c-visual {
		display: flex;
	}
	.p-about .visual_panel {
		flex-basis: 400px;
	}
	.p-about .visual_photo {
		flex-basis: 600px;
		margin-bottom: 64px;
	}
	.p-interview .visual_panel .main {
		font-size: 33px;
	}
}
@media screen and (max-width: 639px) {
	.visual_title .main {
		font-size: 45px;
	}
	.visual_photo img {
		width: 100%;
	}
	.p-about .c-visual {
		padding-bottom: 32px;
	}
	.p-about .visual_panel {
		position: absolute;
		bottom: 0;
		left: 0;
		padding: 48px 20px;
	}
	.p-interview .visual_panel {
		bottom: 32px;
		padding: 24px 20px;
	}
	.visual_panel .main {
		font-size: 24px;
	}
	.visual_panel .sub {
		font-size: 14px;
	}
}
/* inview
.visual_panel,
.visual_panel .label,
.visual_panel .main {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.visual_panel:not(.is-active),
.visual_panel:not(.is-active) .label,
.visual_panel:not(.is-active) .main {
	clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
}
.visual_panel.is-anim,
.visual_panel.is-anim .label,
.visual_panel.is-anim .main {
	transition: clip-path .8s cubic-bezier(.3,1,.7,1);
}
.visual_panel.is-anim {
	transition-timing-function: cubic-bezier(.7,0,.3,1);
}
.visual_panel.is-anim .label { transition-delay: .5s; }
.visual_panel.is-anim .main { transition-delay: .6s; } */

.crumb {
	max-width: 1000px;
	margin: 16px auto 0;
	padding: 0 20px;
	color: #646464;
	font-size: 10px;
	line-height: 1.2;
}
@media screen and (min-width: 640px) {
	.crumb {
		letter-spacing: .16em;
	}
}
@media screen and (max-width: 639px) {
	.crumb {
		margin: 16px auto;
	}
}

.page_section {
	max-width: 640px;
	margin: 80px auto;
	padding: 0 20px;
}
@media screen and (max-width: 639px) {
	.page_section {
		margin: 64px auto;
	}
}

.section_title {
	z-index: 2;
	position: relative;
	margin: 24px 0;
	padding-left: 2.4em;
	font-size: 32px;
	line-height: 1.6;
	font-family: "游ゴシック体 Pr6N B", "Yu Gothic", "YuGothic", sans-serif;
}
.section_title::before {
	content: "";
	position: absolute;
	top: calc(50% - 18px);
	left: -200px;
	right: calc(100% - 1.4em);
	height: 36px;
	border-top: 12px solid #c00;
	border-bottom: 12px solid #c00;
}
@media screen and (min-width: 640px) {
	.section_title {
		letter-spacing: .16em;
	}
}
@media screen and (max-width: 639px) {
	.section_title {
		font-size: 24px;
	}
	.section_title {
		padding-left: 1em;
	}
	.section_title::before {
		left: -20px;
		right: calc(100% - .4em);
	}
}

.page_section p {
	font-size: 16px;
	line-height: 1.9;
	line-break: strict;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}
.page_section .author {
	margin-top: 16px;
	font-size: 13px;
	line-height: 1.5;
	text-align: right;
}
.page_section .author .name {
	display: inline-block;
	margin-top: .5em;
	font-size: 17px;
}
@media screen and (min-width: 640px) {
	.page_section p {
		letter-spacing: .15em;
	}
}


/* プロフィール */
.c-profile {
	position: relative;
	margin: 64px 0;
}
.p-about.-message .c-profile {
	max-width: 280px;
	margin-bottom: 120px;
}
.p-interview .c-profile {
	max-width: 720px;
	margin: 64px auto 200px;
}
.c-profile img {
	border-radius: 8px;
}
.c-profile .profile_text {
	font-size: 12px;
	line-height: 1.6;
}
.c-profile .profile_text .position,
.c-profile .profile_text .name .join {
	display: block;
	line-height: 1.2;
	font-weight: 700;
}
.c-profile .profile_text .name .main {
	color: #c00;
	font-size: 29px;
}
.c-profile .profile_text .name .sub {
	position: relative;
	top: -.4em;
	margin-left: 1em;
	font-size: 11px;
	font-weight: 400;
	vertical-align: middle;
}
.p-project .profile_text .name .sub {
	top: -.25em;
}
.c-profile .profile_text .profile {
	margin-top: 16px;
	line-height: 1.8;
	line-break: strict;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}
.p-project .profile_text .profile {
	margin-top: .3em;
	line-height: 1.8;
}
.c-profile .profile_text .profile .note {
	display: block;
	margin-top: .5em;
	font-size: 90%;
}
.c-profile .title {
	display: inline-block;
	z-index: 0;
	position: relative;
	padding: .6em 2em;
	color: white;
	font-size: 16px;
	line-height: 1.2;
	font-weight: 500;
	text-align: center;
}
.p-interview .c-profile .title {
	position: absolute;
	top: -20px;
	left: -20px;
}
.c-profile .title::before {
	content: "";
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #c00;
	border-radius: 8px 0 8px 0;
	transform: skewX(-12deg);
}
.c-profile p {
	margin-top: 24px;
	padding: 0 8px;
	font-size: 12px;
	line-height: 1.8;
}
@media screen and (min-width: 640px) {
	.p-about.-message .c-profile {
		margin-left: -20px;
	}
	.p-interview .c-profile {
		display: flex;
		align-items: center;
	}
	.p-interview .c-profile .profile_photo {
		max-width: 280px;
	}
	.p-interview .c-profile .profile_text {
		max-width: 360px;
		margin-left: 40px;
	}
	.p-project .c-profile .title {
		margin-left: -40px;
	}
	.p-project .profile_photo {
		flex-basis: 168px;
	}
	.p-project .profile_text {
		flex-basis: calc(100% - 200px);
		margin-left: 32px;
	}
	.p-project .profile_text .name .main {
		font-size: 20px;
	}
	.p-project .profile_text .position {
		margin-top: .3em;
	}
}
@media screen and (max-width: 639px) {
	.p-about.-message .c-profile {
		margin: 40px auto 200px;
	}
	.p-interview .c-profile {
		max-width: 80%;
		margin-bottom: 120px;
	}
	.c-profile .profile_photo img {
		width: 100%;
	}
	.c-profile .profile_text {
		margin-top: 24px;
		padding: 0 8px;
	}
	.c-profile .profile_text .profile br {
		display: none;
	}
	.p-project .c-profile {
		margin-top: 40px;
	}
	.p-project .profile_text .name .main {
		font-size: 25px;
	}
	.p-project .profile_text .profile {
		font-size: 14px;
	}
	.p-project .profile_text {
		margin-top: 16px;
	}
}


/* セクション間の画像 */
.separation_photo {
	z-index: 0;
	position: relative;
	max-width: 1000px;
	margin: 120px auto;
}
.separation_photo.-l img {
	margin-right: auto;
}
.separation_photo.-r img {
	margin-left: auto;
}
@media screen and (min-width: 640px) {
	.separation_photo img.v-dt {
		display: block;
	}
	.p-project .separation_photo {
		margin: 80px auto;
	}
	.p-interview .separation_photo img {
		max-width: 92%;
	}
}
@media screen and (max-width: 639px) {
	.separation_photo {
		margin: 64px auto;
	}
	.separation_photo.-l {
		margin-right: 20px;
	}
	.separation_photo.-r {
		margin-left: 20px;
	}
	.separation_photo img {
		width: 100%;
	}
	.p-project .separation_photo {
		margin: 40px auto;
	}
}

/* セクション間の複数の画像 */
.p-interview .separation_photos .photo {
	z-index: 0;
	position: relative;
}
.p-interview .separation_photos img {
	width: 100%;
}
@media screen and (min-width: 640px) {
	.p-interview .separation_photos {
		max-width: 1000px;
		margin: 64px auto;
	}
	.p-interview .separation_photos::after {
		content: "";
		display: block;
		clear: both;
	}
}
@media screen and (max-width: 639px) {
	.p-interview .separation_photos {
		display: flex;
		flex-direction: column;
	}
}

.intro_photo,
.interview_photo,
.separation_photo {
	position: relative;
}
.intro_photo .caption,
.interview_photo .caption,
.separation_photo .caption {
	position: absolute;
	left: 1em;
	bottom: 8px;
	color: white;
	font-size: 12px;
	line-height: 1.2;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	text-shadow: 0 2px 4px rgba(0,0,0,.2);
}
.separation_photo .caption {
	left: calc(50% - 390px);
}
@media screen and (max-width: 639px) {
	.separation_photo .caption {
		left: 20px;
	}
}
.intro_photo .deco,
.separation_photo .deco,
.separation_photos .deco,
.interview_photo .deco {
	z-index: -1;
	position: absolute;
	background: #c00;
}


/**
 * 私たちについて
 * ---------------------------------------- */
.-aboutus .p-intro {
	position: relative;
	max-width: 680px;
}
.-aboutus .p-intro .section_title {
	padding-left: 0;
	font-size: 44px;
}
.-aboutus .p-intro .section_title::before {
	left: -180px;
	right: calc(100% + .6em);
}
.-aboutus .p-intro .c-linejapan,
.-aboutus .p-intro .c-linejapan .line_j {
	width: 191px;
}
.-aboutus .p-intro .c-linejapan .-c2 {
	width: 36%;
	transform: scale(1) translate(-46%, -144%);
}
.-aboutus .p-intro .c-linejapan .-c1 { width: 9.9%; }
.-aboutus .p-intro .c-linejapan .-c3 { width: 8.4%; }
.-aboutus .p-intro .c-linejapan .-c5 { width: 30.3%; }
@media screen and (min-width: 640px) {
	.-aboutus .p-intro {
		padding-bottom: 240px;
	}
	.-aboutus .p-intro .c-linejapan {
		position: absolute;
		right: -19px;
		bottom: 144px;
		height: 209px;
	}
	.p-about.-aboutus .separation_photo .deco {
		inset: -8% 4% -18% 78%;
	}
}
@media screen and (max-width: 999px) {
	.-aboutus .p-intro .section_title {
		font-size: 40px;
	}
}
@media screen and (max-width: 639px) {
	.-aboutus .p-intro {
		margin-bottom: 200px;
	}
	.-aboutus .p-intro .section_title {
		margin-left: 1em;
		font-size: 21px;
	}
	.-aboutus .p-intro .c-linejapan {
		width: 160px;
		height: 175px;
		margin: 24px auto 0;
	}
	.p-about.-aboutus .separation_photo .deco {
		inset: -12% 4% -14% 64%;
	}
}
/* inview */
.-aboutus .p-intro .c-linejapan.js-inview:not(.is-inview) .-c2 { transform: scale(.6) translate(-46%, -144%); }


/* 日本郵政不動産を知る5つのキーワード */
.p-keyword {
	position: relative;
	max-width: 1000px;
	margin-bottom: 0;
	padding: 112px 20px;
	color: white;
	text-align: center;
}
.p-keyword::before {
	content: "";
	position: absolute;
	top: 0;
	right: calc(50% - 50vw);
	bottom: 0;
	left: calc(50% - 50vw);
	background: linear-gradient(to top, rgba(173,0,0,.2) 1px, rgba(173,0,0,0) 1px) center / 10px 10px,
		linear-gradient(to left, rgba(173,0,0,.2) 1px, rgba(173,0,0,0) 1px) center / 10px 10px;
	background-color: #c00;
}
.p-keyword .deco_title {
	position: absolute;
	top: 1.5em;
	left: 1em;
	color: black;
	font-size: 110px;
	line-height: 1;
	font-weight: 500;
}
@media screen and (max-width: 639px) {
	.p-keyword {
		padding: 80px 20px;
	}
	.p-keyword .deco_title {
		top: -.5em;
		left: 1.25em;
		font-size: 55px;
	}
}

.p-keyword > * {
	position: relative;
}
.p-keyword .deco_title .t {
	display: block;
	transform-origin: left bottom;
	transform: rotate(-90deg);
}
.p-keyword .keyword_title {
	display: inline-block;
	position: relative;
	margin-left: 1em;
	font-size: 38px;
	line-height: 1.2;
}
.p-keyword .keyword_title::before {
	content: "";
	position: absolute;
	top: -1em;
	left: -1em;
	width: 2em;
	height: 2em;
	border-top: 1px solid currentcolor;
	border-left: 1px solid currentcolor;
}
.p-keyword .keyword_title .num {
	font-size: 184%;
	font-weight: 500;
}

.keyword_section {
	z-index: 1;
	position: relative;
	margin: 80px 0;
}
.keyword_section.-k5 {
	margin-bottom: 0;
}
.keyword_section:first-of-type {
	margin-top: 40px;
}
@media screen and (min-width: 1000px) {
	.keyword_section.-k1 {
		margin-left: 40px;
	}
	.keyword_section.-k2 {
		margin-right: 80px;
	}
	.keyword_section.-k3 {
		margin-left: 104px;
	}
	.keyword_section.-k4 {
		margin-right: 40px;
	}
	.keyword_section.-k5 {
		margin-left: 80px;
	}
}
@media screen and (max-width: 639px) {
	.p-keyword .keyword_title {
		font-size: 26px;
	}
	.keyword_section {
		margin: 40px 0;
	}
	.keyword_section:first-of-type {
		margin-top: 24px;
	}
}

.keyword_phrase {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 0 16px;
	border-radius: 50%;
	line-height: 1.2;
	background: white;
	box-shadow: 12px 20px 0 rgba(0,0,0,.15);
}
@media screen and (min-width: 640px) {
	.keyword_phrase {
		position: absolute;
	}
	.keyword_section:nth-of-type(odd) .keyword_phrase {
		left: 0;
	}
	.keyword_section:nth-of-type(even) .keyword_phrase {
		right: 0;
		margin-left: auto;
	}
	.-k1 .keyword_phrase {
		width: 46.4vw;
		height: 46.4vw;
	}
	.-k2 .keyword_phrase {
		width: 41.6vw;
		height: 41.6vw;
	}
	.-k3 .keyword_phrase {
		width: 37.6vw;
		height: 37.6vw;
	}
	.-k4 .keyword_phrase {
		width: 44.8vw;
		height: 44.8vw;
	}
	.-k5 .keyword_phrase {
		width: 40.0vw;
		height: 40.0vw;
	}
}
@media screen and (min-width: 1000px) {
	.-k1 .keyword_phrase {
		width: 464px;
		height: 464px;
	}
	.-k2 .keyword_phrase {
		width: 416px;
		height: 416px;
	}
	.-k3 .keyword_phrase {
		width: 376px;
		height: 376px;
	}
	.-k4 .keyword_phrase {
		width: 448px;
		height: 448px;
	}
	.-k5 .keyword_phrase {
		width: 400px;
		height: 400px;
	}
}
@media screen and (max-width: 639px) {
	.keyword_phrase {
		margin: 0 auto;
		box-shadow: 4px 12px 0 #ad0000;
	}
	.-k1 .keyword_phrase {
		width: 312px;
		height: 312px;
	}
	.-k2 .keyword_phrase {
		width: 274px;
		height: 274px;
	}
	.-k3 .keyword_phrase {
		width: 248px;
		height: 248px;
	}
	.-k4 .keyword_phrase {
		width: 304px;
		height: 304px;
	}
	.-k5 .keyword_phrase {
		width: 272px;
		height: 272px;
	}
}

.keyword_phrase .sub {
	position: relative;
	color: black;
	font-size: 12px;
	font-weight: 500;
}
.keyword_phrase .sub::before {
	content: "";
	position: absolute;
	top: 60%;
	right: calc(100% + .5em);
	width: 2.4em;
	border-top: 1px solid currentcolor;
}
.keyword_phrase .sub .num {
	position: relative;
	top: .05em;
	font-size: 167%;
}
.keyword_phrase .main {
	color: #c00;
	font-size: 44px;
	font-weight: 500;
}
.-k2 .keyword_phrase .main,
.-k3 .keyword_phrase .main {
	font-size: 70px;
	line-height: 1;
}
.keyword_phrase .main .p {
	display: inline-block;
}
@media screen and (min-width: 1000px) {
	.keyword_phrase .main {
		margin: 24px 0;
	}
}
@media screen and (max-width: 639px) {
	.keyword_phrase .sub {
		font-size: 10px;
	}
	.keyword_phrase .main {
		font-size: 30px;
		margin: 16px 0;
	}
	.-k2 .keyword_phrase .main,
	.-k3 .keyword_phrase .main {
		font-size: 47px;
	}
}

.keyword_note {
	position: relative;
	max-width: 360px;
}
.keyword_note p {
	padding: 20px;
}
@media screen and (min-width: 640px) {
	/*.keyword_note {
		max-width: 36vw;
	}*/
	.-k1 .keyword_note {
		margin-left: calc(46.4vw + 6.4vw);
		padding-top: 10%;
	}
	.-k2 .keyword_note {
		margin-right: calc(41.6vw + 6.4vw);
		margin-left: auto;
		padding-top: 4%;
	}
	.-k3 .keyword_note {
		margin-left: calc(37.6vw + 6.4vw);
		padding-top: 2%;
	}
	.-k4 .keyword_note {
		margin-right: calc(44.8vw + 6.4vw);
		margin-left: auto;
		padding-top: 4%;
	}
	.-k5 .keyword_note {
		margin-left: calc(40.0vw + 6.4vw);
		padding-top: 4%;
	}
}
@media screen and (min-width: 1000px) {
	.-k1 .keyword_note {
		margin-left: calc(464px + 64px);
	}
	.-k2 .keyword_note {
		margin-right: calc(416px + 64px);
	}
	.-k3 .keyword_note {
		margin-left: calc(376px + 64px);
	}
	.-k4 .keyword_note {
		margin-right: calc(448px + 64px);
	}
	.-k5 .keyword_note {
		margin-left: calc(400px + 64px);
	}
}
@media screen and (max-width: 639px) {
	.keyword_note {
		margin: 24px auto 0;
	}
	.keyword_section:nth-of-type(odd) .photo {
		padding-left: 20px;
	}
	.keyword_section:nth-of-type(even) .photo {
		padding-right: 20px;
	}
	.keyword_section:nth-of-type(odd) p {
		padding-right: 0;
	}
	.keyword_section:nth-of-type(even) p {
		padding-left: 0;
	}
}

.keyword_note .wire {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 40%;
	fill: none;
	stroke: currentcolor;
}
.keyword_note .wire::before,
.keyword_note .wire::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
}
.keyword_note .wire::before {
	height: 100%;
	border-left: 1px solid white;
	transform-origin: center top;
}
.keyword_note .wire::after {
	width: 100%;
	border-bottom: 1px solid white;
	transform-origin: left center;
}
.-k2 .keyword_note .wire,
.-k4 .keyword_note .wire {
	transform: scaleX(-1);
}
.keyword_note .wire .line {
	position: absolute;
	bottom: calc(100% - 1px);
	stroke-dasharray: 112px 112px;
}
.keyword_note .wire .border {
	display: none;
	width: 100%;
	height: 100%;
	stroke-width: 1;
	stroke-dasharray: 616px 616px;
}
/* inview */
.keyword_section:not(.is-inview) .keyword_phrase {
	opacity: 0;
	transform: scale(.6);
}
.keyword_section .photo {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.keyword_section:not(.is-inview) .photo {
	clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
}
.keyword_section.-k2:not(.is-inview) .photo,
.keyword_section.-k4:not(.is-inview) .photo {
	clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
}
.keyword_section:not(.is-inview) .noto {
	opacity: 0;
}
.keyword_section.-k2:not(.is-inview) .noto,
.keyword_section:not(.is-inview) .wire::before {
	transform: scaleY(0);
}
.keyword_section:not(.is-inview) .wire::after {
	transform: scaleX(0);
}
.keyword_section:not(.is-inview) .wire .line {
	stroke-dashoffset: -112px;
}
.keyword_section:not(.is-inview) .wire .border {
	stroke-dashoffset: -616px;
}
.keyword_section.is-anim .keyword_phrase {
	transition: opacity .6s, transform .6s cubic-bezier(.3,1,.7,1);
}
.keyword_section.is-anim .photo {
	transition: clip-path .6s cubic-bezier(.7,0,.3,1);
	transition-delay: .4s;
}
.keyword_section.is-anim .noto {
	transition: opacity .6s;
	transition-delay: .6s;
}
.keyword_section .wire .border {
	transition: stroke-dashoffset .8s .4s cubic-bezier(.7,0,.3,1);
}
.keyword_section .wire::before {
	transition: transform .3s .4s cubic-bezier(.7,0,.3,1);
}
.keyword_section .wire::after {
	transition: transform .5s .7s cubic-bezier(.3,1,.7,1);
}
.keyword_section .wire .line {
	transition: stroke-dashoffset .4s .2s cubic-bezier(.3,1,.7,1);
}
@media screen and (min-width: 640px) {
	.-k2 .keyword_note .wire {
		height: 36%;
	}
	.keyword_note .wire .line {
		right: calc(100% - 1px);
	}
}
@media screen and (min-width: 640px) and (max-width: 999px) {
	.-k1 .keyword_note .wire {
		height: calc(100% - 40vw);
	}
	.-k2 .keyword_note .wire {
		height: calc(100% - 35vw);
	}
	.-k3 .keyword_note .wire {
		height: calc(100% - 31vw);
	}
	.-k4 .keyword_note .wire {
		height: calc(100% - 39vw);
	}
	.-k5 .keyword_note .wire {
		height: calc(100% - 34vw);
	}
}
@media screen and (max-width: 639px) {
	.keyword_note .wire {
		height: calc(100% + 24px);
	}
	.keyword_note .wire .line {
		left: 0;
		transform: scaleX(-1);
	}
	.keyword_note .wire .border {
		position: absolute;
		bottom: 0;
		left: 0;
	}
}


/**
 * 私たちの仕事
 * ---------------------------------------- */
.p-works .p-intro {
	position: relative;
	padding: 80px 20px 168px;
	color: white;
	text-align: center;
	background: #c00;
}
.p-works .p-intro::before {
	content: "";
	position: absolute;
	top: 0;
	right: calc(50% - 50vw);
	bottom: 0;
	left: calc(50% - 50vw);
	background: #c00;
}
.p-works .p-intro .title {
	display: inline-block;
	position: relative;
	font-size: 44px;
	line-height: 1.4;
	letter-spacing: .16em;
}
.p-works .p-intro .title::before {
	content: "";
	position: absolute;
	top: 48%;
	right: calc(100% + .5em);
	width: 2.4em;
	border-top: 1px solid currentcolor;
}
.p-works .p-intro p {
	position: relative;
	margin-top: 16px;
	text-align: inherit;
}
.p-works .p-intro .c-symboloop {
	bottom: 48px;
}

.p-works .section_title {
	display: flex;
	align-items: center;
	padding: 0;
	line-height: 1.4;
}
.p-works .section_title .num {
	z-index: 0;
	position: relative;
	font-size: 117px;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
}
.p-works .section_title .num::before {
	content: "";
	z-index: -1;
	position: absolute;
	top: calc(50% - .3em);
	left: calc(50% - .3em);
	width: .6em;
	height: .6em;
	border-radius: 1em;
}
.p-works .section_title .main {
	font-size: 32px;
}
@media screen and (max-width: 639px) {
	.p-works .p-intro {
		padding: 64px 20px 160px;
	}
	.p-works .p-intro .title {
		font-size: 28px;
	}
	.p-works .section_title .num {
		font-size: 83px;
	}
	.p-works .section_title .main {
		font-size: 25px;
	}
}

/* 開発物件の種類 */
.p-works1 {
	position: relative;
	max-width: 820px;
}
.p-works1 .section_title {
	color: #c00;
}
.p-works1 .section_title .num::before {
	background: white;
}
.p-works1 p + p {
	margin-top: 1em;
}
.p-works1 .photo {
	clear: left;
	margin-top: 64px;
}
.p-works1 .deco {
	z-index: -1;
	position: absolute;
	background: #d9d9d9;
}
.p-works1 .deco::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/works_bg.jpg) left bottom / 1256px 1256px no-repeat;
	opacity: .1;
}
@media screen and (min-width: 640px) {
	.p-works1 {
		margin-top: 160px;
	}
	.p-works1 .section_title {
		flex-direction: column;
		float: left;
		width: calc(490px - 56px);
		margin-top: 80px;
		margin-left: -110px;
	}
	.p-works1 .section_title::before {
		top: calc(100% + 32px);
		right: 20px;
		left: 0;
	}
	.p-works1 p {
		max-width: 400px;
		margin-left: auto;
	}
	.p-works1 .deco {
		bottom: -80px;
		left: -90px;
		width: 434px;
		height: 200%;
	}
}
@media screen and (max-width: 639px) {
	.p-works1 {
		text-align: center;
	}
	.p-works1 .section_title {
		display: inline-flex;
		justify-content: center;
		margin-bottom: 80px;
	}
	.p-works1 .section_title::before {
		right: calc(100% + .8em);
		left: -204px;
	}
	.p-works1 .photo {
		margin: 48px -20px 0;
	}
	.p-works1 .deco {
		top: -64px;
		left: 0;
		width: 100%;
		height: 240px;
	}
	.p-works1 .deco::before {
		background-position: left center;
		background-size: 640px 640px;
	}
}

/* 開業務内容の一例 */
.p-works2 {
	position: relative;
	max-width: 1000px;
	margin-bottom: 0;
	padding: 24px 20px 200px;
	text-align: center;
}
.p-works2::before {
	content: "";
	position: absolute;
	top: 0;
	right: calc(50% - 50vw);
	bottom: 0;
	left: calc(50% - 50vw);
	background: #c00;
}
.p-works2 .section_title {
	display: inline-flex;
	justify-content: center;
	color: white;
}
.p-works2 .section_title::before {
	right: calc(100% + .8em);
	left: -327px;
	border-color: currentcolor;
}
.p-works2 .section_title .num::before {
	background: #ad0000;
}
.p-works2 .section_title .main {
	margin-left: .5em;
}
.p-works2 .c-symboloop {
	bottom: 64px;
}
@media screen and (max-width: 639px) {
	.p-works2 {
		padding: 0 20px 160px;
	}
	.p-works2 .c-symboloop {
		bottom: 48px;
	}
}

.works_panels {
	max-width: 920px;
	margin: 0 auto;
}
.works_panel {
	display: flex;
	flex-direction: column;
	position: relative;
	padding: 24px 40px 40px;
	border-radius: 8px;
	background: white;
	box-shadow: 32px 32px 0 #ad0000;
}
@media screen and (min-width: 640px) {
	.works_panels {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.works_panel {
		flex-basis: calc(50% - 24px);
	}
	.works_panel.-w5 {
		flex-basis: 100%;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.works_panel:nth-child(n+3) {
		margin-top: 48px;
	}
}
@media screen and (max-width: 639px) {
	.works_panel {
		padding: 24px;
		box-shadow: 12px 12px 0 #ad0000;
	}
	.works_panel:nth-child(n+2) {
		margin-top: 32px;
	}
}

.works_panel .panel_title {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	margin-bottom: 24px;
	line-height: 1.4;
	text-align: left;
}
.works_panel .panel_title::before {
	content: "";
	position: absolute;
	right: 0;
	bottom: -24px;
	left: -40px;
	border-bottom: 1px solid #d9d9d9;
}
.works_panel .panel_title .num {
	padding: 0 .1em;
	font-size: 73px;
	line-height: 1;
}
.works_panel .panel_title .num::after {
	content: "";
	display: block;
	margin: 0 -.1em;
	height: 24px;
	border-top: 8px solid #c00;
	border-bottom: 8px solid #c00;
}
.works_panel .panel_title .main {
	margin: .8em 0 0 .8em;
	color: #c00;
	font-size: 24px;
}
.works_panel .panel_title .main small {
	font-size: 75%;
}
.works_panel p {
	margin: 24px 0;
}
.works_panel.-w5 .panel_photo picture + picture {
	margin-top: 12px;
}
@media screen and (min-width: 640px) {
	.works_panel.-w5 .panel_title {
		flex-basis: 100%;
	}
	.works_panel.-w5 p {
		flex-basis: calc(50% + 24px);
		margin-bottom: 0;
	}
	.works_panel.-w5 .panel_photo {
		flex-basis: calc(50% - 64px);
		margin-top: 24px;
	}
}
@media screen and (max-width: 639px) {
	.works_panel .panel_title::before {
		left: -24px;
	}
	.works_panel .panel_title .num {
		font-size: 56px;
	}
	.works_panel .panel_title .main {
		font-size: 20px;
	}
}

/* 先輩社員の仕事を知る */
.works_panel .panel_more,
.works_panel .panel_photo {
	margin-top: auto;
}
.works_panel .panel_more .title {
	display: inline-block;
	z-index: 0;
	position: relative;
	padding: 0 1em;
	color: white;
}
.works_panel .panel_more .title::before {
	content: "";
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #c00;
	border-radius: 8px 0 8px 0;
	transform: skewX(-12deg);
}
.works_panel .c-more {
	display: flex;
	max-width: 356px;
	margin: 16px auto 0;
}
.works_panel .c-more .text {
	flex-basis: 45%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	border-radius: 8px 0 0 8px;
	color: white;
	line-height: 1.6;
	background: #c00;
}
.works_panel .c-more .text .sub {
	font-size: 13px;
	font-weight: 400;
}
.works_panel .c-more .text .main {
	font-size: 19px;
	letter-spacing: .16em;
}
.works_panel .c-more .text .more {
	position: absolute;
	right: 16px;
	bottom: 8px;
	font-size: 12px;
	font-weight: 500;
}
.works_panel .c-more .text .more .arr {
	margin-left: .5em;
}
.works_panel .c-more .photo {
	flex-basis: 55%;
}
.works_panel .c-more .photo img {
	border-radius: 0 8px 8px 0;
}
.works_panel .panel_photo {
	max-width: 356px;
	margin-right: auto;
	margin-left: auto;
}
.works_panel .panel_photo picture {
	display: inline-block;
}
.works_panel .panel_photo img {
	border-radius: 8px;
}


/**
 * プロジェクト
 * ---------------------------------------- */
.p-project .c-visual .title {
	position: absolute;
	right: 1.3em;
	bottom: -.7em;
	font-size: 96px;
	line-height: 1;
	font-weight: 400;
	white-space: nowrap;
	transform-origin: right bottom;
	transform: rotate(90deg);
}
.project_lead {
	z-index: 3;
	position: relative;
	max-width: 752px;
	margin: 40px auto;
	padding: 0 20px;
	line-height: 1.5;
}
.project_lead .label {
	position: relative;
	font-size: 12px;
	font-weight: 500;
}
.project_lead .label .num {
	position: relative;
	top: .05em;
	font-size: 17px;
}
.project_lead .label::before {
	content: "";
	position: absolute;
	top: calc(50% - .1em);
	right: calc(100% + .5em);
	width: 2.4em;
	border-top: 1px solid currentcolor;
}
.project_lead .title {
	font-size: 44px;
	letter-spacing: .14em;
}
@media screen and (max-width: 639px) {
	.p-project .c-visual .title {
		right: 1.3em;
		bottom: -3.2em;
		font-size: 60px;
	}
	.project_lead .label {
		margin-left: 3em;
	}
	.project_lead .title {
		margin-top: .3em;
		font-size: 25px;
	}
}

.p-project .page_section {
	max-width: 820px;
}
.p-project .p-intro {
	position: relative;
	max-width: 752px;
	margin-top: 64px;
}
.p-project .intro_photo {
	z-index: 2;
}
.p-project .section_title {
	margin-bottom: 0;
	padding-left: 0;
}
.p-project .p-intro .section_title {
	color: #c00;
	font-size: 25px;
}
.p-project .section_title::before {
	right: calc(100% + 20px);
	left: -110px;
}
.p-project .p-intro .section_title::before {
	left: -144px;
}
.p-project .p-intro .section_title,
.p-project .p-intro p {
	max-width: 448px;
}
.p-project .p-intro p {
	margin-top: 16px;
}
.p-project .p-intro .note {
	display: block;
	margin-top: .5em;
	padding-left: 1em;
	font-size: small;
	text-indent: -1em;
}
@media screen and (min-width: 640px) {
	.p-project .p-intro {
		margin-bottom: 200px;
	}
	.p-project .intro_photo {
		position: absolute;
		top: 0;
		right: -124px;
	}
	.p-project .intro_photo .deco {
		inset: -24% 24% 10% 16%;
	}
	.-project3 .intro_photo .deco {
		inset: -10% 24% -4% 16%;
	}
}
@media screen and (max-width: 639px) {
	.p-project .page_section {
		margin-top: 40px;
	}
	.p-project .section_title {
		margin-left: 1em;
	}
	.p-project .section_title::before {
		right: calc(100% + 16px);
	}
	.p-project .p-intro {
		display: flex;
		flex-direction: column;
	}
	.p-project .intro_photo {
		margin: 24px -20px;
	}
	.p-project .intro_photo img {
		width: 100%;
	}
	.p-project .p-intro .section_title {
		font-size: 20px;
	}
	.p-project .intro_photo,
	.p-project .p-intro .section_title {
		order: -1;
	}
	.p-project .p-intro p {
		margin-top: 0;
	}
}

/* Project Member */
.member_item {
	margin-top: 24px;
}
@media screen and (min-width: 640px) {
	.member_list {
		max-width: 520px;
	}
	.member_item {
		display: flex;
		align-items: center;
	}
}
@media screen and (max-width: 639px) {
	.member_list {
		max-width: 88%;
		margin-right: auto;
		margin-left: auto;
	}
	.member_item:first-child {
		margin-top: 32px;
	}
}

.question {
	position: relative;
	margin: 48px 0 0 3em;
}
.question::before {
	content: "";
	position: absolute;
	top: .85em;
	right: calc(100% + .5em);
	width: 2.4em;
	border-top: 1px solid currentcolor;
}
@media screen and (max-width: 639px) {
	.question {
		margin-top: 32px;
	}
}
.answer::after {
	content: "";
	display: block;
	clear: both;
}
.answer {
	margin-top: 24px;
}
.answer p {
	margin-top: 32px;
	line-height: 1.9;
	letter-spacing: .1em;
}
.answer p:first-of-type {
	margin-top: 0;
}
.answer .name {
	margin-right: 1em;
	color: #c00;
	font-weight: 700;
}
@media screen and (min-width: 640px) {
	.answer p {
		max-width: calc(100% - 248px - 40px);
	}
	.answer .photo {
		margin-top: 40px;
	}
	.answer .photo:first-child {
		margin-top: 8px;
	}
	.answer.-l p {
		float: left;
	}
	.answer.-l .photos {
		float: right;
		margin-left: 40px;
	}
	.answer.-r p {
		float: right;
	}
	.answer.-r .photos {
		float: left;
		margin-right: 40px;
	}
	.answer.-wide p,
	.answer.-wide p {
		float: none;
		max-width: 100%;
	}
	.p-project .interview_photo {
		margin: 56px 0;
	}
	.-project2 .p-interview3 {
		margin-top: 160px;
	}
	.-project4 .p-interview3 .deco {
		inset: -6% -3% -70% 72%;
	}
}
@media screen and (max-width: 639px) {
	.answer {
		display: flex;
		flex-direction: column;
	}
	.answer .photos {
		display: flex;
		justify-content: space-between;
		margin-top: 24px;
	}
	.answer.-l .photos {
		margin-left: -20px;
	}
	.answer.-r .photos {
		margin-right: -20px;
	}
	.answer .photo {
		flex-basis: calc(50% - 4px);
	}
	.answer .photos.-once  {
		margin-right: -20px;
		margin-left: 0;
	}
	.answer .-once .photo {
		flex-basis: 100%;
	}
	.answer p:nth-child(-n+4) {
		order: -1;
	}
	.p-project .interview_photo {
		margin-top: 24px;
	}
	.answer .photos img,
	.p-project .interview_photo img {
		width: 100%;
	}
}

/* 02 矩形 */
@media screen and (min-width: 640px) {
	.p-interview2 .interview_photo .deco {
		inset: -6% 76% -20% -6%;
	}
}
@media screen and (max-width: 639px) {
	.separation_photo.-p3 .deco {
		inset: -14% 62% -6% 6%;
	}
	.-project2 .separation_photo.-p3 .deco {
		inset: -14% 6% -8% 62%;
	}
}

.p-project .project_btm {
	position: relative;
	max-width: 1000px;
	padding: 0;
	margin-bottom: 0;
	text-align: right;
}
.p-project .p-interview3,
.-project1 .p-interview3 .interview_photo,
.-project3 .p-interview3 .interview_photo {
	margin-bottom: 0;
}
.-project1 .p-interview3 {
	margin-top: 120px;
}
.-project1 .p-interview2 > .interview_photo {
	margin-top: 80px;
}
.-project2 .project_btm {
	margin-top: 40px;
}
.-project1 .project_btm,
.-project3 .project_btm {
	margin-top: -40px;
}
@media screen and (min-width: 640px) {
	.-project4 .project_btm,
	.-project4 .project_btm img {
		margin-top: -80px;
	}
}
@media screen and (max-width: 639px) {
	.p-project .project_btm {
		margin-right: -12%;
		-webkit-clip-path: polygon(0 0, 88% 0, 88% 100%, 0 100%);
		clip-path: polygon(0 0, 88% 0, 88% 100%, 0 100%);
	}
	.-project2 .project_btm {
		margin-top: 16px;
	}
	.p-project .project_btm img {
		max-width: 60%;
	}
	.-project4 .project_btm,
	.-project4 .project_btm img {
		margin-top: 0;
	}
}



.-project1 .separation_photo.-p2 .caption {
	color: black;
}
@media screen and (max-width: 639px) {
	.-project1 .p-interview2 .answer .interview_photo,
	.-project3 .p-interview2 .answer .interview_photo {
		order: -1;
		margin: 0 0 24px;
	}
}






/**
 * インタビュー
 * ---------------------------------------- */
.interview_label {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 8px;
	font-size: 96px;
	line-height: 1.2;
	font-weight: 400;
	text-align: right;
}
@media screen and (max-width: 639px) {
	.interview_label {
		inset: -16% 6% -32% 72%;
		font-size: 48px;
	}
}

/* 01 セクション間の複数の画像 */
@media screen and (min-width: 640px) {
	.p-interview.-interview01 .separation_photos {
		padding-left: 40px;
	}
	.p-interview.-interview01 .separation_photos .-p1 {
		float: left;
		width: 37.5%;
	}
	.p-interview.-interview01 .separation_photos .-p2 {
		float: right;
		width: 54.6%;
		margin-top: 15.2%;
	}
	.p-interview.-interview01 .separation_photo.-r {
		margin-bottom: 200px;
	}
	.p-interview.-interview01 .separation_photo.-l .deco {
		inset: 40% 0 -15% 12%;
	}
	.p-interview.-interview01 .separation_photos .deco {
		inset: 56% -10% -20% 20%;
	}
	.p-interview.-interview01 .separation_photo.-r .deco {
		inset: -16% 6% -32% 72%;
	}
}
@media screen and (max-width: 639px) {
	.p-interview.-interview01 .separation_photos .-p1 {
		order: 1;
		width: 52%;
		margin: 48px 0 0 auto;
	}
	.p-interview.-interview01 .separation_photos .-p2 {
		width: 82%;
		margin-right: auto;
	}
	.p-interview.-interview01 .separation_photo.-l .deco {
		inset: -10% -20px 32% 8%;
	}
	.p-interview.-interview01 .separation_photos .deco {
		inset: -8% 52% -48% 6%;
	}
	.p-interview.-interview01 .separation_photo.-r .deco {
		inset: -12% 32% 32% -20px;
	}
}

/* 02 セクション間の複数の画像 */
@media screen and (min-width: 640px) {
	.p-interview.-interview02 .separation_photos {
		padding-left: 40px;
	}
	.p-interview.-interview02 .separation_photos .-p1 {
		float: left;
		width: 54.6%;
	}
	.p-interview.-interview02 .separation_photos .-p2 {
		float: right;
		width: 37.9%;
		margin-top: 32%;
	}
	.p-interview.-interview02 .separation_photo.-r .deco {
		inset: -15% 8% 44% 2%;
	}
	.p-interview.-interview02 .separation_photos .deco {
		inset: -8% 50% -32% 6%;
	}
	.p-interview.-interview02 .separation_photo.-l .deco {
		inset: -16% 6% 56% 44%;
	}
}
@media screen and (max-width: 639px) {
	.p-interview.-interview02 .separation_photos .-p1 {
		width: 82%;
	}
	.p-interview.-interview02 .separation_photos .-p2 {
		width: 52%;
		margin: 48px 0 0 auto;
	}
	.p-interview.-interview02 .separation_photo.-r .deco {
		inset: -8% 8% 32% -20px;
	}
	.p-interview.-interview02 .separation_photos .deco {
		inset: -8% 52% -38% 6%;
	}
	.p-interview.-interview02 .separation_photo.-l .deco {
		inset: -12% -20px 40% 28%;
	}
}

/* 03 セクション間の複数の画像 */
@media screen and (min-width: 640px) {
	.p-interview.-interview03 .separation_photos {
		padding-right: 40px;
	}
	.p-interview.-interview03 .separation_photos .-p1 {
		float: left;
		width: 54.6%;
	}
	.p-interview.-interview03 .separation_photos .-p2 {
		float: right;
		width: 37.9%;
		margin-top: 28%;
	}
	.p-interview.-interview03 .separation_photo.-r .deco {
		inset: -15% 12% 40% 0;
	}
	.p-interview.-interview03 .separation_photos .deco {
		inset: -24% -40px 44% 20%;
	}
	.p-interview.-interview03 .separation_photo.-l .deco {
		inset: -20% 72% -12% 6%;
	}
}
@media screen and (max-width: 639px) {
	.p-interview.-interview03 .separation_photos .-p1 {
		width: 82%;
	}
	.p-interview.-interview03 .separation_photos .-p2 {
		width: 52%;
		margin: 48px 0 0 auto;
	}
	.p-interview.-interview03 .separation_photo.-r .deco {
		inset: -12% 8% 32% -20px;
	}
	.p-interview.-interview03 .separation_photos .deco {
		inset: -8% 54% -40% 8%;
	}
	.p-interview.-interview03 .separation_photo.-l .deco {
		inset: -12% -20px 40% 28%;
	}
}

/* 04 */
@media screen and (min-width: 640px) {
	.p-interview.-interview04 .separation_photos {
		padding-left: 8%;
	}
	.p-interview.-interview04 .separation_photos img {
		width: 67%;
	}
	.p-interview.-interview04 .separation_photo.-l .deco {
		inset: -12% 0 40% 16%;
	}
	.p-interview.-interview04 .separation_photos .deco {
		inset: -16% 8% 48% 52%;
	}
	.p-interview.-interview04 .separation_photo.-r .deco {
		inset: 32% 50% -16% 6%;
	}
	.p-interview.-interview04 .p-interview_2 {
		margin-top: 160px;
	}
}
@media screen and (max-width: 639px) {
	.p-interview.-interview04 .p-interview_2 {
		margin-top: 112px;
	}
	.p-interview.-interview04 .separation_photos .-p1 {
		width: 82%;
	}
	.p-interview.-interview04 .separation_photo.-l .deco {
		inset: -12% -20px 40% 8%;
	}
	.p-interview.-interview04 .separation_photos .deco {
		inset: -8% 52% -32% 6%;
	}
	.p-interview.-interview04 .separation_photo.-r .deco {
		inset: -12% 24% 32% -20px;
	}
}


/**
 * 代表メッセージ
 * ---------------------------------------- */
.p-about.-message .p-intro {
	display: flex;
	max-width: 1000px;
}
.p-about.-message .p-intro .intro_panel {
	display: flex;
	justify-content: center;
	align-items: center;
	color: white;
	font-size: 32px;
	line-height: 1.8;
	background: #c00;
}
.p-about.-message .p-intro .intro_photo {
	order: -1;
	z-index: 1;
}
.p-message2 .c-profile .title {
	position: absolute;
	top: -1.4em;
	left: -20px;
}
@media screen and (min-width: 640px) {
	.p-about.-message .p-intro .intro_panel,
	.p-about.-message .p-intro .intro_photo {
		flex-basis: calc(50% + 40px);
	}
	.p-about.-message .p-intro .intro_panel {
		margin: 112px 0 0 -40px;
		padding: 40px 24px 24px 80px;
	}
	.p-about.-message .p-intro .intro_photo {
		margin: 0 -40px 80px 0;
	}
}
@media screen and (max-width: 639px) {
	.p-about.-message .p-intro {
		flex-direction: column;
	}
	.p-about.-message .p-intro .intro_panel {
		margin: -24px -20px 0 auto;
		padding: 48px 20px;
		font-size: 24px;
	}
	.p-about.-message .p-intro .intro_photo {
		width: calc(82% + 40px);
		margin-left: -20px;
	}
}


/**
 * 数字でみる日本郵政不動産
 * ---------------------------------------- */
.data_container {
	position: relative;
	max-width: 1000px;
	margin: 48px auto 0;
	padding: 88px 40px;
}
.data_container::before {
	content: "";
	position: absolute;
	top: 0;
	right: calc(50% - 50vw);
	bottom: 0;
	left: calc(50% - 50vw);
	background: #c00;
}
.data_container::after {
	content: "";
	display: block;
	clear: both;
}
.data_panel {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	padding: 24px 24px 32px;
	border-radius: 8px;
	text-align: center;
	background: white;
	box-shadow: 20px 20px 0 #ad0000;
}
.data_panel.-d2 {
	flex-direction: row;
}
.data_panel.-d9 {
	padding: 40px;
}
.data_panel.-d1 {
	font-size: 21px;
}
@media screen and (min-width: 640px) {
	.data_container {
		display: grid;
		grid-template-rows: repeat(5, auto);
		grid-template-columns: repeat(12, 1fr);
		grid-gap: 32px;
	}
	.data_panel.-d1 {
		grid-column: 1 / 6;
		grid-row: 1 / 3;
	}
	.data_panel.-d2,
	.data_panel.-d3 {
		grid-column: 6 / 13;
		min-height: 280px;
	}
	.data_panel.-d4 {
		grid-column: 1 / 8;
		width: calc(100% - 40px);
	}
	.data_panel.-d5 {
		grid-column: 8 / 13;
		width: calc(100% + 40px);
		margin-left: -40px;
	}
	.data_panel.-d6 {
		grid-column: 1 / 5;
	}
	.data_panel.-d7 {
		grid-column: 5 / 9;
	}
	.data_panel.-d8 {
		grid-column: 9 / 13;
	}
	.data_panel.-d9 {
		grid-column: 1 / 13;
		flex-direction: row;
	}
}
@media screen and (max-width: 639px) {
	.data_container {
		margin-top: 24px;
		padding: 48px 20px;
	}
	.data_panel {
		padding: 24px;
		border-radius: 8px;
		box-shadow: 12px 12px 0 #ad0000;
	}
	.data_panel:nth-child(n+2) {
		margin-top: 24px;
	}
}

.data_panel .ico {
	width: 120px;
	height: auto;
	fill: #c00;
	stroke-width: 0;
}
.data_panel.-d2 .ico {
	width: 152px;
	margin: 0 -16px 0 -32px;
}
.data_panel.-d3 .ico {
	width: 80px;
	margin-right: 16px;
}
.data_panel.-d5 .ico {
	width: 88px;
	margin-right: 16px;
}
.data_panel.-d7 .ico {
	width: 104px;
}
.data_panel.-d8 .ico {
	width: 104px;
}
.data_panel.-d9 .ico {
	width: 104px;
}
.data_panel .data {
	display: flex;
	flex-direction: column;
	margin-top: 16px;
}
.data_panel.-d3 .data {
	margin-top: 0;
}
@media screen and (min-width: 640px) {
	.data_panel.-d7 .ico {
		margin: auto 0 8px;
	}
	.data_panel.-d8 .ico {
		margin: auto 0;
	}
	.data_panel.-d9 .ico {
		margin-right: 32px;
	}
	.data_panel.-d1 .data {
		margin-top: 32px;
	}
	.data_panel.-d9 .data {
		margin-top: 0;
	}
}
@media screen and (max-width: 639px) {
	.data_panel .ico {
		width: 96px;
	}
	.data_panel.-d2 .ico {
		width: 120px;
	}
	.data_panel.-d3 .ico {
		width: 64px;
	}
	.data_panel.-d5 .ico {
		width: 80px;
	}
	.data_panel .data {
		margin-top: 8px;
	}
}

.data_panel .data .label {
	font-size: 21px;
	line-height: 1.5;
}
.data_panel.-d3 .data .label {
	display: flex;
	align-items: center;
	text-align: left;
}
.data_panel.-d3 .data .label .t {
	margin-top: .3em;
}
.data_panel .data .note {
	font-size: 16px;
	line-height: 1.2;
}
.data_panel.-d5 .data .note {
	margin-top: 8px;
}
.data_panel .data .to {
	position: relative;
	top: -.02em;
	margin: 0 .1em;
}
.data_panel .data .main,
.data_panel .data .sub {
	color: #c00;
	line-height: 1;
	font-weight: 500;
	letter-spacing: 0;
}
.data_panel .data .main .num,
.data_panel .data .sub .num {
	position: relative;
	top: .04em;
	font-size: 160%;
	font-weight: 500;
}
.data_panel .data .main {
	font-size: 55px;
	white-space: nowrap;
}
.data_panel.-d3 .data .main {
	margin-top: 16px;
}
.data_panel.-d4 .data .main,
.data_panel.-d5 .data .main {
	font-size: 47px;
}
.data_panel.-d5 .data .sub {
	font-size: 30px;
}
.data_panel.-d6 .data .main {
	font-size: 83px;
}
.data_panel.-d6 .data .main .num {
	font-size: 1em;
}
.data_panel.-d6 .data .main .num .s {
	font-size: 50%;
}
.data_panel.-d6 .data .main .num:first-child .s {
	margin-left: -.3em;
}
.data_panel.-d7 .data .main,
.data_panel.-d8 .data .main {
	font-size: 38px;
}
.data_panel.-d7 .data .main .num,
.data_panel.-d8 .data .main .num {
	font-size: 200%;
}
@media screen and (min-width: 640px) and (max-width: 999px) {
	.data_panel .data .main {
		font-size: calc(55vw / 10);
	}
	.data_panel.-d4 .data .main,
	.data_panel.-d5 .data .main {
		font-size: calc(47vw / 10);
	}
	.data_panel.-d6 .data .main {
		font-size: calc(83vw / 10);
	}
	.data_panel.-d7 .data .main,
	.data_panel.-d8 .data .main {
		font-size: calc(40vw / 10);
	}
}
@media screen and (max-width: 639px) {
	.data_panel .data .label {
		font-size: 16px;
	}
	.data_panel .data .note {
		font-size: 12px;
	}
	.data_panel .data .main {
		font-size: 42px;
	}
	.data_panel.-d3 .data .main,
	.data_panel.-d5 .data .main {
		margin-top: 8px;
	}
	.data_panel.-d4 .data .main,
	.data_panel.-d5 .data .main {
		font-size: 36px;
	}
	.data_panel.-d5 .data .sub {
		font-size: 28px;
	}
	.data_panel.-d6 .data .main {
		font-size: 63px;
	}
	.data_panel.-d7 .data .main,
	.data_panel.-d8 .data .main {
		font-size: 28px;
	}
}


/**
 * 教育制度とキャリアプラン
 * ---------------------------------------- */
.p-career .page_section {
	max-width: 688px;
	margin-top: 120px;
}
.p-career .page_section .photo {
	margin: 56px 0;
}
.p-career1.page_section .photo {
	box-shadow: -40px 32px 0 rgba(0,0,0,.05);
}
.p-career2.page_section .photo {
	box-shadow: 56px 32px 0 rgba(0,0,0,.05);
}

.p-career .section_title {
	display: flex;
	flex-direction: column;
	padding: 0 0 72px;
	color: #c00;
	text-align: center;
	font-size: 32px;
	line-height: 1.2;
	letter-spacing: .16em;
}
.p-career .section_title .num {
	z-index: 0;
	position: relative;
	font-size: 117px;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
}
.p-career .section_title::before {
	content: "";
	top: auto;
	right: calc(50% - 50vw);
	bottom: 0;
	left: calc(50% - 50vw);
}
@media screen and (max-width: 639px) {
	.p-career .page_section .photo {
		margin-top: 24px;
	}
	.p-career .section_title {
		padding-bottom: 48px;
		font-size: 24px;
	}
	.p-career .section_title .num {
		font-size: 84px;
	}
	.p-career .section_title::before {
		height: 24px;
		border-width: 8px;
	}
}

/* あなたらしいキャリアを、私たち日本郵政不動産と一緒に切り拓いていきましょう。 */
.p-career .p-intro {
	position: relative;
	max-width: 782px;
	margin-top: 72px;
	padding: 160px 24px 200px 64px;
	color: white;
}
.p-career .p-intro::before {
	content: "";
	z-index: -1;
	position: absolute;
	top: 0;
	right: calc(50% - 50vw);
	bottom: 0;
	left: calc(50% - 50vw);
	background: #c00;
}
.p-career .intro_title {
	font-size: 42px;
	line-height: 1.6;
	letter-spacing: .16em;
}
.p-career .p-intro p {
	max-width: 552px;
	margin-top: 1em;
}
.p-career .p-intro .photo {
	z-index: 1;
	position: absolute;
	right: 48px;
	bottom: 0;
	margin: 0;
}
.p-career .p-intro .photo::before {
	content: "";
	z-index: -1;
	position: absolute;
	top: 1em;
	right: 12px;
	bottom: 0;
	left: -8px;
	background: #c00;
}
.p-career .p-intro .deco::before,
.p-career .p-intro .deco::after {
	content: "";
	position: absolute;
}
.p-career .p-intro .deco::before {
	top: 80px;
	right: calc(50% - 50vw);
	bottom: 64px;
	left: 0;
	border-top: 1px solid white;
	border-left: 1px solid white;
}
.p-career .p-intro .deco::after {
	top: 56px;
	right: 0;
	bottom: 128px;
	left: calc(50% - 50vw);
	border-right: 1px solid white;
	border-bottom: 1px solid white;
}
@media screen and (max-width: 639px) {
	.p-career .p-intro {
		margin-top: 48px;
		padding: 80px 40px 152px;
	}
	.p-career .intro_title {
		font-size: 20px;
		letter-spacing: .1em;
	}
	.p-career .p-intro .photo::before {
		right: -8px;
	}
	.p-career .p-intro .deco::before {
		top: 40px;
		right: -48px;
		bottom: 0;
		left: 20px;
	}
	.p-career .p-intro .deco::after {
		top: 0px;
		right: 20px;
		bottom: 80px;
		left: -48px;
	}
}

.p-career1,
.p-career2 {
	position: relative;
	padding-bottom: 160px;
}
.p-career1::before,
.p-career2::before {
	content: "";
	z-index: -1;
	position: absolute;
	top: 80px;
	bottom: 0;
	background: #ebebeb;
}
.p-career1::before {
	right: calc(50% - 50vw + 80px);
	left: calc(50% - 50vw);
}
.p-career2::before {
	right: calc(50% - 50vw);
	left: calc(50% - 50vw + 80px);
}
.career_panel {
	padding: 48px 48px 64px;
	border-radius: 8px;
	background: white;
}
@media screen and (max-width: 639px) {
	.p-career1,
	.p-career2 {
		padding-bottom: 80px;
	}
	.p-career1::before,
	.p-career2::before {
		top: 48px;
	}
	.p-career1::before {
		right: calc(50% - 50vw);
	}
	.p-career2::before {
		left: calc(50% - 50vw);
	}
	.career_panel {
		padding: 24px 20px 40px;
	}
}

/* 人材育成について */
.p-career1 .career_panel {
	box-shadow: 56px 48px 0 #c00;
}
.p-career1 .panel_lead {
	position: relative;
	padding-bottom: 32px;
	color: #c00;
	font-weight: 600;
	text-align: center;
}
.p-career1 .panel_lead::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: calc(50% - 80px);
	width: 160px;
	border-bottom: 1px solid currentcolor;
}
.career_data {
	margin-top: 32px;
}
.career_data .data_item {
	margin-top: 24px;
}
.career_data dt {
	color: #c00;
	font-size: 22px;
	line-height: 1.6;
}
.career_data dt::before {
	content: "";
	display: inline-block;
	position: relative;
	top: -.1em;
	width: 12px;
	height: 12px;
	margin-right: 8px;
	border-radius: 12px;
	vertical-align: middle;
	background: currentcolor;
}
@media screen and (max-width: 639px) {
	.p-career1 .career_panel {
		box-shadow: 8px 16px 0 #c00;
	}
	.p-career1 .panel_lead::after {
		left: calc(50% - 40px);
		width: 80px;
	}
	.career_data dt {
		font-size: 20px;
	}
}

/* キャリアプランについて */
.p-career2 .career_panel {
	box-shadow: 56px 48px 0 rgba(0,0,0,.05);
	text-align: center;
}
.p-career2 .panel_title {
	display: inline-block;
	position: relative;
	color: #c00;
	font-size: 27px;
	line-height: 1.6;
}
.p-career2 .panel_title::before {
	content: "";
	position: absolute;
	top: calc(50% - .1em);
	right: calc(100% + 1em);
	width: 196px;
	border-top: 1px solid currentcolor;
}
.p-career2 .career_panel p {
	margin-top: 32px;
}
@media screen and (max-width: 639px) {
	.p-career2 .career_panel {
		box-shadow: 8px 16px 0 rgba(0,0,0,.05);
	}
	.p-career2 .panel_title {
		font-size: 23px;
	}
	.p-career2 .panel_title::before {
		right: calc(100% + .5em);
		width: 3em;
	}
	.p-career2 .career_panel p {
		margin-top: 16px;
	}
}

.career_panel .panel_more .lead {
	display: inline-block;
	margin-top: 48px;
	padding: 1em;
	border-top: 1px solid currentcolor;
	border-bottom: 1px solid currentcolor;
	color: #c00;
	font-size: 18px;
	line-height: 1.7;
	font-weight: 700;
}
.career_panel .c-more {
	display: flex;
	margin-top: 40px;
}
.career_panel .c-more .text {
	flex-basis: 45%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	border-radius: 8px 0 0 8px;
	color: white;
	line-height: 1.6;
	background: #c00;
}
.career_panel .c-more .text .main {
	font-size: 34px;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
}
.career_panel .c-more .text .sub {
	font-size: 11px;
	letter-spacing: .16em;
}
.career_panel .c-more .text .more {
	position: absolute;
	right: 16px;
	bottom: 8px;
	font-size: 12px;
	font-weight: 500;
}
.career_panel .c-more .text .more .arr {
	margin-left: .5em;
}
.career_panel .c-more .photo {
	flex-basis: 55%;
	margin: 0;
}
.career_panel .c-more .photo img {
	border-radius: 0 8px 8px 0;
}
.career_panel .panel_photo img {
	border-radius: 8px;
}
@media screen and (max-width: 639px) {
	.career_panel .panel_more .lead {
		margin-top: 32px;
		padding: 1em 0;
		font-size: 16px;
	}
	.career_panel .c-more {
		margin-top: 24px;
	}
	.career_panel .c-more .text .main {
		font-size: 26px;
	}
	.career_panel .c-more .text .sub {
		font-size: 10px;
	}
}

/* キャリアに関するFAQ */
.p-career .p-career3 {
	max-width: 712px;
}
.career_faq {
	margin-top: 56px;
	border: 1px solid #c00;
}
.career_faq .faq_item {
	counter-increment: q;
}
.career_faq .faq_item:not(:last-child) {
	border-bottom: 1px solid #c00;
}
.career_faq dt,
.career_faq dt::before {
	display: flex;
	align-items: center;
	height: 80px;
}
.career_faq dt {
	padding-right: 1em;
	border-bottom: 1px solid #c00;
	color: #c00;
	font-size: 20px;
	line-height: 1.4;
}
.career_faq dt::before {
	content: "Q"counter(q);
	justify-content: center;
	width: 88px;
	margin-right: 20px;
	border-right: 1px solid #c00;
}
.career_faq dt::before,
.career_faq dd::before {
	font-size: 35px;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
}
.career_faq dd {
	padding: 24px 32px;
	line-break: strict;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}
.career_faq dd::before {
	content: "A";
	position: relative;
	top: .05em;
	margin-right: .1em;
	color: #c00;
	line-height: 1;
	vertical-align: baseline;
}
@media screen and (min-width: 640px) {
	.p-career .p-career3 {
		margin-bottom: 120px;
	}
}
@media screen and (max-width: 639px) {
	.career_faq dt {
		font-size: 16px;
	}
	.career_faq dt::before {
		min-width: 64px;
		max-width: 64px;
	}
	.career_faq dt::before,
	.career_faq dd::before {
		font-size: 30px;
	}
	.career_faq dd {
		padding: 24px 20px;
	}
}


/**
 * 募集要項
 * ---------------------------------------- */
.p-recruit .page_section {
	max-width: 1000px;
}

.p-recruit .section_title {
	margin: 0;
	padding-left: 0;
	text-align: center;
	font-size: 56px;
	letter-spacing: .06em;
}
.p-recruit .section_title::before {
	left: -20px;
}
.p-requirement .section_title::before {
	right: calc(50% + 4em);
}
.p-step .section_title::before {
	right: calc(50% + 1.8em);
}
.p-recruit .section_title .main {
	line-height: 1.2;
}
.p-recruit .section_title .sub {
	position: absolute;
	top: calc(100% + .3em);
	left: 0;
	width: 100%;
	font-size: 19px;
}
.p-recruit .section_title .note {
	display: block;
	font-size: small;
}
@media screen and (min-width: 640px) {
	.p-recruit .section_titl {
		margin-top: .3em;
	}
	.p-recruit .section_title .note {
		position: absolute;
		top: -1em;
		right: 0;
		margin-top: .5em;
		text-align: left;
	}
	.p-recruit .p-requirement .section_title .note {
		width: 100%;
		max-width: 800px;
	}
	.p-recruit .p-step .section_title .note {
		width: calc(100% - 24px);
	}
}
@media screen and (max-width: 639px) {
	.p-recruit .section_title {
		display: flex;
		flex-direction: column;
		font-size: 37px;
	}
	.p-recruit .section_title .note {
		order: -1;
		width: 100%;
		margin-bottom: .5em;
	}
	.p-step .section_title::before {
		top: calc(50% - 5px);
	}
}

/* 募集要項 */
.c-table {
	max-width: 800px;
	margin: 112px auto 0;
	border-collapse: collapse;
}
.c-table th,
.c-table td {
	padding: 24px;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}
.c-table th {
	width: 10em;
	line-height: 1.4;
	letter-spacing: .2em;
	background: #f7f8f8;
}
.c-table td {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	line-break: strict;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}
@media screen and (max-width: 639px) {
	.c-table {
		margin-top: 88px;
	}
	.c-table th {
		width: 5em;
		padding: 24px .5em;
	}
	.c-table td {
		font-size: 14px;
	}
}

/* 新卒採用のながれ */
.p-recruit .p-step {
	position: relative;
	margin-bottom: 0;
	padding: 64px 20px;
}
.p-step::before {
	content: "";
	position: absolute;
	top: 0;
	right: calc(50% - 50vw);
	bottom: 0;
	left: calc(50% - 50vw);
	background: #f1f1f1;
}
.step_list {
	position: relative;
	margin: 96px auto 0;
}
.step_item {
	position: relative;
	padding: 20px 8px 16px;
	border-radius: 8px;
	text-align: center;
	background: white;
}
.step_item.-decision {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px 8px;
	background: #c00;
}
.step_item .arr {
	z-index: 1;
	position: absolute;
	stroke: #c00;
}
.step_title {
	color: #c00;
	line-height: 1.3;
}
.step_item.-decision .step_title {
	color: white;
}
.step_title .sub {
	padding-bottom: .3em;
	border-bottom: 1px dotted currentcolor;
	font-size: 17px;
	font-weight: 500;
}
.step_title .main {
	display: block;
	margin-top: 1em;
	font-size: 18px;
	letter-spacing: .12em;
}
.step_item p {
	margin-top: 24px;
	padding: 0 1em;
	font-size: 12px;
	line-height: 1.4;
	text-align: center;
}
@media screen and (min-width: 640px) {
	.step_list {
		display: flex;
		justify-content: space-between;
		max-width: calc(100% - 24px);
	}
	.step_item {
		flex-basis: calc(100% / 6 - 4px);
	}
	.step_item .arr {
		top: calc(50% - 4px);
		left: calc(100% - 10px);
	}
	.step_item:first-child p {
		text-align: left;
	}
}
@media screen and (max-width: 639px) {
	.p-recruit .p-step {
		padding: 40px 20px;
	}
	.step_list {
		margin-top: 80px;
	}
	.step_item {
		margin-top: 6px;
	}
	.step_item .arr {
		top: calc(100% - 4px);
		left: calc(50% - 10px);
		transform: rotate(90deg);
	}
	.step_title .main {
		margin-top: .5em;
	}
	.step_item p {
		margin-top: .5em;
	}
}

/* Entry (非表示) */
.p-recruit .p-step {
	margin-bottom: 64px;
}
.p-recruit .p-entry {
	display: none;
}

/* エントリーはこちらから */
.p-recruit .p-entry {
	position: relative;
	margin: 0 auto;
	padding: 104px 20px 280px;
	text-align: center;
}
.p-recruit .p-entry .lead {
	display: inline-block;
	position: relative;
	font-size: 22px;
	line-height: 1.2;
}
.p-recruit .p-entry .lead::before {
	content: "";
	position: absolute;
	top: calc(50% - .1em);
	right: calc(100% + .5em);
	width: 2em;
	border-top: 1px solid currentcolor;
}
.p-recruit .p-entry .c-button {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	margin: 24px auto 0;
	max-width: 320px;
	height: 112px;
	border-radius: 8px;
	color: white;
	font-size: 34px;
	line-height: 1.2;
	font-weight: 400;
	background: #c00;
}
.p-recruit .p-entry .c-button .arr {
	position: absolute;
	top: calc(50% - 4px);
	right: 48px;
}
.p-entry .c-symboloop .icon > * {
	fill: #c00;
}
@media screen and (max-width: 639px) {
	.p-recruit .p-entry {
		padding: 96px 20px 200px;
	}
	.p-recruit .p-entry .lead {
		font-size: 19px;
	}
	.p-recruit .p-entry .c-button {
		max-width: 250px;
		height: 112px;
	}
}

/* 現在は募集しておりません */
.p-recruit .p-entry .lead.is-disabled {
	color: gainsboro;
}
.p-recruit .p-entry .c-button.is-disabled {
	pointer-events: none;
	background: gainsboro;
}
.p-recruit .p-entry .c-button.is-disabled::after {
	content: "現在は募集しておりません";
	position: absolute;
	top: calc(50% - .5em);
	color: black;
	font-size: 14px;
	font-weight: 600;
}




/**
 * デコレーション
 * ---------------------------------------- */
/* About */
.deco_about .p-deco_keyword .deco_dots {
	top: -1%;
	right: 4%;
	width: 200px;
	fill: #b60000;
}
.deco_about .p-deco_keyword .deco_dots {
	z-index: 0;
}
.deco_about .p-deco_k1 .deco_circle,
.deco_about .p-deco_k2 .deco_circle,
.deco_about .p-deco_k3 .deco_circle,
.deco_about .p-deco_k4 .deco_circle {
	z-index: 0;
	fill: none;
	stroke: rgba(255,255,255,.5);
}
.deco_about .p-deco_k1 .deco_circle.-c1 {
	top: 62%;
	left: 22%;
	width: 144px;
}
.deco_about .p-deco_k1 .deco_circle.-c2 {
	top: 70%;
	left: -4%;
	width: 344px;
}
.deco_about .p-deco_k2 .deco_circle.-c1 {
	top: 60%;
	right: -4%;
	width: 344px;
}
.deco_about .p-deco_k2 .deco_circle.-c2 {
	top: 86%;
	right: 30%;
	width: 144px;
}
.deco_about .p-deco_k2 .deco_circle.-c3 {
	top: 112%;
	right: 40%;
	width: 80px;
}
.deco_about .p-deco_k3 .deco_circle.-c1 {
	top: 72%;
	left: 20%;
	width: 144px;
}
.deco_about .p-deco_k3 .deco_circle.-c2 {
	top: 82%;
	left: -12%;
	width: 344px;
}
.deco_about .p-deco_k4 .deco_circle.-c1 {
	top: 76%;
	right: 36%;
	width: 88px;
}
.deco_about .p-deco_k4 .deco_circle.-c2 {
	top: 88%;
	right: 37%;
	width: 120px;
}
.deco_about .p-deco_k4 .deco_circle.-c3 {
	top: 98%;
	right: 14%;
	width: 296px;
}
@media screen and (max-width: 639px) {
	.deco_about .p-deco_keyword .deco_dots {
		top: -.8%;
		width: 104px;
	}
	.deco_about .p-deco_k1 .deco_circle.-c1 {
		top: 93%;
		left: 74%;
		width: 92px;
	}
	.deco_about .p-deco_k1 .deco_circle.-c2 {
		top: 96%;
		left: 32%;
		width: 200px;
	}
	.deco_about .p-deco_k2 .deco_circle.-c1 {
		top: 92%;
		left: 24%;
		width: 232px;
	}
	.deco_about .p-deco_k2 .deco_circle.-c2 {
		top: 100%;
		left: 6%;
		width: 96px;
	}
	.deco_about .p-deco_k2 .deco_circle.-c3 {
		top: 112%;
		right: 92%;
		width: 56px;
	}
	.deco_about .p-deco_k3 .deco_circle.-c1 {
		top: 92%;
		left: 76%;
		width: 64px;
	}
	.deco_about .p-deco_k3 .deco_circle.-c2 {
		top: 94%;
		left: 40%;
		width: 160px;
	}
	.deco_about .p-deco_k4 .deco_circle.-c1 {
		top: 92%;
		right: 4%;
		width: 64px;
	}
	.deco_about .p-deco_k4 .deco_circle.-c2 {
		top: 98%;
		right: 8%;
		width: 104px;
	}
	.deco_about .p-deco_k4 .deco_circle.-c3 {
		top: 102%;
		right: -32%;
		width: 200px;
	}
}

/* Message */
.deco_message .p-deco_intro .deco_rect.-r1 {
	z-index: 1;
	top: -64px;
	right: 0;
	width: 568px;
	height: 16px;
}
.deco_message .p-deco_intro .deco_rect.-r2 {
	top: -200px;
	right: 80px;
	width: 6px;
	height: 1088px;
	background: #dedede;
}
.deco_message .deco_circle svg {
	height: auto;
}
.deco_message .deco_circle svg.js-inview:not(.is-inview) {
	opacity: 0;
	transform: scale(.6);
}
.deco_message .deco_circle svg.is-anim {
	transition: opacity 1s, transform 1s cubic-bezier(.3,1,.7,1);
}
.deco_message .p-deco_profile .deco_circle.-c1 {
	top: 20%;
	left: 128%;
}
.deco_message .p-deco_profile .deco_circle.-c1 svg {
	width: 128px;
}
.deco_message .p-deco_profile .deco_circle.-c2 {
	top: 40%;
	left: 160%;
}
.deco_message .p-deco_profile .deco_circle.-c2 svg {
	width: 544px;
}
@media screen and (max-width: 639px) {
	.deco_message .p-deco_intro .deco_rect.-r1 {
		top: -32px;
		right: 0;
		width: 240px;
		height: 8px;
	}
	.deco_message .p-deco_intro .deco_rect.-r2 {
		top: -140px;
		right: 20px;
		width: 4px;
		height: 640px;
	}
	.deco_message .p-deco_profile .deco_circle.-c1 {
		top: 106%;
		left: 16%;
	}
	.deco_message .p-deco_profile .deco_circle.-c1 svg {
		width: 64px;
	}
	.deco_message .p-deco_profile .deco_circle.-c2 {
		top: 110%;
		left: 36%;
	}
	.deco_message .p-deco_profile .deco_circle.-c2 svg {
		width: 320px;
	}
}

/* Works */
.deco_works .p-deco_works1 .deco_rect.-r1 {
	z-index: 2;
	top: -96px;
	right: -90px;
	width: 352px;
	height: 16px;
}
.deco_works .p-deco_works1 .deco_rect.-r2 {
	z-index: 1;
	top: -232px;
	right: -48px;
	width: 6px;
	height: 1088px;
	background: #dedede;
}

/* Project */
.deco_project .p-deco_intro .deco_rect.-r1 {
	top: 12%;
	right: -90px;
	width: 136px;
	height: 296px;
	background: #e3e3e3;
}
.-project3 .p-deco_intro .deco_rect.-r1 {
	top: 24%;
}
.deco_project .p-deco_intro .deco_rect.-r2 {
	right: 40px;
	top: 74%;
	width: 6px;
	height: 1144px;
	background: #e4e4e4;
}
.deco_project .p-deco_intro .deco_rect.-r3 {
	bottom: -120px;
	right: -124px;
	width: 872px;
	height: 16px;
}
.deco_project .deco_dots {
	z-index: 1;
}
.deco_project .p-deco_interview2 .deco_dots {
	top: -144px;
	width: 216px;
}
.-project2 .p-deco_interview1 .deco_dots {
	top: 100%;
}
.-project3 .p-deco_interview1 .deco_dots {
	top: 100%;
}
.-project4 .p-deco_interview1 .deco_dots {
	top: 100%;
}
.deco_project .p-deco_interview2 .deco_rect {
	top: 31%;
	width: 320px;
	height: 992px;
	background: #f0f0f0;
}
.-project1 .p-deco_interview2 .deco_rect {
	right: 64px;
}
.-project2 .p-deco_interview2 .deco_rect {
	top: 43%;
	left: 80px;
}
.-project3 .p-deco_interview2 .deco_rect {
	top: 38%;
	left: 80px;
}
.-project4 .p-deco_interview2 .deco_rect {
	top: 48%;
	left: 80px;
	height: 1024px;
}
@media screen and (min-width: 640px) {
	.deco_project .p-deco_interview2 .deco_dots {
		right: -48px;
	}
	.-project2 .p-deco_interview1 .deco_dots {
		right: -48px;
	}
	.-project3 .p-deco_interview1 .deco_dots {
		left: -48px;
	}
	.-project4 .p-deco_interview1 .deco_dots {
		right: -48px;
	}
}
@media screen and (max-width: 639px) {
	.deco_project .p-deco_intro .deco_rect.-r1 {
		display: none;
	}
	.deco_project .p-deco_intro .deco_rect.-r2 {
		top: 90%;
		right: 20px;
		width: 4px;
		height: 640px;
	}
	.deco_project .p-deco_intro .deco_rect.-r3 {
		bottom: 0;
		right: 0;
		width: 90%;
		height: 12px;
	}
	.deco_project .p-deco_interview1 .deco_dots,
	.deco_project .p-deco_interview2 .deco_dots {
		top: 100%;
		right: 20px;
		width: 120px;
	}
	.deco_project .p-deco_interview2 .deco_dots {
		top: -80px;
	}
	.deco_project .p-deco_interview2 .deco_rect {
		top: 60%;
		left: 48%;
		width: 44%;
		height: 640px;
	}
}

/* Interview */
.deco_interview .p-deco_profile .deco_circle {
	position: absolute;
	bottom: 100%;
	right: -40%;
}
.deco_interview .p-deco_profile .deco_circle:not(.is-active) svg {
	opacity: 0;
	transform: scale(.6);
}
.deco_interview .p-deco_profile .deco_circle.is-anim svg {
	transition: opacity 1s, transform 1s cubic-bezier(.3,1,.7,1);
}
.deco_interview .p-deco_profile .deco_circle svg {
	width: 584px;
	height: auto;
}
.deco_interview .p-deco_profile .deco_rect.-r1 {
	top: 40%;
	right: -24px;
	width: 6px;
	height: 1092px;
	background: #e4e4e4;
}
.deco_interview .p-deco_profile .deco_rect.-r2 {
	top: 120%;
	right: -120px;
	width: 568px;
	height: 16px;
}
.deco_interview .p-deco_interview1 .deco_dots {
	z-index: 1;
	top: 120%;
	right: -120px;
	width: 216px;
}
.-interview04 .p-deco_interview1 .deco_dots {
	top: 152%;
	right: -24px;
}
.deco_interview .p-deco_interview1 .deco_rect {
	top: 80%;
	left: -120px;
	width: 304px;
	height: 1088px;
	background: #f0f0f0;
}
@media screen and (max-width: 639px) {
	.deco_interview .p-deco_profile .deco_circle {
		bottom: 110%;
		right: -30%;
	}
	.deco_interview .p-deco_profile .deco_circle svg {
		width: 280px;
	}
	.deco_interview .p-deco_profile .deco_rect.-r1 {
		width: 4px;
		height: 640px;
		background: #e4e4e4;
	}
	.deco_interview .p-deco_profile .deco_rect.-r2 {
		top: 110%;
		right: -40px;
		width: 100%;
		height: 8px;
	}
	.deco_interview .p-deco_interview1 .deco_dots {
		top: 128%;
		right: 20px;
		width: 120px;
	}
	.deco_interview .p-deco_interview1 .deco_rect {
		width: 304px;
		height: 1088px;
		background: #f0f0f0;
	}
}

/* Career */
.deco_career .p-deco_intro .deco_rect.-r1 {
	z-index: 1;
	top: -24%;
	right: -7%;
	width: 6px;
	height: 960px;
	background: #d9d9d9;
}
.deco_career .p-deco_intro .deco_rect.-r2 {
	top: -10%;
	right: -12%;
	width: 320px;
	height: 16px;
	background: #c00;
}
.deco_career .p-deco_career1 .deco_circle.-c1 {
	top: -5%;
	left: -38%;
}
.deco_career .p-deco_career1 .deco_circle.-c2 {
	top: 6%;
	left: 4%;
}
.deco_career .deco_circle svg {
	height: auto;
}
.deco_career .p-deco_career1 .deco_circle.-c1 svg {
	width: 264px;
}
.deco_career .p-deco_career1 .deco_circle.-c2 svg {
	width: 72px;
}
.deco_career .deco_circle svg.js-inview:not(.is-inview) {
	opacity: 0;
	transform: scale(.6);
}
.deco_career .deco_circle svg.is-anim {
	transition: opacity 1s, transform 1s cubic-bezier(.3,1,.7,1);
}
.deco_career .p-deco_career1 .deco_dots {
	z-index: 1;
	top: 28%;
	right: -18%;
}
.deco_career .p-deco_career1 .deco_rect.-r1 {
	bottom: -4%;
	right: -24%;
	width: 320px;
	height: 16px;
	background: #d9d9d9;
}
.deco_career .p-deco_career1 .deco_rect.-r2 {
	top: 60%;
	right: -18%;
	width: 6px;
	height: 960px;
	background: #c00;
}
.deco_career .p-deco_career1 .deco_rect.-r3 {
	top: 24%;
	left: -14%;
	width: 200px;
	height: 600px;
	background: #c00;
}

.deco_career .p-deco_career2 .deco_dots {
	z-index: 1;
	top: 32%;
	left: -18%;
}
.deco_career .p-deco_career2 .deco_rect.-r1 {
	top: 50%;
	left: -18%;
	width: 6px;
	height: 960px;
	background: #d9d9d9;
}
.deco_career .p-deco_career2 .deco_rect.-r2 {
	bottom: 2%;
	left: -24%;
	width: 320px;
	height: 16px;
	background: #c00;
}
.deco_career .p-deco_career2 .deco_rect.-r3 {
	top: 32%;
	right: -14%;
	width: 200px;
	height: 600px;
	background: #c00;
}
.deco_career .p-deco_career2 .deco_circle.-c1 {
	right: -38%;
	bottom: -4%;
}
.deco_career .p-deco_career2 .deco_circle.-c1 svg {
	width: 376px;
}
.deco_career .p-deco_career2 .deco_circle.-c2 {
	right: 18%;
	bottom: -6%;
}
.deco_career .p-deco_career2 .deco_circle.-c2 svg {
	width: 96px;
}
@media screen and (max-width: 639px) {
	.deco_career .deco_dots {
		width: 132px;
	}
	.deco_career .p-deco_intro .deco_rect.-r1 {
		right: 2%;
		width: 3px;
		height: 720px;
	}
	.deco_career .p-deco_intro .deco_rect.-r2 {
		width: 160px;
		height: 8px;
	}
	.deco_career .p-deco_career1 .deco_circle.-c1 {
		left: -14%;
	}
	.deco_career .p-deco_career1 .deco_circle.-c2 {
		top: 0;
		left: 24%;
	}
	.deco_career .p-deco_career1 .deco_circle.-c1 svg {
		width: 132px;
	}
	.deco_career .p-deco_career1 .deco_circle.-c2 svg {
		width: 36px;
	}
	.deco_career .p-deco_career1 .deco_dots {
		top: 18%;
		right: 2%;
	}
	.deco_career .p-deco_career1 .deco_rect.-r1 {
		bottom: 1%;
		right: 0;
		width: 160px;
		height: 8px;
	}
	.deco_career .p-deco_career1 .deco_rect.-r2 {
		right: 2%;
		width: 3px;
		height: 920px;
	}
	.deco_career .p-deco_career2 .deco_dots {
		top: 24%;
		left: 2%;
	}
	.deco_career .p-deco_career2 .deco_rect.-r1 {
		left: 2%;
		width: 3px;
		height: 840px;
	}
	.deco_career .p-deco_career2 .deco_rect.-r2 {
		left: 0;
		width: 160px;
		height: 8px;
	}
	.deco_career .p-deco_career2 .deco_circle.-c1 {
		right: -38%;
	}
	.deco_career .p-deco_career2 .deco_circle.-c2 {
		right: 50%;
	}
	.deco_career .p-deco_career2 .deco_circle.-c1 svg {
		width: 264x;
	}
	.deco_career .p-deco_career2 .deco_circle.-c2 svg {
		width: 68px;
	}
}