@charset "utf-8";

/* ---------------------------------------------------------------------------------------------------- */

.section_1 {}

.section_1::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	width: 90%;
	max-width: 1280px;
	height: auto;
	aspect-ratio: 347 / 163;
	background-image: url(../img/top_concept_deco_sp.webp);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 50%;
}

.section_1 .inner {
	padding-top: 20%;
	padding-bottom: 10%;
}

.section_1 .wrap {
	gap: 24px;
}

.section_1 .heading_wrap {}

.section_1 .heading_wrap .heading {}

.section_1 .heading_wrap .heading .main {}

.section_1 .heading_wrap .heading .sub {}

.section_1 .content_wrap {
	gap: 24px;
}

.section_1 .content_wrap .content {
	width: 90%;
	max-width: 1280px;
}

.section_1 .content_wrap .content .item_wrap {}

.section_1 .content_wrap .content .item_wrap .item {}

.section_1 .content_wrap .content .item_wrap .item .text_wrap {}

.section_1 .content_wrap .content .item_wrap .item .text_wrap .text {}

.section_1 .content_wrap .content_2 .item_wrap .item .text_wrap .text {
	font-weight: 500;
	line-height: 3;
}

.section_1 .content_wrap .content_3 .item_wrap {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 12px;
	padding-bottom: 36px;
}

.section_1 .content_wrap .content_3 .item_wrap .item {
	width: calc((100% - (12px * 1)) / 2);
}

.section_1 .content_wrap .content_3 .item_wrap .item_deco {
	position: absolute;
	bottom: 0;
	left: 43.75%;
	transform: translate(-50%, 0);
	width: 175vw;
	max-width: none;
}

.section_1 .content_wrap .content_4 {
	width: 235px;
}

@media screen and (min-width: 768px) {
	.section_1 {}

	.section_1::before {
		background-image: url(../img/top_concept_deco_pc.webp);
		background-size: 37.5%;
	}

	.section_1 .inner {
		padding-top: 10%;
	}

	.section_1 .wrap {}

	.section_1 .heading_wrap {}

	.section_1 .heading_wrap .heading {}

	.section_1 .heading_wrap .heading .main {}

	.section_1 .heading_wrap .heading .sub {}

	.section_1 .content_wrap {}

	.section_1 .content_wrap .content {}

	.section_1 .content_wrap .content .item_wrap {}

	.section_1 .content_wrap .content .item_wrap .item {}

	.section_1 .content_wrap .content .item_wrap .item .text_wrap {}

	.section_1 .content_wrap .content .item_wrap .item .text_wrap .text {}

	.section_1 .content_wrap .content_2 .item_wrap .item .text_wrap .text {
		text-align: center;
	}

	.section_1 .content_wrap .content_3 .item_wrap {
		padding-bottom: 108px;
		padding-bottom: 15%;
	}

	.section_1 .content_wrap .content_3 .item_wrap .item {
		width: calc((100% - (12px * 3)) / 4);
	}

	.section_1 .content_wrap .content_3 .item_wrap .item_deco {
		width: 137.5vw;
	}

	.section_1 .content_wrap .content_4 {
		width: 25%;
		max-width: 400px;
	}
}

@media screen and (min-width: 1280px) {
	.section_1 .content_wrap .content_3 .item_wrap {
		/* padding-bottom: 168px; */
	}

	.section_1 .content_wrap .content_4 {
		padding-top: 48px;
	}
}

@media screen and (min-width: 1440px) {
	.section_1 .content_wrap .content_3 .item_wrap {
		gap: 24px;
	}

	.section_1 .content_wrap .content_3 .item_wrap .item {
		width: calc((100% - (24px * 3)) / 4);
	}

	.section_1 .content_wrap .content_3 .item_wrap .item_deco {
		width: 137.5vw;
	}

	.section_1 .content_wrap .content_4 {
		padding-top: 72px;
	}
}

@media screen and (min-width: 1920px) {
	.section_1 .content_wrap .content_3 .item_wrap {
		padding-bottom: 17.5%;
	}

	.section_1 .content_wrap .content_3 .item_wrap .item_deco {
		width: 112.5vw;
	}
}

/* ---------------------------------------------------------------------------------------------------- */

.section_2 {
	position: relative;
	/* background-image: linear-gradient(transparent 0% 1%, #212121 1% 99%, transparent 99% 100%); */
}

.section_2::before,
.section_2::after {
	content: "";
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 90%;
	background-image: url("../img/top_menu_bg_sp.webp");
	background-repeat: no-repeat;
	background-size: cover;
}

.section_2::before {
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	background-position: 50% 0%;
}

.section_2::after {
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
	background-position: 50% 100%;
}

.section_2 .inner {
	padding-top: 10%;
	padding-bottom: 10%;
}

