@charset "UTF-8";

/* **************************
	共通
************************** */
h2 {
	font-size: 46px;
	margin: 0 0 40px 0;
	}

@media screen and (max-width: 768px) {
h2 {
	font-size: 38px;
	margin: 0 0 35px 0;
	}
}
@media screen and (max-width: 600px) {
.wbr-none {
	display: none;
	}
}



/* **************************
	ホーム FV
************************** */
.homeMV {
	width: 100%;
	height: 600px;
	position: relative;
	overflow: hidden;
	}
	.homeMV .imageWrap {
		width: auto;
		height: inherit;
		}
		.homeMV .imageWrap .image {
			width: 100%;
			height: 600px;
			position: relative;
			transition: all 0.2s linear;
			}
			.homeMV .imageWrap .image .txtBlk {
				display: block;
				position: absolute;
				line-height: 1.3;
				color: #fff;
				}
				.homeMV .imageWrap .image .txtBlk .sub {
					font-size: 30px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .sub2 {
					font-size: 48px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .ttl {
					font-size: 130px;
					letter-spacing: -10px;
					line-height: 1.4;
					}

		.homeMV .imageWrap .mv1 {
			background: url("http://nakagawayukitaka.com/_cms/wp-content/uploads/2025/08/top-img.jpg") no-repeat center top;
			background-size: auto 600px;
			}
			.homeMV .imageWrap .mv1 .txtBlk {
				position: absolute;
				right: calc(50% - 20px);
				right: 7%;
				top: calc(50% - 2.5em);
				top: 30%;
				color: #232088;
				text-decoration: none;
				padding: 0;
				}
				.homeMV .imageWrap .mv1 .txtBlk span {
					display: block;
					}


@media screen and (max-width: 1280px) {
			.homeMV .imageWrap .mv1 .txtBlk {
				right: 7%;
				top: 35%;
				}
				.homeMV .imageWrap .image .txtBlk .sub {
					font-size: 30px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .sub2 {
					font-size: 38px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .ttl {
					font-size: 110px;
					letter-spacing: -10px;
					line-height: 1.4;
					}
}

@media screen and (max-width: 1180px) {
		.homeMV .imageWrap .mv1 {
			background: url("http://nakagawayukitaka.com/_cms/wp-content/uploads/2025/08/top-img.jpg") no-repeat left 20% top;
			}
}

@media screen and (max-width: 1100px) {
			.homeMV .imageWrap .mv1 .txtBlk {
				font-size: 6vw;
				right: calc(50% - 30px);
				right: 5%;
				}

			.homeMV .imageWrap .mv1 .txtBlk {
				right: 7%;
				top: 35%;
				}
				.homeMV .imageWrap .image .txtBlk .sub {
					font-size: 25px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .sub2 {
					font-size: 32px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .ttl {
					font-size: 94px;
					letter-spacing: -10px;
					line-height: 1.4;
					}
}

@media screen and (max-width: 1000px) {
.homeMV {
	height: 60vw;
	}
		.homeMV .imageWrap .image {
			height: 60vw;
			}

			.homeMV .imageWrap .mv1 .txtBlk {
				right: 7%;
				top: 35%;
				}
				.homeMV .imageWrap .image .txtBlk .sub {
					font-size: 20px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .sub2 {
					font-size: 25px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .ttl {
					font-size: 74px;
					letter-spacing: -8px;
					line-height: 1.4;
					}
}

@media screen and (max-width: 900px) {
		.homeMV .imageWrap .mv1 {
			background-size: cover;
			}
}

@media screen and (max-width: 768px) {
			.homeMV .imageWrap .mv1 .txtBlk {
				right: 7%;
				top: 35%;
				}
				.homeMV .imageWrap .image .txtBlk .sub {
					font-size: 13px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .sub2 {
					font-size: 17px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .ttl {
					font-size: 55px;
					letter-spacing: -4px;
					line-height: 1.4;
					}
}

@media screen and (max-width: 600px) {
			.homeMV .imageWrap .mv1 .txtBlk {
				right: 7%;
				top: 35%;
				}
				.homeMV .imageWrap .image .txtBlk .sub {
					font-size: 11px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .sub2 {
					font-size: 14px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .ttl {
					font-size: 40px;
					letter-spacing: -4px;
					line-height: 1.4;
					}
}

@media screen and (max-width: 420px) {
			.homeMV .imageWrap .mv1 .txtBlk {
				right: 7%;
				top: 35%;
				}
				.homeMV .imageWrap .image .txtBlk .sub {
					font-size: 9px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .sub2 {
					font-size: 11px;
					line-height: 1.25;
					}
				.homeMV .imageWrap .image .txtBlk .ttl {
					font-size: 34px;
					letter-spacing: -4px;
					line-height: 1.4;
					}
}

/* **************************
	ホーム Name
************************** */
h1.namePlate {
	width: 330px;
	height: 170px;
	position: absolute;
	top: 635px;
	left: calc(50% + 220px);
	color: #fff;
	text-align: center;
	line-height: 1;
	}
	h1.namePlate a {
		display: block;
		width: 330px;
		height: 170px;
		text-decoration: none;
		background-color: #232088;
		border: 2px solid  #232088;
		border-radius: 6px;
		color: #fff;
		transition: 0.5s;
		background-image: linear-gradient(-45deg, #fff 15px, transparent 0);
		background-position: right 3px bottom 3px;
		}
	h1.namePlate a:hover {
		background-color: #fff;
		color: #232088;
		background-image: linear-gradient(-45deg, #232088 15px, transparent 0);
		background-position: right 3px bottom 3px;
		transition: 0.5s;
		}
	h1.namePlate .rubi {
		font-size: 18px;
		letter-spacing: 0.1em;
		display: block;
		margin: 0 0 5px 0;
		padding: 25px 0 0 0;
		}

	h1.namePlate em {
		font-size: 46px;
		display: block;
		margin: 0 0 25px 0;
		}

	h1.namePlate .btm {
		font-size: 18px;
		display: block;
		}

@media screen and (max-width: 1200px) {
h1.namePlate {
	left: calc(100% - 390px);
	}
}

@media screen and (max-width: 1000px) {
h1.namePlate {
	top: 63vw;
	}
}

@media screen and (max-width: 768px) {
h1.namePlate {
	display: inline-block;
	width: auto;
	height: auto;
	left: 26.5vw;
	top: calc(60vw + 100px);
	padding: 0 2.6vw 2.6vw;
	}
	h1.namePlate a {
		width: auto;
		height: auto;
		padding: 10px;
		}
	h1.namePlate .rubi {
		font-size: 2vw;
		margin: 0 0 0.6vw 0;
		padding: 0;
		}

	h1.namePlate em {
		font-size: 7.2vw;
		margin: 0 0 3.2vw 0;
		}

	h1.namePlate .btm {
		font-size: 2.8vw;
		}
}

@media screen and (max-width: 450px) {
h1.namePlate {
	left: 20vw;
	}
	h1.namePlate .rubi {
		font-size: 2.4vw;
		}

	h1.namePlate em {
		font-size: 8.6vw;
		}

	h1.namePlate .btm {
		font-size: 3.3vw;
		}
}


/* **************************
	コンテンツ
************************** */
.contentsWrap {
	padding: 0 0 100px 0;
	}

/* **************************
	メッセージ
************************** */
	.contentsWrap .message {
		width: 100%;
		text-align: center;
		background: url("../_images/index/kamiichi.png") no-repeat center bottom fixed;
		background-size: cover;
		}

		.contentsWrap .message .first {
			padding: 200px 30px 290px 30px;
			width: 100%;
			max-width: none;
			background: linear-gradient(0deg, rgba(255, 255, 255, 0) 5%, rgba(255, 255, 255, 0.95) 65%);
			}

			.contentsWrap .message .first h2 {
				font-size: 46px;
				color: #000;
				line-height: 1.2;
				margin: 0 0 36px 0;
				}

			.contentsWrap .message .first p {
				margin: 0 0 22px 0;
				line-height: 1.75;
				font-size: 18px;
				}

				.contentsWrap .message .first p span {
					display: block;
					}

			.contentsWrap .message .first .sign {
				width: 200px;
				margin: 15px auto 25px;
				text-align: center;
				}

@media screen and (max-width: 1000px) {
			.contentsWrap .message .first p {
				text-align: left;
				font-size: 16px;
				}

				.contentsWrap .message .first p span {
					display: inline;
					}
}

@media screen and (max-width: 768px) {
	.contentsWrap .message {
		background: url("../_images/index/kamiichi.png") no-repeat center bottom scroll;
		background-size: 200vw;
		}

		.contentsWrap .message .first {
			padding: 40vw 30px 50vw 30px;
			background: linear-gradient(0deg, rgba(255, 255, 255, 0) 5%, rgba(255, 255, 255, 0.95) 35%);
			}

			.contentsWrap .message .first h2 {
				font-size: 7.5vw;
				}

			.contentsWrap .message .first .sign {
				width: 160px;
				}
}

/* **************************
	ビジョン
************************** */
	.contentsWrap .vision {
		margin: 70px auto 50px auto;
		}

		.contentsWrap .vision h2 {
			text-align: center;
			line-height: 1.1;
			border-bottom: 1px solid #ddd;
			margin: 0 auto 40px;
			padding: 30px 0;
			position: relative;
			}

			.contentsWrap .vision h2 span {
				display: inline-block;
				}

			.contentsWrap .vision h2 .sub {
				font-size: 60%;
				}

		.contentsWrap .vision h3 {
			display: inline-block;
			background-color: #fff;
			border-radius: 8px 8px 0px 0px;
			-webkit-border-radius: 8px 8px 0px 0px;
			-moz-border-radius: 8px 8px 0px 0px;
			padding: 36px 0 0.45em 0;
			color: #232088;
			line-height: 1;
			font-size: 42px;
			margin: 0;
			width: 100%;
			text-align: center;
			}

			.contentsWrap .vision h3 span {
				color: #d70000;
				}

		.contentsWrap .vision p {
			font-size: 22px;
			line-height: 1.75;
			margin: 0 0 22px 0;
			padding: 0px;
			width: 100%;
			text-align: center;
			}

			.contentsWrap .vision p span {
				display: inline-block;
				}

@media screen and (max-width: 1100px) {
		.contentsWrap .vision h3 {
			font-size: 7.2vw;
			}
}

@media screen and (max-width: 1000px) {
			.contentsWrap .vision p span {
				display: inline;
				}
}

@media screen and (max-width: 768px) {
		.contentsWrap .vision h2 {
			padding: 15px 0 30px;
			margin: 0 auto 30px;
			}

		.contentsWrap .vision h2:before {
			width: 130px;
			height: 108px;
			}

		.contentsWrap .vision h3 {
			line-height: 1.2;
			font-size: 9.7vw;
			padding: 20px 0px 0.45em;
			}

			.contentsWrap .vision h3 span {
				display: block;
				}

		.contentsWrap .vision p {
			font-size: 18px;
			padding: 0 0 0 0px;
			}
}

@media screen and (max-width: 600px) {
		.contentsWrap .vision h2 {
			padding: 50px 0 30px;
			font-size: 32px;
			line-height: 1.2;
			}

		.contentsWrap .vision h2:before {
			left: calc(50% - 40px);
			top: -25px;
			width: 80px;
			height: 66px;
			}
}

/* **************************
	政策
************************** */
	.contentsWrap .msn {
		margin: 0 0 30px 0;
		width: 100%;
		position: relative;
		}

		.contentsWrap .msn .photo {
			position: absolute;
			top: 0;
			right: 0;
			border-radius: 16px 0px 0px 16px;
			width: 60.6vw;
			height: 560px;
			z-index: -1;
			}

		.contentsWrap .msn .txtBlock {
			position: absolute;
			left: calc(50% - 580px);
			top: 35px;
			}

			.contentsWrap .msn .txtBlock .icon {
				width: 304px;
				margin: 0 0 40px 0;
				}

			.contentsWrap .msn .txtBlock h2 {
				font-size: 36px;
				margin: 0 0 15px 0;
				line-height: 1.1;
				}

				.contentsWrap .msn .txtBlock h2 em {
					font-size: 70px;
					display: inline-block;
					background: #fff;
					padding: 10px 20px 15px 0;
					border-radius: 0px 8px 8px 0px;
					}

					.contentsWrap .msn .txtBlock h2 em span {
						color: #d70000;
						}

					.contentsWrap .msn .txtBlock h2 em ul {
						margin: 20px 0 0;
						padding: 0 0 0 40px;
						font-size: 30px;
						text-align: left;
						}
						.contentsWrap .msn .txtBlock h2 em ul li {
							margin: 10px 0 0;
							line-height: 1.2;
							list-style-type: disc;
							}

			.contentsWrap .msn .txtBlock .ctg {
				width: 360px;
				line-height: 1.75;
				margin: 0 0 30px 0;
				}

				.contentsWrap .msn .txtBlock .ctg span {
					display: inline-block;
					}

			.contentsWrap .msn .txtBlock .btnL {
				margin: 0 0;
				text-align: left;
				}

		.contentsWrap .msn1 .photo {
			background: url("../_images/index/msn02_pic.png") no-repeat center top;
			background-size: cover;
			}
		.contentsWrap .msn2 .photo {
			background: url("../_images/index/msn03_pic.png") no-repeat center top;
			background-size: cover;
			}
		.contentsWrap .msn3 .photo {
			background: url("../_images/index/msn01_pic.png") no-repeat center top;
			background-size: cover;
			}
		.contentsWrap .msn4 .photo {
			background: url("../_images/index/msn05_pic.png") no-repeat center top;
			background-size: cover;
			}
		.contentsWrap .msn5 .photo {
			background: url("../_images/index/kamiichi.png") no-repeat center top;
			background-size: cover;
			}

	.contentsWrap .msn2,
	.contentsWrap .msn4 {
		flex-direction: row;
		}

		.contentsWrap .msn2 .photo,
		.contentsWrap .msn4 .photo {
			border-radius: 0px 16px 16px 0px;
			position: absolute;
			top: 0;
			left: 0;
			}

			.contentsWrap .msn2 .txtBlock .icon,
			.contentsWrap .msn4 .txtBlock .icon {
				margin: 0 0 40px auto;
				}
				
			.contentsWrap .msn2 .txtBlock h2,
			.contentsWrap .msn4 .txtBlock h2 {
				margin: 0 0 20px auto;
				text-align: right;
				}

				.contentsWrap .msn2 .txtBlock h2 em,
				.contentsWrap .msn4 .txtBlock h2 em {
					padding: 10px 0 15px 20px;
					border-radius: 8px 0px 0px 8px;
					}

			.contentsWrap .msn2 .txtBlock .ctg,
			.contentsWrap .msn4 .txtBlock .ctg {
				margin: 0 0 30px auto;
				text-align: right;
				}

			.contentsWrap .msn2 .txtBlock .btnL,
			.contentsWrap .msn4 .txtBlock .btnL {
				margin: 0 0 0 auto;
				text-align: right;
				}

				.contentsWrap .msn2 .txtBlock .btnL a,
				.contentsWrap .msn4 .txtBlock .btnL a {
					text-align: left;
					}


@media screen and (max-width: 1160px) {
		.contentsWrap .msn .txtBlock {
			left: 0;
			}
}

@media screen and (max-width: 1000px) {
		.contentsWrap .msn .photo {
			height: 56vw;
			}

			.contentsWrap .msn .txtBlock .icon {
				width: 30%;
				}
}

@media screen and (max-width: 768px) {
	.contentsWrap .msn {
		margin: 0 0 50px 0;
		}

		.contentsWrap .msn .photo {
			position: relative;
			width: 95vw;
			left: 5vw;
			}

		.contentsWrap .msn .txtBlock {
			position: relative;
			top: -50px;
			width: auto;
			padding: 0 30px 0 50px;
			}

			.contentsWrap .msn .txtBlock .icon {
				width: 45%;
				border-radius: 8px 8px 0px 0px;
				padding: 10px 20px 0 20px;
				background-color: #fff;
				margin: 0 0 20px 0;
				}

		.contentsWrap .msn2 .photo,
		.contentsWrap .msn4 .photo {
			position: relative;
			left: 0;
			}

		.contentsWrap .msn2 .txtBlock,
		.contentsWrap .msn4 .txtBlock {
			position: relative;
			top: -50px;
			padding: 0 30px 0 40px;
			}

			.contentsWrap .msn2 .txtBlock .icon,
			.contentsWrap .msn4 .txtBlock .icon {
				margin: 0 0 30px 0;
				}

			.contentsWrap .msn2 .txtBlock h2,
			.contentsWrap .msn4 .txtBlock h2 {
				margin: 0 0 15px 0;
				text-align: left;
				}

				.contentsWrap .msn2 .txtBlock h2 em,
				.contentsWrap .msn4 .txtBlock h2 em {
					padding: 10px 20px 15px 0;
					}

			.contentsWrap .msn2 .txtBlock .btnL,
			.contentsWrap .msn4 .txtBlock .btnL {
				margin: 0 0 0 0;
				text-align: left;
				}
}

@media screen and (max-width: 640px) {
		.contentsWrap .msn .txtBlock {
			padding: 0 20px;
			}
}

@media screen and (max-width: 600px) {
			.contentsWrap .msn .txtBlock h2 {
				font-size: calc(6vw + 2px);
				}

				.contentsWrap .msn .txtBlock h2 em {
					font-size: 7vw;
					}
						.contentsWrap .msn .txtBlock h2 em ul li {
							font-size: 7vw;	
							}
}

	.contentsWrap .msn-matome {
		width: 90%;
		margin: 0 auto;
		padding: 20px 0 60px;
		}

		.contentsWrap .msn-matome h2 {
			font-size: 46px;
			line-height: 1.2;
			margin: 60px 0;
			text-align: center;
			}

		.contentsWrap .msn-matome div {
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
			}
			.contentsWrap .msn-matome div a {
				display: block;
				width: calc(30% - 20px);
				margin: 0 10px 20px;
				}
@media screen and (max-width: 600px) {
		.contentsWrap .msn-matome h2 {
			font-size: 32px;
			}
}


/* **************************
	とは
************************** */
	.contentsWrap .about {
		width: 100%;
		padding: 90px 0 120px;
		background-color: #f6f6f6;
		}

		.contentsWrap .about h2 {
			font-size: 46px;
			line-height: 1;
			margin: 0 0 60px 0;
			text-align: center;
			}

			.contentsWrap .about h2 span {
				font-size: 60%;
				}

		.contentsWrap .about .inner {
			width: 100%;
			position: relative;
			}

			.contentsWrap .about .inner .photo {
				position: absolute;
				top: 0;
				left: 0;
				width: 41vw;
				height: 44vw;
				max-height: 670px;
				background: url("../_images/index/nakagawa-img01.png") no-repeat left 0px;
				background-size: cover;
				}

			.contentsWrap .about .inner .body {
				padding: 36px 30px 0 30px;
				z-index: 1;
				position: relative;
				}

				.contentsWrap .about .inner .body .txtBlock {
					padding: 36px 0 36px 36px;
					width: calc(50% + 220px);
					margin: 0 0 37px auto;
					background-color: #F6F6F6;
					border-radius: 8px 0px 0px 8px;
					position: relative;
					}

					.contentsWrap .about .inner .body .txtBlock .bodyTxt {
						font-size: 24px;
						line-height: 1.75;
						margin: 0 0 20px 0;
						}

					.contentsWrap .about .inner .body .txtBlock .btnS {
						text-align: left;
						}

						.contentsWrap .about .inner .body .txtBlock .btnS a {
							margin-bottom: 10px;
							}

				.contentsWrap .about .inner .body .photos {
					display: flex;
					flex-wrap: wrap;
					justify-content: space-between;
					width: calc(50% + 70px);
					margin: 0 0 0 auto;
					}
					.contentsWrap .about .inner .body .photos img {
						width: calc((100% - 20px) / 3);
						margin-bottom: 10px;
						}

@media screen and (max-width: 1100px) {
			.contentsWrap .about .inner .photo {
				width: 50vw;
				height: 55vw;
				}

				.contentsWrap .about .inner .body .txtBlock {
					width: calc(50% + 70px);
					}

					.contentsWrap .about .inner .body .txtBlock .bodyTxt {
						font-size: 22px;
						}

				.contentsWrap .about .inner .body .photos {
					width: calc(50% - 20px);
					}
}

@media screen and (max-width: 768px) {
	.contentsWrap .about {
		padding: 40px 0 40px;
		}

		.contentsWrap .about h2 {
			font-size: 38px;
			}

			.contentsWrap .about .inner .photo {
				position: relative;
				width: 100vw;
				height: 100vw;
				}

			.contentsWrap .about .inner .body {
				padding: 0 30px 0 30px;
				top: -50px;
				left: 0;
				}

				.contentsWrap .about .inner .body .txtBlock {
					padding: 25px 25px 25px 25px;
					width: 98%;
					margin: 0 auto 37px auto;
					border-radius: 8px 8px 0px 0px;
					}

				.contentsWrap .about .inner .body .photos {
					width: 90%;
					margin: 0 auto 0 auto;
					}
}

@media screen and (max-width: 500px) {
					.contentsWrap .about .inner .body .txtBlock .bodyTxt {
						line-height: 1.5;
						}
}


/* **************************
	プロフィール
************************** */
	.contentsWrap .profile {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		}
		.contentsWrap .profile div {
			width: calc(33.3333% - 40px);
			margin: 0 20px;
			}

			.contentsWrap .profile div p,
			.contentsWrap .profile div dt,
			.contentsWrap .profile div dd {
				line-height: 1.4;
				}
			
			.contentsWrap .profile div dl {
				display: flex;
				flex-wrap: wrap;
				margin: 20px 0 0;
				}
				.contentsWrap .profile div dt {
					width: 35%;
					margin: 0 0 10px;
					}
				.contentsWrap .profile div dd {
					width: 65%;
					margin: 0 0 10px;
					}

			.contentsWrap .profile div p span {
				display: block;
				font-size: 32px;
				}

			.contentsWrap .profile div p.profile-name {
				margin: 20px 0 0;
				}

			.contentsWrap .profile div p.profile-birthday {
				margin: 20px 0 0;
				color: #004887;
				}

	.contentsWrap .profile-border {
		width: 100%;
		height: 0;
		margin:  -1px 0 0 0;
		padding: 0;
		border-bottom: 20px solid #004887;
		}

@media screen and (max-width: 1024px) {
		.contentsWrap .profile div {
			width: calc(100% - 40px);
			margin: 0 20px;
			text-align: center;
			}
			.contentsWrap .profile div img {
				max-width: 300px;
				}
		.contentsWrap .profile div:last-child {
			min-width: 280px;
			width: calc(40% - 40px);
			}
}

	.contentsWrap .ryakureki {
		width: 90%;
		margin: 0 auto;
		padding: 90px 0 120px;
		}

		.contentsWrap .ryakureki h2 {
			font-size: 46px;
			line-height: 1;
			margin: 0 0 60px 0;
			text-align: center;
			}

		.contentsWrap .ryakureki dl {
			display: flex;
			flex-wrap: wrap;
			max-width: 700px;
			margin: 0 auto;
			}
			.contentsWrap .ryakureki dt {
				width: 200px;
				margin: 0 0 15px;
				line-height: 1.4;
				}
			.contentsWrap .ryakureki dd {
				width: calc(100% - 200px);
				margin: 0 0 15px;
				line-height: 1.4;
				}


@media screen and (max-width: 768px) {
	.contentsWrap .ryakureki {
		padding: 40px 0 40px;
		}

		.contentsWrap .ryakureki h2 {
			font-size: 38px;
			}
}


/* **************************
	事務所案内
************************** */
	.contentsWrap .office {
		padding: 90px 0;
		}
		.contentsWrap .office div {
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
			align-items: center;
			}
			.contentsWrap .office div h3 {
				margin: 0;
				padding: 20px;
				line-height: 1.4;
				}
			.contentsWrap .office div p {
				margin: 0;
				padding: 20px;
				line-height: 1.4;
				}

@media screen and (max-width: 768px) {
	.contentsWrap .office {
		padding: 40px 0 40px;
		}
}


	#mission .contentsWrap {
		/*background-color: #0180ae;*/
		}


/* **************************
	政策
************************** */
	.contentsWrap .msn-d {
		margin: 0;
		padding: 150px 0 30px;
		width: 100%;
		position: relative;
		}

		.contentsWrap .msn-d .photo {
			border-radius: 16px;
			width: 60.6vw;
			height: 560px;
			margin: 0 auto 20px;
			}

		.contentsWrap .msn-d .txtBlock {
			width: 60.6vw;
			padding: 0 10px;
			}

			.contentsWrap .msn-d .txtBlock .icon {
				position: absolute;
				top: 90px;
				left: 17.5vw;
				width: 304px;
				margin: 0;
				}

			.contentsWrap .msn-d .txtBlock h2 {
				font-size: 36px;
				margin: 0 0 15px 0;
				line-height: 1.1;
				}

				.contentsWrap .msn-d .txtBlock h2 em {
					font-size: 48px;
					display: inline-block;
					background: #fff;
					padding: 10px 20px 15px 0;
					border-radius: 0px 8px 8px 0px;
					}

					.contentsWrap .msn-d .txtBlock h2 em span {
						color: #d70000;
						}

					.contentsWrap .msn-d .txtBlock h2 em ul {
						margin: 30px 0 0;
						padding: 0;
						font-size: 30px;
						text-align: left;
						}
						.contentsWrap .msn-d .txtBlock h2 em ul li {
							margin: 10px 0 0;
							font-size: 28px;
							line-height: 1.4;
							}

			.contentsWrap .msn-d .txtBlock .ctg {
				width: 360px;
				line-height: 1.75;
				margin: 0 0 30px 0;
				}

				.contentsWrap .msn-d .txtBlock .ctg span {
					display: inline-block;
					}

			.contentsWrap .msn-d .txtBlock .btnL {
				margin: 0 0;
				text-align: left;
				}

		.contentsWrap .msn-d1 .photo {
			background: url("../_images/index/msn01_pic.png") no-repeat center top;
			background-size: cover;
			}
		.contentsWrap .msn-d2 .photo {
			background: url("../_images/index/msn02_pic.png") no-repeat center top;
			background-size: cover;
			}
		.contentsWrap .msn-d3 .photo {
			background: url("../_images/index/msn03_pic.png") no-repeat center top;
			background-size: cover;
			}
		.contentsWrap .msn-d4 .photo {
			background: url("../_images/index/msn04_pic.png") no-repeat center top;
			background-size: cover;
			}
		.contentsWrap .msn-d5 .photo {
			background: url("../_images/index/msn05_pic.png") no-repeat center top;
			background-size: cover;
			}

	.contentsWrap .msn-d5 {
		margin: 0 0 120px 0;
		}


@media screen and (max-width: 1160px) {
		.contentsWrap .msn-d .txtBlock {
			left: 0;
			}
}

@media screen and (max-width: 1000px) {
		.contentsWrap .msn-d .photo {
			height: 56vw;
			}

			.contentsWrap .msn-d .txtBlock .icon {
				width: 30%;
				}
}

@media screen and (max-width: 768px) {
	.contentsWrap .msn-d {
		margin: 0 0 50px 0;
		}

		.contentsWrap .msn-d .photo {
			position: relative;
			width: 95vw;
			left: 5vw;
			}

		.contentsWrap .msn-d .txtBlock {
			position: relative;
			top: -50px;
			width: auto;
			padding: 0 30px 0 50px;
			}

			.contentsWrap .msn-d .txtBlock .icon {
				position: relative;
				top: auto;
				left: auto;
				width: 45%;
				border-radius: 8px 8px 0px 0px;
				padding: 10px 20px 0 20px;
				background-color: #fff;
				margin: 0 0 20px 0;
				}
}

@media screen and (max-width: 640px) {
		.contentsWrap .msn-d .txtBlock {
			padding: 0 30px 0 40px;
			}
}

@media screen and (max-width: 600px) {
			.contentsWrap .msn-d .txtBlock h2 {
				font-size: calc(6vw + 2px);
				}

				.contentsWrap .msn-d .txtBlock h2 em {
					font-size: 7vw;
					}
}

.policy {
	margin: 80px 0;
	text-align: center;
	font-size: 48px;
	line-height: 1.2;
	color: #232088;
	}
	.policy span {
		font-size: 120px;
		color: #df1815;
		}

.policy-list {
	width: 60.6vw;
	margin: 0 auto;
	padding: 0 0 0 40px;
	font-size: 28px;
	line-height: 1.4;
	}
	.policy-list li {
		margin: 30px 0;
		list-style-type: disc;
		}




	.goiken {
	
		}
		.goiken-title {
			position: relative;
			width: 550px;
			margin: 0 auto 80px;
			padding: 40px 0;
			border: 2px solid #232088;
			border-radius: 50%;
			text-align: center;
			font-size: 32px;
			line-height: 1.2;
			color: #232088;
			}
			.goiken-title::before {
				position: absolute;
				bottom: -15px;
				right: 50px;
				display: block;
				content: "";
				width: 40px;
				height: 40px;
				border: 2px solid #232088;
				border-radius: 50%;
				}
			.goiken-title::after {
				position: absolute;
				bottom: -25px;
				right: 40px;
				display: block;
				content: "";
				width: 25px;
				height: 25px;
				border: 2px solid #232088;
				border-radius: 50%;
				}

			.goiken-first {
				width: 60.6vw;
				margin: 0 auto;
				padding: 20px;
				border-bottom: 4px dashed #232088;
				text-align: center;
				font-size: 28px;
				line-height: 1.4;
				color: #232088;
				}
			.goiken-r {
				display: flex;
				flex-wrap: wrap;
				justify-content: flex-end;
				align-items: center;
				width: 60.6vw;
				margin: 0 auto;
				padding: 20px;
				border-bottom: 4px dashed #232088;
				}
				.goiken-r .goiken-icon {
					display: flex;
					flex-wrap: wrap;
					justify-content: center;
					align-items: center;
					width: 70px;
					height: 70px;
					margin: 0 0 0 30px;
					border: 2px solid #232088;
					border-radius: 50%;
					font-size: 24px;
					line-height: 1.4;
					color: #232088;
					order: 2;
					}
				.goiken-r .goiken-text {
					text-align: right;
					font-size: 24px;
					line-height: 1.4;
					order: 1;
					}
			.goiken-l {
				display: flex;
				flex-wrap: wrap;
				justify-content: flex-start;
				align-items: center;
				width: 60.6vw;
				margin: 0 auto;
				padding: 20px;
				border-bottom: 4px dashed #232088;
				}
				.goiken-l .goiken-icon {
					display: flex;
					flex-wrap: wrap;
					justify-content: center;
					align-items: center;
					width: 70px;
					height: 70px;
					margin: 0 30px 0 0;
					border: 2px solid #232088;
					border-radius: 50%;
					font-size: 24px;
					line-height: 1.4;
					color: #232088;
					order: 1;
					}
				.goiken-l .goiken-text {
					text-align: left;
					font-size: 24px;
					line-height: 1.4;
					order: 2;
					}
			.goiken-last {
				width: 60.6vw;
				margin: 0 auto 120px;
				padding: 20px;
				text-align: center;
				font-size: 28px;
				line-height: 1.4;
				color: #232088;
				}

@media screen and (max-width: 768px) {
	.goiken-title {
		width: 90%;
		}
			.goiken-first,
			.goiken-r,
			.goiken-l,
			.goiken-last {
				width: 90%;
				}
			.goiken-r {
				justify-content: flex-start;
				}
				.goiken-r .goiken-icon {
					margin: 0 30px 0 0;
					order: 1;
					}
				.goiken-r .goiken-text {
					text-align: left;
					order: 2;
					}
}


	.sitsumon {
	
		}
		.sitsumon-title {
			position: relative;
			width: 550px;
			margin: 0 auto 80px;
			padding: 40px 0;
			border: 2px solid #232088;
			text-align: center;
			font-size: 32px;
			line-height: 1.2;
			color: #232088;
			}
			.sitsumon-title::before {
				position: absolute;
				bottom: -30px;
				right: -30px;
				display: block;
				content: "";
				width: 40px;
				height: 40px;
				border: 2px solid #232088;
				}
			.sitsumon-title::after {
				position: absolute;
				bottom: -45px;
				right: -45px;
				display: block;
				content: "";
				width: 25px;
				height: 25px;
				border: 2px solid #232088;
				}
			.sitsumon-first {
				width: 60.6vw;
				margin: 0 auto;
				padding: 20px;
				border-bottom: 4px dashed #232088;
				text-align: center;
				font-size: 28px;
				line-height: 1.4;
				color: #232088;
				}
			.sitsumon-text {
				display: flex;
				
				width: 60.6vw;
				margin: 0 auto;
				padding: 20px;
				border-bottom: 4px dashed #232088;
				text-align: left;
				font-size: 24px;
				line-height: 1.4;
				}
				.sitsumon-text div:first-child {
					padding: 0 10px 0 0;
					}

@media screen and (max-width: 768px) {
	.sitsumon-title {
		width: 90%;
		}
			.sitsumon-first,
			.sitsumon-text {
				width: 90%;
				}
			
}
