@charset "utf-8";

main {
	width:100%;
	overflow:hidden;
}
.cntWrap {
	margin: 0 auto;
	padding:20px 15px;
	background: #31d9fd;
}
.cntWrap2 {
	margin: 0 auto;
	padding:35px 15px 5px;
	background: #FFF;
}
.cntWrap3 {
	margin: 0 auto;
	padding:50px 15px 40px;
	background: #FFF;
}
.cntWrapInner{
	width: 100%;
	margin: 0 auto;
}
.bg_system {
	margin: 0 auto;
	padding:50px 15px 40px;
	background:url("../img/bg01.gif") repeat;
}
h2 {
	margin-bottom: 20px;
	font-size:1.3rem;
	text-align: center;
	color: #862e9c;
}
.read {
	margin-bottom: 20px;
	font-size: 1rem;
	text-align: center;
}

.info{
	width: 100%;
	margin: 0 auto 30px;
}
.info li.taiken dl , .info li.aboutlady dl {
  position: relative;
	width: 100%;
  background: #FFF;
  padding: 0.5em 0 1.3em;
  border: solid 1px #862e9c;
  border-left: solid 4.8em #862e9c;
	box-sizing: border-box;
}
.info li.taiken dl:before {
  font-family: "Font Awesome 5 Free";
  content: '\f0a1';
  position: absolute;
  padding: 0em;
  color: #f7e022;
	font-size: 25px;
  font-weight: 900;
  left: -1.8em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.info li.taiken dt , .info li.aboutlady dt {
	font-size: 18px;
  text-align: center;
	font-weight: bold;
	color: #862e9c;
}
.info li.taiken dd , .info li.aboutlady dd {
	margin-top: 5px;
	padding: 18px 15px 0;
	font-size: 14px;
  text-align: center;
  border-top: solid 1px #862e9c;
}
.info li.aboutlady dl:before {
  font-family: "Font Awesome 5 Free";
  content: '\f002';
  position: absolute;
  padding: 0em;
  color: #f7e022;
	font-size: 25px;
  font-weight: 900;
  left: -1.8em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.bg_point {
	background:url("../img/bg03.jpg") repeat;
	background-size: 20px;
}
.bg_point div {
	margin: 0 auto;
	padding:40px 15px 20px;
}
.point {
	-js-display: flex;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-pack:start;
	justify-content: flex-start;
	padding:0 0 7px;
}
.point li {
	width: calc(100% / 1);
	box-sizing:border-box;
	padding: 2%;
}
.point li div {
	width: 100%;
	margin: 0 auto;
	box-sizing:border-box;
	padding: 15px;
	background: #FFF;
	border-radius:4px;
	-webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
}
.point li div h3{
	padding-top: 15px;
	font-size: 1.2rem;
	text-align: center;
	color: #ae3ec9;
}
.point p {
	margin-top: 10px;
	font-size: 1rem;
	text-align: center;
}
	
/***** お問い合わせ *****/
.bnr {
	margin: 0 auto 20px;
}
.bnr img {
	width: 100%;
}
#form{
	max-width: 860px;
	margin: 0 auto;
}
#form dt{
	vertical-align:top;
}
.input_text{
	margin-bottom:3px;
}
.input_text span{
	font-size:10px;
	color: #ae3ec9;
}
#form label{
	font-size:14px;
	color:#000;
	display:block;
}
#form .txtInput{
	width:100%;
	margin-bottom:20px;
	padding:10px 5px;
	line-height:1.3;
	border:1px solid #e5e5e5;
	border-radius:5px;
		-moz-border-radius:5px;
		-webkit-border-radius:5px;
	background:#FFF;
	box-sizing:border-box;
	-webkit-transition: box-shadow 0.2s, background 0.2s;
	transition: box-shadow 0.2s, background 0.2s;
}
#form select{
	width:100%;
	margin-bottom:20px;
	padding:10px 5px;
	line-height:1.3;
	border:1px solid #e5e5e5;
	border-radius:5px;
		-moz-border-radius:5px;
		-webkit-border-radius:5px;
	background:#FFF;
	box-sizing:border-box;
	-webkit-transition: box-shadow 0.2s, background 0.2s;
	transition: box-shadow 0.2s, background 0.2s;
}
#form textarea{
	width:100%;
	height:100px;
	padding:5px;
	font-size:11px;
	line-height:1.3;
	border:1px solid #e5e5e5;
	border-radius:5px;
		-moz-border-radius:5px;
		-webkit-border-radius:5px;
	background:#FFF;
	box-sizing:border-box;
}
#form .date{
	width:30%;
	margin-bottom:15px;
	padding:10px 5px;
	line-height:1.3;
	border:1px solid #e5e5e5;
	border-radius:5px;
		-moz-border-radius:5px;
		-webkit-border-radius:5px;
	background:#FFF;
	box-sizing:border-box;
	-webkit-transition: box-shadow 0.2s, background 0.2s;
	transition: box-shadow 0.2s, background 0.2s;
}

