@charset "UTF-8";

/*
	base
=========================================*/
html {
	background: #fff;
}
body {
	height: auto;
	letter-spacing: normal;
	text-align: justify;
	font-family: "リュウミン R-KL", serif;
	font-weight: 400;
	color: #000;
}
a {
	text-decoration: none;
	color: inherit;
	cursor: auto;
	transition: background 120ms ease,
				color 120ms ease;
}
a[href] {
	text-decoration: underline;
	cursor: pointer;
	color: inherit;
}
strong {
	font-weight: bold;
}
em {
	font-style: normal;
	font-weight: bold;
}
img {
	max-width: 100%;
	max-height: 100%;
}
small {
	font-size: 0.75em;
}
hr {
	margin: 2em 160px;
	border: none;
	border-top: 1px dashed #bbb;
}

/*
	form
=========================================*/
select,
textarea,
input {
	background: #fff;
	box-sizing: border-box;
	max-width: 100%;
	height: 40px;
	padding: 0 0.857em;
	border: 1px solid #808080;
	border-radius: 0;
	font: inherit;
	color: #808080;
}
select {
	background: url(../img/select.png) 100% 50% no-repeat #fff;
	appearance: none;
	padding-right: calc(0.857em + 13px);
}
select::-ms-expand {
	display: none;
}
input[type="radio"],
input[type="checkbox"] {
	background: none;
	box-sizing: border-box;
	width: auto;
	height: auto;
	padding: 0;
	border: none;
	border-radius: 0;
	font: inherit;
}
textarea {
	width: 100%;
	height: auto;
	min-height: 7em;
	padding: 0.857em;
	line-height: 1.25;
}
textarea[readonly],
input[readonly] {
	border: none;
	outline: none;
}
button {
	cursor: pointer;
}

/*
	x-align
=========================================*/
.x-left {
	text-align: left !important;
}
.x-center {
	text-align: center !important;
}
.x-right {
	text-align: right !important;
}
.x-top {
	vertical-align: top !important;
}
.x-middle {
	vertical-align: middle !important;
}
.x-bottom {
	vertical-align: bottom !important;
}
.x-baseline {
	vertical-align: baseline !important;
}

/*
	x-text 
=========================================*/
.x-underline {
	text-decoration: underline;
}
.x-small {
	font-size: 0.8em;
}

/*
	x-color
=========================================*/
.x-alert {
	font-weight: bold !important;
	color: #f33 !important;
}

/*
	x-display
=========================================*/
.x-hide {
	display: none !important;
}
@media screen and (max-width: 767px) {
	.x-pc {
		display: none !important;
	}
}
@media screen and (min-width: 768px) {
	.x-sp {
		display: none !important;
	}
}

/*
	[data-show-scroll]
=========================================*/
[data-show-scroll] {
	opacity: 0;
	transform: translateY(50px);
	transition-duration: 1280ms;
	transition-property: opacity, transform, filter;
}
[data-show-scroll="true"] {
	opacity: 1;
	filter: none;
	transform: translateY(0) scale(1);
}

/*
	.area-container
=========================================*/
.area-container {
	padding: 182px 0 0;
}
@media screen and (max-width: 767px) {
	.area-container {
		padding: 80px 0 0;
	}
}

/*area-containerの追加ここから*/
.area-container-contact {
	padding:120px 0 0;
}
@media screen and (max-width: 767px) {
	.area-container-contact {
		padding: 80px 0 0;
	}
}
/*area-containerの追加ここまで*/

/*
	.area-wrap
=========================================*/
.area-wrap {
	box-sizing: border-box;
	max-width: 1540px;
	margin: auto;
}

/*
	.area-header
=========================================*/
.area-header {
	background: #fff;
	width: 100%;
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
}
.area-header .area-wrap {
	display: flex;
	align-items: center;
	padding: 20px 30px;
}
.area-header .logo {
	display: flex;
	flex-grow: 1;
	justify-content: space-between;
	align-items: center;
}
.area-header .logo::after {
	content: "";
	display: block;
}
.area-header .logo a:first-child {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 12px;
    line-height: 0.7;
}
.area-header .logo a:last-child {
	margin: 0 1em;
	text-decoration: none;
	font-family: 'Midashi Min MA31';
	font-size: 2em;
}
.area-header .logo a:first-child img {
    /* margin-right: 20px; */
    height: 80px;
}

.area-header .logo a:last-child img {
	height: 60px;
}
.area-header .link {
	margin-left: auto;
}
.area-header .link ul {
	display: flex;
	align-items: center;
}
.area-header .link ul li {
	margin-right: 30px;
}
.area-header .link ul li a {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}
.area-header .link ul li a::after {
	content: "＞";
	font-size: 0.6875em;
}
.area-header .link ul li a.catalog {
	padding: 6px 16px;
	border: 1px solid #006;
	transition: opacity 640ms;
}
.area-header .link ul li a.catalog:active {
	opacity: 0.5;
}
.area-header .link ul li a.catalog::after {
	content: none;
}
.area-header .link ul li a > .wrap {
	margin: 0 0.5em;
}
.area-header .menu {
	margin-left: 20px;
}
.area-header .menu button {
	background: none;
	margin: 0;
	padding: 0;
	border: none;
	transition: opacity 640ms;
}
.area-header .menu button:active {
	opacity: 0.5;
}
@media screen and (max-width: 767px) {
	.area-header {
		padding: 10px 10px 10px 16px;
	}
	.area-header .area-wrap {
		padding: 0;
	}
	.area-header .logo a:first-child img {
		height: 50px;
	}
	.area-header .logo a:last-child {
		margin: 0 0 0 1em;
		font-size: 0.75em;
	}
	
	.area-header .menu {
		width: 35px;
	}
}

/*.area-headerの追加ここから*/
.area-header-lp2 .logo2 {
	display: flex;
	flex-grow: 1;
	justify-content: space-between;
	align-items: center;
}

	.area-header-lp2 .logo2 a:first-child {
		display: flex;
		flex-direction: column;
		align-items: center;
		font-size: 12px;
		line-height: 0.7;
	}
		.area-header-lp2 .logo2 a:first-child img {
			/* margin-right: 20px; */
			height: 80px;
		}
.area-header-lp2 img.a-h-logo-home {
	margin-left: 5vw;
	height: 60px;
	align-self: flex-end;
}
.area-header-lp2 img.a-h-logo-bell {
	margin-left: 5vw;
	margin-right: 1vw;
	height: 40px;
	align-self: center;
}
.area-header-lp2 .logo-l {
	height: 65px;
	display: flex;
}
.area-header-lp2 .logo-r {
	right: 0;
	height: 65px;
	display: flex;
}
.font-go {
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ＭＳ Ｐゴシック", sans-serif;
}
.area-header-lp2 .pc-to-contact {
	align-self: center;
}
.area-header-lp2 .pc-to-contact a {
	text-decoration: none;
}
.area-header-lp2 .pc-to-contact a .f-size-5 {
	font-size: 2vw;
}
@media screen and (max-width: 767px) {
	.area-header-lp2 .pc-to-contact a .f-size-5 {
		font-size: 4vw;
	}
}
.area-header-lp2 .pc-ph-num {
    font-family: 'Shippori Mincho', serif;
    font-size: min(2.7vw,30px);
    line-height: 0.75;
    margin-top: 22px;
    text-align: right;
}
.area-header-lp2 .pc-ph-jpn {
	font-size: min(1.3vw,12px);
}
@media screen and (max-width: 767px) {
	.area-header-lp2 {
		/*height:120px;*/
		padding: 0;
	}
		.area-header-lp2 .area-wrap {
			display: flex;
			align-items: center;
			padding: 0;
		}
		.area-header-lp2 .logo-l {
			padding: 10px;
			height: 80px;
		}
		.area-header-lp2 .logo2 a:first-child img {
			margin-right: 20px;
			/*height: 100px;*/
		}
		.area-header-lp2 img.a-h-logo-home {
			margin-left: 5vw;
			height: 10vw;
			align-self: center;
		}
		.area-header-lp2 .pc-to-contact {
			display: none;
		}
		.area-header-lp2 .logo-r {
			/*height:120px;*/
		}
		.area-header-lp2 img.a-h-logo-bell {
			padding: 20px;
			margin: 0;
			height: 120px;
			align-self: center;
			background-color: #f0f0f0;
		}
		.area-header-lp2 .pc-ph-num {
			display: none;
		}
}
.area-header-contact {
	padding-top:120px;
}
/*.area-headerの追加ここまで*/


/*トップへ戻るボタンの追加ここから*/
html {
	scroll-behavior: smooth;
}
@media screen and (min-width: 768px) {
	.only-mb {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.only-pc {
		display: none;
	}
}
.pagetop {
	height: 40px;
	width: 40px;
	position: fixed;
	right: 16px;
	bottom: 24px;
	background: #4d4d4d;
	border: none;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 2;
}
.pagetop__arrow {
	height: 10px;
	width: 10px;
	border-top: 3px solid #ffffff;
	border-right: 3px solid #ffffff;
	transform: translateY(20%) rotate(-45deg);
}
#page_top {
	opacity: 0;
	transition: all 1s ease;
	z-index:99;
}
	/* トップへ */
	#page_top.show {
		opacity: 0.6;
		transform: none;
	}

/*トップへ戻るボタンの追加ここまで*/

/*
	.area-menu
=========================================*/
.area-menu {
	background: #fff;
	box-sizing: border-box;
	width: 100%;
	margin-top: 14px;
	border-top: 1px solid #acac9d;
	border-bottom: 1px solid #acac9d;
	position: fixed;
	top: 100px;
	left: 0;
	z-index: -1;
	opacity: 0;
	transition-duration: 640ms;
	transition-property: opacity;
}
.area-menu[data-show="true"] {
	z-index: 11;
	opacity: 1;
}
.area-menu .close {
	position: absolute;
	bottom: 100%;
	right: 0;
}
.area-menu .close button {
	background: #3a62ad;
	width: 120px;
	height: 115px;
	text-align: center;
	font: inherit;
	border: none;
	color: #fff;
}
.area-menu .close button .icon {
	display: block;
	font-size: 40px;
}
.area-menu .close button .wrap {
	display: block;
	font-size: 20px;
}
.area-menu ul {
	display: flex;
	flex-wrap: wrap;
	border-right: 1px solid #acac9d;
	
}
.area-menu ul li {
	box-sizing: border-box;
	width: 20%;
	margin: -1px 0 0;
	border-top: 1px solid #acac9d;
	border-left: 1px solid #acac9d;
	
}
.area-menu ul li a {
	display: flex;
	align-items: center;
	padding: 0 35px;
	text-decoration: none;
	font-size: 1.4375em;
	color: #bbb;
}
.area-menu ul li a[href] {
	color: inherit;
}
.area-menu ul li a[href].current,
.area-menu ul li a[href]:active {
	background: #f4f1ec;
}
.area-menu ul li a::before {
	content: "";
	display: block;
	height: 104px;
}
@media screen and (max-width: 767px) {
	.area-menu {
		margin-top: 0;
		top: 60px;
	}
	.area-menu .close button {
		background: #3a62ad;
		width: 60px;
		height: 59px;
		text-align: center;
		font: inherit;
		border: none;
		color: #fff;
	}
	.area-menu .close button .icon {
		font-size: 22px;
	}
	.area-menu .close button .wrap {
		font-size: 11px;
	}
	.area-menu ul {
		display: grid;
		grid-template-columns: 1fr 1fr;
		margin-right: -1px;
		border: none;
	}
	.area-menu ul li {
		width: auto;
		margin: 0;
		border: none;
		border-right: 1px solid #acac9d;
		border-bottom: 1px solid #acac9d;
	}
	.area-menu ul li:last-child {
		grid-column: 1 / 3;
		margin-top: -1px;
		border-top: 1px solid #acac9d;
	}
	.area-menu ul li a {
		padding: 0 16px;
		font-size: 1em;
	}
	.area-menu ul li a::before {
		height: 58px;
	}
	.area-menu ul li:last-child {
		width: 100%;
	}
	.area-menu ul li button {
		background: none;
		box-sizing: border-box;
		width: 100%;
		height: 58px;
		padding: 0 16px;
		border: none;
		text-align: center;
		font: inherit;
		font-size: 1em;
	}
	.area-menu ul li button .icon {
		vertical-align: middle;
		font-size: 24px;
	}
	.area-menu ul li button .wrap {
		vertical-align: middle;
	}
	
}

/*
	.area-navigation
=========================================*/
.area-navigation {
	background: #fff;
	width: 100%;
	padding: 20px 0;
	position: fixed;
	top: 120px;
	left: 0;
	z-index: 10;
}
.area-navigation .area-wrap {
	padding: 0 30px;
}
.area-navigation ul {
	display: flex;
	justify-content: space-between;
}
.area-navigation ul li {
	flex-grow: 1;
	border-right: 2px solid #000;
}
.area-navigation ul li:first-child {
	border-left: 2px solid #000;
}
.area-navigation ul li a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	font-size: 1.25em;
	color: #ccc;
}
.area-navigation ul li a[href] {
	color: inherit;
}
.area-navigation ul li a::before {
	content: "";
	display: block;
	height: 37px;
}
.area-navigation ul li a[href]::after {
	content: "";
	display: block;
	width: 60%;
	border-bottom: 2px solid #b8a983;
	position: absolute;
	bottom: 0;
	left: 20%;
	opacity: 0;
	transition-property: opacity;
	transition-duration: 240ms;
}
.area-navigation ul li a[href].current::after,
.area-navigation ul li a[href]:active::after {
	opacity: 1;
}

