/*-----------------setting_css---------------------*/
/*-----------------/setting_css/---------------------*/
/*-----------------reset_css---------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

body {
	line-height: 1;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

a,
img {
	color: #000;
	border-width: 0px;
	border-style: none;
	background: transparent;
}

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

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

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

body {
	width: 100%;
	margin: 0 auto;
	overflow-x: hidden;
}

img {
	width: 100%;
}

.h1Tag {
	display: none;
}

@media screen and (min-width: 769px) {
	._sp {
		display: none;
	}
	._pc {
		display: block;
	}
}
@media screen and (max-width: 768px) {
	._sp {
		display: block;
	}
	._pc {
		display: none;
	}
}
.ib {
	display: inline-block;
}

main {
	overflow: hidden;
}
main p {
	line-height: 1.5em;
	letter-spacing: 0.15em;
}

/**Color Setting**/
/*-----------------Color---------------------*/
.brown {
	color: #A17954;
}

/*-----------------common---------------------*/
.inner {
	width: 95%;
	max-width: 1200px;
	margin-inline: auto;
}

.inner_w1100 {
	width: 95%;
	max-width: 1100px;
	margin-inline: auto;
}

.com-ttl {
	font-size: 35px;
	font-size: clamp(18px, 5vw, 35px);
}
.com-lead--l {
	font-size: 30px;
	font-size: clamp(18px, 4vw, 30px);
}
.com-lead {
	font-size: 25px;
	font-size: clamp(15px, 3vw, 25px);
}
.com-lead--s {
	font-size: 20px;
	font-size: clamp(15px, 2.5vw, 20px);
}
.com-text--l {
	font-size: 18px;
	font-size: clamp(12px, 1.5vw, 18px);
}
.com-text {
	font-size: 15px;
	font-size: clamp(12px, 1.3vw, 15px);
}
.com-txt {
	font-size: 12px;
	font-size: clamp(10px, 1.1vw, 12px);
}

@media screen and (max-width: 768px) {
	.com-ttl {
		font-size: clamp(10px, 8vw, 35px);
	}
	.com-lead--l {
		font-size: clamp(10px, 5.5vw, 30px);
	}
	.com-lead {
		font-size: clamp(10px, 4.5vw, 25px);
	}
	.com-lead--s {
		font-size: clamp(10px, 4vw, 20px);
	}
	.com-text--l {
		font-size: clamp(10px, 3.8vw, 18px);
	}
	.com-text {
		font-size: clamp(10px, 3.5vw, 15px);
	}
	.com-txt {
		font-size: clamp(10px, 3vw, 12px);
	}
	/*@media screen end*/
}
.com-w800 {
	width: 95%;
	max-width: 800px;
	margin: 0 auto;
}
.com-w1000 {
	width: 95%;
	max-width: 1000px;
	margin: 0 auto;
}
.com-w1200 {
	width: 95%;
	max-width: 1200px;
	margin: 0 auto;
}
.com-w1400 {
	width: 95%;
	max-width: 1400px;
	margin: 0 auto;
}
.com-min--vh100 {
	min-height: 100vh;
}

.com-imgbox {
	position: relative;
}
.com-imgnote {
	position: absolute;
	bottom: 3px;
	right: 3px;
	font-size: 10px;
	letter-spacing: 0.05em;
}
.com-notebox {
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 50px 0;
}
@media screen and (max-width: 768px) {
	.com-notebox {
		padding: clamp(20px, 6vw, 50px) 0;
	}
}
.com-note {
	font-size: 10px;
	letter-spacing: 0em;
	line-height: 1.2em;
	text-align: left;
}

.com-fs10 {
	font-size: 10px;
}
.com-fs12 {
	font-size: 12px;
}
.com-texR {
	text-align: right;
}
.com-texC {
	text-align: center;
}
.com-col--wh {
	color: #fff;
}
.com-col--bk {
	color: #000;
}
.com-tex__shadow--wh {
	text-shadow: 0 0 10px #fff;
}
.com-tex__shadow--bk {
	text-shadow: 0 0 10px #000;
}

