/* --------------- office --------------- */

/*ttl-mds*/

@media print,
screen and (min-width: 701px) {
	.cont_author_about.pc_none {
		display: none;
	}
}

/*greeting*/
.col_office_greeting {
	width: 100%;
	max-width: 1260px;
	margin: 0 auto;
	padding: 120px 0;
}

.col_office_greeting .mds {
	text-align: left;
	max-width: 1200px;
	margin: 0 auto 25px;
	width: 92%;
	padding: 0;
	position: relative;
}

.col_office_greeting .mds .jp {
	margin: 0 0 5px;
	padding: 0;
	color: #1d2087;
	font-size: 25px;
	font-weight: 600;
	text-align: left;
}

.col_office_greeting .mds .jp span {
	margin: 0;
	padding: 0 5px 5px;
	display: inline-block;
	position: relative;
	z-index: 0;
}

.col_office_greeting .mds .jp span::before {
	content: "";
	width: 100%;
	height: 5px;
	margin: 0;
	padding: 0;
	background: linear-gradient(90deg, #1d2087 50%, #0068b6 50%);
	position: absolute;
	left: 0;
	bottom: 0;
}

.col_office_greeting .mds .en {
	margin: 0;
	padding: 0;
	font-family: "Montserrat", sans-serif;
	color: #1d2087;
	font-size: 13px;
	font-weight: 600;
	text-align: left;
}

.col_office_greeting .catch {
	font-size: 26px;
	color: #1d2087;
	font-weight: bold;
	line-height: 1.6;
}


.col_office_greeting .box_greeting {
	display: flex;
	max-width: 1200px;
	width: 92%;
	margin: 0 auto;
}

.col_office_greeting .box_greeting .left {
	width: 55%;
}


.col_office_greeting .txt {
	width: 90%;
	max-width: 826px;
	margin: 7px 0 0 0;
	line-height: 2.5;
}

.cont_author_about {
	width: 92%;
	max-width: 780px;
	margin: 0px auto 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.cont_author_about dt {
	width: 114px;
	margin: 0;
	padding: 0 15px 0 0;
	line-height: 1.5;
}

.cont_author_about dd {
	width: 172px;
	margin: 0;
	padding: 0;
}

.col_office_greeting .box_greeting .right {
	width: 45%;
	position: relative;
}

.col_office_greeting .deco_greeting {
	width: 50.5vw;
	max-width: 585px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: -17%;
	left: 53%;
	transform: translate(-50%, -50%);
}


.col_office_greeting .box_greeting .right .img {
	max-width: 494px;
}



/*philosophy*/
.col_office_philosophy {
	width: 100%;
	margin: 0 auto;
	padding: 68px 0;
	background-color: #efefef;
}

.col_office_philosophy .mds {
	margin: 0 0 40px;
	padding: 0;
}

.col_office_philosophy .mds .jp {
	margin: 0 0 5px;
	padding: 0;
	color: #1d2087;
	font-size: 25px;
	font-weight: 600;
	text-align: center;
}

.col_office_philosophy .mds .jp span {
	margin: 0;
	padding: 0 5px 5px;
	display: inline-block;
	position: relative;
	z-index: 0;
}

.col_office_philosophy .mds .jp span::before {
	content: "";
	width: 100%;
	height: 5px;
	margin: 0;
	padding: 0;
	background: linear-gradient(90deg, #1d2087 50%, #0068b6 50%);
	position: absolute;
	left: 0;
	bottom: 0;
}

.col_office_philosophy .mds .en {
	margin: 0;
	padding: 0;
	font-family: "Montserrat", sans-serif;
	color: #1d2087;
	font-size: 13px;
	font-weight: 600;
	text-align: center;
}

.col_office_philosophy .catch {
	font-size: 26px;
	color: #1d2087;
	text-align: center;
	line-height: 1.6;
	font-weight: bold;
}

.col_office_philosophy .cont_philosopgy {
	display: flex;
	justify-content: center;
	max-width: 1200px;
	margin: 0 auto;
}

.col_office_philosophy .cont_philosopgy .box_explain {
	margin: 62px 0 0 0;
}

.col_office_philosophy .cont_philosopgy .box_explain:nth-of-type(1) {
	margin-left: 4%;
}

.col_office_philosophy .cont_philosopgy .box_explain:nth-of-type(2) {
	margin: 62px 8% 0;
	position: relative;
}

.col_office_philosophy .cont_philosopgy .box_explain:nth-of-type(3) {
	margin-right: 4%;
}

.col_office_philosophy .cont_philosopgy .box_explain:nth-of-type(2)::before {
	content: '';
	position: absolute;
	width: 1px;
	height: 100%;
	border-right: 1px dotted #1d2087;
	top: 0;
	left: -16%;
}

.col_office_philosophy .cont_philosopgy .box_explain:nth-of-type(2)::after {
	content: '';
	position: absolute;
	width: 1px;
	height: 100%;
	border-right: 1px dotted #1d2087;
	top: 0;
	right: -16%;
}

.col_office_philosophy .cont_philosopgy .box_explain .icon {
	max-width: 138px;
	margin: 0 auto;
}

.col_office_philosophy .cont_philosopgy .box_explain img {
	width: 100%;
}

.col_office_philosophy .cont_philosopgy .box_explain .mds2 {
	text-align: center;
	margin: 13px 0;
	color: #1d2087;
	font-size: 26px;
	font-weight: bold;
}

.col_office_philosophy .cont_philosopgy .box_explain .txt {
	margin: 0;
	padding: 0;
	max-width: 278px;
}

/*company*/
.col_office_company {
	width: 100%;
	max-width: 1260px;
	margin: 0 auto;
	padding: 68px 0 94px 0;
	position: relative;
}

.col_office_company::after {
	content: '';
	background-image: url(../img/office/bg_logo.png);
	background-repeat: no-repeat;
	position: absolute;
	width: 670px;
	height: 540px;
	bottom: -64px;
	right: -242px;
	z-index: -1;
}

.col_office_company .mds {
	margin: 0 0 40px;
	padding: 0;
}

.col_office_company .mds .jp {
	margin: 0 0 5px;
	padding: 0;
	color: #1d2087;
	font-size: 25px;
	font-weight: 600;
	text-align: center;
}

.col_office_company .mds .jp span {
	margin: 0;
	padding: 0 5px 5px;
	display: inline-block;
	position: relative;
	z-index: 0;
}

.col_office_company .mds .jp span::before {
	content: "";
	width: 100%;
	height: 5px;
	margin: 0;
	padding: 0;
	background: linear-gradient(90deg, #1d2087 50%, #0068b6 50%);
	position: absolute;
	left: 0;
	bottom: 0;
}

.col_office_company .mds .en {
	margin: 0;
	padding: 0;
	font-family: "Montserrat", sans-serif;
	color: #1d2087;
	font-size: 13px;
	font-weight: 600;
	text-align: center;
}

.col_office_company .cont_company {
	width: 90%;
	display: flex;
	margin: 0 auto;
	padding: 0;
	max-width: 913px;
	margin: 0 auto;
}

.col_office_company .cont_company dt {
	max-width: 214px;
	width: 25%;
	color: #1d2087;
	padding: 3% 0 3% 1%;
	border-top: 1px solid #1d2087;
}

.col_office_company .cont_company.last dt {
	border-bottom: 1px solid #1d2087;
}


.col_office_company .cont_company dd {
	max-width: 680px;
	width: 75%;
	padding: 3% 0 3% 1%;
	border-top: 1px solid #c9caca;
}

.col_office_company .cont_company.last dd {
	border-bottom: 1px solid #c9caca;
}

.col_office_company .cont_company dd .indent1 {
	padding-left: 8em;
	text-indent: -8em;
}

.col_office_company .cont_company dd .indent1 span {
	padding-left: 1em;
}

/*access*/
.col_office_access {
	width: 100%;
	margin: 0 auto;
	padding: 68px 0;
	background-color: #e2eef7;
}

.col_office_access .mds {
	margin: 0 0 40px;
	padding: 0;
}

.col_office_access .mds .jp {
	margin: 0 0 5px;
	padding: 0;
	color: #1d2087;
	font-size: 25px;
	font-weight: 600;
	text-align: center;
}

.col_office_access .mds .jp span {
	margin: 0;
	padding: 0 5px 5px;
	display: inline-block;
	position: relative;
	z-index: 0;
}

.col_office_access .mds .jp span::before {
	content: "";
	width: 100%;
	height: 5px;
	margin: 0;
	padding: 0;
	background: linear-gradient(90deg, #1d2087 50%, #0068b6 50%);
	position: absolute;
	left: 0;
	bottom: 0;
}

.col_office_access .mds .en {
	margin: 0;
	padding: 0;
	font-family: "Montserrat", sans-serif;
	color: #1d2087;
	font-size: 13px;
	font-weight: 600;
	text-align: center;
}

.col_office_access .col_content {
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	justify-content: space-between;
}

.col_office_access .mapimg {
	display: flex;
	justify-content: space-between;
}

.col_office_access .mapimg .img {
	width: 48%;
	max-width: 257px;
	margin-bottom: 10px;
}

.col_office_access .mapimg .img:first-child {
	margin-right: 2%;
}

.col_office_access .mapimg .img:last-child {
	margin-left: 2%;
}


@media print,
screen and (max-width: 1200px) {

	/*greeting*/
	.col_office_greeting .deco_greeting {
		top: -11%;
		left: 50%;
		width: 44.5vw;
	}
}

@media print,
screen and (max-width: 900px) {

	/*greeting*/
	.col_office_greeting .sp_none {
		display: none;
	}

	.col_office_greeting .pc_none {
		display: block;
	}

	.col_office_greeting .mds {
		text-align: center;
		margin: 0 auto 10px;
	}

	.col_office_greeting .mds .jp {
		text-align: center;
	}

	.col_office_greeting .mds .en {
		text-align: center;
	}

	.col_office_greeting .box_greeting {
		flex-direction: column;
	}

	.col_office_greeting .box_greeting .left {
		width: 100%;
		margin: 0 auto 19%;
	}

	.col_office_greeting .catch {
		text-align: center;
	}

	.col_office_greeting .deco_greeting {
		top: 5%;
		left: 48%;
		width: 84.5vw;
		transform: translate(-50%, -50%);
	}

	.col_office_greeting .box_greeting .right {
		width: 100%;
	}

	.col_office_greeting .box_greeting .right .img {
		margin: 0 auto;
		max-width: 556px;
	}

	.col_office_greeting .pc_none {
		margin: 15px auto 0;
		line-height: 3;
	}

	.col_office_greeting .cont_author_about dt {
		margin: 0 auto
	}

	.col_office_greeting .cont_author_about dd {
		margin: 0 auto
	}
}

/*company*/
@media print,
screen and (max-width: 850px) {
	.col_office_company::after {
		width: 82.777vw;
		height: 64.888vw;
		bottom: -10vw;
		right: -14.55vw;
		background-size: 100% auto;
	}
}


@media print,
screen and (max-width: 700px) {

	/*company*/
	.col_office_company .cont_company dd {
		max-width: 680px;
		width: 75%;
		padding: 3% 0 3% 1%;
		border-top: 1px solid #c9caca;
		margin: 0 0 0 4%;
	}

	/*access*/
	.col_office_access .col_content {
		display: block;
	}
}

.col_office_access .col_content .cont {
	width: calc((100% - 30px)/2);
	margin: 0;
	padding: 0;
}

@media print,
screen and (max-width: 700px) {
	.col_office_access .col_content .cont {
		width: 100%;
		margin: 0 0 5vw;
	}
}

.col_office_access .col_content .cont .mds_map {
	margin: 0 0 20px;
	padding: 0;
	color: #1d2087;
	font-size: 22px;
	font-weight: 400;
	text-align: center;
	border-bottom: solid 4px #1d2087;
}

.col_office_access .col_content .cont .map {
	width: 100%;
	height: 300px;
	margin: 0 0 5px;
	padding: 0;
}

@media print,
screen and (max-width: 700px) {

	/*greeting*/
	.col_office_greeting {
		width: 90%;
	}

	.col_office_greeting .mds {
		margin: 0 auto 15px;
	}

	.col_office_greeting .catch {
		font-size: 18px;
		font-weight: bold;
		margin: 0 auto 0.5em;
	}

	.col_office_greeting .txt {
		width: 100%;
		margin: 0 auto;
		line-height: 2.0;
	}

	.cont_author_about {
		width: 100%;
		display: block;
		margin: 0;
	}

	.cont_author_about dt {
		width: 172px;
		margin: 20px auto 0;
		padding: 0 0 10px 44px;
	}

	.cont_author_about dd {
		margin: 0 auto;
		padding: 3px 0 0 0;
		line-height: 1.5;
	}

	.col_office_philosophy {
		padding: 68px 2.5%;
	}

	.col_office_philosophy .catch span {
		padding-left: 2em;
	}

	.col_office_philosophy .cont_philosopgy {
		display: block;
	}

	.col_office_philosophy .cont_philosopgy .box_explain {
		margin: 5% 0;
		display: flex;
	}

	.col_office_philosophy .cont_philosopgy .box_explain:nth-of-type(1) {
		margin-left: 0;
	}

	.col_office_philosophy .cont_philosopgy .box_explain .sp_left {
		width: 30%;
		margin-right: 3%;
	}

	.col_office_philosophy .cont_philosopgy .box_explain .icon {
		max-width: 105px;
	}

	.col_office_philosophy .cont_philosopgy .box_explain .mds2 {
		text-align: center;
		margin: 0;
		font-size: 26px;
		font-weight: bold;
	}

	.col_office_philosophy .cont_philosopgy .box_explain .txt {
		width: 70%;
		max-width: 442px;
		margin-top: 3%;
	}

	.col_office_philosophy .cont_philosopgy .box_explain:nth-of-type(2) {
		margin: 6% 0;
		position: relative;
	}

	.col_office_philosophy .cont_philosopgy .box_explain:nth-of-type(2)::before {
		content: '';
		position: absolute;
		width: 100%;
		height: 1px;
		border-left: none;
		border-top: 1px dotted #1d2087;
		top: -15%;
		left: 0;
	}

	.col_office_philosophy .cont_philosopgy .box_explain:nth-of-type(2)::after {
		content: '';
		position: absolute;
		width: 100%;
		height: 1px;
		border-right: none;
		border-bottom: 1px dotted #1d2087;
		top: 107%;
		left: 0;
	}


	.col_office_philosophy .cont_philosopgy .box_explain:nth-last-of-type(1) {
		margin: 0;
		position: relative;
	}

	.col_office_company {
		width: 100%;
		padding: 68px 5%;
		background-size: 75%;
		background-position: 153% 63vh;
		background-attachment: fixed;
	}

	.col_office_company .cont_company dd .indent1 {
		padding-left: 0;
		text-indent: 0;
	}

	.col_office_company .cont_company dd .indent1 span {
		padding-left: 0;
	}


	.col_office_company .cont_company dt {
		line-height: 1.5;
	}

	/*access*/
	.col_office_access .col_content .cont .map {
		height: 70vw;
	}

	.col_office_access .mapimg .img {
		max-width: 292px;
	}

	.col_office_access .col_content .cont .map iframe {
		width: 100%;
		height: 100%;
		margin: 0;
		padding: 0;
	}

}


@media print,
screen and (max-width: 500px) {

	.col_office_greeting .deco_greeting {
		top: 10%;
	}
}

@media print,
screen and (max-width: 400px) {

	.col_office_philosophy .cont_philosopgy .box_explain .icon {
		max-width: 68px;
	}

	.col_office_philosophy .cont_philosopgy .box_explain .mds2 {
		font-size: 22px;
	}

	.col_office_philosophy .cont_philosopgy .box_explain .txt {
		margin-top: 0;
	}
}