/*
Theme Name: 5-STAR 2026
Author: foxdesign
Description: 5-STAR（ファイブスター）専用テーマ
Version: 3.0
*/

:where(*, ::before, ::after) {
	box-sizing: border-box;
}

* {
	margin: 0;
}

:where(img, video) {
	display: block;
	max-width: 100%;
	height: auto;
}

:where(p, h1, h2, h3, h4, h5, h6) {
	overflow-wrap: break-word;
}

:where(input, button, textarea, select) {
	font: inherit;
	color: inherit;
	text-transform: none;
}

:where(a) {
	display: inline-block;
	vertical-align: top;
}

.header-list-flex a * {
	box-sizing: border-box;
	margin: 0;
	padding: 0
}

html {
	margin: 0;
	padding: 0;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	/* font-size: max(16px, min(4.2667vw, 16px));
	font-size: clamp(16px, 4.2667vw, 16px) */
}

@media screen and (max-width:768px) {
	/* html {
		font-size: 4.2667vw
	} */

	body {
		font-size: 1em;
		line-height: 1.75
	}
}

body {
	position: relative;
	margin: 0;
	padding: 0;
	height: 100%;
	font-family: sans-serif;
	line-height: 1;
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
}

body.open {
	position: fixed;
	width: 100%;
	height: 100%
}

@media (min-width:769px) {
	body {
		margin-top: 0
	}

	body.open {
		position: relative
	}
}

h1,
h2,
h3,
h4,
h5 {
	padding: 0;
	margin: 0;
	font-size: 1em;
	font-weight: 400
}

ul {
	margin: 0;
	padding: 0
}

img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: top
}

a {
	color: #000;
	text-decoration: none
}

header a,
footer a {
	text-decoration: none
}


/* ページトップ（TOPフッター流用） */
#page-top.r-footer__pagetop {
	position: fixed;
	right: .5em;
	bottom: .5em;
	z-index: 2;
	margin: 0;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.3s, visibility 0.3s;
}

@media screen and (max-width: 798px) {
	#page-top.r-footer__pagetop {
		bottom: 4em;
	}
}



#page-top.r-footer__pagetop.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

#page-top.r-footer__pagetop img {
	display: block;
	width: 80px;
	height: 80px;
	max-width: none;
	margin: 0;
	object-fit: contain;
}





.p-pagetop {
	position: fixed;
	z-index: 100;
	right: 2%;
	bottom: 2%;
	width: 14%;
	background: #969587;
	border-radius: 50%;
	opacity: 0;
	transition: opacity 1s, background 1s
}

.home .p-pagetop {
	bottom: 22vw;
	transition: opacity 1s, background 1s, bottom 1s
}

.home .p-pagetop.fit {
	bottom: 2%
}

.p-pagetop button {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	appearance: none
}

.p-pagetop.show {
	opacity: 1
}

@media screen and (min-width:769px) {
	.p-pagetop {
		bottom: 1.25em;
		right: 1.25em;
		width: 4.375em
	}

	.home .p-pagetop {
		bottom: 5em
	}

	.home .p-pagetop.fit {
		bottom: 1.25em
	}

	.p-pagetop:hover {
		background: #605e46
	}
}

.l-wrap {
	width: min(90%, 1200px);
	margin: 0 auto
}

.lower .l-wrap {
	width: min(90%, 1400px);
}

@media screen and (min-width:769px) {
	.l-wrap {
		width: min(90%, 1200px);
		margin: 0 auto
	}
}

.lower.inquiry .l-wrap {
	font-family: "Noto Serif JP", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif
}

.lower.form .l-wrap {
	font-family: "Noto Serif JP", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif
}

.u-font__m {
	font-family: "Noto Serif JP", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif
}

.u-font__g {
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif
}

.bg__gray01 {
	background-color: #cecbb7
}

.loan01 .bg__gray01,
.loan02 .bg__gray01,
.lease .bg__gray01 {
	background-color: #F2F1F0
}

.bg__gray02 {
	background-color: #F2F1F0
}

.position-rel {
	position: relative
}

.position-abs {
	position: absolute
}

.title-block {
	max-width: 1170px;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	font-weight: 700;
	font-family: "Noto Serif JP", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	letter-spacing: .1em
}

.find-box.warpper .title-block.position-rel:before {
	content: '';
	display: block;
	padding: 24.5% 0 0;
	margin: -24.5% 0 0
}