#form .txtInput:focus,#form select:focus,#form textarea:focus{
	background: #FFF;
	box-shadow: inset 0 0 5px rgba(8, 1, 3, 0.1);
}
.labelfocus {
	color:#000 !important;
	font-weight:bold;
}
.btn{
	width:100%;
	margin:0 auto;
}
button.btn {
	display: block;
	width: 220px;
	margin: 15px auto 0;
	border-radius:50px;
	color: #FFF;
	font-size:15px;
	font-weight:500;
	text-align: center;
	line-height:2.9;
	background: #ae3ec9;
	cursor:pointer;
}
/***** /お問い合わせ *****/

.btmContactArea {
	padding: 40px 25px 55px;
	background:url("../img/bg_contact.gif") repeat;
	position: relative;
	z-index: 1;
}
.btmContactArea p{
	text-align: center;
}
.recruitWrap {
	width:100%;
	background-color:#ae3ec9;
	border-collapse:separate;
	border-spacing:1px 1px;
	table-layout: fixed;
	display:table;
}
.recruitWrap dt {
	width: 100%;
	padding: 15px 0 13px;
	font-size: 16px;
	text-align: center;
	color: #FFF;
	background:#ae3ec9;
}
.recruitWrap dd {
	padding: 17px 15px 16px;
	font-size:13px;
	text-align: center;
	color: #444;
	background:#FFF;
	word-break: break-all;
	-webkit-font-smoothing:antialiased;
}
.btn_map {
	display: inline-block;height: 30px;line-height: 29px;padding: 0 15px;margin-right: 5px;border-radius: 100px;color: #79639e;margin-left: 5px;border: 1px solid #79639e;
}

#copy{
	width:90%;
	margin:0 auto;
}
footer address {
	padding: 8px;
	clear: both;
	text-align: center;
	color:#b7b7b7;
	font-size: 10px;
	line-height: 1.3;
}

@media screen and (max-width: 480px) {
	.present {
		margin-top: 12px;
		padding:0 16px 7px;
	}
	.linkBnrWrap , .linkBnrWrap2 {
	-js-display: flex;
		display: flex;
		flex-wrap: wrap;
		-webkit-box-pack:start;
		justify-content: flex-start;
		max-width: 320px;
		margin: 0 auto;
		}
		.linkBnrWrap li {
		width: calc(100% / 1);
		box-sizing:border-box;
		padding: 0.5%;
		}
		.linkBnrWrap2 li {
		width: calc(100% / 2);
		box-sizing:border-box;
		padding: 0.5%;
		}
}

@media screen and (max-width: 768px) {
	.info li:last-child{
		margin-top: 15px;
	}
	.btn_tel{
		position: fixed;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		right: 0;
		bottom: 0;
		padding: 5px;
		color: #fff;
		background-color: rgba(50,50,50,0.95);
		z-index: 50;
		box-sizing: border-box;
	}
	.btn_tel a{
		width: 100%;
		padding: 6px 0;
		font-size: 20px;
		color: #fff;
		background:#79639e;
		border-radius: 4px;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
		text-align: center;
		cursor: pointer;
	}
	.sp_none{
		display: none;
	}
}

