@charset "utf-8";

/* ------------------------------
    main_secttl
------------------------------ */
.main_secttl {
	width: 100%;
	height: 157px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1800px auto, 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}


@media screen and (max-width: 768px) {
	#pagettl .ttl img {
		height: 7.2vw;
	}

	.main_secttl {
		height: 35.33vw;
		background-size: 100% auto !important;
	}

	.main_secttl img {
		width: auto;
		height: 6.4vw;
	}
}

/* ------------------------------
    sec_message
------------------------------ */
#sec_message .main_secttl {
	background-image: url(../img/about/bg_secttl.png), linear-gradient(90deg, rgba(204, 255, 124, 1) 18.57%, rgba(0, 227, 227, 1) 49.37%, rgba(255, 165, 239, 1) 100%);
}

#sec_message .cnt {
	padding: 85px 0;
}

#sec_message .inner {
	justify-content: space-between;
	align-items: flex-end;
}

#sec_message .txtwrap {
	width: 636px;
}

#sec_message .txtwrap .ttl {
	position: relative;
	font-family: "Shuei MaruGo B";
	font-weight: bold;
	font-size: 2.7rem;
	letter-spacing: 0.22em;
	line-height: 2.18;
	margin-bottom: 1em;
}

#sec_message .txtwrap .ttl .line {
	position: relative;
	display: inline-block;
}

#sec_message .txtwrap .ttl .line::before {
	content: "";
	width: 100%;
	height: 10px;
	border-radius: 5px;
	display: inline-block;
	background: linear-gradient(90deg, rgba(204, 255, 124, 1) 18.57%, rgba(0, 227, 227, 1) 49.37%, rgba(255, 165, 239, 1) 100%);
	position: absolute;
	left: 0;
	bottom: .5em;
	z-index: -1;
}

#sec_message .txtwrap .txt {
	font-size: 1.7rem;
	line-height: 2.47;
	letter-spacing: 0.14em;
	text-align: justify;
}

#sec_message .txtwrap .txt + .txt {
	margin-top: 1.2em;
}


#sec_message .imgwrap .img {
	position: relative;
}

#sec_message .imgwrap .img::before {
	content: "";
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, rgba(204, 255, 124, 1) 18.57%, rgba(0, 227, 227, 1) 49.37%, rgba(255, 165, 239, 1) 100%);
	position: absolute;
	left: -60px;
	top: -60px;
	z-index: -2;
}

#sec_message .imgwrap .img::after {
	content: "";
	width: calc(100% - 28px);
	height: calc(100% - 28px);
	background-color: #fff;
	position: absolute;
	left: -46px;
	top: -46px;
	z-index: -1;
}

#sec_message .imgwrap .name {
	font-size: 2.4rem;
	line-height: 1.6;
	margin-top: .8em;
	vertical-align: middle;
}

#sec_message .imgwrap .name span {
	display: inline-block;
	font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
	#link-message,
	#link-system {
		padding-top: 50px;
		margin-top: -50px;
	}

	#sec_message .main_secttl {
		background-image: url(../img/about/bg_secttl_sp.png), linear-gradient(90deg, rgba(204, 255, 124, 1) 18.57%, rgba(0, 227, 227, 1) 49.37%, rgba(255, 165, 239, 1) 100%);
	}

	#sec_message .cnt {
		padding: 11vw 0 12vw;
	}

	#sec_message .txtwrap {
		width: 100%;
	}

	#sec_message .txtwrap .ttl {
		font-size: 5.33vw;
		margin-bottom: .5em;
	}


	#sec_message .txtwrap .ttl .line::before {
		height: 2vw;
		border-radius: 1vw;
	}

	#sec_message .txtwrap .txt {
		font-size: 3.2vw;
		line-height: 2;
	}

	#sec_message .txtwrap .txt + .txt {
		margin-top: 1.2em;
	}


	#sec_message .imgwrap {
		width: 65.2vw;
		margin-left: auto;
		margin-top: 14.67vw;
	}

	#sec_message .imgwrap .img {
		width: 100%;
	}

	#sec_message .imgwrap .img::before {
		left: -10.67vw;
		top: -10.67vw;
	}

	#sec_message .imgwrap .img::after {
		width: calc(100% - 5.34vw);
		height: calc(100% - 5.34vw);
		left: -8vw;
		top: -8vw;
	}

	#sec_message .imgwrap .name {
		font-size: 4.8vw;
	}

	#sec_message .imgwrap .name span {
		font-size: 3.2vw;
	}

}



