@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500;700;900&display=swap');

:root{
	/*使用しない場合も必ず設定*/
	--i_bg_color: #ffffff;	/*背景色*/
	--i_txt_color: #212121;	/*テキスト*/
	--i_main_color: #5e1826;	/*メイン*/
	--i_sub_color: #5e1826;	/*アクセント*/
	--i_sub2_color: #faedf0;	/*薄い色*/
	--i_btn_color: #5e1826;	/*ボタン*/
	--i_btn_hover_color: #7e2738;	/*ボタンhover*/
	--i_btn_txt_color: #fff;	/*ボタンテキスト*/
	--i_btn_hover_txt_color: #fff;	/*ボタンテキスト*/
	--i_shadow_color: rgba(0,0,0,0.05);	/*シャドウ*/
	--i_border_color: rgba(102, 102, 102, 0.13);	/*ボーダー*/
	--i_noimg_bg_color: #faedf0;	/*画像無し*/
}

/*------------------------------------------------------------------*/
/*-----------------------------base---------------------------------*/
/*------------------------------------------------------------------*/

html{
	font-size: 62.5%;
}
body{
	font-size: 1.6rem;
	line-height: 2.05;
	letter-spacing: 0.02rem;
	-webkit-text-size-adjust: 100%;
	color: var(--i_txt_color);
	font-weight: 500;
}
body, 
main{
	background: var(--i_bg_color);
}

#top.index:before{
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	background-image: url("/common/upload_data/kumpelhomejp/image/kumo_left_1.png");
	background-repeat: no-repeat;
	background-position: top left;
	opacity: 1;
	pointer-events: none;
	z-index: 9;
	background-size: 345px auto;
}
#top.index:after{
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	bottom: 0;
	right: 0;
	background-image: url("/common/upload_data/kumpelhomejp/image/kumo_right_2.png");
	background-repeat: no-repeat;
	background-position: top right;
	opacity: 1;
	pointer-events: none;
	z-index: 9;
	background-size: 231px auto;
}
@media screen and (max-width: 1600px){
	#top.index:before{
		background-size: 290px auto;
	}
	#top.index:after{
		background-size: 190px auto;
	}
}
@media screen and (max-width: 1400px){
	#top.index:before{
		background-size: 240px auto;
	}
	#top.index:after{
		background-size: 140px auto;
	}
}
@media screen and (max-width: 1100px){
	#top.index:before,
	#top.index:after{
		display: none;
	}
}


@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, main {
    /* IE11 にのみ適用される */
	  display: block;
  }
}
@media screen and (max-width: 850px){
	html{
		font-size: 60.606%;
	}
	body{
		letter-spacing: 0px;
	}
}
a{
	outline: 0;
	text-decoration: none;
	color: var(--i_txt_color);
}
section[style*=" color:"]:not([style*=" color: inherit"]) a,
div[style*=" color:"]:not([style*=" color: inherit"]) a{
	color: inherit;
}
/*composite_boxの最大高さとトリミングの起点*/
/*基本はjsにより各カラム中から最大の画角に設定*/
.composite_box01 .inner_item_img img{
	object-position: 50% 50%;
	font-family: 'object-position: 50% 50%;';
}

@media screen and (max-width: 850px){
	#sidebar{
		border: 5px solid var(--i_noimg_bg_color);
	}
}

.no_img{
	background: var(--i_noimg_bg_color, rgba(200,200,200,0.3));
}

/*----------------------------loader----------------------------*/

#load div:nth-of-type(1){
	background: #faedf0;
}
#load .loader,
.popup .loader{
	border: 1px solid var(--i_main_color);/*★*/
}
#load .loader,
#load .loader::before,
.popup .loader,
.popup .loader::before{
	border-top-color: var(--i_main_color);
}
#load .loader::before,
#load .loader::after,
.popup .loader::before,
.popup .loader::after{/*★*-1*/
	left: -1px;
	top: -1px;
}

#load img{
	max-width: 280px;
}

@media screen and (max-width: 850px){
	#load img{
	max-width: 210px;
}
}

/*----------------------------header----------------------------*/

header{
	background: none;
}
header .wraper {
    max-width: 1680px !important;
}

header *{
	color: #212121;
	font-weight: 600;
}

_:-ms-lang(x), header#pattern2 nav{
	justify-content: flex-end;
}

/*ヘッダーロゴの位置　IE用*/
_:-ms-lang(x), header#pattern2 .logo {
	margin-top: 15px;
}
/*ヘッダーロゴの位置　Edge用*/
@supports (-ms-ime-align: auto) {
    header#pattern2 .logo {
        margin-top: 0px;
    }
}
body.scrolled header .wraper > .inner{
	min-height: 45px!important;
	margin-top: 0;
}

.scrolled header{
}
header h1{
	line-height: 1.5;
	font-size: 1.3rem;
	font-weight: normal;
	opacity: 0.7;
}
header .logo{
	padding: 10px 0;
}
header .logo,
header .logo a,
header#pattern4 .logo a{
	max-width: 290px;
	width: 290px;
	position: relative;
}

header .logo a img{
	max-height: 63px;
	transition: 0.3s ease-in-out;
	transition-property: opacity;
	position: relative;
	z-index: 2;
}
body.scrolled header .logo a img{
	max-height: 55px;
}
body.scrolled header{
	background: rgba(250,237,240,0.9);
	box-shadow: 0 0 5px var(--i_shadow_color);
}

header .header_contents .header_col1{
	/* ▼水平方向レイアウト */
	flex-direction: row;
	align-items: center;
	justify-content: flex-end;
	/* ▼垂直方向レイアウト */
	/*flex-direction: column;
	align-items: flex-end;*/
}
header .header_contents .header_col1 .tel{
	position: relative;
	font-size: 3.3rem;
	line-height: 1;
	padding-left: 28px;
	font-weight: 900;
	color: var(--i_main_color)!important;
	font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
header .burger {
    right: 0px;
}
header .header_contents .header_col1 .tel svg,
header .header_contents .header_col1 .btn .translate a svg,
header .burger li.sp_translate a svg,
header .header_contents .header_sns li svg{
	fill: var(--i_main_color);
}
_:-ms-lang(x), header .header_contents .header_col1 .btn .translate{
	right: -50px;
}
header .header_contents .header_sns li svg{
	fill: var(--i_main_color);
}
header .sp_menu a div span,
header .sp_menu a div:before,
header .sp_menu a div:after{
	background: var(--i_main_color);
}
header .header_contents .header_col1 .tel svg{
	width: 22px;
	height: 22px;
	top: calc(50% - 7px);
	left: 0;
}
header .header_contents .header_col1 .btn>a,
header#pattern4 .wraper > .inner > .btn > a{
	display: table-cell;
	text-align: center;
	/*width: 180px;*/
	background-color: var(--i_btn_color);
	background-size: 150%;
	color: #fff !important;
	padding: 8px 25px;
	position: relative;
	border-radius: 100px;
	transition: .5s ease-in-out;
	font-weight: 500;
	letter-spacing: 0.1rem;
	font-size: 1.4rem;
}
header .header_contents .header_col1 .btn,
header#pattern4 .wraper > .inner > .btn{
	border-collapse: separate;
	border-spacing: 5px 0;
}
header .header_contents .header_col1 .btn>a:hover,
header#pattern4 .wraper > .inner > .btn > a:hover{
	background-position: right;
	opacity: 0.8;
	background-color: var(--i_btn_hover_color);
}
header#pattern3.width_full nav ul.nav_1st{
	width: calc(100% - 50px);
}
header#pattern1 nav ul.nav_1st,
header#pattern3 nav ul.nav_1st{
	max-width: 1300px;
}

/*----------------------------header#pattern4調整----------------------------*/
header#pattern4.open .header_contents{
	background: #faedf0;
	left: 0;
	width: 100% !important;
}
header#pattern4.open .header_contents:before{
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	background-image: url("/common/upload_data/kumpelhomejp/image/img_opennav.png");
	background-repeat: no-repeat;
	background-position: center left 100px;
	opacity: 1;
	pointer-events: none;
	z-index: 9;
	background-size: 250px auto;
}
@media screen and (max-width: 1300px){
	header#pattern4.open .header_contents:before {
    	background-position: center left 60px;
    	background-size: 220px auto;
	}
}
@media screen and (max-width: 900px){
	header#pattern4.open .header_contents:before {
    	display: none;
	}
}

header#pattern4 nav ul.nav_1st > li i::before,
header#pattern4 nav ul.nav_1st > li i::after{
	background: var(--i_main_color);
}

header#pattern4.open{
	background: #faedf0;
}

header#pattern4.open nav ul.nav_1st > li::after,
header#pattern4.open nav ul.nav_1st > li::before{
	display: none;
}
header#pattern4.open nav ul.nav_1st > li > a {
  text-align: center;
}
/*header .header_contents .header_col1 .btn{
	display: none;
}*/
header#pattern4.open::after{
	display: none;
}

/*header nav ul.nav_1st li {
  border-bottom: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid rgba(255,255,255,0.08);
}*/
header#pattern4 nav ul.nav_1st {
  width: 54% !important;
  margin-left: 23% !important;
}
header#pattern4 nav ul.nav_1st li a {
  text-align: center;
	padding: 15px;
}
header#pattern4:not(.width_full) .wraper h1 {
  max-width: 1510px;
}

@media screen and (max-width: 900px){
	header .wraper{
		width: calc(100% - 20px);
	}
	header#pattern3 .logo, header#pattern4 .logo{
		margin: 0;
	}
	header .wraper > .inner {
    margin-top: 0;
	}
	header .header_contents .header_col1 .btn>a:hover{
		background-color: var(--i_btn_hover_color);
		opacity: 1!important;
	}
	header .burger {
    	right: 20px;
	}
	header#pattern4.open nav ul.nav_1st > li > a {
  		text-align: left;
	}
	header .header_contents .header_col1 .btn{
		display: block;
	}
	header#pattern4 nav ul.nav_1st {
  		width: 100% !important;
  		margin-left: 0% !important;
	}
	header#pattern4 nav ul.nav_1st li a {
  		text-align: left;
		padding: 12px;
	}
	header .header_contents .header_col1 .btn>a,
	header#pattern4 .wraper > .inner > .btn > a {
    	padding: 8px 10px;
	}
}

