/* --- sub f_view --- */

.abo_head_wrap {
	margin-top:60px;
	padding:70px 80px;
}

.abo_head_wrap .inner {
	max-width:1200px;
	padding: 50px 20px 10px;
}

.abo_head_img {
	width:52%;
}

.abo_head_txt {
	width:44%;
	min-width:480px;
	padding:40px 30px;
}

.abo_head_txt p span {
	display: block;
	text-align:center;
	font-size:2rem;
	line-height:1.5em;
	padding:1.2em 1em 0.5em 1em;
	border-bottom:2px dotted #69b6e8;
}

.abo_head .h_title::before {
	left:10%;
}

.abo_head .h_title::after {
	right:10%;
}
.room_wrap{
	margin-bottom: 80px;
}
/* --- staff --- */

.staff {
	position:relative;
	overflow:visible;
}

.staff .inner {
	overflow: visible;
}

.staff::before {
	content:"";
	display: block;
	width:77.333vw;
	height:41.777vw;
	position:absolute;
	bottom:0;
	z-index:-3;
}

.staff_kaori {
	padding:60px 0 90px;
	position:relative;
}

.staff_kaori {
	padding:60px 0 90px;
	position:relative;
}

.staff_masa {
	padding:130px 0 180px;
	position:relative;
}

.staff_kaori::before {
	background:url(../images/about/obj_pink.png) no-repeat center / contain;
	left:0;
}

.staff_masa::before {
	background:url(../images/about/obj_blue.png) no-repeat center / contain;
	right:0;
}

.staff_kaori::after {
	content:"";
	display: block;
	width:229px;
	height:338px;
	background:url(../images/about/hoshi.png) no-repeat center / contain;
	position:absolute;
	left:11%;
	right:0;
	bottom:-30%;
	margin:0 auto;
	z-index:1;
}

.staff_masa::after {
	content:"";
	display: block;
	width:128px;
	height:213px;
	background:url(../images/about/kikyu.png) no-repeat center / contain;
	position:absolute;
	right:20%;
	top:-10%;
	z-index:1;
}

.staff_masa .inner {
	flex-direction: row-reverse;
	-webkit-flex-direction: row-reverse;
}

.staff_img {
	margin-top:130px;
	width:32%;
}

.staff_img figure {
	position:relative;
}

.staff_img figure::before {
	content:"";
	display: block;
	position:absolute;
	z-index:-1;
}

.staff_kaori .staff_img figure::before {
	width:117px;
	height:217px;
	background:url(../images/about/fusen01.png) no-repeat center / contain;
	left:-90px;
	top:-60px;
}

.staff_masa .staff_img figure::before {
	width:176px;
	height:233px;
	background:url(../images/about/fusen02.png) no-repeat center / contain;
	right:-150px;
	top:66px;
}

.staff_kaori .staff_img {
	padding-left:28px;
}

.staff_masa .staff_img {
	padding-right:86px;
}

.staff_img figcaption span {
	font-size:2rem;
	display: block;
	margin:1em 0 0.6em;
}

.staff_kaori .staff_img figcaption span {
	color:#e2eef5;
}

.staff_masa .staff_img figcaption span {
	color:#f3b7b7;
}

.staff_txt {
	width:66%;
}

.staff_masa .staff_txt {
	position:relative;
	left:-40px;
}

.staff_txt_wrap {
	margin:0 0 0 10%;
	padding:1.2em 1.5em;
	background:rgba(255,255,255,0.39);
}

.staff_masa .staff_txt_wrap {
	max-width:640px;
	margin:0 4% 0 auto; 
}


.balloon {
	font-size:1.8rem;
	line-height:2em;
}

.balloon1 {
	background:url(../images/about/balloon01.png) no-repeat bottom center / contain;
	padding: 3em 5em 6em 6em;
}

.balloon2 {
	background:url(../images/about/balloon02.png) no-repeat bottom center / contain;
	padding: 3em 5em 6em 6em;
}

/* --- shop info --- */

.shop_info {
	padding:110px 0;
	overflow:visible;
}

.shop_info .inner {
	position:relative;
}

.shop_info h2{
	font-size: 3rem;
    text-align: center;
    /* display: inline-block; */
    margin-bottom: -3rem;
}
.shop_wrap {
	padding:80px 45px 110px;
	position:relative;
}
.shop_wrap .abo_head_wrap {
    margin-top: 0;
    padding: 60px 70px 80px;
	margin-bottom: 80px;
}
.shop_wrap::after {
	content: "";
    display: block;
    width: 22vw;
    max-width: 270px;
    height: 16.5vw;
    max-height: 297px;
    background: url(../images/index/happylife.png) no-repeat center / contain;
    position: absolute;
    left:-20px;
   	bottom: -14%;	
}


.shop_wrap .h_title svg {
	max-height:9rem;
}

