@charset "utf-8";

/*
Theme Name: サンプルテーマ
*/

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

.fv {
	position: relative;
	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: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 24px;
	width: max-content;
	height: max-content;
	margin: 0;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.1em;
	color: #fff;
}

.fv_text > * {
	display: block;
}

.fv_text > *:nth-of-type(1) {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 12px;
	font-size: 1em;
}

.fv_text > *:nth-of-type(2) {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 12px;
	padding-left: 60px;
	font-size: 0.5em;
}

.fv_text > *:nth-of-type(2)::before {
	content: "";
	position: absolute;
	top: 30%;
	left: 0;
	width: 48px;
	height: 1px;
	background-color: #fff;
}

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

	.fv .section_inner {}

	.fv .section_container {}

	.fv_text {
		top: 50%;
		left: 10%;
		transform: translate(0, 0);
		gap: 12px;
		font-size: 1.6rem;
	}

	.fv_text > * {}

	.fv_text > *:nth-of-type(1) {
		flex-direction: row;
		align-items: center;
		gap: 0;
		font-size: 1em;
	}

	.fv_text > *:nth-of-type(2) {
		flex-direction: row;
		align-items: center;
		gap: 0;
		padding-left: 60px;
		font-size: 0.6em;
	}

	.fv_text > *:nth-of-type(2)::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0, -50%);
		width: 48px;
		height: 1px;
	}
}

@media screen and (min-width: 1280px) {
	.fv_text {
        top: 50%;
        left: 15%;
        gap: 24px;
        font-size: 2rem;
	}
}

@media screen and (min-width: 1440px) {
	.fv_text {
        top: 50%;
        left: 17%;
        gap: 36px;
        font-size: 2.2rem;
	}

	.fv_text > *:nth-of-type(2) {
		font-size: 0.65em;
	}
}

@media screen and (min-width: 1920px) {
	.fv_text {
		font-size: 3rem;
	}

	.fv_text > *:nth-of-type(2) {
		font-size: 0.65em;
	}
}

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