/*
	.area-visual
=========================================*/
.area-visual {
	text-align: center;
	z-index: 1;
}
.area-visual .bg {
	filter: blur(20px) saturate(40%) contrast(70%) brightness(60%);
	transform: scale(1.1);
	width: 100%;
}
.area-visual .bg[data-show-scroll="true"] {
	filter: blur(0px) saturate(100%) contrast(100%) brightness(100%);
	transform: scale(1);
}
.area-visual .title {
	width: 100%;
	text-align: center;
	text-shadow: 5px 5px 4px rgba(102, 102, 102, 0.65 );
	font-family: "リュウミン R-KL", serif;
	font-size: 2.2666vw;
	line-height: 1.2;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 0;
	transition-delay: 640ms;
	transform: translateY(-50%);
}
.area-visual--concept .title {
	transform: translateY(-20%);
}
.area-visual .title small {
	display: block;
	margin-top: 2em;
	font-size: 0.611em;
	line-height: 1.4;
}

.area-visual .title2 {
	width: 100%;
	text-align: center;
	text-shadow: 5px 5px 4px rgba(102, 102, 102, 0.65 );
	font-family: "リュウミン R-KL", serif;
	font-size: 2.8333vw;
	line-height: 1.2;
	color: #fff;
	position: absolute;
	top: 40%;
	left: 0;
	transition-delay: 640ms;
	transform: translateY(-50%);
}

.area-visual .subtitle {
	width: 100%;
	text-align: center;
	text-shadow: 5px 5px 4px rgba(102, 102, 102, 0.65 );
	font-family: "リュウミン R-KL", serif;
	font-size: 1.5vw;
	line-height: 1.2;
	color: #fff;
	position: absolute;
	top: 75%;
	left: 0;
	transition-delay: 640ms;
	transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
	.area-visual .title {
		width: 100%;
		text-shadow: 2px 2px 2px rgba(102, 102, 102, 0.65 );
		font-size: 6vw;
		line-height: 1.3;
	}
	.area-visual--concept .title {
		transform: translateY(-25%);
	}
}

/*
	.area-news
=========================================*/
.area-news {
	background: #f0f0e1;
	padding: 0 30px;
}
.area-news .area-wrap {
	max-width: 1250px;
}
.area-news .page {
	padding: 50px 0;
}
.area-news .page ol {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.area-news .page ol a {
	display: flex;
	align-items: center;
	text-decoration: none;
	font-size: 1.625em;
	color: #1f1f1f;
}
.area-news .page ol a.prev::before {
	content: "▲";
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 54px;
	height: 54px;
	padding-bottom: 0.125em;
	margin-right: 12px;
	border: 2px solid;
	border-radius: 25px;
	font-size: 36px;
	color: #a4a495;
	transform: rotate(-90deg);
}
.area-news .page ol a.next::after {
	content: "▲";
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 54px;
	height: 54px;
	padding-bottom: 0.125em;
	margin-left: 12px;
	border: 2px solid;
	border-radius: 25px;
	font-size: 36px;
	color: #a4a495;
	transform: rotate(90deg);
}
.area-news .list {
	margin: 36px 0 70px;
}
.area-news .list ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.area-news .list ul::after {
	content: "";
	display: block;
	flex-basis: 380px;
}
.area-news .list ul li {
	flex-basis: 380px;
	margin-bottom: 70px;
}
.area-news .list ul li a {
	background: #fff;
	box-shadow: 8px 8px 6px rgba(189, 189, 174, 0.65);
	box-sizing: border-box;
	display: block;
	height: 100%;
	padding: 26px;
	border-radius: 3px;
	text-decoration: none;
	overflow: hidden;
}
.area-news .list ul li a .thumbnail {
	margin: -26px -26px 0;
}
/*.area-news .list ul li a .thumbnail::after {
	content: "▲";
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 110px;
	height: 110px;
	padding-bottom: 0.125em;
	border: 5px solid rgba(255, 255, 255, 0.54);
	border-radius: 110px;
	font-size: 55px;
	line-height: 1;
	color: rgba(255, 255, 255, 0.75);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(90deg);
}*/
.area-news .list ul li a .date {
	margin: 10px -10px;
	padding: 8px 0;
	border-bottom: 1px solid #bdbdae;
	text-align: center;
	font-size: 1.25em;
}
.area-news .list ul li a .subject {
	margin-top: 0.5em;
	font-family: "A1 Mincho", serif;
	font-size: 1.5em;
	line-height: 1.2;
}
.area-news .list ul li a .desc {
	margin-top: 0.5em;
	font-size: 1.1875em;
	line-height: 1.4;
}
.area-news .article {
	background: #fff;
	padding: 65px;
}
.area-news .article .image {
	margin: -65px -65px 0;
	text-align: center;
}
.area-news .article .date {
	width: 340px;
	margin: 1.5em auto 0;
	padding-bottom: 0.5em;
	border-bottom: 1px solid #bdbdae;
	text-align: center;
	font-size: 1.375em;
}
.area-news .article .subject {
	margin: 1.25em 0 0;
	font-family: "A1 Mincho", serif;
	font-size: 1.875em;
	line-height: 1.4;
}
.area-news .article .body {
	margin: 1.5em 0 0;
	font-size: 1.1875em;
	line-height: 1.7;
}
@media screen and (max-width: 767px) {
	.area-news {
		padding: 0 16px;
	}
	.area-news .page {
		padding: 15px 0;
	}
	.area-news .page ol a {
		font-size: 1em;
	}
	.area-news .page ol a.prev::before {
		width: 32px;
		height: 32px;
		margin-right: 8px;
		border: 1px solid;
		font-size: 22px;
	}
	.area-news .page ol a.next::after {
		width: 32px;
		height: 32px;
		margin-left: 8px;
		border: 1px solid;
		font-size: 22px;
	}
	.area-news .list {
		margin: 18px 0 0;
	}
	.area-news .list ul {
		display: block;
		width: 323px;
		margin: auto;
	}
	.area-news .list ul::after {
		content: none;
	}
	.area-news .list ul li {
		margin-bottom: 24px;
	}
	.area-news .list ul li a {
		box-shadow: 4px 4px 3px rgba(189, 189, 174, 0.65);
		padding: 13px;
	}
	.area-news .list ul li a .thumbnail {
		margin: -13px -13px 0;
	}
	/*.area-news .list ul li a .thumbnail::after {
		width: 83px;
		height: 83px;
		border-width: 4px;
		font-size: 42px;
	}*/
	.area-news .list ul li a .date {
		width: 170px;
		margin: 6px auto;
		padding: 4px 0;
		font-size: 0.75em;
	}
	.area-news .list ul li a .subject {
		font-size: 0.8125em;
		line-height: 1.3;
	}
	.area-news .list ul li a .desc {
		font-size: 0.625em;
	}
	.area-news .article {
		padding: 14px;
	}
	.area-news .article .image {
		margin: -14px -14px 0;
	}
	.area-news .article .date {
		width: 170px;
		font-size: 0.9375em;
	}
	.area-news .article .subject {
		font-size: 1em;
		line-height: 1.5;
	}
	.area-news .article .body {
		font-size: 0.8125em;
	}
	
}

/*
	.area-outline
=========================================*/
.area-outline {
	background: #f0f0e1;
	padding: 74px 30px 230px;
}
.area-outline .area-wrap {
	background: #fff;
	box-shadow: 8px 8px 6px rgba(189, 189, 174, 0.65);
	max-width: 1250px;
	padding: 60px 74px 80px;
	border-radius: 6px;
}
.area-outline .heading {
	margin-bottom: 20px;
	text-align: center;
	font-family: "A1 Mincho", serif;
	font-size: 2em;
}
.area-outline .text {
	margin-bottom: 20px;
	margin-top: 20px;
	text-align: left;
	font-family: "A1 Mincho", serif;
	font-size: 1.125em;
	line-height: 1.3;
}
.area-outline .table {
	width: 100%;
	display: table;
	border-collapse: collapse;
}
.area-outline .table dl {
	display: table-row;
	border-top: 1px solid #bdbdae;
	border-bottom: 1px solid #bdbdae;
}
.area-outline .table  dl + dl {
	border-top: none;
}
.area-outline .table dl dt {
	display: table-cell;
	min-width: 10em;
	padding: 0.5em 1em;
	font-size: 1.5em;
	line-height: 1.4;
	color: #001b6a;
}
.area-outline .table dl dd {
	display: table-cell;
	padding: 0.5em 1em;
	font-size: 1.5em;
	line-height: 1.4;
}
.area-outline .table dl dd small {
	display: block;
	margin-top: 0.5em;
	font-size: 0.75em;
	line-height: 1.2;
}

.area-outline div#outline1,
.area-outline div#outline2,
.area-outline div#outline3{
    padding-top: 300px;
    margin-top: -250px;
}


@media screen and (max-width: 767px) {
	.area-outline {
		padding: 15px 15px 30px;
	}
	.area-outline .area-wrap {
		box-shadow: 4px 4px 3px rgba(189, 189, 174, 0.65);
		padding: 28px 20px 30px;
	}
	.area-outline .heading {
		margin-bottom: 15px;
		font-size: 1em;
	}
	.area-outline .text {
		font-size: 0.7em;
	}
	.area-outline .table {
		display: block;
	}
	.area-outline .table dl {
		display: block;
	}
	.area-outline .table dl dt {
		display: block;
		min-width: 0;
		padding: 0.5em 0.5em 0;
		font-size: 0.875em;
	}
	.area-outline .table dl dd {
		display: block;
		padding: 0.5em;
		font-size: 0.875em;
	}
	.area-outline .table dl dd small {
		margin-top: 0.5em;
		font-size: 0.643em;
		line-height: 1.4;
	}

    .area-outline div#outline1,
    .area-outline div#outline2,
    .area-outline div#outline3{
        padding-top: 90px;
        margin-top: -40px;
    }

}

/*
	.area-house_design-intro
=========================================*/
.area-house_design-intro {
	padding: 2em 2em 4em;
	text-align: center;
}
.area-house_design-intro .area-wrap {
	max-width: 1185px;
}
.area-house_design-intro .heading {
	margin-top: 1em;
	font-family: "A1 Mincho", serif;
	font-size: 3.25em;
	line-height: 1.5;
}
.area-house_design-intro p {
	margin-top: 1em;
	font-size: 1.625em;
	line-height: 2;
}
@media screen and (max-width: 767px) {
	.area-house_design-intro {
		font-size: 0.4em;
	}
	.area-house_design-intro .heading {
		font-size: 3em;
	}
}

/*
	.area-house_design-plan
=========================================*/
.area-house_design-plan {
	background: #e7eff4;
	margin: 40px 0 0;
	padding: 40px 0;
}
.area-house_design-plan .area-wrap {
	box-sizing: border-box;
	max-width: 1185px;
}
.area-house_design-plan .heading {
	display: flex;
	align-items: center;
	font-size: 2.375em;
	line-height: 1.2;
}
.area-house_design-plan .heading .area {
	background: #a8b8d3;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 125px;
	height: 125px;
	margin-right: 30px;
	color: #fff;
	font-size: 0.55em;
	text-align: center;
}
.area-house_design-plan--2 .heading .area {
	background: #c9c570;
}
.area-house_design-plan .photos {
	margin-top: 2em;
}
.area-house_design-plan .photos ul {
	display: flex;
	justify-content: center;
}
.area-house_design-plan .photos ul li + li {
	margin-left: 40px;
}
.area-house_design-plan .outline {
	margin-top: 2em;
}
.area-house_design-plan .outline h3 {
	font-size: 2.375em;
	line-height: 1.5;
}
.area-house_design-plan .outline ul {
	display: flex;
	flex-wrap: wrap;
	max-width: 50%;
	margin: 0 0 0 -1em;
	font-size: 1.375em;
	line-height: 1.5;
}
.area-house_design-plan .outline ul li {
	margin: 0.25em 0 0 1em;
}
.area-house_design-plan .outline ul li::before {
	content: "■";
	color: #a7b8d2;
}
.area-house_design-plan--2 .outline ul li::before {
	color: #c9c570;
}
.area-house_design-plan .comment {
	margin-top: 2em;
	text-align: center;
	font-size: 1.75em;
	line-height: 1.5;
}
.area-house_design-plan .plans {
	margin-top: 2em;
}
.area-house_design-plan .plans ul {
	display: flex;
	flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
	.area-house_design-plan {
		margin: 10px;
		padding: 10px;
	}
	.area-house_design-plan .heading {
		font-size: 0.8125em;
	}
	.area-house_design-plan .heading .area {
		width: 61px;
		height: 61px;
		margin-right: 10px;
	}
	.area-house_design-plan .photos {
		margin-top: 10px;
	}
	.area-house_design-plan .photos ul {
		display: block;
	}
	.area-house_design-plan .photos ul li + li {
		margin: 10px 0 0;
	}
	.area-house_design-plan .outline {
		margin-top: 1em;
	}
	.area-house_design-plan .outline h3 {
		font-size: 0.875em;
	}
	.area-house_design-plan .outline ul {
		max-width: none;
		font-size: 0.53125em;
	}
	.area-house_design-plan .outline ul li {
		max-width: none;
		margin-right: 1em;
	}
	.area-house_design-plan .comment {
		font-size: 0.625em;
	}
}

