@charset "UTF-8";

h2 {
	font-size:42px;
	letter-spacing:14px;
	line-height:1.6;
	margin-bottom:50px;
	text-align:center;
}
h2 .en {
	font-size:22px;
	letter-spacing:1px;
	color:#e992b7;
	font-weight:normal;
	display:block;
}
@media screen and (max-width: 768px) {
	h2 {font-size:32px;letter-spacing:8px;}
	h2 .en {font-size:18px;}
}
@media screen and (max-width: 480px) {
	h2 {font-size:26px;letter-spacing:3px;margin-bottom:30px;}
	h2 .en, #content h1 .en {font-size:14px;}
}
.lead {
	text-align:center;
	margin-bottom:50px;
}
#home1 {
	margin-top:-280px;
	margin-bottom:80px;
	background:url('../images/home/bg_home_upper.png') no-repeat top center, url('../images/home/bg_home_lower.png') no-repeat bottom center;
	height:2238px;
	padding-top:325px;
}
@media screen and (max-width: 1400px) {
	#home1 {background-position:top 0 right -200px, bottom 0  right -200px;padding-top:380px;}
}
@media screen and (max-width: 1366px) {
	#home1 {background:url('../images/home/bg_home_1366_left.png') no-repeat, url('../images/home/bg_home_1366_right.png') no-repeat;background-position:top 30px left 0, top 0 right 0;margin-top:-100px;padding-top:120px;height:auto;overflow:hidden;}
}
@media screen and (max-width: 1280px) {
	#home1 {background:url('../images/home/bg_home_1280_left.png') no-repeat, url('../images/home/bg_home_1280_right.png') no-repeat;background-position:top 30px left 0, top 0 right 0;margin-top:-80px;padding-top:80px;height:auto;overflow:hidden;}
}
@media screen and (max-width: 1024px) {
	#home1 {background:url('../images/home/bg_home_m_left.png') no-repeat top left, url('../images/home/bg_home_m_right.png') no-repeat top right;margin-top:0;padding-top:20px;height:auto;overflow:hidden;}
}
@media screen and (max-width: 480px) {
	#home1 {background:url('../images/home/bg_home_sp.png') no-repeat top left;margin-top:-30px;padding-top:150px;}
}
#home1 .catch {
	justify-content:center;
	align-items:start;
	margin-bottom:200px;
}
@media screen and (max-width: 1024px) {
	#home1 .catch {margin-bottom:50px;}
	}

#home1 .catch div {
	writing-mode: vertical-rl;
	font-size:45px;
	letter-spacing:8px;
	border-radius:9999px;
	padding:48px 26px;
	margin:0 32px;
}
@media screen and (max-width: 1400px) {
	#home1 .catch {margin-bottom:150px;}
	#home1 .catch div {font-size:30px;}
}
@media screen and (max-width: 480px) {
	#home1 .catch {margin-bottom:50px;}
	#home1 .catch div {font-size:18px;margin:0 16px;padding:24px 13px;}
}
#home1 .catch .line1 {
	background-image: -moz-linear-gradient( -90deg, rgb(240,157,193) 30%, rgb(212,161,234) 100%);
	background-image: -webkit-linear-gradient( -90deg, rgb(240,157,193) 30%, rgb(212,161,234) 100%);
 	background-image: -ms-linear-gradient( -90deg, rgb(240,157,193) 30%, rgb(212,161,234) 100%);
	color:#fff;
	margin-bottom:110px;
}
#home1 .catch .line2 {
	color:#f09dc1;
	background:#fff;
	margin-top:110px;
}
@media screen and (max-width: 480px) {
	#home1 .catch .line2 {margin-top:70px;}
}
	
