@charset 'UTF-8';

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

	各固定ページ

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */



/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

	body直下にid名「wrapper」のdivがあります。
	こちらには、固定ページごとに異なるclass名(post-〇)が付与されますので、
	ご活用ください。
	
	【例】
	<body>
	<div id="wrapper" class="post-2 page type-page status-publish has-post-thumbnail hentry">

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */



/* ================================================================================

	レイアウト

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	#wrapper{
	}

	main.outer_wrap {
		position: relative;
		max-width: none;
		width: 100%;
		min-height: 50vh;
		display: block;
		padding: 110px 0 120px;
		margin: 0 auto;
	}

	.inner_wrap {
		position: relative;
		width: 100%;
		margin: 0 auto;
	}
}




/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		width: 100%;
		min-height: 50vh;
		padding: 12vw 0 13vw;
	}

	.inner_wrap {
		position: relative;
		width: 100%;
		padding: 0 4vw;
	}
}






/* ================================================================================

	メイン画像

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.m-cate_wrap {
		position: relative;
		background-color: #f5f5f5;
		width: auto;
		height: 26vw;
	}
	.m-cate_wrap_in {
		display: table;
		background: url(../img/main_cate.jpg) center top no-repeat;
		background-size: cover;
		width: 100%;
		height: 100%;
		padding: 2vw 0 0;
	}
	.m-cate_wrap_in h2 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		font-size: 3vw;
		font-weight: 600;
		letter-spacing: 0.05em;
		line-height: 1;
	}
}




/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	.m-cate_wrap {
		position: relative;
		background-color: #f5f5f5;
		width: auto;
		height: 50vw;
	}
	.m-cate_wrap_in {
		display: table;
		background: url(../img/main_cate.jpg) center top no-repeat;
		background-size: cover;
		width: 100%;
		height: 100%;
	}
	.m-cate_wrap_in h2 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		font-size: 6vw;
		font-weight: 600;
		letter-spacing: 0.05em;
		line-height: 1;
	}

}





/* ================================================================================

	マージンボックス

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* 上にマージンを空ける
	----------------------------------------------- */
	.top_long {
		margin-top: 120px;
	}
	.top_middle {
		margin-top: 80px;
	}
	.top_short {
		margin-top: 40px;
	}
	.top_vshort {
		margin-top: 20px;
	}

	/* 下にマージンを空ける
	----------------------------------------------- */
	.bottom_long {
		margin-bottom: 120px;
	}
	.bottom_middle {
		margin-bottom: 80px;
	}
	.bottom_short {
		margin-bottom: 40px;
	}
	.bottom_vshort {
		margin-bottom: 20px;
	}

	/* 両方にマージンを空ける
	----------------------------------------------- */
	.both_long {
		margin-top: 120px;
		margin-bottom: 120px;
	}
	.both_middle {
		margin-top: 80px;
		margin-bottom: 80px;
	}
	.both_short {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.both_vshort {
		margin-top: 20px;
		margin-bottom: 20px;
	}

}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* 上にマージンを空ける
	----------------------------------------------- */
	.top_long {
		margin-top: 16vw;
	}
	.top_middle {
		margin-top: 12vw;
	}
	.top_short {
		margin-top: 8vw;
	}
	.top_vshort {
		margin-top: 4vw;
	}

	/* 下にマージンを空ける
	----------------------------------------------- */
	.bottom_long {
		margin-bottom: 16vw;
	}
	.bottom_middle {
		margin-bottom: 12vw;
	}
	.bottom_short {
		margin-bottom: 8vw;
	}
	.bottom_vshort {
		margin-bottom: 4vw;
	}

	/* 両方にマージンを空ける
	----------------------------------------------- */
	.both_long {
		margin-top: 16vw;
		margin-bottom: 16vw;
	}
	.both_middle {
		margin-top: 12vw;
		margin-bottom: 12vw;
	}
	.both_short {
		margin-top: 8vw;
		margin-bottom: 8vw;
	}
	.both_vshort {
		margin-top: 4vw;
		margin-bottom: 4vw;
	}

}




