@charset "UTF-8";

/* lv */
#lv {
	height: 700px !important;
}

#lv p span {
	line-height: 2;
}

@media screen and (max-height: 650px)and (min-width: 901px) {
	#lv {
		height: 400px !important;
	}

}

@media screen and (max-width: 800px) {
	#lv {
		height: 400px !important;
	}

	#lv p span {
		font-size: 1.3rem;
	}

	.parallax_img {
		background-position: 60% 50% !important;
	}
}

/* 新着情報 仕様変更 */
.entry_header {
	display: none;
}

#sidebar {
	display: none;
	float: none;
}

#primary {
	float: none;
	width: 100%;
}

.news_single.width_fixed>.content_wrapper {
	max-width: none !important;
	padding: 0;
}

.news_single #primary .entry_body>div,
.news_single #primary .entry_body>section {
	max-width: 1200px;
	width: calc(100% - 40px);
	margin: 0 auto;
}

.article-signature {
	display: none;
}

article .entry_meta,
.pager2 ul {
	max-width: 1200px;
	margin: 0 auto;
}

/* web予約 */
#link+.contents_btn01 {
	outline: 1px solid #fff;
	outline-offset: -10px;
}

#link+.contents_btn01 a {
	background: var(--i_btn_hover_color);
	border: 0;
	width: 90%;
	max-width: 600px;
}

#link+.contents_btn01 a span {
	font-size: 1.8rem;
	letter-spacing: 0.2rem;
	padding-block: 20px;
}

/* 丁寧なカウンセリングと心を込めた施術が好評 */
#i3+div .wrapper_item {
	justify-content: center;
}

#i3+div .inner_item {
	display: grid;
	place-content: center;
	border-radius: 50%;
	aspect-ratio: 1;
	background: var(--i_bg_color);
	max-width: 250px;
}

#i3+div .inner_item_img img {
	height: auto !important;
	max-width: 50px;
	aspect-ratio: 1;
	object-fit: contain;
}

#i3+div .heading.block_header_1 .h {
	font-size: 2.5rem;
	border-bottom: 1px solid var(--i_txt_color);
}

@media screen and (max-width: 900px) {
	#i3+div .heading.block_header_1 .h {
		font-size: 1.8rem;
	}
}

/* CONCEPT */
#h_s2+section {
	overflow: visible;
}

#h_s2+section .heading.block_header_2::before {
	position: absolute;
	display: block;
	content: "";
	pointer-events: none;
	width: 100%;
	height: 1px;
	left: 0;
	top: 3rem;
	background: var(--i_txt_color);
}

#h_s2+section .heading.block_header_2 .h {
	background: var(--i_bg2_color);
	padding-right: 2%;
}

#h_s2+section .inner_item_img {
	box-shadow: -25px 25px 0 #ebe4d6;
	margin-bottom: 0;
}

#h_s2+section .heading.block_header_2 p {
	font-size: 2.5rem;
	color: var(--i_main_color);
	line-height: 1.4;
}

@media screen and (max-width: 900px) {
	#s1+section .heading.block_header_1::before {
		top: 2rem;
	}

	#s1+section .inner_item_txt,
	#h_s2+section .inner_item_txt {
		padding-top: 50px !important;
	}

	#h_s2+section {
		padding-bottom: 50px;
	}

	#h_s2+section .heading.block_header_2 p {
		font-size: 1.5rem;
	}

	#h_s2+section .inner_item_txt .heading+p {
		font-size: 1.8rem;
	}
}

/* Point1 */
#int+div {
	max-width: none !important;
	width: 100% !important;
}

#int+div>.content_wrapper {
	max-width: 1500px !important;
	width: calc(100% - 40px);
}

#int+div .wrapper_item {
	overflow: visible;
}

#int+div .inner_item {
	border-left: 1px solid var(--i_txt_color);
	border-bottom: 1px solid var(--i_txt_color);
	background: var(--i_bg_color);
	padding: 20px;
}

#int+div .heading.block_header_4 .h {
	font-family: "Great Vibes", cursive;
	letter-spacing: 0;
	line-height: 1;
	font-size: 3rem !important;
	position: absolute;
	top: -35px;
	left: 0;
}

#int+div .heading.block_header_4 p {
	font-size: 2rem !important;
	line-height: 1.3;
	padding-bottom: 10px;
}

#int+div .inner_item_txt p {
	font-size: 1.45rem;
}

/* 画像 */
#pic+section {
	width: 90% !important;
	max-width: 1400px !important;
	min-height: 180px;
}

/* MENU */
#menu+div {
	margin-top: -80px !important;
}

#menu+div>.content_wrapper {
	background: #fff;
	width: calc(100% - 40px);
	padding: 50px 5% 80px !important;
}

#menu+div .heading+.add_text {
	text-align: left;
}

/* 予約 */
#btn+.contents_btn01 a {
	width: 100% !important;
	background: linear-gradient(135deg, #8c7851, #b69452, #4f483a);
	box-shadow: 0 4px 8px rgba(79, 72, 58, 0.2);
}

#btn+.contents_btn01 a span {
	font-size: 4rem;
	letter-spacing: 0.5rem;
}

@media screen and (max-width: 768px) {
	#btn+.contents_btn01 a span {
		font-size: 2rem;
	}
}

/* 予約・お問合せ */
#cta+div {
	max-width: none !important;
	width: 100% !important;
}