#home1 .about {
	max-width:1800px;
	text-align:left;
}
#home1 .about .box {
	background:#eff8ff;
	border-radius:50%;
	padding:130px 150px;
	width:900px;
	height:900px;
	box-sizing:border-box;
}
#home1 .about .box h2 {
	font-size:40px;
	text-align:center;
	letter-spacing:10px;
	line-height:2;
	margin-bottom:20px;
}
#home1 .about .box h2 .en {
	color:#f09dc1;
	font-size:20px;
	display:block;
}
#home1 .about .box p {
	line-height:2;
	margin-bottom:15px;
}
#home1 .about .tel {
	font-size:24px;
	margin-right:0;
}
#home1 .about .reserve {
	font-size:22px;
	margin-right:0;
}
#home1 .about .reservesection {
	max-width:542px;
	margin:0 auto;
}
@media screen and (max-width: 480px) {
	#home1 .about .box {border-radius:50% / 15%;padding:60px 20px;width:100%;height:auto;}
	#home1 .about .box h2 {font-size:22px;}
	#home1 .about .reservesection {text-align:center;}
	#home1 .about .reservesection a:first-child {margin-bottom:15px;}
}
#home2 {
	background:url('../images/home/bg_home2.png') no-repeat top center;
	margin:50px auto 0 auto;
	padding:10px 0 120px 0;
	text-align:center;
}
#home2 .flex {
	flex-wrap:wrap;
	max-width:1300px;
	margin:0 auto;
	align-items:end;
}
@media screen and (max-width: 1300px) {
	#home2 {padding-top:90px;margin-top:-60px;background:url('../images/home/bg_home2_m_left.png') no-repeat top left, url('../images/home/bg_home2_m_right.png') no-repeat top right;background-size:15%;}
	#home2 .flex {width:80%;margin-left:10%;margin-right:10%;}
}
@media screen and (max-width: 980px) {
	#home2 .flex {width:90%;margin-left:5%;margin-right:5%;}
}
@media screen and (max-width: 768px) {
	#home2 .flex {display:block;text-align:center;}
}
@media screen and (max-width: 480px) {
	#home2 {background-size:22%;}
}
#home2 .flex li {
	margin-bottom:50px;
	position:relative;
}
#home2 .flex li dl {
	position:absolute;
	top:110px;
	left:0;
	width:100%;
}
#home2 dt {
	padding-left:40px;
	font-size:26px;
	text-align:center;
}
#home2 .flex li.f3 dl {top:85px;}
#home2 .flex li.f4 dl {top:120px;}
#home2 .flex li.f5 dl {top:90px;}
#home2 .flex li.f6 dl {top:95px;}

#home2 dd {
	font-size:16px;
	text-align:center;
	padding-top:20px;
}
@media screen and (max-width: 480px) {
	#home2 dt {margin-top:-10px;line-height:1.3;}
	#home2 dd {padding-top:10px;}
}

#home3 {
	background:url('../images/home/bg_home3.png') no-repeat top center;
	margin:0 auto;
	padding:145px 0 0 0;
}
@media screen and (max-width: 1366px) {
	#home3 {padding-top:130px;margin-top:-140px;background:#fff url('../images/home/bg_home3_m.png') no-repeat top center;}
}
#home3 .flex {
	max-width:1100px;
	margin:0 auto 60px auto;
	text-align:center;
}
@media screen and (max-width: 1100px) {
	#home3 .flex {width:96%;}
}
@media screen and (max-width: 480px) {
	#home3 .flex {margin-bottom:40px;}
}
#home3 .flex img {margin-bottom:8px;}
@media screen and (max-width: 768px) {
	#home3 {padding-left:2%;padding-right:2%;}
	#home3 .flex {flex-wrap:wrap;}
	#home3 .flex li {width:48%;}
}
#home3 .link {text-align:center;}
#home3 .link a, #home6 .link a {
	display:inline-block;
	padding:15px 45px 15px 65px;
	border-radius:9999px;
	background:#fff;
	border:4px #f6d1e1 solid;
	position:relative;
	font-size:24px;
}
#home3 .link a::before, #home6 .link a::before {
    content: url(../images/icon_arrow.png);
    position: absolute;
	left:30px;
    top: 50%;
    transform: translateY(-50%);
}
@media screen and (max-width: 480px) {
	#home3 {padding-bottom:60px;}
}
#home4 {
	background:#d2f4fd url('../images/home/bg_home4.png') no-repeat top center;
	margin-top:-45px;
	padding-top:85px;
	padding-bottom:140px;
}
@media screen and (max-width: 1366px) {
	#home3 {padding-bottom:150px;}
	#home4 {margin-top:0;}
}
#home4 .inner {
	background:url('../images/home/bg_home4_in.png') no-repeat top center;
	height:874px;
	text-align:center;
	justify-content:center;
	padding-bottom:200px;
	box-sizing:border-box;
}

