@charset "utf-8";
/* 事業所案内 */
.company-cnt {
		position: relative;
}
.msg-cnt {
		/*		width: 1100px;
		min-height: 480px;
		padding-top: 300px;
		box-sizing: border-box;
		background: url("../../img/company/company_img01.jpg") no-repeat top center;
		background-size: cover;
	margin: 120px auto 0;*/
}
.title-cnt {
		width: 600px;
		height: 320px;
		background-color: rgba(255, 255, 255, 0.9);
		filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.2));
		text-align: center;
		padding: 70px 0 0 0;
		box-sizing: border-box;
}
.title-cnt h2 {
		margin: 0;
		padding: 0;
		font-size: 36px;
		color: #0C4989;
		font-weight: 900;
}
.title-cnt p {
		font-size: 24px;
		color: #0C4989;
		font-weight: 600;
		margin: 0;
}
.company-cnt .more-bt {
		width: 240px;
}
.msg-cnt, .vision-cnt, .phylosophy-cnt, .profile-cnt, .members-cnt, .access-cnt {
		width: 50%;
		min-height: 520px;
		padding-top: 100px;
		box-sizing: border-box;
		background-size: cover;
}
.msg-cnt .title-cnt, .vision-cnt .title-cnt, .phylosophy-cnt .title-cnt, .profile-cnt .title-cnt, .members-cnt .title-cnt, .access-cnt .title-cnt {
		margin: 0 40px;
		width: auto;
}
.msg-cnt {
		background: url("../../img/company/company_img01.jpg") no-repeat center center;
}
.phylosophy-cnt {
		background: url("../../img/company/company_img02.jpg") no-repeat center center;
}
.profile-cnt {
		background: url("../../img/company/company_img03.jpg") no-repeat center center;
}
.members-cnt {
		background: url("../../img/company/company_img04.jpg") no-repeat center center;
}
.access-cnt {
		background: url("../../img/company/company_img05.jpg") no-repeat center center;
}
.vision-cnt {
		background: url("../../img/company/company_img06.jpg") no-repeat center center;
}
.company-flex {
		width: 1100px;
		margin: 0 auto;
}
.company-flex.box-top {
	margin-top: 80px;
}
@media (max-width: 767px) {
		.msg-cnt {/*
				width: auto;
				min-height: 480px;
				padding-top: 300px;
				box-sizing: border-box;
				background: url("../../img/company/company_img01.jpg") no-repeat top center;
				background-size: cover;
				margin: 0 auto;*/
		}
		.company-flex {
				width: auto;
		}
		.company-cnt {
				background-position: center center;
		}
		.msg-cnt {
			/*
				position: relative;
				min-height: inherit;
				padding: 0 0 170px 0;
				background-size: contain;
				background-position: top;*/
		}
		.msg-cnt .msg-wrap {
			/*
				position: relative;
				top: 150px;*/
		}
		.msg-cnt, .vision-cnt, .phylosophy-cnt, .profile-cnt, .members-cnt, .access-cnt {
				width: auto;
				min-height: inherit;
				padding: 20px;
				margin-bottom: 0px;
				background-size: cover;
		}
		.msg-wrap {
				padding: 0 44px;
		}
		.company-flex {
				padding: 0;
		}
		.profile-cnt, .access-cnt {
				margin-bottom: 0;
		}
	.phylosophy-cnt .title-cnt,
	.msg-cnt .title-cnt,
	.vision-cnt .title-cnt,
	.profile-cnt .title-cnt,
	.members-cnt .title-cnt,
	.access-cnt .title-cnt {
				margin: 0;
		}
		.more-bt a {
				font-size: 14px;
		}
.company-flex.box-top {
	margin-top: 40px;
}

}
/* 代表挨拶 */
.msg-box {
		position: relative;
		width: 1100px;
		margin: 0 auto 140px;
		text-align: left;
		font-size: 21px;
}
.msg-box img {
		position: relative;
		margin-top: 50px;
		margin-left: 60px;
}
.msg-box figcaption {
		position: absolute;
		top: 0;
		left: 0;
		background-color: #fff;
		padding: 40px 60px;
		width: 660px;
		box-sizing: border-box;
}
.msg-box figcaption p {
		font-size: 16px;
}
.msg-box figcaption:before {
		content: "";
		position: absolute;
		left: -30px;
		top: 30px;
		width: 30px;
		height: 100%;
		background-color: #004898;
}
.msg-box figcaption:after {
		content: "";
		position: absolute;
		left: -30px;
		bottom: -30px;
		width: 100%;
		height: 30px;
		background-color: #004898;
}
.msg-box figcaption h3 {
		font-size: 36px;
		color: #004898;
		margin: 0 0 30px 0;
}
.msg-box-right {
		margin-bottom: 0;
}
.msg-box-right img {
		position: relative;
		margin-top: 50px;
		margin-left: -60px;
		margin-right: 0;
}
.msg-box-right figcaption {
		position: absolute;
		top: 0;
		right: 0;
		left: auto;
		background-color: #fff;
		padding: 40px 60px;
		width: 660px;
		box-sizing: border-box;
}
.msg-box-right figcaption:before {
		content: "";
		position: absolute;
		left: auto;
		right: -30px;
		top: 30px;
		width: 30px;
		height: 100%;
		background-color: #004898;
}
.msg-box-right figcaption:after {
		content: "";
		position: absolute;
		left: auto;
		right: -30px;
		bottom: -30px;
		width: 100%;
		height: 30px;
		background-color: #004898;
}
.msg-box figcaption h3 {
		font-size: 30px;
		color: #004898;
		margin: 0 0 30px 0;
		font-weight: 600;
}
.msg-name {
		font-weight: 900;
		font-family: 'Noto Serif Japanese', serif;
		margin-top: 40px;
}
.msg-name strong {
		font-size: 36px;
		font-weight: 900;
}
@media (max-width: 767px) {
		.msg-box {
				width: auto;
				margin: 0 auto 40px;
				text-align: left;
				font-size: 21px;
		}
		.msg-box img {
				position: relative;
				margin-top: 0;
				margin-left: 0;
		}
		.msg-box figcaption {
				position: relative;
				top: auto;
				left: auto;
				background-color: #fff;
				padding: 20px;
				width: auto;
				box-sizing: border-box;
		}
		.msg-box-right {
				margin-bottom: 0;
		}
		.msg-box figcaption:before, .msg-box figcaption:after, .msg-box-right figcaption:before, .msg-box-right figcaption:after {
				display: none;
		}
		.msg-box figcaption h3 {
				font-size: 18px;
				margin: 0 0 15px 0;
		}
		.msg-box figcaption p {
				font-size: 14px;
		}
		.msg-name {
				text-align: right;
				margin-top: 20px;
		}
		.msg-name strong {
				font-size: 20px;
		}
}
/* 経営理念 */
.phylosophy-wrap {
		position: relative;
		width: 1100px;
		margin: 0 auto 80px;
		padding-bottom: 80px;
		background-color: #fff;
}
.phylosophy-wrap-first {
		margin-top: -107px;
}
.phylosophy-wrap:nth-last-child(1) {
		margin-bottom: 0;
}
.phylosophy-wrap h2 {
		position: relative;
		font-size: 36px;
		color: #084EA1;
		margin: 0;
		padding: 65px 0;
		margin-bottom: 65px;
		text-align: center;
		font-weight: 600;
		border-bottom: 3px solid #EEEEEE;
}
.phylosophy-wrap h2:before {
		position: absolute;
		bottom: -3px;
		left: 0;
		right: 0;
		margin: auto;
		width: 30px;
		height: 3px;
		background-color: #084EA1;
		content: "";
}
.phylosophy-list, .phylosophy-logo {
		width: 1000px;
		margin: 0 auto;
		text-align: left;
}
.phylosophy-list li {
		font-size: 18px;
		margin-bottom: 40px;
}
.phylosophy-list li strong {
		color: #084EA1;
		font-size: 24px;
		font-weight: 600;
}
.phylosophy-list li img {
		float: left;
		margin: 15px 15px 0 0;
}
.phylosophy-logo img {
		float: left;
		margin-right: 60px;
}
.phylosophy-logo figcaption {
		font-size: 18px;
		line-height: 2;
}
.phylosophy-logo figcaption p {}
@media (max-width: 767px) {
		.phylosophy-wrap {
				position: relative;
				width: auto;
				margin: 0 auto 40px;
				padding-bottom: 40px;
				background-color: #fff;
		}
		.phylosophy-wrap h2 {
				font-size: 18px;
				padding: 30px 0;
				margin-bottom: 30px;
		}
		.phylosophy-list, .phylosophy-logo {
				width: auto;
				padding: 0 20px;
		}
		.phylosophy-list li strong {
				font-size: 16px;
		}
		.phylosophy-list li {
				font-size: 14px;
				margin-bottom: 20px;
		}
		.phylosophy-logo figcaption {
				font-size: 14px;
		}
		.phylosophy-logo img {
				float: none;
				margin-right: 0;
				text-align: center;
				margin: auto auto 20px;
				display: block;
		}
}
/* 事務所概要 */
.page-cnt {
		position: relative;
		width: 1100px;
		margin: 0 auto;
		background-color: #fff;
		padding: 120px 50px;
}
.profile-img {
		width: 480px;
		position: absolute;
		right: 0;
		top: 120px;
}
.company-table {}
.company-table table {
		width: 100%;
}
.company-table table th, .company-table table td {
		padding: 15px 0;
		border-bottom: 1px solid #C9C9C9;
		text-align: left;
		vertical-align: top;
		font-size: 18px;
		font-weight: 300;
}
.company-table table th p, .company-table table td p {
		margin-top: 0;
}
.company-table table th {
		width: 175px;
}
.company-table table tr:first-child th, .company-table table tr:first-child td {
		padding-top: 0;
}
@media (max-width: 767px) {
		.page-cnt {
				width: auto;
				padding: 20px;
		}
		.profile-img {
				width: auto;
				position: relative;
				right: auto;
				top: 0;
		}
		.company-table {
				margin-bottom: 20px;
		}
		.company-table table th, .company-table table td {
				width: auto;
				display: block;
				padding: 15px 0;
				border-bottom: 1px solid #C9C9C9;
				text-align: left;
				vertical-align: top;
				font-size: 16px;
				font-weight: 300;
		}
		.company-table table th {
				width: auto;
				font-weight: 600;
		}
		.company-table table tr:first-child th, .company-table table tr:first-child td {
				padding-top: 15px;
		}
		.company-table table td p {
				margin: 0 0 1em 0;
		}
}
/* 交通案内 */
#map,
#map-tokyo,
#map-yokohama {
		width: auto;
		height: 580px;
}
.gmap {}
.access-info {
		width: 1100px;
		margin: 0 auto;
}
.access-info > figure {
	display: flex;
	align-items: center;
	margin-top: 50px;
}
.access-info img {
		position: relative;
		margin-right: 94px;
}
.access-info figcaption {
		text-align: left;
		font-size: 18px;
		overflow: hidden;
}
.access-method strong {
		color: #084EA1;
}
.more-blue-bt {
		display: inline-block;
}
.more-blue-bt p {
		margin: 0.4em 0;
}
.more-blue-bt a {
		position: relative;
		display: block;
		background-color: #084EA1;
		padding: 10px 45px;
		color: #fff;
		font-size: 14px;
}
.more-blue-bt a:before {
		position: absolute;
		left: 25px;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 9px;
		height: 14px;
		content: "";
		background: url(../../img/top/icon_arrow_right_white.svg) no-repeat left center;
}
.more-blue-bt a:link, .more-blue-bt a:visited {
		color: #fff;
}
@media (max-width: 767px) {
		#map,
	#map-tokyo,
	#map-yokohama {
				height: auto;
		}
		.gmap {
				height: 0;
				overflow: hidden;
				padding-bottom: 56.25%;
				position: relative;
		}
		.gmap iframe {
				position: absolute;
				left: 0;
				top: 0;
				height: 100%;
				width: 100%;
		}
		.access-info {
				width: auto;
		}
		.access-info img {
				position: relative;
				float: none;
				margin-right: 0;
				margin-top: 20px;
		}
		.access-info figcaption {
				text-align: left;
				padding: 20px;
				font-size: 16px;
				overflow: hidden;
		}
		.more-blue-bt {
				display: block;
				text-align: center;
		}
}
/* 行政書士紹介 */
.members-wrap {
		position: relative;
		width: 1100px;
		margin: 0 auto 90px;
}
.members-wrap:last-of-type {
		margin-bottom: 127px;
}
.members-inner {
		background-color: #fff;
		text-align: left;
		padding: 0 40px 40px;
		font-size: 18px;
}
.members-inner .members-title, .members-title-sp {
		/*		display: flex;
		justify-content: flex-start;
		align-items: flex-start;*/
}
.members-title p, .members-title-sp p {
		margin: 0;
		line-height: 1.5;
}
.members-title p.menbers-sub {
		font-size: 18px;
}
.members-name, .members-title-sp .members-name {
		font-size: 60px;
		font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
		line-height: 1;
}
.members-inner h3 {
		font-size: 30px;
		color: #084EA1;
		font-weight: 600;
		margin-top: 0;
}
.members-profile {
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
		background-color: #fff;
		padding: 45px 40px 50px;
}
.members-profile img {
		width: 600px;
		max-width: 600px;
		height: auto;
		margin: 0 35px 0 0;
}
.members-profile h3 {
		font-size: 24px;
		color: #004898;
		font-weight: 600;
		margin: 20px 0 0 0;
}
.grad-item p {
		font-size: 16px;
}
.members-profile figcaption {
		text-align: left;
		font-size: 14px;
}
.members-profile figcaption li {
		text-align: left;
}
.members-profile figcaption li strong {
		color: #004898;
		font-weight: bold;
}
/* アクセスページブラッシュアップ */
.access-train, .access-car {
		background-color: #fff;
		padding-bottom: 80px;
}
.access-car {
		background: none;
}
.access-train .title-black-border, .access-car .title-black-border {
		padding-top: 80px;
		padding-bottom: 50px;
		margin-bottom: 0;
}
.access-route-inner {
		width: 1100px;
		margin: 0 auto;
		text-align: left;
}
.access-route-inner h3 {
		color: #084EA1;
		font-size: 24px;
		margin: 70px 0 20px 0;
		font-weight: bold;
}
.access-route-img {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: flex-start;
}
.access-route-img + h3 {
		margin-top: 0px;
}
.access-route-img figure {
		width: calc((100% - 80px) / 3);
		margin-right: 40px;
		margin-bottom: 40px;
}
.access-route-img figure:nth-child(3n) {
		margin-right: 0;
}
.access-route-img figure figcaption p {
		font-size: 18px;
		margin: 15px 0 0 0;
}
@media (max-width: 767px) {
		.members-wrap {
				position: relative;
				width: auto;
				margin: 0 auto 0;
				padding-bottom: 20px;
		}
		.members-inner .members-title {
				display: none;
		}
		.members-profile {
				display: block;
				position: relative;
				width: auto;
				padding: 20px 20px 0 20px;
				background-color: inherit;
		}
		.members-profile img {
				max-width: inherit;
				width: 100%;
				height: auto;
				margin: 0 0 20px 0;
		}
		.members-inner {
				position: relative;
				top: auto;
				width: auto;
				text-align: left;
				padding: 20px;
				margin-left: 0;
				font-size: 16px;
				background-color: #fafafa;
		}
		.members-title-sp {
				text-align: left;
				padding: 0;
				margin-bottom: 18px;
		}
		.members-title-sp .members-name {
				font-size: 30px;
				margin-left: 0;
				margin-bottom: 10px;
		}
		.menbers-sub br {
				display: none;
		}
		.members-profile h3 {
				position: relative;
				font-size: 17px;
				color: #004898;
				text-align: center;
				background-color: #fff;
				border: 1px solid #004898;
				border-bottom: none;
				padding: 13px 24px;
				margin-bottom: 0;
				-webkit-transition: 0.3s ease-in-out;
				-moz-transition: 0.3s ease-in-out;
				-o-transition: 0.3s ease-in-out;
				transition: 0.3s ease-in-out;
		}
		.members-profile h3:after {
				position: absolute;
				display: block;
				content: "";
				width: 100%;
				height: 1px;
				background-color: #004898;
				bottom: 0;
				left: 0;
				right: 0;
				margin: auto;
				-webkit-transition: 0.3s ease-in-out;
				-moz-transition: 0.3s ease-in-out;
				-o-transition: 0.3s ease-in-out;
				transition: 0.3s ease-in-out;
		}
		.members-profile h3.close:after {
				width: calc(100% - 40px);
				-webkit-transition: 0.3s ease-in-out;
				-moz-transition: 0.3s ease-in-out;
				-o-transition: 0.3s ease-in-out;
				transition: 0.3s ease-in-out;
		}
		.members-profile ul {
				display: none;
				background-color: #fff;
				padding: 20px;
				border: 1px solid #004898;
				border-top: none;
		}
		.members-profile h3:before {
				position: absolute;
				right: 25px;
				top: 0;
				bottom: 0;
				margin: auto;
				width: 13px;
				height: 8.5px;
				content: "";
				display: inline-block;
				background: url(../../img/common/icon_arrow_down_blue.svg) no-repeat left center;
				background-size: contain;
		}
		.members-profile h3.close:before {
				position: absolute;
				right: 25px;
				top: 0;
				bottom: 0;
				margin: auto;
				width: 13px;
				height: 8.5px;
				content: "";
				display: inline-block;
				background: url(../../img/common/icon_arrow_up_blue.svg) no-repeat left center;
				background-size: contain;
		}
		.members-inner h3 {
				font-size: 18px;
		}
		.grad-wrap {
				position: relative;
		}
		.grad-wrap + .grad-wrap {
				margin-top: 40px;
		}
		.grad-trigger {
				/*ボタンのスタイルはご自由にどうぞ*/
		}
		.grad-trigger::after {
				content: "全文を読む" /*クリック前のボタンのラベル*/
		}
		.grad-trigger .fa {
				margin-right: .5em;
		}
		.grad-item {
				position: relative;
				overflow: hidden;
		}
		.grad-item.is-hide {
				height: 240px; /*隠した後の高さ*/
		}
		.grad-item p:last-of-type {
				margin-bottom: 5em;
		}
		.grad-item::before {
				display: block;
				position: absolute;
				bottom: 0;
				left: 0;
				content: "";
				width: 100%;
				height: 150px; /*グラデーションで隠す高さ*/
				background: -webkit-linear-gradient(top, rgba(250, 250, 250, 0) 0%, rgba(250, 250, 250, 0.9) 50%, rgba(250, 250, 250, 0.9) 50%, #fff 100%);
				background: linear-gradient(top, rgba(250, 250, 250, 0) 0%, rgba(250, 250, 250, 0.9) 50%, rgba(250, 250, 250, 0.9) 50%, #fff 100%);
		}
		.grad-trigger.is-show {
				bottom: 0;
		}
		.grad-trigger.is-show::after {
				content: "閉じる" /*クリック後にボタンのラベルを変える*/
		}
		.grad-trigger.is-show + .grad-item::before {
				display: none;
		}
		.grad-trigger {
				font-size: 17px;
				padding: 13px 24px;
				font-weight: 600;
				z-index: 2;
				position: absolute;
				right: 0;
				bottom: 0;
				left: 0;
				width: auto;
				margin: auto;
				border-radius: 2px;
				background: #004898;
				color: #fff;
				text-align: center;
				cursor: pointer;
				transition: .2s ease;
		}
		.grad-trigger:before {
				position: absolute;
				left: auto;
				right: 25px;
				top: 0;
				bottom: 0;
				margin: auto;
				width: 13px;
				height: 8.5px;
				content: "";
				display: inline-block;
				background: url(../../img/common/icon_arrow_down_white.svg) no-repeat left center;
				background-size: contain;
		}
		.is-show:before {
				position: absolute;
				left: auto;
				right: 25px;
				top: 0;
				bottom: 0;
				margin: auto;
				width: 13px;
				height: 8.5px;
				content: "";
				display: inline-block;
				background: url(../../img/common/icon_arrow_up_white.svg) no-repeat left center;
				background-size: contain;
		}
		.members-wrap:last-of-type {
				margin-bottom: 0;
				padding-bottom: 0;
		}
		.grad-wrap:last-of-type {
				position: relative;
		}
		.members-inner:last-of-type {
				padding-bottom: 0;
		}
		.members-profile figcaption {
				padding-right: 0;
		}
		/* アクセスページブラッシュアップ */
		.access-train, .access-car {
				padding-bottom: 20px;
		}
		.access-car {
				background: none;
		}
		.access-train .title-black-border, .access-car .title-black-border {
				padding-top: 20px;
				padding-bottom: 20px;
		}
		.access-route-inner {
				width: auto;
				padding: 0 20px;
		}
		.access-route-inner h3 {}
		.access-route-img {
				display: block;
		}
		.access-route-img figure {
				width: auto;
				margin-right: 0;
				margin-bottom: 20px;
		}
		.access-route-img figure figcaption p {
				font-size: 16px;
				margin: 10px 0 0 0;
		}
		.access-route-inner h3 {
				font-size: 18px;
				margin: 20px 0 10px 0;
		}
		.access-train .title-black-border, .access-car .title-black-border {
				padding-top: 40px;
				padding-bottom: 25px;
		}
		.access-train .title-black-border h2, .access-car .title-black-border h2 {
				font-size: 24px;
				letter-spacing: normal;
		}
}
/* recruit.cssから移植してきた部分 */
/* 代表メッセージ */
.rep-page {
		margin-top: 200px;
}
.rep-cnt {
		width: 1100px;
		margin: 0 auto;
		position: relative;
}
.rep-cnt figure {
		text-align: right;
}
.rep-cnt figure .fig-title {
		position: absolute;
		left: -110px;
		top: 125px;
}
.rep-cnt figure .fig-title h2 {
		position: relative;
		display: block;
		font-size: 30px;
		font-weight: 300;
		margin: 0;
		text-align: left;
		background-color: #fff;
		padding: 53px 89px 62px 63px;
}
.rep-cnt figure .fig-title h2:before {
		position: absolute;
		content: "";
		width: 144px;
		height: 6px;
		background-color: #084EA1;
		left: 0;
		top: 0;
		display: block;
}
.rep-cnt figure img {}
.rep-cnt figcaption {
		margin: 60px 0 0 0;
		display: flex;
		justify-content: flex-start;
}
.rep-cnt .rep-name {
		width: 310px;
		order: 2;
		text-align: left;
}
.rep-cnt .rep-msg {
		width: 750px;
		margin: 0 50px 0 10px;
		order: 1;
		text-align: left;
}
.rep-cnt .rep-msg p {
		font-size: 16px;
		margin: 0 0 2em 0;
}
.rep-cnt .rep-name h3 {
		border-bottom: 2px solid #084EA1;
		font-size: 18px;
		font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
		margin: 0 0 35px 0;
		font-weight: 300;
}
.rep-cnt .rep-name h3 strong {
		font-size: 30px;
		font-weight: 600;
}
.rep-cnt .rep-name p {
		font-size: 14px;
}
.rep-cnt .rep-name strong {
		color: #084EA1;
}
.rep-page .section01 {
		margin-bottom: 100px;
}
.rep-page .section02 {
		margin-bottom: 100px;
}
.rep-page .section02 figure {
		text-align: left;
}
.rep-page .section02 figure .fig-title {
		position: absolute;
		left: auto;
		right: -110px;
		top: 125px;
}
.rep-page .section02 .rep-msg {
		width: auto;
		margin: 0;
}
.rep-page .section02 .rep-msg p {
		font-size: 18px;
}
.rep-page .section02 .keyword {
		font-size: 24px;
		color: #084EA1;
		font-weight: 600;
}
.rep-page .rep-ayumi {
		min-width: 1420px;
		height: auto;
		margin-bottom: 120px;
}
.rep-page .rep-ayumi figcaption {
		width: 1000px;
		margin: 60px auto 0;
		text-align: left;
		font-size: 16px;
}
.rep-page .rep-ayumi figcaption p {
		font-size: 36px;
		font-weight: bold;
		text-align: left;
		line-height: 2;
		letter-spacing: 1px;
}
.rep-page .rep-ayumi figcaption p strong {
		font-size: 50px;
		background: linear-gradient(transparent 60%, #F8F800 60%);
}
.rep-page .section03 {
		margin-top: 100px;
		margin-bottom: 60px;
}
.rep-page .section04 {
		margin-top: 100px;
}
.rep-page .section04 h3, .rep-page .section04 p {
		text-align: left;
		margin: 0 0 20px 0;
}
.rep-page .section04 h3 {
		font-size: 30px;
		color: #084EA1;
		font-weight: bold;
		margin: 60px 0 20px;
}
.rep-page .section04 h3:first-of-type {
		margin-top: 0;
}
.rep-page .section04 p.request-img {
		margin-bottom: 140px;
		text-align: center;
}
.rep-page .section03 .fig-title {
		position: absolute;
		left: 0;
		top: 64px;
		width: 644px;
		min-height: 496px;
		background-color: #fff;
		text-align: center;
		padding: 74px 127px;
		box-sizing: border-box;
		/* 画像化 */
		padding: 70px;
		display: flex;
		justify-content: center;
		align-items: center;
}
.rep-page .section03 figure .fig-title h2:before {
		display: none;
}
.rep-page .section03 figure .fig-title h2 {
		position: relative;
		display: block;
		font-size: 28px;
		font-weight: 600;
		margin: 0;
		text-align: left;
		background-color: inherit;
		padding: 0;
		color: #084EA1;
		margin-bottom: 25px;
}
.rep-page .section03 figure .fig-title p {
		font-size: 18px;
		text-align: left;
}
.rep-page .section03 figure .fig-title .fig-copy {
		font-size: 30px;
		margin: 0 0 40px 0;
		text-align: left;
}
@media (max-width: 767px) {
		.rep-cnt {
				width: auto;
		}
		.rep-cnt figure {
				text-align: left;
				padding: 0 20px;
		}
		.rep-cnt figcaption {
				margin: 0;
				display: block;
		}
		.rep-cnt figure .fig-title {
				position: relative;
				left: 0;
				top: 0;
				margin: -50px 25px 15px;
		}
		.rep-cnt .rep-name {
				width: auto;
				margin-bottom: 20px;
				background-color: #fff;
				border: 1px solid #084EA1;
				padding: 20px;
		}
		.rep-cnt .rep-name h3 {
				border-bottom: 1px solid #084EA1;
				font-size: 18px;
				margin: 0 0 10px 0;
		}
		.rep-cnt .rep-msg {
				width: auto;
				margin: 0;
		}
		.rep-page .section02 {
				margin-bottom: 50px;
		}
		.rep-page .section02 figure .fig-title {
				position: relative;
				left: auto;
				right: 0;
				top: 0;
		}
		.rep-page .section02 .rep-msg {
				margin: 0;
		}
		.rep-page .section03 {
				margin-bottom: 0;
		}
		.rep-page {
				margin-top: 0;
		}
		.rep-page .rep-ayumi {
				min-width: inherit;
				margin-top: 40px;
		}
		.rep-page .rep-ayumi figcaption {
				width: auto;
				margin: 30px auto 0;
		}
		.rep-page .section03 .fig-title {
				position: relative;
				left: auto;
				top: auto;
				width: auto;
				min-height: inherit;
				text-align: center;
				padding: 15px 30px;
		}
		.rep-cnt figure .fig-title h2 {
				position: relative;
				display: block;
				font-size: 18px;
				margin: 0;
				text-align: left;
				background-color: #fff;
				padding: 20px 0 20px 10%;
				color: #0C4989;
				font-weight: 600;
		}
		.rep-page .section01 {
				margin-bottom: 0;
		}
		.rep-page .rep-ayumi figcaption {
				padding: 0 20px;
		}
		.rep-page .section03 figure .fig-title h2 {
				font-size: 18px;
				text-align: center;
				margin-bottom: 5px;
		}
		.rep-page .section03 figure .fig-title .fig-copy {
				font-size: 14px;
				margin: 0;
				text-align: center;
				font-weight: 600;
		}
		.rep-page .section03 figure .fig-title p {
				text-align: left;
				font-size: 14px;
		}
		.rep-page .section03 figure .fig-title {
				margin-top: -25px;
				margin-bottom: 0;
		}
}
.title-cnt {
		width: 600px;
		height: 360px;
		background-color: rgba(255, 255, 255, 0.9);
		filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.2));
		text-align: center;
		padding: 70px 0 0 0;
		box-sizing: border-box;
}
.title-cnt h2 {
		margin: 0;
		padding: 0 0 18px 0;
		font-size: 32px;
		color: #0C4989;
		font-weight: 900;
}
.title-cnt p {
		font-size: 18px;
		color: #000;
		margin: 0;
		text-align: center;
		font-weight: normal;
}
.recruit-col2 .title-cnt p {
		text-align: left;
}
.recruit-cnt .more-bt {
		width: 240px;
}
.recruit-flex .title-cnt {
		width: auto;
		height: auto;
		padding: 70px 60px;
		filter: none;
}
.recruit-flex .title-cnt p {
		color: #084EA1;
}
.recruit-flex .title-cnt .more-blue-bt {
		margin-left: auto;
		margin-right: auto;
}
.recruit-col2 .more-bt a:before, .recruit-page .more-bt a:before {
		position: absolute;
		right: 25px;
		left: auto;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 9px;
		height: 14px;
		content: "";
		background: url(../../img/top/icon_arrow2_right_blue.svg) no-repeat left center;
}
.recruit-col2 .more-bt a:hover:before, .recruit-page .more-bt a:hover:before {
		background: url(../../img/top/icon_arrow_right_white.svg) no-repeat left center;
}
.recruit-col2 {
		width: 1100px;
		display: flex;
		margin: 100px auto 100px;
}
.page-template-page-recruit .recruit-col2 {
		margin: 0 auto 0;
}
.recruit-col2 .title-cnt {
		width: auto;
		padding: 60px 70px;
		background-color: #EC6104;
		filter: none;
		text-align: center;
		box-sizing: border-box;
		min-height: 384px;
}
.recruit-col2 .title-cnt h2 {
		color: #fff;
}
.recruit-col2 .title-cnt p {
		color: #fff;
}
.recruit-col2 .left-cnt, .recruit-col2 .right-cnt {
		width: 50%;
}
.recruit-col2 .right-cnt {
		background: url(../../img/recruit/recruit_img06.jpg) no-repeat center center;
}
.recruit-col2 .right-cnt img {
		display: none;
}
.recruit-col2 .more-bt a {
		border: 1px solid #fff;
		font-size: 14px;
}
#content .recruit-ttl h2 {
		font-size: 50px;
}
#content .recruit-ttl p {
		margin-top: 50px;
		font-size: 20px;
		font-weight: bold;
}
.recruit-col2 .more-bt {
		width: 189px;
}
@media (max-width: 767px) {
		.rep-cnt {
				width: auto;
		}
		.rep-cnt figure {
				text-align: left;
				padding: 0 20px;
		}
		.rep-cnt figcaption {
				margin: 0;
				display: block;
		}
		.rep-cnt figure .fig-title {
				position: relative;
				left: 0;
				top: 0;
				margin: 0;
		}
		.rep-cnt .rep-name {
				width: auto;
				margin-bottom: 20px;
				background-color: #fff;
				border: 1px solid #084EA1;
				padding: 20px;
		}
		.rep-cnt .rep-name h3 {
				border-bottom: 1px solid #084EA1;
				font-size: 18px;
				margin: 0 0 10px 0;
		}
		.rep-cnt .rep-msg {
				width: auto;
				margin: 0;
		}
		.rep-page .section02 {
				margin-bottom: 50px;
		}
		.rep-page .section02 figure .fig-title {
				position: relative;
				left: auto;
				right: 0;
				top: 0;
		}
		.rep-page .section02 .rep-msg {
				margin: 0;
		}
		.rep-page .section03 {
				margin-bottom: 0;
		}
		.rep-page .rep-ayumi {
				min-width: inherit;
		}
		.rep-page .rep-ayumi figcaption {
				width: auto;
				margin: 30px auto 0;
		}
		.rep-page .section03 .fig-title {
				position: relative;
				left: auto;
				top: auto;
				width: auto;
				min-height: inherit;
				text-align: center;
				padding: 15px 30px;
		}
		.rep-cnt figure .fig-title h2 {
				position: relative;
				display: block;
				font-size: 18px;
				margin: 0;
				text-align: left;
				background-color: #fff;
				padding: 20px 0 20px 10%;
				color: #0C4989;
				font-weight: 600;
		}
		.rep-page .section01 {
				margin-bottom: 0;
		}
		.rep-page .rep-ayumi figcaption {
				padding: 0 20px;
		}
		.rep-page .section03 figure .fig-title h2 {
				font-size: 18px;
				text-align: center;
				margin-bottom: 5px;
		}
		.rep-page .section03 figure .fig-title .fig-copy {
				font-size: 14px;
				margin: 0;
				text-align: center;
				font-weight: 600;
		}
		.rep-page .section03 figure .fig-title {
				margin-top: 0;
				margin-bottom: 0;
		}
		.rep-page .section03 figure .fig-title p {
				text-align: left;
				font-size: 14px;
		}
		.recruit-col2 {
				width: auto;
				display: block;
		}
		.recruit-col2 .left-cnt, .recruit-col2 .right-cnt {
				width: auto;
				padding: 0 20px;
				padding-bottom: 0;
		}
		.recruit-col2 .title-cnt {
				padding: 20px;
				min-height: inherit;
		}
		.rep-page .rep-ayumi figcaption p {
				font-size: 24px;
				text-align: left;
				letter-spacing: 0;
		}
		.rep-page .rep-ayumi figcaption p strong {
				font-size: 32px;
				background: linear-gradient(transparent 60%, #F8F800 60%);
		}
		.rep-page .rep-ayumi figcaption p br {}
		.rep-page .section04 {
				margin-top: 50px;
				padding: 0 20px;
		}
		.recruit-col2 {
				margin: 50px auto 50px;
		}
		.rep-page .section04 p.request-img {
				margin-bottom: 40px;
		}
		.rep-page .section04 h3 {
				font-size: 24px;
				margin: 30px 0 10px;
		}
}