.section_2 .wrap {
	gap: 24px;
}

.section_2 .heading_wrap {}

.section_2 .heading_wrap .heading {}

.section_2 .heading_wrap .heading .main {
	color: #ffffff;
}

.section_2 .heading_wrap .heading .sub {}

.section_2 .content_wrap {
	gap: 24px;
}

.section_2 .content_wrap .content {
	width: 90%;
	max-width: 1120px;
}

.section_2 .content_wrap .content .item_wrap {
	gap: 24px;
}

.section_2 .content_wrap .content .item_wrap .item {
	gap: 48px;
	padding: 24px 0;
	border-radius: 15px;
	background-color: #ffffff;
}

.section_2 .content_wrap .content .item_wrap .item .text_wrap {}

.section_2 .content_wrap .content .item_wrap .item .text_wrap .text {}

.section_2 .content_wrap .content .item_wrap .item .table {
	width: 90%;
}

.section_2 .content_wrap .content .item_wrap .item .table tr th,
.section_2 .content_wrap .content .item_wrap .item .table tr td {
	padding: 12px 0;
	border: 0;
	font-weight: 500;
}

.section_2 .content_wrap .content .item_wrap .item .table tr th {
	width: 65%;
	padding-right: 6px;
}

.section_2 .content_wrap .content .item_wrap .item .table tr td {
	width: 35%;
	padding-left: 6px;
}

.section_2 .content_wrap .content .item_wrap .item .table div {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 12px;
}

@media screen and (min-width: 768px) {
	.section_2 {}

	.section_2::before,
	.section_2::after {
		background-image: url(../img/top_menu_bg_pc.webp);
	}

	.section_2::before {}

	.section_2::after {}

	.section_2 .inner {}

	.section_2 .wrap {}

	.section_2 .heading_wrap {}

	.section_2 .heading_wrap .heading {}

	.section_2 .heading_wrap .heading .main {}

	.section_2 .heading_wrap .heading .sub {}

	.section_2 .content_wrap {}

	.section_2 .content_wrap .content {}

	.section_2 .content_wrap .content .item_wrap {}

	.section_2 .content_wrap .content .item_wrap .item {
		padding: 24px 0;
	}

	.section_2 .content_wrap .content .item_wrap .item .text_wrap {}

	.section_2 .content_wrap .content .item_wrap .item .text_wrap .text {}

	.section_2 .content_wrap .content .item_wrap .item .table {
		width: 90%;
	}

	.section_2 .content_wrap .content .item_wrap .item .table tr th,
	.section_2 .content_wrap .content .item_wrap .item .table tr td {}

	.section_2 .content_wrap .content .item_wrap .item .table tr th {}

	.section_2 .content_wrap .content .item_wrap .item .table tr td {}

	.section_2 .content_wrap .content .item_wrap .item .table div {}

	.section_2 .content_wrap .content .item_wrap .item .table tr td div {
		align-items: flex-end;
	}

	.section_2 .content_wrap .content .item_wrap .item .table .highlight {
		font-size: 1.5em;
	}

	.section_2 .content_wrap .content_1 .item_wrap .item .table {
		width: 50%;
	}

	.section_2 .content_wrap .content_2 .item_wrap .item {
		flex-direction: row;
		gap: 48px;
	}

	.section_2 .content_wrap .content_2 .item_wrap .item .table {
		width: calc((100% - 10% - (24px * 1)) / 2);
	}

	.section_2 .content_wrap .content_3 .item_wrap,
	.section_2 .content_wrap .content_4 .item_wrap,
	.section_2 .content_wrap .content_5 .item_wrap {
		flex-direction: row;
		align-items: stretch;
	}
}

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

@media screen and (min-width: 1440px) {
	.section_2 .content_wrap {
		gap: 36px;
	}

	.section_2 .content_wrap .content .item_wrap .item .table tr th {
		width: 80%;
	}

	.section_2 .content_wrap .content .item_wrap .item .table tr td {
		width: 20%;
	}

	.section_2 .content_wrap .content_2 .item_wrap .item {
		gap: 72px;
	}

	.section_2 .content_wrap .content_3 .item_wrap,
	.section_2 .content_wrap .content_4 .item_wrap,
	.section_2 .content_wrap .content_5 .item_wrap {
		gap: 36px;
	}
}

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

/* ---------------------------------------------------------------------------------------------------- */

.section_3 {
	background-image: url(../img/top_reserve_bg_sp.webp);
	background-position: 65% 95%;
	background-repeat: no-repeat;
	background-size: 112.5vw;
}

.section_3 .inner {
	padding-top: 20%;
	padding-bottom: 50%;
}

.section_3 .wrap {
	gap: 24px;
}

.section_3 .heading_wrap {}

.section_3 .heading_wrap .heading {}