@media screen and (max-width: 1536px) {
	#home4 .inner {margin-top:80px;height:874px;margin-bottom:100px;background:url('../images/home/bg_home4_in_m_left.png') no-repeat top left, url('../images/home/bg_home4_in_m_right.png') no-repeat bottom right;background-size:850px 471px,840px 476px;display:block;}
}
@media screen and (max-width: 1366px) {
	#home4 .inner {margin-top:-180px;height:954px;margin-bottom:100px;background:url('../images/home/bg_home4_in_m_left.png') no-repeat top left, url('../images/home/bg_home4_in_m_right.png') no-repeat bottom right;background-size:812px 450px,810px 459px;display:block;}
}
#home4 h2 {letter-spacing:3px;margin-bottom:30px;}
#home4 .inner .bridal {
	align-self:center;
	margin-right:160px;
	margin-top:-45px;
}
#home4 .inner .student {
	align-self:end;
	margin-left:110px;
}
@media screen and (max-width: 1536px) {
	#home4 h2 {font-size:34px;}
	#home4 .inner .bridal {margin-right:0;width:30%;margin-left:360px;padding-top:140px;margin-bottom:280px;}
	#home4 .inner .student {width:30%;margin-left:calc(100% - 800px);}
}
@media screen and (max-width: 1366px) {
	#home4 h2 {font-size:34px;}
	#home4 .inner .bridal {margin-right:0;width:30%;margin-left:360px;padding-top:130px;margin-bottom:320px;}
	#home4 .inner .student {width:30%;margin-left:calc(100% - 700px);}
}
@media screen and (max-width: 480px) {
	#home4 {padding:60px 0 30px 0;}
	#home4 .inner {padding-bottom:10px;}
}

#home4 .inner.sp {
	background-image:none;
	background-color:#d2f4fd;
	height:auto;
}
#home4 .inner.sp .bridal, #home4 .inner.sp .student {
	width:100%;
	margin:auto;
	padding:0;
	position:relative;
}
#home4 .inner.sp .abs {position:absolute;}
#home4 .inner.sp .bridal .abs {
		left:45%;
		top:50%;
		transform: translateY(-50%);
}
#home4 .inner.sp .student .abs {
		left:5%;
		top:50%;
		transform: translateY(-50%);
}
#home4 .abs h2 {font-size:20px;margin-bottom:10px;line-height:1.3;}
#home4 .abs h2 .en {font-size:14px;}
	
#home4 .link a {
	display:inline-block;
	padding:8px 20px 8px 45px;
	border-radius:9999px;
	background:#fff;
	border:2px #f6d1e1 solid;
	position:relative;
	font-size:18px;
}
#home4 .link a::before {
    content: url(../images/icon_arrow.png);
    position: absolute;
	left:20px;
    top: 55%;
    transform: translateY(-50%);
}
#home4 .inner.sp .link a {font-size:16px;}
#home5 {
	background:url('../images/home/bg_home5.png') no-repeat top center;
	margin-top:-260px;
	padding-top:320px;
	height:1116px;
	box-sizing:border-box;
}