@media screen and (min-width: 769px) {
	.visualWrap{
		width: 100%;
		background:url("../img/bg01.png") repeat;
	}
	.visual{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
	}
	.cntWrap {
		width: 100%;
		padding:60px 15px 120px;
		background: #31d9fd;
	}
	.cntWrap2 {
		margin: 0 auto;
		padding:100px 15px 120px;
		background: #FFF;
	}
	.cntWrap3 {
		margin: 0 auto;
		padding:80px 15px 110px;
		background: #FFF;
	}
	.bg_system {
		margin: 0 auto;
		padding:120px 15px 110px;
		background:url("../img/bg01.gif") repeat;
	}
	h2 {
		margin-bottom: 10px;
		font-size:1.8rem;
		text-align: center;
		color: #862e9c;
	}
	.read {
		margin-top: 30px;
		font-size:1.1rem;
		text-align: center;
	}
	.info{
		-js-display: flex;
		display: flex;
		width: 1015px;
		margin: 0 auto;
	}
	.info li:last-child{
		margin-left: 15px;
	}
	.info li.taiken dl , .info li.aboutlady dl {
		position: relative;
		width: 500px;
		min-height: 200px;
		background: #FFF;
		margin-top: 33px;
		padding: 0.5em 0 1.3em;
		font-size: 14px;
		border: solid 1px #862e9c;
		border-left: solid 4.8em #862e9c;
		box-sizing: border-box;
	}
	.info li.taiken dl:before {
		font-family: "Font Awesome 5 Free";
		content: '\f0a1';
		position: absolute;
		padding: 0em;
		color: #f7e022;
		font-size: 25px;
		font-weight: 900;
		left: -1.8em;
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.info li.taiken dt , .info li.aboutlady dt {
		font-size: 20px;
		font-weight: bold;
		color: #862e9c;
		text-align: center;
	}
	.info li.taiken dd , .info li.aboutlady dd {
		margin-top: 5px;
		padding: 18px 15px 0;
		font-size: 16px;
		text-align: center;
		border-top: solid 1px #862e9c;
	}
	.info li.aboutlady dl:before {
		font-family: "Font Awesome 5 Free";
		content: '\f002';
		position: absolute;
		padding: 0em;
		color: #f7e022;
		font-size: 25px;
		font-weight: 900;
		left: -1.8em;
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	.bg_point {
		background:url("../img/bg03.jpg") repeat;
		background-size: 50px;
	}
	.bg_point div {
		margin: 0 auto;
		padding:110px 15px 110px;
	}
	.point {
		max-width: 1300px;
		margin: 0 auto;
		-js-display: flex;
		display: flex;
		flex-wrap: wrap;
		-webkit-box-pack:start;
		justify-content: flex-start;
		padding:0 40px 7px;
	}
	.point li {
		width: calc(100% / 3);
		box-sizing:border-box;
		padding: 2%;
	}
	.point li div {
		width: 380px;
		min-height: 420px;
		margin: 0 auto;
		box-sizing:border-box;
		padding: 20px;
		background: #FFF;
		border-radius:4px;
		-webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
		-moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
		box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
	}
	.point li div h3{
		padding-top: 20px;
		text-align: center;
		color: #ae3ec9;
	}
	
	.present {
		width: 640px;
		margin: 0 auto;
	}
		
	/***** お問い合わせ *****/
	#form{
		max-width: 860px;
		margin: 0 auto;
	}
	#form dt{
		vertical-align:top;
	}
	.input_text{
		margin-bottom:3px;
	}
	.input_text span{
		font-size:10px;
		color: #ae3ec9;
	}
	#form label{
		font-size:16px;
		color:#000;
		display:block;
	}
	#form .txtInput{
		width:100%;
		margin-bottom:20px;
		padding:10px 5px;
		line-height:1.3;
		border:1px solid #e5e5e5;
		border-radius:5px;
			-moz-border-radius:5px;
			-webkit-border-radius:5px;
		background:#FFF;
		box-sizing:border-box;
		-webkit-transition: box-shadow 0.2s, background 0.2s;
		transition: box-shadow 0.2s, background 0.2s;
	}
	#form select{
		width:100%;
		margin-bottom:20px;
		padding:10px 5px;
		line-height:1.3;
		border:1px solid #e5e5e5;
		border-radius:5px;
			-moz-border-radius:5px;
			-webkit-border-radius:5px;
		background:#FFF;
		box-sizing:border-box;
		-webkit-transition: box-shadow 0.2s, background 0.2s;
		transition: box-shadow 0.2s, background 0.2s;
	}
	#form textarea{
		width:100%;
		height:100px;
		padding:5px;
		font-size:11px;
		line-height:1.3;
		border:1px solid #e5e5e5;
		border-radius:5px;
			-moz-border-radius:5px;
			-webkit-border-radius:5px;
		background:#FFF;
		box-sizing:border-box;
	}
	#form .txtInput:focus,#form textarea:focus{
		background: #FFF;
		box-shadow: inset 0 0 5px rgba(8, 1, 3, 0.1);
	}
	.labelfocus {
		color:#000 !important;
		font-weight:bold;
	}
	.btn{
		width:100%;
		margin:0 auto;
	}
	button.btn {
		display: block;
		width: 320px;
		margin: 25px auto 0;
		border-radius:50px;
		color: #FFF;
		font-size:18px;
		font-weight:500;
		text-align: center;
		line-height:2.9;
		background: #ae3ec9;
		cursor:pointer;
	}
	/***** /お問い合わせ *****/
	
	.btmContactArea {
		width: 100%;
		padding:80px 15px 120px;
		background:url("../img/bg_contact.gif") repeat;
	}
	.btmContactArea p{
		text-align: center;
	}
	.recruitWrap {
		width:100%;
		max-width: 860px;
		margin: 0 auto;
		border: 1px solid #ae3ec9;
		-js-display: flex;
		display: flex;
		justify-content:space-between;
	}
	.recruitWrap dt {
		flex-basis: 35%;
		padding: 20px;
		font-size:19px;
		text-align: center;
		line-height: 1.6;
		color: #FFF;
		background:#ae3ec9;
		border:1px solid #FFF;
		vertical-align: middle;
	}
	.recruitWrap dd {
		flex-basis: 65%;
		padding: 20px;
		font-size:19px;
		text-align: left;
		line-height: 1.6;
		color: #444;
		background:#FFF;
		word-break: break-all;
		-webkit-font-smoothing:antialiased;
		vertical-align:middle;
	}
	
	.linkBnrWrap , .linkBnrWrap2 , .linkBnrWrap3 {
	-js-display: flex;
		display: flex;
		flex-wrap: wrap;
		-webkit-box-pack:start;
		justify-content: flex-start;
		max-width: 640px;
		margin: 0 auto;
		}
		.linkBnrWrap li {
		width: calc(100% / 1);
		box-sizing:border-box;
		padding: 0.5%;
		}
		.linkBnrWrap2 li {
		width: calc(100% / 2);
		box-sizing:border-box;
		padding: 0.5%;
		}
		.linkBnrWrap3 li {
		width: calc(100% / 3);
		box-sizing:border-box;
		padding: 0.5%;
		}
	
	#copy{
		width:90%;
		margin:0 auto;
	}
	footer address {
		clear: both;
		text-align: center;
		color:#b7b7b7;
		font-size: 10px;
		line-height: 3;
	}
	.pc_none{
		display: none;
	}
}

@media screen and (max-width: 1199px) {
	.visual{
		width: 100%;
	}
}