header .header_contents .header_col1 .btn .translate a svg{
	max-width: 74%;
	max-height: 74%;
	margin: 13% auto 0;
}
header nav{
	/*background: #5a5a5a;*/
	/*padding-bottom: 4px;*/
}
header#pattern2:not(.width_full) nav {
  max-width: 1700px;
}
header nav ul.nav_1st{
	width: 100%;
	/*max-width: 1000px;*//*任意*/
}
header nav ul.nav_1st>li:after{/*罫線*/
	content: "";
	display: block;
	width: 1px;
	height: 40%;
	position: absolute;
	top: 32%;
	left: 0;
	border-right: 1px solid rgba(0,0,0,0.15);
	box-shadow: 1px 0 0 rgba(255,255,255,0.18);
}
header nav ul.nav_1st>li:last-child:before{/*罫線*/
	content: "";
	display: block;
	width: 1px;
	height: 40%;
	position: absolute;
	top: 32%;
	right: 0;
	left: auto;
	border-right: 1px solid rgba(0,0,0,0.15);
	box-shadow: 1px 0 0 rgba(255,255,255,0.18);
}
header nav ul.nav_1st>li:after,
header nav ul.nav_1st>li:last-child:before{
	display: none;
}

header nav ul.nav_1st>li>a{
	font-size: 1.55rem;
	font-weight: 600;
	position: relative;
	padding-left: 1vw;
	padding-right: 1vw;
	letter-spacing: 0.2rem;
}
header nav ul.nav_1st>li>a span{
	/*ナビの高さはline-heightで調整*/
	line-height: 3.5;/* マージン普通選択時 */
	/*color: #fff !important; ナビ背景色設定時 */
}
header#pattern2 nav ul.nav_1st{
	width: 60%;
	padding-top: 15px;
}
header#pattern2 nav ul.nav_1st>li>a span{
	line-height: 3;
	/*text-shadow: 0px 0px 5px #fff,0px 0px 5px #fff,0px 0px 5px #fff,0px 0px 5px #fff,0px 0px 5px #fff,0px 0px 5px #fff;*/
}
body.scrolled header#pattern2 nav ul.nav_1st > li > a span{
	text-shadow:none;
}
body.margin header nav ul.nav_1st>li>a span{
	line-height: 4;/* マージン広い選択時 */
}
header nav ul.nav_1st>li.active a:before{
	width: 80%;
	height: 1px;
	background: var(--i_sub_color);
	bottom: 0;
	left: 10%;
}

header nav ul.nav_2nd{
	padding-top: 20px;
}
header nav ul.nav_1st>li:hover ul.nav_2nd{
	padding-top: 10px;
}
header nav ul.nav_2nd>li{
	background: rgba(255,255,255,0.85);
	border-bottom: 1px solid rgba(0,0,0,0.13);
	/*box-shadow: 2px 2px 5px rgba(0,0,0,0.13);*/
}
header nav ul.nav_2nd>li:nth-last-of-type(1){
	border-bottom: none;
}
header nav ul.nav_2nd li a{
	padding: 10px 20px;
	font-weight:  normal;
	font-size: 1.4rem;
	color: #333 !important;
}
header nav ul.nav_2nd>li>a{
	padding-right: 30px;
}
header nav ul.nav_2nd>li>a:after{
	height: 5px;
	width: 5px;
	transform: rotate(-45deg);
	border-right: 1px solid var(--i_sub_color);
	border-bottom: 1px solid var(--i_sub_color);
	top: calc(50% - 2.5px);
	right: 20px;
}
header nav ul.nav_2nd>li>a span{
	color: #333!important;
}

header nav ul.nav_3rd{
	padding-left: 20px;
}
header nav ul.nav_3nd li a{
	padding: 5px 20px;
}
header nav ul.nav_3rd>li>a:after{
	height: 1px;
	width: 4px;
	background: var(--i_sub_color);
	top: calc(50% - 0.5px);
	left: 5px;
}

@media screen and (max-width: 1200px){
	header#pattern2 nav ul.nav_1st {
    	width: 75%;
	}
}

@media screen and (max-width: 900px){
	.sp_translate svg{
		transition: 0.3s ease-in-out;
	}
	body.scrolled header .logo{
		padding: 10px 0 !important;
	}
	.sp_menu a{
		padding: 7px 6px 5px;
	}
	header.open:after,
	header .header_contents{
		background: rgba(250,237,240,0.9);
	}
	header .burger li.sp_translate a svg{
		height: 28px;
		width: 28px;
		margin: 10% auto;
	}
	header .header_sns,
	header .header_contents .header_col1,
	header .header_contents .header_col2{
		border-top: 1px solid rgba(255,255,255,0.08);
		border-bottom: 1px solid rgba(0,0,0,0.13);
	}
	header .header_sns{
		border-bottom: none;
	}
	header .header_sns:empty,
	header .header_contents .header_col1:empty,
	header .header_contents .header_col2:empty{
		border: none;
	}
	header .header_contents .header_col1 .tel,
	header .header_contents .header_col1 .btn{
		float: none;
	}
	header .header_contents .header_col2{
		display: block !important;
	}
	header nav{
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}
	header nav ul.nav_1st{
		border-bottom: 1px solid rgba(255,255,255,0.08);
		border-top: 1px solid rgba(0,0,0,0.1);
	}
	header nav ul.nav_1st li{
		border-bottom: 1px solid rgba(0,0,0,0.1);
		border-top: 1px solid rgba(255,255,255,0.08);
	}
	header nav ul.nav_1st>li:before,
	header nav ul.nav_1st>li:after{
		display: none !important;
	}
	header nav ul.nav_1st>li i:before,
	header nav ul.nav_1st>li i:after{
		background: var(--i_sub_color);
	}
	header nav ul.nav_2nd{
		border-top: 1px solid rgba(0,0,0,0.1);
	}
	header nav ul.nav_2nd>li{
		box-shadow: none;
	}
	header nav ul.nav_2nd li a{
		color: #fff!important;
	}
	header nav ul.nav_3rd{
		border-top: 1px solid rgba(0,0,0,0.1);
	}
	header nav ul.nav_3rd>li:nth-last-of-type(1){
		border-bottom: none;
	}
	header nav ul.nav_3rd>li>a:after{
		background: #fff;
	}
	
	/*SPナビ背景着色時*/
	/*
	header,
	header *,
	header nav ul.nav_2nd li a{
		color: #fff !important;
	}
	header .header_contents .header_col1 .tel svg{
		fill: #fff;
	}
	header.open .sp_menu a div:before,
	header.open .sp_menu a div:after{
		background: #fff;
	}
	header.open .sp_translate svg{
		fill: #fff !important;
	}
	*/
	header .logo,
	header .logo a{
		max-width: 210px;
	}
	header .logo a img {
    	max-height: 46px !important;
	}
	header nav ul.nav_2nd>li>a span{
		color: var(--i_txt_color);
	}
	header .header_contents .header_col1 .tel {
    	font-size: 2.9rem;
	}
	header .header_contents .header_col1 .btn>a{
    	width: 150px;
		font-size: 1.3rem;
	}
	header#pattern2 nav ul.nav_1st {
  		padding-top: 0px;
	}
}
@media screen and (max-width: 625px){
	header .header_contents .header_col1 .tel{
		margin-bottom: 10px!important;
	}
}


/*----------------------------余白設定----------------------------*/

main>section:first-child:not([class*="pt"]),
main>div:first-child:not([class*="pt"]),
div[class*='pb']+.contents_related,
section[class*='pb']+.contents_related,
div[class*='pb']+.contents_related_tags,

section[class*='pb']+.contents_related_tags{
	padding-top: 60px;
}
main>section:not([class*="pt"]),
main>div:not([class*="pt"]),
aside>section:not([class*="pt"]),
aside>div:not([class*="pt"]){
	padding-bottom: 60px;
}
@media screen and (max-width: 800px){
	main>section:first-child:not([class*="pt"]),
	main>div:first-child:not([class*="pt"]),
	div[class*='pb']+.contents_related,
	section[class*='pb']+.contents_related,
	div[class*='pb']+.contents_related_tags,
	section[class*='pb']+.contents_related_tags{
		padding-top: 40px;
	}
	main>section:not([class*="pt"]),
	main>div:not([class*="pt"]),
	aside>section:not([class*="pt"]),
	aside>div:not([class*="pt"]){
		padding-bottom: 40px;
	}
}

/*----------------------------見出し----------------------------*/

section .content_wrapper>.heading:first-child:last-child{
	margin-bottom: 0;
}

/*--*/

section:not([class*="pt"]) .content_wrapper>.heading:first-child:last-child{
	margin-bottom: 0;
}