#home5 .flex {
	max-width:1100px;
	margin:0 auto;
}
#home5 .flex a {
	display:inline-block;
	padding:15px 45px 15px 65px;
	border-radius:9999px;
	background:#fff;
	border:4px #f6d1e1 solid;
	position:relative;
	font-size:24px;
}
#home5 .flex a::before {
    content: url(../images/icon_arrow.png);
    position: absolute;
	left:30px;
    top: 50%;
    transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
	#home5 {padding-top:200px;}
	#home5 .flex {display:block;text-align:center;}
	#home5 .flex li {margin-bottom:15px;}
	#home5 .flex li a {width:300px;box-sizing:border-box;font-size:20px;}
}
@media screen and (max-width: 480px) {
	#home5 {height:auto;background:url('../images/home/bg_home5_sp_upper.png') no-repeat top center, url('../images/home/bg_home5_sp_lower.png') no-repeat bottom center;padding-top:130px;margin-top:-100px;padding-bottom:200px;margin-bottom:0;}
}

#home6 {
	background:#f9f9f9 url('../images/home/bg_home6.png') no-repeat top 60px center;
	padding:160px 0 110px 0;
	position:relative;
}
#home6 img.equipment {
	object-fit:contain;
	object-position:center;
}
@media screen and (max-width: 1400px) {
	#home6 {background:none;}
}
#home6 .inner {
	width:1200px;
	text-align:right;
	position:absolute;
	top:220px;
	left:50%;
	transform: translateX(-50%);
}
#home6 .inner .box {
	display:inline-block;
}
@media screen and (max-width: 1400px) {
	#home6 {background:linear-gradient(#fcfcfc, #fdfdfd);padding:60px 0;}
	#home6 .inner {width:96%;top:50%;transform: translateY(-50%);left:0;}
}
@media screen and (max-width: 768px) {
	#home6 .inner {top:30%;left:0;}
	#home6 .link a {font-size:20px;margin-top:-10px;}
}
@media screen and (max-width: 480px) {
	#home6 {background:url('../images/home/bg_gradient.png') repeat, url('../images/home/bg_home6_sp.png') no-repeat top 30px left, url('../images/home/bg_home6_sp_bottom.png') no-repeat bottom right;margin:0;padding:60px 0 0 0;}
	#home6 .inner {position:static;text-align:center;transform:none;}
	#home6 .inner .box {display:block;padding:40px 0;}
	#home6 .link a {font-size:20px;margin-top:-10px;}
}
#home7 {background:#f9f9f9 url('../images/home/bg_home7.png') no-repeat top center;
	padding-top:100px;
	height:699px;
}
#home7 .flex {
	max-width:1300px;
	margin:0 auto;
	flex-wrap:wrap;	
}