.shop-box.warpper .title-block.position-rel:before {
	content: '';
	display: block;
	padding: 24.5% 0 0;
	margin: -24.5% 0 0
}

.title-block .position-abs {
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
	font-size: 1.5625em;
	letter-spacing: .1em
}

.title-block .position-abs.title07 {
	top: 9.7vw;
	letter-spacing: .1em
}

@media (max-width:768px) {
	.sp-none {
		display: none
	}

	.pc-none {
		display: block
	}
}

@media (min-width:769px) {
	.sp-none {
		display: block
	}

	.pc-none {
		display: none
	}

	.warpper {
		margin: auto
	}

	.lower.privacy .l-wrap,
	.lower.solicitation .l-wrap {
		width: min(100%, 1112px);
		margin-inline: auto;
	}

	.title-block .position-abs {
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		font-size: 2.2325em
	}

	.title-block .position-abs.title07 {
		top: 45%;
		letter-spacing: 0;
		font-size: 2.25em
	}

	.find-box.warpper .title-block.position-rel:before,
	.shop-box.warpper .title-block.position-rel:before {
		padding: 0;
		margin: 0
	}
}

/*
.header-box {
    position: fixed;
    width: 100%;
    z-index: 101;
    top: 0
}
*/

.lower .header-box {
	position: absolute;
	top: 0;
	width: 100%;
}

.header-list-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin: auto;
	padding: 0;
}
.logo-5star {
	display: grid;
	place-content: center;
	position: relative;
	z-index: 22;
	width: min(36%, 128px);
}

.logo-5star a {
	display: grid;
	place-content: center;
	padding: .3em 1em;
}

/* @media screen and (min-width:769px) {
	.logo-5star {
		width: 174px;
	}

	.logo-5star a {
		padding: 1.25em 2em 1em;
	}
} */



.home .open .logo-5star span {
	display: block;
	position: relative;
}

.home .open .logo-5star span::before {
	content: "";
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	margin: auto;
	background: url(assets/img/common/logo-5ster.png) center / contain no-repeat;
}

.home .open .logo-5star img {
	opacity: 0;
}

@media (any-hover: hover) {

	.logo-5star a span::before,
	.logo-5star a img {
		transition: transform .25s;
	}

	.logo-5star a:hover span::before,
	.logo-5star a:hover img {
		transform: scale(1.1);
	}
}


.r-header__actions {
	display: none;
}

@media screen and (min-width: 799px) {
	.r-header__actions {
		position: relative;
		z-index: 1;
		display: flex;
		align-items: center;
		gap: 2em;
		margin-left: auto;
	}

	.r-header__actions a:first-child {
		gap: .1em;
		padding-inline: 2.5em;
	}
}



/* header CTA */
.r-header__btn {
	display: grid;
	grid-template-columns: 2.15em 1fr;
	align-items: center;
	justify-content: center;
	gap: .8em;
	padding: .3em 1.8em;
	font-size: .9375em;
	font-weight: 700;
	text-align: center;
	border-radius: var(--r-radius-btn);
	white-space: nowrap;
	color: var(--color-brown-light);
	background-color: var(--r-color-white);
	transition: color 0.2s ease, background-color 0.2s ease;
	border: 1px solid var(--color-brown-light);
}

.r-header__btn-icon-img {
	display: inline-block;
	width: 100%;
}

.r-header__btn:hover,
.r-header__btn:focus-visible {
	color: var(--r-color-white);
	background-color: var(--color-brown-light);
}


@media (prefers-reduced-motion: reduce) {}


.header-ul {
	list-style: none;
	margin: 0;
	padding: 0
}

.header-app-sp {
	color: #fff;
	margin: 0 7% 0 1%;
	padding: 3.4% 0 3%;
	font-size: 3.86666vw;
	line-height: 1.7;
	letter-spacing: .07em
}

.header-app-sp::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: -3.7%;
	bottom: 0;
	width: 1.6vw;
	height: 2.934vw;
	margin: auto;
	background: url(assets/img/common/header-sp-app-arrow.png) no-repeat top left;
	background-size: contain
}

.header-app-flex-sp {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: auto
}

.header-app-flex-sp span {
	background-color: #a92021;
	border: none
}

.header-app-flex-sp span:before {
	display: none
}

.header-app-bg-sp {
	max-width: 1174px;
	margin: auto;
	background-color: #a92021;
	box-shadow: 0 1px 4px #000
}

.header-meer-img-sp {
	width: 34%;
	margin: auto;
	text-align: center
}

