@charset "utf-8";

/* CSS Document */

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	list-style: none;
}

a {
	cursor: pointer;
	text-decoration: none;
}

img {
	object-fit: contain;
	width: 100%;
}

body {
	font-family: 'TsukuGoPro-D';
	font-size: 16px;
}

.wrapPropertyNews01 {
	text-align: center;
	margin: 0 auto 0;
	padding: 0;
}

.ttlProduct01 {
	width: 100%;
	height: 550px;
	overflow-y: hidden;
	padding: 0;
	background-color: transparent;
}

.ttlProduct01::after {
	display: none;
}

.ttlProduct01 img {
	width: 100%;
	height: 100%;
	aspect-ratio: 192 / 55;
	object-fit: cover;
}

p.idx_caution_txt,
.contents p.caution_txt {
	color: #a61918;
	margin: 10px 0;
	font-size: 18px;
	background: #fff;
	text-align: center;
}

.inner01 {
	width: 96%;
	max-width: 920px;
	margin: 0 auto;
}

.inner02 {
	width: 96%;
	max-width: 840px;
	margin: 0 auto;
}

.top_contents {
	margin: 50px auto;
}

.top_contents a {
	display: inline-block;
	width: 70%;
	max-width: 600px;
	margin: 0 auto 40px;
	background: linear-gradient(to bottom, #B2B2AC, #7E7F74);
	padding: 14px 10px;
	font-size: 28px;
	color: #fff;
	border-radius: 15px;
}

.top_contents p {
	font-size: 20px;
}

.bdr_box {
	margin: 80px auto;
	border: 1px solid #862633;
}

.toggle_title .flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.toggle_title .flex img {
	width: 38%;
	max-width: 401px;
}

.toggle_title .flex .txt_box {
	margin: 10px;
	padding: 3%;
	text-align: left;
	width: 62%;
	border-left: 10px solid #862633;
}

.toggle_title .flex .txt_box.box02 {
	padding: 5.2% 3%;
}

.toggle_title .flex p.sub-title {
	margin-bottom: 1%;
	font-size: 18px;
	font-size: clamp(16px, 0.391vw + 1.3rem, 18px);
}

.toggle_title .flex h3 {
	font-family: 'TsukuGoPro-B';
	line-height: calc(48/32);
	font-size: 24px;
	font-size: clamp(20px, 0.781vw + 1.4rem, 24px);
}

.toggle_title .flex h3 span {
	color: #862633;
}

.toggle_title .flex p.reserve {
	font-family: 'TsukuGoPro-B';
	font-size: 16px;
	color: #fff;
	background: #862633;
	width: 100px;
	line-height: 2;
	text-align: center;
	border-radius: 20px;
	margin-top: 3%;
}

.toggle_title .toggle_btn {
	background: #F3F2EF;
	font-family: 'TsukuGoPro-M';
	width: 100%;
	position: relative;
	width: 100%;
	text-align: center;
}

.toggle_title .toggle_btn img {
	width: 52px;
}

.toggle_title.active .toggle_btn img {
	transform: rotate(180deg);
}

.toggle_conts {
	display: none;
	border-top: 1px solid #862633;
	transition: all 0.5s ease;
}

.toggle_conts.active {
	display: block;
}

.toggle_conts {}

.toggle_conts .bg_01 {
	background-image: linear-gradient(90deg, rgba(171, 163, 156, 1), rgba(150, 140, 131, 1) 20% 50%, rgba(150, 140, 131, 1) 80%, rgba(171, 163, 156, 1));
	color: #fff;
	padding: 4% 0;
	margin-bottom: 40px;
}

.toggle_conts .bg_01 h4 {
	font-family: 'TsukuGoPro-B';
	font-size: 20px;
	margin-bottom: 1%;
	font-size: clamp(18px, 0.391vw + 1.5rem, 20px);
}

.toggle_conts .bg_01 p {
	font-family: 'TsukuGoPro-R';
	font-size: 14px;
	text-align: center;
}

.toggle_conts p br.pc_non {
	display: none;
}

.toggle_conts p {
	font-size: 15.5px;
	line-height: calc(30/18);
	text-align: left;
}

.toggle_conts h5 {
	font-family: 'TsukuGoPro-B';
	color: #fff;
	background-image: url(../images/bg_01.png);
	background-position: center;
	margin: 40px auto;
	/*font-size: 24px;
    font-size: clamp(20px, 0.781vw + 1.4rem, 24px);*/
}

.toggle_conts h6.title {
	font-family: 'TsukuGoPro-B';
	color: #7E7F74;
	background: #E8E6DF;
	border-radius: 20px;
	font-size: 20px;
	font-size: clamp(18px, 0.391vw + 1.5rem, 20px);
	padding: 5px;
	margin-bottom: 20px;
}

.toggle_conts .flex_c {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 30px auto;
}

.toggle_conts .flex_c img {
	width: 50%;
	max-width: 320px;
	margin: 20px auto;
}

.toggle_conts .flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin: 50px auto;
}

