/*-----------------------------------------------------------------------------------------

1001 INDEX .area-hero
1002 INDEX .area-document
1111 area-fear
1112 area-consultation
1113 area-faq
1114 area-recruit
1115 area-access

----------------------------------------------------------------------------------------- */
main {
	 padding-bottom:0;
}



/*-----------------------------------------------------------------------------------------
1001 INDEX .area-hero
----------------------------------------------------------------------------------------- */
@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 768px) {}

@media screen and (max-width: 520px) {}

@media screen and (max-width: 420px) {}

@media screen and (max-width: 375px) {}










/*-----------------------------------------------------------------------------------------
1002 INDEX .area-document
----------------------------------------------------------------------------------------- */
 .area-document {
	padding: 15px 0;
	background: #D81B60;
}

.area-document a {
	color: White;
	text-align: center;
	font-size: 3.0rem;
	display: block;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	line-height: 1.3;
}

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

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 768px) {
	.area-document a {
		font-size: 2.0rem;
		letter-spacing: 0;
		text-indent: 0;
	}
}

@media screen and (max-width: 520px) {}

@media screen and (max-width: 420px) {}

@media screen and (max-width: 375px) {}









/*-----------------------------------------------------------------------------------------
1111 area-fear
----------------------------------------------------------------------------------------- */
.area-feat {
	overflow-x: hidden;
	width: 100%;
	display:block;
}

.area-feat .container {
	border-color: olive;
}

.area-feat {
	background: white;
	padding: 30px 0;
	margin: 0;
	position: relative;
}

.area-feat ul {
	background: transparent;
	padding: 0;
	margin: 0;
	position: relative;
}

.area-feat ul li {
	background: #F4F4F4;
	padding: 60px 0 60px 100px;
	margin: 60px 0;
	position: relative;
	width: calc(100% / 12 * 11);
	z-index: 1;
}

.area-feat ul li::before {
	content: '';
	display: block;
	width: 50vw;
	height: 10px;
	background: #f4f4f4;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translate(-50vw, -50%);
	transform: translate(-50vw, -50%);
	z-index: -1;
}

.area-feat ul li:nth-child(even)::before {
	display: none;
}

.area-feat ul li:nth-child(even)::after {
	content: '';
	display: block;
	width: 50vw;
	height: 10px;
	background: #f4f4f4;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(50vw, -50%);
	transform: translate(50vw, -50%);
	z-index: -1;
}

.area-feat ul li a {
	display: block;
}


.area-feat ul li img.text {
	width: auto;
	max-width: 100%;
	position: absolute;
	top: 10px;
	left: 70px;
	z-index: 2;
}


.area-feat ul li dl {
	border: 0px solid red;
	padding: 0;
	margin: 0;
	width: 1070px;
	background: white;
	position: relative;
	z-index: 1;
}

.area-feat ul li dl::after {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	border: 2px solid white;
	position: absolute;
	z-index: -1;
	top: 10px;
	left: 10px;
}



.area-feat ul li dl dt {
	border: 0px solid red;
	padding: 30px;
	margin: 0;
	width: calc(100% / 12 * 4);
	order: 1;
}

.area-feat ul li dl dd {
	border: 0px solid orange;
	padding: 0;
	margin: 0;
	width: calc(100% / 12 * 8);
	order: 2;
}

.area-feat h3 {
	font-size: 7.0rem;
	line-height: 1.1;
	font-weight: 600;
	color: #9f433c;
	padding: 0;
	margin: 90px 0 15px 0;
	letter-spacing: 0.-5em;
	position: relative;
	z-index: 1;
}

.area-feat h3:before {
	content: '';
	display: block;
	width: 80px;
	height: 80px;
	position: absolute;
	top: -15px;
	left: -15px;
	background: url(../img/index/bg-text-dotte-yellow.png) center center no-repeat;
	background-size: contain;
	z-index: -1;
}

.area-feat h3:after {
	content: '';
	display: block;
	width: 80px;
	height: 80px;
	position: absolute;
	bottom: -5px;
	left: 320px;
	background: url(../img/index/bg-text-dotte-yellow.png) center center no-repeat;
	background-size: contain;
	z-index: -1;
}


