@charset "utf-8";

.sp {
	display: none !important;
}

.tablet {
	display: none !important;
}

.top{
    position: relative;
}
/*MV*/

#main{
}

#mvWrap{
    padding-top: 106px;
    height: 860px;
	position: relative;
	box-sizing: border-box;
    text-align: center;
	background: url("../img/mv_bg.png") no-repeat;
	background-size: cover;
	background-position: top center;
}
.mv{
    width: 1096px;
	position: relative;
    display: inline-block;
}
.mvTtl{
	width: 405px;
	display: block;
	margin: 0 auto;
}
.mvImg{
	width: 425px;
	display: block;
	margin: 0 auto;
}
.mvDate{
	width: 229px;
	position: absolute;
	display: inline-block;
	left: 10px;
	bottom: -10px;
}
.mvBtnW{
    display: flex;
	justify-content: space-between;
    position: absolute;
	right: -40px;
	bottom: 0;
	width: 330px;
}
.mvBtn{
    display: inline-block;
    width: 152px;
    border-radius: 50%;
    background: #fff;
	position: relative;
	transition: 0.3s;
}
.mvBtn1:before{
	content: "";
	background: url("../img/mv_btn_1_ov.svg") no-repeat;
	background-size: contain;
	width: 152px;
	height: 152px;
	position: absolute;
	display: block;
	opacity: 0;
}
.mvBtn1:hover:before{
	opacity: 1;
}
.mvBtn2:before{
	content: "";
	background: url("../img/mv_btn_2_ov.svg") no-repeat;
	background-size: contain;
	width: 152px;
	height: 152px;
	position: absolute;
	display: block;
	opacity: 0;
}
.mvBtn2:hover:before{
	opacity: 1;
}
.mvBtn:hover img{
	opacity: 0;
}


/*TOPページ*/

#topSec01{
    position: relative;
}
.topSec01W{
    padding: 110px 0 0px;
    text-align: center;
}
.sec01Ttl1{
	font-size: 4rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-bottom: 17px;
 }
.sec01Ttl1 span{
	font-size: 5rem;
	color: #E57097;
 }
.sec01Ttl1 small{
	font-size: 2rem;
 }
.top01merit {
    display: flex;
    justify-content: space-between;
    margin-bottom: 42px;
    gap: 20px;
}


#topSec02{
    position: relative;
	background: url("../img/sec02_bg.png") no-repeat;
	background-position: center 40px;
}
.topSec02W{
    text-align: center;
	padding: 80px 0 120px;
}
.sec02Ttl1{
    margin-bottom: 40px;
}
.sec02W{
    display: flex;
	justify-content: space-between;
	margin-bottom: 42px;
}
.sec02Txt{
	font-size: 2.5rem;
	letter-spacing: 0.05em;
	font-weight: bold;
}

