@charset "utf-8";


/* お問い合わせバナーの「お問い合わせはこちら」「リフォームのご相談はこちら」ボタン -------------------------------------------------------------------- */
.contact_set a
{
	display: grid;
	grid-template-columns: auto 1em;
	justify-content: center;
	justify-items: center;
	align-items: center;
	gap: 1em;

	width: 70%;

	padding-top: 0.5em;
	padding-bottom: 0.5em;
}

.contact_set .contact a
{
	background-color: rgb(35 24 21);
	color: rgb(255 255 255);
}
.contact_set .contact a img
{
	filter: brightness(0) invert(1);
}

.contact_set .reform a
{
	background-color: rgb(220 212 188);
}


/* PCフッター -------------------------------------------------------------------- */
nav.fixed
{
	position: fixed;
	top: 20vh;
	right: 0;
	display: grid;
	gap: 3em;
}
nav.fixed a
{
	display: grid;
	grid-template-columns: 1fr;
	justify-content: center;
	justify-items: center;
	gap: 1em;

	width: auto;
	padding: 1em 0.5em;
}
nav.fixed a>*.c
{
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	text-orientation: upright;

}
nav.fixed a img
{
	width: 0.9em;
}

nav.fixed .contact a
{
}
nav.fixed .contact a img
{
	filter: brightness(0) invert(1);
}


footer {
	background-color: rgb(220 212 188);
}
/*
	margin-top: 100px;
*/
footer>.wrapM
{
	display: grid;
	grid-template-columns: repeat(3, auto);
	grid-template-rows: 1.875em auto;
	justify-content: space-between;
	align-items: start;
	align-content: start;
	gap: 1.5em 0;

	padding-bottom: 0;
}
footer .footer_ctntent01
{
	order: 1;
}
footer .footer_ctntent02
{
	order: 2;
	grid-row: span 2;
}
footer .footer_ctntent03
{
	order: 3;
	grid-row: span 2;
	align-self: center;
}
footer .footer_ctntent04
{
	order: 4;
}
footer .footer_ctntent05
{
	order: 6;
}
/*
footer>.wrapM>.footer_ctntent06
{
	order: 5;
	grid-column: span 3;
	justify-self: center;
}
*/

footer .instagram
{
	margin-top: 3em;
}
footer .instagram a
{
	display: grid;
	grid-template-columns: auto 1.2em;
	justify-content: start;
	align-items: center;
	gap: 1.5em;
}

/* <footer> logo */
.footer_ctntent01
{
	display: grid;
	gap: 1em;
}
.footer_ctntent01 .footer_logo
{
}
.footer_ctntent01 .footer_logo img
{
	width: auto;
	height: 1.875em;
}

/* <footer> menu */
.footer_ctntent02
{
	font-size: 0.9em;
	font-weight: bold;
}

/* <footer> emblem */
.footer_ctntent03
{
	width: 10.5em;
}

/* <footer> 基本情報 */
.footer_ctntent04
{
}
.footer_ctntent04 .title
{
	font-size: 1.1em;
}

/* <footer> 基本情報　[250916-1424]追加　本社、名古屋 */
.footer_ctntent04 div[class*="address_"]
{
	display: grid;
	grid-template-columns: repeat(2, auto);
	justify-content: start;
	justify-items: start;
	align-items: center;
	gap: 0;
}
.footer_ctntent04 div[class*="address_"]>*:not(.branc_title)
{
	margin-left: 0.75em;
}
.footer_ctntent04 div[class*="address_"] .branc_title
{
	grid-column: span 2;
}
.footer_ctntent04 div[class*="address_"] .zip
{
}
.footer_ctntent04 div[class*="address_"] .address
{
}
.footer_ctntent04 div[class*="address_"] .tel
{
	grid-column: span 2;
}

.copy {
	font-size: 0.75em;
	width: 100%;
	display: inline-block;
	margin-top: 20px;
	padding: 0.8em 0;
	border-top: 1px solid rgb(35 24 21);
	text-align: center;
}
/*
	border-top: 1px solid #CBCBCB;
	color: #626262;
*/
.copy span {
	margin-right: 20px;
}
.footer_bg {
	position: relative;
}
.footer_bg .wrapM {
	position: relative;
	min-width: 1000px;
}
.footer-sublink {
	font-size: 0.875em;

}
/*
	position: absolute;
	left: 0;
	bottom: calc(100% - (20px / 2));
*/

/* フッターお問い合わせ */
.fix_contact {
	background-color: rgb(255 255 255);
	padding-bottom: 40px;
}
/*
	background-color: #F0F0F0;
*/
.fix_contact>[class*="wrap"] {
	position: relative;
}
/*
.fix_contact .wrapSB {
	position: relative;
	top: -25px;
}
*/
.fix_contact .s {
	font-size: 4em;
	position: relative;

	height: 0;
	line-height: inherit;
}
/*
.fix_contact .s::before {
	content: "";
	display: block;
	width: 1px;
	height: 47px;
	background-color: #777;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 15px;
}
*/
.fix_contact h2 {
	position: relative;
	margin-bottom: 60px;
	letter-spacing: 0em;
}
.fix_contact .float_l,.fix_contact .float_r {
	width: 50%;
}
.fix_contact .txt {
	position: relative;
	top: calc(0em - (60px / 2));
}
.fix_contact .tel {
	text-align: center;
}
.fix_contact .tel span {
	font-size: 0.85em;
}
.fix_contact .tel div {
	font-size: 2.0em;
}
/*
	font-weight: bold;
	color:#777;
*/
.fix_contact .tel div a {
	display: grid;
	grid-template-columns: 0.85em auto;
	justify-content: center;
	align-items: center;
	gap: 0.25em;
}
/*
	color:#777;
*/