.area-feat h4 {
	font-size: 1.9rem;
	line-height: 1.1;
	font-style: italic;
	color: white;
	background: #26466D;
	padding: 0.6em 1.5em;
	margin: 0 0 10px 0;
	display: inline-block;
}

.area-feat p {
	font-size: 2.7rem;
	line-height: 1.3;
	font-weight: 600;
	padding: 0;
	margin: 0.1em 0;
	background: transparent;
	text-align: left;
}

.area-feat p i {
	color: #FBC300;
}



.area-feat ul li:nth-child(even) {
	padding-left: 0;
	margin-left: auto;
}

.area-feat ul li:nth-child(even)::before {
	left: auto;
	right: 0;
	-webkit-transform: translate(75%, -50%);
	transform: translate(75%, -50%);
	z-index: -1;
}


.area-feat ul li:nth-child(even) dl {
	margin-left: -100px;
}


.area-feat ul li:nth-child(even) dl dt {
	order: 2;
	padding: 30px 90px 0 0;
	width: calc(100% / 12 * 5);
}


.area-feat ul li:nth-child(even) dl dd {
	order: 1;
	width: calc(100% / 12 * 7);
}


.area-feat ul li:nth-child(even) h3 {
	color: #26466D;
	padding: 0;
	margin-top: 45px
}

.area-feat ul li:nth-child(even) h3:before {
	background: url(../img/index/bg-text-dotte-mint.png) center center no-repeat;
	background-size: contain;
}

.area-feat ul li:nth-child(even) h3:after {
	left: 460px;
	background: url(../img/index/bg-text-dotte-mint.png) center center no-repeat;
	background-size: contain;
	z-index: -1;
}

.area-feat ul li:nth-child(even) img.text {
	top: 10px;
	left: auto;
	right: 10px;
}

.area-feat ul li:nth-child(even) p i {
	color: #69CDAA
}

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

	.area-feat ul li {
		width:100%;
		padding:60px;
	}

	.area-feat ul li dl {
		width:100%;
	}

	.area-feat h3 {
		font-size:5vw;
	}

	.area-feat h3:before {
	}

	.area-feat h3:after {
		left: 40%;
	}

	.area-feat h4 {
		font-size: 1.5vw;
	}

	.area-feat p {
		font-size: 1.8vw;

	}

	.area-feat ul li:nth-child(even) {
		padding:60px;
	}

	.area-feat ul li:nth-child(even) dl {
		margin-left:auto;
	}

	.area-feat ul li:nth-child(even) dl dt {
		order: 2;
		padding: 30px 15px;
		width: calc(100% / 12 * 4);
	}

	.area-feat ul li:nth-child(even) dl dd {
		order: 1;
		width: calc(100% / 12 * 8);
		padding-left:30px;
	}

	.area-feat ul li:nth-child(even) h3:after {
		left: 60%;
	}


}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 768px) {
	.area-feat ul li,
	.area-feat ul li:nth-child(even) {
		padding:30px;
	}

	.area-feat ul li dl,
	.area-feat ul li:nth-child(even) dl {
		padding:15px;
	}

	.area-feat ul li dl dt,
	.area-feat ul li:nth-child(even) dl dt {
		padding: 15px;
		width:100%;
		order:1;
	}


	.area-feat ul li dl dd,
	.area-feat ul li:nth-child(even) dl dd {
		padding: 15px;
		width:100%;
		order:2;
	}

	.area-feat ul li h3,
	.area-feat ul li:nth-child(even) h3 {
		font-size:7.5vw;
		margin:0.5em 0;
	}

	.area-feat ul li h4 {
		font-size:3vw;
		margin:0.5em 0;
		padding:0.75em;
	}

	.area-feat ul li p {
		font-size:3vw;
	}

}

@media screen and (max-width: 520px) {}

@media screen and (max-width: 420px) {
	.area-feat ul li,
	.area-feat ul li:nth-child(even) {
		padding:15px;
	}

	.area-feat ul li dl,
	.area-feat ul li:nth-child(even) dl {
		padding:5px;
	}


	.area-feat ul li h3,
	.area-feat ul li:nth-child(even) h3 {
		font-size:13vw;
	}

	.area-feat ul li h3 br {
		display:none;
	}

	.area-feat ul li h4,
	.area-feat ul li p {
		font-size:6vw;
	}

}