.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 {
	background-image: url(../img/top_message_deco.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: 100% 0;
}

.section_1 .section_inner {
	padding: 20% 0 0;
}

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

.section_1 .heading_1 {
	margin: 0 auto 0 5%;
}

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

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

.section_1 .top .text_wrap .text {
	font-weight: 500;
}

.section_1 .top .btn_wrap {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	gap: 12px;
	width: max-content;
	max-width: 90%;
	margin: 0 auto 0 5%;
}

.section_1 .top .btn_wrap span {
	font-weight: 500;
	color: #0ED2F7;
}

.section_1 .top .btn_wrap a {
	display: block;
	width: 84px;
	height: auto;
}

@media screen and (min-width: 768px) {
	.section_1 {
		background-size: 60%;
	}

	.section_1 .section_inner {
		padding: 0;
	}

	.section_1 .section_container_inner {
		flex-direction: row-reverse;
		align-items: flex-start;
	}

	.section_1 .heading_1 {
		margin: 0 auto 0 0;
	}

	.section_1 .top {
		flex: 5;
		padding: 5% 0 0;
	}

	.section_1 .top .text_wrap {
		width: 90%;
		margin: 0 auto 0 0;
	}

	.section_1 .top .text_wrap .text {}

	.section_1 .top .btn_wrap {
		width: 100%;
		margin: 0 auto 0 0;
	}

	.section_1 .top .btn_wrap span {}

	.section_1 .top .btn_wrap a {}

	.section_1 .img_wrap {
		flex: 5;
	}
}

@media screen and (min-width: 1280px) {
	.section_1 .section_container_inner {
		align-items: flex-end;
		gap: 60px;
	}

	.section_1 .top {
		flex: 5.5;
		padding: 0;
	}

	.section_1 .top .text_wrap {
		width: 70%;
	}

	.section_1 .top .text_wrap .text {
		line-height: 2;
	}

	.section_1 .img_wrap {
		flex: 4.5;
	}
}

@media screen and (min-width: 1440px) {
	.section_1 .top .text_wrap .text {
		font-size: 1.25rem;
	}

	.section_1 .top .btn_wrap span {
		font-size: 1.25rem;
	}
}

@media screen and (min-width: 1920px) {
	.section_1 {
		position: relative;
		z-index: 2;
	}

	.section_1 .section_container_inner {
		gap: 120px;
	}

	.section_1 .top {
		gap: 60px;
	}

	.section_1 .top .text_wrap {
		width: 65%;
	}

	.section_1 .top .text_wrap .text {
		line-height: 2.5;
	}
}

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

.section_2 {
	position: relative;
	background-image: url(../img/top_service_bg_sp.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: 50% 100%;
}

.section_2 .deco_1 {
	position: absolute;
	top: 0;
	left: -100px;
	width: 80%;
}

.section_2 .deco_1_bg {
	position: absolute;
	top: -230px;
	left: -100px;
	width: 80%;
}

.section_2 .posi_1 {
	position: absolute;
	top: 36px;
	left: 5%;
	width: 72px;
}

.section_2 .deco_2 {
    position: absolute;
    bottom: 50px;
    right: 5%;
    width: 45%;
}

.section_2 .deco_2_bg {
    position: absolute;
    bottom: -75px;
    right: 0%;
    width: 80%;
	opacity: 0.5;
}

.section_2 .posi_2 {
	position: absolute;
	bottom: 36px;
	right: 5%;
	width: 72px;
}

.section_2 .section_inner {
	position: relative;
	z-index: 1;
	padding: 20% 0 60%;
}

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

.section_2 .top {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 24px;
	width: 90%;
	margin: 0 auto;
}

.section_2 .flex {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 72px;
	width: 80%;
	margin: 0 auto;
}

.section_2 .flex::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 1px;
	background-color: #009AB7;
}

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

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

.section_2 .flex .content_wrap .content .text_1 {
	font-size: 1.25rem;
	font-weight: 500;
}

@media screen and (min-width: 768px) {
	.section_2 {
		position: relative;
		background-image: url(../img/top_service_bg_pc.png);
		background-size: 100%;
		background-repeat: no-repeat;
		background-position: 50% 100%;
	}

	.section_2 .deco_1 {
		left: 0;
		width: 25%;
	}

	.section_2 .deco_1_bg {
		top: -100px;
		left: 0;
		width: 25%;
	}

	.section_2 .posi_1 {
		top: 36px;
		left: 36px;
	}

	.section_2 .deco_2 {
		right: 0;
		width: 25%;
	}

	.section_2 .deco_2_bg {
		bottom: -50px;
		right: 0;
		width: 45%;
		opacity: 1;
	}

	.section_2 .posi_2 {}

	.section_2 .section_inner {
		padding: 20% 0 30%;
	}

	.section_2 .section_container_inner {}

	.section_2 .top {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%, 0);
		width: max-content;
		max-width: 100%;
		height: max-content;
		max-height: 100%;
		writing-mode: vertical-rl;
	}

	.section_2 .flex {
		flex-direction: row;
	}

	.section_2 .flex::after {
		top: auto;
		bottom: 0;
		left: 50%;
		transform: translate(-50%, 0);
		width: 1px;
		height: 65%;
	}

	.section_2 .flex .content_wrap {}

	.section_2 .flex .content_wrap .content {}

	.section_2 .flex .content_wrap .content .text_1 {}
}

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

	.section_2 .deco_1 {}

	.section_2 .deco_1_bg {
		top: -160px;
	}

	.section_2 .posi_1 {
		top: 60px;
		left: 60px;
		width: 144px;
	}

	.section_2 .deco_2 {}

	.section_2 .deco_2_bg {
		bottom: -100px;
	}

	.section_2 .posi_2 {
		bottom: 156px;
		right: 60px;
		width: 144px;
	}

	.section_2 .section_inner {
		padding: 10% 0 15%;
	}

	.section_2 .section_container_inner {}

	.section_2 .top {}

	.section_2 .flex {
		width: 50%;
	}

	.section_2 .flex::after {}

	.section_2 .flex .content_wrap {}

	.section_2 .flex .content_wrap .content {}

	.section_2 .flex .content_wrap .content .text_1 {}
}

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

	.section_2 .deco_1 {}

	.section_2 .deco_1_bg {
		top: -200px;
	}

	.section_2 .posi_1 {}

	.section_2 .deco_2 {
		width: 20%;
	}

	.section_2 .deco_2_bg {
		bottom: -120px;
		right: -60px;
	}

	.section_2 .posi_2 {}

	.section_2 .section_inner {}

	.section_2 .section_container_inner {}

	.section_2 .top {}

	.section_2 .flex {
		gap: 144px;
		width: 60%;
	}

	.section_2 .flex::after {
		height: 50%;
	}

	.section_2 .flex .content_wrap {}

	.section_2 .flex .content_wrap .content {}

	.section_2 .flex .content_wrap .content .text_1 {
		font-size: 1.75rem;
	}
}