.heading.block_header_1,
.heading.block_header_6{
	margin-bottom: 30px;
	display: flex;
	flex-direction: column-reverse;
	align-items: center;
	justify-content: center;
}
.heading.block_header_1 p,
.heading.block_header_6 .h{
	font-size: 3.1rem;
	line-height: 1.4;
	letter-spacing: 0.2rem;
	padding-top:0;
	font-weight: 900;
	margin-bottom: 11px;
	position: relative;
	padding-bottom: 14px;
	color: #5e1826;
	font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.heading.block_header_1 .h,
.heading.block_header_6 p{
	font-size: 1.8rem;
	font-weight: 900;
	letter-spacing: 0.2rem;
	color: #5e1826;
font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.heading.block_header_1 p:before,
.heading.block_header_6 .h:before{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #5e1826, #5e1826 1px, transparent 1px, transparent 4px);
  background-image: repeating-linear-gradient(-45deg, #5e1826,#5e1826 1px, transparent 1px, transparent 4px);
  background-size: 6px 6px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}


.heading.block_header_1.align-left p:before,
.heading.block_header_6.align-left .h:before{
	left: 0;
}
.heading.block_header_1.align-left p:after,
.heading.block_header_6.align-left .h:after{
	left: 30px;
}
.heading.block_header_1.align-right p:before,
.heading.block_header_6.align-right .h:before{
	left: auto;
	right: 0;
}
.heading.block_header_1.align-right p:after,
.heading.block_header_6.align-right .h:after{
	right: 0px;
	left: auto;
}
.index .heading.block_header_1 p,
.index .heading.block_header_6 .h{

}

 
/*背景色指定あり且つ文字色指定#FFFのときの見出しデザイン1*/

section[style*="color: #ffffff; "] .heading.block_header_1 p:before,
div[style*="color: #ffffff; "] .heading.block_header_1 p:before,
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p:before,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p:before,
section[style*="color: #ffffff; "] .heading.block_header_6 .h:before,
div[style*="color: #ffffff; "] .heading.block_header_6 .h:before,
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 .h:before,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 .h:before{
	  background-image: -webkit-repeating-linear-gradient(135deg, #fff, #fff 1px, transparent 1px, transparent 4px);
	  background-image: repeating-linear-gradient(-45deg, #fff, #fff 1px, transparent 1px, transparent 4px);

}
section[style*="color: #ffffff; "] .heading.block_header_1 p:after,
div[style*="color: #ffffff; "] .heading.block_header_1 p:after,
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p:after,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p:after,
section[style*="color: #ffffff; "] .heading.block_header_6 h:after,
div[style*="color: #ffffff; "] .heading.block_header_6 h:after,
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 h:after,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 h:after{
}



@media screen and (max-width: 800px){
	.heading.block_header_1 p:before,
	.heading.block_header_6 .h:before{
	}
	.heading.block_header_1 p, .heading.block_header_6 .h {
    margin-bottom: 13px;
    /*padding-bottom: 8px;*/
	}
	.heading.block_header_1 p:after,
	.heading.block_header_6 .h:after{
		width: 20px;
	}
	.heading.block_header_1{
		margin-bottom: 20px;
	}
	.heading.block_header_1 p,
	.heading.block_header_6 .h{
		font-size: 2.6rem;
	}
	.heading.block_header_1 .h,
	.heading.block_header_6 p{
		font-size: 1.55rem;
		letter-spacing: 0rem;
	}
	.index .heading.block_header_1 p,
	.index .heading.block_header_6 .h{
		font-size: 2.5rem;
	}
	.heading.block_header_1,
	.heading.block_header_6{
		margin-bottom: 20px;
	}
}
/*--*/

.heading.block_header_2{
	margin-bottom: 30px;
	margin-left: 0!important;
	margin-right: 0!important;
}

.heading.block_header_2 .h{
	display: inline-block;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.5;
	position: relative;
	border-bottom: 1px solid var(--i_border_color);
	margin-bottom: 10px;
	padding-bottom: 5px;
	padding-left: 20px;
	padding-right: 10px;
	font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.heading.block_header_2 .h:before{
	position:absolute;
	left:5px;
	top: 0.65em;
	content:"";
	display:inline-block;
	width:0.4em;
	height:0.4em;
	background:var(--i_sub_color);
}

.heading.block_header_2 p{
	font-size: 1.4rem;
	/*padding-left: 22px;*/
}
/*@media screen and (max-width: 850px){
	.heading.block_header_2 .h:before{
		top: 6px;
	}
}*/
@media screen and (max-width: 800px){
	.heading.block_header_2{
		margin-bottom: 20px;
	}
	.heading.block_header_2 .h{
		font-size: 1.9rem!important;
	}
	.heading.block_header_2 p{
		font-size: 1.3rem;
	}
}

/*--*/

.heading.block_header_3{
	overflow: hidden;
	background: var(--i_main_color);
	padding: 10px 20px 10px 20px;
	margin-bottom: 30px;
}
.heading.block_header_3:before{
	display: block;
	content: "";
	width: calc(100% - 8px);
	height: calc(100% - 8px);
	position: absolute;
	top: 3px;
	left: 3px;
	border: 1px solid rgba(255,255,255,0.5);
}
.heading.block_header_3 .h{
	font-weight: bold;
	font-size: 1.9rem;
	line-height: 1.5;
	color: #fff;
}
.heading.block_header_3 p{
	font-size: 1.4rem;
	color: #fff;
}
@media screen and (max-width: 800px){
	.heading.block_header_3{
		padding: 5px 15px 5px 15px;
		margin-bottom: 20px;
	}
	.heading.block_header_3 .h{
		font-size: 2.0rem;
	}
	.heading.block_header_3 p{
		font-size: 1.3rem;
	}
}

/*--*/

.heading.block_header_4{
	margin-bottom: 15px;
}
.heading.block_header_4:before{
	display: none;
}
.heading.block_header_4 .h{
	font-size: 2.0rem;
	font-weight: 900;
	line-height: 1.5;
	margin-bottom: 5px;
	color: var(--i_main_color);
	font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	letter-spacing: 0.1rem;
}
.heading.block_header_4 p{
	font-size: 1.4rem;
	letter-spacing: 0.2rem;
}


/*--*/

.heading.block_header_5{
	margin-bottom: 15px;
}
.heading.block_header_5 .h{
	display: inline;
	font-weight: bold;
	font-size: 1.8rem;
	margin-bottom: 10px;
	color: var(--i_txt_color);
}
.heading.block_header_5 p{
	display: inline;
	font-size: 1.4rem;
	color: var(--i_main_color);
}
.heading.block_header_5 p:before{
	content: "　/　";
	color: var(--i_txt_color)
}
/*----------------------------背景パララックス----------------------------*/

.parallax{
	box-shadow: 0 0 5px var(--i_shadow_color) inset;
}

/*----------------------------ボタン----------------------------*/

.contents_btn01 a,
.glossary_archive .content_wrapper .heading.block_header_2 a:after,
main form .submit{
	color: var(--i_btn_txt_color) !important;
	background: var(--i_btn_color);
	position: relative;
	display: inline-block;
	padding-left: 10px;
	padding-right: 10px;
	text-align: center;
	font-family: inherit;
	font-weight: 500;
	border-radius: 100px;
	color: #fff!important;
	letter-spacing: 0.1rem;
}
main form .submit span{
	display: block;
	position:relative;
}
.contents_btn01 a:before,
main form .submit span:before{
	position: absolute;
	content: " ";
	width: 7px;
	height: 7px;
	top: calc(50% - 4px);
	left: 10px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
	transition: all 0.3s ease;
	z-index: 10;
}
.contents_btn01 a:hover,
.glossary_archive .content_wrapper .heading.block_header_2 a:hover:after,
main form .submit:hover{
	background: var(--i_btn_hover_color);
	color: var(--i_btn_hover_txt_color) !important;
}
.contents_btn01 a:hover:before,
main form .submit span:hover:before{
	left: 15px;
}
.contents_btn01 a[target=_blank] span:before,
.contents_btn01 a[target=_blank] span:after{
	border: 1px solid #fff;
}
.contents_btn01 a[target=_blank] span:hover:before,
.contents_btn01 a[target=_blank] span:hover:after{
}
.contents_btn01 a span{
	text-align: center;
	line-height: 1.5;
	font-size: 1.5rem;
	padding: 12px 18px;
}
main form .submit{
	position: relative;
	display: inline;
	padding: 0px;
}
main .widget_gallery01 .contents_btn01 a, main .gallery_archive .inner_item .contents_btn01 a, 
main .gallery_single .inner_item .contents_btn01 a, 
main * .contents_btn01 a {
	overflow: visible;
	margin-bottom: 10px;
}
main form .submit {

	position: relative;
}
main form .submit span input {
	font-size: 1.5rem;
	font-weight: 500;
	color: #fff;
	display: block !important;
	background: transparent;
}
.widget_form form .submit input{
font-family: inherit;
}
#fixbtn .inner > div {
	padding: 8px 15px!important;
}
input[id="form_submit"], input[type="submit"]{
	-webkit-appearance: none;
	border-radius: 0;
}

@media screen and (max-width: 700px){
	#fixbtn .contents_btn01 a:before{
		display: none;
	}
}

@media screen and (max-width: 500px){
	#fixbtn .inner > div {
	padding: 8px 1px!important;
}
}

/*--------------------------------MV--------------------------------*/

#mv_outer{
	/*mvに背景とかはここを利用する*/
	position: relative;
	box-sizing: border-box;
	background: #faedf0;
}

#mv_outer::before {
  position: absolute;
  display: block;
  content: "";
  width: 98%;
  height: 100%;
  bottom: -30px;
  left: 0;
  background-image: url("/common/upload_data/kumpelhomejp/image/mv_img.png");
  background-repeat: no-repeat;
  background-position: left bottom;
  z-index: 10;
  left: 2%;
  background-size: 220px auto;
}
/*管理画面のテキスト入力できるように*/
#mv_outer.editing::before {
  z-index: 7;
}

#mv_outer::after {
  position: absolute;
  display: block;
  content: "";
  width: 92%;
  height: calc(100% - 155px);
  top: 170px;
  background-image: url("/common/upload_data/kumpelhomejp/image/neko.png");
  background-repeat: no-repeat;
  background-position: left top;
  z-index: 10;
  left: 8%;
  background-size: 120px auto;
}

/*レスポンシブMV調整*/
@media screen and (min-width: 2000px){
	#mv_outer::after {
		display: none;
	}
}
@media screen and (max-width: 1750px){
	#mv_outer::after {
		top: 155px;
	}
}
@media screen and (max-width: 1600px){
	#mv_outer::after{
		background-position: right bottom;
		top: auto;
		bottom: -35px;
		height: calc(100% - 35px);
		background-size: 110px auto;
		background-image: url(/common/upload_data/kumpelhomejp/image/dog.png);
		right: 8%;
		left: 0%;
	}
	#mv_outer::before{
		background-size: 190px auto;
	}
}
@media screen and (max-width: 1300px){
	#mv_outer::before {
    	background-size: 165px auto;
		/*width: 99.5%;
		right: 0.5%;*/
	}
}
@media screen and (max-width: 900px){
	#mv_outer::before {
    	background-size: 130px auto;
	}
	#mv_outer::after {
    	bottom: -25px;
    	height: calc(100% - 30px);
    	background-size: 85px auto;
	}
}
@media screen and (max-width: 700px){
	#mv_outer::before {
    	background-size: 105px auto;
    	/*background-position: bottom right -8px;*/
    	bottom: -15px;
	}
	#mv_outer::after {
    	bottom: -25px;
    	height: calc(100% - 20px);
    	background-size: 70px auto;
	}
}
@media screen and (max-width: 550px){
	#mv_outer::before {
   		background-size: 100px auto;
    	/*background-position: bottom right -12px;*/
    	bottom: -55px;
	}
	#mv_outer::after {
    	background-size: 65px auto;
		bottom: -30px;
    	/*left: 3%;*/
    	/*width: 97%;*/
	}
}


#mv{
	width: 100%;
	height: 96vh;
	min-height: 580px;
}
#mv .mv_img li {
  width: 90%;
	margin-left: 5%;
}
#mv:after{
	/*スライドに重ねる色*/
	pointer-events: none;
	/*background:rgba(0, 0, 0, 0.05);*/
	width: 90%;
	margin-left: 5%;
}
#mv::before {
	content: "";
	display: block;
	position: absolute;
	pointer-events: none;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: url(/common/upload_data/kumpelhomejp/image/original_header_bg2_2.png) no-repeat;
	background-size: contain;
	background-position: left top;
	z-index: 8;
}
#mv .mv_text{
	height: 100%;
	align-items: flex-start !important;/*垂直方向中央*/
	width: 72% !important;
	left: 14% !important;
	/*bottom: 85px !important;*/
	/*top: 25px;*/
	top: 8%;
}
#mv .mv_text>div{
	max-width: none !important;
	box-sizing: border-box;
	width: auto;
	color: #fff;
	position: relative;
	display: block;
}
#mv .mv_text h2{
	line-height: 1.4!important;
	font-size: 60px;/* ←max-font-size的意味合いで使用する。動作はjs。*/
	line-height: 1.1;
	letter-spacing: 0.3rem;
	font-weight: 700;
	font-size: 2.8rem !important;
	position: relative;
	background: rgba(250,237,240,0.7);
	padding: 25px 14px;
	color: #5e1826;
	font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#mv .mv_text p{
	line-height: 1.4!important;
	font-size: 1.85rem;	
	font-weight:700;
	letter-spacing: 0.3rem;
	background: rgba(250,237,240,0.7);
	padding: 25px 12px!important;
	color:#5e1826;
	margin-right: 25px;
	font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#mv_outer #mv .mv_text div p.static{
	display: inline-block!important;
}