/*
	.area-house_design-exterior
=========================================*/
.area-house_design-exterior {
	background: #f0f0e1;
	padding: 40px 30px 230px;
}
.area-house_design-exterior .area-wrap {
	max-width: 1185px;
}
.area-house_design-exterior .heading {
	margin: 0 40px;
	padding-bottom: 28px;
	border-bottom: 1px solid #bdbdae;
	text-align: center;
	font-family: "A1 Mincho", serif;
	font-size: 3.25em;
	color: #79796a;
}
.area-house_design-exterior .intro {
	margin-top: 0.5em;
	text-align: center;
	font-size: 1.625em;
	line-height: 2;
}
.area-house_design-exterior .images {
	display: flex;
	justify-content: space-between;
	margin-top: 60px;
}
.area-house_design-exterior .images li {
	flex: 1;
}
.area-house_design-exterior .images li + li {
	margin-left: 128px;
}
.area-house_design-exterior .images li figure {
	display: block;
	margin: 0;
	padding: 0;
}
.area-house_design-exterior .images li figure img {
	display: block;
}
.area-house_design-exterior .images li figure figcaption {
	display: block;
	margin-top: 0.5em;
	font-size: 1.3125em;
	line-height: 1.6;
}
@media screen and (max-width: 767px) {
	.area-house_design-exterior {
		padding: 12px 20px 20px;
	}
	.area-house_design-exterior .heading {
		margin: 0 20px;
		padding-bottom: 14px;
		font-size: 1.6875em;
	}
	.area-house_design-exterior .intro {
		font-size: 0.8125em;
	}
	.area-house_design-exterior .images {
		display: block;
		margin: 15px 17px 0;
	}
	.area-house_design-exterior .images li + li {
		margin-top: 45px;
		margin-left: 0;
	}
	.area-house_design-exterior .images li figure {
		text-align: center;
	}
	.area-house_design-exterior .images li figure img {
		margin: auto;
	}
	.area-house_design-exterior .images li figure figcaption {
		display: inline-block;
		text-align: left;
		font-size: 0.71875em;
	}
	
}

/*
	.area-house_design-interior
=========================================*/
.area-house_design-interior {
	background: #fff;
	padding: 40px 30px 230px;
}
.area-house_design-interior .area-wrap {
	max-width: 1185px;
}
.area-house_design-interior .heading {
	margin: 0 40px;
	padding-bottom: 28px;
	border-bottom: 1px solid #bdbdae;
	text-align: center;
	font-family: "A1 Mincho", serif;
	font-size: 3.25em;
	color: #79796a;
}
.area-house_design-interior .intro {
	margin-top: 0.5em;
	text-align: center;
	font-size: 1.625em;
	line-height: 2;
}
.area-house_design-interior .images {
	margin-top: 60px;
}
.area-house_design-interior .images::after {
	content: "";
	display: block;
	clear: both;
}
.area-house_design-interior .images li {
	float: left;
}
.area-house_design-interior .images li:nth-child(1) {
	width: 60.42%;
	margin-bottom: 60px;
}
.area-house_design-interior .images li:nth-child(2) {
	width: 30.717%;
	margin-left: 8.27%;
	margin-bottom: 60px;
}
.area-house_design-interior .images li:nth-child(3) {
	float: none;
}
.area-house_design-interior .images li:nth-child(3) img {
	float: left;
	margin-right: 45px;
}
.area-house_design-interior .images li:nth-child(4) {
	float: right;
	width: 47.257%;
	margin-top: 70px;
}
.area-house_design-interior .images li figure {
	display: block;
	margin: 0;
	padding: 0;
}
.area-house_design-interior .images li figure img {
	display: block;
}
.area-house_design-interior .images li figure figcaption {
	display: block;
	margin-top: 0.5em;
	font-size: 1.3125em;
	line-height: 1.6;
}
@media screen and (max-width: 767px) {
	.area-house_design-interior {
		padding: 12px 20px 20px;
	}
	.area-house_design-interior .heading {
		margin: 0 20px;
		padding-bottom: 14px;
		font-size: 1.6875em;
	}
	.area-house_design-interior .intro {
		font-size: 0.8125em;
	}
	.area-house_design-interior .images {
		display: block;
		margin: 15px 17px 0;
	}
	.area-house_design-interior .images li {
		float: none;
		margin: 25px 0 0;
	}
	.area-house_design-interior .images li:nth-child(1) {
		width: auto;
		margin: 25px 0 0;
	}
	.area-house_design-interior .images li:nth-child(2) {
		width: auto;
		margin: 25px 0 0;
	}
	.area-house_design-interior .images li:nth-child(3) img {
		float: none;
		margin: 0;
	}
	.area-house_design-interior .images li:nth-child(4) {
		width: auto;
		float: none;
		margin: 25px 0 0;
	}
	
	.area-house_design-interior .images li figure figcaption {
		font-size: 0.71875em;
	}
	
}

/*
	.area-house_design-product
=========================================*/
.area-house_design-product {
	background: #fff;
	padding-bottom: 40px;
	text-align: center;
}
.area-house_design-product .area-wrap {
	max-width: 900px;
}
.area-house_design-product h2.heading {
	background: #968c87;
	border: none;
	padding: 9px 0;
	font-family: inherit;
	font-size: 1.75em;
	color: #fff;
}
.area-house_design-product figure {
	margin: 20px 0 0;
}
.area-house_design-product .heading {
	margin-top: 1em;
	margin-bottom: 0.75em;
	padding-bottom: 0.75em;
	border-bottom: 1px solid #888;
	font-family: "A1 Mincho", serif;
	font-size: 3.25em;
	line-height: 1.5;
	text-align: center;
}
.area-house_design-product .block img{
	padding: 30px 0 50px 0;
}
.area-house_design-product .block {
	border-bottom: 1px solid #888;
}
.area-house_design-product .block + .block {
	margin-top: 40px;
}

.area-house_design-product .block .text {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: left;
/*	max-width: 900px;
	padding: 0 25px 0 10px;*/
}
.area-house_design-product .block .text h2 {
	font-family: 'A1明朝', serif;
	font-size: 2.75em;
	line-height: 1.43;
	text-align: center;
	color: #255b91;
}
.area-house_design-product .block .text h3 {
	margin-top: 1em;
	font-family: 'A1明朝', serif;
	font-size: 2.5em;
	line-height: 1.43;
	text-align: center;
	background-color: #d8ebf5;
}
.area-house_design-product .block .text p {
	margin-top: 1em;
	font-size: 1.625em;
	line-height: 2;
}
.area-house_design-product .block--comfort {
}
.area-house_design-product .block--comfort::after {
	content: "";
	display: block;
	flex-grow: 1;
}
.area-house_design-product .block--comfort .text {
	order: 1;
}
.area-house_design-product .block--nature {
}
.area-house_design-product .block--nature::before {
	content: "";
	display: block;
	flex-grow: 1;
}
.area-house_design-product .block--education {
}
.area-house_design-product .block--education::after {
	content: "";
	display: block;
	flex-grow: 1;
}
.area-house_design-product .block--education .text {
	order: 1;
}
.area-house_design-product .block--notice {
	background: #fef7f2;
	display: block;
	max-width: 1280px;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 2em;
	border: 1px solid #d2b1af;
}
.area-house_design-product .block--notice::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	padding: 5px;
	border: 1px solid #bb8b8c;
	position: absolute;
	top: -6px;
	left: -6px;
}
.area-house_design-product .block--notice h3 {
	text-align: center;
	font-weight: bold;
	font-size: 1.5em;
	line-height: 1.25;
	position: relative;
}
.area-house_design-product .block--notice p {
	margin: 1em 0 0;
	font-size: 1.125em;
	line-height: 1.5;
	position: relative;
}
.area-house_design-product .block--notice ul {
	display: flex;
	flex-wrap: wrap;
	margin: 1em 0 0 1em;
	line-height: 1.5;
}
.area-house_design-product .block--notice ul li {
	width: calc(50% - 1em);
	box-sizing: border-box;
	margin: 0.5em 0 0 -1em;
	padding-left: 1em;
	text-indent: -1em;
}
.area-house_design-product .block--notice ul li::before {
	content: "◎";
}
@media screen and (max-width: 767px) {
	.area-house_design-product h2.heading {
		font-size: 0.875em;
	}
	.area-house_design-product figure {
		margin: 10px 10px 0;
	}
	.area-house_design-product .block {
		display: block;
		padding: 12px 0;
	}
	.area-house_design-product .heading {
		margin: 10px 10px 0;
		padding-bottom: 14px;
		font-size: 0.8125em;
		line-height: 1.2;
		text-align: center;
	}
	.area-house_design-product .block .text h2 {
		font-size: 1em;
	}
	.area-house_design-product .block + .block {
		margin-top: 20px;
	}
	.area-house_design-product .block .images {
		width: auto;
		margin-top: 20px;
		margin-right: 0;
	}
	.area-house_design-product .block .text {
		display: block;
		padding: 0 10px;
	}
	.area-house_design-product .block .text h3 {
		font-size: 1em;
	}
	.area-house_design-product .block .text p {
		font-size: 0.75em;
	}
	.area-house_design-product .block--comfort {
	}
	.area-house_design-product .block--comfort::after {
		content: "";
		display: block;
		flex-grow: 1;
	}
	.area-house_design-product .block--nature {
	}
	.area-house_design-product .block--nature::before {
		content: "";
		display: block;
		flex-grow: 1;
	}
	.area-house_design-product .block--notice {
		margin: 15px;
		padding: 1em;
		font-size: 0.875em;
	}
	.area-house_design-product .block--notice ul {
		display: block;
		margin: 1em 0 0;
	}
	.area-house_design-product .block--notice ul li {
		width: auto;
		margin: 0.5em 0 0;
	}
	
}

/*
	.area-home-access
=========================================*/
.area-home-access {
	background: #004284;
	padding: 27px 0;
	text-align: center;
	color: #fff;
}
.area-home-access h2 {
	font-size: 2.75em;
	line-height: 1.2;
}
.area-home-access h2 strong {
	display: inline-block;
	padding: 0 1.25em;
	margin-bottom: 0.25em;
	background: no-repeat url(/static/img/bg-h2.png);
	background-size: 425px 60px;
}
.area-home-access ul {
	display: flex;
	justify-content: center;
	font-size: 2.0625em;
}
.area-home-access ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-basis: 500px;
	margin: 16px 16px 0;
	border: 1px solid;
}
.area-home-access ul li::before {
	content: "";
	display: block;
	height: 64px;
}
.area-home-access ul li small {
	font-size: 0.727em;
}
@media screen and (max-width: 767px) {
	.area-home-access h2 {
		font-size: 1.5625em;
	}
	.area-home-access ul {
		display: block;
		margin-top: 1em;
		font-size: 1em;
	}
	.area-home-access ul li::before {
		height: 32px;
	}
	.area-home-access ul li {
		margin: 8px 64px 0;
	}
	.area-home-access ul li small {
		font-size: 0.75em;
	}
	.area-home-access h2 strong {
		background-size: 245px 30px;
	}
}