/* ------------------------------
    sec_system
------------------------------ */
#sec_system .main_secttl {
	background-image: url(../img/about/bg_secttl.png), linear-gradient(90deg, rgba(79, 229, 255, 1) 0%, rgba(230, 255, 117, 1) 47.17%, rgba(110, 245, 112, 1) 100%);
}

#sec_system .cnt {
	padding: 85px 0 100px;
}

#sec_system .inner {
	justify-content: space-between;
	align-items: flex-end;
}

#sec_system .txtwrap {
	width: 540px;
}

#sec_system .txtwrap .ttl {
	position: relative;
	font-family: "Shuei MaruGo B";
	font-weight: bold;
	font-size: 2.7rem;
	letter-spacing: 0.22em;
	line-height: 2.18;
	margin-bottom: .5em;
}

#sec_system .txtwrap .ttl .line {
	position: relative;
	display: inline-block;
}

#sec_system .txtwrap .ttl .line::before {
	content: "";
	width: 100%;
	height: 10px;
	border-radius: 5px;
	display: inline-block;
	background: linear-gradient(90deg, rgba(79, 229, 255, 1) 0%, rgba(230, 255, 117, 1) 47.17%, rgba(110, 245, 112, 1) 100%);
	position: absolute;
	left: 0;
	bottom: .5em;
	z-index: -1;
}

#sec_system .txtwrap .txt {
	font-size: 1.7rem;
	line-height: 2.47;
	letter-spacing: 0.14em;
	text-align: justify;
}

#sec_system .txtwrap .txt + .txt {
	margin-top: 1.2em;
}


#sec_system .imgwrap {
	margin-left: 110px;
}

#sec_system .imgwrap .img {
	position: relative;
}

#sec_system .imgwrap .img::before {
	content: "";
	width: 486px;
	height: 324px;
	background: linear-gradient(90deg, rgba(79, 229, 255, 1) 0%, rgba(230, 255, 117, 1) 47.17%, rgba(110, 245, 112, 1) 100%);
	position: absolute;
	left: -60px;
	top: 85px;
	z-index: -2;
}

#sec_system .imgwrap .img::after {
	content: "";
	width: calc(486px - 28px);
	height: calc(324px - 28px);
	background-color: #fff;
	position: absolute;
	left: -44px;
	top: 99px;
	z-index: -1;
}

#sec_system .box_list {
	width: 1000px;
	margin: 60px auto 0;
	background: #ededed url(../img/common/bg_stripe2.svg);
	padding: 50px 100px;
	position: relative;
	border-radius: 20px;
	overflow: hidden;
}

#sec_system .box_list .list li {
	font-size: 1.7rem;
	padding-left: 30px;
	position: relative;
	letter-spacing: 0.14em;
}

#sec_system .box_list .list li::before {
	content: "";
	width: 20px;
	height: 20px;
	background: url(../img/common/ico_check.png) no-repeat center / 100% auto;
	position: absolute;
	left: 0;
	top: 9px;
}

#sec_system .box_list .note {
	font-size: 1.4rem;
	line-height: 2;
	margin-top: 1.5em;
	letter-spacing: 0.14em;
}

#sec_system .block {
	margin-top: 90px;
}

#sec_system .block .ttl {
	position: relative;
	font-family: "Shuei MaruGo B";
	font-weight: bold;
	font-size: 2.7rem;
	letter-spacing: 0.12em;
	line-height: 2.18;
	position: relative;
	margin-bottom: .5em;
}

#sec_system .block .ttl::before {
	content: "";
	width: 100%;
	height: 10px;
	border-radius: 5px;
	display: inline-block;
	background: linear-gradient(90deg, rgba(79, 229, 255, 1) 0%, rgba(230, 255, 117, 1) 47.17%, rgba(110, 245, 112, 1) 100%);
	position: absolute;
	left: 0;
	bottom: .5em;
	z-index: -1;
}

#sec_system .block .ttl + .txt {
	font-size: 1.7rem;
	letter-spacing: 0.14em;
}

#sec_system .block .tb {
	width: 100%;
	border-collapse: collapse;
	margin-top: 50px;
}

#sec_system .block .tb th,
#sec_system .block .tb td {
	vertical-align: middle;
	text-align: center;
}

#sec_system .block .tb th {
	padding: 0 10px;
	height: 50px;
}

#sec_system .block .tb th span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 2;
	letter-spacing: 0.2em;
	text-align: center;
	border-radius: 25px;
	background: linear-gradient(90deg, rgba(79, 229, 255, 1) 0%, rgba(230, 255, 117, 1) 47.17%, rgba(110, 245, 112, 1) 100%);

}