.shop_wrap .h_title text {
	font-size:6rem!important;
}

.shop_wrap .h_title::before {
	left:23%;
}

.shop_wrap .h_title::after {
	right:23%;
}

.shop_wrap .shop_img {
	margin:100px auto 46px;
	border:2px solid #9f9f9f;
	position:relative;
}

.shop_wrap figure {
	width:50%;
	text-align:center;
}
.shop_wrap h3 {
	font-size:1.8rem;
	position:absolute;
	top:1.5em;
	left:50%;
	padding:0.4em 0.5em;
	background:rgba(255,255,255,0.5);
	border-radius:10px;
	transform:translateX(-50%);
}

.address_txt {
	width:50%;
}

.googlemap {
	width:46%;
}

.address_wrap dl dt {
	padding:0 0 0 0.8em;
	line-height:1.5em;
	font-size:2.5rem;
	position:relative;
}

.address_wrap dl dt::before {
	content:"";
	display: block;
	width:10px;
	height:100%;
	background:#fcaeae;
	position:absolute;
	left:0;
	top:0;
}


.address_wrap dl dt::after {
	content:"";
	display: block;
	width:100%;
	height:2px;
	background:#333;
	position:absolute;
	left:0;
	bottom:-0.2em;
}

.address_wrap dl dd {
	padding:1.5em 0 1em 1em;
	font-size:1.8rem;
	line-height:1.75em;
}

.address_wrap dl dd p {
	font-size:1.8rem;
	line-height:1.75em;
}

.googlemap iframe {
	width:100%;
}

/* --- counseling --- */

.counseling {
	padding: 0;
}

.abo_nolist {
	margin:80px auto 0;
}
.counseling h2{
	font-size: 4rem;
    text-align: center;
    display: block;
    margin-bottom: -0.2em;
}

.line_wrap {
	padding:1.5em 1.5em 2em;
	border-bottom:2px dotted #42a3e2;
}

.counseling .h_title tspan {
	font-size:5rem;
}

.counseling .h_title::before {
	top:30%;
	left:3%;
}

.counseling .h_title::after {
	top:30%;
	right:3%;
}

.line_wrap dt {
	font-size:3rem;
	position:relative;
	margin-bottom:0.5em;
	flex-wrap:nowrap;
	-webkit-flex-wrap:nowrap;
}

.abo_no {
	display:inline-block;
	width:52px;
	height:52px;
	line-height:52px;
	font-size:3rem;
	text-align:center;
	background:#e2eff7;
	border-radius:50%;
	margin-right:0.5em;
}

.line_wrap dd {
	padding-left:3.5em;
	font-size:1.8rem;
	line-height:1.75em;
}


@media screen and (max-width:1060px){

	.staff .inner {
		flex-wrap:wrap;
		-webkit-flex-wrap:wrap;
	}

	.staff_img,
	.staff_txt {
		width:100%;
	}

	.staff_img {
		text-align:center;
		margin-top:60px;
	}

	.staff_kaori .staff_img {
		padding-left:0;
	}

	.staff_kaori .staff_img figure::before {
		left:10%;
	}

	.staff_txt_wrap {
		margin:0 auto;
		width:100%;
	}

	.balloon1 {
		min-height:430px;
	}

	.staff::before {
		width:154.6vw;
		height:83.444vw;
	}

	.staff_kaori::before {
		left:auto;
		right:2%;
		bottom:55%;
	}

	.staff_masa .staff_img {
		padding-right:0;
	}

	.staff_masa .staff_img figure::before {
		right:5%;
	}

	.staff_kaori::after {
		bottom:-15%;
	}

	.staff_masa::after {
		top:-4%;
	}

	.staff_masa .staff_txt {
		left:auto;
	}

	.staff_masa::before {
		bottom:36%;
		left:5%;
		right:auto;
	}


	@media screen and (max-width:960px){

		.abo_head_wrap .inner {
			flex-wrap:wrap;
			-webkit-flex-wrap:wrap;
		}
		.abo_head_img,
		.abo_head_txt {
			width:100%;
		}

		.shop_wrap .h_title::before {
			left:12%;
			width:8.4%;
		}

		.shop_wrap .h_title::after {
			right:12%;
			width:8.4%;
		}
	}
	.shop_wrap .abo_head_wrap {
		margin-top: 0;
		padding: 10vw 5vw 12vw;
		margin-bottom: 80px;
	}
	.shop_wrap figure{
	    width: 100%;	
	}


}

/* --- ver sp --- */

