html { scroll-behavior: smooth;}

body {
	font-family: "Yu Mincho","YuMincho","游明朝体",'Lato',serif;
	letter-spacing: 0.12em;
}

.firasans {
	font-family: 'Fira Sans', sans-serif;
	letter-spacing: 0.16em;
}

a {
	color:inherit;
	text-decoration: none;
}


img {
	width:100%;
}

#modal {
	color:rgb(255,255,255);
	position:fixed;
	top: 8vh;
	left:max(10vw, calc(50vw - 547px));

	width:80%;
	max-width:1094px;
	overflow:auto;
	height:80vh;
	background-color:rgb(27,61,122,0.8);
	z-index:500;
}
#modal_nai {
	display: flex;
	height:80vh;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
}
.Reserve {
	font-size:70px;
}

.Reserve_mini {
	font-size:14px;
	text-align:center;
}

.modal_title {
	padding-top: 80px;
}

.modal_shop {
	width:min(90%, 750px);
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.modal_shopid {
	font-size:18px;
	width:375px;
	line-height: 2.5em;
	cursor: pointer;
}

.modal_close {
	font-size:23px;
	padding-bottom: 50px;
	cursor: pointer;
}


#headcure_fv {
	background-image: url('../image/fv.jpeg');
	background-repeat: no-repeat;
	width:100%;
	min-width:1200px;
	height:100vh;
	background-size: cover;
	background-position: right top;
	color:#fff;
}

#header {
	width:calc(100% - 104px);
	display:flex;
	justify-content: space-between;
	margin:0 auto;
	padding-top:50px;
	padding-left:52px;
	padding-right:52px;
}

.logo {
	width:50%;
	max-width:200px;
	cursor: pointer;
}
.manu{
	position: fixed;
	right: 52px;
	z-index:999;
    width: 50px;
}
#header_manu {
	background-color:rgb(198,206,212,0.9);
	min-width:500px;
	width:41%;
	text-align: center;
	height:calc(100vh);
	position:fixed;
	right:0;
	top:0;
	z-index:500;
}
#header_waku {
	width:100%;
	position:absolute;
	right:0;
	left:0;
	top:0;
	bottom:0;
	padding: 50px 0;
	overflow:auto;
}

#header_manu img {
	width:31px;
	cursor: pointer;
	margin: 0 15px;
}

.manu img {
	cursor: pointer;
}

.menu_x {
	text-align: right;
	padding-right:100px;
}

.menu_sns {
	margin-top:100px;
}

.menu_size {
	display: flex;
	justify-content: center;
	flex-direction: column;
	height: 80vh;
}

.menu_list {
	font-family: "ヒラギノ角ゴシック","游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	font-size:33px;
}

.menu_list li {
	margin:10px 0;
}

h1 {
	font-size:120px;
	text-align:center;
	letter-spacing: 0.2em;
	opacity:0.7;
}

.h1_mini {
	font-size:50px;
	text-align:center;
	opacity:0.7;
}
.eachTextAnime span{opacity: 0;}
.eachTextAnime.appeartext span{ animation:text_anime_on 1.8s ease-out forwards; }
@keyframes text_anime_on {
	0% {opacity:0;}
	100% {opacity:1;}
}
.f {
	width:100%;
	display:flex;
	margin:0 auto;
	justify-content: space-around;
	position: absolute;
	top: 50%;
	transform: translate(0, -50%);
}

.f div{
	overflow: hidden;
}

#yoyaku {
	position: fixed;
	bottom: 1%;
	right: 52px;
	width:240px;
	cursor: pointer;
	z-index: 99999;
	opacity: .8;
}

@media screen and (max-width: 1200px){
#yoyaku {
right: 0px;
}
}

#yoyaku img:hover {
	opacity: 0.8;
}