#sec_system .block .tb th {
	padding: 0 15px;
	height: 50px;
}

#sec_system .block .tb td {
	font-size: 1.7rem;
	line-height: 1.76;
	padding: 15px 30px;
	border-bottom: 2px solid #bfbfbf;
	position: relative;
}

#sec_system .block .tb td:not(:first-child) {
	background: linear-gradient(180deg, #fff 0%, #fff 20px, #bfbfbf 20px, #bfbfbf 100%);
	background-repeat: no-repeat;
	background-size: 2px calc(100% - 20px);
	background-position: left top;
}

#sec_system .block .tb th:nth-child(1) {
	padding-left: 0;
}

#sec_system .block .tb th:nth-child(3) {
	padding-right: 0
}

#sec_system .block .tb td:first-of-type::before {
	content: none;
}


/*block01*/
#sec_system .block01 .tb th:nth-child(1) {
	width: 242px;
}

#sec_system .block01 .tb th:nth-child(2) {
	width: 360px;
}

#sec_system .block01 .tb td:nth-child(3) {
	text-align: left;
}

/*block02*/
#sec_system .block02 .tb th:nth-child(2),
#sec_system .block02 .tb th:nth-child(3) {
	width: 480px;
}

#sec_system .block02 .tb th:nth-child(3) span {
	background: #e0e1e1;
}

@media screen and (max-width: 768px) {
	#sec_system .main_secttl {
		background-image: url(../img/about/bg_secttl_sp.png), linear-gradient(90deg, rgba(79, 229, 255, 1) 0%, rgba(230, 255, 117, 1) 47.17%, rgba(110, 245, 112, 1) 100%);
	}

	#sec_system .cnt {
		padding: 13vw 0;
	}

	#sec_system .txtwrap {
		width: 100%;
	}

	#sec_system .txtwrap .ttl {
		font-size: 5.33vw;
	}

	#sec_system .txtwrap .ttl .line::before {
		height: 2vw;
		border-radius: 1vw;
	}

	#sec_system .txtwrap .txt {
		font-size: 3.2vw;
		line-height: 2;
	}


	#sec_system .imgwrap {
		width: 100%;
		margin-left: 0;
	}

	#sec_system .imgwrap .img {
		width: 100%;
		padding: 0 10.27vw;
		margin-bottom: 4vw;
	}

	#sec_system .imgwrap .img::before {
		width: 100%;
		height: 56vw;
		left: 0;
		top: 14vw;
		z-index: -2;
	}

	#sec_system .imgwrap .img::after {
		content: "";
		width: calc(100% - 5.34vw);
		height: calc(56vw - 5.34vw);
		left: 2.67vw;
		top: 16.67vw;
		z-index: -1;
	}


	#sec_system .box_list {
		width: 100%;
		margin: 6vw auto 0;
		background-size: 2.67vw auto;
		padding: 7vw 6vw;
		border-radius: 3.47vw;
	}

	#sec_system .box_list .list li {
		font-size: 3.2vw;
		line-height: 2;
		padding-left: 8vw;
		letter-spacing: 0.2em;
	}

	#sec_system .box_list .list li + li {
		margin-top: .5em;
	}

	#sec_system .box_list .list li::before {
		width: 4vw;
		height: 4vw;
		top: 1vw;
	}

	#sec_system .box_list .note {
		font-size: 2.93vw;
		letter-spacing: 0.2em;
	}

	#sec_system .block {
		margin-top: 11vw;
	}

	#sec_system .block .ttl {
		font-size: 5.33vw;
		line-height: 1.75;
	}

	#sec_system .block .ttl::before {
		content: none;
	}

	#sec_system .block .ttl .line {
		display: inline-block;
		position: relative;
	}

	#sec_system .block .ttl .line::before {
		content: "";
		width: 100%;
		height: 2vw;
		border-radius: 1vw;
		display: inline-block;
		background: linear-gradient(90deg, rgba(79, 229, 255, 1) 0%, rgba(230, 255, 117, 1) 47.17%, rgba(110, 245, 112, 1) 100%);
		position: absolute;
		left: 0;
		bottom: .2em;
		z-index: -1;
	}

	#sec_system .block .ttl + .txt {
		font-size: 3.2vw;
		letter-spacing: 0.2em;
	}

	#sec_system .block .tb {
		margin-top: 6.6vw;
		margin-bottom: 8vw;
	}

	#sec_system .block .tb th {
		padding: 0 1.33vw;
		height: 6.67vw;
	}

	#sec_system .block .tb th span {
		font-size: 3.6vw;
		border-radius: 3.33vw;

	}

	#sec_system .block .tb td {
		font-size: 3.2vw;
		line-height: 1.58;
		padding: 2.67vw 3vw;
		border-bottom: 1px solid #bfbfbf;
	}

	#sec_system .block .tb td:not(:first-child) {
		background: linear-gradient(180deg, #fff 0%, #fff 2.67vw, #bfbfbf 2.67vw, #bfbfbf 100%);
		background-repeat: no-repeat;
		background-size: 1px calc(100% - 2.67vw);
		background-position: left top;
	}

	/*block01*/
	#sec_system .block01 .tb th:nth-child(1) {
		width: 21vw;
	}

	#sec_system .block01 .tb th:nth-child(2) {
		width: 23.6vw;
	}

	#sec_system .block01 .tb td:nth-child(1) {
		padding: 2.67vw 2vw;
	}

	#sec_system .block01 .tb td:nth-child(3) {
		padding: 2.67vw 4vw;
	}


	/*block02*/
	#sec_system .block02 .tb th:nth-child(2) {
		width: 33vw;
	}

	#sec_system .block02 .tb th:nth-child(3) {
		width: 30vw;
	}

	#sec_system .block02 .tb td:nth-child(1) {
		padding: 2.67vw 1vw;
	}
}