/* ================================================================================

	パディングボックス

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* 上にパディングを空ける
	----------------------------------------------- */
	.p_top_long {
		padding-top: 120px;
	}
	.p_top_middle {
		padding-top: 80px;
	}
	.p_top_short {
		padding-top: 40px;
	}
	.p_top_vshort {
		padding-top: 20px;
	}

	/* 下にパディングを空ける
	----------------------------------------------- */
	.p_bottom_long {
		padding-bottom: 120px;
	}
	.p_bottom_middle {
		padding-bottom: 80px;
	}
	.p_bottom_short {
		padding-bottom: 40px;
	}
	.p_bottom_vshort {
		padding-bottom: 20px;
	}

	/* 両方にパディングを空ける
	----------------------------------------------- */
	.row_long {
		padding-top: 120px;
		padding-bottom: 120px;
	}
	.row_middle {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.row_short {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.row_vshort {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* 上にパディングを空ける
	----------------------------------------------- */
	.p_top_long {
		padding-top: 16vw;
	}
	.p_top_middle {
		padding-top: 12vw;
	}
	.p_top_short {
		padding-top: 8vw;
	}
	.p_top_vshort {
		padding-top: 4vw;
	}

	/* 下にパディングを空ける
	----------------------------------------------- */
	.p_bottom_long {
		padding-bottom: 16vw;
	}
	.p_bottom_middle {
		padding-bottom: 12vw;
	}
	.p_bottom_short {
		padding-bottom: 8vw;
	}
	.p_bottom_vshort {
		padding-bottom: 4vw;
	}

	/* 両方にパディングを空ける
	----------------------------------------------- */
	.row_long {
		padding-top: 16vw;
		padding-bottom: 16vw;
		padding-left: 4vw !important;
		padding-right: 4vw !important;
	}
	.row_middle {
		padding-top: 12vw;
		padding-bottom: 12vw;
		padding-left: 4vw !important;
		padding-right: 4vw !important;
	}
	.row_short {
		padding-top: 8vw;
		padding-bottom: 8vw;
		padding-left: 4vw !important;
		padding-right: 4vw !important;
	}
	.row_vshort {
		padding-top: 4vw;
		padding-bottom: 4vw;
		padding-left: 4vw !important;
		padding-right: 4vw !important;
	}
}





/* ================================================================================

	共通見出し

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* h2見出し
	----------------------------------------------- */
	.h2_cate {
		border-bottom: 2px solid;
		margin-bottom: 30px;
	}
	.h2_cate h2 {
		position: relative;
		font-size: 32px;
		font-weight: 500;
		line-height: 1.4 !important;
		text-align: center;
		padding-bottom: 0.3em !important;
		color: #9d2938;
	}
	.h2_cate h2::before {
		position: absolute;
		content: "-NICO-";
		display: block;
		bottom: -30px;
		left: 50%;
		font-size: 15px;
		margin-left: -39px;
	}

	/* h3見出し
	----------------------------------------------- */
	.h3_cate,
	.h3_cate_c {
		border-bottom: 1px dotted #9d2938;
	}
	.h3_cate h3 {
		font-size: 24px;
		font-weight: 500;
		line-height: 1.4 !important;
		padding-bottom: 0.2em !important;
	}
	.h3_cate_c h3 {
		font-size: 24px;
		font-weight: 500;
		line-height: 1.4 !important;
		text-align: center;
		padding-bottom: 0.2em !important;
	}
}




/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* h2見出し
	----------------------------------------------- */
	.h2_cate {
		border-bottom: 2px solid;
		margin-bottom: 3vw;
	}
	.h2_cate h2 {
		position:relative;
		font-size: 5.5vw;
		font-weight: 500;
		line-height: 1.4 !important;
		padding-bottom: 0.3em !important;
		text-align: center;
		color: #9d2938;
	}
	.h2_cate h2::before {
		position: absolute;
		content: "-NICO-";
		display: block;
		bottom: -7vw;
		left: 50%;
		font-size: 3.3vw;
		margin-left: -7vw;
	}

	/* h3見出し
	----------------------------------------------- */
	.h3_cate,
	.h3_cate_c {
		border-bottom: 1px dotted #9d2938;
	}
	.h3_cate h3 {
		font-size: 4.5vw;
		font-weight: 500;
		line-height: 1.4 !important;
		padding-bottom: 0.2em !important;
	}
	.h3_cate_c h3 {
		font-size: 4.5vw;
		font-weight: 500;
		line-height: 1.4 !important;
		text-align: center;
		padding-bottom: 0.2em !important;
	}

}




