@charset "utf-8";

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

.fv {
	position: relative;
	height: 200px;
	background-image: url(../img/fv_2.png);
	background-size: cover;
	background-position: 75% 0%;
	overflow: hidden;
}

.fv .section_inner {
	position: relative;
	width: 100%;
	height: 100%;
	padding: 0;
}

.fv .section_container {
	position: relative;
	width: 100%;
	height: 100%;
}

.fv_text {
	position: absolute;
	top: 65%;
	left: 5%;
	transform: translate(0, -50%);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 4px;
	width: max-content;
	margin: 0;
	font-size: 1rem;
	line-height: 1;
	/* letter-spacing: 0.1em; */
}

.fv_text > * {
	display: block;
}

.fv_text > *:nth-of-type(1) {
	font-size: 1.5em;
	color: #5F5C61;
}

.fv_text > *:nth-of-type(2) {
	font-family: "EB Garamond", serif;
	font-style: italic;
	font-size: 1em;
	color: #BFA2DB;
}

@media screen and (min-width: 768px) {
	.fv {
		height: auto;
		background-image: none;
	}

	.fv .section_inner {}

	.fv .section_container {}

	.fv_text {}

	.fv_text > * {}

	.fv_text > *:nth-of-type(1) {}

	.fv_text > *:nth-of-type(2) {}
}

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

@media screen and (min-width: 1440px) {
	.fv_text {
		left: 15%;
		font-size: 1.2rem;
	}
}

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

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

.section {
	width: 100%;
	margin: 0;
	padding: 0;
}

.section_inner {
	width: 100%;
	padding: 20% 0;
}

@media screen and (min-width: 768px) {
	.section_inner {
		padding: 10% 0;
	}
}

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

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

.section_1 {}

.section_1 .section_inner {
	padding: 0;
}

.section_1 .section_container_inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 0;
	width: 100%;
	margin: 0 auto 0;
}

.section_1 .content {
	position: relative;
	width: 100%;
	height: auto;
	padding: 5% 0;
	background-image: url(../img/geisha_1.png);
	background-position: 70% 0%;
	background-size: cover;
}

.section_1 .content .img_area {}

.section_1 .content .img_area .img {
	display: block;
	width: 100%;
	margin: 0 auto;
}

.section_1 .content .text_area {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 12px;
	width: 90%;
	margin: 0 auto;
}

.section_1 .content .text_area .text_1 {
	font-size: 0.8rem;
}

.section_1 .content .text_area .text_2 {
	font-size: 1.2rem;
}

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

	.section_1 .section_inner {}

	.section_1 .section_container_inner {}

	.section_1 .content {}

	.section_1 .content .img_area {}

	.section_1 .content .img_area .img {}

	.section_1 .content .text_area {}

	.section_1 .content .text_area .text_1 {}

	.section_1 .content .text_area .text_2 {}
}

@media screen and (min-width: 1280px) {
	.section_1 .content {
		height: auto;
		padding: 0;
		background-image: none;
	}

	.section_1 .content .text_area {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 80%;
	}
}

@media screen and (min-width: 1440px) {
	.section_1 .content .text_area {
		width: 70%;
	}

	.section_1 .content .text_area .text_1 {
		font-size: 1rem;
	}

	.section_1 .content .text_area .text_2 {
		font-size: 1.5rem;
	}
}

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

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

.section_2 {}

.section_2 .section_inner {
	padding: 0;
}

.section_2 .section_container_inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 0;
	width: 100%;
	margin: 0 auto 0;
}

.section_2 .content {
	width: 100%;
	height: auto;
	padding: 5% 0;
	background-color: #F5F5F5;
}

.section_2 .content .flex {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	gap: 12px;
	width: 90%;
	margin: 0 auto 0;
}

.section_2 .content .flex .box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 0;
	width: calc((100% - (12px * 1)) / 2);
	margin: 0;
}

.section_2 .content .flex .box .img_area {}

.section_2 .content .flex .box .img_area .img {
	display: block;
	width: 100%;
	margin: 30px auto;
}

.section_2 .content .flex .box .text_area {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 4px;
	width: 100%;
	margin: -15% auto 0;
	padding: 5%;
	background-color: #fff;
	font-size: 0.8rem;
	color: #5F5C61;
}

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

	.section_2 .section_inner {}

	.section_2 .section_container_inner {}

	.section_2 .content {}

	.section_2 .content .flex {}

	.section_2 .content .flex .box {
		width: calc((100% - (12px * 2)) / 3);
	}

	.section_2 .content .flex .box .img_area {}

	.section_2 .content .flex .box .img_area .img {}

	.section_2 .content .flex .box .text_area {}
}

@media screen and (min-width: 1280px) {
	.section_2 .content .flex {
		width: 80%;
	}

	.section_2 .content .flex .box {
		width: calc((100% - (12px * 3)) / 4);
	}
}

@media screen and (min-width: 1440px) {
	.section_2 .content .flex {
		gap: 24px;
		width: 70%;
	}

	.section_2 .content .flex .box {
		width: calc((100% - (24px * 3)) / 4);
	}

	.section_2 .content .flex .box .text_area {
		font-size: 1.2rem;
	}
}

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

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

.section_2_1 {}

.section_2_1 .section_inner {
	padding: 0;
}

.section_2_1 .section_container_inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 0;
	width: 100%;
	margin: 0 auto 0;
}