#mv .mv_scroll {
    width: 170px;
    height: 25px;
    position: absolute;
    bottom: 75px;
	left: -40px;
	transform: rotate(90deg);
	overflow: hidden;
	z-index: 10;
}
#mv .mv_scroll a{
    text-indent: 0;
    font-size: 11px;
	letter-spacing: 0.3rem;
	text-transform: uppercase;
	font-weight: 600;
	color: #5e1826;
	width: 170px;
	position: relative;
	padding-top: 5px;
}
#mv .mv_scroll a::after{
	content: '';
	height: 1px;
	width: 170px;
	background:rgba(0,0,0,0.15);
	position: absolute;
	left: 0px;
	top: auto;
	bottom: 5px;
}

#mv .mv_scroll a::before {
    content: "";
    display: block;
	height: 1px;
    position: absolute;
	top: auto;
	bottom: 5px;
	background-color: #5e1826;
	transform: rotate(0deg);
	animation:indicator 3s cubic-bezier(0.19, 1, 0.22, 1) infinite;
	z-index: 1;
}
@keyframes indicator {
	0% {
		left:0;
		transform-origin:left top;
		width:10px
	}
	20% {
		width:30px
	}
	80% {
		width:40px
	}
	100% {
		transform-origin:left top;
		left: 100%;
		width:0px
	}
}
#mv .mv_scroll{
	display: none;
}

#mv .mv_pointer{
	width: 100px;
	position: absolute;
	bottom: -30px;
	left: calc(50% - 50px);
	padding: 0;
	text-align: center;
	z-index: 15;
}
#mv .mv_pointer li{
	width: 7px !important;
	height: 25px;
	margin: 0 25px 0 0;
	border-radius: 50px;
}
#mv .mv_pointer li:last-of-type{
	margin: 0;
}
#mv .mv_pointer li::before {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
	margin-top: 10px;
	background: rgba(92, 24, 38, 0.35);
	border-radius: 50px;
}
#mv .mv_pointer li.current{
	width: 7px !important;
}
#mv .mv_pointer li.current:before{
	background: rgba(92, 24, 38, 0.85);
}

#mv .mv_arrow{
	display: none;
}
@media screen and (max-width: 100vh){
	#mv{
		height: 65vh;
	}
}
@media screen and (max-width: 1300px){
	#mv .mv_text {
    	width: 68% !important;
    	left: 16% !important;
	}
	#mv .mv_text h2 {
    	font-size: 2.15rem !important;
		padding: 15px 12px;
	}
	#mv .mv_text p {
    	font-size: 1.55rem;
    	padding: 15px 10px!important;
    	margin-right: 15px;
	}
}
@media screen and (max-width: 1100px){
	#mv .mv_scroll{
		left: -60px;
	}
}
@media screen and (max-width: 900px){
	#mv{
		min-height: 500px;
	}
	#mv .mv_text {
    	/*top: -10px;*/
	}
	#mv .mv_text h2 {
    	font-size: 2.1rem !important;
		padding: 15px 10px;
		letter-spacing: 0.2rem;
	}
	#mv .mv_text p {
    	font-size: 1.45rem;
		padding: 15px 9px!important;
		letter-spacing: 0.15rem;
	}
}

@media screen and (max-width: 750px){
	#mv .mv_scroll{
		display: none;
	}
}
@media screen and (max-width: 720px){
#mv::before {
	content: "";
	display: block;
	position: absolute;
	pointer-events: none;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: url(/common/upload_data/kumpelhomejp/image/header_index_bg_sp_1.png) no-repeat;
	background-size: contain;
	background-position: left top;
	z-index: 8;
}
}

@media screen and (max-width: 700px){
	#mv .mv_pointer {
    	bottom: -20px;
	}
	#mv .mv_pointer li {
    	width: 6px !important;
    	height: 15px;
    	margin: 0 15px 0 0;
	}
	#mv .mv_pointer li::before {
    	width: 6px;
    	height: 6px;
	}
	#mv .mv_pointer li.current{
		width: 6px !important;
	}
}
@media screen and (max-width: 600px){
	#mv .mv_scroll {
		left: 2.5vw;
	}
	#mv {
    	min-height: 460px;
	}
	#mv .mv_text h2 {
    	font-size: 1.65rem !important;
		padding: 12px 9px;
    	letter-spacing: 0.1rem;
	}
	#mv .mv_text p{
		font-size: 1.15rem !important;
		margin-right: 10px;
		padding: 12px 8px!important;
		letter-spacing: 0.1rem;
	}
}

/*--------------------------------IV--------------------------------*/

#lv{
	background: #fff;
	height: 320px;
	padding-bottom: 0;
}
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .parallax .parallax_img{
    /* IE11 にのみ適用される */
	  margin-top: -160px !important;
  }
	*::-ms-backdrop, #lv{
		padding-top: 150px !important;
	}
}
header.over+#lv_outer #lv{
	min-height: 300px;
}
#lv div{
	opacity: 0.3;
}
#lv p{
	left: 0;
	text-align: center;
	width: 100%;
	box-sizing: border-box;
	padding: 0 10px 0
}
#lv p span{
	display: inline-block;
	font-size: 3.5rem;
	color: #5e1826;
	font-weight: 700;
	text-align: center;
	position: relative;
	word-break: break-all;
	line-height: 1.2;
	/*text-shadow: 1px 1px 0 var(--i_shadow_color);*/
	letter-spacing: 0.2rem;
	font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media all and (-ms-high-contrast: none) {
#lv p span{
	top: -60px;
}
}
@media screen and (max-width: 800px){
	#lv{
		min-height: 200px!important;
    	height: 200px;
	}
	#lv p span{
		font-size: 2.6rem;
		margin-bottom: 20px;
	}
}

/*----------------------------パンくず----------------------------*/

#pan{
	padding: 0;
	border-bottom: 1px solid var(--i_border_color);
	background: var(--i_sub2_color);
}
#pan li{
	font-size: 1.2rem;
	padding: 5px 0 3px 30px;
}
#pan li:before{
	border-top: 1px solid var(--i_border_color);
	border-right: 1px solid var(--i_border_color);
}
#pan li:after{
}

/*----------------------------other parts----------------------------*/

/*--リスト--*/

.default_ul li:before{
	border-top: 1px solid var(--i_sub_color);
	border-right: 1px solid var(--i_sub_color);
	height: 5px;
	width: 5px;
	transform: rotate(45deg);
	top: 8px;
	left: 0;
}

/*--アーカイブページ カテゴリー--*/

.category1 li a{
	border: 1px solid #eee;
	border-radius: 50px;
	font-size: 1.4rem;
}
.category1 li a:hover,
.category1 li a.current{
	background: var(--i_main_color);
	color: #fff;
}

/*--sidebar--*/

#sidebar section,
#sidebar>div{
	border-bottom: 1px solid var(--i_border_color);
}
#sidebar h2{
	text-align: left;
	font-size: 2.2rem;
}
#sidebar .sidebar_tag li{
	border: 1px solid var(--i_border_color);
	background: var(--i_sub2_color);
}
#sidebar .sidebar_list a{
	position: relative;
	padding-left: 15px;
}
#sidebar .sidebar_list a:before{
	content: "";
	display: block;
	position: absolute;
	border-top: 1px solid var(--i_main_color);
	border-right: 1px solid var(--i_main_color);
	height: 5px;
	width: 5px;
	transform: rotate(45deg);
	top: calc(50% - 3px);
	left: 0;
}

/*----------------------------pager----------------------------*/

/*アーカイブページページャー*/

.pager li a{
	height: 45px;
	width: 45px;
	border-radius: 999px;
	line-height: 45px;
	border: 1px solid #eee;
	font-size: 1.4rem;
}
.pager li:not(.arrow) a:hover,
.pager li:not(.arrow).current a{
	background: var(--i_main_color);
	color: #fff;
}
.pager li.arrow a{
	background: none;
}

/*----------------------------pager2----------------------------*/

/*シングルページページャー*/
.pager2 li a{
	border: 1px solid #eee;	
	color: var(--i_txt_color);
	line-height: 45px;
	padding: 0 15px;
	font-size: 1.4rem;
}
.pager2 li a:hover{
	background: var(--i_main_color);
	color: #fff;

}

/*----------------------------popup----------------------------*/

/*画像ポップアップ拡大表示*/
.popup{
	background: rgba(255,255,255,0.7);
}
.popclose{
	/*text-shadow: 1px 1px 1px var(--i_border_color);*/

}
.popnav li{
}
.poptxt{
	font-size: 1.2rem;
}

/*----------------------------footer----------------------------*/

#fixbtn{
	margin-bottom: 30px;
	font-size: 1.55rem;
}
#fixbtn .fixbtnwrap{
	background: rgba(255,255,255,0.9);
	border-top: 1px solid rgba(0,0,0,0.15);
}
/*▼ TEL、予約ボタンない = 追従フッター有効でない場合*/
#fixbtn.no .fixbtnwrap{
	background-color: rgba(250,237,240,0.9);
}
#fixbtn .fixbtntel,
#fixbtn .fixbtntel a,
#fixbtn .fixbtntel span{
	color: var(--i_txt_color);
}
#fixbtn .fixbtntel{
	border-right: 1px solid var(--i_border_color);
}
#fixbtn .fixbtntel:nth-last-of-type(2){
	border-right: none;
}
#fixbtn .fixbtntel a,
#fixbtn .fixbtntel span{
	font-size: 3.3rem;
	line-height: 1;
	margin-right: 10px;
	font-weight: 900;
	font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#fixbtn .fixbtntel a:last-child,
#fixbtn .fixbtntel span:last-child{
	margin-right: 0;
}
#fixbtn .fixbtntel svg{
	width: 22px;
	height: 22px;
	margin-right: 5px;
	fill: var(--i_main_color);
}
#fixbtn .contents_btn01{
	border-left: 1px solid rgba(255,255,255,0.1);
}
#fixbtn .contents_btn01:nth-of-type(1){
	border-left: none;
}
#fixbtn .contents_btn01:nth-of-type(1){
	/*▼ TELない場合中央揃え*/
	margin-left: auto;
	margin-right: auto;
}
#fixbtn .contents_btn01 span{
	text-align: center;
	/*padding: 7px 15px;*/
}
/*▼ TEL、予約ボタンない = 追従フッター有効でない場合*/
#fixbtn #scrolltop:nth-of-type(1){
	margin-left: auto;
	/*▼ 右揃え*/
	margin-right: 0;
	/*▼ 中央揃え*/
	margin-right: auto;
}
#fixbtn #scrolltop a{
	height: 40px;
	width: 40px;
}
#fixbtn #scrolltop a:before{
	top: 17px;
	left: 3px;
	transform: rotate(45deg);
	transition: 0.2s ease-in-out;
	border-left: 2px solid var(--i_btn_color);
	border-top: 2px solid var(--i_btn_color);
	width: 30px;
	height: 30px;
}
#fixbtn #scrolltop a:hover:before{
	opacity: 0.7;
}
/*▼ TEL、予約ボタンない = 追従フッター有効でない場合*/
#fixbtn.no #scrolltop a:before{
	border-color: #5e1826;
}
#fixbtn.no #scrolltop a:hover:before{
	opacity: 0.7;
}

