@charset "utf-8";
/* CSS Document */
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
.contentWarp{
	background: #FFFFFF;
	/*padding-top: 2rem;*/
}
.contentWarp > div{
	max-width: 1250px;
    width: 95%;
    margin: 0 auto;
}
/*main > div{
	max-width: 1250px;
    width: 95%;
    margin: 0 auto;
}
main > #mv{
	max-width: 100%;
    width: 100%;
}*/
/*------------------------------------------------------------
	hWarp ヘッダー
------------------------------------------------------------*/
#hWarp{
	background: none;
}
#hWarp h1.logo img{
	filter: invert(100%) sepia(100%) saturate(1%) hue-rotate(64deg) brightness(111%) contrast(101%);
}
#hWarp #hHd span{
	color: #FFFFFF;
}
#hWarp .naviTxt a{
	color: #FFFFFF;
}

#hWarp .naviTxt a::after {
	background: #FFFFFF;
}
#hWarp .menu.menuToggle span{
	background: #FFFFFF;
}
#hWarp.hdAdd{
	background: #FFFFFF;
}
#hWarp.hdAdd h1.logo img{
	filter: invert(18%) sepia(9%) saturate(6490%) hue-rotate(10deg) brightness(92%) contrast(105%);
}
#hWarp.hdAdd #hHd span{
	color: #402702;
}
#hWarp.hdAdd .naviTxt a{
	color: #3e3431;
}
#hWarp.hdAdd .naviTxt a::after {
	background: #3e3431;
}
#hWarp.hdAdd .menu.menuToggle span{
	background: #3e3431;
}
/*------------------------------------------------------------
	mv メインビジュアル
------------------------------------------------------------*/
#mv{
	position: relative;
	height: 100vh;
}
#mv .mvTxt{
	display: flex;
	flex-direction: column;
    align-items: center;
	max-width: 450px;
    min-width: 200px;
    width: 40%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#mv .mvTxt img{
	margin: 1rem auto;
	filter: invert(100%) sepia(100%) saturate(1%) hue-rotate(64deg) brightness(111%) contrast(101%);
}
#mv .mvTxt img.mvHd{
	max-width: 350px;
	width: 90%;
	/*margin: 1rem auto 0;*/
}
#mv .mvImg {
	position: fixed;
    top: 0;
    z-index: -1;
    overflow: clip;
	width: 100vw;
	height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}