/* ================================================================================

	共通ボタン

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* リンクボタン */
	.link_cate01 {
		text-align: center;
	}
	.link_cate01 a {
		position: relative;
		display: inline-block;
		padding: 0.8em 4em;
		border: 1px solid;
		font-size: 24px;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		line-height: 1;
		text-align: center;
	}
	.link_cate01 a:after {
		position: absolute;
		content: "\f105";
		font-family: FontAwesome;
		right: 0.8em;
		top: 0.8em;
	}

}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* リンクボタン */
	.link_cate01 {
		text-align: center;
	}
	.link_cate01 a {
		position: relative;
		display: inline-block;
		padding: 0.8em 4em;
		border: 1px solid;
		font-size: 4vw;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		line-height: 1;
		text-align: center;
	}
	.link_cate01 a:after {
		position: absolute;
		content: "\f105";
		font-family: FontAwesome;
		right: 0.8em;
		top: 0.8em;
	}
}





/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

	ここから各固定ページ

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

/* ================================================================================

	各ページ共通

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* PCではテキスト中央
	----------------------------------------------- */
	.cate_content{
		text-align: center;
	}


	/* 例題の囲み
	----------------------------------------------- */
	.worried_box{
		border: dashed 2px #533b33;
		background: #ffffff !important;
		border-radius: 30px;
		font-size: 20px;
	}
	/* 少し大きめフォント
	----------------------------------------------- */
	.text_red_b{
		font-weight: bold;
		font-size: 20px;
		color: #9d2938;
	}

	/* 丸イラストのサイズ */
	.worred_img img,
	.happy_img img{
		width: 330px;
	}

}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* 例題の囲み
	----------------------------------------------- */
	.worried_box{
		border: dashed 1px #533b33;
		background: #ffffff !important;
		border-radius: 5vw;
		margin: -2vw 12vw 14vw !important;
	}
		/* 少し大きめフォント
	----------------------------------------------- */
	.text_red_b{
		font-weight: bold;
		font-size: 4.5vw;
		color: #9d2938;
	}

		/* 丸イラストのサイズ */
		.worred_img img,
		.happy_img img{
		width: 63vw;
	}

}






/* ================================================================================

	コンセプト

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* キャッチコピー
	----------------------------------------------- 
	.catch_copy {
		background-color: #f5f5f5;
	}
	.catch_copy h2 {
		font-size: 52px;
		font-weight: 500;
		text-align: center;
	}*/
}



/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* キャッチコピー
	----------------------------------------------- */
	.catch_copy {
		background-color: #f5f5f5;
	}
	.catch_copy h2 {
		font-size: 6vw;
		font-weight: 500;
		text-align: center;
	}

}





/* ================================================================================

	施術メニュー

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* コース内容項目 
	.course_list {
		border: 2px dotted;
		padding: 3%;
		margin: 0 0 3% 0 !important;
	}
	.course_list h4 {
		line-height: 1.4 !important;
	}*/


}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* コース内容項目 
	.course_list {
		border: 2px dotted;
		padding: 3%;
		margin: 0 0 3% 0 !important;
	}
	.course_list h4 {
		line-height: 1.4 !important;
	}*/
}