@media screen and (max-width: 600px){
	#fixbtn{

		margin-bottom: 0;
	}
	#fixbtn,
	#fixbtn .fixbtntel a,
	#fixbtn .fixbtntel span{
		font-size: 1.7rem;
	}
	#fixbtn .fixbtntel a,
	#fixbtn .fixbtntel span{
		font-size: 2.6rem!important;
		margin: 0;
		color: var(--i_txt_color);
	}
	#fixbtn .fixbtntel svg{
		width: 18px;
		height: 18px;
	}
	#fixbtn .contents_btn01 a{
		padding: 0 !important;
		letter-spacing: 0;
	}
	#fixbtn .contents_btn01 a span{
		padding: 8px 18px;
		font-size: 1.4rem!important;
	}
}
footer{
	background: #5e1826;
	padding: 0;
	color: #fff;
	text-align: center;
	font-size: 1.35rem;
}
footer a{
	color: #fff;
}
footer nav li{
	letter-spacing: 0.2rem;
	padding: 5px 0;
}
footer .logo{
	width: 170px;
}
footer .sns{
	margin: 0 auto 30px;
}
footer .sns svg{
	width: 40px;
	height: 40px;
	padding: 10px 10px;
	transition: 0.2s ease-in-out;
	fill: #fff;
}
footer .sns a:hover svg{
	opacity: 0.7;
}
footer nav li a{
	font-weight: 500;
}
#cp{
	padding: 10px;
	font-size: 1.1rem;
	letter-spacing: 0.1rem;
	background: var(--i_main_color);
	color: #fff;
}
@media screen and (max-width: 600px){
	footer{
		padding: 0 0 20px;
	}
}
@media screen and (max-width: 600px){
	footer nav ul{
		border-bottom: 1px solid rgba(0,0,0,0.13);
	}
	footer nav ul li{
		border-top: 1px solid rgba(255,255,255,0.1);
		border-bottom: 1px solid rgba(0,0,0,0.13);
	}
	footer nav ul li:nth-last-of-type(2n){
		border-right: 1px solid rgba(0,0,0,0.13);
	}
	footer nav ul li:nth-last-of-type(2n+1){
		border-left: 1px solid rgba(255,255,255,0.1);
	}
	footer nav ul li:nth-of-type(1),
	footer nav ul li:nth-of-type(1),
	footer nav ul li:nth-of-type(2),
	footer nav ul li:nth-of-type(3):nth-last-of-type(2n-1){
		border-top: 1px solid rgba(0,0,0,0.13);
	}
	footer nav ul li:nth-last-of-type(1),
	footer nav ul li:nth-last-of-type(2){
		border-bottom: 1px solid rgba(255,255,255,0.1);
	}
	footer .logo{
		width: 170px;
	}
	#fixbtn .fixbtnwrap{
		border-bottom: none;
	}
	#fixbtn .inner{
		padding: 0;
	}
	#fixbtn .inner div{
		padding: 0 !important;
		/*padding-right: 10px!important;*/
	}
}
@media screen and (max-width: 523px){
	#fixbtn .inner {
    	padding-top: 10px;
    	padding-bottom: 10px;
	}
	#fixbtn .fixbtntel a{
		margin-bottom: 10px;
	}
}

/*------------------------------------------------------------------*/
/*----------------------------widget--------------------------------*/
/*------------------------------------------------------------------*/

/*----------------------------contents_faq01----------------------------*/

.contents_faq01 dt{
	padding-left: 5rem;
	margin-bottom: 25px;
	min-height: 35px;
	width: 100%;
	padding-right: 15px;
	box-sizing: border-box;
}
.contents_faq01 dd{
	padding-left: 7.3rem;
	margin-bottom: 15px;
	width: 100%;
	padding-right: 15px;
	box-sizing: border-box;
}
.contents_faq01 dt:before,
.contents_faq01 dd:before{
	width: 4rem;
	height: 4rem;
	font-size: 2.6rem;
	line-height: 1.18;
	box-sizing: border-box;
	font-weight: 900;
	color:#fff;
	background: var(--i_main_color);
	border: 2px solid var(--i_main_color);
	text-align: center;
	padding-top: 0px;
	border-radius: 100px;
	font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.contents_faq01 dd:before{
	font-size: 2.6rem;
	line-height: 1.15;
	color: var(--i_main_color);
	background: none;
	text-align: center;
	padding-top: 0px;
}
.contents_faq01.accordion .mymore a, .edit_view .contents_faq01.accordion .wrapper_item::after {
	border-radius: 100px;
}


/*----------------------------contents_related_tags----------------------------*/

.contents_related_tags .inner_item{
	border: 1px solid var(--i_border_color);
}
.contents_related_tags .inner_item:hover{
	background: var(--i_sub2_color);
}
.contents_related .inner_item a:hover{
	background: var(--i_sub2_color);
	opacity: 0.8;
}
.contents_related .inner_item_img{
}

/*----------------------------block_table_1----------------------------*/

.block_table_1 table thead{
	background: var(--i_sub2_color);
}
.block_table_1 table thead th,
.block_table_1 table thead td{
	background-color: var(--i_sub2_color);
}
.block_table_1 table th{
	background-color: var(--i_sub2_color);
	border: 1px solid var(--i_border_color);
	text-align: center;
	vertical-align: middle;
}
.block_table_1 table td{
	background-color: #fff;
	border: 1px solid var(--i_border_color);
	vertical-align: middle;
}
.block_table_1 table thead td{
	text-align: center;
	font-weight: bold;
}

/*----------------------------block_table_2,5,6----------------------------*/

.block_table_2 table thead,
.block_table_2 table thead th,
.block_table_2 table thead td,
.block_table_5 table thead,
.block_table_5 table thead th,
.block_table_5 table thead td,
.block_table_6 table thead,
.block_table_6 table thead th,
.block_table_6 table thead td{
	background-color: var(--i_sub2_color);
}
.block_table_2 table th,
.block_table_5 table th,
.block_table_6 table th{
	background-color: var(--i_sub2_color);
	border: 1px solid var(--i_border_color);
	text-align: center;
	vertical-align: middle;
}
.block_table_2 table td,
.block_table_5 table td,

.block_table_6 table td{
	background-color: var(--i_bg_color);
	border: 1px solid var(--i_border_color);
	vertical-align: middle;
}
.block_table_2 table thead td,
.block_table_5 table thead td,
.block_table_6 table thead td{
	text-align: center;
	font-weight: bold;
}
@media screen and (max-width: 500px){
	.block_table_2 table{
		border-bottom: 1px solid var(--i_border_color);
	}
	.block_table_2 table th{
		border-top: 1px solid var(--i_border_color);
	}
	.block_table_2 table td{
		border-top: 1px dotted var(--i_border_color);
	}
}

/*----------------------------block_table_3----------------------------*/

.block_table_3 table thead,
.block_table_3 table thead th,
.block_table_3 table thead td,
.block_table_7 table thead,
.block_table_7 table thead th,
.block_table_7 table thead td{
	background-color: var(--i_sub2_color);
}
.block_table_3 table th,
.block_table_7 table th{
	background-color: var(--i_sub2_color);
	border: 1px solid var(--i_border_color);
	text-align: center;
	vertical-align: middle;
}
.block_table_3 table td,
.block_table_7 table td{
	background-color: var(--i_bg_color);
	border: 1px solid var(--i_border_color);
	vertical-align: middle;
}
@media screen and (max-width: 500px){
	.block_table_3 table{
		border-bottom: 1px solid var(--i_border_color);
	}
	.block_table_3 table th{
		border-top: 1px solid var(--i_border_color);
	}
	.block_table_3 table td{
		border-top: 1px dotted var(--i_border_color);
	}
}
.block_table_3_item li{
	vertical-align: middle;
}

/*----------------------------gallery_archive / gallery_single----------------------------*/

.gallery_archive .inner_item a,
.gallery_single .inner_item a{
	transition: 0.2s ease-in-out;
	background-color: transparent;
}
.gallery_archive .inner_item a:hover,
.gallery_single .inner_item a:hover{
	background-color: #000;
}
.gallery_archive .inner_item a:hover img,
.gallery_single .inner_item a:hover img{
	opacity: 0.8;
}
.gallery_archive .inner_item a:after,
.gallery_single .inner_item a:after{
	color: #fff;
}
.gallery_archive .inner_item p span,
.gallery_single .inner_item p span{
	color: #fff;
}
.gallery_single_slider .slick-arrow::before{
	border-color: var(--i_btn_color);
}

/*----------------------------widget_gallery01----------------------------*/

.widget_gallery01 .slick-arrow{
	height: 40px;
	width: 30px;
	top: calc(50% - 20px);
	left: 0;
}
.widget_gallery01 .slick-next{
	left: auto;
	right: 0;
}

/*----------------------------gallery hover効果----------------------------*/

main .widget_gallery01 a,
main .gallery_archive .inner_item a,
main .gallery_single .inner_item a{
	overflow: hidden;
}
main .widget_gallery01 a img,
main .gallery_archive .inner_item a img,
main .gallery_single .inner_item a img{
	/*▼ 位置調整 美容院などの人物の場合は50% 30%あたり*/
	object-fit: cover;
	object-position: 50% 50%;
	font-family: 'object-fit: cover; object-position: 50% 50%;';
	backface-visibility: visible;
	transition: 1s ease-out !important;
	transition-property: transform opacity !important;
	transform: scale(1.001,1.001);
}
main .widget_gallery01 a:hover img,
main .gallery_archive .inner_item a:hover img,
main .gallery_single .inner_item a:hover img{
	transform: scale(1.1,1.1);
	opacity: 0.8;
}

/*----------------------------news_archive----------------------------*/

.news_archive article .inner_item_img:hover{
	opacity: 0.8;
}
.news_archive article .entry_meta{
	font-size: 1.3rem;
}

.add_design5 #primary article .inner_item_img a i:nth-last-child(1){

	background-size: 50%!important;
}
#sidebar .widget_news02 li a div span i{
	background-size: 50%!important;
}

/*----------------------------widget_coupon----------------------------*/

.widget_coupon .content_wrapper{
	max-width: 900px !important;
}

.widget_coupon .inner_item>div,
.widget_coupon .inner_item>dl{
	font-size: 1.4rem;
	line-height: 1.7;
}

