@charset "UTF-8";
/* CSS Document */

/*==========================
　　　　　　COMMON
==========================*/

html{
	overflow-X: hidden;
	overflow-y: auto;
}

body{
	margin: 0;
	background-color: #fff;
	font-family: "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 16px;
	color: #000;
}

h1, h2, h3, h4, h5{
	margin: 0;
	padding: 0;
	text-align: center;
	font-weight: 400;
}

img{
	width: 100%;
}

ul{
	margin: 0;
	padding: 0;
}

li{
	list-style-type: none;
}

p{
	margin: 0;
	padding: 0;
	line-height: 1.8em;
}

a:link, a:hover, a:active, a:visited{
	text-decoration:none;
}

a:link, a:hover,  a:active, a:visited{
	color: #000;
}

a:hover{
	opacity: 0.8;
}

/*色の共通CSS*/

.white{
	color: #fff;
}

.pink{
	color: #ff9ea6;
}


/*フォントの共通CSS*/

.bold{
	font-weight: 600;
}

.em11{
	font-size: 1.1em;
}

.em14{
	font-size: 1.4em;
}

.em08{
	font-size: 0.8em;
}

/*____サイズ調整____*/

.mb60{
	margin-bottom: 60px !important;
}


/*==========================
　　　　　　HEADER
==========================*/

header{
	width: 100vw;
	height: 60px;
	background-color: #ff9ea6;
	position: fixed;
	z-index: 400;
}


/*==========================
　　　　　　MAIN
==========================*/

/*____共通____*/

.left{
	width: 82vw;
}

.right{
	width: 18vw;
	height: 100vh;
	position: fixed;
	top: 0;
	right: 0;
	background-color: #ff9ea6;
	z-index: 100;
}

section{
	width: 70vw;
	max-width: 1000px;
	min-height: 100vh;
	margin: 0 auto;
	padding: 100px 0 0 0;
	box-sizing: border-box;
}

h2{
	margin: 0 auto 80px auto;
}

h2 img{
	width: 250px;
}

/*____toe_page____*/

#toe_page{
	padding: 0;
}

#toe_page .logo{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 100vh;
	text-align : center;
}

#toe_page .logo img{
	width: 400px;
	height: 352px;
}

/*____about_page____*/

#about_page p{
	margin: 0 auto 80px auto;
}

#about_page .dance{
	display: block;
	width: 700px;
	height: 280px;
	margin: 0 auto;
}

/*____menu_page____*/

#menu_page .menu_container{
	margin: 0 auto 80px auto;
}

#menu_page .menu_container .menulist{
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 0 auto 80px auto;
}

#menu_page .menu_container .menulist li, #menu_page .menu_container .menulist li a{
	width: 21vw;
	height: 21vw;
	max-width: 300px;
	max-height: 300px;
}

#menu_page .menu_container .menu_content{
	padding: 80px 0 ;
	box-sizing: border-box;
}

#menu_page .menu_container .menu_content h3{
	width: 250px;
	margin: 0 0 40px 0;
	text-align: left;
}

#menu_page .menu_container .menu_content h3 img{
	width: 280px;
}

#menu_page .menu_container .bx-wrapper{
	margin: 0 0 20px 0;
}

#menu_page .menu_container .bxslider img{
	width: 100%;
}

#menu_page .menu_container .bx-controls{
	display: none
}

#menu_page .menu_container .menu_content p{
	margin: 0 0 80px 0;
}

#menu_page .menu_container .menu_content img{
	display: block;
}

#menu_page .contactbtn{
	display: block;
	width: 500px;
	margin: 110px auto 190px auto;
}

#menu_page .contactbtn img{
	width: 500px;
	height: 103px;
}

#menu_page .careillust{
	display: block;
	width: 400px;
	height: 269px;
	margin: 0 auto 80px auto;
}

#menu_page .care_container{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 70vw;
	max-width: 1000px;
}

#menu_page .care_container li{
	width: 400px;
	margin: 0 auto 100px auto;
}

#menu_page .care_container li img{
	display: block;
	width: 400px;
	margin: 0 0 20px 0;
}

#menu_page .care_container li h4{
	margin: 0 0 20px 0;
	text-align: left;
	font-size: 1.2em;
}

/*____access_page____*/

#access_page .map{
	display: block;
	width: 400px;
	height: 510px;
	margin: 0 auto 40px auto;
}

#access_page p{
	width: 300px;
	margin: 0 auto 60px auto;
}

#access_page .g_map{
	display: block;
	width: 200px;
	height: 42px;
	margin: 0 auto 200px auto;
}

#access_page .g_map img{
	width: 200px;
	height: 42px;
}

/*____トップページの個人情報保護方針リンク____*/

.privacylink{
	display: flex;
	justify-content: center;
	margin: 100px auto 20px auto;
	text-align: center;
}