.header-meer-img-sp img {
	width: 74.96%;
	margin: 0 auto;
	padding: .3em 0;
	background: #fff;
	border-radius: .2em;
}


/* toggle */
.sp-menu-box {
	display: grid;
	place-content: center;
	place-items: center;
	position: relative;
	z-index: 22;
	width: min(18.888%, 68px);
	height: 100%;
	margin-left: 1em;
	padding: .3em;
	font-size: min(4.1667vw, .93em);
	text-align: center;
	letter-spacing: .1em;
	background-color: #d71718;
	color: var(--r-color-white);
	border: none;
	outline: none;
	cursor: pointer;
	appearance: none;
	border-radius: 0;
}

.menu-bars {
	display: grid;
	position: relative;
	width: 72%;
	height: .96em;
	margin: .3em auto .25em;
}

@media screen and (min-width:799px) {
	.sp-menu-box {
		width: min(12%, 108px);
		margin-left: 2.2em;
		padding: 1.2em 1.2em .7em;
	}

	.menu-bars {
		width: 100%;
		height: 1.5em;
		margin: .12em auto .25em;
	}
}



.menu-label {
	font-size: 1em;
	line-height: 1;
	margin: 0 auto .08em;
}

.menu-bar {
	display: flex;
	align-self: flex-start;
	flex-shrink: 0;
	position: absolute;
	width: 100%;
	height: 2px;
	margin: auto;
	background-color: var(--r-color-white);
	border-radius: 3px;
	transition: transform .2s ease, opacity .2s ease;
}

.menu-bar:nth-child(1) {
	top: 0;
	left: 0;
}

.menu-bar:nth-child(2) {
	top: calc(50% - 1px);
	left: 0;
	width: 80%;
}

.menu-bar:nth-child(3) {
	bottom: 0;
	left: 0;
	width: 56%;
}

.open .menu-bar:nth-child(1) {
	top: 50%;
	transform: translate(0, -50%) rotate(205deg);
}

.open .menu-bar:nth-child(2) {
	opacity: 0;
	transform: translateX(60%);
}

.open .menu-bar:nth-child(3) {
	top: 50%;
	bottom: auto;
	width: 100%;
	transform: translate(0, -50%) rotate(-205deg);
}





.r-header .nav {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 20;
	width: 100%;
	height: 100%;
	height: 100dvh;
	overflow-y: auto;
	background-color: #fff;
	transform: translateX(100%);
	opacity: 0;
	transition: transform 0.25s ease, opacity 0.25s ease;
	visibility: hidden;
	pointer-events: none;
}

.r-header .nav.open {
	top: 0;
	transform: translateX(0);
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	background-color: #fff;
}

.open .header-list-flex {
	/* background-color: #fff; */
	/* background-color: transparent; */
}

/* @media (min-width:769px) {

	.header-list-flex nav ul a {
		width: 120%
	}

	.nav {
		display: block
	}

	.header-ul {
		list-style: none;
		display: flex;
		align-items: center;
		margin: 0;
		font-size: 1.0625em;
		letter-spacing: .025em
	}

	.header-ul li {
		position: relative;
		padding-left: .6875em;
		letter-spacing: .025em
	}

	.header-ul li a:before {
		content: '';
		display: block;
		position: absolute;
		top: .15em;
		left: 1em;
		width: .4117647058823529em;
		height: .6470588235294118em;
		margin: auto;
		background: url(assets/img/common/header-pc-arrow.png) no-repeat left top;
		background-size: contain;
		transition: .5s
	}

	.header-ul li a:hover:before {
		left: 1.3em;
		background: url(assets/img/common/header-pc-arrow02.png) no-repeat left top;
		background-size: contain
	}


}
 */

.links-box {
	font-family: "Noto Serif JP", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	background-color: #cdcbb7
}

.links-box .title-block {
	padding: 7.6% 0 8.5%
}

.links-box .lead-sentence {
	margin-bottom: 8.6%;
	font-size: 3.733334vw;
	text-align: center;
	letter-spacing: .07em
}

.sns-list {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 94%;
	margin: 0 auto;
	padding: 0 0 2.2%
}

.sns-list li {
	width: 13.8%;
	margin: 0 9.7% 9.7%
}

.sns-list a {
	display: block;
	background: #404040;
	border-radius: 50%
}

.js-fadeIn.is-animated {
	opacity: 0;
	animation: fadein 1.5s ease-out forwards
}