.com-flbox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.com-flbox--ac {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.com-flbox--jc {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

/*-----------------linkstyle---------------------*/
.com-linkbox {
	width: 98%;
	max-width: 1000px;
	margin: 0 auto;
	margin: 50px auto;
}
.com-linkbox__fl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: min(1vw, 20px);
}
.com-linkbtn {
	width: 32%;
	margin: 0 0.6666666667%;
}
.com-linkbtn a {
	display: block;
	width: 100%;
	height: 100%;
	color: #A17954;
	text-align: center;
	padding: 4px 0 8px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: clamp(0.813rem, 0.404rem + 0.849vw, 1.063rem);
	position: relative;
	overflow: hidden;
}
.com-linkbtn a .menu-en {
	font-family: "Oswald", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 11px;
	line-height: 1.3;
}
.com-linkbtn-map a {
	padding: 12px 0;
	display: inline-block;
	position: relative;
}
.com-linkbtn-map a::before {
	position: absolute;
	content: "";
	-webkit-mask-image: url("../../img/common/icon_map-br.svg");
	        mask-image: url("../../img/common/icon_map-br.svg");
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
	-webkit-mask-size: contain;
	        mask-size: contain;
	background-color: currentColor;
	top: 52%;
	left: 13%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: 20px;
	height: 20px;
}
.com-linkbtn-map a p {
	background: transparent;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 5px;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
@media (any-hover: hover) {
	.com-linkbtn-map a {
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.com-linkbtn-map a:hover {
		color: #fff;
	}
	.com-linkbtn-map a:hover::after {
		-webkit-transform-origin: 0% 50%;
		        transform-origin: 0% 50%;
		-webkit-transform: scaleX(1);
		        transform: scaleX(1);
	}
	.com-linkbtn-map a:hover span::before {
		background-color: #fff;
	}
}
.com-linkbtn-outline a {
	background: #2C2F33;
	border: 1px solid #A17954;
	-webkit-transition: all 0.8s ease;
	transition: all 0.8s ease;
}
.com-linkbtn-outline a:hover {
	background: #fff;
	color: #A17954;
}
.com-linkbtn-request a {
	background: #2C2F33;
	border: 1px solid #2C2F33;
}
.com-linkbtn-request a::before {
	position: absolute;
	content: "";
	top: 0;
	left: -120%;
	width: 100%;
	height: 100%;
	-webkit-transform: skewX(-30deg);
	        transform: skewX(-30deg);
	background: -webkit-gradient(linear, left top, right top, color-stop(25%, rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.6)), color-stop(75%, rgba(255, 255, 255, 0)));
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.6) 50%, rgba(255, 255, 255, 0) 75%);
	-webkit-animation: shine 2s 0s linear infinite;
	        animation: shine 2s 0s linear infinite;
}
.com-linkbtn-request a:hover {
	color: #A17954;
	opacity: 0.7;
}
.com-linkbtn-reserve a {
	background: #2C2F33;
	border: 1px solid #2C2F33;
}
.com-linkbtn-reserve a::before {
	position: absolute;
	content: "";
	top: 0;
	left: -120%;
	width: 100%;
	height: 100%;
	-webkit-transform: skewX(-30deg);
	        transform: skewX(-30deg);
	background: -webkit-gradient(linear, left top, right top, color-stop(25%, rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.6)), color-stop(75%, rgba(255, 255, 255, 0)));
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.6) 50%, rgba(255, 255, 255, 0) 75%);
	-webkit-animation: shine 2s 0s linear infinite;
	        animation: shine 2s 0s linear infinite;
}
.com-linkbtn-reserve a:hover {
	color: #A17954;
	opacity: 0.7;
}
.com-linkbtn-online a {
	background: #968375;
}
@-webkit-keyframes shine {
	20% {
		left: 100%;
	}
	100% {
		left: 100%;
	}
}
@keyframes shine {
	20% {
		left: 100%;
	}
	100% {
		left: 100%;
	}
}
@media screen and (min-width: 767px) {
	.com {
		/*@media screen end*/
	}
	.com-linkbtn a {
		opacity: 1;
		-webkit-transition: 0.5s;
		transition: 0.5s;
	}
}
@media screen and (max-width: 768px) {
	.com {
		/*@media screen end*/
	}
	.com-linkbox {
		width: 95%;
	}
	.com-linkbtn {
		width: 100%;
		margin: 10px auto 0;
	}
	.com-linkbtn a p {
		font-size: clamp(10px, 3.5vw, 15px);
	}
}