/*
	.area-home-catalog
=========================================*/
.area-home-catalog {
	background: #C7B48F;
	color: #fff;
}
.area-home-catalog::before {
	content: "";
	background: #C19D82;
	display: block;
	width: 50%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
}
.area-home-catalog::after {
	content: "";
	display: block;
	height: 100%;
	border-left: 40px solid #C7B48F;
	border-right: 40px solid #C19D82;
	position: absolute;
	top: 0;
	left: calc(50% - 40px);
	transform: skewX(-35.5deg);
}
.area-home-catalog dl {
	display: flex;
	align-items: center;
	font-size: 2.375em;
	z-index: 1;
}
.area-home-catalog dl::before {
	content: "";
	display: block;
	height: 100px;
}
.area-home-catalog dl dt {
	flex: 1;
	padding: 0 1.5em;
    text-align: center;
    white-space: nowrap;
    /*font-size: 5vw;
    font-feature-settings: "palt" 1;*/
}
.area-home-catalog dl dd {
	flex: 1;
	padding: 0 1.5em;
}
.area-home-catalog dl a {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	cursor: pointer;
}
.area-home-catalog dl a .icon {
	width: 24px;
	height: 20px;
	margin-left: 16px;
	position: relative;
	overflow: hidden;
	transform: scaleX(0.9);
}
.area-home-catalog dl dd a .icon::before,
.area-home-catalog dl dd a .icon::after {
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	border-width: 3px;
	border-style: solid solid none none;
	transform: rotate(45deg);
	transform-origin: top right;
	position: absolute;
	top: 50%;
	right: 0;
}
.area-home-catalog dl dd a .icon::after {
	right: 10px;
}
@media screen and (max-width: 767px) {
	.area-home-catalog::before,
	.area-home-catalog::after {
		content: none;
	}
	.area-home-catalog dl {
		display: block;
		font-size: 1.375em;
	}
	.area-home-catalog dl::before {
		content: none;
	}
	.area-home-catalog dl dt {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.area-home-catalog dl dt::before {
		content: "";
		display: block;
		height: 60px;
	}
	.area-home-catalog dl dd {
		background: #C19D82;
		display: flex;
		justify-content: center;
	}
	.area-home-catalog dl dd::before {
		content: "";
		display: block;
		height: 60px;
	}
	.area-home-catalog dl a {
		display: flex;
		flex-grow: 1;
		justify-content: center;
	}
	.area-home-catalog dl dd a .icon {
		width: 16px;
		height: 14px;
		margin-left: 9px;
	}
	.area-home-catalog dl dd a .icon::before,
	.area-home-catalog dl dd a .icon::after {
		width: 9px;
		height: 9px;
		border-width: 2px;
	}
	.area-home-catalog dl dd a .icon::after {
		right: 7px;
	}
	
}

/*
	.area-home-notice
=========================================*/
.area-home-notice {
	padding: 1em;
	line-height: 1.4;
}
.area-home-notice .area-wrap {
	max-width: 1280px;
}
.area-home-notice h2 {
	font-size: 2.375em;
}
.area-home-notice h2 p {
	font-size: 1.4em;
}
.area-home-notice p {
	font-size: 26px;
}
@media screen and (max-width: 767px) {
	.area-home-notice {
		font-size: 0.65em;
	}
	.area-home-notice p {
		font-size: 14.4px;
	}
}

/*
	.area-feature-2
=========================================*/
.area-feature-2 {
	background: #06243f;
	padding: 42px 20px 36px;
	color: #06243f;
}
.area-feature-2 .area-wrap {
	max-width: 1280px;
}
.area-feature-2 .area-wrap p{
	margin: 30px 0 50px 0;
    color: #ffffff;
	text-align: center;
	font-size: 1.625em;
	line-height: 2;
	text-decoration: none;
}
.area-feature-2 .area-wrap a{
	text-decoration: none;
}
.area-feature-2 .area-wrap a > span {
	display: inline-block;
}
.area-feature-2 ul {
	display: flex;
	flex-wrap: wrap;
	margin: -34px 0 0 -48px;
}
.area-feature-2 ul li {
	width: calc(100% / 2 - 48px);
	margin: 34px 0 0 48px;
    background: #ffffff;
}
.area-feature-2 ul li:last-child {
	width:100%;
}
.area-feature-2 ul li a {
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid;
	text-align: center;
	text-decoration: none;
	font-size: 1.625em;
	line-height: 1.2;
	height: 110px;
}
.area-feature-2 ul li a::before {
	content: "";
	display: block;
	height: 80px;
}
@media screen and (max-width: 767px) {
	.area-feature-2 {
		padding: 18px 25px;
	}
	.area-feature-2 ul {
		display: block;
		height: auto;
		margin: -18px 0 0 0;
	}
	.area-feature-2 ul li {
		width: 300px;
		margin: 18px auto 0;
	}
	.area-feature-2 ul li:last-child {
		width: 300px;
		margin: 18px auto 0;
	}
	.area-feature-2 ul li a {
		font-size: 0.95em;
		height:unset;
	}
	.area-feature-2 ul li a::before {
		height: 46px;
	}
	.area-feature-2 .area-wrap p{
		margin: 10px 0 30px 0;
		font-size: 0.9em;
		line-height: 2;
	}
}

/*
	.area-feature
=========================================*/
.area-feature {
	background: #06243f;
	padding: 42px 20px 36px;
	color: #fff;
}
.area-feature ul {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	height: calc(2.5em + 190px);
	margin: -26px 0 0 -28px;
}
.area-feature ul li {
	width: calc(100% / 3 - 28px);
	margin: 26px 0 0 28px;
}
.area-feature ul li a {
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid;
	text-align: center;
	text-decoration: none;
	font-size: 1.75em;
	transition: opacity 640ms;
}
.area-feature ul li a:active {
	opacity: 0.5;
}
.area-feature ul li a::before {
	content: "";
	display: block;
	height: 80px;
}
.area-feature ul li a.charm {
	background: url(../img/bg-charm.png) 50% 50%;
	background-size: cover;
	border: none;
}
.area-feature ul li a.charm::after {
	content: "";
	width: calc(100% - 14px);
	height: calc(100% - 14px);
	border: 1px solid;
	position: absolute;
	top: 6px;
	left: 6px;
}
.area-feature ul li a.youtube {
	background: #3a62ad;
	border: 7px solid #24437e;
}
.area-feature ul li a.youtube::before {
	height: 70px;
}
.area-feature ul li a.youtube img {
	margin-right: 16px;
}
@media screen and (max-width: 767px) {
	.area-feature {
		padding: 26px 30px;
	}
	.area-feature ul {
		display: block;
		height: auto;
		margin: -26px 0 0 0;
	}
	.area-feature ul li {
		width: 300px;
		margin: 30px auto 0 auto;
	}
	.area-feature ul li a {
		font-size: 1em;
	}
	.area-feature ul li a::before {
		height: 40px;
	}
	.area-feature ul li a.charm::after {
		width: calc(100% - 8px);
		height: calc(100% - 8px);
		top: 3px;
		left: 3px;
	}
	.area-feature ul li a.youtube {
		border-width: 3px;
	}
	.area-feature ul li a.youtube::before {
		height: 34px;
	}
	.area-feature ul li a.youtube img {
		height: 20px;
		margin-right: 8px;
	}
}

/*
	.area-entry
=========================================*/
.area-entry {
	background: #659ea4;
	color: #fff;
}
.area-entry::before {
	content: "";
	background: #a0c2c7;
	display: block;
	width: 50%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
}
.area-entry::after {
	content: "";
	display: block;
	height: 100%;
	border-left: 40px solid #659ea4;
	border-right: 40px solid #a0c2c7;
	position: absolute;
	top: 0;
	left: calc(50% - 40px);
	transform: skewX(-35.5deg);
}
.area-entry dl {
	display: flex;
	align-items: center;
	font-size: 2.375em;
	z-index: 1;
}
.area-entry dl::before {
	content: "";
	display: block;
	height: 110px;
}
.area-entry dl dt {
	flex: 1;
	text-align: center;
}
.area-entry dl dd {
	flex: 1;
	text-align: center;
}
.area-entry dl dd a {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}
.area-entry dl dd a .icon {
	width: 24px;
	height: 20px;
	margin-left: 16px;
	position: relative;
	overflow: hidden;
	transform: scaleX(0.9);
}
.area-entry dl dd a .icon::before,
.area-entry dl dd a .icon::after {
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	border-width: 3px;
	border-style: solid solid none none;
	transform: rotate(45deg);
	transform-origin: top right;
	position: absolute;
	top: 50%;
	right: 0;
}
.area-entry dl dd a .icon::after {
	right: 10px;
}
@media screen and (max-width: 767px) {
	.area-entry::before,
	.area-entry::after {
		content: none;
	}
	.area-entry dl {
		display: block;
		font-size: 1.375em;
	}
	.area-entry dl::before {
		content: none;
	}
	.area-entry dl dt {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.area-entry dl dt::before {
		content: "";
		display: block;
		height: 60px;
	}
	.area-entry dl dd {
		background: #a0c2c7;
		display: flex;
		justify-content: center;
	}
	.area-entry dl dd::before {
		content: "";
		display: block;
		height: 60px;
	}
	.area-entry dl dd a {
		display: flex;
		flex-grow: 1;
		justify-content: center;
	}
	.area-entry dl dd a .icon {
		width: 16px;
		height: 14px;
		margin-left: 9px;
	}
	.area-entry dl dd a .icon::before,
	.area-entry dl dd a .icon::after {
		width: 9px;
		height: 9px;
		border-width: 2px;
	}
	.area-entry dl dd a .icon::after {
		right: 7px;
	}
	
}

/*
	.area-information
=========================================*/
.area-information {
	background: #f0f0e1;
	padding: 75px 30px;
}
.area-information .area-wrap {
	max-width: 1320px;
}
.area-information .heading {
	width: 200px;
	margin: 0 auto 38px;
}
.area-information .heading .wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 16px;
	border: 1px solid #232323;
	text-align: center;
	font-size: 1.3125em;
	color: #212121;
}
.area-information .heading .wrap::before {
	content: "";
	display: block;
	height: 38px;
}
.area-information ul {
	display: flex;
	flex-wrap: wrap;
	margin-left: -48px;
}
.area-information ul li {
	width: calc(100% / 3 - 48px);
	margin: 0 0 48px 48px;
}
.area-information ul li a {
	text-decoration: none;
}
.area-information ul li a img + dl {
	margin-top: 1.5em;
}
.area-information ul li a dl dt {
	padding: 0 12px 10px;
	border-bottom: 1px solid #bdbdae;
	font-size: 1.375em;
	color: #222;
}
.area-information ul li a dl dd {
	padding: 10px 12px 0;
	font-size: 1.5em;
	line-height: 1.45;
	color: #333;
}
@media screen and (max-width: 767px) {
	.area-information {
		padding: 15px 16px 25px;
	}
	.area-information .area-wrap {
		display: block;
	}
	.area-information .heading {
		width: 124px;
		margin: auto;
	}
	.area-information .heading .wrap {
		margin-top: 9px;
		font-size: 0.9375em;
	}
	.area-information .heading .wrap::before {
		height: 21px;
	}
	.area-information ul {
		display: block;
		margin-top: 25px;
		margin-left: 0;
	}
	.area-information ul li {
		width: auto;
		margin: 0;
	}
	.area-information ul li + li {
		margin-top: 24px;
	}
	.area-information ul li a img + dl {
		margin-top: 1em;
	}
	.area-information ul li a dl dt {
		padding: 0 6px 5px;
		font-size: 0.875em;
	}
	.area-information ul li a dl dd {
		padding: 5px 6px 0;
		font-size: 0.9375em;
	}
}

/*
	.area-access-smart
=========================================*/
.area-access-smart {
	background: #fff;
	text-align: center;
}
.area-access-smart .area-wrap {
	max-width: 1400px;
	padding: 20px 0 40px;
}
.area-access-smart .heading {
	margin-bottom: 30px;
}
.area-access-smart .intro {
	font-size: 1.625em;
	line-height: 2;
}
.area-access-smart .images ul {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 2fr 20px 1fr 20px 1fr;
	-ms-grid-rows: auto 20px auto;
	grid-template-columns: 2fr 1fr 1fr;
	grid-gap: 20px;
}
.area-access-smart .images ul li:first-child {
	-ms-grid-column: 1;
	-ms-grid-row: 1;
	-ms-grid-row-span: 5;
	grid-row: 1 / 3;
	margin: 0;
}
.area-access-smart .images ul li:nth-child(2) {
	-ms-grid-column: 3;
	-ms-grid-row: 1;
}
.area-access-smart .images ul li:nth-child(3) {
	-ms-grid-column: 5;
	-ms-grid-row: 1;
}
.area-access-smart .images ul li:nth-child(4) {
	-ms-grid-column: 3;
	-ms-grid-row: 3;
}
.area-access-smart .images ul li:nth-child(5) {
	-ms-grid-column: 5;
	-ms-grid-row: 3;
}
.area-access-smart .images ul li img {
	width: 100%;
}
.area-access-smart .images ul li .text {
	width: 100%;
	padding-bottom: 0.5em;
	text-align: center;
	text-shadow: 0 0 7px rgba(10, 125, 241, 0.65),
							 0 0 7px rgba(10, 125, 241, 0.65),
							 0 0 7px rgba(10, 125, 241, 0.65),
							 0 0 7px rgba(10, 125, 241, 0.65);
	font-size: 2vw;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
	.area-access-smart .area-wrap {
		display: block;
		padding: 20px 10px;
	}
	.area-access-smart .heading {
		margin-right: 0;
		text-align: center;
		zoom: 0.5;
	}
	.area-access-smart p.intro {
		font-size: 0.8125em;
	}
	.area-access-smart .images ul {
		grid-template-columns: 1fr 1fr;
		grid-gap: 10px;
	}
	.area-access-smart .images ul li:first-child {
		grid-column: 1 / 3;
		grid-row: 1 / 3;
	}
	.area-access-smart .images ul li .text {
		font-size: 4vw;
	}
}

/*
	.area-access
=========================================*/
.area-access {
	padding: 42px 0 55px;
}
.area-access .area-wrap {
	max-width: 1044px;
}
.area-access .heading {
	margin: auto;
	padding-bottom: 0.5em;
	text-align: center;
	font-family: 'A1明朝', serif;
	font-size: 2.625em;
	color: #7796be;
}
.area-access .heading::after {
	content: "";
	display: block;
	width: 330px;
	border: 1px solid #c3d1e2;
	position: absolute;
	bottom: 0;
	left: calc(50% - 165px);
}
.area-access .lead {
	margin: 1em auto 0;
	text-align: center;
	font-size: 1.625em;
	line-height: 1.2;
}
.area-access .intro {
	margin: 1em auto 0;
	text-align: center;
	font-size: 1.125em;
	line-height: 2;
}

.area-access .images2 {
	margin-top: 30px;
}
.area-access .images2 ul {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 2fr 20px 1fr 20px 1fr;
	-ms-grid-rows: auto 20px auto;
	grid-template-columns: 2fr 1fr 1fr;
	grid-gap: 20px;
}
.area-access .images2 ul li:first-child {
	-ms-grid-column: 1;
	-ms-grid-row: 1;
	-ms-grid-row-span: 5;
	grid-row: 1 / 3;
	margin: 0;
}
.area-access .images2 ul li:nth-child(2) {
	-ms-grid-column: 3;
	-ms-grid-row: 1;
}
.area-access .images2 ul li:nth-child(3) {
	-ms-grid-column: 5;
	-ms-grid-row: 1;
}
.area-access .images2 ul li:nth-child(4) {
	-ms-grid-column: 3;
	-ms-grid-row: 3;
}
.area-access .images2 ul li:nth-child(5) {
	-ms-grid-column: 5;
	-ms-grid-row: 3;
}
.area-access .images2 ul li img {
	width: 100%;
}
.area-access .images2 ul li .text {
	width: 100%;
	padding-bottom: 0.5em;
	text-align: center;
	text-shadow: 0 0 7px rgba(10, 125, 241, 0.65),
							 0 0 7px rgba(10, 125, 241, 0.65),
							 0 0 7px rgba(10, 125, 241, 0.65),
							 0 0 7px rgba(10, 125, 241, 0.65);
	font-size: 3vw;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
}

.area-access .images {
	margin-top: 60px;
}
.area-access .images ul {
	display: flex;
	align-items: flex-start
}
.area-access .images ul li + li {
	margin-left: 60px;
}
.area-access .route {
	display: flex;
	margin-top: 60px;
}
.area-access .route .block {
	box-sizing: border-box;
	flex: 1;
}
.area-access .route .block + .block {
	margin-left: 48px;
}
.area-access .route h3 {
	background: linear-gradient(90deg, rgba(49,114,186,1) 0%, rgba(96,166,217,1) 100%);
	padding: 8px 0;
	text-align: center;
	font-size: 2em;
	line-height: 1.1;
	color: #fff;
}
.area-access .route h3 + h3 {
	margin-top: 16px;
}
.area-access .route h3 strong {
	font-size: 1.4375em;
}
.area-access .route h4 {
	background: #c29c89;
	margin: 10px 0 0;
	padding: 8px 0;
	border: 1px solid #333;
	text-align: center;
	font-size: 2.125em;
	line-height: 1.1em;
	color: #fff;
}
.area-access .route h4 small {
	font-size: 0.823em;
}
.area-access .route h4 strong {
	font-size: 1.352em;
}
.area-access .route .timetable {
	display: flex;
	align-items: center;
	margin-top: 10px;
	border: 1px solid;
	font-size: 1.25em;
}
.area-access .route .timetable dt {
	background: #c29c89;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 1em;
	border-right: 1px solid;
	color: #fff;
}
.area-access .route .timetable dt::before {
	content: "";
	display: block;
	height: 52px;
}
.area-access .route .timetable dd {
	width: 1.5em;
	margin-left: 1em;
	text-align: center;
}
.area-access .route .notice {
	margin: 10px 0 0;
	font-size: 0.875em;
	line-height: 1.3;
}
.area-access .route .highway {
	padding-top: 8px;
	border-top: 2px solid #406398;
}
.area-access .route .highway dt {
	background: #748ca7;
	padding: 12px;
	text-align: center;
	font-size: 1.5em;
	line-height: 1.2;
	color: #fff;
}
.area-access .route .highway dt hr {
	display: block;
	margin: 0.5em 0;
	border: 1px solid #fff;
}
.area-access .route .highway dd {
	padding: 12px 0;
	border-bottom: 2px solid #406398;
	font-size: 1.75em;
}
.area-access .route .highway dd small {
	font-size: 0.642em;
}
.area-access .route .highway dd strong {
	font-size: 1.375em;
}
@media screen and (max-width: 767px) {
	.area-access .images2 ul li .text {
		font-size: 7vw;
	}
	.area-access {
		padding: 15px 0 28px;
	}
	.area-access .heading {
		margin: 0 15px;
		font-size: 1.6875em;
	}
	.area-access .intro {
		padding: 0 1em;
		font-size: 0.6875em;
	}
	.area-access .images2 ul {
		grid-template-columns: 1fr 1fr;
		grid-gap: 10px;
	}
	.area-access .images2 ul li:first-child {
		grid-column: 1 / 3;
		grid-row: 1 / 3;
	}
	
	.area-access .images {
		margin-top: 0;
	}
	.area-access .images ul {
		display: block;
	}
	.area-access .images ul li {
		margin-top: 20px;
	}
	.area-access .images ul li + li {
		margin-left: 0;
	}
	.area-access .route {
		display: block;
		margin: 10px 10px 0;
	}
	.area-access .route .block {
		margin: 10px 0 0;
		padding: 0;
	}
	.area-access .route .block + .block {
		margin-left: 0;
	}
	
	.area-access .route h3 {
		font-size: 1em;
	}
	.area-access .route h4 {
		font-size: 1.125em;
	}
	.area-access .route .timetable {
		font-size: 0.6875em;
	}
	.area-access .route .timetable dt::before {
		height: 28px;
	}
	.area-access .route .notice {
		font-size: 0.4375em;
	}
	.area-access .route .highway dt {
		padding: 8px;
		font-size: 0.83em;
	}
	.area-access .route .highway dd {
		font-size: 0.956em;
	}
}

/*
	.area-access-train
=========================================*/
.area-access-train {
	background: #fff;
	padding: 42px 0 55px;
}
.area-access-train .area-wrap {
	max-width: 1600px;
}
.area-access-train .heading {
	border-bottom: 1px solid #bdbdae;
	max-width: 1100px;
	margin: auto;
	padding-bottom: 0.5em;
	text-align: center;
	font-family: 'A1明朝', serif;
	font-size: 3.25em;
	color: #79796a;
}
.area-access-train .intro {
	max-width: 1100px;
	margin: 1em auto 0;
	text-align: center;
	font-size: 1.625em;
	line-height: 2;
}
.area-access-train .images {
	margin-top: 60px;
}
.area-access-train .images ul {
	display: flex;
	align-items: flex-start
}
.area-access-train .images ul li + li {
	margin-left: 60px;
}
.area-access-train .route {
	margin-top: 60px;
}
.area-access-train .route .number {
	display: flex;
	align-items: center;
}
.area-access-train .route .number dt {
	font-size: 1.5625em;
}
.area-access-train .route .number dt:first-child {
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 2.828px 2.828px 2px rgba(136, 136, 136, 0.65);
	width: 2.16em;
	height: 2.16em;
	border: 1px solid;
	border-radius: 3px;
	margin-right: 1em;
}
.area-access-train .route--morning .number dt:first-child {
	border-color: #d96e01;
	color: #d96d00;
}
.area-access-train .route--night .number dt:first-child {
	border-color: #350367;
	color: #46008c;
}
.area-access-train .route .number dd {
	font-size: 2.75em;
	color: #b28500;
}
.area-access-train .route .timetable {
	display: flex;
	align-items: center;
	margin-top: 20px;
	border: 1px solid;
	font-size: 1.5625em;
}
.area-access-train .route .timetable dt {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 10em;
	padding: 0 0.6em;
	text-align: center;
	border-right: 1px solid;
}
.area-access-train .route .timetable dt::before {
	content: "";
	display: block;
	height: 70px;
}
.area-access-train .route .timetable dd {
	margin-left: 1em;
}
.area-access-train .route--morning .timetable,
.area-access-train .route--morning .timetable dt {
	border-color: #d96e01;
}
.area-access-train .route--night .timetable,
.area-access-train .route--night .timetable dt {
	border-color: #350367;
}
@media screen and (max-width: 767px) {
	.area-access-train {
		padding: 15px 0 28px;
	}
	.area-access-train .heading {
		margin: 0 15px;
		font-size: 1.6875em;
	}
	.area-access-train .intro {
		padding: 0 1em;
		font-size: 0.8125em;
	}
	.area-access-train .images {
		margin-top: 0;
	}
	.area-access-train .images ul {
		display: block;
	}
	.area-access-train .images ul li {
		margin-top: 20px;
	}
	.area-access-train .images ul li + li {
		margin-left: 0;
	}
	.area-access-train .route {
		margin: 10px 20px 0;
	}
	.area-access-train .route .number {
		display: grid;
		grid-template-columns: auto auto 1fr;
		grid-template-rows: 1fr 1fr 1fr;
	}
	.area-access-train .route .number dt {
		display: flex;
		align-items: center;
		font-size: 0.78125em;
	}
	.area-access-train .route .number dt::before {
		content: "";
		display: block;
		height: 2.16em;
	}
	.area-access-train .route .number dt:first-child {
		grid-row: 1 / 5;
		margin-bottom: auto;
	}
	.area-access-train .route .number dt:nth-child(2) {
		grid-column: 2 / 4;
	}
	.area-access-train .route .number dd {
		font-size: 1.375em;
	}
	.area-access-train .route .timetable {
		margin-top: 10px;
		font-size: 0.78125em;
	}
	.area-access-train .route .timetable dt {
		min-width: 10em;
		padding: 0;
	}
	.area-access-train .route .timetable dt::before {
		height: 35px;
	}
	.area-access-train .route .timetable dd {
		margin-left: 0.5em;
		flex-grow: 1;
	}
}

/*
	.area-access-car
=========================================*/
.area-access-car {
	background: #f0f0e1;
	padding: 42px 0 55px;
}
.area-access-car .area-wrap {
	max-width: 1600px;
}
.area-access-car .heading {
	border-bottom: 1px solid #bdbdae;
	max-width: 1100px;
	margin: auto;
	padding-bottom: 0.5em;
	text-align: center;
	font-family: 'A1明朝', serif;
	font-size: 3.25em;
	color: #79796a;
}
.area-access-car .intro {
	max-width: 1100px;
	margin: 1em auto 0;
	text-align: center;
	font-size: 1.625em;
	line-height: 2;
}
.area-access-car .images {
	margin-top: 60px;
}
.area-access-car .images ul {
	display: flex;
	align-items: flex-start
}
.area-access-car .images ul li + li {
	margin-left: 60px;
}
.area-access-car .route {
	background: #ddd;
	display: flex;
	flex-wrap: wrap;
	margin-top: 48px;
	padding: 10px 20px;
}
.area-access-car .route p {
	flex-grow: 1;
	width: 100%;
	font-size: 2.375em;
	line-height: 1.32;
}
.area-access-car .route p small {
	font-size: 0.657em;
	line-height: 1.2;
}
.area-access-car .route dl {
	display: flex;
	align-items: center;
	font-size: 2.875em;
	line-height: 1.32;
}
.area-access-car .route dl dd {
	margin-left: 0.5em;
	margin-right: 1em;
	color: #b28500;
}
@media screen and (max-width: 767px) {
	.area-access-car {
		padding: 15px 0 28px;
	}
	.area-access-car .heading {
		margin: 0 15px;
		font-size: 1.6875em;
	}
	.area-access-car .intro {
		padding: 0 1em;
		font-size: 0.8125em;
	}
	.area-access-car .images {
		margin-top: 0;
	}
	.area-access-car .images ul {
		display: block;
	}
	.area-access-car .images ul li {
		margin-top: 20px;
	}
	.area-access-car .images ul li + li {
		margin-left: 0;
	}
	.area-access-car .route {
		display: block;
		margin-top: 16px;
		padding: 8px;
	}
	.area-access-car .route p {
		width: auto;
		font-size: 1.1875em;
		line-height: 1.45;
	}
	.area-access-car .route dl {
		flex-wrap: wrap;
		font-size: 1.4375em;
		line-height: 1.45;
	}
	.area-access-car .route dl dd {
		margin: 0;
	}
	
}

/*
	.area-area_design-tab
=========================================*/
.area-area_design-tab {
	height: 0;
	overflow: hidden;
	opacity: 0;
	transition: opacity 1280ms;
}
.area-area_design-tab--show {
	height: auto;
	display: block;
	opacity: 1;
}

/*
	.area-area_design-intro
=========================================*/
.area-area_design-intro {
	background: url(../img/bg-concept-intro.jpg) 50% 50% no-repeat;
	background-size: cover;
	padding: 60px 30px 30px;
	text-align: center;
	font-size: 1.625em;
	line-height: 2;
}
.area-area_design-intro--life_design {
	background: none;
}
.area-area_design-intro .text {
	margin-bottom: 2em;
}
.area-area_design-intro .area-wrap {
	max-width: 1600px;
}
.area-area_design-intro .heading {
	background-image: url(/static/img/bg-area_design-pc.png);
	background-position: 0% 0%;
	background-size: 100%;
	background-repeat: no-repeat;
}
.area-area_design-intro .tab {
	display: flex;
	justify-content: center;
}
.area-area_design-intro .tab li {
	margin: 0 10px;
}
@media screen and (max-width: 767px) {
	.area-area_design-intro {
		padding: 12px 1em;
		font-size: 0.8125em;
	}
	.area-area_design-intro .heading {
		background-image: url(/static/img/bg-area_design-sp.png);
		background-position: 0% 0%;
		background-size: 100%;
		background-repeat: no-repeat;
	}
}

/*
	.area-area_design-field
=========================================*/
.area-area_design-field {
	background: #f0f0e1;
	padding: 100px 30px;
}
.area-area_design-field .area-wrap {
	max-width: 1540px;
}
.area-area_design-field ul {
	display: flex;
	flex-wrap: wrap;
	margin-top: -114px;
}
.area-area_design-field ul li {
	width: calc(50% - 62px);
	margin-top: 114px;
}
.area-area_design-field ul li:nth-child(2n) {
	margin-left: 124px;
}
.area-area_design-field ul li figure {
	display: block;
	margin: 0;
	margin-left: 110px;
	padding: 0;
}
.area-area_design-field ul li dl {
	display: flex;
	align-items: center;
	margin-top: 1.5em;
}
.area-area_design-field ul li dl::before {
	content: "";
	background: #DACC67;
	display: block;
	width: 260px;
	height: 260px;
	margin-top: -1em;
	opacity: 0.75;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.area-area_design-field ul li dl dt {
	flex-shrink: 0;
	width: 260px;
	margin-top: -1em;
	margin-right: 1em;
	text-align: center;
	font-size: 2.25em;
	line-height: 1.45;
	color: #fff;
}
.area-area_design-field ul li dl dt span{
	font-size: 0.6em;
}
.area-area_design-field ul li dl dd {
	font-size: 1.5em;
	line-height: 1.7;
	height: 230px;
}
.area-area_design-field ul li:nth-child(4n + 3) figure,
.area-area_design-field ul li:nth-child(4n + 4) figure {
	margin-left: 0;
	margin-right: 110px;
}
.area-area_design-field ul li:nth-child(4n + 3) dl::before,
.area-area_design-field ul li:nth-child(4n + 4) dl::before {
	right: 0;
	left: auto;
}
.area-area_design-field ul li:nth-child(4n + 3) dl dt,
.area-area_design-field ul li:nth-child(4n + 4) dl dt {
	order: 1;
	margin-right: 0;
	margin-left: 1em;
}
.area-area_design-field ul li:nth-child(8n + 2) dl::before {
	background: #B9D253;
}
.area-area_design-field ul li:nth-child(8n + 3) dl::before {
	background: #92A6DA;
}
.area-area_design-field ul li:nth-child(8n + 4) dl::before {
	background: #CF96AF;
}
.area-area_design-field ul li:nth-child(8n + 5) dl::before {
	background: #78B0CF;
}
.area-area_design-field ul li:nth-child(8n + 6) dl::before {
	background: #79796a;
}
.area-area_design-field ul li:nth-child(8n + 7) dl::before {
	background: #468c00;
}
.area-area_design-field ul li:nth-child(8n + 8) dl::before {
	background: #f979df;
}
@media screen and (max-width: 767px) {
	.area-area_design-field {
		padding: 14px 10px 24px;
	}
	.area-area_design-field ul {
		display: block;
		margin-top: -55px;
	}
	.area-area_design-field ul li {
		width: auto;
		margin-top: 55px;
	}
	.area-area_design-field ul li:nth-child(2n) {
		margin-left: 0;
	}
	.area-area_design-field ul li figure {
		margin-left: 55px;
	}
	.area-area_design-field ul li dl::before {
		width: 130px;
		height: 130px;
	}
	.area-area_design-field ul li dl dt {
		width: 130px;
		font-size: 1.125em;
	}
	.area-area_design-field ul li dl dd {
		font-size: 0.75em;
		height:100px;
	}
	.area-area_design-field ul li:nth-child(4n + 3) figure,
	.area-area_design-field ul li:nth-child(4n + 4) figure {
		margin-left: 0;
		margin-right: 55px;
	}
	
}

/*
	.area-area_design-community
=========================================*/
.area-area_design-community {
	background: #fff;
	padding: 60px 30px;
}
.area-area_design-community .area-wrap {
	max-width: 1575px;
}
.area-area_design-community .heading {
	text-align: center;
	background-image: url(/static/img/bg-area_design-pc.png);
	background-position: 0% 0%;
	background-size: 100%;
	background-repeat: no-repeat;
}
.area-area_design-community--community .heading {
	background: url(../img/bg-area_design-community.jpg) 50% 50% no-repeat;
	background-size: 100% 100%;
	text-align: center;
}
.area-area_design-community h3 {
	font-size: 2.75em;
	line-height: 1.43;
}
.area-area_design-community h3 .no{
	font-size: 1.75em;
}
.area-area_design-community p {
	margin-top: 1em;
	font-size: 1.625em;
	line-height: 2;
}
.area-area_design-community p + figure{
	margin-top: 1em;
}
.area-area_design-community .blocks {
	display: flex;
	margin-top: 84px;
}
.area-area_design-community .blocks .block {
	width: 50%;
}
.area-area_design-community .blocks .block + .block {
	margin-left: 95px;
}
.area-area_design-community figure {
	display: block;
	margin: 0;
	padding: 0;
}
.area-area_design-community figure figcaption {
	margin-top: 20px;
	text-align: center;
	font-size: 1.5em;
}
@media screen and (max-width: 767px) {
	.area-area_design-community {
		padding: 34px 16px;
	}
	.area-area_design-community .heading {
		zoom: 0.5;
		background-image: url(/static/img/bg-area_design-sp.png);
		background-position: 0% 0%;
		background-size: 100%;
		background-repeat: no-repeat;
	}
	.area-area_design-community--community .heading {
		background: url(../img/bg-area_design-community.jpg) 50% 50% no-repeat;
		background-size: 100% 100%;
	}
	.area-area_design-community h3 {
		font-size: 1.375em;
		letter-spacing: -0.03em;
	}
	.area-area_design-community p {
		font-size: 0.76em;
	}
	.area-area_design-community .blocks {
		display: block;
		margin-top: 25px;
	}
	.area-area_design-community .blocks .block {
		width: auto;
	}
	.area-area_design-community .blocks .block + .block {
		margin-top: 22px;
		margin-left: 0;
	}
	.area-area_design-community figure figcaption {
		margin-top: 10px;
		font-size: 0.75em;
	}
	.area-area_design-community figure {
		margin-top: 20px;
	}
}

/*
	.area-area_design-safety
=========================================*/
.area-area_design-safety {
	background: #fff;
	padding: 60px 0;
	text-align: center;
}
.area-area_design-safety .area-wrap {
	max-width: none;
}
.area-area_design-safety h3 {
	margin-top: 0.5em;
	font-size: 2.75em;
	line-height: 1.43;
}
.area-area_design-safety p {
	margin-top: 1em;
	font-size: 1.625em;
	line-height: 2;
}
.area-area_design-safety .blocks {
	display: flex;
	margin-top: 46px;
}
.area-area_design-safety .blocks .block {
	width: 50%;
}
.area-area_design-safety .blocks .block + .block {
	margin-left: 25px;
}
.area-area_design-safety .blocks .block figure {
	display: block;
	margin: 0;
	padding: 0;
}
.area-area_design-safety .blocks .block figure img {
	width: 100%;
}
.area-area_design-safety .blocks .block figure figcaption {
	margin-top: 20px;
	text-align: center;
	font-size: 1.5em;
}
@media screen and (max-width: 767px) {
	.area-area_design-safety {
		padding: 34px 0;
	}
	.area-area_design-safety .heading {
		zoom: 0.5;
	}
	.area-area_design-safety h3 {
		font-size: 1.375em;
	}
	.area-area_design-safety p {
		font-size: 0.8125em;
	}
	.area-area_design-safety .blocks {
		display: block;
		margin-top: 25px;
	}
	.area-area_design-safety .blocks .block {
		width: auto;
	}
	.area-area_design-safety .blocks .block + .block {
		margin-top: 22px;
		margin-left: 0;
	}
	.area-area_design-safety .blocks .block figure figcaption {
		margin-top: 10px;
		font-size: 0.75em;
	}
	
}

/*
	.area-area_design-leader
=========================================*/
.area-area_design-leader {
	background: #f0f0e1;
	padding: 50px 30px 60px;
}
.area-area_design-leader .area-wrap {
	display: -ms-grid;
	display: grid;
	max-width: 1550px;
	-ms-grid-columns: 11fr 12fr;
	grid-template-columns: 11fr 12fr;
}
.area-area_design-leader .heading {
	-ms-grid-column: 1;
	-ms-grid-column-span: 3;
	grid-column: 1 / 4;
	margin-bottom: 80px;
	text-align: center;
	font-family: 'A1明朝', serif;
	font-size: 2.875em;
	line-height: 1.43;
}
.area-area_design-leader .leader {
	display: -ms-grid;
	display: grid;
	-ms-grid-row: 3;
	-ms-grid-column: 1;
	-ms-grid-columns: auto auto;
	grid-template-columns: auto auto;
	-ms-grid-rows: auto auto 1fr;
	grid-template-rows: auto auto 1fr;
}
.area-area_design-leader .leader .photo {
	-ms-grid-row: 1;
	-ms-grid-row-span: 3;
	grid-row: 1 / 4;
	margin-right: 28px;
}.area-area_design-leader .leader .title {
	-ms-grid-row: 1;
	-ms-grid-column: 3;
	font-size: 1.625em;
	line-height: 1.4;
}
.area-area_design-leader .leader .name {
	-ms-grid-row: 2;
	-ms-grid-column: 3;
	font-size: 3.25em;
	line-height: 1.6;
}
.area-area_design-leader .leader .career {
	-ms-grid-row: 3;
	-ms-grid-column: 3;
	font-size: 1.5em;
	line-height: 1.6;
}
.area-area_design-leader .message {
	-ms-grid-row: 3;
	-ms-grid-column: 2;
	margin-left: 3em;
	font-size: 1.625em;
	line-height: 2;
}
@media screen and (max-width: 767px) {
	.area-area_design-leader {
		padding: 16px 10px;
	}
	.area-area_design-leader .area-wrap {
		display: block;
	}
	.area-area_design-leader .heading {
		margin-bottom: 18px;
		font-size: 1.27em;
	}
	.area-area_design-leader .leader {
		display: block;
	}
	.area-area_design-leader .leader .photo {
		text-align: center;
		margin-right: 0;
		zoom: 0.5;
	}.area-area_design-leader .leader .title {
		margin-top: 16px;
		font-size: 0.8125em;
	}
	.area-area_design-leader .leader .name {
		font-size: 1.4375em;
	}
	.area-area_design-leader .leader .career {
		font-size: 0.75em;
	}
	.area-area_design-leader .message {
		margin-top: 1em;
		margin-left: 0;
		font-size: 0.8125em;
	}
	
}

/*
	.area-location-intro
=========================================*/
.area-location-intro {
	background: url(../img/bg-location-2.jpg) 0 0 no-repeat;
	padding: 70px 0 30px;
}
.area-location-intro .area-wrap {
/*	display: flex;*/
	max-width: 1470px;
	padding: 0 15px;
}
.area-location-intro .intro {
	margin-top: 1em;
	font-size: 1.625em;
	line-height: 2;
}
.area-location-intro  h3{
	margin-top: 1em;
    font-family: 'A1明朝', serif;
    font-size: 2.75em;
    line-height: 1.43;
}
.area-location-intro .text p {
    margin-top: 1em;
    font-size: 1.625em;
    line-height: 2;
}
.area-location-intro .images {
	margin-top: 15px;
}
.area-location-intro .images ul {
	display: -ms-grid;
	display: grid;
	grid-gap: 1.444vw;
	-ms-grid-columns: 2fr 1.444vw 1fr 1.444vw 1fr;
	-ms-grid-rows: 1fr 1.444vw 1fr;
	grid-template-columns: 2fr 1fr 1fr;
}
.area-location-intro .images ul li:first-child {
	-ms-grid-row: 1;
	-ms-grid-row-span: 3;
	grid-row: 1 / 3;
}.area-location-intro .images ul li:nth-child(2) {
	-ms-grid-column: 3;
	-ms-grid-row: 1;
}
.area-location-intro .images ul li:nth-child(3) {
	-ms-grid-column: 5;
	-ms-grid-row: 1;
}
.area-location-intro .images ul li:nth-child(4) {
	-ms-grid-column: 3;
	-ms-grid-row: 3;
}
.area-location-intro .images ul li:nth-child(5) {
	-ms-grid-column: 5;
	-ms-grid-row: 3;
}
.area-location-intro .images ul li img {
	width: 100%;
}
@media screen and (max-width: 767px) {
	.area-location-intro {
		padding: 20px 0 12px;
	}
	.area-location-intro .area-wrap {
		display: block;
	}
	.area-location-intro .heading {
		zoom: 0.5;
	}
	.area-location-intro .intro {
		margin-top: 14px;
		margin-left: 0;
		font-size: 0.8125em;
	}
	.area-location-intro .images {
		margin-top: 30px;
	}
	.area-location-intro .images ul {
		grid-gap: 3.2vw;
		-ms-grid-columns: 1fr 3.2vw 1fr;
		-ms-grid-rows: 2fr 3.2vw 1fr 3.2vw 1fr;
		grid-template-columns: 1fr 1fr;
	}
	.area-location-intro .images ul li:first-child {
		-ms-grid-row: 1;
		-ms-grid-column-span: 3;
		-ms-grid-row-span: 1;
		grid-column: 1 / 3;
		grid-row: auto;
	}
	.area-location-intro .images ul li:nth-child(2) {
		-ms-grid-column: 1;
		-ms-grid-row: 3;
	}
	.area-location-intro .images ul li:nth-child(3) {
		-ms-grid-column: 3;
		-ms-grid-row: 3;
	}
	.area-location-intro .images ul li:nth-child(4) {
		-ms-grid-column: 1;
		-ms-grid-row: 5;
	}
	.area-location-intro .images ul li:nth-child(5) {
		-ms-grid-column: 3;
		-ms-grid-row: 5;
	}
	.area-location-intro .images ul li img {
		width: 100%;
	}
}

/*
	.area-location-feature
=========================================*/
.area-location-feature {
	padding-bottom: 40px;
}
.area-location-feature .block {
	display: flex;
	padding: 30px 0;
}
.area-location-feature .block + .block {
	margin-top: 40px;
}
.area-location-feature .block .images {
	flex-shrink: 0;
	width: calc(50% - 1.444vw);
	margin-right: 30px;
}
.area-location-feature .block .images img {
	width: 100%;
}
.area-location-feature .block .text {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 900px;
	padding: 0 110px 0 60px;
}
.area-location-feature .block .text h3 {
	margin-top: 1em;
	font-family: 'A1明朝', serif;
	font-size: 2.75em;
	line-height: 1.43;
}
.area-location-feature .block .text p {
	margin-top: 1em;
	font-size: 1.625em;
	line-height: 2;
}
.area-location-feature .block--comfort {
	background: url(../img/bg-location-1.jpg) 100% 0 no-repeat;
}
.area-location-feature .block--comfort::after {
	content: "";
	display: block;
	flex-grow: 1;
}
.area-location-feature .block--comfort .text {
	order: 1;
}
.area-location-feature .block--nature {
	background: url(../img/bg-location-2.jpg) 0 0 no-repeat;
}
.area-location-feature .block--nature::before {
	content: "";
	display: block;
	flex-grow: 1;
}
.area-location-feature .block--education {
	background: url(../img/bg-location-1.jpg) 100% 0 no-repeat;
}
.area-location-feature .block--education::after {
	content: "";
	display: block;
	flex-grow: 1;
}
.area-location-feature .block--education .text {
	order: 1;
}
.area-location-feature .block--notice {
	background: #fef7f2;
	display: block;
	max-width: 1280px;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 2em;
	border: 1px solid #d2b1af;
}
.area-location-feature .block--notice::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	padding: 5px;
	border: 1px solid #bb8b8c;
	position: absolute;
	top: -6px;
	left: -6px;
}
.area-location-feature .block--notice h3 {
	text-align: center;
	font-weight: bold;
	font-size: 1.5em;
	line-height: 1.25;
	position: relative;
}
.area-location-feature .block--notice figure {
	display: flex;
	align-items: flex-start;
	margin: 1em 0 0;
}
.area-location-feature .block--notice figure img {
	max-width: 400px;
}
.area-location-feature .block--notice figure figcaption {
	margin: 0 0 0 1.5em;
}
.area-location-feature .block--notice p {
	font-size: 1.125em;
	line-height: 1.5;
	position: relative;
}
.area-location-feature .block--notice ul {
	display: flex;
	flex-wrap: wrap;
	margin: 1em 0 0 1em;
	line-height: 1.5;
}
.area-location-feature .block--notice ul li {
	width: calc(50% - 1em);
	box-sizing: border-box;
	margin: 0.5em 0 0 -1em;
	padding-left: 1em;
	text-indent: -1em;
}
.area-location-feature .block--notice ul li::before {
	content: "◎";
}
.area-location-feature .block--chiba {
	background: #fffbda;
	display: block;
	max-width: 1280px;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 2em;
}
.area-location-feature .block--chiba h3 {
	font-weight: bold;
	font-size: 1.5em;
	line-height: 1.25;
	position: relative;
}
.area-location-feature .block--chiba figure {
	display: flex;
	align-items: flex-start;
	margin: 0;
}
.area-location-feature .block--chiba figure figcaption {
	margin: 0 0 0 1.5em;
}
.area-location-feature .block--chiba p {
	margin: 1em 0 0;
	font-size: 1.125em;
	line-height: 1.5;
	position: relative;
}

@media screen and (max-width: 767px) {
	.area-location-feature .block {
		display: block;
		padding: 12px 0;
	}
	.area-location-feature .block + .block {
		margin-top: 20px;
	}
	.area-location-feature .block .images {
		width: auto;
		margin-top: 20px;
		margin-right: 0;
	}
	.area-location-feature .block .text {
		display: block;
		padding: 0 20px;
	}
	.area-location-feature .block .text h2 {
		zoom: 0.5;
	}
	.area-location-feature .block .text h3 {
		font-size: 1.375em;
	}
	.area-location-feature .block .text p {
		font-size: 0.8125em;
	}
	.area-location-feature .block--comfort {
		background: url(../img/bg-location-1.jpg) 100% 0 no-repeat;
	}
	.area-location-feature .block--comfort::after {
		content: "";
		display: block;
		flex-grow: 1;
	}
	.area-location-feature .block--nature {
		background: url(../img/bg-location-2.jpg) 0 0 no-repeat;
	}
	.area-location-feature .block--nature::before {
		content: "";
		display: block;
		flex-grow: 1;
	}
	.area-location-feature .block--notice {
		margin: 15px;
		padding: 1em;
		font-size: 0.875em;
	}
	.area-location-feature .block--notice figure {
		display: block;
	}
	.area-location-feature .block--notice figure figcaption {
		margin: 1em 0 0;
	}
	.area-location-feature .block--notice figure img {
		max-width: 100%;
	}
	.area-location-feature .block--notice ul {
		display: block;
		margin: 1em 0 0;
	}
	.area-location-feature .block--notice ul li {
		width: auto;
		margin: 0.5em 0 0;
	}
	.area-location-feature .block--chiba {
		margin: 15px;
		padding: 1em;
		font-size: 0.875em;
	}
	.area-location-feature .block--chiba figure {
		flex-direction: column;
		align-items: center;
	}
	.area-location-feature .block--chiba figure img {
		order: 1;
		margin: 1em 0 0;
	}
	.area-location-feature .block--chiba figure figcaption {
		display: contents;
	}
	.area-location-feature .block--chiba figure h3 {
		order: 0;
		text-align: center;
	}
	.area-location-feature .block--chiba figure p {
		order: 2;
	}
}

/*
	.area-location-information
=========================================*/
.area-location-information {
	background: #fff;
	padding: 90px 30px 60px;
	overflow: hidden;
}
.area-location-information .heading {
	text-align: center;
	font-family: 'A1明朝', serif;
	font-size: 3.25em;
	color: #79796a;
}
.area-location-information .map {
	margin-top: 80px;
}
.area-location-information .links {
	max-width: 1132px;
	margin: 45px auto;
}
.area-location-information .links ul {
	display: flex;
}
.area-location-information .links ul li + li {
	margin-left: 54px;
}
.area-location-information .information {
	max-width: 1132px;
	margin: 35px auto;
}
.area-location-information .information .control {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 72px;
	position: absolute;
	z-index: 1;
}
.area-location-information .information .control .prev,
.area-location-information .information .control .next {
	display: flex;
	align-items: center;
	height: 28px;
	overflow: hidden;
	cursor: pointer;
}
.area-location-information .information .control .next::before,
.area-location-information .information .control .prev::before {
	content: "";
	display: block;
	width: 21px;
	height: 21px;
	border-style: none none solid solid;
	border-width: 4px;
	border-color: #fff;
}
.area-location-information .information .control .prev::before {
	transform: translateX(6px) rotate(45deg);
}
.area-location-information .information .control .next::before {
	transform: translateX(-6px) rotate(-135deg);
}
.area-location-information .information dl {
	height: 0;
	position: absolute;
	top: 0;
	opacity: 0;
	transition: opacity 1280ms;
}
.area-location-information .information dl.show {
	height: auto;
	position: relative;
	top: auto;
	opacity: 1;
}
.area-location-information .information dl::before {
	content: "";
	display: block;
	width: 100vw;
	height: 72px;
	position: absolute;
	top: 0;
	left: calc(50% - 50vw);
}
.area-location-information .information dl:nth-of-type(1)::before {
	background: #9ac6a2;
}
.area-location-information .information dl:nth-of-type(2)::before {
	background: #e8b67d;
}
.area-location-information .information dl:nth-of-type(3)::before {
	background: #96cad8;
}
.area-location-information .information dl:nth-of-type(4)::before {
	background: #c4bfd7;
}
.area-location-information .information dl dt {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.0625em; 
	line-height: 1.2;
	color: #fff;
}
.area-location-information .information dl dt::before {
	content: "";
	display: block;
	height: 72px;
}
.area-location-information .information dl dt small {
	margin-left: 1em;
	font-size: 0.727em;
}
.area-location-information .information dl dd {
	display: flex;
	margin-top: 2em;
}
.area-location-information .information dl dd figure {
	margin: 0;
	text-align: right;
	font-size: 1.25em;
}
.area-location-information .information dl dd figure figcaption {
	margin-top: 1em;
}
.area-location-information .information dl dd ul {
	margin: 0 0 0 75px;
	font-size: 1.25em;
	line-height: 1.6;
}
.area-location-information .information dl dd li {
	display: flex;
}
.area-location-information .information dl dd li::before {
	content: "●";
	color: #aaa;
}
.area-location-information .notice {
	max-width: 1132px;
	margin: 2em auto 0;
}
.area-location-information .notice ul li {
	margin-top: 0.5em;
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.25;
}
.area-location-information .notice ul li::before {
	content: "※";
}
@media screen and (max-width: 767px) {
	.area-location-information {
		padding: 25px 12px 30px;
	}
	.area-location-information .heading {
		font-size: 1.625em;
	}
	.area-location-information .map {
		margin-top: 30px;
	}
	.area-location-information .links {
		margin: 12px 0;
	}
	.area-location-information .links ul {
		display: block;
	}
	.area-location-information .links ul li + li {
		margin-top: 12px;
		margin-left: 0;
	}
	.area-location-information .information {
		display: block;
		margin-top: 15px;
	}
	.area-location-information .information .control {
		height: 48px;
	}
	.area-location-information .information .prev,
	.area-location-information .information .next {
		transform: scale(0.5);
	}
	.area-location-information .information dl::before {
		width: 100%;
		height: 48px;
		left: 0;
	}
	.area-location-information .information dl dt {
		display: block;
		padding: 0.25em;
		text-align: center;
		font-size: 1.125em;
	}
	.area-location-information .information dl dt small {
		display: block;
		margin: 0.25em 0 0;
		font-size: 0.667em;
	}
	.area-location-information .information dl dt::before {
		content: none;
	}
	.area-location-information .information dl dd {
		display: block;
		margin-top: 0.75em;
	}
	.area-location-information .information dl dd figure {
		font-size: 0.625em;
	}
	.area-location-information .information dl dd ul {
		margin: 1em 0 0;
		font-size: 0.75em;
	}
	.area-location-information .notice ul li {
		font-size: 0.75em;
	}
	
}

/*
	.area-concept-intro
=========================================*/
.area-concept-intro {
	background: url(../img/bg-concept-intro.jpg) 50% 50% no-repeat;
	background-size: cover;
	margin-bottom: 40px;
	padding: 40px 30px 60px;
}
.area-concept-intro .area-wrap {
	max-width: 1100px;
}
.area-concept-intro .heading {
	padding-bottom: 0.5em;
	border-bottom: 1px solid #bdbdae;
	text-align: center;
	font-family: 'A1明朝', serif;
	font-size: 3.25em;
	color: #79796a;
}
.area-concept-intro .intro {
	margin-top: 0.75em;
	text-align: center;
	font-size: 1.625em;
	line-height: 2;
}
@media screen and (max-width: 767px) {
	.area-concept-intro {
		padding: 20px 15px 30px;
	}
	.area-concept-intro .heading {
		font-size: 1.625em;
		line-height: 1.43;
	}
	.area-concept-intro .intro {
		font-size: 0.8125em;
	}
}

/*
	.area-concept-list
=========================================*/
.area-concept-list {
	background: #fff;
	padding: 0 0 60px;
}
.area-concept-list .link {
	margin: 92px 40px 0;
	text-align: center;
}
.area-concept-list ul li {
	display: flex;
	align-items: center;
}
.area-concept-list ul li + li {
	margin-top: 110px;
}
.area-concept-list ul li::after {
	content: "";
	display: block;
	flex-grow: 1;
}
.area-concept-list ul li .image {
	width: calc(50% - 57px);
	flex-grow: 1;
	flex-shrink: 0;
}
.area-concept-list ul li .image img {
	width: 100%;
}
.area-concept-list ul li .text {
	max-width: 748px;
	margin: 0 100px;
	flex-grow: 1;
}
.area-concept-list ul li .text .heading {
	font-family: 'A1明朝', serif;
	font-size: 2.75em;
	line-height: 1.43;
}
.area-concept-list ul li .text .heading img {
	margin-bottom: 24px;
}
.area-concept-list ul li .text p {
	margin-top: 1em;
	font-size: 1.625em;
	line-height: 2;
}
.area-concept-list ul li .text .link {
	margin-top: 1em;
	text-align: right;
	font-size: 75%;
}
.area-concept-list ul li .text .link a {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	font-size: 2.5em;
	line-height: 1;
	color: #444;
}
.area-concept-list ul li .text .link a .icon {
	background: #bdbdae;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	margin-right: 0.25em;
	border-radius: 25px;
	font-size: 30px;
	line-height: 1;
	color: #fff;
}
.area-concept-list ul li .text .link a .icon::before {
	content: "＞";
	padding-bottom: 0.125em;
	transform: scaleX(65%);
}
.area-concept-list ul li:nth-child(2n) .image {
	order: 2;
}
.area-concept-list ul li:nth-child(2n) .text {
	order: 1;
}
@media screen and (max-width: 767px) {
	.area-concept-list {
		padding: 0 0 30px;
	}
	.area-concept-list ul li {
		display: block;
	}
	.area-concept-list ul li + li {
		margin-top: 60px;
	}
	.area-concept-list ul li::after {
		content: none;
	}
	.area-concept-list ul li .image {
		width: auto;
	}
	.area-concept-list ul li .text {
		max-width: none;
		margin: 13px 16px 0;
	}
	.area-concept-list ul li .text .heading {
		font-size: 1.3125em;
		line-height: 1.55;
	}
	.area-concept-list ul li .text .heading img {
		zoom: 0.5;
	}
	.area-concept-list ul li .text p {
		font-size: 0.8125em;
	}
	.area-concept-list ul li .text .link a {
		font-size: 1.25em;
	}
	.area-concept-list ul li .text .link a .icon {
		width: 25px;
		height: 25px;
		font-size: 21px;
	}
}

/*
	.area-map-information
=========================================*/
.area-map-information {
	background: #fff;
	padding: 90px 30px 60px;
}
.area-map-information .heading {
	text-align: center;
	font-family: 'A1明朝', serif;
	font-size: 3.25em;
	color: #79796a;
	margin: 0 40px;
	padding-bottom: 28px;
	border-bottom: 1px solid #bdbdae;
}
.area-map-information .map {
	margin-top: 80px;
}
.area-map-information .map .title {
	margin: 20px;
	font-family: 'MS Pゴシック';
	font-size: 16pt;
}
.area-map-information .information {
	display: -ms-grid;
	display: grid;
	margin-top: 30px;
	grid-gap: 30px;
	-ms-grid-columns: 1fr 30px auto;
	-ms-grid-rows: auto 30px auto;
	grid-template-columns: 1fr 0 1fr;
}
.area-map-information .information dl:nth-child(1) {
	-ms-grid-column: 1;
	-ms-grid-row: 1;
	grid-column: 1;
	grid-row: 1;
}
.area-map-information .information dl:nth-child(2) {
	-ms-grid-column: 1;
	-ms-grid-row: 3;
	grid-column: 1;
	grid-row: 2;
}
.area-map-information .information dl:nth-child(3) {
	-ms-grid-column: 3;
	-ms-grid-row: 1;
	grid-column: 3;
	grid-row: 1;
}
.area-map-information .information dl:nth-child(4) {
	-ms-grid-column: 3;
	-ms-grid-row: 3;
	grid-column: 3;
	grid-row: 2;
}
.area-map-information .information dl dt {
	font-size: 1.6875em;
	line-height: 1.2;
}
.area-map-information .information dl dd {
	margin-top: 0.5em;
	font-size: 1.5em;
	line-height: 1.6;
}
.area-map-information .information dl dd li {
	display: flex;
}
.area-map-information .information dl dd li::before {
	content: "・";
}
@media screen and (max-width: 767px) {
	.area-map-information {
		padding: 25px 12px 30px;
	}
	.area-map-information .heading {
		font-size: 1.625em;
	}
	.area-map-information .map {
		margin-top: 30px;
	}
	.area-map-information .information {
		display: block;
		margin-top: 15px;
	}
	.area-map-information .information dl {
		margin-top: 1em;
	}
	.area-map-information .information dl dt {
		font-size: 0.84375em;
	}
	.area-map-information .information dl dd {
		font-size: 0.75em;
	}
	.area-map-information .information dl dd li {
		display: flex;
	}
	.area-map-information .information dl dd li::before {
		content: "・";
	}
}

/*
	.area-loading
=========================================*/
.area-loading {
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 20;
	transition-property: opacity, z-index;
	transition-duration: 640ms;
}
.area-loading[data-loaded="true"] {
	opacity: 0;
	z-index: -1;
}
.area-loading svg {
	width: 273px;
	height: 150px;
}

@media screen and (max-width: 767px) {
	.area-loading svg {
		width: 95px;
		height: 52px;
	}
}
/*
	.area-animation
=========================================*/
.area-animation ol li {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	opacity: 0;
	transition-property: opacity;
	transition-duration: 1600ms;
	transition-delay: 1600ms;
	transition-timing-function: ease-in-out;
}
.area-animation ol li:first-child {
	position: relative;
}
.area-animation ol li[data-show="true"] {
	z-index: 1;
	opacity: 1;
}
.area-animation ol li[data-show="false"] {
	transition-delay: 1800ms;
}
.area-animation ol li img {
	width: 100%;
}

/*
	.area-layout
=========================================*/
.area-layout {
	background: #f0f0e1;
	padding: 74px 30px 230px;
}
.area-layout .area-wrap {
	background: #fff;
	box-shadow: 8px 8px 6px rgb(189 189 174 / 65%);
	max-width: 1250px;
	padding: 60px 74px 80px;
	border-radius: 6px;
}
.area-layout .heading {
	margin-bottom: 2em;
	text-align: center;
	font-size: 2.3125em;
}
.area-layout .image {
	margin-bottom: 60px;
	text-align: center;
}
.area-layout .image.layout {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 30px 50px;
}
.area-layout table {
	width: 100%;
	text-align: center;
}
.area-layout table thead {
	background: #b2afae;
	padding: 1em 0;
	color: #fff;
}
.area-layout table thead th {
	font-size: 1.625em;
	padding: 0.6em 0;
}
.area-layout table tbody tr {
	border-bottom: 1px solid #7c7572;
}
.area-layout table tbody tr.soldout {
	background: #eee;
	position: relative;
}
.area-layout table tbody tr.soldout td:first-child {
	min-width: 4em;
}
.area-layout table tbody tr.soldout td:first-child::after {
	content: "\6E08";
	display: block;
	border: 1px solid;
	border-radius: 3px;
	font-size: 1.178em;
	color: #b80016;
	position: absolute;
	top: 0.303em;
	left: 0.303em;
}
.area-layout table tbody td {
	padding: 0.464em 0;
	font-size: 1.75em;
}
@media screen and (max-width: 767px) {
	.area-layout {
		padding: 15px 15px 30px;
	}
	.area-layout .area-wrap {
		box-shadow: 4px 4px 3px rgb(189 189 174 / 65%);
		padding: 28px 10px 30px;
	}
	.area-layout .heading {
		font-size: 1em;
	}
    .area-layout .image.layout {
        flex-direction: column;
        gap: 30px;
    }
	.area-layout table {
		width: calc(100% - 20px);
		margin: 0 10px;
	}
	.area-layout table thead th {
		font-size: 1.0625em;
	}
	.area-layout table tbody td {
		font-size: 1.0625em;
	}
}

/*
	.area-footer
=========================================*/
.area-footer {
	background: #fff;
	padding: 30px 0;
	color: #202020;
}
.area-footer::after {
	content: "";
	display: block;
	box-shadow: 0 5px 5px rgba(102, 102, 102, 0.65);
	width: 100%;
	height: 1em;
	position: absolute;
	bottom: 100%;
	left: 0;
}
.area-footer .area-wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	max-width: none;
}
.area-footer .area-wrap a:hover{
	opacity: 0.5;
}
.area-footer dl {
	display: flex;
	align-items: center;
}
.area-footer dl + dl {
	margin-left: 80px;
}
.area-footer dl dt {
	margin-right: 50px;
	text-align: center;
	font-size: 1.25em;
	line-height: 1.2;
}
.area-footer dl dd {
	width: 300px;
}
.area-footer .links {
	width: 100%;
	margin: 2em 0 0;
}
.area-footer .links ul {
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	max-width: 1200px;
	margin: auto;
	position: static;
}
.area-footer .links ul::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	border-style: solid none;
	border-width: 1px;
	position: absolute;
	top: 0;
	left: 0;
}
.area-footer .links ul li {
	margin: 0.5em 1em;
}
.area-footer .links ul li a {
	text-decoration: none;
}
.area-footer .copyright {
	width: 100%;
	margin-top: 30px;
	text-align: center;
	font-size: 1.375em;
}
@media screen and (max-width: 767px) {
	.area-footer {
		padding: 18px 0 90px;
	}
	.area-footer .area-wrap {
		padding-bottom: 40px;
	}
	.area-footer dl + dl {
		margin-left: 0;
	}
	.area-footer dl dt {
		min-width: 10px;
		margin-top: 20px;
		margin-right: 1em;
		text-align: center;
		font-size: 0.75em;
	}
	.area-footer dl dd {
		width: 185px;
		padding-top: 20px;
	}
	.area-footer .links {
		font-size: 0.75em;
	}
	.area-footer .copyright {
		font-size: 0.6875em;
		position: absolute;
		bottom: 0;
		left: 0;
	}
	.area-footer .links ul {
		flex-wrap: wrap;
		text-align: center;
	}
	.area-footer .links ul li {
		width: calc(50% - 2em);
		margin: 1em;
	}
}