@media screen and (min-width: 1920px) {
	.section_2 {
		margin-top: -15%;
	}

	.section_2 .deco_1 {
		top: 264px;
	}

	.section_2 .deco_1_bg {
		top: -24px;
	}

	.section_2 .posi_1 {
		top: 324px;
		width: 168px;
	}

	.section_2 .deco_2 {
		bottom: 120px;
		width: 20%;
	}

	.section_2 .deco_2_bg {
		bottom: -180px;
		right: -60px;
	}

	.section_2 .posi_2 {
		bottom: 240px;
		width: 168px;
	}

	.section_2 .section_inner {
		padding: 20% 0 17.5%;
	}

	.section_2 .section_container_inner {}

	.section_2 .top {}

	.section_2 .flex {
		gap: 252px;
		width: 50%;
	}

	.section_2 .flex::after {}

	.section_2 .flex .content_wrap {}

	.section_2 .flex .content_wrap .content {}

	.section_2 .flex .content_wrap .content .text_1 {}
}

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

.section_3 {}

.section_3 .section_inner {
	position: relative;
	z-index: 1;
	padding: 20% 0 0;
}

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

.section_3 .top {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 24px;
	width: 90%;
	margin: 0 auto;
}

.section_3 .flex {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 72px;
	width: 80%;
	margin: 0 auto;
}

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

.section_3 .flex .content_wrap .content {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 12px;
	width: 100%;
	margin: 0 auto;
}

.section_3 .flex .content_wrap .content .img {
	width: 100%;
}

.section_3 .flex .content_wrap .content .text_wrap {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 12px;
	width: 100%;
	margin: 0 auto;
	padding: 5%;
}

.section_3 .flex .content_wrap .content .text_wrap .text_1,
.section_3 .flex .content_wrap .content .text_wrap .text_2 {
	line-height: 1;
}

.section_3 .flex .content_wrap .content .text_wrap .text_1 {
	color: #009AB7;
}

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

	.section_3 .section_inner {
		padding: 10% 0 0;
	}

	.section_3 .section_container_inner {
		flex-direction: row;
		align-items: flex-start;
		width: 90%;
	}

	.section_3 .top {
		width: max-content;
	}

	.section_3 .top .heading_area .heading_1 {
		align-items: flex-start;
	}

	.section_3 .top .heading_area .heading_1 .top {
		margin: 0;
	}

	.section_3 .flex {}

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

	.section_3 .flex .content_wrap .content {}

	.section_3 .flex .content_wrap .content .text_wrap {}

	.section_3 .flex .content_wrap .content .text_wrap .text_1,
	.section_3 .flex .content_wrap .content .text_wrap .text_2 {}

	.section_3 .flex .content_wrap .content .text_wrap .text_1 {}
}

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

	.section_3 .section_inner {}

	.section_3 .section_container_inner {}

	.section_3 .top {}

	.section_3 .top .heading_area .heading_1 {}

	.section_3 .top .heading_area .heading_1 .top {}

	.section_3 .flex {}

	.section_3 .flex .content_wrap {}

	.section_3 .flex .content_wrap .content {}

	.section_3 .flex .content_wrap .content .text_wrap {}

	.section_3 .flex .content_wrap .content .text_wrap .text_1,
	.section_3 .flex .content_wrap .content .text_wrap .text_2 {}

	.section_3 .flex .content_wrap .content .text_wrap .text_1 {}
}

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

	.section_3 .section_inner {}

	.section_3 .section_container_inner {
		width: 70%;
	}

	.section_3 .top {}

	.section_3 .top .heading_area .heading_1 {}

	.section_3 .top .heading_area .heading_1 .top {}

	.section_3 .flex {}

	.section_3 .flex .content_wrap {
		gap: 24px;
	}

	.section_3 .flex .content_wrap .content {}

	.section_3 .flex .content_wrap .content .text_wrap {
		padding: 10%;
	}

	.section_3 .flex .content_wrap .content .text_wrap .text_1,
	.section_3 .flex .content_wrap .content .text_wrap .text_2 {}

	.section_3 .flex .content_wrap .content .text_wrap .text_1 {}
}

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

	.section_3 .section_inner {}

	.section_3 .section_container_inner {
		width: 60%;
	}

	.section_3 .top {}

	.section_3 .top .heading_area .heading_1 {}

	.section_3 .top .heading_area .heading_1 .top {}

	.section_3 .flex {}

	.section_3 .flex .content_wrap {}

	.section_3 .flex .content_wrap .content {}

	.section_3 .flex .content_wrap .content .text_wrap {}

	.section_3 .flex .content_wrap .content .text_wrap .text_1,
	.section_3 .flex .content_wrap .content .text_wrap .text_2 {}

	.section_3 .flex .content_wrap .content .text_wrap .text_1 {}
}

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