/*-----------------/linkstyle/---------------------*/
body {
	font-family: "Shippori Mincho", serif;
	font-weight: 400;
	font-style: normal;
	color: #2C2F33;
}

.animation-bg {
	background: #2C2F33;
	display: block;
	position: fixed;
	content: "";
	inset: 0;
	width: 100vw;
	height: 100vh;
	z-index: 999;
	-webkit-transform-origin: top;
	        transform-origin: top;
	-webkit-transform: scaleY(1);
	        transform: scaleY(1);
}

.page-mv__wrap {
	height: 31vw;
	overflow: hidden;
	position: relative;
}
.page-mv__wrap .mv-img {
	display: block;
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-webkit-transition: 2s ease;
	transition: 2s ease;
	-webkit-animation: mv-scale 2s ease;
	        animation: mv-scale 2s ease;
}
.page-mv__wrap .imgnote {
	position: absolute;
	font-size: 10px;
	bottom: 5px;
	right: 5px;
	color: #fff;
}

@-webkit-keyframes mv-scale {
	0% {
		opacity: 0;
		scale: 1.2;
	}
	100% {
		opacity: 1;
		scale: 1;
	}
}

@keyframes mv-scale {
	0% {
		opacity: 0;
		scale: 1.2;
	}
	100% {
		opacity: 1;
		scale: 1;
	}
}
.page__ttl {
	position: absolute;
	top: 45%;
	left: min(8.9vw, 363px);
}
.page__ttl .page__ttl--en {
	text-transform: uppercase;
	color: #fff;
	font-family: "STIX Two Text", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: clamp(3.5rem, 2.498rem + 2.085vw, 5rem);
	line-height: 1.3;
	display: inline-block;
	overflow: hidden;
	white-space: nowrap;
	position: relative;
	--clip: 0%;
}
.page__ttl .page__ttl--en .char {
	clip-path: polygon(0 0, var(--clip) 0, var(--clip) 100%, 0% 100%);
}
.page__ttl .js-line {
	width: 77px;
	height: 1px;
	background-color: #fff;
	-webkit-transform: scaleX(0);
	        transform: scaleX(0);
	-webkit-transform-origin: left bottom;
	        transform-origin: left bottom;
}
.page__ttl .page__ttl--ja {
	margin-top: min(1.5vw, 20px);
	color: #fff;
	font-size: clamp(1rem, 0.833rem + 0.348vw, 1.25rem);
	letter-spacing: 0.15em;
	display: inline-block;
	overflow: hidden;
	white-space: nowrap;
	position: relative;
	--clip2: 0%;
	clip-path: polygon(0 0, var(--clip2) 0, var(--clip2) 100%, 0% 100%);
}