/* <fix_contact> nav */
.fix_contact nav
{
	position: relative;
	
	display: grid;
	grid-template-columns: repeat(2, 26em);
	justify-content: center;
	gap: 10em;

	margin-top: 3em;

	text-align: justify;
}
.fix_contact nav::before
{
	content: "";
	display: block;

	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;

	width: 1px;
	height: 100%;

	background-color: rgb(35 24 21);
}

.fix_contact nav>*
{
	display: grid;
	justify-items: center;
	gap: 2em;
}



/* スマホフッター-------------------------------------------------------------------- */
@media (max-width: 480px) {
	nav.fixed
	{
		display: none;
	}
	
	.fix_contact>[class*="wrap"]
	{
		margin-bottom: 0;
	}

	.fix_contact nav
	{
		margin-top: 6em;

		grid-template-columns: 1fr;
		justify-items: center;
		gap: 6em;
	}
	.fix_contact nav::before
	{
		content: none;
	}
	.fix_contact nav>*
	{
		position: relative;

		width: 85%;
	}
	.fix_contact nav>*::before
	{
		content: "";
		display: block;

		position: absolute;
		left: 50%;
		bottom: calc(100% + (6em / 2));
		translate: -50% -0%;

		width: 40%;
		height: 1px;
		background-color: rgb(35 24 21);
	}
	.fix_contact nav a
	{
		width: 100%;
	}

	.fix_contact .Btn03 {
		margin-top: 40px;
		width: auto;
	}
	footer {
	}
	/*
		margin-top: 30px;
	*/
	.footer_bg {
		background-color: initial;
		padding-top: initial;
		padding-top: 20px;
	}

	footer>.wrapM
	{
		display: grid;
		grid-template-columns: repeat(1, auto);
		grid-template-rows: initial;
		justify-content: initial;

		margin-bottom: 0;
	}
	footer>.wrapM>*
	{
		grid-column: initial;
		grid-row: initial;
	}
	footer .footer_ctntent01
	{
		order: 1;
	}
	footer .footer_ctntent02
	{
		order: 2;
	}
	footer .footer_ctntent03
	{
		order: 5;
		margin-top: 1em;
	}
	footer .footer_ctntent04
	{
		order: 4;
		margin-top: 1em;
	}
	footer .footer_ctntent05
	{
		order: 3;
	}

	/* <footer> menu */
	footer .footer_ctntent02
	{
	}
	footer .footer_ctntent02>ul
	{
		columns: 2;
	}
	footer .footer_ctntent02>ul>li
	{
		margin-bottom: 1em;
	}
	footer .footer_ctntent02 .instagram
	{
		column-span: all;
	}

	/* <footer> emblem */
	footer .footer_ctntent03
	{
		justify-self: center;
		width: 25%;
	}

	/* <footer> プライハジーポリシー */
	footer .footer_ctntent05
	{
		padding-top: calc(1.5em + 1em);

		border-top-width: 1px;
		border-top-style: solid;
		border-top-color: rgb(35 24 21);
	}


	footer .wrap {
		width: 90vw;
	}
	.footer_bg .float_l ul {
		margin-top: 30px;
	}
	.footer_bg .float_l li {
		display: inline;
		padding-right: 1em;
		font-size: 0.8em;
	}
	footer .around {
		display: none !important;
	}
	.Fcatch {
		font-size: 1em;
	}
	.Flogo {
		margin-top: 5px;
		margin-bottom: 0px;
		width: 92px;
	}
	.flogo img {
		height: auto;
		width: 70%;
		max-width: 220px;
	}
	footer .ad {
		margin: auto;
		white-space: nowrap;
	}
	footer .Fad {
		margin-top: 20px;
	}
	.contact_f ul li {
		margin-left: auto;
		margin-right: auto;
	}
	.copy {
		margin-top: 20px;
	}
	.FmenuSP {
		position: relative;
		bottom: 20px;
	}
	.FmenuSP ul {
		display: flow-root;
	}
	.FmenuSP ul li {
		float: left;
	}
	.FmenuSP ul li a {
		padding-left: 1em;
		padding-right: 1em;
	}
	.FmenuSP ul li:first-child a {
		padding-left: 0em;
	}
	.FmenuSP ul li:nth-child(2) a {
		border-left: 1px solid #DDDDDD;
		border-right: 1px solid #DDDDDD;
	}
	.sns .float_l {
		margin-right: 20px;
		width: 36px !important;
		float: left !important;
	}
	.sns .float_r {
		margin-right: 20px;
		width: 145px !important;
		float: right !important;
	}
	.footer_bg .float_r div {
		white-space: nowrap;
	}
	footer .Fad {
		font-size: 1em;
	}
	.footer_bg .wrapM {
		min-width: initial;
		width: 90vw;
	}
	.copy {
		text-align: center;

		margin-top: 0;
		border-top-width: 0;
	}

}