#topSec03{
    position: relative;
}
.topSec03W{
    text-align: center;
	padding: 120px 0 120px;
}
.sec03Ttl1{
    margin-bottom: 50px;
}
.top03W{
	margin-bottom: 15px;
}
.top03Ttl{
	position: relative;
	text-align: center;
	font-size: 2.5rem;
	font-weight: 500;
	line-height: 6.4rem;
	border-radius: 3.5rem;
	color: #fff;
	cursor: pointer;
	transition: 0.3s;
}
.top03Ttl:after{
	content: "+";
	font-size: 3rem;
	font-weight: 500;
	display: block;
	position: absolute;
	right: 50px;
	top: 50%;
	transform: translateY(-50%);
}
.top03Ttl.active:after{
	content: "-";
}
.top03Ttl:hover{
	background: #fff !important;
}
.top03Ttl.active{
	background: #fff !important;
}
.top03Ttl.active:after{
}
.top03Hid{
	display: none;
	padding-top: 38px;
}
.top03Lists{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.top03List{
	width: 48%;
	display: flex;
	justify-content: space-between;
	position: relative;
	margin-bottom: 44px;
}
.top03Img{
	width: 214px;
	display: inline-block;
}
.top03Circle{
	position: absolute;
	width: 70px;
	height: 70px;
	display: inline-block;
	box-sizing: border-box;
	overflow: hidden;
	border-radius: 50%;
	font-weight: bold;
	text-align: center;
	font-size: 1.5rem;
	letter-spacing: 0.01em;
	white-space: nowrap;
	background: #fff;
	left: 164px;
	top: -20px;
}
.circleU{
	color: #fff;
	padding-top: 12px;
	padding-bottom: 3px;
}
.circleB{
}
.top03TxtW{
	width: 275px;
	text-align: left;
}
.top03Ttl2{
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 40px;
}
.top03Txt{
	letter-spacing: 0.05em;
	font-weight: 500;
	line-height: 2.8rem;
}

/*カラー設定*/

.col01 .top03Ttl{
	border: 3px solid #9ABE24;
	background: #9ABE24;
}
.col01 .top03Ttl:hover{
	color: #9ABE24;
}
.col01 .top03Ttl.active{
	background: #fff;
	color: #9ABE24;
}
.col01 .top03Circle{
	border: 2px solid #9ABE24;
}
.col01 .circleU{
	background: #9ABE24;
}
.col01 .circleB{
	color: #9ABE24;
}
.col01 .top03Ttl2{
	color: #9ABE24;
}

.col02 .top03Ttl{
	border: 3px solid #F08650;
	background: #F08650;
}
.col02 .top03Ttl:hover{
	color: #F08650;
}
.col02 .top03Ttl.active{
	color: #F08650;
}
.col02 .top03Circle{
	border: 2px solid #F08650;
}
.col02 .circleU{
	background: #F08650;
}
.col02 .circleB{
	color: #F08650;
}
.col02 .top03Ttl2{
	color: #F08650;
}

.col03 .top03Ttl{
	border: 3px solid #B64360;
	background: #B64360;
}
.col03 .top03Ttl:hover{
	color: #B64360;
}
.col03 .top03Ttl.active{
	background: #fff;
	color: #B64360;
}
.col03 .top03Circle{
	border: 2px solid #B64360;
}
.col03 .circleU{
	background: #B64360;
}
.col03 .circleB{
	color: #B64360;
}
.col03 .top03Ttl2{
	color: #B64360;
}

.col04 .top03Ttl{
	border: 3px solid #B863A0;
	background: #B863A0;
}
.col04 .top03Ttl:hover{
	color: #B863A0;
}
.col04 .top03Ttl.active{
	color: #B863A0;
}
.col04 .top03Circle{
	border: 2px solid #B863A0;
}
.col04 .circleU{
	background: #B863A0;
}
.col04 .circleB{
	color: #B863A0;
}
.col04 .top03Ttl2{
	color: #B863A0;
}

.col05 .top03Ttl{
	border: 3px solid #FAA430;
	background: #FAA430;
}
.col05 .top03Ttl:hover{
	color: #FAA430;
}
.col05 .top03Ttl.active{
	color: #FAA430;
}
.col05 .top03Circle{
	border: 2px solid #FAA430;
}
.col05 .circleU{
	background: #FAA430;
}
.col05 .circleB{
	color: #FAA430;
}
.col05 .top03Ttl2{
	color: #FAA430;
}

.col06 .top03Ttl{
	border: 3px solid #3774BA;
	background: #3774BA;
}
.col06 .top03Ttl:hover{
	color: #3774BA;
}
.col06 .top03Ttl.active{
	color: #3774BA;
}
.col06 .top03Circle{
	border: 2px solid #3774BA;
}
.col06 .circleU{
	background: #3774BA;
}
.col06 .circleB{
	color: #3774BA;
}
.col06 .top03Ttl2{
	color: #3774BA;
}

.col07 .top03Ttl{
	border: 3px solid #D47BAE;
	background: #D47BAE;
}
.col07 .top03Ttl:hover{
	color: #D47BAE;
}
.col07 .top03Ttl.active{
	color: #D47BAE;
}
.col07 .top03Circle{
	border: 2px solid #D47BAE;
}
.col07 .circleU{
	background: #D47BAE;
}
.col07 .circleB{
	color: #D47BAE;
}
.col07 .top03Ttl2{
	color: #D47BAE;
}

.col08 .top03Ttl{
	border: 3px solid #D48C7F;
	background: #D48C7F;
}
.col08 .top03Ttl:hover{
	color: #D48C7F;
}
.col08 .top03Ttl.active{
	color: #D48C7F;
}
.col08 .top03Circle{
	border: 2px solid #D48C7F;
}
.col08 .circleU{
	background: #D48C7F;
}
.col08 .circleB{
	color: #D48C7F;
}
.col08 .top03Ttl2{
	color: #D48C7F;
}

.col09 .top03Ttl{
	border: 3px solid #DA6574;
	background: #DA6574;
}
.col09 .top03Ttl:hover{
	color: #DA6574;
}
.col09 .top03Ttl.active{
	color: #DA6574;
}
.col09 .top03Circle{
	border: 2px solid #DA6574;
}
.col09 .circleU{
	background: #DA6574;
}
.col09 .circleB{
	color: #DA6574;
}
.col09 .top03Ttl2{
	color: #DA6574;
}

.col10 .top03Ttl{
	border: 3px solid #4CA860;
	background: #4CA860;
}
.col10 .top03Ttl:hover{
	color: #4CA860;
}
.col10 .top03Ttl.active{
	color: #4CA860;
}
.col10 .top03Circle{
	border: 2px solid #4CA860;
}
.col10 .circleU{
	background: #4CA860;
}
.col10 .circleB{
	color: #4CA860;
}
.col10 .top03Ttl2{
	color: #4CA860;
}


.col11 .top03Ttl{
	border: 3px solid #B9CFDE;
	background: #B9CFDE;
	color: #000;
}
.col11 .top03Ttl:hover{
	color: #B9CFDE;
}
.col11 .top03Ttl.active{
	color: #B9CFDE;
}
.top03Txt2{
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.05em;
}


#topSec04{
    position: relative;
}
.topSec04W{
    text-align: center;
	padding: 120px 0;
}
.sec04Ttl1{
    margin-bottom: 50px;
}
.top04W{
	background: #fff;
	border: 1px solid #E57097;
	box-sizing: border-box;
	padding: 50px 50px 20px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	border-radius: 30px;
}
.top04Box{
	width: 470px;
	text-align: left;
	margin-bottom: 30px;
}
.top04Name{
	margin-bottom: 20px;
}
.top04Name img{
	width: inherit;
}
.top04Txt{
	font-size: 1.4rem;
	line-height: 2.5rem;
	letter-spacing: 0.02em;
}
.top04Links{
	font-size: 1.4rem;
	line-height: 2.5rem;
	letter-spacing: 0.02em;
	font-weight: bold;
}
.top04Links a{
	color: #E57097 !important;
}
.top04Links a:hover{
	text-decoration: underline;
}