#about:before {
	position: fixed;
	z-index:-1;
	display:block;
	content:"　";
	height:100vh;
	width:100vw;
	background-image: url('../image/about.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right top;
	top:0;
}
#about {
	width:100%;
	min-width:1200px;
	color:#fff;
	font-size:0;
}

.size {
	width:calc(100% - 50px);
	max-width:1076px;
	min-width:1076px;
	padding-left:20px;
}

.about_content{
	display:flex;
	margin:0 auto;
	margin-bottom:120px;
	padding-top:80px;
}

.about_left {
	width:615px;
}

.about_image {
	max-width:370px;
	margin: 50px 0 0 50px;
}


.about_image2 {
	max-width:570px;
	position: absolute;
	left:0;
}

.about_image2 img{
	position: relative;
	left:0px;
	width:120%;
}

.about_right {
	width:490px;
	display:flex;
	flex-direction: column;
}

.about_title1 {
	font-size:25px;
	margin-top:80px;
}

.about_title2{
	font-size:35px;
	line-height: 2em;
}
.about_text {
	font-size:19px;
	line-height: 1.9em;
	margin-top:200px;
}

.about_explanation {
	position: relative;
	font-size:16px;
}

.about_white {
	position:absolute;
	left:-30px;
	background-color:rgb(255,255,255,0.3);
	border-radius: 80px;
	width:calc(100% - 50px);
	padding:20px 40px;
	margin: 30px 0;
	line-height: 2.1em;
}

.about_minititle {
	color:#808080;
	background-color:#fff;
	border-radius: 20px;
	padding: 2px 10px;
	margin-right:5px;
}

.about_white2 {
	position:absolute;
	left:-10px;
	background-color:rgb(255,255,255,0.2);
	width:400px;
	padding:20px 0;
	margin: 30px 0;
	line-height: 1.9em;
	display: flex;
    flex-direction: column;
    align-items: center;
}

.about_osusume {
	width:100%;
	height:45px;
	max-width:265px;
	background-repeat: no-repeat;
	background-image: url('../image/osusume.png');
	text-align:center;
	color:#808080;
	line-height: 43px;
	margin:0 auto;
	margin-bottom:20px;
	margin-top:10px;
}

.about_feature {
	width:100%;
}

.top200 {
	margin:200px;
}

.top350{
	margin-top:350px;
}

.top170 {
	margin-top:170px;
}

.top80 {
	margin-top:80px;
}
.top10 {
	margin-top:10px;
}

.top100 {
	margin-top:100px;
}


.top180 {
	margin-top:180px;
}

#feature {
	position:relative;
	background-image: url('../image/feature01.png');
	background-repeat: no-repeat;
	width:100%;
	height:100vh;
	min-width:1200px;
	min-height:800px;
	background-size: cover;
	background-position: center top;
	color:#fff;
	top:-170px;
	padding-bottom:170px;
    margin-bottom: -170px;
}

.feature2 {
	position:relative;
	background-image: url('../image/feature02.png');
	background-repeat: no-repeat;
	width:100%;
	height:100vh;
	min-width:1200px;
	min-height:800px;
	background-size: cover;
	background-position: center center;
	color:#fff;
}

.feature3 {
	position:relative;
	background-image: url('../image/feature03.png');
	background-repeat: no-repeat;
	width:100%;
	height:100vh;
	min-width:1200px;
	min-height:800px;
	background-size: cover;
	background-position: center center;
	color:#fff;
}

.feature4 {
	background-image: url('../image/feature04.png');
}
.feature5 {
	background-image: url('../image/feature05.png');
	height:calc(100vh + 280px);
	min-width:1200px;
	min-height:1480px;
	background-position: center bottom;
	z-index:5;
	position:relative;
}

.feature_content01 {
	display:flex;
	margin:0 auto;
	flex-direction: column;
}

.feature_content02 {
	display:flex;
	flex-direction: column;
	position:absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width:100%;
	max-width:1096px;
	padding:52px 52px 90px 52px;
	bottom:0px;
}