@keyframes fadein {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

.js-fadeIn.p-fade__up {
	opacity: 0;
}

.js-fadeIn.is-animated.p-fade__up {
	opacity: 0;
	animation: fadeUp 1.5s ease-out forwards
}

@keyframes fadeUp {
	0% {
		opacity: 0;
		transform: translateY(50px)
	}

	100% {
		opacity: 1;
		transform: translateY(0)
	}
}

.js-fadeIn.is-animated.p-fade__left {
	opacity: 0;
	animation: fadeLeft 1.5s ease-out forwards
}

@keyframes fadeLeft {
	0% {
		opacity: 0;
		transform: translateX(-100px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.js-fadeIn.is-animated.p-fade__sidein {
	animation: fadesidein 1s ease-out forwards
}

@keyframes fadesidein {
	0% {
		opacity: 0;
		transform: translateX(-100px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

.breadcrumbs {
	list-style: none;
	margin: 2em auto;
	padding: 1em;
	box-sizing: border-box;
	line-height: 1.6
}

.breadcrumbs>li {
	position: relative;
	display: inline-block
}

.breadcrumbs>li+li {
	padding-left: 1.2em
}

.breadcrumbs>li+li:before {
	content: "";
	position: absolute;
	top: .5em;
	left: 0;
	width: .4em;
	height: .4em;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	transform: rotate(45deg)
}

.breadcrumbs a {
	display: block
}

.error404 .l-wrap {
	padding: 3em 1em;
	box-sizing: border-box;
	text-align: center;
	line-height: 1.6
}

.error404 .btn_back01 {
	margin: 5em auto
}

.error404 .btn_back01 a {
	position: relative;
	display: block;
	width: 100%;
	margin: 11.5% auto;
	padding: 1.5em 2.5em 1.5em 1.5em;
	box-sizing: border-box;
	font-size: 1em;
	text-align: center;
	color: #000;
	background: #ededed;
	border: 1px solid #000
}

.error404 .btn_back01 a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 1em;
	width: .5em;
	height: .5em;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg) translateY(-50%);
	transform: rotate(45deg) translateY(-50%)
}

@media screen and (min-width:769px) {
	.error404 .btn_back01 a {
		width: fit-content;
		margin: 2em auto;
		transition: .5s
	}

	.error404 .btn_back01 a:hover {
		background: #000;
		color: #fff
	}

	.error404 .btn_back01 a:after {
		transition: .5s
	}

	.error404 .btn_back01 a:hover:after {
		border-top: 1px solid #fff;
		border-right: 1px solid #fff
	}
}


.loader {
	display: block;
	position: fixed;
	top: 0;
	z-index: 101;
	width: 100%;
	height: 100%;
	background-color: #000;
	overflow: hidden;
	transition: opacity 1s, transform 1s
}

.loader-box {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	max-height: 36vw
}

.loader-img {
	width: 39%;
	margin: auto
}

.loader-text {
	font-size: 6vw;
	font-family: "Noto Serif JP", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	text-align: center;
	color: #fff;
	animation: tenmetu ease 3s infinite
}

.hidden {
	overflow: hidden
}

.spinner {
	display: block;
	width: 1.5em;
	height: 1.5em;
	margin: 1em auto;
	border: .125em #ddd solid;
	border-top: .125em #e60013 solid;
	border-radius: 50%;
	animation: sp-anime 1.0s infinite linear
}

@media screen and (min-width:769px) {
	.loader-box {
		max-height: 157px
	}

	.loader-img {
		width: 11.188em;
		height: 3.375em
	}

	.loader-text {
		font-size: 2em
	}

	.spinner {
		width: 32px;
		height: 32px;
		margin: 1em auto;
		border-width: 4px
	}
}

@keyframes tenmetu {
	0% {
		opacity: 0
	}

	80% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}

@keyframes sp-anime {
	100% {
		transform: rotate(360deg)
	}
}


/* --------------------------------------------------------------------------
   Footer（TOP専用）
   -------------------------------------------------------------------------- */
.r-footer {
	display: flow-root;
	padding-bottom: 5em;
	background-color: #6b3906;
	color: #6b3906;
}

@media screen and (min-width: 799px) {
	.r-footer {
		padding-bottom: 0;
		background-color: #d5be9b;
	}
}

.r-footer__content {
	display: block;
}

.r-footer__sitemap-inner {
	width: 100%;
	margin-inline: auto;
}



.r-footer__columns,
.r-footer__sub {
	list-style: none;
	display: grid;
	margin: 0;
	padding: 0;
	font-size: .94em;
	line-height: 1.4;
	background-color: #d5be9b;
}

@media screen and (min-width: 799px) {

	.r-footer__columns,
	.r-footer__sub {
		font-size: 1.05em;
		line-height: 1.25;
		letter-spacing: .05em;
	}

	.r-footer__columns {
		margin: .2em 0 0 .9em;
	}

	.r-footer__columns li {
		margin-bottom: .6em;
	}

	.r-footer__sub {
		line-height: 1.65;
	}

	.footer__kirara {
		margin-bottom: .5em;
	}
}



.r-footer__sub {
	display: block;
}





.r-footer__heading {
	display: flex;
	width: 100%;
	margin: 0;
	padding: .52em 3.7em;
	font-weight: bold;
	color: #fff;
	background-color: #6a3906;
	border: none;
	border-bottom: .5px solid #fff;
}

.r-footer__columns li:last-child .r-footer__heading,
.r-footer__columns li:has(ul) .r-footer__heading {
	border-bottom: none;
}

@media screen and (min-width: 799px) {
	.r-footer__heading {
		padding: 0 .5em;
		color: #6a3906;
		background-color: transparent;
		border: 1px solid currentColor;
	}

	.r-footer__columns li:last-child .r-footer__heading,
	.r-footer__columns li:has(ul) .r-footer__heading {
		border-bottom: 1px solid currentColor;
	}
}

.r-footer__heading a {
	display: block;
	color: inherit;
	font-weight: 600;
	text-decoration: none;
}

.r-footer__heading a:hover {
	opacity: 0.8;
}

.r-footer__links {
	list-style: none;
	margin: 0;
	padding: 0;
}

.r-footer__links li {
	display: grid;
	width: 100%;
	margin: 0;
}

.r-footer__links li:not(:first-child) {
	border-top: .5px solid #9f884d;
}


.r-footer__links a {
	display: grid;
	grid-template-columns: 1em 1fr;
	/* align-items: center; */
	justify-content: center;
	padding: .6em 3.7em;
	color: #6a3906;
	text-decoration: none;
}

.r-footer__links li a::before {
	content: '・';
}



.r-footer__links a:hover {
	opacity: .8;
}

@media screen and (min-width: 799px) {
	.r-footer__sitemap-inner {
		width: min(calc(100% - 6em), 1020px);
	}

	.r-footer__sitemap-inner {
		display: grid;
		grid-template-columns: 1fr 12em;
		gap: 1.4em;
		padding-block: 2.3em 2em;
	}

	.r-footer__columns {
		display: block;
		columns: 2;
		column-gap: 1.5em;
	}

	.r-footer__columns li {
		break-inside: avoid;
	}

	.r-footer__sub .r-footer__heading {
		padding: 0;
		border: none;
	}

	.r-footer__links {
		margin: 0 0 .8em .5em;
		line-height: 1.1;

	}

	.r-footer__links a {
		padding: .2em;
	}

	.r-footer__links li:not(:first-child) {
		border-top: none;
	}
}

@media screen and (min-width: 960px) {
	.r-footer__columns {
		columns: 3;
	}
}


.r-footer__plain {
	margin: 0;
	padding: 0;
	list-style: none;
}

.r-footer__plain li {
	margin: 0 0 8px;
	font-size: 16.5px;
	font-weight: 600;
	line-height: 1.45;
}

.r-footer__plain a {
	color: #6b3906;
	font-weight: 600;
	text-decoration: none;
}

.r-footer__plain a:hover {
	opacity: 0.8;
}

.r-footer__panel--group {
	padding: 1.5em .5em 0;
}

.r-footer__panel--app {
	padding: 1.5em 1em 1.8em;
}

@media screen and (min-width: 799px) {

	.r-footer__panel--group,
	.r-footer__panel--app {
		padding-block: 0 .5em;
	}

}




@media screen and (max-width: 798px) {
	.r-footer__sitemap {
		padding: 0;
	}

	.r-footer__sitemap-inner.r-container {
		max-width: none;
		padding-left: 0;
		padding-right: 0;
	}

	.r-footer__heading a:hover {
		opacity: 0.85;
	}

}

.r-footer__brand {
	display: flow-root;
	/* background-color: #d5be9c; */
	padding: 0;
	/* color: #6a3906; */
}

@media screen and (min-width: 799px) {
	.r-footer__brand {
		color: #fff;
		background-color: #6a3906;
	}
}

.r-footer__panel {
	text-align: center;
}

.r-footer__panel-title {
	margin: 0 auto 1em;
	font-size: 1em;
	line-height: 1.5;
	text-align: center;
}

@media screen and (min-width: 799px) {
	.r-footer__panel-title {
		letter-spacing: .07em;
	}
}

.r-footer__bnr {
	background-color: #d5be9b;
}

@media screen and (min-width: 799px) {
	.r-footer__bnr {
		display: flex;
		justify-content: center;
		background-color: transparent;
	}

}


.r-footer__logos {
	list-style: none;
	display: grid;
	grid-template-columns: 1fr 1.465fr 1fr;
	gap: 1em;
	width: min(90%, 356px);
	margin: 0 auto;
	padding: 0;
}

.r-footer__logos img {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid #fff;
}


.r-footer__logo-item {
	display: grid;
	justify-content: center;
	font-size: .75em;
	line-height: 1.2;
	/* white-space: nowrap; */
	/* color: #6a3906; */
}

.r-footer__logo-item a {
	display: grid;
	justify-content: center;
	color: #6a3906;
	text-align: center;
}



.r-footer__logo-box {
	display: flex;
	align-items: center;
	justify-content: center;
	width: auto;
	height: 5.5em;
	margin: 0 auto .7em;
	padding: 0;
}


.r-footer .r-footer__logo-box img {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	margin: 0;
	object-fit: contain;
}

.r-footer__app {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.r-footer__panel--app .r-footer__app {
	display: grid;
	width: fit-content;
	margin: -.4em auto 0em;
}

.r-footer__logo {
	display: grid;
	grid-template-columns: 4.4em 1fr;
	align-items: center;
	gap: .5em;
	line-height: 1.4;
	text-align: left;
	color: #6a3906;
}

@media screen and (min-width: 799px) {
	.r-footer__logos {
		grid-template-columns: repeat(3, 1fr);
		width: 100%;
	}

	.r-footer__logos {
		font-size: 1.2em;
		letter-spacing: .04em;
	}

	.r-footer__logo-item a {
		font-size: 1em;
		color: #fff;
	}

	.r-footer__logo-box {
		margin-bottom: .4em;
	}

	.r-footer__panel.r-footer__panel--group {
		width: min(98%, 480px);
		margin: 0;
		padding-inline: 0;
	}

	.r-footer__logo {
		grid-template-columns: 1fr;
		gap: .25em;
		text-align: center;
		color: #fff;
	}

	.r-footer__panel--app .r-footer__app {
		margin-top: 0;
	}

	.r-footer__panel--app img {
		width: min(57%, 134px);
		margin-inline: auto;
		border: 1px solid #fff;

	}


}


.r-footer__panel--sns {
	display: flow-root;
	width: min( 100% - 2em , 500px );
	margin-inline: auto;
	padding: 1.2em 0 0;
	background-color: #6b3906;
}

@media screen and (min-width: 799px) {
	.r-footer__panel--sns {
		padding: 0;
	}
}



.r-footer__panel--sns .r-footer__panel-title {
	color: #fff;
}

.r-footer__sns {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 1.8em 4.6em;
	width: min(100%,18em);
	margin: 1.5em auto .5em;
	padding: 0;
}
@media screen and (min-width: 799px) {
	.r-footer__sns {
		width: min(100%,20em);
	}
}
.r-footer__sns li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	width: 2.7em;
}

.r-footer__sns a {
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity .3s;
}

.r-footer__sns a:hover {
	opacity: 0.85;
}

@media screen and (min-width: 799px) {
	.r-footer__brand-inner {
		display: grid;
		width: min(90%, 1134px);
		margin: 1.6em auto;
	}

	.r-footer__panels {
		display: grid;
		grid-template-columns: 1fr;
		gap: 1em;
	}

	.r-footer__sns {
		gap: 2.8em;
		margin: 1.5em auto;
	}

	.r-footer__sns li {
		width: 1.75em;
	}
}

@media screen and (min-width: 1130px) {
	.r-footer__panels {
		grid-template-columns: 1fr 23em;
	}
}



.r-footer__copyright {
	display: flow-root;
	margin: 0 auto;
	padding-block: 1em;
	font-size: .98em;
	font-weight: normal;
	line-height: 1.5;
	letter-spacing: .06em;
	text-align: center;
	background-color: #6b3906;
	color: #fff;
}

.r-footer__copyright small {
	font-size: inherit;
}

@media screen and (min-width: 799px) {
	.r-footer__copyright {
		padding-block: 1.1em;
		font-size: .9em;
		letter-spacing: normal;
	}
}








/* PAGE TOP（MV下から追従表示） */
.r-top #page-top.r-footer__pagetop {
	position: fixed;
	right: 15px;
	bottom: 15px;
	z-index: 200;
	margin: 0;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.3s, visibility 0.3s;
}

.r-top #page-top.r-footer__pagetop.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.r-footer__pagetop a {
	display: block;
	line-height: 0;
}

.r-top #page-top.r-footer__pagetop a:hover img {
	content: none;
}

.r-top #page-top.r-footer__pagetop img {
	display: block;
	width: 80px;
	height: 80px;
	max-width: none;
	margin: 0;
	object-fit: contain;
}





@media screen and (max-width: 798px) {
	.r-top #page-top.r-footer__pagetop {
		right: 10px;
		bottom: 80px;
	}
}