/*
	.area-footer-fixed
=========================================*/
.area-footer-fixed {
	position: fixed;
	top: calc(50% - 200px);
	right: 0;
	z-index: 100;
}
.area-footer-fixed button {
	background: none;
	padding: 0;
	border: none;
	position: absolute;
	top: 0;
	right: 0;
}
.area-footer-fixed button.more {
	margin: 0 6px 6px 0;
	transform: rotate(180deg);
	transition: 640ms transform ease-in-out;
}
.area-footer-fixed.more button.more {
	transform: translateX(100%) rotate(180deg);
}
.area-footer-fixed ul {
	width: 95px;
	transform: translateX(100%);
	transition: 640ms transform ease-in-out;
}
.area-footer-fixed.more ul {
	transform: translateX(0%);
}
.area-footer-fixed ul li + li {
	margin-top: 6px;
}
.area-footer-fixed ul li a {
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(202,209,214,1) 100%);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 95px;
	border-radius: 6px;
	text-decoration: none;
	font-size: 0.875em;
	color: #999;
	fill: #ccc;
	opacity: 0.5;
}
.area-footer-fixed ul li a[href] {
	color: #1f1f1f;
	fill: #2185b3;
	opacity: 1;
}
.area-footer-fixed ul li:nth-child(3) a[href] {
	background: rgb(17,101,165);
	background: linear-gradient(180deg, rgba(17,101,165,1) 0%, rgba(10,55,112,1) 100%);
	fill: #fff;
	color: #fff;
}
.area-footer-fixed ul li a svg {
	height: 60px;
}
.area-footer-fixed ul li a img {
	border-radius: 6px;
}