.section_3 .heading_wrap .heading .main {}

.section_3 .heading_wrap .heading .sub {}

.section_3 .content_wrap {
	gap: 24px;
}

.section_3 .content_wrap .content {
	width: 80%;
	max-width: 640px;
}

.section_3 .content_wrap .content .item_wrap {}

.section_3 .content_wrap .content .item_wrap .item {}

.section_3 .content_wrap .content .item_wrap .item .text_wrap {}

.section_3 .content_wrap .content .item_wrap .item .text_wrap .text {}

.section_3 .content_wrap .content_2 .item_wrap {
	flex-direction: row;
	gap: 12px;
}

@media screen and (min-width: 768px) {
	.section_3 {
		background-image: url(../img/top_reserve_bg_pc.webp);
		background-position: 65% 85%;
		background-size: 102.5%;
	}

	.section_3 .inner {
		padding-top: 10%;
		padding-bottom: 10%;
	}

	.section_3 .wrap {}

	.section_3 .heading_wrap {}

	.section_3 .heading_wrap .heading {}

	.section_3 .heading_wrap .heading .main {}

	.section_3 .heading_wrap .heading .sub {}

	.section_3 .content_wrap {}

	.section_3 .content_wrap .content {
		width: 50%;
	}

	.section_3 .content_wrap .content .item_wrap {}

	.section_3 .content_wrap .content .item_wrap .item {}

	.section_3 .content_wrap .content .item_wrap .item .text_wrap {}

	.section_3 .content_wrap .content .item_wrap .item .text_wrap .text {}

	.section_3 .content_wrap .content_1 {
		width: 45%;
		max-width: 500px;
	}

	.section_3 .content_wrap .content_2 .item_wrap {
		gap: 72px;
	}

	.section_3 .content_wrap .content_2 .item_wrap .item {
		width: calc((100% - (72px * 2)) / 3);
	}

	.section_3 .content_wrap .content_3 {
		width: 45%;
		max-width: 500px;
	}
}

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

@media screen and (min-width: 1440px) {
	.section_3 .content_wrap {
		gap: 36px;
	}
}

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

/* ---------------------------------------------------------------------------------------------------- */

.section_4 {}

.section_4::before,
.section_4::after {
	content: "";
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 90%;
	background-image: url("../img/top_gallery_bg_sp.webp");
	background-repeat: no-repeat;
	background-size: cover;
}

.section_4::before {
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	background-position: 50% 0%;
}

.section_4::after {
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
	background-position: 50% 100%;
}

.section_4 .inner {
	padding-top: 20%;
	padding-bottom: 20%;
}

.section_4 .wrap {
	gap: 24px;
}

.section_4 .heading_wrap {}

.section_4 .heading_wrap .heading {}

.section_4 .heading_wrap .heading .main {
	color: #ffffff;
}

.section_4 .heading_wrap .heading .sub {}

.section_4 .content_wrap {
	gap: 24px;
}

.section_4 .content_wrap .content {
	width: 90%;
	max-width: 1280px;
}

.section_4 .content_wrap .content .item_wrap {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 12px;
}

.section_4 .content_wrap .content .item_wrap .item {
	width: calc((100% - (12px * 1)) / 2);
}

.section_4 .content_wrap .content .item_wrap .item .text_wrap {}

.section_4 .content_wrap .content .item_wrap .item .text_wrap .text {}

@media screen and (min-width: 768px) {
	.section_4 {}

	.section_4::before,
	.section_4::after {
		background-image: url(../img/top_gallery_bg_pc.webp);
	}

	.section_4::before {}

	.section_4::after {}

	.section_4 .inner {
		padding-top: 10%;
		padding-bottom: 10%;
	}

	.section_4 .wrap {}

	.section_4 .heading_wrap {}

	.section_4 .heading_wrap .heading {}

	.section_4 .heading_wrap .heading .main {}

	.section_4 .heading_wrap .heading .sub {}

	.section_4 .content_wrap {}

	.section_4 .content_wrap .content {}

	.section_4 .content_wrap .content .item_wrap {}

	.section_4 .content_wrap .content .item_wrap .item {
		width: calc((100% - (12px * 3)) / 4);
	}

	.section_4 .content_wrap .content .item_wrap .item .text_wrap {}

	.section_4 .content_wrap .content .item_wrap .item .text_wrap .text {}
}

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

@media screen and (min-width: 1440px) {
	.section_4 .content_wrap .content .item_wrap {
		gap: 24px;
	}

	.section_4 .content_wrap .content .item_wrap .item {
		width: calc((100% - (24px * 3)) / 4);
	}
}

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

/* ---------------------------------------------------------------------------------------------------- */

.section_5 {}

.section_5 .inner {
	padding-top: 20%;
}

.section_5 .wrap {
	gap: 24px;
}