@media screen and (max-width: 375px) {}









/*-----------------------------------------------------------------------------------------
1112 area-consultation
----------------------------------------------------------------------------------------- */
.area-consultation {
	border: 0px solid red;
	background: #FCCF00;
	padding: 150px 0 0 0;
	position: relative;
}

.area-consultation::before {
	content: 'CONSULTATION';
	position: absolute;
	top: 1vw;
	right: 60px;
	color: #FBC300;
	font-size: 120px;
	font-family: 'Oswald', sans-serif;
	letter-spacing: -0.05em;
}

.area-consultation dl {
	border: 0px solid black;
	width: 100%;
	display: block;
	position: relative;
	padding: 0;
	margin: 0;
}

.area-consultation dl dt {
	border: 0px solid black;
	width: 75%;
	display: block;
	position: relative;
	padding: 0;
	margin: 0;

}

.area-consultation dl dd {
	border: 0px solid red;
	width: 1200px;
	display: block;
	position: absolute;
	top: 75px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	z-index: 2;
	padding: 0 15px;
	margin: 0;
}

.area-consultation h3 {
	background: #111;
	text-align: right;
	color: White;
	font-size: 4.0rem;
	line-height: 1.3;
	font-weight: 600;
	font-style: italic;
	display: block;
	padding: 10px;
	margin: 0 0 10px auto;
	text-align: center;
	letter-spacing: 0.01em;
}

.area-consultation h3.first {
	width: 9em;
}

.area-consultation h3.second {
	width: 16em;
}

.area-consultation h3 strong {
	color: #FCCF00
}

.area-consultation h4 {
	font-size: 2.7rem;
	font-weight: 600;
	text-align: right;
	line-height: 1.4;
}

.area-consultation h5 {
	font-size: 2.0rem;
	font-weight: 600;
	text-align: right;
	line-height: 1.4;
}

.area-consultation .btn-more {
	border: 0px solid red;
	-webkit-justify-content: center;
	-ms-flex-pack: justify;
	justify-content: center;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
	position: relative;
}

.area-consultation .btn-more a {
	position: absolute;
	z-index: 11;
	top: 0;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	font-size: 2.0rem;
	border-radius: 50px;
	border: 10px solid white;
	padding: 1.25em 4em;
}

@media screen and (max-width: 1200px) {
	.area-consultation {
		padding-top:18vw
	}

	.area-consultation::before {
		font-size: 14vw;
	}

	.area-consultation dl {
	-webkit-justify-content : center;
		-ms-flex-pack : justify;
		justify-content : center;
		-webkit-align-items : center;
		-ms-flex-align : center;
		align-items : center;
		display : -webkit-flex;
		display :-ms-flexbox;
		display : flex;
		-webkit-flex-wrap : wrap;
		-ms-flex-wrap : wrap;
		flex-wrap : wrap;

	}

	.area-consultation dl dt {
		width: 100%;
		order:2
	}

	.area-consultation dl dd {
		width:100%;
		order:1;
		position:static;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
		padding:0;
	}

	.area-consultation h3 {
		text-align:left;
		font-size:7vw;
		margin:0;
		padding:0;
	}

	.area-consultation h3.first {
		width: auto;
		padding:10px 10px 0 10px
	}

	.area-consultation h3.second {
		width: auto;
		padding:0 10px 10px 10px

	}

	.area-consultation h4 {
		font-size:4vw;
		text-align:center;
		margin:0.5em 0 0.25em;
	}

	.area-consultation h5 {
		font-size:3vw;
		text-align:center;
		margin:0 0 1.5em 0;

	}

	.area-consultation .btn-more a {
		border-radius: 100px;
		width:90%;
		text-align:center;
		font-size:2.5vw;
	}

}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 768px) {
	.area-consultation .btn-more a {
		font-size:3.5vw
	}
}

@media screen and (max-width: 520px) {}

@media screen and (max-width: 420px) {}

@media screen and (max-width: 375px) {}









/*-----------------------------------------------------------------------------------------
1113 area-faq
----------------------------------------------------------------------------------------- */
.area-faq {
	background: white;
	padding: 12.5vw 0 0 0;
	margin: 0;
	position: relative;
	z-index: 0;
	overflow-x:hidden;
}