@media screen and (max-width: 767px) {
	.area-footer-fixed {
		box-sizing: border-box;
		width: 100%;
		padding: 6px;
		position: fixed;
		top: auto;
		bottom: 0;
	}
	.area-footer-fixed button {
		display: none;
	}
	.area-footer-fixed ul {
		display: flex;
		flex-direction: row-reverse;
		width: auto;
		transform: translateX(0%);
		transition: none;
	}
	.area-footer-fixed ul li {
		flex: 1;
	}
	.area-footer-fixed ul li + li {
		margin-top: 0;
		margin-right: 6px;
	}
	.area-footer-fixed ul li:last-child {
		display: none;
	}
	.area-footer-fixed ul li a {
		height: 70px;
		font-size: 0.6875em;
	}
	.area-footer-fixed ul li a[href]:active {
		background: rgb(17,101,165);
		background: linear-gradient(180deg, rgba(17,101,165,1) 0%, rgba(10,55,112,1) 100%);
		fill: #fff;
		color: #fff;
	}
	.area-footer-fixed ul li a svg {
		height: 40px;
	}
	
}

/*
	dialog
=========================================*/
#dialog {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 80vw;
    max-width: 420px;
    margin: auto;
    display: none;
    font-family: 'Noto Sans JP',sans-serif;
    text-align: center;
    border: 1px solid #aaa;
    box-shadow: 2px 2px 4px #888;
    transform: translate(-50%,-50%);
    border-radius: 20px;
    overflow: hidden;
    background: #fcfcfc;
}