@media screen and (max-width: 767px) {}

@media screen and (max-width: 798px) {}


/* SP固定CTA */


.r-sp-cta {
	display: grid;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 5;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	width: 100%;
	/* box-shadow: 0 -4px 16px rgb(0 0 0 / .12); */
}

@media screen and (min-width:769px) {
	.r-sp-cta {
		display: none;
	}
}


.r-sp-cta__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .5em;
	padding: .5em;
	color: var(--r-color-white);
	font-size: 1rem;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
}

.r-sp-cta__btn-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

.r-sp-cta__btn-icon {
	display: block;
	width: auto;
	height: 2em;
	object-fit: contain;
	filter: brightness(0) invert(1);
}


.r-sp-cta__btn-label {
	color: var(--r-color-white);
	text-align: left;
}

.r-sp-cta__btn--loan {
	background-color: #ac865e;
}

.r-sp-cta__btn--contact {
	background-color: #837663;
}






/* --------------------------------------------------------------------------
   Header Menu Panel (TOP)
   -------------------------------------------------------------------------- */
.r-header__panel {
	padding: 0 0 40px;
}

@media screen and (min-width: 799px) {
	.r-header__panel {
		padding: 80px 40px 48px;
	}
}

.r-header__panel-inner {
	position: relative;
	align-items: stretch;
	padding: 2.95em 0 0;
}