@media screen and (max-width:768px){

.abo_head .h_title text {
	letter-spacing:-0.6rem;
}

.abo_head .h_title::before {
	left: 2%;
    top: 0vw;
}

.abo_head .h_title::after {
	right: 2%;
    top: 0vw;
}

.abo_head_wrap {
	margin-top:10vw;
	padding:10vw 5vw 12vw;
}

.abo_head_wrap .inner {
	padding:2.5vw 5vw;
}

.abo_head_txt {
	min-width:auto;
	padding:0vw 0vw 5vw;
}

.abo_head_txt p span {
	font-size:3.5vw;
	padding:1em 0 1em;
}

.staff_kaori {
	padding:45vw 0 15vw;
}

.staff_img {
	margin:20vw 0 0;
	width:100%;
	text-align:left;
}

.staff_img figure {
	width:80%;
	margin-left:auto;
	text-align: center;
}

.staff_kaori .staff_img figure::before {
	width:29.25vw;
	height:54.25vw;
	top:-15vw;
	left:-20vw;
}


.staff_img figcaption {
	text-align:center;
}

.staff_img figcaption img {
	max-width:40vw;
}

.staff_img figcaption span {
	font-size:3.5vw;
}

.staff_txt {
	margin-top:5vw;
}

.staff_kaori .staff_txt {
	margin-top:10vw;
}

.staff_txt .balloon br {
	display: none;
}

.balloon {
	font-size:3vw;
	position:absolute;
	top:5vw;
	left:5vw;
}

.balloon1,
.balloon2 {
	min-height: auto;
    padding: 1em 3em 5em;
}

.balloon2 {
	background:url(../images/about/balloon01.png) no-repeat bottom center / contain;
}

.staff_txt_wrap {
	padding:1.2em 0;
}

.staff_txt_wrap p {
	font-size:3.125vw;
}
/*
.staff_kaori::before {
	bottom:57%;
}
*/
.staff_kaori::before {
	bottom:102vw;
}

.staff_kaori::after {
	width:42.9375vw;
	height:63.375vw;
    transform: rotate(-6deg);
	bottom:-17%;
	left: -32%;
	z-index:-1;
}

.staff_masa {
	padding:75vw 0 10vw;
}

.balloon2 {
	top:-132vw;
}

.staff_masa::after {
	width:24vw;
	height:39.9375vw;
	top: -4%;
    right: 10%;
    transform: rotate(9deg);
}

.staff_masa .staff_img figure::before {
	width:44vw;
	height:58.25vw;
	top:21vw;
	right:-28vw;
}

.staff_masa .staff_img figure  {
	margin-left:0;
	margin-right:auto;
}

.staff_masa .staff_txt_wrap {
	max-width:100%;
	margin:0 auto;
}

.staff_masa::before {
	bottom:16%;
}

.shop_info {
	padding:10vw 0;
}

.shop_wrap {
	padding:10vw 5vw 15vw;
}
/*
.shop_wrap .h_title text {
	font-size:10vw!important;
}
*/
.shop_wrap .h_title svg {
	max-height:auto;
}

.shop_wrap .h_title::before {
	width:15.25vw;
	left:-1vw;
}

.shop_wrap .h_title::after {
	width:15.25vw;
	right:-1vw;
}

.shop_wrap .shop_img {
	margin:10vw auto 10vw;
}

.shop_wrap h3 {
	width: 54%;
	text-align:center;
	font-size:3.125vw;
	border-radius:2.5vw;
	display: inline-block;
	top:1em;
}
/*
.shop_wrap figure {
	width: 100%;
}
*/
.address_txt,
.googlemap {
	width:100%;
}

.address_txt {
	margin-bottom:7.5vw;
}

.address_wrap dl dt {
	font-size:4vw;
}

.address_wrap dl dd {
	padding-left:0;
}

.address_wrap dl dd,
.address_wrap dl dd p {
	font-size:3.125vw;
}

.googlemap iframe {
	width: 100%;
	height:56.5vw;
}

.shop_wrap::after {
	width: 30.666vw;
    height: 24.8vw;
	left: -2vw;
    bottom: -18vw;
}

.counseling {
	padding:0;
}

.counseling .h_title::before {
	top:0;
	left:-2vw;
}

.counseling .h_title::after {
	top:0;
	right:-2vw;
}

.abo_nolist {
	margin:7.5vw auto 0;
}

.line_wrap {
	padding:5vw 0;
}

.line_wrap dt,
.abo_no {
	font-size:4.5vw;
}

.abo_no {
	width:10vw;
	height:10vw;
	line-height:10vw;
}

.line_wrap dd {
	font-size:3.125vw;
	padding-left:0;
}
.room_wrap{
	margin-bottom: 5vw;
}
.counseling h2 {
    font-size: 2.5rem;
    text-align: center;
    display: block;
    margin-bottom: -0.2em;
}
@media screen and (max-width:600px){
	.balloon2 {
		top:-145vw;
	}

}

@media screen and (max-width:420px){

	.shop_wrap .h_title text {
		font-size:4.5rem!important;
	}


}

}