#topSec05{
    position: relative;
}
.topSec05W {
    text-align: center;
    padding: 120px 0;
}
.sec05Ttl1{
    margin-bottom: 50px;
}
.top05Lists1{
	letter-spacing: -0.4em;
	margin-bottom: 30px;
}
.top05List1{
	display: inline-block;
	width: 352px;
	box-sizing: border-box;
	letter-spacing: 0.05em;
	line-height: 6.4rem;
	border-radius: 3.5rem;
	font-size: 2.5rem;
	font-weight: 500;
	position: relative;
	color: #fff;
	margin-right: 20px;
	margin-bottom: 20px;
	cursor: pointer;
	transition: 0.3s;
}
.top05List1:nth-child(3n){
	margin-right: 0;
}
.top05List1:last-child{
	margin-right: 0;
}
.top05List1:hover{
	background: #fff !important;
}
.top05List1.active{
	background: #fff !important;
}
.top05List1:after{
	content: "+";
	font-size: 3rem;
	font-weight: 500;
	display: block;
	position: absolute;
	right: 35px;
	top: 50%;
	transform: translateY(-50%);
}
.top05List1.active:after{
	content: "-";
}

/*カラー設定*/
.top05List1.col1{
	border: 3px solid #e79cbc;
	background: #e79cbc;
}
.top05List1.col1:hover{
	color: #e79cbc;
}
.top05List1.col1.active{
	color: #e79cbc;
}
.top05List1.col2{
	border: 3px solid #6ea5d2;
	background: #6ea5d2;
}
.top05List1.col2:hover{
	color: #6ea5d2;
}
.top05List1.col2.active{
	color: #6ea5d2;
}
.top05List1.col3{
	border: 3px solid #f39b65;
	background: #f39b65;
}
.top05List1.col3:hover{
	color: #f39b65;
}
.top05List1.col3.active{
	color: #f39b65;
}
.top05List1.col4{
	border: 3px solid #cb79af;
	background: #cb79af;
}
.top05List1.col4:hover{
	color: #cb79af;
}
.top05List1.col4.active{
	color: #cb79af;
}
.top05List1.col5{
	border: 3px solid #e47c87;
	background: #e47c87;
}
.top05List1.col5:hover{
	color: #e47c87;
}
.top05List1.col5.active{
	color: #e47c87;
}
.top05List1.col6{
	border: 3px solid #978ebe;
	background: #978ebe;
}
.top05List1.col6:hover{
	color: #978ebe;
}
.top05List1.col6.active{
	color: #978ebe;
}

#topSec06{
    position: relative;
}
.topSec06W {
    text-align: center;
	padding: 120px 0;
}

.top05Lists2{
	letter-spacing: -0.04em;
	margin-bottom: 85px;
}
.mapHid{
	display: none;
	transition: 0.3s;
	opacity: 0;
	overflow: hidden;
}
.mapHid.active{
	display: block !important;
	animation: appear 0.8s ease;
	animation-fill-mode: forwards;
}
  @keyframes appear {
    0%{
      opacity: 0;
		top: -100%;
    }
    100%{
      opacity: 1;
		top: 0;
    }
  }