/* ------------------------------
    sec_faq
------------------------------ */
#sec_faq .main_secttl {
	background-image: url(../img/about/bg_secttl.png), linear-gradient(90deg, rgba(255, 237, 0, 1) 0.42%, rgba(79, 233, 255, 1) 100%);
}

#sec_faq .cnt {
	padding: 100px 0 210px;
}

#sec_faq .faq_box {
	width: 1000px;
	margin: 0 auto 60px;
	border-radius: 10px;
	overflow: hidden;
	background: #ededed url(../img/common/bg_stripe2.svg);
}

#sec_faq .faq_box .q_txt {
	background-image: linear-gradient(90deg, rgba(255, 237, 0, 1) 0.42%, rgba(79, 233, 255, 1) 100%);
	border-radius: 10px;
	padding: 10px 70px;
}

#sec_faq .faq_box .q_txt p {
	font-weight: bold;
	font-size: 2.3rem;
	line-height: 1.5;
}

#sec_faq .faq_box .a_txt {
	padding: 25px 100px 25px 70px;
}

#sec_faq .faq_box .a_txt p {
	font-size: 1.7rem;
	letter-spacing: 0.14em;
}

#sec_faq .faq_box .q_txt p,
#sec_faq .faq_box .a_txt p {
	padding-left: 50px;
	position: relative;
}

#sec_faq .faq_box .q_txt p span,
#sec_faq .faq_box .a_txt p span {
	display: inline-block;
	font-family: "Shuei MaruGo B";
	font-weight: bold;
	font-size: 2.7rem;
	line-height: 1;
	position: absolute;
	left: 0;
	top: .2em;
}
@media screen and (max-width: 768px) {
	#sec_faq .main_secttl {
		background-image: url(../img/about/bg_secttl_sp.png), linear-gradient(90deg, rgba(255, 237, 0, 1) 0.42%, rgba(79, 233, 255, 1) 100%);
	}

	#sec_faq .cnt {
		padding: 13vw 0 24.67vw;
	}

	#sec_faq .faq_box {
		width: 100%;
		margin: 0 auto 8vw;
		border-radius: 2vw;
		background-size: 2.67vw auto;
	}

	#sec_faq .faq_box .q_txt {
		border-radius: 2vw;
		padding: 4vw 4.8vw;
	}

	#sec_faq .faq_box .q_txt p {
		font-size: 4.27vw;
		line-height: 1.68;
		letter-spacing: 0.2em;
	}

	#sec_faq .faq_box .a_txt {
		padding: 6vw 4.8vw 6vw 4.8vw;
	}

	#sec_faq .faq_box .a_txt p {
		font-size: 3.2vw;
		line-height: 2;
		letter-spacing: 0.2em;
	}

	#sec_faq .faq_box .q_txt p,
	#sec_faq .faq_box .a_txt p {
		padding-left: 10vw;
	}

	#sec_faq .faq_box .q_txt p span,
	#sec_faq .faq_box .a_txt p span {
		font-size: 5.33vw;
	}

	#sec_faq .btn a{
		font-size: 3.4vw;
		width: 65.33vw;
		height: 13.33vw;
	}
}