.section_2_1 .content {
	width: 100%;
	height: auto;
	padding: 5% 0;
	background-image: url(../img/black_bg_pc.png);
}

.section_2_1 .content .flex {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	gap: 12px;
	width: 90%;
	margin: 0 auto 0;
}

.section_2_1 .content .flex .box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 0;
	width: calc((100% - (12px * 1)) / 2);
	margin: 0;
}

.section_2_1 .content .flex .box .img_area {}

.section_2_1 .content .flex .box .img_area .img {
	display: block;
	width: 100%;
	margin: 30px auto;
	box-shadow: 0 0 4px rgba(255, 255, 255, 0.3), 0 4px 12px rgba(0, 0, 0, 0.5);
}

.section_2_1 .content .flex .box .text_area {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 4px;
	width: 100%;
	margin: -15% auto 0;
	padding: 5%;
	background-color: #fff;
	font-size: 0.8rem;
	color: #5F5C61;
}

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

	.section_2_1 .section_inner {}

	.section_2_1 .section_container_inner {}

	.section_2_1 .content {}

	.section_2_1 .content .flex {}

	.section_2_1 .content .flex .box {
		width: calc((100% - (12px * 2)) / 3);
	}

	.section_2_1 .content .flex .box .img_area {}

	.section_2_1 .content .flex .box .img_area .img {
	}

	.section_2_1 .content .flex .box .text_area {}
}

@media screen and (min-width: 1280px) {
	.section_2_1 .content .flex {
		width: 80%;
	}

	.section_2_1 .content .flex .box {
		width: calc((100% - (12px * 3)) / 3);
	}
}

@media screen and (min-width: 1440px) {
	.section_2_1 .content .flex {
		gap: 24px;
		width: 70%;
	}

	.section_2_1 .content .flex .box {
		width: calc((100% - (24px * 3)) / 3);
	}

	.section_2_1 .content .flex .box .text_area {
		font-size: 1.2rem;
	}
}

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

.section_3 {}

.section_3 .section_inner {
	padding: 0;
}

.section_3 .section_container_inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 0;
	width: 100%;
	margin: 0 auto 0;
}

.section_3 .heading_area {
	background-image: none;
}

.section_3 .heading_area .heading_2 {
	margin: 0 auto 0 5%;
}

.section_3 .content {
	width: 100%;
	margin: 0 auto;
	background-color: #fff;
}

.section_3 .content .text_area {
	background-color: rgba(34, 34, 34, 0.85);
}

.section_3 .content .text_area .text_area_inner {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 24px;
	width: 100%;
	height: 100%;
	padding: 15% 5% 10%;
}

.section_3 .content .text_area .text_area_inner .text_1 {
	width: 100%;
	margin-top: -25%;
	padding: 5% 2.5%;
	text-align: center;
	font-size: 0.9rem;
	background-color: #fff;
	color: #5F5C61;
}

.section_3 .content .text_area .text_area_inner .text_2 {
	font-size: 0.8rem;
}

.section_3 .content .text_area .text_area_inner .btn {
	display: block;
	width: max-content;
	margin: 0 auto;
	padding: 2.5% 5%;
	border: 1px #F3F1F5 solid;
	font-size: 0.8rem;
	color: #fff;
}

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

	.section_3 .section_inner {}

	.section_3 .section_container_inner {}

	.section_3 .heading_area {}

	.section_3 .heading_area .heading_2 {}

	.section_3 .content {}

	.section_3 .content .text_area {
		position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
	}

	.section_3 .content .text_area .text_area_inner {
		gap: 4px;
		padding: 5%;
	}

	.section_3 .content .text_area .text_area_inner .text_1 {
		position: relative;
		top: auto;
		left: auto;
		transform: none;
		width: fit-content;
		margin: 0;
		padding: 2.5%;
	}

	.section_3 .content .text_area .text_area_inner .text_2 {}

	.section_3 .content .text_area .text_area_inner .btn {
		padding: 1.25% 5%;
	}
}

@media screen and (min-width: 1280px) {
	.section_3 .content .text_area {
        position: absolute;
        top: 0;
        left: 10%;
        width: 35%;
        height: 100%;
	}

	.section_3 .content .text_area .text_area_inner {
		gap: 24px;
	}

	.section_3 .content .text_area .text_area_inner .text_1 {
		margin-left: -15%;
		padding: 2.5% 5%;
		font-size: 1.35rem;
	}

	.section_3 .content .text_area .text_area_inner .text_2 {
		text-align: center;
	}

	.section_3 .content .text_area .text_area_inner .btn {
		padding: 2.5% 5%;
	}
}

@media screen and (min-width: 1440px) {
	.section_3 .content .text_area {
		left: 15%;
	}

	.section_3 .content .text_area .text_area_inner {
		gap: 36px;
	}

	.section_3 .content .text_area .text_area_inner .text_1 {
		font-size: 1.5rem;
	}

	.section_3 .content .text_area .text_area_inner .text_2 {
		font-size: 1rem;
	}

	.section_3 .content .text_area .text_area_inner .btn {
		font-size: 1rem;
	}
}

@media screen and (min-width: 1920px) {
	.section_3 .content .text_area .text_area_inner {
		gap: 60px;
	}

	.section_3 .content .text_area .text_area_inner .text_1 {
		margin-left: -45%;
	}
}

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