@media screen and (max-width: 768px) {
	.page-mv__wrap {
		height: 80vw;
	}
	.page__ttl {
		left: 8%;
	}
	.page__ttl .page__ttl--en {
		font-size: clamp(2.5rem, 0.294rem + 9.804vw, 5rem);
	}
	.page__ttl .page__ttl--ja {
		font-size: clamp(1rem, 0.779rem + 0.98vw, 1.25rem);
	}
	/*@media screen end*/
}
#plan .plan-main__container {
	background: #D9D9D9;
	padding-block: min(5.7vw, 110px) min(2.8vw, 54px);
}
#plan .plan-lead {
	color: #A17954;
	text-transform: uppercase;
	text-align: center;
	font-size: 25px;
	font-family: "STIX Two Text", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-style: italic;
	font-weight: 400;
	line-height: 3;
	letter-spacing: 0.5em;
}
#plan .plan-lead .p-char {
	display: inline-block;
	opacity: 0;
	-webkit-transform: translateY(20px);
	        transform: translateY(20px);
}
#plan .plan-lead__txt {
	color: #595757;
	text-align: center;
	font-size: 18px;
	font-style: normal;
	font-weight: 500;
	line-height: 1.34;
	letter-spacing: 1.8px;
}
#plan .jump__link {
	width: 85%;
	max-width: 1000px;
	margin-top: min(3.3vw, 64px);
	margin-inline: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