.area-faq::before {
	content: 'Q&A';
	position: absolute;
	top: 1vw;
	left: 30px;
	color: #F4F4F4;
	font-size: 12.5vw;
	font-family: 'Oswald', sans-serif;
}

.area-faq .box {
	background: transparent;
	border: 0px solid red;
	position: relative;
	z-index: 0;
	padding: 60px 0;
}

.area-faq .box::before {
	content: '';
	width: calc(100% / 12 * 10);
	height: 100%;
	display: block;
	background: #f4f4f4;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	z-index: -1;
}

.area-faq h3 {
	font-size: 4.7rem;
	line-height: 1.2;
	font-weight: 600;
	text-align: center;
	padding: 0;
	margin: 0;
}

.area-faq ul {
	border: 0px solid red;
	padding: 0;
	margin: 0;
}

.area-faq ul li {
	border: 0px solid red;
	padding: 60px 30px;
	margin: 60px 0;
	background: white;
	width: calc((100% / 12 * 10) + 30px);
	position: relative;
}

.area-faq ul li:nth-child(even) {
	margin: 0 0 0 auto;
}


.area-faq h4 {
	font-size: 4.0rem;
	line-height: 1.2;
	padding: 0;
	margin: 0 0 0.75em 0;
	font-weight: 600;
}

.area-faq h4 br {
	display: none;
}

.area-faq dl {
	border: 0px solid black;
	padding: 0;
	margin: 0;
}

.area-faq dl dt {
	font-size: 2.0rem;
	line-height: 1.5;
	font-weight: 600;
	color: #009bdd;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0;
	margin: 0 0 0.5em 0;
}

.area-faq dl dd {
	font-size: 1.6rem;
	line-height: 1.5;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0;
	margin: 0 0 0.5em 0;
}


.area-faq dl dt strong,
.area-faq dl dd strong {
	border: 0px solid red;
	width: 36px
}

.area-faq dl dt span,
.area-faq dl dd span {
	border: 0px solid orange;
	width: calc(100% - 36px);
	font-weight: inherit
}

.area-faq ul li:nth-child(odd)::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right:-24vw;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	border: 0px solid red;
	width: 20vw;
	height: 20vw;
	background: url(../img/index/face-02.jpg) center center no-repeat;
	background-size: contain;
}

.area-faq ul li:nth-child(even)::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: -23vw;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	border: 0px solid red;
	width: 20vw;
	height: 20vw;
	background: url(../img/index/face-01.jpg) center center no-repeat;
	background-size: contain;
}


.area-faq h3 a,
.area-faq h4 a {
	color:inherit;
	text-decoration:none;
}



@media screen and (max-width: 1200px) {
	.area-faq {
		padding-top:20vw;
	}

	.area-faq::before {
	top: 5vw;
}

.area-faq ul li:nth-child(odd)::after {
	top: -3vw;
	right:-3vw;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
	width: 18vw;
	height: 18vw;
}

.area-faq ul li:nth-child(even)::before {
	top: auto;
	bottom:-3vw;
	left:-14vw;
	-webkit-transform: translate(0, 0%);
	transform: translate(0, 0%);
	width: 18vw;
	height: 18vw;
}



}

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 768px) {
	.area-faq::before {
		left: 1vw;
	}

	.area-faq .box {
		padding: 60px 0;
	}

	.area-faq ul li {
		padding: 30px 15px;
		margin: 30px 0;
	}

	.area-faq h4 {
		font-size: 3.0rem;
	}

	.area-faq dl dt strong,
	.area-faq dl dd strong {
		width: 30px
	}

	.area-faq dl dt span,
	.area-faq dl dd span {
		width: calc(100% - 30px);
	}

	.area-faq ul li:nth-child(even)::before {
		top: -3vw;
		bottom:auto;
		left:auto;
		right:-3vw;
	}

}

@media screen and (max-width: 520px) {
	.area-faq::before {
		display: none;
	}

	.area-faq .box {
		padding: 30px 0;
	}

	.area-faq .box::before {
		width: calc(100% / 12 * 12);
	}

	.area-faq h3 {
		font-size: 3.7rem;
	}


	.area-faq ul li {
		width: calc((100% / 12 * 11));
		margin-left: auto;
		margin-right: auto;
	}

	.area-faq ul li:nth-child(even) {
		margin-left: auto;
		margin-right: auto;
	}

}