/*----------------------------widget_form----------------------------*/

.widget_form .privacypolicy{
	border: 1px solid var(--i_border_color);
}
.widget_form form{
	border-top: 1px solid var(--i_border_color);
}
.widget_form form dl{
	border-bottom: 1px solid var(--i_border_color);
}
.widget_form form dt,
.widget_form form dd{
	vertical-align: middle;
}
.widget_form form dt span{
	color: var(--i_sub2_color);
	color: #D43B3B !important;
	font-size: 1.2rem;
	font-weight: bold;
}
main form dl input, main form textarea{
}
main form dl input:focus, 
main form textarea:focus{
	background: #fff !important;
}
@media screen and (max-width: 770px){
	.widget_form form dt{
		border-bottom: 1px dotted var(--i_border_color);
	}
}
main form dl input,
main form textarea{
	background: var(--i_sub2_color);
	border: 1px solid rgba(102, 102, 102, 0.13);
	letter-spacing: 1px;
}
main form dl input:focus,
main form textarea:focus{
	background: var(--i_bg_color);
	border: 1px solid var(--i_border_color);
}
main form .submit input{
	letter-spacing: 3px;
	border: none;
}
main form select{
	background: var(--i_bg_color);
	border: 1px solid var(--i_border_color);
	letter-spacing: 1px;
}
main form input[type=radio] + label,
main form input[type=checkbox] + label{
	padding: 0 15px 0 22px;
}
main form input[type=radio] + label::before,
main form input[type=checkbox] + label::before{
	top: 50%;
	left: 0;
	width: 17px;
	height: 17px;
	margin-top: -9px;
	background: var(--i_sub2_color);
}
main form input[type=radio] + label::before{
	border-radius: 30px;
}
main form input[type=radio]:checked + label::after,
main form input[type=checkbox]:checked + label::after{
	left: 4px;
	width: 9px;
	height: 9px;
	margin-top: -5px;
	background: var(--i_main_color);
}
main form input[type=radio]:checked + label::after{
	border-radius: 100%;
}
main form input[type=checkbox]:checked + label::after{
}

/*----------------------------widget_link----------------------------*/

.widget_link .inner_item_txt{
	font-size: 2rem;
}
.widget_link.block_link_1 .wrapper_item a{

}
.widget_link .inner_item_url{
}

/*----------------------------widget_lp01----------------------------*/

.widget_lp01 li a:hover{
	opacity: 0.8;
}
.widget_lp01 li a div span{
	background-size: 60% auto;
}

/*----------------------------widget_menu01----------------------------*/

.widget_menu01 h3{
	vertical-align: central;
	font-size: 1.7rem;
	letter-spacing: 1px;
	margin-bottom: 15px;
}
.widget_menu01 li dd{
	font-size: 1.3rem;
	letter-spacing: 0;
}

/*----------------------------widget_menu02----------------------------*/

.widget_menu02 h3{
	vertical-align: central;
	font-size: 1.7rem;
	letter-spacing: 1px;
}
.widget_menu02 li>p{
	font-size: 1.3rem;
	letter-spacing: 0;
}

/*----------------------------widget_news02----------------------------*/

.block_news_2 li{
	box-shadow: 5px 5px 0px rgba(0, 0, 0, 0.08) !important;
}
.block_news_2 li a{
	padding: 30px;
}
.block_news_2 li a:hover:after{
	border-width: 15px;
	border:solid 8px rgba(227, 207, 211, 0.4);
}
/*.block_news_2 li a::after{
	border: 0 solid #eee !important;
}*/
.block_news_2 li a:hover:after{
	border-width: 10px !important;
}
.block_news_2 li p:nth-of-type(1)::before, 
.widget_news02 li p:nth-of-type(1)::before{
}


/*----------------------------widget_shop01----------------------------*/

.widget_staff01 .inner_item a:hover *{
	opacity: 0.8;
}
.widget_staff01 .sub{
	font-size: 1.2rem;
	font-weight: bold;
}

/*----------------------------widget_tel----------------------------*/

.widget_tel .inner_item_tel a,
.widget_tel .inner_item_tel span{
	font-size: 3.6rem;
	letter-spacing: 0.1rem;
	line-height: 1.1;
	padding: 20px;

}
@media screen and (max-width: 450px){
	.widget_tel .inner_item_tel a,
	.widget_tel .inner_item_tel span{

		font-size: 2.6rem;
		padding: 15px 10px;
	}
	.widget_tel .inner_item_tel img{
		margin: 0 5px -2px 0;
	}
	.widget_tel .inner_item_tel svg{
		height: 16px;
		width: 16px;
	}
}

/*----------------------------saitemap----------------------------*/

.widget_sitemap .content_wrapper > ul > li > a::before{
}
.widget_sitemap .content_wrapper > ul > li li > a::after{
}

/*------------------glossary_archive------------------------*/

.glossary_archive .content_wrapper article{
	margin-bottom: 30px;
	padding-bottom: 30px;/*★1*/
}
.glossary_archive .content_wrapper .heading.block_header_2{
	margin-bottom: 10px;
}
.glossary_archive .content_wrapper .heading.block_header_2 .h{
	font-size: 1.8rem;
}
.glossary_archive .content_wrapper .heading.block_header_2 a:after{
	content: "View More";
	position: absolute;
	width: 150px;
	bottom: 32px;/*★1 + 数px*/
	right: 0;
	text-align: center;
	font-size: 1.5rem;
	font-weight: normal;
	padding: 3px 10px;
}
.glossary_archive .content_wrapper article .entry_body{
	padding-right: 180px;
}

@media screen and (max-width: 1224px){
	.glossary_archive .content_wrapper .heading.block_header_2 a:after{
		bottom: calc(32px + 1.8rem);/*★1 + 数px*/
	}
}
@media screen and (max-width: 650px){
	.glossary_archive .content_wrapper article{
		padding-bottom: 60px;
	}
	.glossary_archive .content_wrapper .heading.block_header_2 a:after{
		bottom: 30px;/*★1*/
	}
	.glossary_archive .content_wrapper article .entry_body{
		padding-right: 0;
	}
}

/*------------------recruit------------------------*/

.recruit_archive.add_design1 .recruitment_list .inner_item{
	background: rgba(255,255,255,.8);
}

.index main>section:first-child +div.composite_box01 .heading.block_header_4 .h,
.index main>section:first-child +div+div.composite_box01 .heading.block_header_4 .h{
	font-size: 2.5rem;
	letter-spacing: 0.1rem;
}
@media screen and (min-width: 901px) {
	header#pattern2 .header_contents .inner {
	    position: relative;
	    display: flex;
	    justify-content: flex-end;
	    align-items: center;
	}
	header .header_contents .header_sns.on {
	    position: relative;
	    display: inline-block;
	    width: auto;
	    padding: 0;
	}
	header .header_contents .header_sns ul {
    	width: auto;
	}
}
@media screen and (min-width: 901px) and (max-width: 1000px) {
	header .header_contents .header_col1 .btn>a {
	    padding: 5px 20px;
	}
}
@media screen and (max-width: 800px){
	.index main>section:first-child +div.composite_box01 .heading.block_header_4 .h,
	.index main>section:first-child +div+div.composite_box01 .heading.block_header_4 .h{
		font-size: 2.1rem;
	}
}

/*------------------blog------------------------*/

.block_news_2 li{
	box-shadow: none;
	border: 1px solid var(--i_border_color);
}

/*その他調整*/
.block_news_1.add_design12 .inner {
    width: 100%;
    background: rgba(255,255,255,0.8);
    padding: 15px;
}

/*------------------追記CSS------------------------*/
/*------------------画像にのせる色------------------------*/

.composite_box01.block_images_7 .inner_item_txt{
	background: rgba(94,24,38,0.6) ;
}
.composite_box01.block_images_7 .inner_item a:hover .inner_item_txt {
    background: rgba(94,24,38,0.3) ;
}

.composite_box01.block_images_11 .inner_item_txt .heading{
	background: rgba(94,24,38,0.8);
	outline: 1px rgba(255,255,255,0.6) solid;
	outline-offset: -5px;
}
.composite_box01.block_images_11 .heading.block_header_4 .h {
    color: #fff;
}
@media screen and (max-width: 400px){
.composite_box01.block_images_11 .inner_item_img img, .composite_box01.block_images_11 .inner_item_txt .pwrap .iwrap{
	height: 200px !important;
	}
}
/*------------------パララックス背景(白)------------------------*/

#parallax+div .parallax_img,
#parallax2+div .parallax_img,
#text+section .parallax_img{
	filter: brightness(110%) contrast(80%) blur(5px) grayscale(40%);
	opacity: 0.3;
}
/*------------------border------------------------*/
.contents_hr.block_line_2 hr {
  border-bottom: 1px dashed rgba(0,0,0,0.25);
}

/*------------------コンセプト------------------------*/
#concept+section .sp_only{
	display: none;
}
#concept+section{
	padding-top: 130px;
	padding-bottom: 90px;
	background: url(/common/upload_data/kumpelhomejp/image/bg_ie1_1.png),url(/common/upload_data/kumpelhomejp/image/bg_ie2_1.png);
	background-position: bottom 60px left,bottom 180px right!important;
	background-repeat: no-repeat,no-repeat!important;
	background-size: 550px auto,310px auto!important;
}
#concept+section .contents_btn01{
	padding-top: 35px;
}
#concept+section .content_wrapper{
	text-align: center;
}
#concept+section .concept_wrapper{
	text-align: left;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: row-reverse;
}
#concept+section .heading.block_header_6 {
	writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
	margin-bottom: 0px;
	padding-top: 0px;
	padding-left:100px;
	text-align: left;
}
#concept+section .heading.block_header_6 .h p{
	letter-spacing: 0.5rem;
	line-height: 2.4;
	text-align: left;
	font-size: 2.6rem;
	display: inline-block;
	border-right: 2px solid #5e1826;
	font-weight: 900;
}
#concept+section .heading.block_header_6 .h::before{
	display: none;
}