.toggle_conts .txt_area {
	position: relative;
	text-align: left;
	width: 62%;
}

.toggle_conts .txt_area h6 {
	border-bottom: 1px solid #b8b298;
	margin-bottom: 5%;
	padding-bottom: 8px;
}

.toggle_conts .txt_area h6 p {
	border-left: 6px solid #b8b298;
	font-family: 'TsukuGoPro-B';
	font-size: font-size: 24px;
	font-size: clamp(20px, 0.781vw + 1.4rem, 24px);
	padding: 0 5px;
	line-height: 1;
}

.toggle_conts .txt_area h6 p.bdr_r {
	border-left: none;
	border-right: 6px solid #b8b298;
	text-align: right;
	padding: 0 5px;
}

.toggle_conts .txt_area p {
	font-family: 'TsukuGoPro-D';
	font-size: 15.5px;
	padding-right: 4%;
	line-height: calc(30 / 18);
}

.toggle_conts .txt_area small {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 153%;
	font-family: 'TsukuGoPro-R';
	font-size: 0.8em;
	line-height: 1;
}

.toggle_conts .flex img {
	width: 38%;
	max-width: 320px;
}

.toggle_conts .txt_area.left {
	padding-bottom: 25px;
}

.toggle_conts .txt_area.right h6 {
	text-align: right;
}

.toggle_conts .txt_area.right p {
	padding-right: 0;
	padding-left: 4%;
}

.toggle_conts .bg_02 {
	background: #ECEAE5;
	border-radius: 20px;
	padding: 5%;
}