.feature_content03 {
	display:flex;
	flex-direction: column;
	align-items: flex-end;
	position:absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width:100%;
	max-width:1096px;
	padding:52px 52px 90px 52px;
	bottom:0px;
}

.feature_content04 {
	display:flex;
	flex-direction: column;
	position:absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width:100%;
	max-width:1096px;
	padding:52px 52px 90px 52px;
	bottom:0px;
}
.feature_content05 {
	display:flex;
	flex-direction: column;
	position:absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width:100%;
	max-width:1096px;
	padding:52px 52px 230px 52px;
	bottom:100px;
}

.feature_h2 {
	font-size:90px;
	text-align:center;
	margin-top:250px;
}
.feature_h2-2 {
	font-size:90px;
	text-align:center;
	margin-top:200px;
}

.feature_h2_mini {
	font-size:26px;
	text-align:center;
	margin-top:5px;
}

.feature_no {
	font-size:42px;
}
.feature_no2 {
	text-align:right;
}

.feature_title {
	font-size:114px;
	margin: -10px 0;
	line-height:1.4;
}

.feature_qualification {
	width:calc(600px - 10px);
	background-color:rgb(116,116,120,0.4);
	border: 1px solid #fff;
	padding:5px;
	display:flex;
	font-size:16px;
	line-height: 1.2em;
}

.feature_top {
	font-size:16px;
	margin-bottom:2px;
	margin-left:-4px;
}

.feature_qualification img {
	width:100%;
	max-width:132px;
}


.feature_qualification_right {
	display:flex;
	flex-direction: column;
	width:calc(100% - 40px);
	padding: 0 20px;
	justify-content: center;
	letter-spacing: 0.12em;
	line-height: 1.5em;
}
.feature_hr{
	width:100%;
}


.feature_qualification_text {
	width:100%;
	letter-spacing: 0.1em;
}

.feature_qualification_text_mini {
	width:100%;
	font-size:14px;
	letter-spacing: 0.04em;
}

.feature_qualification2 {
	width:calc(745px - 30px);
	display:flex;
	font-family: "ヒラギノ角ゴシック","游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	font-size:12px;
	letter-spacing: -0.02em;
	text-align:center;
	justify-content: space-between;
	padding-left:30px;
	line-height: 1.4em;

}
.feature_yu {
	display:flex;
	width:120px;
	flex-direction: column;
}

.feature_yu img {
	width:92%;
}

.shikaku_t {
	display:flex;
	justify-content: space-between;
	width:100%;
	margin-top:40px;
}

.line {
	width:100%;
	border-width: 1px 0px 0px 0px;
	border-color: #000;
	color:#fff;
}
/*メリット*/

.feature_meritto {
	width:100%;
	margin-bottom:-1vh;
}

.feature_meritto img {
	width:100%;
}
.feature_text {
	font-size:19px;
}
.feature_svg{
	position:relative;

}
#lineart1{
	position:absolute;
	top:-60px;
	left:160px;
	height:250px;
}
#lineart2{
	position: absolute;
	top: -185px;
	right: 110px;
	height:250px;
}
#lineart3{
	position:absolute;
	top:-120px;
	left:105px;
	height:250px;
}
#lineart4{
	position: absolute;
	top: -125px;
	right: 85px;
	height: 130px;
}
#lineart5{
	position:absolute;
	top:-105px;
	left:190px;
	height:250px;
}


#meritto:before {
}
#meritto {
	z-index:1;
	padding-top:4vh;
	width:100%;
	min-width:1200px;
	position:relative;
	top:-175px;
	padding-bottom:150px;
	color:#fff;
}

.meritto_title {
	display:flex;
	flex-direction: column;
    align-items: center;
	text-align:center;
}

.meritto_title2 {
	font-size:28px;
	line-height: 2.2em;
	margin-top:50px;
}