.top05List2{
	display: inline-block;
	width: 256px;
	margin-right: 20px;
}
.top05List2:last-child{
	margin-right: 0;
}
.top05Link{
	display: block;
	width: 996px;
	margin: 0 auto;
	background: #F9E995;
	line-height: 5rem;
	font-size: 2rem;
	font-weight: bold;
	border-radius: 2.5rem;
	letter-spacing: 0.05em;
}
.top05Link:hover{
	opacity: 0.8;
}
.top05Link span{
	display: inline-block;
	position: relative;
}
.top05Link:after{
	content: "";
	background: url("../img/icon_link.svg") no-repeat;
	background-size: contain;
	width: 16px;
	height: 16px;
	display: inline-block;
	margin-left: 10px;
}
.top05Link .pink{
	color: #DA6574;
}

#topSec06{
    position: relative;
}
.topSec06W {
    text-align: center;
}
.sec06Ttl1{
    margin-bottom: 50px;
}
.top06Txt{
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin-bottom: 30px;
}
.top06Txt span{
	font-size: 3rem;
	color: #3CA8B4;
}
.top06Cau{
	font-size: 1.4rem;
	font-weight: normal;
	margin-bottom: 40px;
	letter-spacing: 0.05em;
}
.top06iframe{
	width: 100%;
	height: 600px;
	overflow-y: scroll;
}
.inner{
	min-width: 900px !important;
}
.top06StepW{
	margin-bottom: 40px;
}
.formW{
	border: 1px solid #91CDD5;
	border-radius: 30px;
	box-sizing: border-box;
	padding: 55px 50px;
}
.top06Ttl2{
	font-size: 2.5rem;
	letter-spacing: 0.05em;
	font-weight: bold;
	color: #3CA8B4;
	margin-bottom: 20px;
}
.top06Ttl2 span{
	display: inline-block;
	margin-right: 50px;
}
.top06Txt2{
	line-height: 2.8rem;
	letter-spacing: 0.05em;
	margin-bottom: 55px;
	display: inline-block;
	text-align: left;
}
.top06Box{
	text-align: left;
	padding: 35px 85px;
	box-sizing: border-box;
	border-top: 1px solid #91CDD5;
	line-height: 3.5rem;
	font-weight: 500;
}
.top06Ttl3{
	font-size: 2rem;
	margin-bottom: 10px;
}
.formBtnW{
	
}
.formBtnBack{
	display: inline-block;
	width: 160px;
	background: #fff;
	color: #3CA8B4 !important;
	font-weight: bold;
	font-size: 2rem;
	line-height: 5rem;
	border: 2px solid #3CA8B4;
	box-sizing: border-box;
	margin-right: 40px;
}
.formBtnNext{
	display: inline-block;
	width: 160px;
	background: #3CA8B4;
	color: #fff !important;
	font-weight: bold;
	font-size: 2rem;
	line-height: 5rem;
	border: 2px solid #3CA8B4;
	box-sizing: border-box;
}

/*お問い合わせ*/

.red{
    color: #D41939;
}

#inqSec01{
    position: relative;
}
.inqSec01W{
	width: 1000px;
	margin: 0 auto;
    text-align: center;
    padding-top: 30px;
    padding-bottom: 30px;
}
.req{
    color: #D41939;
	font-size: 1.4rem;
}
.input1{
    width: 352px;
    box-sizing: border-box;
    padding: 10px 15px;
    font-size: 1.6rem;
}
.input1::placeholder {
  color: #9A9A9A;
}
.otherInput{
	margin-left: 20px;
}
.input2{
    width: 100%;
    height: 130px;
    box-sizing: border-box;
    padding: 10px 15px;
    font-size: 1.6rem;
	margin-top: 30px;
}
.input2::placeholder {
  color: #9A9A9A;
    font-size: 1.6rem;
}
.input3{
    width: 88px;
    box-sizing: border-box;
    padding: 10px 15px;
    font-size: 1.6rem;
}

.errorH4{
	font-weight: 500;
	margin-bottom: 50px;
}
.errorMesseW{
	display: inline-block;
	text-align: left;
	margin-bottom: 50px;
}
.error_messe{
	line-height: 2.8rem;
}
.formTable {
    width: 600px;
    margin: 0 auto 50px;
}
.formTable th {
    text-align: left;
    padding: 15px;
    border-bottom: 1px solid #92CDD5;
    font-weight: bold;
}
.formTable tr:first-child th {
    border-top: 1px solid #92CDD5;
}
.formTable td {
    border-bottom: 1px solid #ddd;
    text-align: left;
    padding: 15px;
}
.formTable tr:first-child td {
    border-top: 1px solid #ddd;
}


.thanksBtn{
    margin-bottom: 80px;
}