@media screen and (min-width: 799px) {
	.r-header__panel-inner {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		width: min(100%, 836px);
		margin: 0 auto;
		padding: 0;
		background-color: transparent;
		border: none;
		box-sizing: border-box;
	}
}

.r-header__panel-logo {
	align-self: flex-start;
	margin: 0 0 28px;
}

.r-header__panel-logo img {
	display: block;
	width: 120px;
	height: auto;
}

.r-header__panel-grid {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	max-width: none;
	margin: 0;
	gap: 0;
	--r-panel-text-col: min(17.5em, calc(100% - 32px));
}

.r-header__panel-col {
	list-style: none;
	width: 100%;
	margin: 0;
}
.r-header__panel-col--plain {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	min-height: 100%;
}


.r-header__panel-heading {
	display: grid;
	align-items: center;
	margin: 0;
	padding: .25em;
	font-size: 1em;
	color: #fff;
	background-color: var(--color-brown-light);
	text-align: left;
	width: 100%;
	border: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 0;
}
.r-header__panel-heading a {
	display: block;
	color: #fff;
	width: 100%;
	padding: .5em;
}
.menu__item {
	display: grid;
	width: min(100%,16.5em);
	margin-inline: auto;
}



.r-header__panel-sub {
	list-style: none;
	margin: 0;
	padding: 0;
}