#mv .mvImg img{
	display: block;
	max-width: none;
	max-height: none;
}
@media (max-width: 1000px) {
	#mv .mvTxt img{
		margin: 0.5rem auto;
	}
}
@media (max-width: 768px) {
	#mv .mvTxt{
		top: 22%;
	}
}
/*------------------------------------------------------------
	intr Studio.Reとは
------------------------------------------------------------*/
#intr {
	margin: 0em auto;
	padding: 8em 0;
	width: 100%;
}
#intr > h2{
	text-align: center;
    font-weight: 900;
    margin-bottom: 1em;
}
#intr > div {
    display: flex;
	gap: 3rem;	
}
#intr .intrMain{
	justify-content: flex-end;
	margin-bottom: 5em;
}
#intr .intrMain .intrImg {
    order: 1;
	max-width: 700px;
    width: 50%;
}
#intr .intrMain .intrTxt {
	width: 30%;
    padding-top: 2rem;
}
#intr .intrMain .intrTxt h2 img{
	max-height: 82px;
    width: auto;
	margin: 2rem 0;
	filter: invert(24%) sepia(1%) saturate(5792%) hue-rotate(325deg) brightness(83%) contrast(95%);
}
#intr .intrRe .intrImg{
	width: 50%;
}
#intr .intrRe .intrTxt{
	width: 50%;
}
#intr .intrRe .intrTxt .intrsubImg {
    display: flex;
    gap: 0.5rem;
}
#intr .intrRe .intrTxt .intrsubImg img{
    width: calc(50% - 0.25rem);
}
#intr .intrRe .intrTxt h4 {
	margin-top: 2rem;
    margin-bottom: 1rem;
}
#intr .intrRe .intrTxt p {
	width: 75%;
	margin: 1em 0;
}
@media (min-width: 1000px) {
    #intr .sp {
        display: none !important;
    }
}
@media (max-width: 1000px) {
	#intr .pc {
        display: none !important;
    }
    #intr {
        margin: 0rem auto;
		padding: 5rem 0;
    }
	#intr > div{
		flex-direction: column;
		align-items: center;
		gap: 1rem;
	}
	#intr .intrMain{
		margin-bottom: 1em;
	}
	#intr .intrMain .intrImg{
		display: flex;
		align-items: center;
		max-width: 90%;
        width: 90%;
		height: 200px;
        overflow: clip;
	}
	#intr .intrMain .intrTxt,
	#intr .intrRe .intrTxt{
		width: 90%;
		text-align: center;
		padding: 0;
	}
	#intr .intrMain .intrTxt h2 img{
		max-height: 54px;
		margin: 0.5rem 0;
	}
	#intr .intrRe .intrTxt p{
		width: 100%;
        margin: 0 auto;
        text-align: justify;
        text-align-last: left;
	}
}
/*------------------------------------------------------------
	topCont メリット・スタイル共通
------------------------------------------------------------*/
#topCont {	
	padding: 12em 0;
	max-width: 100%;
    width: 100%;
}
#topCont > * {
	max-width: 960px;
	width: 90%;
    margin:auto auto 5rem;
}
#topCont > *:last-child{
	margin-bottom: 0;
}
#topCont h3{
	text-align: center;
    margin-bottom: 1em;
}
@media (max-width: 768px) {
	#topCont{
		padding: 5em 0;
	}
	/*#topCont > div > h3{
		margin-bottom: 1rem;
	}*/
}
/*------------------------------------------------------------
	merit メリット
------------------------------------------------------------*/
.meritDl {
	margin-bottom: 5rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 2em;
    background: #FFFFFF;
    padding: 6rem;
    border-radius: 7em 0;
}
.meritdlHd {
    width: 40%;
}
.meritdlHd h4 {
    border-bottom: 1px #3e3431 solid;
    line-height: 1.5em;
    padding: 0.35em 0;
}
.meritdlHd h4:last-child{
	border-bottom: none;
}
.meritdlImg {
	overflow: clip;
    max-width: 400px;
    width: 60%;
}
.meritdlTxt {
    width: 100%;
}
.meritdlTxt p {
    font-weight: 500;
}
.meritdlTxt .cap li{
    padding-left: 1em;
	text-indent: -1em;
}
.meritdlTxt .cap li::before{
	content: "※";
}
@media (max-width: 768px) {
	.meritDl{
		margin-bottom: 3rem;
		padding: 3em;
        flex-direction: column;
        align-items: center;
        gap: 1em;
		border-radius: 5em 0;
	}
	.meritdlHd{
		width: 100%;
        text-align: center;
	}
	.meritdlImg{
		width: 75%;
	}
}
/*------------------------------------------------------------
	style スタイル
------------------------------------------------------------*/
#style .styleTop,
#style .styleTop .styleList,
#style .styleTop .styleList li a{
	display: flex;
	gap: 2rem;
}
#style .styleTop {
    position: relative;
	margin-bottom: 5rem;
}
#style .styleTop::after {
    content: "";
    display: block;
	width: 35%;
    height: 20%;
	position: absolute;
    bottom: 0;
    right: 0;
	background: url(../img/top/style_bg.webp);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: contain;
}
#style .styleList {
    width: 55%;
    flex-wrap: wrap;
}
#style .styleList li{
	width: calc(50% - 1rem);
}
#style .styleList li a{
    width: 100%;
	padding: 4em 0;
	align-items: center;
    justify-content: center;
}
#style .styleList li a img.styleName {
    width: 50%;
}
#style .styletopTxt h3 {
	text-align: left;
	/*line-height: 1.7em;*/
}
#style .styletopTxt p {
	line-height: 2em;
}
#style .styleLinks .styleDl{
	display: flex;
	align-items: flex-end;
	gap: 2rem;
	margin-bottom: 5rem;
}
#style .styleLinks .styleDl:last-child{
	margin-bottom: 0rem;
}
#style .styleLinks .styleDl .styleImg{
	width: 55%
}
#style .styleLinks .styleDl:nth-child(odd) .styleImg{
	order: 1;
}
#style .styleLinks .styleDl .styleImg{
	overflow: clip;
}
#style .styleLinks .styleDl .styleTxt{
	width: 45%;
}
#style .styleLinks .styleDl .styleTxt img.styleName {
    width: 25%;
    margin-bottom: 1rem;
}
#style .styleLinks .styleDl.ikoi .styleTxt img.styleName{
	filter: invert(52%) sepia(6%) saturate(1932%) hue-rotate(110deg) brightness(92%) contrast(83%);
}
#style .styleLinks .styleDl.iyashi .styleTxt img.styleName{
	filter: invert(81%) sepia(25%) saturate(294%) hue-rotate(147deg) brightness(82%) contrast(82%);
}
#style .styleLinks .styleDl.omomuki .styleTxt img.styleName{
	filter: invert(99%) sepia(21%) saturate(4006%) hue-rotate(313deg) brightness(90%) contrast(96%);
}
#style .styleLinks .styleDl.inishie .styleTxt img.styleName{
	filter: invert(78%) sepia(5%) saturate(2449%) hue-rotate(323deg) brightness(82%) contrast(66%);
}
#style .styleLinks .styleDl .styleTxt p{
	font-size: 16px;
	margin-top: 1rem;
	margin-bottom: 1rem;
}
/*#style .styleLinks .styleDl .styleTxt a.styleLink{
	color: #FFFFFF;
	display: flex;
	align-items: center;
    justify-content: center;
	font-size: 21px;
	height: 2.5em;
	transition: 0.5s;
}
#style .styleLinks .styleDl .styleTxt a.styleLink:hover{
	opacity: 0.7;
}
#style .styleLinks .styleDl .styleTxt a.styleLink{
	color: #FFFFFF;
	display: flex;
	align-items: center;
    justify-content: center;
	font-size: 21px;
	font-weight: 600;
	height: 2.5em;
}
#style .styleLinks .styleDl .styleTxt a.styleLink span{
    position: relative;
    margin-right: 1em;
	color: #FFFFFF;
}
#style .styleLinks .styleDl .styleTxt a.styleLink span::before,
#style .styleLinks .styleDl .styleTxt a.styleLink span::after{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#style .styleLinks .styleDl .styleTxt a.styleLink span::before{
	content: "○";
    font-size: 1.35em;
}
#style .styleLinks .styleDl .styleTxt a.styleLink span::after{
	content: "+";
	font-size: 1em;
    font-weight: 900;
}*/
#style .styleLinks .styleDl .styleTxt .styleLink{
	color: #FFFFFF;
	display: flex;
	align-items: center;
    justify-content: center;
	font-size: 21px;
	height: 2.5em;
	transition: 0.5s;
}
#style .styleLinks .styleDl .styleTxt a.styleLink:hover{
	opacity: 0.7;
}
#style .styleLinks .styleDl .styleTxt .styleLink{
	color: #FFFFFF;
	display: flex;
	align-items: center;
    justify-content: center;
	font-size: 21px;
	font-weight: 600;
	height: 2.5em;
}
#style .styleLinks .styleDl .styleTxt .styleLink span{
    position: relative;
    margin-right: 1em;
	color: #FFFFFF;
}
#style .styleLinks .styleDl .styleTxt .styleLink span::before,
#style .styleLinks .styleDl .styleTxt .styleLink span::after{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#style .styleLinks .styleDl .styleTxt .styleLink span::before{
	content: "○";
    font-size: 1.35em;
}
#style .styleLinks .styleDl .styleTxt .styleLink span::after{
	content: "+";
	font-size: 1em;
    font-weight: 900;
}
@media (max-width: 768px) {
	/*#style{
		margin: 0em auto;
		padding: 5em 0;
	}*/
	/*#style h3 img:first-child{
		margin-bottom: 0.5rem;
	}*/
	/*#style > h3{
		flex-direction: column;
		margin-bottom: 1rem;
	}*/
	#style .styleTop{
		margin-bottom: 2rem;
		flex-direction: column;
		gap: 1rem;
	}
	#style .styleTop::after{
		width: 45%;
		height: 10%;
		bottom: -4em;
		z-index: 1;
	}
	#style .styleList{
		width: 100%;
		justify-content: center;
		gap: 0.5rem!important;
		/*order: 1;*/
	}
	#style .styleList li{
		width: calc(50% - 1rem);
	}
	#style .styleList li a{
		padding: 2em 0;
	}	
	#style .styleList li a img.styleName{
		width: 40%;
	}
	#style .styletopTxt h3{
		text-align: center;
		margin-bottom: 0.5rem;
	}
	#style .styletopTxt p{
		text-align: center;
	}
	
	#style .styleLinks .styleDl{
		flex-direction: column;
		gap: 1rem;
		margin-bottom: 3rem;
	}
	#style .styleLinks .styleDl .styleImg,
	#style .styleLinks .styleDl .styleTxt{
		width: 100%;
	}
	#style .styleLinks .styleDl .styleImg{
		position: relative;
		height: 200px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#style .styleLinks .styleDl:nth-child(odd) .styleImg{
		order: 0;
	}	
	#style .styleLinks .styleDl .styleImg::after{
		content: "";
		position: absolute;
		width: 100%;
		height: 100%;
		display: block;
		left: 0;
		top: 0;
		background: #3e343112;
		mix-blend-mode: darken;
	}
	#style .styleLinks .styleDl .styleImg::before{
		content: "";
		position: absolute;
		width: 8%;
		height: 100%;
		display: block;
		left: 0;
		top: 0;
		z-index: 1;
	}
	#style .styleLinks .styleDl.ikoi .styleImg::before{
		background: #5a8779;
	}
	#style .styleLinks .styleDl.iyashi .styleImg::before{
		background: #8dafb9;
	}
	#style .styleLinks .styleDl.omomuki .styleImg::before{
		background: #deb964;
	}
	#style .styleLinks .styleDl.inishie .styleImg::before{
		background: #b58f85;
	}
	#style .styleLinks .styleDl .styleImg .styleName{
		position: absolute;
		left: 1%;
		bottom: 3%;
		width: 20%;
		z-index: 2;
	}
	#style .styleLinks .styleDl .styleTxt p{
		font-size: 14px;
		margin-top: 0.5rem;
	}
	/*#style .styleLinks .styleDl .styleTxt a.styleLink{
		font-size: 18px;
		height: 2em;
	}*/
	#style .styleLinks .styleDl .styleTxt .styleLink{
		font-size: 18px;
		height: 2em;
	}
}