.toggle_conts .flex02 {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.flex02 .txt_area {
	width: 72%;
}

.flex02 .txt_area h6 {
	font-family: 'TsukuGoPro-B';
	border: none;
	margin-bottom: 10px;
	color: #73665a;
	font-size: 24px;
	font-size: clamp(20px, 0.781vw + 1.4rem, 24px);
}

.flex02 .txt_area p {
	font-size: 16px;
	padding-right: 4%;
	line-height: calc(30 / 18);
}

.flex02 img {
	width: 28%;
	max-width: 230px;
}

.toggle_conts .example h4 {
	font-family: 'TsukuGoPro-B';
	font-size: 24px;
	font-size: clamp(20px, 0.781vw + 1.4rem, 24px);
}

.toggle_conts .example small {
	font-family: 'TsukuGoPro-R';
	font-size: 15px;
}

.toggle_conts .example ul {
	display: flex;
	justify-content: space-between;
	margin: 40px auto 20px;
}

.toggle_conts .example ul li {
	width: 32%;
	max-width: 280px;
}

.toggle_conts .example ul li p {
	font-family: 'TsukuGoPro-B';
	font-size: 20px;
	margin-bottom: 10px;
	font-size: clamp(18px, 0.391vw + 1.5rem, 20px);
	text-align: center;
}

.toggle_conts .example p.txt {
	font-size: 14px;
	text-align: center;
	margin-bottom: 50px;
}

.toggle_conts .consul img {
	width: 90%;
	max-width: 780px;
	margin-bottom: 50px;
}

.area_map {
	margin: 40px auto;
}

.area_map h3 {
	font-family: 'TsukuGoPro-D';
	color: #7e7f74;
	font-size: 24px;
	font-size: clamp(20px, 0.781vw + 1.4rem, 24px);
}

.area_map img {
	margin: 4% auto;
	width: 90%;
	max-width: 500px;
}

.area_list {
	margin: 80px auto;
}

.area_list h4 {
	font-family: 'TsukuGoPro-B';
	font-size: 24px;
	font-size: clamp(20px, 0.781vw + 1.4rem, 24px);
	margin: 8% auto 4%;
}

.area_list .place_list {
	border-top: 1px solid #7e7f74;
	margin: 0 auto;
	padding: 3% 0 4%;
}

.area_list .place_list.mb20 {
	margin-bottom: 20px;
}

.area_list .flex {
	display: flex;
}

.area_list .schedule_flex:first-child {
	width: 40%;
	display: flex;
	align-items: center;
}

.area_list .schedule_flex:last-child {
	width: 60%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.area_list .schedule_date {
	font-family: 'TsukuGoPro-B';
	font-size: 18px;
}

.area_list .schedule_area {
	font-size: 14px;
	background: #968c83;
	border: 1px solid #968c83;
	color: #fff;
	padding: 0 15px;
	margin: 0 2%;
	width: 100px;
}

.area_list .schedule_location {
	font-size: 14px;
	color: #968c83;
	border: 1px solid #968c83;
	padding: 0 15px;
	width: 110px;
}

.area_list .schedule_time {
	font-size: 16px;
}

.area_list .schedule_type span {
	font-size: 13px;
	color: #282828;
	background: #d0d3d4;
	width: 90px;
	border-radius: 15px;
	display: inline-block;
	position: relative;
	margin-left: 5px;
}

.area_list .venue {
	display: flex;
	background: #e8e6df;
	padding: 0.5% 2%;
	margin: 1% 0;
}

.area_list .venue p:first-child {
	color: #7e7f74;
	margin-right: 2%;
}

.area_list .lecture {
	display: flex;
}

.area_list .lecture_title {
	width: 9%;
	border-right: 1px solid #7e7f74;
	border-left: 1px solid #7e7f74;
	position: relative;
}

.area_list .lecture_title p {
	color: #7e7f74;
	position: relative;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
}

.area_list .lecture_detail {
	width: 80%;
	padding: 0 2%;
	text-align: left;
	align-self: center;
}

.area_list .lecture_detail p {
	position: relative;
	font-size: 16px;
	padding-left: 90px;
}

.area_list span {
	display: block;
	text-align: center;
	font-size: 14px;
	background: #b8b298;
	color: #fff;
	width: 80px;
	position: absolute;
	left: 0;
	top: 4px;
}

.area_list .lecture_btn {
	width: 10%;
}

.lecture_btn a {
	position: relative;
	display: block;
	background: #d0d3d4;
	border-radius: 8px;
	color: #73665a;
	width: 80px;
	height: 56px;
	line-height: 56px;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
	margin: auto 0 auto auto
}

.lecture_btn a.active::after {
	display: block;
	content: "";
	position: absolute;
	background: #fff;
	bottom: 5px;
	right: 5px;
	height: 10px;
	width: 10px;
	clip-path: polygon(0 100%, 100% 0%, 100% 100%);
}

.lecture_btn a.active {
	background: linear-gradient(180deg, rgba(171, 104, 113, 0.7), rgba(134, 38, 51, 1));
	color: #fff;
}

@media screen and (min-width: 1281px) {
	.ttlProduct01 {
		width: 100%;
		height: auto;
	}

	.ttlProduct01 img {
		aspect-ratio: auto;
	}
}

@media screen and (max-width: 1280px) {
	.ttlProduct01 {
		width: 100%;
		height: auto;
	}

	.ttlProduct01 img {
		aspect-ratio: auto;
	}
}


@media screen and (max-width: 768px) {

	.toggle_conts p br.pc_non {
		display: block;
	}

	.area_list .schedule_flex:first-child {
		width: 50%;
	}

	.area_list .schedule_flex:last-child {
		width: 50%;
	}

	.toggle_conts .txt_area small {
		position: relative;
	}

	.area_list .lecture_detail {
		width: 77%;
	}

	.area_list .lecture_btn {
		width: 13%;
	}

}

@media screen and (max-width: 480px) {

	.toggle_conts p br.sp_non {
		display: none;
	}

	.top_contents a {
		width: 90%;
		padding: 10px 10px;
		font-size: 20px;
		color: #fff;
		border-radius: 10px;
	}

	.top_contents p {
		font-size: 15px;
	}

	.bdr_box {
		margin: 40px auto;
	}

	.toggle_conts .flex_c img {
		width: 100%;
	}

	.toggle_title .flex {
		flex-wrap: wrap;
	}

	.toggle_title .flex img {
		width: 100%;
		order: 1;
	}

	.toggle_title .flex .txt_box {
		width: 100%;
		order: 0;
		padding: 10px;
	}

	.toggle_title .flex p.sub-title {
		margin-bottom: 2%;
		font-size: 16px;
	}

	.toggle_title .flex h3 {}

	.toggle_title .flex h3 span {
		color: #862633;
	}

	.toggle_title .flex p.reserve {
		font-size: 14px;
	}

	.toggle_title .toggle_btn {}

	.toggle_conts .bg_01 {
		padding: 4%;
	}

	.toggle_conts h4 {
		font-size: 15px;
	}

	.toggle_conts h4 br {
		display: none;
	}

	.toggle_conts p {
		font-size: 14px;
	}


	.toggle_conts p.fs18 {
		font-size: 15px;
	}

	.toggle_conts h5 {
		font-size: 18px;
	}

	.toggle_conts .flex {
		flex-wrap: wrap;
	}

	.toggle_conts .txt_area {
		width: 100%;
		order: 0;
	}

	.toggle_conts .txt_area h6 {
		text-align: center;
		font-size: 17px;
	}

	.toggle_conts .txt_area p {
		padding-right: 0;
	}

	.toggle_conts .txt_area small {
		position: relative;
	}

	.toggle_conts .flex img {
		width: 90%;
		margin: 5% auto;
		order: 1;
	}

	.toggle_conts .txt_area.left {
		padding-bottom: 25px;
	}

	.toggle_conts .txt_area.right h6 {
		text-align: center;
	}

	.toggle_conts .txt_area.right p {
		padding-left: 0;
	}

	.toggle_conts .bg_02 {
		background: #e8e6df;
		border-radius: 20px;
		padding: 5%;
	}

	.toggle_conts .flex02 {
		flex-wrap: wrap;
	}

	.flex02 .txt_area {
		width: 100%;
	}

	.flex02 .txt_area h6 {
		font-size: 18px;
	}

	.flex02 .txt_area p {
		font-size: 15px;
		padding-right: 0;
	}

	.flex02 img {
		width: 80%;
		margin: 4% auto;
	}

	.toggle_conts .example h4 {}

	.toggle_conts .example small {}

	.toggle_conts .example ul {
		margin: 20px auto;
		flex-wrap: wrap;
	}

	.toggle_conts .example ul li {
		width: 100%;
		max-width: 280px;
		margin: 2% auto;
	}

	.toggle_conts .consul img {
		width: 100%;
	}

	.area_map img {
		width: 100%;
	}

	.area_list {
		margin: 40px auto;
	}

	.area_list .flex {
		flex-wrap: wrap;
	}

	.area_list .schedule_flex:first-child {
		width: 100%;
		padding: 2px 0;
	}

	.area_list .schedule_flex:last-child {
		width: 100%;
		padding: 2px 0;
	}

	.area_list .schedule_date {
		font-size: 16px;
	}

	.area_list .schedule_time {
		width: 60%;
		text-align: left;
	}

	.area_list .schedule_type {
		width: 40%;
	}

	.area_list .lecture {
		flex-wrap: wrap;
	}

	.area_list .lecture_title {
		width: 100%;
		padding: 5px 10px;
	}

	.area_list .lecture_detail {
		width: 100%;
		padding: 10px 0 0 0;
	}

	.area_list .lecture_detail p {
		font-size: 15px;
		padding-left: 0;
		padding-bottom: 10px;
	}

	.area_list span {
		display: inline-block;
		position: relative;
		top: 0;
		margin-right: 10px;
	}

	.area_list .lecture_btn {
		width: 100%;
	}

	.lecture_btn a {
		width: 100px;
		height: 45px;
		line-height: 45px;
		font-size: 14px;
	}
}