/* ================================================================================

	COMPANY

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	/* 代表者名 */
	.title_ceo {
		text-align: right;
		font-size: 40px;
	}
	.title_ceo span {
		font-size: 20px;
		margin: 0 0.5em 0 0;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	/* 代表者名 */
	.title_ceo {
		text-align: right;
		font-size: 8vw;
	}
	.title_ceo span {
		font-size: 4vw;
		margin: 0 0.5em 0 0;
	}
}





/* ================================================================================

	GALLERY

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.gallery_box a {
	}
	.gallery_box a img {
		width: 100%;
		height: 250px;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.elementor-image-gallery .gallery-item {
		width: 50%;
	}
	.gallery_box a {
		dipsly: block;
	}
	.gallery_box a img {
		width: 100%;
		height: 46vw;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}
}





/* ================================================================================

	CONTACT

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.cate_contact_text {
		padding: 40px 80px;
		margin: 0 0 40px 0 !important;
		border: 1px solid #cccccc;
	}
	.cate_contact_text h3 {
		font-size: 18px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.cate_contact_text {
		padding: 4vw;
		margin: 0 0 6vw 0 !important;
		border: 1px solid #cccccc;
	}
	.cate_contact_text h3 {
		font-size: 4vw;
	}
}




/* ================================================================================

	キャンペーン

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.campaign_box {
		border: 1px solid;
		padding: 4% 5%;
		font-size: 20px;
		letter-spacing: 0.05em;
		line-height: 1.5;
		text-align: center;
	}

	/* 見出し */
	.campaign_title01 {
		font-size: 1.5em;
	}

	/* 価格 */
	.campaign_title02 {
		margin-top: 20px;
		padding: 0.8em 0.1em 0.95em 0.1em;
		border-radius: 20px;
	}
	.campaign_title02 h3 {
		font-size: 1.4em;
		font-weight: 500;
		text-align: center;
	}
	.campaign_title02 h3 span {
		font-size: 2em;
		vertical-align: -0.2em;
	}

	/* 期間 */
	.campaign_title03 {
		margin-top: 20px;
		font-size: 1.2em;
	}

	/* 注意書き */
	.campaign_note {
		font-size: 1em;
		text-align: left;
		border-top: 1px solid;
		padding: 20px 0 0 0;
		margin-top: 20px;
	}

	/* WEB予約ボタン */
	.campaign-button {
		text-align: center;
	}
	.campaign-button a img {
		width: 268px;
		height: auto;
		padding-bottom: 15px;
	}

}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.campaign_box {
		border: 1px solid;
		padding: 4% 5%;
		font-size: 3.5vw;
		letter-spacing: 0.05em;
		line-height: 1.5;
		text-align: center;
	}

	/* 見出し */
	.campaign_title01 {
		font-size: 1.3em;
	}

	/* 価格 */
	.campaign_title02 {
		margin-top: 3vw;
		padding: 0.8em 0.1em 0.95em 0.1em;
		border-radius: 3vw;
	}
	.campaign_title02 h3 {
		font-size: 1.2em;
		font-weight: 500;
		text-align: center;
	}
	.campaign_title02 h3 span {
		display: block;
		font-size: 1.8em;
		vertical-align: -0.2em;
	}

	/* 期間 */
	.campaign_title03 {
		margin-top: 3vw;
		font-size: 1.2em;
	}

	/* 注意書き */
	.campaign_note {
		font-size: 1em;
		text-align: left;
		border-top: 1px solid;
		padding: 3vw 0 0 0;
		margin-top: 3vw;
	}
	
	/* WEB予約ボタン */
	.campaign-button {
		text-align: center;
	}
	.campaign-button a img {
		width: 50vw;
		height: auto;
		padding-bottom: 3vw;
	}

}