/*------------------------------------------------------------
	jhr ジョイフル本田リフォーム
------------------------------------------------------------*/
#jhr{
	background: #f5f0eb;
	padding: 5rem 0;
}
#jhr > * {
    max-width: 960px;
    width: 90%;
    margin: auto;
    text-align: center;
}
#jhr .jhrLogo img {
    max-width: 200px;
    min-width: 150px;
    width: 20%;
}
#jhr .jhImg img {
    max-width: 450px;
	width: 80%;
    margin: 3rem 0;
}
#jhr .jhrWarp {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 2rem;
    justify-content: space-between;
}
#jhr .jhrTxt {
    width: calc(50% - 1rem);
    text-align: justify;
}
#jhr .jhrTxt > * {
    margin-bottom: 0.75rem;
}
#jhr .jhrTxt .jhrTxthd {
    display: flex;
    align-items: center;
}
#jhr .jhrTxt .jhrTxthd span {
    display: flex;
    font-size: 2rem;
    justify-content: center;
    align-items: center;
    width: 2.25em;
    height: 2.25em;
    border-radius: 50%;
    background: #402803;
    color: #FFFFFF;
    margin-right: 1rem;
}
#jhr .jhrTxt .jhrTxthd h5 {
    line-height: 1.25em;
    font-weight: 500;
}
#jhr a.jhrHp {
    display: flex;
	margin: 3rem auto 0;
	max-width: 860px;
    width: 100%;
	height: 3em;
    background: #402803;
    color: #FFFFFF;
    align-items: center;
    justify-content: center;
    border-radius: 5em;
    font-size: 22px;
    font-weight: 600;
    transition: 0.2s;
}
#jhr a.jhrHp:hover{    
    background: #C72B00;
}


@media all and (max-width:768px){
	#jhr .jhrWarp{
		flex-direction: column;
	}
	#jhr .jhrTxt{
		width: 100%;
	}
	#jhr .jhrTxt .jhrTxthd{
		flex-direction: column;
	}
	#jhr .jhrTxt .jhrTxthd span{
		font-size: 1.5rem;
		margin-right: 0;
        margin-bottom: 0.5rem;
	}
	#jhr .jhrTxt h5,
	#jhr .jhrTxt h4{
		text-align: center;
	}
	#jhr a.jhrHp{
		font-size: 20px;
		height: 2.5em;
	}
}
/*------------------------------------------------------------
	catalog カタログ
------------------------------------------------------------*/
#catalog {
    max-width: 100%;
    width: 100%;
}

/*------------------------------------------------------------
	footer フッター
------------------------------------------------------------*/