.r-header__panel-sub li {
	margin: 0;
	font-size: 1em;
	line-height: 1.5;
}
.r-header__panel-sub li:not(:last-child) {
	border-bottom: 1px solid #9f884d;

}

.r-header__panel-sub a {
	display: grid;
	padding: .25em;
	color: var(--color-brown-light);
}

.r-header__panel-sub a span {
	display: grid;
	grid-template-columns: 1em 1fr;
}
.r-header__panel-sub span::before {
	content: "・";
}

.r-header__panel-sub a:hover {
	opacity: 0.8;
}

.r-header__panel-plain {
	margin: 0;
	padding: 0;
	list-style: none;
}

.r-header__panel-plain li {
	margin: 0;
}

.r-header__panel-plain a {
	display: block;
	color: #fff;
	text-align: left;
	text-decoration: none;
}
.r-header__panel-actions {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	gap: 1.5em;
	width: calc(100% - 2em);
	margin: 2.2em auto;
}

.r-header__panel-actions .r-header__btn {
	display: flex;
	font-size: 1.2em;
	color: #897b69;
	background-color: #d3cbc2;
	border: none;
	border-radius: .4em;
}
.r-header__panel-actions .r-header__btn:last-child {
	color: #d3cbc2;
	background-color: #837563;
}