.section_5 .heading_wrap {}

.section_5 .heading_wrap .heading {}

.section_5 .heading_wrap .heading .main {}

.section_5 .heading_wrap .heading .sub {}

.section_5 .content_wrap {
	gap: 24px;
}

.section_5 .content_wrap .content {
	width: 90%;
	max-width: 1280px;
}

.section_5 .content_wrap .content .item_wrap {}

.section_5 .content_wrap .content .item_wrap .item {}

.section_5 .content_wrap .content .item_wrap .item .text_wrap {}

.section_5 .content_wrap .content .item_wrap .item .text_wrap .text {}

.section_5 .content_wrap .content_1 {
	
}

.section_5 .content_wrap .content_1 .item_wrap {
	padding-bottom: 96px;
}

.section_5 .content_wrap .content_1 .item_wrap .item_1 .text {
	font-size: 1.5rem;
}

.section_5 .content_wrap .content_1 .item_wrap .item_2 .text {
	line-height: 3;
}

.section_5 .content_wrap .content_1 .item_wrap .item_deco {
    position: absolute;
    bottom: 0;
    left: 60%;
    transform: translate(-50%, 0);
    width: 200vw;
    max-width: none;
}

.section_5 .content_wrap .content_2 .item_wrap .item .table {
	width: 100%;
}

.section_5 .content_wrap .content_2 .item_wrap .item .table tr th,
.section_5 .content_wrap .content_2 .item_wrap .item .table tr td {
	padding: 12px;
	border: 0;
	border-bottom: 1px #000000 dotted;
	font-weight: 500;
}

.section_5 .content_wrap .content_2 .item_wrap .item .table tr th {
	width: 30%;
	padding-left: 0;
	padding-right: 6px;
}

.section_5 .content_wrap .content_2 .item_wrap .item .table tr td {
	width: 70%;
	padding-left: 6px;
	padding-right: 0;
}

.section_5 .content_wrap .content_2 .item_wrap .item_1 .text {
	font-size: 1.5rem;
}

.section_5 .content_wrap .content_2 .item_wrap .item_2 {
	gap: 12px;
}

@media screen and (min-width: 768px) {
	.section_5 {}

	.section_5 .inner {
		padding-top: 10%;
	}

	.section_5 .wrap {
	}

	.section_5 .heading_wrap {}

	.section_5 .heading_wrap .heading {}

	.section_5 .heading_wrap .heading .main {}

	.section_5 .heading_wrap .heading .sub {}

	.section_5 .content_wrap {}

	.section_5 .content_wrap .content {}

	.section_5 .content_wrap .content .item_wrap {}

	.section_5 .content_wrap .content .item_wrap .item {}

	.section_5 .content_wrap .content .item_wrap .item .text_wrap {}

	.section_5 .content_wrap .content .item_wrap .item .text_wrap .text {}

	.section_5 .content_wrap .content_1 .item_wrap {
		padding-bottom: 84px;
	}

	.section_5 .content_wrap .content_1 .item_wrap .item_2 .text {
		text-align: center;
	}

	.section_5 .content_wrap .content_1 .item_wrap .item_deco {
		left: 57.5%;
		width: 162.5vw;
	}

	.section_5 .content_wrap .content_2 .item_wrap .item_2 {
		flex-direction: row;
		gap: 24px;
	}

	.section_5 .content_wrap .content_2 .item_wrap .item .table {
		width: calc((100% - (24px * 1)) * 0.55);
	}

	.section_5 .content_wrap .content_2 .item_wrap .item img {
		width: calc((100% - (24px * 1)) * 0.45);
	}
}

@media screen and (min-width: 1280px) {
	.section_5 .content_wrap .content_1 .item_wrap .item_1 .text {
		font-size: 2rem;
	}

	.section_5 .content_wrap .content_2 .item_wrap .item_1 .text {
		font-size: 2rem;
	}
}

@media screen and (min-width: 1440px) {
	.section_5 .content_wrap {
		gap: 60px;
	}

	.section_5 .content_wrap .content .item_wrap {
		gap: 24px;
	}

	.section_5 .content_wrap .content_1 .item_wrap .item_1 .text {
		font-size: 2.5rem;
	}

	.section_5 .content_wrap .content_2 .item_wrap .item_1 .text {
		font-size: 2.5rem;
	}

	.section_5 .content_wrap .content_2 .item_wrap .item_2 {
		gap: 72px;
	}

	.section_5 .content_wrap .content_2 .item_wrap .item .table {
		width: calc((100% - (72px * 1)) * 0.55);
	}

	.section_5 .content_wrap .content_2 .item_wrap .item img {
		width: calc((100% - (72px * 1)) * 0.45);
	}
}

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

/* ---------------------------------------------------------------------------------------------------- */