#dialog p {
	padding: 18px 16px 12px;
	text-align: justify;
	font-size: 12px;
	line-height: 1.75;
}

#dialog button {
    width: 50%;
    float: left;
    padding: 10px 0;
    margin: 0;
    border: none;
    border-top: 1px solid;
    background: none;
    border-color: #aaa;
}

#dialog button#yes {
    color: #e62e2e;
    font-weight: bold;
    border-left: 1px solid #aaa;
}

#dialog button#cancel {
    color: #2e2ee6;
}

#dialog button:focus-visible {
    outline: none;
}

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

/*
	fullOverlay
=========================================*/
#fullOverlay{
  display: none;
  position: absolute;
  left: 0; top: 0;
  width: 100%; height: 100%;
  background: rgba(100, 100, 100, .8);
  z-index: 2147483647;
}

/*
	
=========================================*/

/*
	.modalArea
=========================================*/
* {
	box-sizing: border-box;
  }
  /* モーダルCSS */
  .modalArea {
	display: none;
	position: fixed;
	z-index: 11; /*サイトによってここの数値は調整 */
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
  }
  
  .modalBg {
	width: 100%;
	height: 100%;
	background-color: #D6BE6D;
	opacity: 0.5;
  }
  
  .modalWrapper {
	position: absolute;
	top: 50%;
	left: 50%;
	transform:translate(-50%,-50%);
	width: 70%;
	max-width: 950px;
	padding: 10px 65px;
	background-color: #fff;
	height : 80%;
	overflow : auto;
	text-align: center;
	border-radius: 10px;
  }
  
  .modalArea .modalContents {
	margin-top: 30px;
	margin-bottom: 30px;
}