.meritto30 {
	font-size:62px;
	margin-bottom:40px;
}

.meritto_content{
	width:960px;
	color:#fff;
	display:flex;
	margin:0 auto;
	margin-top:80px;
}

.meritto_img_01 {
	width:456px;
}

.meritto_img_02 {
	width:382px;
}

.meritto_img_03 {
	width:405px;
}
.meritto_img_04 {
	width:384px;
}


.meritto_text {
	width:calc(50% - 60px);
	padding:0 0 0 60px;
	font-size:28px;
}

.meritto_ul {
	width:100%;
	margin-top:20px;
}

.meritto_ul img {
	width:38px;
	margin-right:15px;
	margin-left:5px;
}
.meritto_ul li {
	font-size:20px;
	display:flex;
	align-items: center;
	line-height:2.5em;
}


.meritto_img_title {
	position: relative;
}

.meritto_img_title img {
	position:absolute;
	z-index:1;
}

.meritto_img_title_text {
	position:absolute;
	font-size:42px;
	z-index:2;
	text-align:center;
	letter-spacing: 0.12em;
	left:150px;
	top:70px;
}

.meritto_img_title_text2 {
	position:absolute;
	font-size:42px;
	z-index:2;
	text-align:center;
	letter-spacing: 0.12em;
	left:60px;
	top:155px;
}

.meritto_img_title_text3 {
	position:absolute;
	font-size:42px;
	z-index:2;
	text-align:center;
	letter-spacing: 0.12em;
	left:70px;
	top:110px;
}


.meritto_img_title_text4 {
	position:absolute;
	font-size:42px;
	z-index:2;
	text-align:center;
	letter-spacing: 0.12em;
	left:80px;
	top:75px;
}
.meritto_big {
	font-size:85px;
	line-height:1.1em;
}

.top430 {
	position:relative;
	padding-top:500px;
}
/*プログラム*/

#program:before {
	position: sticky;
	z-index:-1;
	display:block;
	content:"　";
	height:100vh;
	width:100vw;
	background-image: url('../image/program.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right top;
	top:0;
}
#program_frame{
	position:relative;
	top:-100vh;
	margin-bottom:-100vh;
}
#program {
	background-repeat: no-repeat;
	background-position: right top;
	width:100%;
	min-width:1200px;
	background-size: cover;
	background-attachment: fixed;
	color:rgb(155,163,181);
    position: relative;
    top: -175px;
    margin-bottom: 150px;
}

.program_h2 {
	font-size: 75px;
    text-align: center;
    margin-top: 230px;
	margin-bottom:20px;
}

.program_title {
	display:flex;
	flex-direction:column;
	margin:0 auto;
}
.program_slider {
	width:100%;
	margin-top:150px;
}

.slider_content {
	width:616px;
	height:calc(404px - 120px);
	border-radius: 120px;
	background-color:#fff;
	display:flex !important;
	flex-direction:column;
	align-items: center;
	padding: 60px 0;
	position: relative;
	margin-right:200px;
}

.slider_no {
	font-size:60px;
	line-height: 1em;
}

.slider_menu {
	font-size:27px;
	color:#000;
}

.slider_title {
	color:#000;
	font-size:30px;
}
.slider_w {
	display:flex;
	margin-top:20px;
}

.slider_text{
	width:240px;
	font-size:16px;
	color:#000;
	margin-right:20px;
	text-align: justify;
}

.slider_image{
	width:192px;
}

.slider_image img{
	width:100%;
}

.aging, .method {
	text-align:right;
}

.slider_left {
	width:auto;
	position:absolute;
	top: 185px;
	left: calc(50% - 440px);
	z-index:999;
	cursor:pointer;
}

.slider_right {
	width:auto;
	position:absolute;
	top: 185px;
	left: calc(50% + 285px);
	z-index:999;
	cursor:pointer;
}

.program_menu {
	width:960px;
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin:0 auto;
	margin-top:100px;
}