#plan .jump__link .jump__link--item {
	width: 22%;
}
#plan .jump__link .jump__link--item a {
	display: block;
	padding-bottom: 10px;
	text-align: center;
	border-bottom: 1px solid #342E2E;
	color: #342E2E;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	position: relative;
}
#plan .jump__link .jump__link--item a::before {
	position: absolute;
	content: "";
	-webkit-mask-image: url(../../img/plan/triangle.svg);
	        mask-image: url(../../img/plan/triangle.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
	-webkit-mask-size: contain;
	        mask-size: contain;
	background-color: currentColor;
	top: 18%;
	right: 10%;
	width: 8%;
	height: 46%;
}
#plan .jump__link .jump__link--item a:hover {
	color: #2190CD;
	border-bottom: 1px solid #2190CD;
}
#plan .jump__link .jump__link--item a:hover::before {
	background-color: #2190CD;
}
#plan .jump__link .jump__link--item a .num {
	font-size: 1.5em;
}
#plan .jump__link.jump__link2 {
	margin-top: min(7.9vw, 153px);
}
#plan .jump__link.jump__link2 .jump__link--item a {
	border-bottom: 1px solid #fff;
	color: #fff;
}
#plan .jump__link.jump__link2 .jump__link--item a:hover {
	color: #2190CD;
	border-bottom: 1px solid #2190CD;
}
#plan .jump__link.jump__link2 .jump__link--item a:hover::before {
	background-color: #2190CD;
}
#plan ._ib {
	display: inline-block;
}
@media screen and (max-width: 1199px) {
	#plan ._ib {
		display: none;
	}
}
@media screen and (max-width: 768px) {
	#plan {
		/*@media screen end*/
	}
	#plan .plan-main__container {
		padding-block: min(11.7vw, 88px) min(11.4vw, 86px);
	}
	#plan .plan-lead {
		font-size: clamp(1.25rem, 0.809rem + 1.961vw, 1.75rem);
	}
	#plan .plan-lead__txt {
		font-size: clamp(0.938rem, 0.551rem + 1.716vw, 1.375rem);
	}
	#plan .jump__link {
		margin-top: min(10.9vw, 82px);
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		row-gap: min(9.6vw, 72px);
	}
	#plan .jump__link .jump__link--item {
		width: 48%;
	}
}
#plan .hebe-wrap:not(:first-of-type) {
	margin-top: min(10.4vw, 200px);
}
#plan .plan__cards {
	background-image: url(../../img/plan/list_bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	padding-block: min(5.3vw, 102px) min(6.5vw, 125px);
}
#plan .ttl__hebe {
	width: 85%;
	max-width: 1200px;
	margin-inline: auto;
	margin-bottom: min(1.66vw, 32px);
	padding-bottom: min(0.9vw, 18px);
	color: #C7A772;
	text-align: center;
	font-size: 36px;
	position: relative;
}
#plan .ttl__hebe::before {
	content: "";
	display: block;
	width: 100%;
	height: 4px;
	position: absolute;
	left: 50%;
	bottom: 0;
	background: -webkit-gradient(linear, left top, right top, from(rgba(199, 167, 114, 0)), color-stop(25%, rgb(199, 167, 114)), color-stop(50%, rgb(199, 167, 114)), color-stop(75%, rgb(199, 167, 114)), to(rgba(199, 167, 114, 0)));
	background: linear-gradient(90deg, rgba(199, 167, 114, 0) 0%, rgb(199, 167, 114) 25%, rgb(199, 167, 114) 50%, rgb(199, 167, 114) 75%, rgba(199, 167, 114, 0) 100%);
	-webkit-transform: translate(-50%, 0);
	        transform: translate(-50%, 0);
	-webkit-transition: 1s;
	transition: 1s;
	-webkit-transition-delay: 0.5s;
	        transition-delay: 0.5s;
}
#plan .ttl__hebe .num {
	font-size: 1.44em;
}
#plan .plan__list {
	width: 85%;
	max-width: 1200px;
	margin-inline: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	row-gap: min(1.8vw, 36px);
}
#plan .plan__card {
	background: #fff;
	width: 49%;
}
#plan .plan__card--link {
	display: block;
	padding: min(0.9vw, 17px) min(1.35vw, 26px) min(1.45vw, 28px);
}
#plan .plan__card--link:hover .card__content {
	opacity: 0.6;
}
#plan .plan__card--link:hover .btn__more {
	border-bottom: 1px solid #2190CD;
	color: #2190CD;
	letter-spacing: 0.5em;
}
#plan .plan__card--link:hover .btn__more::after {
	background-color: #2190CD;
	right: 0;
}
#plan .type-name__wrap {
	background: #2F2A2A;
	padding-block: min(0.05vw, 12px) min(0.8vw, 16px);
}
#plan .type-name {
	background: -webkit-gradient(linear, left bottom, left top, from(#612D2D), color-stop(42.79%, #C89454), to(#432F0D));
	background: linear-gradient(0deg, #612D2D 0%, #C89454 42.79%, #432F0D 100%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: clamp(1.125rem, -0.213rem + 2.784vw, 1.875rem);
	text-align: center;
}
#plan .type-name .name {
	font-size: 1.6em;
	line-height: 1.3;
	text-box-trim: trim-both;
}
#plan .card__content {
	margin-top: min(1.6vw, 32px);
	height: min(16vw, 212px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}
#plan .layout__content--wrap {
	width: 60%;
}
#plan .layout__content--wrap .layout__content .layout {
	text-align: center;
}
#plan .area__content .area-name {
	font-size: clamp(0.75rem, 0.527rem + 0.464vw, 0.875rem);
	letter-spacing: 0.05em;
}
#plan .area__content .area-num {
	font-family: "STIX Two Text", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0em;
	font-size: clamp(1.625rem, -1.051rem + 5.568vw, 3.125rem);
}
#plan .area__content .area-num .big {
	font-size: 1.6em;
}
#plan .area__content .area-num .square {
	font-size: 0.6em;
}
#plan .area__content .area-ja {
	margin-top: max(-2.1vw, -22px);
	font-size: clamp(9px, 0.459rem + 0.475vw, 0.875rem);
	letter-spacing: 0.01em;
	text-align: right;
}
#plan .area__content .area-ja.mt {
	margin-top: 0;
}
#plan .layout__content {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	text-align: right;
}
#plan .layout__content:nth-of-type(2) {
	margin-top: min(0.6vw, 12px);
}
#plan .layout__content .layout {
	display: block;
	color: #000;
	font-family: "STIX Two Text";
	font-size: clamp(1.75rem, -0.248rem + 4.158vw, 3rem);
	font-style: normal;
	font-weight: 400;
	letter-spacing: 0.01em;
	text-align: left;
	line-height: normal;
}
#plan .layout__content .layout .option {
	font-size: 0.5em;
}
#plan .layout__content .layout.layout-option {
	margin-top: max(-2.5vw, -35px);
}
#plan .layout__content .floor {
	display: block;
	margin-top: -12px;
	color: #000;
	text-align: right;
	font-family: "Shippori Mincho";
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}
#plan .layout__content.layout__content2 {
	margin-inline: auto;
}
#plan .btn__more {
	border-bottom: 1px solid #595757;
	padding-block: min(0.8vw, 16px);
	color: #595757;
	text-transform: lowercase;
	text-align: center;
	-webkit-transition: 0.4s;
	transition: 0.4s;
	position: relative;
}
#plan .btn__more::after {
	position: absolute;
	content: "";
	-webkit-mask-image: url(../../img/plan/arrow.svg);
	        mask-image: url(../../img/plan/arrow.svg);
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
	-webkit-mask-size: contain;
	        mask-size: contain;
	background-color: #595757;
	top: 50%;
	right: min(1.6vw, 32px);
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: 10px;
	height: 21px;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}