.r-header__panel-actions .r-header__btn-icon-img {
	width: 2em;
}


@media screen and (min-width: 441px) {
	.r-header__panel-grid {
		display: grid;
		gap: 1em 1.5em;
		padding: 1em;
	}
	.r-header__panel-col {
		columns: 2;
		column-gap: 1.5em;
	}
	.r-header__panel-col>* {
		break-inside: avoid;
	}
	.r-header__panel-heading {
		margin: 0 0 .5em;
		font-weight: 600;
		line-height: 1.35;
		color: var(--color-brown-light);
		background-color: #fff;
		border: 1px solid #6b3906;
	}
	.r-header__panel-col li:has(.r-header__panel-sub) .r-header__panel-heading {
		margin: 0;
	}
	.r-header__panel-plain .r-header__panel-heading {
		margin: 0 0 .3em;
		border: none;
	}
	.r-header__panel-heading a {
		padding: 0 .5em;
		color: #6b3906;
	}
	.r-header__panel-sub li:not(:last-child) {
		border-bottom: none;
	}

	.r-header__panel-plain a {
		color: #837663;
	}
	.r-header__panel-plain {
		display: grid;
		grid-template-columns: repeat(2,1fr);
		gap: 0 1.5em;
		padding-top: 1em;
		border-top: 1px solid #d3cbc2;
	}
	.r-header__panel-actions {
		width: 100%;
	}
	.r-header__panel-actions .r-header__btn {
		font-size: 1em;
	}	

}

@media screen and (min-width: 799px) {
	.r-header__panel-grid {
		grid-template-columns: 1fr 14em;
		padding: 0;
	}
	.r-header__panel-plain {
		display: grid;
		grid-template-columns: 1fr;
		padding-top: 0;
		border-top: none;
	}
	.r-header__panel-actions {
		display: flex;
		flex-direction: column;
	}
	.r-header__panel-actions .r-header__btn {
		padding-inline: .2em;
		border-radius: 4em;

	}
}
@media (hover: hover) {
	.r-header__panel-heading a:hover {
		opacity: 0.8;
	}
	.r-header__panel-plain a:hover {
		opacity: 0.8;
	}
	.r-header__panel a:hover::before,
	.r-header__panel a:hover::after {
		border-color: transparent !important;
	}
	.r-header__panel-actions .r-header__btn:hover {
		opacity: .7;
	}
}




/* CTA PC-only */
.r-side-inquiry {
	grid-template-columns: 1fr;
	justify-items: center;
	position: fixed;
	top: 50%;
	right: 0;
	z-index: 2;
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: .5em;
	padding: .6em .4em;
	font-size: 1.5em;
	font-weight: 700;
	line-height: 1.65;
	letter-spacing: .05em;
	color: #fff;
	text-decoration: none;
	text-align: center;
	background-color: #231815;
	border: 1px solid #fff;
	border-right: none;
	transform: translate3d(100%, -50%, 0);
	opacity: 0;
	transition: transform 0.3s ease, opacity 0.3s ease;
	pointer-events: none;
}

.r-side-inquiry span {
	display: grid;
	justify-content: center;
	writing-mode: vertical-rl;
}

.r-side-inquiry.is-visible {
	display: grid;
	gap: .2em;
	justify-content: center;
	transform: translate3d(0, -50%, 0);
	opacity: 1;
	pointer-events: auto;
}



@media screen and (min-width: 799px) {
	.r-side-inquiry {
		display: flex;
	}
}

.r-footer {
	overflow: hidden;
}


/* style */
.c-br {
	display: inline-block;
}

.c-notes {
	list-style: none;
}
.c-notes li {
	display: grid;
	grid-template-columns: 1em 1fr;
}


/* menu
---------------------------------------- */
body.open {
	position: fixed;
	width: 100%;
	left: 0;
	overflow: hidden;
}