.modalArea .modalContents h2 {
    font-family: "A1 Mincho", serif;
    font-size: 1.875em;
    line-height: 1.4;
	text-align: center;
}

.modalArea .modalContents h3 {
	margin: 1.25em 0 0;
    font-family: "A1 Mincho", serif;
    font-size: 1.5em;
    line-height: 1.4;
	text-align: center;
}

.modalArea .modalContents p .s1 {
	margin: 1.25em 0 0;
    font-family: "A1 Mincho", serif;
    font-size: 0.75em;
    line-height: 1;
	text-align: center;
	width: 100%;
}

.modalArea .modalContents p {
	text-align: left;
    font-size: 1em;
    line-height: 1.7;
}
  
  .square_btn {
	display: none;
	position: fixed;
	width: 30px;
	height: 30px;
/*	border: 2px solid #fff;*/
/*	background: #fff;*/
	top: 1.5rem;
	right: 14rem;
	cursor: pointer;
	z-index: 100;
  }
   
  /*.square_btn::before, .square_btn::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 3px;
	height: 27px;
	background: #fff;
  }*/
   
  .square_btn::before {
	transform: translate(-50%,-50%) rotate(45deg);
  }
   
  .square_btn::after {
	transform: translate(-50%,-50%) rotate(-45deg);
  }
  
  @media screen and (max-width: 767px) {
	.modalWrapper {
		top: 50%;
		left: 50%;
		transform:translate(-50%,-50%);
		width: 90%;
		max-width: 950px;
		padding: 10px 10px;
		background-color: #fff;
		height : 80%;
		overflow : auto;
		text-align: center;
	  }
	  .modalArea .modalContents h2 {
		font-size: 1.25em;
		line-height: 1.4;
	}
	
	.modalArea .modalContents h3 {
		font-size: 1.15em;
		line-height: 1.4;
	}
	
	.modalArea .modalContents p .s1 {
		margin: 1.25em 0 0;
		font-family: "A1 Mincho", serif;
		font-size: 0.75em;
		line-height: 1;
		text-align: center;
		width: 100%;
	}
	.square_btn {
		right: 1rem;
	  }
}



/*===================================*/


/* ブロック要素にアイコンバッジを表示 右上 */
span[data-badge-top-right] {
	display: block;
	position: initial;
	padding: 0;
	background-color: #19184C;
	border-radius: 6px;
	color: #fff;
	text-align: center;
}

	/* アイコン部 */
	span[data-badge-top-right]:before {
		position: absolute;
		display: inline-block;
		font-weight: bold;
		background-color: #f00;
		border-radius: 50%;
		font-size: 1em;
		line-height: 1;
		min-width: 1em;
		padding: 5px;
		border: 2px solid #fff;
		box-shadow: 0px 0px 3px #999;

		top: 0;
		right: 0;
		transform: translate(50%, -50%);
		content: attr(data-badge-top-right)"";
	}	