.section_4 {}

.section_4 .section_inner {
	padding: 10% 0 10%;
}

.section_4 .section_container {
	width: 90%;
	margin: 0 auto 0;
	padding: 10% 5%;
	background-color: #fff;
	box-shadow: 0px 4px 18px 1px rgba(217, 217, 217, 0.33);
}

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

.section_4 .flex {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 24px;
	width: 100%;
	margin: 0 auto;
}

.section_4 .flex .top {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 24px;
	width: 100%;
	margin: 0 auto;
}

.section_4 .flex .bottom {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 24px;
	width: 100%;
	margin: 0 auto;
}

.section_4 .flex .bottom .img_wrap {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 12px;
	width: 80%;
	margin: 0 auto;
}

.section_4 .flex .bottom .img_wrap .img {
	display: block;
	width: 100%;
	margin: 0 auto;
}

.section_4 .flex .text_1 {
	width: max-content;
	max-width: 100%;
	text-align: center;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-size: 1.5rem;
	font-weight: 500;
}

.section_4 .flex .text_2 {
	width: max-content;
	max-width: 100%;
	font-weight: 500;
}

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

	.section_4 .deco {
		position: absolute;
		bottom: -20%;
		left: 0;
		width: 35%;
	}

	.section_4 .section_inner {}

	.section_4 .section_container {
		padding: 5%;
	}

	.section_4 .section_container_inner {}

	.section_4 .flex {
		flex-direction: row;
		align-items: flex-start;
	}

	.section_4 .flex .top {
		width: 35%;
	}

	.section_4 .flex .bottom {
		width: 65%;
	}

	.section_4 .flex .bottom .img_wrap {
		flex-direction: row;
		width: 100%;
	}

	.section_4 .flex .bottom .img_wrap .img {}

	.section_4 .flex .text_1 {
		text-align: left;
	}

	.section_4 .flex .text_2 {}
}

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

	.section_4 .deco {
		position: absolute;
		bottom: -35%;
		left: 0;
		width: 35%;
	}

	.section_4 .section_inner {}

	.section_4 .section_container {}

	.section_4 .section_container_inner {}

	.section_4 .flex {}

	.section_4 .flex .top {}

	.section_4 .flex .bottom {
		align-items: flex-start;
	}

	.section_4 .flex .bottom .img_wrap {
		gap: 24px;
		width: 80%;
		margin: 0;
	}

	.section_4 .flex .bottom .img_wrap .img {}

	.section_4 .flex .text_1 {}

	.section_4 .flex .text_2 {}
}

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

	.section_4 .deco {
		position: absolute;
		bottom: -35%;
		left: 0;
		width: 35%;
	}

	.section_4 .section_inner {}

	.section_4 .section_container {
		width: 70%;
	}

	.section_4 .section_container_inner {}

	.section_4 .flex {}

	.section_4 .flex .top {}

	.section_4 .flex .bottom {}

	.section_4 .flex .bottom .img_wrap {
		gap: 24px;
	}

	.section_4 .flex .bottom .img_wrap .img {}

	.section_4 .flex .text_1 {
		font-size: 2rem;
	}

	.section_4 .flex .text_2 {}
}

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

	.section_4 .deco {
		position: absolute;
		bottom: -40%;
		left: 0;
		width: 35%;
	}

	.section_4 .section_inner {}

	.section_4 .section_container {}

	.section_4 .section_container_inner {}

	.section_4 .flex {}

	.section_4 .flex .top {}

	.section_4 .flex .bottom {}

	.section_4 .flex .bottom .img_wrap {}

	.section_4 .flex .bottom .img_wrap .img {}

	.section_4 .flex .text_1 {}

	.section_4 .flex .text_2 {}
}

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