@charset "utf-8";
/*------------------------------------------------------------
	hikari_mansion
------------------------------------------------------------*/
#main {
	background: #F29600;
}
body, #gHeader {
	background: #F29600;
}
body.hikari #main {
	background-color: #E45200;
}
body.hikari #gHeader {
	background-color: #E45200;
}
#gHeader h1 {
	display: flex;
	align-items: center;
	color: #fff;
}
#gHeader h1 a {
	margin-left: -30px;
	margin-right: 20px;
	width: 270px;
	display: block;
}
#gHeader h1 .txt {
	font-size: 1.6rem;
	font-weight: 500;
}
#main {
	padding: 8rem 0 11.6rem;
}
#main .headLine04 .color {
	color: #F9FF61;
}
#main .borderBox {
	border: 0.4rem solid #4D4D4D;
	border-radius: 1rem;
	overflow: hidden;
}
#main .borderBox .topBox {
	padding: 4.2rem 0 4.8rem;
	background: url(../img/hikari_mansion/top_bg01.jpg) no-repeat center center / cover;
	border-radius: 0.6rem 0.6rem 0 0;
}
#main .borderBox .topBox .subBox {
	margin: 0 auto;
	padding: 0.5rem 0 3.7rem;
	max-width: 85.4rem;
	background: #FFF;
	border-radius: 1rem;
}
#main .borderBox .topBox .subBox .tag {
	margin: -1.5rem auto 2rem;
	padding: 1.3rem 1rem 1.1rem;
	width: 59.9rem;
	color: #FFF;
	font-size: 2.4rem;
	font-weight: 800;
	text-align: center;
	background: #1B2DBE;
	border-radius: 3.1rem;
	box-sizing: border-box;
	font-family: 'M PLUS 1p', sans-serif;
}
#main .borderBox .topBox .subBox .title {
	margin-bottom: 1.9rem;
	font-size: 2.4rem;
	font-weight: 800;
	text-align: center;
	font-family: 'M PLUS 1p', sans-serif;
}
#main .borderBox .topBox .subBox .logoBox {
	margin: 0 auto;
	width: 33rem;
}
#main .whiteBox {
	background: #FFF;
}
#main .sec01 {
	padding: 6rem 0 11.9rem;
}
#main .sec01 .headLine04 {
	margin-bottom: 6rem;
}
#main .sec01 .innBox {
	margin: 0 auto;
	width: 80rem;
}
#main .sec01 .topArea {
	margin-bottom: 1.8rem;
	padding: 1.6rem 5rem 1.5rem 6rem;
	background: #F5F5F5;
	align-items: center;
}
#main .sec01 .topArea .photo {
	width: 20.8rem;
}
#main .sec01 .topArea .textBox {
	width: calc(100% - 24rem);
}
#main .sec01 .topArea .textBox p {
	color: #262626;
	font-size: 1.8rem;
	font-weight: 800;
	line-height: 1.8;
	font-family: 'M PLUS 1p', sans-serif;
}
#main .sec01 .topArea .textBox p .color {
	color: #F29600;
}
#main .sec01 .note {
	color: #262626;
	font-size: 1.2rem;
}
#main .sec01 .imgBox {
	margin: 9.4rem 0 10rem;
}
#main .sec01 .imgBox .textBox {
	order: 2;
	width: calc(100% - 43.7rem);
}
#main .sec01 .imgBox .textBox .titleBox {
	margin-bottom: 2.4rem;
	padding-bottom: 3.1rem;
	align-items: flex-start;
	background: url(../img/common/icon15.png) repeat-x left bottom / 1.3rem;
}
#main .sec01 .imgBox .textBox .hTitle {
	width: calc(100% - 24rem);
	color: #1B2DBE;
	font-size: 2.8rem;
	font-weight: 900;
	font-family: 'M PLUS 1p', sans-serif;
}
#main .sec01 .imgBox .textBox .tagList {
	margin-top: 0.4rem;
	width: 23.8rem;
	gap: 0.6rem 0;
}
#main .sec01 .imgBox .textBox .tagList li {
	padding: 0.4rem 0.5rem;
	width: 11.6rem;
	color: #FF8B17;
	font-weight: 900;
	text-align: center;
	border: 0.2rem solid #FF8B17;
	border-radius: 3.5rem;
	box-sizing: border-box;
}
#main .sec01 .imgBox .textBox .subBox .text {
	margin-bottom: 1.6rem;
	color: #262626;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.8;
}
#main .sec01 .imgBox .textBox .subBox .text .color {
	color: #E45200;
	font-weight: 900;
}
#main .sec01 .imgBox .textBox .subBox .note {
	font-size: 1.3rem;
}
#main .sec01 .imgBox .photo {
	width: 40.4rem;
}
#main .sec01 .textArea {
	margin: 0 auto;
	width: 91.9rem;
}
#main .sec01 .textArea .area {
	width: calc((100% - 4rem) / 2);
	background: #F2F2F2;
	border-radius: 2rem;
}
#main .sec01 .textArea .area .titleBox {
	padding: 0.5rem 0 2.3rem;
	background: #69ACDD;
	border-radius: 2rem 2rem 0 0;
}
#main .sec01 .textArea .area .titleBox .photo {
	margin: -5rem auto 1rem;
	width: 13.8rem;
}
#main .sec01 .textArea .area .titleBox .title {
	color: #FFF;
	font-size: 2.8rem;
	font-weight: 900;
	text-align: center;
}
#main .sec01 .textArea .area .textList {
	padding: 0 4rem;
}
#main .sec01 .textArea .area .textList li {
	padding: 2.4rem 0 2.3rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	border-bottom: 0.2rem solid #DBDBDB;
}
#main .sec01 .textArea .area .textList li:last-child {
	border-bottom: none;
}
#main .sec01 .textArea .area .textList li .tag {
	width: 7rem;
	height: 7rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	color: #262626;
	font-weight: 900;
	text-align: center;
	background: #FFF;
	border-radius: 50%;
}
#main .sec01 .textArea .area .textList li .text {
	width: calc(100% - 10rem);
	color: #262626;
	font-size: 2.2rem;
	font-weight: 900;
}
#main .sec01 .textArea .area .textList li .text small {
	margin-top: 0.3rem;
	display: block;
	font-size: 1.6rem;
}
#main .sec01 .textArea .area .textList li .text .big {
	font-size: 3rem;
}
#main .sec01 .textArea .area.style01 {
	background: #FFE555;
}
#main .sec01 .textArea .area.style01 .titleBox {
	background: #FF8B17;
}
#main .sec01 .textArea .area.style01 .textList li {
	border-color: #FFF;
}
#main .sec02 {
	padding: 10rem 0 12rem;
	background: url(../img/hikari_mansion/sec02_bg01.jpg) left top / 2.5rem;
}
#main .sec02 .headLine04 {
	margin-bottom: 8rem;
}
#main .sec02 .inner {
	margin: 0 auto;
	width: 92rem;
}
#main .sec02 .inner .area {
	margin-bottom: 8.2rem;
	background: #FFF;
	border-radius: 2rem;
	position: relative;
}
#main .sec02 .inner .area:last-child {
	margin-bottom: 0;
	padding-bottom: 3.2rem;
}
#main .sec02 .inner .area .titleBox {
	padding: 2.4rem 2.4rem 1.7rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	background: #FF8B17;
	border-radius: 2rem 2rem 0 0;
}
#main .sec02 .inner .area .titleBox .number {
	width: 13rem;
	position: relative;
	color: #FFF;
	font-size: 4.2rem;
	font-weight: 900;
	font-family: 'M PLUS 1p', sans-serif;
}
#main .sec02 .inner .area .titleBox .number::before {
	position: absolute;
	top: 0.1rem;
	width: 0.2rem;
	bottom: 0.8rem;
	right: 0;
	background: #FFF;
	content: '';
}
#main .sec02 .inner .area .titleBox .number .en {
	margin-right: 1.4rem;
	font-size: 1.4rem;
	vertical-align: 0.9rem;
}
#main .sec02 .inner .area .titleBox .title {
	margin-top: -0.6rem;
	width: calc(100% - 15rem);
	color: #FFF;
	font-size: 3rem;
	font-weight: 900;
}
#main .sec02 .inner .area .textBox {
	padding: 3.6rem 5rem;
	box-sizing: border-box;
}
#main .sec02 .inner .area .textBox.style01 {
	max-width: 62rem;
	min-height: 23.5rem;
}
#main .sec02 .inner .area .textBox p {
	margin-bottom: 3.2rem;
	color: #262626;
	line-height: 2;
}
#main .sec02 .inner .area .textBox p:last-child {
	margin-bottom: 0;
}
#main .sec02 .inner .area .photo.style01 {
	position: absolute;
	top: 0;
	right: 0;
	width: 28rem;
	height: 100%;
}
#main .sec02 .inner .area .photo.style01 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0 2rem 2rem 0;
}
#main .sec02 .inner .area .photo.style02 {
	margin: -0.3rem auto 0;
	width: 73.6rem;
}
#main .sec02 .inner .area .photo .note {
	position: absolute;
	bottom: 1.1rem;
	left: 1.4rem;
	color: #FFF;
	font-size: 1.2rem;
	font-weight: 700;
}
#main .sec03 {
	padding: 12.1rem 0 9.9rem;
}
#main .sec03 .headLine04 {
	margin-bottom: 6.2rem;
}
#main .sec03 .hTitle {
	margin: 0 auto 4.3rem;
	padding-bottom: 3.4rem;
	width: 85rem;
	color: #262626;
	font-size: 2.2rem;
	font-weight: 900;
	text-align: center;
	background: url(../img/common/icon15.png) repeat-x left bottom / 1.3rem;
}
#main .sec03 .hTitle .big {
	color: #F29600;
	font-size: 2.6rem;
}
#main .sec03 .stepList {
	gap: 2.1rem;
}
#main .sec03 .stepList li {
	width: calc((100% - 8.4rem) / 5);
	position: relative;
}
#main .sec03 .stepList li::before {
	position: absolute;
	top: 7.6rem;
	right: -1.6rem;
	width: 1rem;
	height: 3rem;
	background: #F29600;
	clip-path: polygon(0 0,100% 50%,0 100%);
	content: '';
}
#main .sec03 .stepList li:last-child::before {
	display: none;
}
#main .sec03 .stepList li .number {
	margin: 0 auto -2.8rem;
	padding-top: 0.3rem;
	width: 4.8rem;
	height: 4.8rem;
	color: #FFF;
	font-family: 'M PLUS 1p', sans-serif;
	font-size: 2.2rem;
	font-weight: 900;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	background: #F29600;
	border-radius: 50%;
	position: relative;
	z-index: 5;
	box-sizing: border-box;
}
#main .sec03 .stepList li .title {
	margin-bottom: 1rem;
	padding-top: 0.2rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	min-height: 14rem;
	color: #262626;
	font-size: 2rem;
	font-weight: 900;
	background: #F2F2F2;
	border-radius: 2rem;
	text-align: center;
	box-sizing: border-box;
}
#main .sec03 .stepList li .text {
	padding: 0 0.8rem;
	font-size: 1.4rem;
	color: #262626;
}
#main .sec04 {
	padding: 10rem 0;
	background: url(../img/hikari_mansion/sec04_bg01.jpg) no-repeat center center / cover;
}
#main .sec04 .inner {
	margin: 0 auto;
	padding: 6.1rem 0 8.3rem;
	width: 88rem;
	background: #FFF;
}
#main .sec04 .hTitle {
	margin-bottom: 3.7rem;
	color: #262626;
	font-size: 3.2rem;
	font-weight: 900;
	font-family: 'M PLUS 1p', sans-serif;
	text-align: center;
}
#main .sec04 .logoArea {
	margin-bottom: 2rem;
	gap: 3.4rem;
}
#main .sec04 .logoArea .logo {
	width: 21.6rem;
}
#main .sec04 .logoArea .textBox {
	margin-top: 0.7rem;
}
#main .sec04 .logoArea .textBox .title {
	margin-bottom: 0.5rem;
	color: #262626;
	font-size: 2rem;
	font-weight: 700;
}
#main .sec04 .logoArea .textBox .text {
	color: #262626;
	font-weight: 700;
}
#main .sec04 .smallText {
	margin-bottom: 4.2rem;
	color: #262626;
	font-size: 1.2rem;
	text-align: center;
}
#main .sec04 .subTitle {
	margin-bottom: 1rem;
	color: #262626;
	font-size: 1.8rem;
	font-weight: 900;
	text-align: center;
	line-height: 1.33;
}
@media all and (max-width: 896px) {
	#gHeader h1 {
		background: #F29600;
	}
	.hikari #gHeader h1 {
		background-color: #E45200;
	}
	#gHeader h1 a {
		margin-right: 13px !important;
		width: 138px;
	}
	#gHeader h1 .txt {
		font-size: 1.4rem;
	}
	#main {
		padding: 4rem 0 11.6rem;
	}
	#main .headLine04 {
		padding: 13px 10px 10px;
	}
	#main .borderBox .topBox {
		padding: 2rem;
		background-image: url(../img/hikari_mansion/top_bg01_sp.jpg);
		border-radius: 0.6rem 0.6rem 0 0;
	}
	#main .borderBox .topBox .subBox {
		margin: 0;
		padding: 0.5rem 2.5rem 4rem;
		max-width: inherit;
	}
	#main .borderBox .topBox .subBox .tag {
		margin: -1.5rem auto 1.9rem;
		padding: 1.2rem 1rem 1rem;
		width: auto;
		font-size: 1.8rem;
	}
	#main .borderBox .topBox .subBox .title {
		margin-bottom: 1.8rem;
		font-size: 1.4rem;
		line-height: 1.71;
	}
	#main .borderBox .topBox .subBox .logoBox {
		margin: 0 0 0 0.5rem;
		width: auto;
	}
	#main .borderBox .topBox .subBox .logoBox img {
		width: 100%;
	}
	#main .sec01 {
		padding: 6rem 0 11.9rem;
	}
	#main .sec01 .headLine04 {
		margin: 0 10px 6rem;
	}
	#main .sec01 .innBox {
		margin: 0;
		width: auto;
	}
	#main .sec01 .topArea {
		margin-bottom: 1.6rem;
		padding: 1.8rem 1.5rem 3.6rem;
		display: block;
	}
	#main .sec01 .topArea .photo {
		margin: 0 auto 1.9rem;
		width: 15.8rem;
	}
	#main .sec01 .topArea .textBox {
		width: auto;
	}
	#main .sec01 .topArea .textBox p {
		font-size: 1.6rem;
	}
	#main .sec01 .note {
		font-size: 1.2rem;
		line-height: 1.83;
	}
	#main .sec01 .imgBox {
		margin: 8.7rem 0 10rem;
		display: block;
	}
	#main .sec01 .imgBox .textBox {
		margin-bottom: 4rem;
		width: auto;
	}
	#main .sec01 .imgBox .textBox .titleBox {
		margin-bottom: 2.5rem;
		padding-bottom: 3.3rem;
		display: block;
	}
	#main .sec01 .imgBox .textBox .hTitle {
		margin: 0 auto 1.8rem;
		width: fit-content;
		font-size: 2.4rem;
	}
	#main .sec01 .imgBox .textBox .tagList {
		margin: 0 auto;
	}
	#main .sec01 .imgBox .textBox .tagList li {
		font-size: 1.6rem;
	}
	#main .sec01 .imgBox .textBox .subBox .text {
		margin-bottom: 1.8rem;
		font-size: 1.6rem;
	}
	#main .sec01 .imgBox .textBox .subBox .note {
		line-height: 1.5;
	}
	#main .sec01 .imgBox .photo {
		padding-right: 0.3rem;
		width: auto;
	}
	#main .sec01 .imgBox .photo img {
		width: 100%;
	}
	#main .sec01 .textArea {
		margin: 0 -1rem;
		width: auto;
		display: block;
	}
	#main .sec01 .textArea .area {
		margin-bottom: 7.9rem;
		width: auto;
	}
	#main .sec01 .textArea .area:last-child {
		margin-bottom: 0;
	}
	#main .sec01 .textArea .area .titleBox {
		padding: 0.5rem 0 1.1rem;
	}
	#main .sec01 .textArea .area .titleBox .photo {
		margin: -3.5rem auto 1rem;
		width: 9.6rem;
	}
	#main .sec01 .textArea .area .titleBox .title {
		font-size: 2rem;
	}
	#main .sec01 .textArea .area .textList {
		padding: 0 3rem;
	}
	#main .sec01 .textArea .area .textList li {
		padding: 1.8rem 0 1.7rem;
	}
	#main .sec01 .textArea .area .textList li .tag {
		width: 4.8rem;
		height: 4.8rem;
		font-size: 1.2rem;
	}
	#main .sec01 .textArea .area .textList li .text {
		width: calc(100% - 6rem);
		font-size: 1.6rem;
	}
	#main .sec01 .textArea .area .textList li .text small {
		margin-top: 0;
		font-size: 1.2rem;
	}
	#main .sec01 .textArea .area .textList li .text .big {
		font-size: 2rem;
	}
	#main .sec02 {
		padding: 10rem 0 12rem;
	}
	#main .sec02 .headLine04 {
		margin: 0 1rem 8rem;
	}
	#main .sec02 .inner {
		margin: 0 1rem;
		width: auto;
	}
	#main .sec02 .inner .area {
		margin-bottom: 8rem;
	}
	#main .sec02 .inner .area:last-child {
		margin-bottom: 0;
		padding-bottom: 3rem;
	}
	#main .sec02 .inner .area .titleBox {
		padding: 2.1rem;
		display: block;
	}
	#main .sec02 .inner .area .titleBox .number {
		margin-bottom: 1.4rem;
		padding-bottom: 0.9rem;
		width: auto;
		font-size: 3.4rem;
		text-align: center;
		line-height: 1.2;
	}
	#main .sec02 .inner .area .titleBox .number::before {
		top: auto;
		width: 5.4rem;
		height: 0.2rem;
		left: 50%;
		transform: translateX(-50%);
		bottom: 0;
		right: auto;
	}
	#main .sec02 .inner .area .titleBox .number .en {
		margin: 0 0 0.1rem;
		display: block;
		font-size: 1.4rem;
	}
	#main .sec02 .inner .area .titleBox .title {
		margin-top: 0;
		width: auto;
		font-size: 2.6rem;
		text-align: center;
	}
	#main .sec02 .inner .area .textBox {
		padding: 1.6rem 2rem 3.6rem;
	}
	#main .sec02 .inner .area .textBox.style01 {
		max-width: inherit;
		min-height: inherit;
	}
	#main .sec02 .inner .area .textBox p {
		margin-bottom: 2.8rem;
	}
	#main .sec02 .inner .area .photo {
		position: static !important;
		width: auto !important;
		height: auto;
	}
	#main .sec02 .inner .area .photo img {
		width: 100%;
		border-radius: 0 0 2rem 2rem !important;
	}
	#main .sec02 .inner .area .photo.style02 {
		margin: 0 2rem;
	}
	#main .sec02 .inner .area .photo .note {
		bottom: 0.9rem;
		left: 1rem;
	}
	#main .sec03 {
		padding: 12rem 0 9.9rem;
	}
	#main .sec03 .headLine04 {
		margin: 0 1rem 6rem;
	}
	#main .sec03 .hTitle {
		margin: 0 3rem 4.3rem;
		padding-bottom: 3.1rem;
		width: auto;
		font-size: 1.8rem;
		line-height: 1.6;
	}
	#main .sec03 .hTitle .big {
		font-size: 2.16rem;
	}
	#main .sec03 .stepList {
		margin: 0 0.4rem;
		display: block;
	}
	#main .sec03 .stepList li {
		margin-bottom: 2rem;
		width: auto;
	}
	#main .sec03 .stepList li::before {
		display: none;
	}
	#main .sec03 .stepList li .title {
		margin-bottom: 1rem;
		padding-top: 1.8rem;
		min-height: 10rem;
	}
	#main .sec03 .stepList li .text {
		padding: 0;
	}
	#main .sec04 {
		padding: 9.9rem 2rem 12rem;
		background-image: url(../img/hikari_mansion/sec04_bg01_sp.jpg);
	}
	#main .sec04 .inner {
		margin: 0 auto;
		padding: 6.1rem 1rem 8rem;
		width: auto;
	}
	#main .sec04 .hTitle {
		margin-bottom: 3.9rem;
		font-size: 2rem;
	}
	#main .sec04 .logoArea {
		margin-bottom: 1.9rem;
		display: block;
	}
	#main .sec04 .logoArea .logo {
		margin: 0 auto 3rem;
		width: 15.5rem;
	}
	#main .sec04 .logoArea .textBox {
		margin-top: 0;
	}
	#main .sec04 .logoArea .textBox .title {
		margin-bottom: 0.9rem;
		font-size: 1.8rem;
		text-align: center;
	}
	#main .sec04 .logoArea .textBox .text {
		text-align: center;
	}
	#main .sec04 .smallText {
		margin-bottom: 4rem;
	}
	#main .sec04 .subTitle {
		margin-bottom: 2.8rem;
		font-size: 1.6rem;
		line-height: 1.5;
	}
}
@media all and (max-width: 359px) {
	#main .headLine04 {
		font-size: 5.8vw;
	}
	#main .borderBox .topBox .subBox .tag {
		font-size: 5vw;
	}
	#main .sec01 .textArea .area .textList {
		padding: 0 1rem;
	}
	#main .sec02 .inner .area .titleBox .title {
		font-size: 7.2vw;
	}
	#main .sec04 .subTitle {
		font-size: 4.4vw;
	}
}