.plan {
	width:282px;
	height:412px;
	position: relative;
	overflow: hidden;
	margin-bottom:60px;
}

.plan_img img{
}

.dots-2 {
  position:relative;
}
.dots-2 .slick-dots {
  text-align: center;
}
.dots-2 .slick-dots li {
  display: inline-block;
}
.dots-2 .slick-dots button {
  display: block;
  width: 10px;
  height: 10px;
  margin: 6px;
  font-size: 0;
  padding: 0;
  border: 0;
  outline: none;
  cursor: pointer;
  background: #bcbcbc;
  border-radius: 50%;
}
.dots-2 .slick-dots .slick-active button {
  background: #0a467d;
}
.slick-dots li.slick-active button:before {
    color: unset;
}
.slick-dots li button:before {
    color: unset;
}

.plan_n {
	display:flex;
	text-align:center;
}


.plan_text {
	font-size:20px;
	color:#fff;
	background-color:rgb(155,163,181);
	height:242px;
	width:282px;
	border-radius: 0px 0px 700px 700px;
	border-top-right-radius: 1000px 400px;
	border-top-left-radius: 1000px 400px;
	position:absolute;
	top:170px
}

.plan_menu {
	margin-top:30px;
}

.plan_price {
	font-size:17px;
}

.plan_s {
	font-size:17px;
	margin-top:30px;
}

/*Eral*/

#eral {
	color:rgb(155,163,181);
	position: relative;
	height:calc(100vh - 320px);
	min-height:630px;
}

.eral_back {
	position:absolute;
	background-image: url('../image/eral.png');
	background-repeat: no-repeat;
	width:100%;
	min-width:1200px;
	height:100vh;
	min-height:1050px;
	background-size: cover;
	background-position: center top;
	top:-330px;
}

.zasshi {
	display:flex;
	flex-direction:column;
	font-size:18px;
	position:absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width:100%;
	max-width:996px;
	padding:52px;
	bottom:0px;
	top:480px;
}

.zasshi img{
	width:395px;
	margin-top:5px;
}



/*予約*/

#reserve {
	width:100%;
	min-width:1200px;
	background-color:rgb(199,210,224);
	color:#fff;
}

.shop_main {
	width:100%;
	max-width:1010px;
	margin:0 auto;
	margin-top:30px;
	letter-spacing: 0.04em;
	font-family: "ヒラギノ角ゴシック","游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	color:#000;
	display:flex;
	flex-wrap: wrap;
	align-items: flex-end;
}
.shop_i {
	width:100%;
	max-width:288px;
	margin:0 auto;
	margin-bottom:35px;
}

.shop_id {
	font-size:18px;
	letter-spacing: 0.04em;
}

.shop_address {
	font-size:13px;
}

.shop_b {
	display:flex;
	justify-content: space-between;
	margin-top:5px;
}

.shop_button {
	color:#fff;
	width:calc(120px - 10px);
	height:30px;
	background-color:rgb(155,163,181);
	border-radius: 15px;
	font-size:13px;
	display:flex;
	justify-content: space-around;
	align-items: center;
	padding-left:10px;
}

.shop_insta {
	width:30px;
}

.shop_img {
	width:21px;
	margin-bottom:7px;
}

.shop_img img{
	width:100%;
}

.sns {
	width:100%;
	display:flex;
	font-size:13px;
	color:#000;
	align-items: center;
	flex-direction: column;
}

.sns_icon img {
	width:31px;
	margin: 30px 15px 30px 15px;
}

.sns_text {
	margin-bottom:35px;
}


.sp {
	display:none;
}

.pc {
	display:block;
}
.pc_f {
	display:flex;
}

.logo_f {
	margin-top:30px;
	width:100%;
	text-align:center;
}

.logo_f img {
	width:141px;
}

/*スマホ設定 850px以下の場合*/

@media (max-width:850px) {

}