#cta+div .wrapper_item {
	padding-inline: 20px;
	align-items: center;
}

#cta+div .heading.block_header_1 {
	margin-bottom: 50px;
}

#cta+div .heading.block_header_1 .h {
	font-size: 2.5rem;
	border-bottom: 1px solid #fff;
}

#cta+div .inner_item a+.inner_item_txt {
	margin-top: 0;
}

#cta+div .inner_item .inner_item_img img {
	display: none;
}

#cta+div .inner_item_txt .heading .h {
	font-weight: 400;
}

#cta+div .inner_item:first-of-type .inner_item_txt .heading .h {
	display: inline-block;
	padding-left: 25px;
	width: auto;
	margin: 0 auto;
}

#cta+div .inner_item:first-of-type .inner_item_txt .heading .h::before {
	position: absolute;
	display: block;
	content: "";
	pointer-events: none;
	width: 18px;
	height: 18px;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'><path fill='%23ffffff' d='M31.985 25.248c0.068 0.52-0.090 0.971-0.474 1.355l-4.506 4.471c-0.203 0.226-0.469 0.418-0.796 0.576s-0.649 0.26-0.965 0.305c-0.023 0-0.090 0.006-0.203 0.017s-0.26 0.017-0.44 0.017c-0.429 0-1.124-0.073-2.084-0.22s-2.134-0.508-3.523-1.084c-1.389-0.576-2.964-1.44-4.726-2.592s-3.636-2.733-5.623-4.743c-1.581-1.558-2.891-3.049-3.93-4.472s-1.874-2.738-2.507-3.947c-0.632-1.208-1.107-2.304-1.423-3.286s-0.531-1.829-0.644-2.541-0.158-1.27-0.136-1.677c0.023-0.407 0.034-0.632 0.034-0.678 0.045-0.316 0.147-0.638 0.305-0.965s0.35-0.593 0.576-0.796l4.506-4.506c0.316-0.316 0.678-0.474 1.084-0.474 0.294 0 0.553 0.085 0.779 0.254s0.418 0.378 0.576 0.627l3.625 6.877c0.203 0.361 0.26 0.757 0.169 1.186s-0.282 0.79-0.576 1.084l-1.66 1.66c-0.045 0.045-0.085 0.119-0.119 0.22s-0.051 0.186-0.051 0.254c0.090 0.474 0.294 1.016 0.61 1.626 0.271 0.542 0.689 1.203 1.253 1.982s1.366 1.677 2.405 2.693c1.016 1.039 1.92 1.846 2.71 2.422s1.451 0.999 1.982 1.27 0.937 0.435 1.22 0.491l0.423 0.085c0.045 0 0.119-0.017 0.22-0.051s0.175-0.073 0.22-0.119l1.931-1.965c0.407-0.361 0.881-0.542 1.423-0.542 0.384 0 0.689 0.068 0.915 0.203h0.034l6.538 3.862c0.474 0.294 0.757 0.666 0.847 1.118z'/></svg>");
	background-size: contain;
	background-repeat: no-repeat;
}

#cta+div .inner_item:last-of-type .inner_item_txt .heading::before {
	opacity: 1;
	background: var(--i_btn_hover_color);
}

#cta+div .inner_item:last-of-type .inner_item_txt .heading .h {
	padding-right: 50px;
	transform: translateX(0);
	transition: .4s ease-in-out;
}

#cta+div .inner_item:last-of-type a:hover+.inner_item_txt .heading .h {
	transform: translateX(5px);
}

#cta+div .inner_item:last-of-type .inner_item_txt .heading .h::before {
	position: absolute;
	display: block;
	content: "";
	pointer-events: none;
	width: 20px;
	height: 20px;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	background: var(--i_bg_color);
	mask-image: url('data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_x32_%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20512%20512%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.st0%20%7B%20fill%3A%20%234b4b4b%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpolygon%20class%3D%22st0%22%20points%3D%22243.3%200%20202.7%2040.5%20389.5%20227.3%2012.7%20227.3%2012.7%20284.7%20389.5%20284.7%20202.7%20471.5%20243.3%20512%20499.3%20256%20243.3%200%22%2F%3E%3C%2Fsvg%3E');
}

#cta+div .inner_item:not(:nth-of-type(2)) .inner_item_txt .heading .h {
	font-size: 3rem;
}

@media screen and (min-width: 901px) {
	#cta+div {
		padding-block: 200px;
	}

	#cta+div .inner_item:nth-of-type(2) .inner_item_txt p {
		font-size: 2rem;
	}

}

@media screen and (max-width: 800px) {
	#cta+div .heading.block_header_1 .h {
		font-size: 1.6rem;
	}
}

/* インスタ */
#inst+section>.content_wrapper {
	width: calc(100% - 40px);
	padding-block: 50px !important;
}

#inst+section a span {
	font-size: 2rem;
}

/* システム見出し */
a[id^="sys"]+div .heading.block_header_1::before {
	position: absolute;
	display: block;
	content: "";
	pointer-events: none;
	width: 100%;
	height: 1px;
	left: 0;
	top: 3rem;
	background: var(--i_txt_color);
}

a[id^="sys"]+div .heading.block_header_1 p {
	background: var(--i_bg2_color);
	padding-right: 2%;
}

@media screen and (max-width: 900px) {
	a[id^="sys"]+div .heading.block_header_1::before {
		top: 2rem;
	}
}