@media screen and (max-width: 900px){
	#concept+section {
    	padding-top: 80px;
    	padding-bottom: 80px;
		background-position: bottom 30px left -60px,top 120px right!important;
		background-size: 355px auto,200px auto!important;
	}
	#concept+section .pc_only{
		display: none;
	}
	#concept+section .sp_only{
		display: block;
	}
	#concept+section .concept_wrapper {
		writing-mode:inherit;
		text-align: left;
    	display: block;
	}
	#concept+section .heading.block_header_6 {
		writing-mode:inherit;
		align-items: center;
		padding-left: 0px;
	}
	#concept+section .heading.block_header_6 .h {
		text-align: center;
	}
	#concept+section .heading.block_header_6 .h::before{
		display: block;
	}
	#concept+section .heading.block_header_6 .h {
    letter-spacing: 0.2rem;
    line-height: 1.55;
    text-align: center;
    font-size: 2.5rem;
    border-right: none;
		margin-bottom: 25px;
	}
	#concept+section h2{
		position: relative;
	}
	#concept+section h2::before {
  	position: absolute;
  	bottom: 0;
  	left: 0;
  	width: 100%;
  	height: 5px;
  	content: '';
  	background-image: -webkit-repeating-linear-gradient(135deg, #5e1826, #5e1826 1px, transparent 1px, transparent 4px);
  	background-image: repeating-linear-gradient(-45deg, #5e1826,#5e1826 1px, transparent 1px, transparent 4px);
  	background-size: 6px 6px;
  	-webkit-backface-visibility: hidden;
  	backface-visibility: hidden;
	}
	#concept+section .contents_btn01 {
    	padding-top: 25px;
	}
}
@media screen and (max-width: 600px){
	#concept+section {
    	background-position: bottom 20px left -60px,top 95px right -100px!important;
    	background-size: 330px auto,190px auto!important;
	}
}

/*------------------新着情報------------------------*/
/*#news+div li a span{
	display: none;
}
#news+div .content_wrapper li a {
	letter-spacing: 0.1rem;
	color: #5e1826;
	line-height: 1.9;
	font-weight: 500;
	text-align: center;
}
#news+div.block_news_1 li ol li{
	background: #faedf0;
	padding: 8px 15px;
	border-radius: 100px;
	color: #5e1826;
	opacity: 1;
	font-weight: 600;
	font-size: 1.3rem;
	border: none!important;
	margin-top: 5px;
	margin-bottom: 10px;
}
#news+div.block_news_1.add_design4 .content_wrapper li a > p{
	font-size: 1.5rem;
	color: #686868;
	padding: 0 10px 0px;
}
#news+div.block_news_1.add_design4 .content_wrapper li div{
	display: flex;
	flex-direction: column;
}
#news+div.block_news_1 li ol{
	order: 1;
}
#news+div .content_wrapper li div p{
	order: 2;
	font-weight: 600;
	color: #5e1826;
	font-size: 1.55rem;
font-family: 'Zen Kaku Gothic New','Roboto', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#news+div.block_news_1.add_design4 .content_wrapper ul{
	padding-top: 20px;
}
#news+div.block_news_1 ul li:nth-of-type(1){
	border-top: none;
}*/

#news+div{
	position: relative;
}
#news+div::before {
position: absolute;
display: block;
content: "";
width: 97%;
height: 100%;
bottom: 35px;
background-image: url("/common/upload_data/kumpelhomejp/image/news_img.png");
background-repeat: no-repeat;
background-position: left bottom;
z-index: 1;
left: 3%;
background-size: 280px auto;
}

@media screen and (max-width: 1600px){
	#news+div::before {
		left: 2%;
		width: 98%;
		background-size: 210px auto;
	}
}
@media screen and (max-width: 1400px){
	#news+div::before {
		left: -2.2%;
		width: 100%;
		background-size: 180px auto;
	}
}
@media screen and (max-width: 1200px){
	#news+div::before {
		background-size: 160px auto;
		top:40px;
		background-position: left top;
	}
}

/*@media screen and (max-width: 900px){
	#news+div .content_wrapper li a {
    	text-align: left;
	}
	#news+div.block_news_1 li ol li {
    	padding: 8px 10px;
    	font-size: 1.1rem;
	}
}*/
@media screen and (max-width: 650px){
/*	#news+div.block_news_1.add_design4 .content_wrapper li ol {
    	display: block;
	}*/
	#news+div::before {
    	background-size: 120px auto;
    	top: 30px;
	}
}

/*------------------不動産のこんなお悩み解決します------------------------*/
#point+div .inner_item_img img{
  height: auto !important;
}
#point+div .inner_item_txt{
	margin-top: 20px;
}
#point+div .contents_btn01{
	margin-top: 20px;
}
#point+div .contents_btn01 a{
	text-decoration: none;
	min-width: 160px;
}
#point+div .contents_btn01 a span{
	font-size: 1.4rem;
}
#point+div .contents_btn01 a::before{
	display: none;
}
@media screen and (max-width: 480px){
	#point+div .inner_item_img img{
		width: 85%!important;
	}
}

/*------------------3つのお約束------------------------*/
#promise+section{
	margin-top: 20px;
}
#promise+section .wrapper_item{
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
#promise+section .inner_item{
	width: 31%;
	position: relative;
}
#promise+section .inner_item:nth-child(1){
	margin-left: 0 !important;
}
#promise+section .inner_item:nth-child(2),
#promise+section .inner_item:nth-child(3){
	margin-left: 3.5% !important;
}


#promise+section .inner_item .inner_item_txt{
	display: flex;
}
#promise+section .inner_item .heading{
	order: 2;
	width: 23%;
}
#promise+section .inner_item_txt p{
	order: 1;
	width: 70%;
	margin-right: 7%;
	padding-top: 15px;
	border-top: 1px dotted rgba(0,0,0,0.6);
	margin-top: 65px;
}
#promise+section h3{
	writing-mode: vertical-rl;
	text-align: left;
	font-weight: 700;
	letter-spacing: 0.2rem;
	font-size: 2.2rem!important;
	line-height: 1.7;
}

#promise+section .inner_item:nth-child(1)::before {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-image: url("/common/upload_data/kumpelhomejp/image/promise1.png");
	background-repeat: no-repeat;
	background-position: left top;
	z-index: 1;
	background-size: 165px auto;
}
#promise+section .inner_item:nth-child(2)::before {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-image: url("/common/upload_data/kumpelhomejp/image/promise2.png");
	background-repeat: no-repeat;
	background-position: left top;
	z-index: 1;
	background-size: 165px auto;
}
#promise+section .inner_item:nth-child(3)::before {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-image: url("/common/upload_data/kumpelhomejp/image/promise3.png");
	background-repeat: no-repeat;
	background-position: left top;
	z-index:-1;
	background-size: 165px auto;
}

#promise+section{
	position: relative;
}
#promise+section::before {
	position: absolute;
	display: block;
	content: "";
	width: 98%;
	height: 100%;
	bottom: 30px;
	background-image: url("/common/upload_data/kumpelhomejp/image/promise_img2.png");
	background-repeat: no-repeat;
	background-position: right bottom;
	z-index: 1;
	right: 2%;
	background-size: 260px auto;
}
@media screen and (max-width: 1650px){
	#promise+section::before {
		display: none;
	}
}

@media screen and (max-width: 1000px){
	#promise+section h3{
		font-size: 2.0rem!important;
	}
}

@media screen and (max-width: 900px){
	#promise+section{
		margin-top: 0px;
		padding-top: 10px;
	}
	#promise+section .inner_item:nth-child(2),
	#promise+section .inner_item:nth-child(3){
		margin-top: 30px;
	}
	#promise+section .pc_only{
		display: none;
	}
	#promise+section .wrapper_item{
		display: block;
	}
	#promise+section .inner_item{
		width: 100%;
	}
	#promise+section .inner_item:nth-child(2),
	#promise+section .inner_item:nth-child(3){
		margin-left: 0% !important;
	}
	#promise+section .inner_item .inner_item_txt{
		display: block;
	}
	#promise+section .inner_item .heading{
	order: 1;
	width: 100%;
	}
	#promise+section .inner_item_txt p{
	order: 2;
	width: 100%;
	margin-right: 0%;
	padding-top: 5px;
	border-top: none;
	margin-top: 0px;
	}
	#promise+section h3{
		writing-mode: inherit;
		text-align: center;
		font-size: 1.8rem!important;
		line-height: 1.5;
		letter-spacing: 0.1rem!important;
		font-weight: 900;
	}
	#promise+section .inner_item{
		padding-top: 70px;
	}
	#promise+section .inner_item:nth-child(1)::before,
	#promise+section .inner_item:nth-child(2)::before,
	#promise+section .inner_item:nth-child(3)::before{
		background-position: top center;
	}
}
@media screen and (max-width: 600px){
	#promise+section h3{
		text-align: left;
	}
	#promise+section .inner_item:nth-child(1)::before,
	#promise+section .inner_item:nth-child(2)::before,
	#promise+section .inner_item:nth-child(3)::before{
		background-position: top left;
		background-size: 155px auto;
	}
	#promise+section .inner_item {
    	padding-top: 65px;
	}
}
@media screen and (max-width: 1650px){
	#promise0+section{
		position: relative;
	}
	#promise0+section::before {
		position: absolute;
		display: block;
		content: "";
		width: 96.5%;
		height: 100%;
		bottom: 0px;
		background-image: url("/common/upload_data/kumpelhomejp/image/promise_img2.png");
		background-repeat: no-repeat;
		background-position: right bottom;
		z-index: 1;
		right: 3.5%;
		background-size: 240px auto;
	}
}
@media screen and (max-width: 1400px){
	#promise0+section::before {
		background-size: 190px auto;
	}
}
@media screen and (max-width: 650px){
	#promise0+section::before {
		background-size: 140px auto;
		background-position: right top;
		right: 9%;
		width: 91%;
	}
}

/*------------------選ばれる3つの理由------------------------*/
#reason+div.composite_box01 .wrapper_item{
	width: 65%;
	padding-top: 10px;
}
#reason+div.composite_box01.block_images_5 .inner_item_img{
	padding-top: 80%;
	width: 80%;
	margin-top: 10px;
}

#reason+div .content_wrapper{
	position: relative;
}
#reason+div .content_wrapper::before {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	bottom: 0;
	background-image: url("/common/upload_data/kumpelhomejp/image/osusume_1.png");
	background-repeat: no-repeat;
	background-position: right bottom;
	z-index: -1;
	right: 0px;
	background-size: 420px auto;
}
#reason_img+section{
	display: none;
}
#reason+div .heading.block_header_4 .h {
	font-size: 1.9rem!important;
	font-weight: 700;
	background: linear-gradient(transparent 70%, rgba(94,24,38,0.15) 70%);
	display: inline;
	line-height: 1.7;
	padding-bottom: 2px;
}
#reason+div .inner_item_img{
	position: relative;
}
#reason+div .inner_item:nth-child(1) .inner_item_img:before {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background-image: url("/common/upload_data/kumpelhomejp/image/1.png");
	background-repeat: no-repeat;
	background-position: left top;
	z-index: 1;
	top: 0;
	left: 0;
	background-size: 50px auto;
}
#reason+div .inner_item:nth-child(2) .inner_item_img:before {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background-image: url("/common/upload_data/kumpelhomejp/image/2.png");
	background-repeat: no-repeat;
	background-position: left top;
	z-index: 1;
	top: 0;
	left: 0;
	background-size: 50px auto;
}
#reason+div .inner_item:nth-child(3) .inner_item_img:before {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background-image: url("/common/upload_data/kumpelhomejp/image/3.png");
	background-repeat: no-repeat;
	background-position: left top;
	z-index: 1;
	top: 0;
	left: 0;
	background-size: 50px auto;
}