@media screen and (max-width: 768px) {
	#plan {
		/*@media screen end*/
	}
	#plan .plan__cards {
		padding-block: min(8vw, 60px) min(23.2vw, 175px);
	}
	#plan .plan__list {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		row-gap: min(3vw, 23px);
	}
	#plan .ttl__hebe {
		margin-bottom: min(4.6vw, 35px);
		padding-bottom: min(1.7vw, 13px);
		font-size: clamp(1.5rem, 0.728rem + 3.431vw, 2.375rem);
	}
	#plan .ttl__hebe::before {
		height: clamp(2px, 0.015rem + 0.49vw, 4px);
	}
	#plan .plan__card {
		width: 100%;
	}
	#plan .plan__card--link {
		padding: min(2.26vw, 17px) min(3.4vw, 26px) min(3.7vw, 28px);
	}
	#plan .type-name {
		font-size: clamp(1.125rem, 0.353rem + 3.431vw, 2rem);
	}
	#plan .area__content .area-num {
		font-size: clamp(1.75rem, -0.015rem + 7.843vw, 3.75rem);
	}
	#plan .card__content {
		height: min(27.6vw, 212px);
	}
	#plan .layout__content .layout {
		font-size: clamp(1.813rem, -0.118rem + 8.578vw, 4rem);
	}
}
#plan .type-main {
	background-image: url(../../img/plan/list_bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	padding-block: min(6.6vw, 128px) min(7.7vw, 148px);
}
#plan .type-main .type-name__wrap {
	border: 1px solid #fff;
}
#plan .type-area {
	background: #fff;
	padding-block: min(3.1vw, 60px) min(2.6vw, 50px);
}
#plan .type-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: min(1.5vw, 32px);
}
#plan .type-content .com-note {
	margin-top: max(-1.8vw, -24px);
}
#plan .layout__contents {
	padding-inline: min(1.5vw, 32px);
	border-left: 1px solid #000;
	border-right: 1px solid #000;
}
#plan .layout__contents.layout__contents--typeO {
	padding-inline: min(4.2vw, 80px);
}
#plan .layout__contents .layout__content--f {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: baseline;
	    -ms-flex-align: baseline;
	        align-items: baseline;
	margin-inline: 0 auto;
}
#plan .balcony__content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
#plan .balcony__content .balcony {
	line-height: 1.1;
	font-size: clamp(0.75rem, 0.527rem + 0.464vw, 0.875rem);
	letter-spacing: 0em;
}
#plan .balcony__content .balcony-num {
	text-align: right;
	font-family: "STIX Two Text";
	font-style: normal;
	font-weight: 400;
	font-size: clamp(1.5rem, 0.608rem + 1.856vw, 2rem);
	letter-spacing: 0em;
}
#plan .balcony__content .balcony-num .square {
	font-size: 0.6em;
}
#plan .balcony__content .area-ja {
	letter-spacing: 0em;
	font-size: clamp(0.625rem, 0.323rem + 1.342vw, 0.875rem);
}
#plan .type-img {
	width: 54%;
	max-width: 650px;
	margin-inline: auto;
}
#plan .type-option {
	width: min(78%, 478px);
	margin: min(1.77vw, 34px) auto min(0.26vw, 5px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-column-gap: 16px;
	   -moz-column-gap: 16px;
	        column-gap: 16px;
}
#plan .type-option .p-option {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	font-size: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 4px;
}
#plan .type-option .p-option img {
	display: inline-block;
	width: 35px;
}
#plan .type-note__wrap {
	width: min(78%, 478px);
	margin-top: min(0.4vw, 8px);
	margin-inline: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: min(0.8vw, 15px);
}
#plan .type-note__wrap .type-note {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	font-size: 10px;
}
#plan .btn__back {
	margin-top: min(4.4vw, 86px);
	width: 85%;
	max-width: 550px;
	margin-inline: auto;
}
#plan .btn__back a {
	background: #D9D9D9;
	border: 1px solid #D9D9D9;
	display: block;
	padding-block: min(0.8vw, 16px);
	text-align: center;
	letter-spacing: 0.16em;
	-webkit-transition: 0.4s;
	transition: 0.4s;
	position: relative;
}
#plan .btn__back a::before {
	position: absolute;
	content: "";
	-webkit-mask-image: url("../../img/plan/arrow_bk.svg");
	        mask-image: url("../../img/plan/arrow_bk.svg");
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
	-webkit-mask-size: contain;
	        mask-size: contain;
	background-color: #000;
	top: 50%;
	right: min(1.6vw, 32px);
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: 10px;
	height: 21px;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}