@media screen and (max-width: 420px) {
	.area-faq h4 {
		text-align: center;
	}

	.area-faq h4 br {
		display: block;
		;
	}
}

@media screen and (max-width: 375px) {}









/*-----------------------------------------------------------------------------------------
1114 area-recruit
----------------------------------------------------------------------------------------- */
.area-recruit {
	padding: 120px 0;
	background: white;
	position: relative;
	z-index: 0;
}

.area-recruit dl {
	padding: 0;
	margin: 0;
	position: relative;
	z-index: 1;
	top: 0;
	left: 0;
	background: white;
}

.area-recruit dl::after {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	border: 2px solid #98CDDA;
	position: absolute;
	top: 5px;
	left: 5px;
	z-index: -1;
}

.area-recruit dl dt {
	-webkit-justify-content: center;
	-ms-flex-pack: justify;
	justify-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
	background: #98CDDA;
	color: White;
	padding: 60px 45px;
	width: 400px
}

.area-recruit dl dt span {
	display: block;
	font-family: 'Oswald', sans-serif;
	font-size: 10.0rem;
	line-height: 1.1;
}

.area-recruit dl dt span small {
	display: block;
	font-size: 0.35em;
}

.area-recruit dl dd {
	-webkit-justify-content: flex-start;
	-ms-flex-pack: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
	background: white;
	color: #589eaf;
	padding: 0 30px;
	border: 2px solid #98CDDA;
	font-size: 2.3rem;
	font-weight: 600;
	line-height: 1.4;
	width: calc(100% - 400px);
	letter-spacing: 0.05em;
}

.area-recruit dl dd span {
	font-weight: inherit;
	background: url(../img/index/face-03.jpg) center right no-repeat;
	background-size: contain;
	display: block;
	width: 100%;
	padding: 0.75em 0;
}

.area-recruit dl dd span b {
	font-weight: inherit;
	font-size: 1.25em;
}

.area-recruit dl dd span a {
	color: #589eaf
}

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

@media screen and (max-width: 1024px) {
	.area-recruit {
		padding: 5vw 1.5vw;
	}

	.area-recruit dl dt {
		padding: 5vw 1.5vw;
		width: 100%
	}

	.area-recruit dl dt span {
		text-align: center;
		font-size: 12vw;
	}

	.area-recruit dl dd {
		width: 100%;
		padding: 0;
		font-size: 3.2vw;
	}

	.area-recruit dl dd span {
		font-weight: inherit;
		background: url(../img/index/face-03.jpg) center bottom no-repeat;
		background-size: 25vw;
		display: block;
		width: 100%;
		padding: 5vw 5vw 20vw 5vw;
	}
}

@media screen and (max-width: 768px) {}

@media screen and (max-width: 520px) {}

@media screen and (max-width: 420px) {}

@media screen and (max-width: 375px) {}









/*-----------------------------------------------------------------------------------------
1115 area-access
----------------------------------------------------------------------------------------- */
.area-access {
	padding: 30px 0 60px;
	background: #f9f9f9;
}

.area-access dl {
	border-bottom: 1px solid #ddd;
	padding: 30px 0;
}

.area-access dl.last {
	border-bottom: none;
}

.area-access p {
	font-size: 1.5rem;
	line-height: 1.5;
}

.area-access p b {
	font-size: 1.2em;
	display: block;
	margin-bottom: 0.5em;
}

.frame-map {
	position: relative;
	padding-bottom: 37%;
	height: 0;
	overflow: hidden;
}

.frame-map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

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

@media screen and (max-width: 1024px) {}

@media screen and (max-width: 768px) {
	.area-access {
		border-top: 10px solid #eee;
		border-bottom: 10px solid #eee;
		border-left: 3px solid #eee;
		border-right: 3px solid #eee;
		padding: 5vw 1.5vw;

	}


	.area-access p {
		margin: 1em 0;
	}


}

@media screen and (max-width: 520px) {}

@media screen and (max-width: 420px) {}

@media screen and (max-width: 375px) {}