#reason+div{
	position: relative;
}
#reason+div:before {
	position: absolute;
	display: block;
	content: "";
	width: 95%;
	height: 100%;
	top: 75px;
	background-image: url("/common/upload_data/kumpelhomejp/image/ie04.png");
	background-repeat: no-repeat;
	background-position: left top;
	z-index: 1;
	left: 5%;
	background-size: 280px auto;
}

@media screen and (max-width: 1350px){
	#reason+div .content_wrapper::before {
		right: 20px;
	}
	#reason+div:before {
		background-size: 210px auto;
		width: 97%;
		left: 3%;
		top: 95px;
	}
}
@media screen and (max-width: 1250px){
	#reason+div .content_wrapper::before {
		background-size: 370px auto;
	}
}
@media screen and (max-width: 1100px){
	#reason+div.composite_box01 .wrapper_item{
		width: 100%;
	}
	#reason+div .content_wrapper::before{
		display: none;
	}
	#reason+div.composite_box01.block_images_5 .inner_item_img {
    	padding-top: 70%;
    	width: 70%;
	}
	#reason_img+section{
		position: relative;
		display: block;
	}
	#reason+div{
		padding-bottom: 50px;
	}
	#reason+div:before{
		display: none;
	}
	#reason_img+section:before {
		position: absolute;
		display: block;
		content: "";
		width: 97%;
		height: 100%;
		bottom: 15px;
		background-image: url("/common/upload_data/kumpelhomejp/image/ie04.png");
		background-repeat: no-repeat;
		background-position: left bottom;
		z-index: 2;
		left: 3%;
		background-size: 210px auto;
	}
}
@media screen and (max-width: 900px){
	#reason_img+section.contents_box01 .inner_item_img img{
		width: 380px!important;
	}
}
@media screen and (max-width: 750px){
	#reason+div .inner_item:nth-child(1) .inner_item_img:before,
	#reason+div .inner_item:nth-child(2) .inner_item_img:before,
	#reason+div .inner_item:nth-child(3) .inner_item_img:before{
		background-size: 42px auto;
	}
}
@media screen and (max-width: 700px){
	#reason+div.composite_box01 .inner_item{
		width: 31%!important;
	}
	#reason+div.composite_box01 .inner_item:nth-child(2),
	#reason+div.composite_box01 .inner_item:nth-child(3){
		margin-left: 3.5%!important;
	}
	#reason+div .heading.block_header_4 .h {
    	font-size: 1.6rem!important;
	}
	#reason+div {
    	padding-bottom: 10px;
	}
}
@media screen and (max-width: 650px){
	#reason_img+section:before{
		background-size: 160px auto;
	}
}
@media screen and (max-width: 550px){
	#reason+div.composite_box01 .inner_item{
		width: 100%!important;
	}
	#reason+div.composite_box01 .inner_item:nth-child(2),
	#reason+div.composite_box01 .inner_item:nth-child(3){
		margin-left: 0%!important;
	}
	#reason+div.composite_box01.block_images_5 .inner_item_img{
		padding-top: 50%;
		width: 50%;
	}
	#reason+div .heading.block_header_4 .h {
    	font-size: 1.95rem!important;
	}
	#reason+div {
    	padding-bottom: 40px;
	}

	#reason+div .inner_item:nth-child(1) .inner_item_img:before,
	#reason+div .inner_item:nth-child(2) .inner_item_img:before,
	#reason+div .inner_item:nth-child(3) .inner_item_img:before{
		background-size: 55px auto;
	}
}
@media screen and (max-width: 480px){
	#reason_img+section.contents_box01 .inner_item_img img{
		    width: 92% !important;
	}
}
@media screen and (max-width: 420px){
	#reason+div.composite_box01.block_images_5 .inner_item_img{
		padding-top: 60%;
		width: 60%;
	}
}

/*------------------ブログ------------------------*/
#blog+div .no_img{
	background: #fff!important;
}



/*------------------お客様の声------------------------*/
#voice+div{
	position: relative;
}
#voice+div:before {
	position: absolute;
	display: block;
	content: "";
	width: 96%;
	height: 100%;
	top: 90px;
	background-image: url("/common/upload_data/kumpelhomejp/image/ie02.png");
	background-repeat: no-repeat;
	background-position: right top;
	z-index: 1;
	right: 4%;
	background-size: 280px auto;
}
@media screen and (max-width: 1350px){
	#voice+div:before{
		background-size: 210px auto;
		width: 100%;
		right: -1.5%;
		top: 85px;
	}
}
@media screen and (max-width: 650px){
	#voice+div:before {
    	background-size: 170px auto;
    	top: 25px;
    	right: -12%;
	}
}

/*------------------実績紹介------------------------*/
#case+div{
	position: relative;
}
#case+div:before {
	position: absolute;
	display: block;
	content: "";
	width: 96%;
	height: 100%;
	bottom: 60px;
	background-image: url("/common/upload_data/kumpelhomejp/image/ie03.png");
	background-repeat: no-repeat;
	background-position: left bottom;
	z-index: 1;
	left: 4%;
	background-size: 280px auto;
}
@media screen and (max-width: 1350px){
	#case+div:before{
		background-size: 210px auto;
		width: 99%;
		left: 1%;
		bottom: 40px;
	}
}
@media screen and (max-width: 650px){
	#case+div:before {
		background-size: 180px auto;
    	bottom: auto;
    	left: -6%;
    	top: 0;
    	background-position: left top;
	}
}

/*------------------SP時Gナビのアコーディオン解除------------------------*/
@media screen and (max-width: 900px){
	header#pattern2 nav ul.nav_1st>li>a span {
    	text-shadow: none;
	}
	header nav ul.nav_2nd{
		display: block
	}
	header nav ul.nav_1st>li i:before,
	header nav ul.nav_1st>li i:after{
		display: none;
	}
	header nav ul.nav_2nd li a {
    	padding: 10px 0px;
    	font-size: 1.5rem;
	}
}

/*------------------右側固定_追従バナー------------------------*/
.right_banner .banner1 {
  position: fixed;
  right: 0px;
  top: 160px;
  z-index: 10;
  width:55px;
}
.right_banner .banner2 {
  position: fixed;
  right: 0px;
  top: 320px;
  z-index: 10;
  width: 55px;
}
.right_banner .banner3 {
  position: fixed;
  right: 0px;
  top: 480px;
  z-index: 10;
  width: 55px;
}
.right_banner a {
  transition: .5s;
}
.right_banner a:hover {
  opacity: 0.8;
}
@media screen and (max-width: 1200px){
	.right_banner .banner1,
	.right_banner .banner2,
	.right_banner .banner3{
		width: 45px;
	}
	.right_banner .banner2{
		top: 290px;
	}
	.right_banner .banner3{
		top: 420px;
	}
}
@media screen and (max-width:900px){
	.right_banner .banner1,
	.right_banner .banner2,
	.right_banner .banner3{
		width: 40px;
	}
	.right_banner .banner1{
		top: 90px;
	}
	.right_banner .banner2{
		top: 205px;
	}
	.right_banner .banner3{
		top: 320px;
	}
}
@media screen and (max-width:700px){
	.right_banner{
		display: none;
	}
}

/*------------------SP_フッター追従ボタン------------------------*/
#fixbtn .sp_bottom{
	display: none!important;
}
#fixbtn .inner > div{
	margin: 0 auto;
}
@media screen and (max-width:700px){
	#fixbtn.no .fixbtnwrap{
		background-color: #5e1826;
		border-bottom: 1px solid rgba(255,255,255,0.15);
	}
	#fixbtn .fixbtnwrap {
    	border-top: none;
	}
	#fixbtn .inner > div{
		width: 100%;
		padding: 0!important;
	}
	.sp_banner{
		display: flex;
	}
	#fixbtn .sp_bottom,
	#fixbtn.no{
		display:block!important;
	}
	.sp_bottom a{
		width: 33.333%;
		padding: 10px;
		position: relative;
	}
	.sp_bottom a:nth-child(1),
	.sp_bottom a:nth-child(3){
		background: #c34a2a;
	}
	.sp_bottom a:nth-child(2){
		background: #7e2738;
	}
	.sp_bottom a:nth-child(1)::before{
		position: absolute;
		display: block;
		content: "";
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		background-image: url("/common/upload_data/kumpelhomejp/image/footer_ico1.png");
		background-repeat: no-repeat;
		background-position: left 10px center;
		z-index: 1;
		background-size: 27px auto;
	}
	.sp_bottom a:nth-child(2)::before{
		position: absolute;
		display: block;
		content: "";
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		background-image: url("/common/upload_data/kumpelhomejp/image/footer_ico2.png");
		background-repeat: no-repeat;
		background-position: left 10px center;
		z-index: 1;
		background-size: 27px auto;
	}
	.sp_bottom a:nth-child(3)::before{
		position: absolute;
		display: block;
		content: "";
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		background-image: url("/common/upload_data/kumpelhomejp/image/footer_ico3.png");
		background-repeat: no-repeat;
		background-position: left 10px center;
		z-index: 1;
		background-size: 27px auto;
	}
	.sp_bottom a span{
		text-align: center;
		letter-spacing: 0.1rem;
    	font-size: 1.5rem;
	}
	#fixbtn .inner,
	#fixbtn{
		min-height: inherit!important;
	}
	#fixbtn .inner{
		padding: 0;
	}
}
@media screen and (max-width:500px){
	.sp_bottom a span {
    	font-size: 1.35rem;
    	padding-left: 20px;
	}
	.sp_bottom a:nth-child(1)::before,
	.sp_bottom a:nth-child(2)::before,
	.sp_bottom a:nth-child(3)::before{
		background-size: 23px auto;
	}
}
@media screen and (max-width:400px){
	.sp_bottom a span {
    	font-size: 1.3rem;
    	padding-left: 25px;
	}
	.sp_bottom a:nth-child(1)::before,
	.sp_bottom a:nth-child(2)::before,
	.sp_bottom a:nth-child(3)::before{
		background-size: 20px auto;
	}
	.sp_bottom a {
    	padding: 10px 5px;
	}
}


/*よくある質問開閉+-(制御はjs)*/
.contents_faq01 dl dt::after {
	content: '+';
	display: block;
	position: absolute;
	right: 2rem;
	top: 50%;
	transform: translateY(-50%);
	font-size: 3rem;
	font-weight: 400;
	color: #5e1826;
}
.contents_faq01 dl dt.open::after {
	content: 'ー';
	font-size: 2rem;
}
@media screen and (max-width:700px){
	.contents_faq01 dl dt::after {
		right: 0rem;
		font-size: 2.5rem;
	}
	.contents_faq01 dl dt.open::after {
		font-size: 1.5rem;
		font-weight: 600;
	}
}