#plan .btn__back a:hover {
	background: #2190CD;
	border: 1px solid #2190CD;
	color: #fff;
}
#plan .btn__back a:hover::before {
	background-color: #fff;
	right: 0;
}
#plan .plan-notebox {
	margin-top: min(1.5vw, 30px);
	font-size: 10px;
	letter-spacing: 0;
	line-height: 1.5;
}
@media screen and (max-width: 768px) {
	#plan {
		/*@media screen end*/
	}
	#plan .type-content .area__content {
		width: 80%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: baseline;
		    -ms-flex-align: baseline;
		        align-items: baseline;
	}
	#plan .type-content .area__content.area__content--R {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	#plan .type-content .area__content.area__content--R .com-note {
		width: 100%;
		margin-top: max(-3.2vw, -32px);
		text-align: center;
		letter-spacing: 0em;
	}
	#plan .layout__contents {
		border-left: none;
	}
	#plan .layout__contents .layout__content .layout {
		font-size: clamp(1.375rem, 0.382rem + 4.412vw, 2.5rem);
	}
	#plan .layout__contents .layout__content .floor {
		margin-top: -8px;
		font-size: clamp(0.625rem, 0.323rem + 1.342vw, 0.875rem);
	}
	#plan .balcony__content .balcony {
		font-size: clamp(0.5rem, 0.122rem + 1.678vw, 0.813rem);
	}
	#plan .balcony__content .balcony-num {
		font-size: clamp(1.375rem, 0.603rem + 3.431vw, 2.25rem);
	}
	#plan .type-img {
		width: 95%;
		max-width: 650px;
	}
	#plan .type-option,
	#plan .type-note__wrap {
		width: 76%;
		max-width: 520px;
	}
	#plan .type-option {
		-webkit-column-gap: min(2.4vw, 13px);
		   -moz-column-gap: min(2.4vw, 13px);
		        column-gap: min(2.4vw, 13px);
	}
	#plan .type-option .p-option img {
		width: min(4.6vw, 35px);
	}
	#plan .btn__back {
		margin-top: min(9.3vw, 70px);
	}
	#plan .btn__back a {
		padding-block: min(2.66vw, 20px);
		font-size: clamp(0.875rem, 0.765rem + 0.49vw, 1rem);
	}
	#plan .plan-notebox {
		padding: min(6.6vw, 50px) 0;
	}
}
/*# sourceMappingURL=plan.css.map */