#home7 .flex li {margin-bottom:30px;}
#home7 .flex a {
	display:inline-block;
	padding:16px 0 16px 120px;
	border-radius:9999px;
	background:#fff;
	border:4px #e9e9e9 solid;
	position:relative;
	font-size:24px;
	width:400px;
	box-sizing:border-box;
}
#home7 .flex a::before {
    position: absolute;
	left:30px;
    top: 50%;
    transform: translateY(-50%);
}
#home7 .flex a.p1::before {content:url('../images/home/problems1.png');}
#home7 .flex a.p2::before {content:url('../images/home/problems2.png');}
#home7 .flex a.p3:before {content:url('../images/home/problems3.png');}
#home7 .flex a.p4::before {content:url('../images/home/problems4.png');}
#home7 .flex a.p5::before {content:url('../images/home/problems5.png');}
#home7 .flex a.p6::before {content:url('../images/home/problems6.png');}
@media screen and (max-width: 1300px) {
	#home7 .flex {width:96%;justify-content:center;}
	#home7 .flex li {margin-left:2%;margin-right:2%;}
}
@media screen and (max-width: 768px) {
	#home7 {background:#f9f9f9 url('../images/home/bg_home7_mb.png') no-repeat top 60px center;background-size:100% auto;height:auto;padding:60px 0 100px 0;}
}
@media screen and (max-width: 480px) {
	#home7 .flex a {width:300px;font-size:20px;padding-left:100px;}
	#home7 .flex a::before {left:22px;}
}
#home8 {
	height:657px;
	background:url('../images/home/bg_home8.png') no-repeat top center;
}
#home8 .container {
	max-width:1300px;
	margin:0 auto;
}
#home8 .tabs .tab {
	display:inline-block;
	width:20%;
	text-align:center;
	padding:15px 0;
	background-image: -moz-linear-gradient( 0deg, rgb(240,157,193) 30%, rgb(212,161,234) 100%);
    background-image: -webkit-linear-gradient( 0deg, rgb(240,157,193) 30%, rgb(212,161,234) 100%);
    background-image: -ms-linear-gradient( 0deg, rgb(240,157,193) 30%, rgb(212,161,234) 100%);
	margin-right:20px;
	border-radius:10px 10px 0 0;
	color:#fff;
	cursor:pointer;
	box-sizing:border-box;
}
#home8 .tabs .tab.active {
	background:#fff;
	color:#54676c;
}
#home8 .contents {
	height:510px;
	padding:50px 70px;
	background:#fff;
	border-radius:0 20px 20px 20px;
}
#home8 .content {display: none;}
#home8 .content.show {display: block;}
#home8 .content li {
	display:block;
	padding:22px 0;
	border-bottom:1px rgb(186, 210, 217) dotted;
}
#home8 .content li span {display:inline-block;margin-right:17px;}
#home8 .content li span.cate {background:#f5b8d3;padding:3px 6px;border-radius:9999px;color:#fff;}
#home8 .content p {text-align:center;padding-top:20px;}
#home8 .content p a {
	display:inline-block;
	padding:6px 20px 6px 40px;
	border-radius:9999px;
	background:#fff;
	border:2px #f5b8d3 solid;
	position:relative;
	font-size:20px;
	box-sizing:border-box;
}
#home8 .content p a::before {
	content:url(../images/icon_arrow.png);
    position: absolute;
	left:12px;
    top: 52%;
    transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
	#home8 {height:auto;padding-bottom:40px;}
	#home8 .contents {border-radius:0;padding:20px;}
	#home8 .tabs .tab {width:25%;margin:0;border-radius:0;padding:15px;}
	#home8 .contents {height:auto;}
}
@media screen and (max-width: 480px) {
	#home8 {background:url('../images/home/bg_home8_sp.png') no-repeat top center;margin-top:-80px;padding-top:100px;}
	#home8 .tabs .tab {padding:10px 3px;letter-spacing:0;}
	#home8 .content li a {display:block;padding:8px 0;}
}
#home9 {
	height:777px;
	background:url('../images/home/bg_home9.png') no-repeat top center;
}
#home9 .inner {
	max-width:1380px;
	margin:0 auto;
	padding-top:20px;
	align-items:center;
}
#home9 .inner .txtbox {
	max-width:600px;
	padding:70px 20px 0 20px;
	text-align:left;
}
#home9 h2 {text-align:left;}
#home9 dt {font-size:22px;font-weight:bolx;}
#home9 dd {
	line-height:2.5;
	padding:15px 0;
}
#home9 .sign {text-align:right;}
#home9 .link a {
	display:inline-block;
	padding:15px 45px 15px 65px;
	border-radius:9999px;
	background:#fff;
	border:4px #f6d1e1 solid;
	position:relative;
	font-size:24px;
}
#home9 .link a::before {
    content: url(../images/icon_arrow.png);
    position: absolute;
	left:30px;
    top: 50%;
    transform: translateY(-50%);
}
@media screen and (max-width: 1024px) {
	#home9 .inner .txtbox {width:50%;}
}
@media screen and (max-width: 480px) {
	#home9  {background:#dff7fe;height:auto;}
}
#home9 .inner.sp .txtbox {width:100%;}
#home9 .inner.sp h2, #home9 .inner.sp dt, #home9 .inner.sp .link {text-align:center;}
#home9 .inner.sp .link a {font-size:20px;}