/*____コピーライト____*/

.copy{
	padding: 0 0 20px 0;
	text-align: center;
	font-size: 12px;
	color: #666;
}

/*____右サイドメニューバー____*/

.menu_bar {
	width: 160px;
	margin: 0 auto;
}

.menu_bar .menu_bar_inner .pagetop{
	display: none;
}

.menu_bar .menu_bar_inner .pagetop .pagetop_btn{
	position: fixed;
	right: 2vw;
	top: 3%;
	z-index: 200;
}

.menu_bar .menu_bar_inner .pagetop_btn img{
	width: 15vw;
	max-width: 200px;
}

.menu_bar .menu_bar_inner ul{
	display: flex;
	align-content: flex-end;
	flex-wrap: wrap;
	height: 100vh;
}

.menu_bar .menu_bar_inner ul li{
	margin: 0 auto 60px auto;
}

.menu_bar .menu_bar_inner ul li a{
	display: block;
	width: 130px;
}

.menu_bar .menu_bar_inner ul .contact a{
	width: 160px;
}

.menu_bar .menu_bar_inner ul .insta a{
	width: 50px;
}

/*____お問い合わせフォーム____*/

.modal-wrap input{
	display: none;
}

.modal-overlay{
	display: flex;
	justify-content: center;
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100vw;
	height: 100%;
	background: rgba(0,0,0,0.7);
	opacity: 0;
	transition: opacity 0.5s, transform 0s 0.5s;
	-ms-transform: scale(0);
	transform: scale(0);
	overflow-y: scroll;
	-webkit-overflow-scrolling:touch;
	overflow-scrolling:touch;
}

.modal-trigger{
	position: absolute;
	width: 100%;
	height: 100%;
}

.modal-content{
	align-self: start;
	margin: 60px 0;
	width: 70%;
	max-width: 800px;
	padding: 30px 30px 15px;
	box-sizing: border-box;
	background: #fff;
	line-height: 1.4em;
	-ms-transform: scale(1.2);
	transform: scale(1.2);
	transition: 0.5s;
}

.modal-content h5{
	margin: 40px auto;
	line-height: 30px;
	font-size: 20px;
}

.modal-content dt{
	display: block;
	padding: 0 0 8px 0;
}

.modal-content dd{
	margin: 0 0 15px 0;
}

.modal-content dd select{
	width: 200px;
	padding: 5px;
	border: #ff9ea6 1px solid;
	font-size: 17px;
}

.modal-content dd input{
	display: block;
	width: 300px;
	padding: 5px;
	border: #ff9ea6 1px solid;
	line-height: 30px;
	font-size: 17px;
}

.modal-content dd textarea{
	display: block;
	width: 95%;
	border: #ff9ea6 1px solid;
	line-height: 28px;
	font-size: 17px;
}

.modal-content dd textarea::placeholder {
	color: #aaa;
}

.modal-content .sendbtn{
	text-align: right;
}

.modal-content .sendbtn button{
	width: 160px;
	height: 47px;
	margin: 20px 35px 20px 0;
	padding: 0;
	background-color: #fff;
	border: none;
}

.modal-content .sendbtn button img{
	width: 160px;
	height: 47px;
}


.modal-content p{
	text-align: left;
}

.modal-content .logo-modal{
	display: block;
	width: 100px;
	height: 23px;
	margin: 0 0 0 auto;
}

.close-button{
	position: absolute;
	top: 14px;
	right: 16px;
	font-size: 30px;
	font-weight: 100;
	cursor: pointer;
}

.modal-content .close-txt{
	position: absolute;
	bottom: 10px;
	left: 20px;
	margin: 30px 0 0 0;
	font-size: 17px;
	font-weight: 100;
	cursor: pointer;
}

.modal-wrap input:checked ~ .modal-overlay{
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.5s;
}

.modal-wrap input:checked ~ .modal-overlay .modal-content{
	transform: scale(1);
}

#contact{
	min-height: 85vh;
}

#contact p{
	margin: 0 0 100px 0;
}

#contact .address{
	margin: 60px auto 100px auto
}

#contact a{
	color: #ff9ea6;
}

#contact a:link, #contact a:hover, #contact a:active, #contact a:visited{
	color: #ff9ea6;
}

/*____個人情報保護方針ページ____*/

#privacy{
	min-height: 85vh;
}

#privacy h3{
	margin: 0 auto 100px auto;
	letter-spacing: 0.1em;
	font-size: 30px;
	font-weight: 600;
}

#privacy .address{
	margin: 60px auto 100px auto
}

#privacy a{
	color: #ff9ea6;
}

#privacy a:link, #privacy a:hover, #privacy a:active, #privacy a:visited{
	color: #ff9ea6;
}