@charset "UTF-8";
@import url(./reset.css);
@import url(./common.css);
.inner {
		max-width: 960px;
		width: 100%;
		margin: 0 auto;
}

@media (max-width: 780px) {
		.inner {
				max-width: 90vw;
				width: 100%;
				margin: 0 auto;
		}
}

li {
		list-style: none;
}

.kv {
		width: 100%;
		max-width: 100%;
		height: 824px;
		position: relative;
		top: 0;
		padding-top: 90px;
		z-index: 3;
}

.kv .kv_inner {
		width: 1138px;
		margin: 0 auto;
		position: relative;
}

.kv .kv_inner h2 {
		font-size: 31px;
		line-height: 1;
		position: absolute;
		top: 100px;
		left: 0;
}

.kv .kv_inner h2 .under {
		color: #1349A6;
		position: relative;
}

.kv .kv_inner h2 .under:after {
		content: "";
		background: #0a72c5;
		background: -webkit-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
		background: -o-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
		background: linear-gradient(to right, #0a72c5 0%, #009fe8 100%);
		width: 100%;
		height: 9px;
		position: absolute;
		bottom: -6px;
		left: 0;
		opacity: 0.23;
		z-index: -1;
}

.kv .kv_inner h2 .dot {
		position: relative;
}

.kv .kv_inner h2 .dot:before {
		content: "";
		background-color: #1349A6;
		width: 4px;
		height: 4px;
		border-radius: 4px;
		position: absolute;
		top: -10px;
		left: calc(50% - 2px);
}

.kv .kv_inner h1 {
		font-size: 55px;
		line-height: 1;
		position: absolute;
		top: 150px;
		left: 0;
}

.kv .kv_inner .laurel {
		display: flex;
		justify-content: space-between;
		width: 492px;
		position: absolute;
		top: 227px;
		left: 0;
}

.kv .kv_inner .laurel .laurel_bx {
		flex-basis: 151px;
		height: 139px;
		background-image: url("../img/ttl_bg.svg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
		position: relative;
}

.kv .kv_inner .laurel .laurel_bx p {
		position: absolute;
		top: 45%;
		left: 50%;
		transform: translate(-50%, -55%);
		-webkit-transform: translate(-50%, -55%);
		-ms-transform: translate(-50%, -55%);
		font-size: 14px;
		text-align: center;
		line-height: 1.2;
}

.kv .kv_inner .laurel .laurel_bx p .osw {
		font-size: 37px;
		font-weight: 500;
		line-height: 1;
}

.kv .kv_inner .laurel .laurel_bx p .small {
		font-size: 11px;
		font-weight: 500;
		line-height: 1;
}

.kv .kv_inner .license {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 492px;
		position: absolute;
		top: 375px;
		left: 0;
}

.kv .kv_inner .license li p {
		font-size: 17px;
		line-height: 1;
}

.kv .kv_inner .license li p .mont {
		font-size: 17px;
		line-height: 1;
}

.kv .kv_inner .license li span {
		font-size: 13px;
		line-height: 1;
}

.kv .kv_inner .license li:first-child {
		flex-basis: 124px;
}

.kv .kv_inner .license li:last-child {
		margin-left: auto;
}

.kv .kv_inner .kv_btn {
		position: absolute;
		top: 435px;
		left: 0;
		width: 492px;
		height: 82px;
		background: #1d2087;
		background: -webkit-linear-gradient(left, #1d2087 0%, #009fe8 65%, #009fe8 100%);
		background: -o-linear-gradient(left, #1d2087 0%, #009fe8 65%, #009fe8 100%);
		background: linear-gradient(to right, #1d2087 0%, #009fe8 65%, #009fe8 100%);
		border-radius: 50px;
		display: flex;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
}

.kv .kv_inner .kv_btn p {
		font-size: 19px;
		color: #fff;
		line-height: 1;
		text-align: center;
		position: relative;
		display: block;
		width: 100%;
}

.kv .kv_inner .kv_btn p:after {
		content: "";
		background-image: url("../img/kv_btn_arrow.svg");
		background-repeat: no-repeat;
		background-size: contain;
		width: 24px;
		height: 24px;
		position: absolute;
		top: calc(50% - 12px);
		right: 27px;
		transition: all .5s ease-out;
}

@media (hover: hover) and (pointer: fine) {
		.kv .kv_inner .kv_btn:hover {
				background: #fff;
				background: -webkit-linear-gradient(left, white 0%, white 65%, white 100%);
				background: -o-linear-gradient(left, white 0%, white 65%, white 100%);
				background: linear-gradient(to right, white 0%, white 65%, white 100%);
				border: 1px solid #1349A6;
		}
		.kv .kv_inner .kv_btn:hover p {
				color: #1349A6;
		}
		.kv .kv_inner .kv_btn:hover p:after {
				content: "";
				background-image: url("../img/kv_btn_arrow_on.svg");
				background-repeat: no-repeat;
				background-size: contain;
				width: 24px;
				height: 24px;
				position: absolute;
				top: calc(50% - 12px);
				right: 21px;
				transition: all .5s ease-out;
		}
}

.kv:after {
		content: "";
		background-image: url("../img/kv_after.svg");
		background-repeat: no-repeat;
		background-size: auto;
		background-position: center;
		position: absolute;
		bottom: -60px;
		left: 0;
		right: 0;
		z-index: 10;
		width: 100%;
		height: 290px;
		opacity: 0.94;
}

@media (max-width: 780px) {
		.kv {
				width: 100%;
				max-width: 100%;
				height: 142.589vw;
				position: relative;
				top: 0;
				padding-top: 10.2vw;
				z-index: 3;
		}
		.kv .kv_inner {
				width: 100%;
				margin: 0 auto;
				position: relative;
		}
		.kv .kv_inner h2 {
				font-size: 5.25641vw;
				line-height: 1;
				position: absolute;
				top: 13vw;
				left: 50%;
				transform: translateX(-50%);
				-webkit-transform: translateX(-50%);
				-ms-transform: translateX(-50%);
				white-space: nowrap;
		}
		.kv .kv_inner h2 .under {
				color: #1349A6;
				position: relative;
		}
		.kv .kv_inner h2 .under:after {
				content: "";
				background: #0a72c5;
				background: -webkit-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
				background: -o-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
				background: linear-gradient(to right, #0a72c5 0%, #009fe8 100%);
				width: 100%;
				height: 1.5vw;
				position: absolute;
				bottom: -1vw;
				left: 0;
				opacity: 0.23;
				z-index: -1;
		}
		.kv .kv_inner h2 .dot {
				position: relative;
		}
		.kv .kv_inner h2 .dot:before {
				content: "";
				background-color: #1349A6;
				width: 0.6vw;
				height: 0.6vw;
				border-radius: 4px;
				position: absolute;
				top: -1.5vw;
				left: calc(50% - .3vw);
		}
		.kv .kv_inner h1 {
				font-size: 9.35897vw;
				line-height: 1;
				position: absolute;
				top: 20vw;
				left: 50%;
				transform: translateX(-50%);
				-webkit-transform: translateX(-50%);
				-ms-transform: translateX(-50%);
				white-space: nowrap;
		}
		.kv .kv_inner .laurel {
				display: flex;
				justify-content: space-between;
				width: 67vw;
				position: absolute;
				top: 33vw;
				left: 33vw;
		}
		.kv .kv_inner .laurel .laurel_bx {
				flex-basis: 20.5vw;
				height: 17.7vw;
				background-image: url("../img/ttl_bg.svg");
				background-repeat: no-repeat;
				background-size: contain;
				background-position: center;
				position: relative;
		}
		.kv .kv_inner .laurel .laurel_bx p {
				position: absolute;
				top: 45%;
				left: 50%;
				transform: translate(-50%, -55%);
				-webkit-transform: translate(-50%, -55%);
				-ms-transform: translate(-50%, -55%);
				font-size: 1.66667vw;
				text-align: center;
				line-height: 1.2;
		}
		.kv .kv_inner .laurel .laurel_bx p .osw {
				font-size: 4.61538vw;
				font-weight: 500;
				line-height: 1;
		}
		.kv .kv_inner .laurel .laurel_bx p .small {
				font-size: 1.53846vw;
				font-weight: 500;
				line-height: 1;
		}
		.kv .kv_inner .license {
				display: flex;
				justify-content: flex-end;
				flex-wrap: wrap;
				align-items: flex-end;
				width: 26vw;
				position: absolute;
				top: 51vw;
				left: inherit;
				right: 5vw;
		}
		.kv .kv_inner .license li p {
				font-size: 2.4359vw;
				line-height: 1;
				text-align: right;
		}
		.kv .kv_inner .license li p .mont {
				font-size: 2.4359vw;
				line-height: 1;
		}
		.kv .kv_inner .license li span {
				font-size: 2.05128vw;
				line-height: 1;
		}
		.kv .kv_inner .license li:first-child {
				flex-basis: 15vw;
				margin-bottom: 1vw;
		}
		.kv .kv_inner .license li:last-child {
				margin-left: 0;
		}
		.kv:after {
				content: "";
				background-image: url("../img/kv_after-s.svg");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				position: absolute;
				bottom: -26vw;
				left: 0;
				right: 0;
				z-index: 10;
				width: 100%;
				height: 27vw;
				opacity: 0.94;
		}
}

.s1 {
		background-color: rgba(19, 73, 166, 0.94);
		width: 100%;
		height: 686px;
		margin-top: 60px;
		position: relative;
		z-index: 10;
}

.s1 .inner {
		width: 960px;
		margin: 0 auto;
}

.s1 .inner h3 {
		font-size: 23px;
		line-height: 1;
		margin: 0 0 20px;
		color: #fff;
}

.s1 .inner h2 {
		font-size: 40px;
		line-height: 1.9;
		color: #fff;
}

.s1 .inner h2 span {
		position: relative;
}

.s1 .inner h2 span:after {
		content: "";
		background-color: #00BAF2;
		width: 100%;
		height: 11px;
		position: absolute;
		bottom: -6px;
		left: 0;
		z-index: -1;
}

.s1 .inner .service {
		display: flex;
		justify-content: space-between;
		width: 920px;
		margin: 20px auto 0;
}

.s1 .inner .service li:nth-child(1) {
		margin-top: 68px;
}

.s1 .inner .service li:nth-child(2) {
		margin-top: 36px;
}

.s1 .inner .service li:nth-child(4) {
		margin-top: -36px;
}

.s1 .inner .service li:nth-child(5) {
		margin-top: -68px;
}

.s1 .inner h5 {
		text-align: center;
		font-size: 25px;
		color: #fff;
		margin: 30px auto 15px;
}

.s1 .swiper-wrapper {
		transition-timing-function: linear;
}

.s1 .swiper {
		width: 100% !important;
		height: auto !important;
}

.s1 .swiper .swiper-slide {
		width: 182px;
}

.s1 .swiper .swiper-slide img {
		max-width: 100% !important;
}

.s1:after {
		content: "";
		background-color: rgba(255, 255, 255, 0.5);
		width: 100%;
		height: 2px;
		position: absolute;
		transform: rotate(-11deg);
		position: absolute;
		top: 288px;
		left: 0;
		z-index: -1;
}

@media (max-width: 780px) {
		.s1 {
				background-color: rgba(19, 73, 166, 0.94);
				width: 100%;
				height: auto;
				margin-top: 25.9vw;
				position: relative;
				z-index: 10;
				padding-bottom: 10vw;
		}
		.s1 .inner {
				width: 90vw;
				margin: 0 auto;
		}
		.s1 .inner h3 {
				font-size: 3.07692vw;
				line-height: 1;
				margin: 0 0 2vw;
				color: #fff;
		}
		.s1 .inner h2 {
				font-size: 5.89744vw;
				line-height: 1.9;
				color: #fff;
		}
		.s1 .inner h2 span {
				position: relative;
		}
		.s1 .inner h2 span:after {
				content: "";
				background-color: #00BAF2;
				width: 100%;
				height: 1.5vw;
				position: absolute;
				bottom: -1vw;
				left: 0;
				z-index: -1;
		}
		.s1 .inner .service {
				display: flex;
				justify-content: center;
				flex-wrap: wrap;
				width: 90vw;
				margin: 2vw auto 0;
		}
		.s1 .inner .service li {
				flex-basis: 25vw;
		}
		.s1 .inner .service li img {
				max-width: 100%;
		}
		.s1 .inner .service li:nth-child(1) {
				margin-top: 11.4vw;
				margin-right: 7.5vw;
		}
		.s1 .inner .service li:nth-child(2) {
				margin-top: 5.7vw;
				margin-right: 7.5vw;
		}
		.s1 .inner .service li:nth-child(4) {
				margin-top: 0;
				margin-right: 7.5vw;
		}
		.s1 .inner .service li:nth-child(5) {
				margin-top: -5.7vw;
		}
		.s1 .inner h5 {
				text-align: center;
				font-size: 3.84615vw;
				color: #fff;
				line-height: 2.1;
				margin: 8vw auto 5vw;
		}
		.s1 .swiper {
				width: 100% !important;
				height: auto !important;
		}
		.s1 .swiper .swiper-slide {
				width: 28vw;
		}
		.s1 .swiper .swiper-slide img {
				max-width: 100% !important;
		}
		.s1:before {
				content: "";
				background-color: rgba(255, 255, 255, 0.5);
				width: 120%;
				height: 1px;
				position: absolute;
				transform: rotate(-11deg);
				position: absolute;
				top: 58.17vw;
				left: -2vw;
				right: -2vw;
				z-index: -1;
		}
		.s1:after {
				content: "";
				background-color: rgba(255, 255, 255, 0.5);
				width: 120%;
				height: 1px;
				position: absolute;
				transform: rotate(-11deg);
				position: absolute;
				top: 87.17vw;
				left: -2vw;
				right: -2vw;
				z-index: -1;
		}
}

.s2 {
		background-color: rgba(247, 249, 250, 0.93);
		position: relative;
		width: 100%;
		height: auto;
		z-index: 3;
}

.s2 .line {
		background-image: url("../img/kv_bg.svg");
		background-repeat: no-repeat;
		background-position: left top;
		background-size: contain;
		width: 1150px;
		height: 1138px;
		margin: 0 auto;
		opacity: 0.06;
		position: absolute;
		top: 0;
		right: 50%;
		z-index: 2;
}

.s2 .inner {
		position: relative;
		z-index: 5;
}

.s2 .ttl_flex {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		width: 100%;
		margin: 0 auto 50px;
		padding-top: 130px;
}

.s2 .ttl_flex .laurel_bx {
		flex-basis: 151px;
		height: 139px;
		background-image: url("../img/ttl_bg.svg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
		position: relative;
}

.s2 .ttl_flex .laurel_bx p {
		position: absolute;
		top: 45%;
		left: 50%;
		transform: translate(-50%, -55%);
		-webkit-transform: translate(-50%, -55%);
		-ms-transform: translate(-50%, -55%);
		font-size: 14px;
		text-align: center;
		line-height: 1.2;
}

.s2 .ttl_flex .laurel_bx p .osw {
		font-size: 37px;
		font-weight: 500;
		line-height: 1;
}

.s2 .ttl_flex .laurel_bx p .small {
		font-size: 11px;
		font-weight: 500;
		line-height: 1;
}

.s2 .ttl_flex .ttl_summary {
		text-align: right;
}

.s2 .ttl_flex .ttl_summary .en {
		font-size: 18px;
		font-weight: 600;
		line-height: 1;
		color: #1349A6;
}

.s2 .ttl_flex .ttl_summary h3 {
		font-size: 38px;
		line-height: 1.7;
}

.s2 .ttl_flex .ttl_summary h3 .under {
		color: #1349A6;
		position: relative;
}

.s2 .ttl_flex .ttl_summary h3 .under:after {
		content: "";
		background: #0a72c5;
		background: -webkit-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
		background: -o-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
		background: linear-gradient(to right, #0a72c5 0%, #009fe8 100%);
		width: 100%;
		height: 12px;
		position: absolute;
		bottom: -6px;
		left: 0;
		opacity: 0.23;
		z-index: -1;
}

.s2 ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		width: 100%;
		margin: 0 auto;
}

.s2 ul li {
		flex-basis: 304px;
		height: 340px;
		position: relative;
		margin-bottom: 50px;
}

.s2 ul li .card {
		background-color: #fff;
		border-radius: 6px;
		filter: drop-shadow(0px 10px 10px rgba(19, 73, 166, 0.04));
		width: 304px;
		height: 340px;
		position: absolute;
		top: 0;
		left: 0;
}

.s2 ul li .card .cardimg {
		position: absolute;
		top: 0;
		left: 0;
		overflow: hidden;
		border-radius: 6px 6px 0 0;
}

.s2 ul li .card .cardimg img {
		max-width: 100%;
		transition: 1s all;
}

@media (hover: hover) and (pointer: fine) {
		.s2 ul li .card .cardimg img:hover {
				transform: scale(1.1);
				transition: 1s all;
		}
}

.s2 ul li .card .ttl {
		background-image: url("../img/s2_ttl_bg.svg");
		background-repeat: no-repeat;
		background-size: contain;
		width: 270px;
		height: 39px;
		position: absolute;
		top: 163px;
		left: -4px;
		position: relative;
		z-index: 6;
}

.s2 ul li .card .ttl p {
		font-size: 16px;
		line-height: 1;
		color: #fff;
		margin: 0 0 0 24px;
		padding-top: 10px;
}

.s2 ul li .card .num {
		font-size: 71px;
		font-weight: 500;
		line-height: 1;
		color: #1349A6;
		opacity: 0.07;
		position: absolute;
		top: 190px;
		left: 20px;
}

.s2 ul li .card h6 {
		font-size: 18px;
		line-height: 1;
		text-align: center;
		position: absolute;
		top: 222px;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		color: #2d2d2d;
		white-space: nowrap;
}

.s2 ul li .card .card_btn {
		width: 210px;
		border-radius: 60px;
		border: 1px solid #1349A6;
		text-align: center;
		padding: 15px 0;
		position: absolute;
		top: 262px;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		margin-bottom: 40px;
		display: flex;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
}

.s2 ul li .card .card_btn p {
		font-size: 13px;
		font-weight: 600;
		line-height: 1;
		color: #1349A6;
		position: relative;
		width: 100%;
}

.s2 ul li .card .card_btn p:after {
		content: "";
		background-image: url("../img/kv_btn_arrow_on.svg");
		background-repeat: no-repeat;
		background-size: contain;
		width: 16px;
		height: 24px;
		position: absolute;
		top: calc(50% - 8px);
		right: 16px;
}

@media (hover: hover) and (pointer: fine) {
		.s2 ul li .card:hover .card_btn {
				border: none;
				background-color: #1349A6;
				box-sizing: border-box;
		}
		.s2 ul li .card:hover .card_btn p {
				color: #fff;
		}
		.s2 ul li .card:hover .card_btn p:after {
				content: "";
				background-image: url("../img/kv_btn_arrow.svg");
				right: 11px;
		}
}

.s2 ul li:nth-child(2) {
		margin-top: 40px;
}

.s2 ul li:nth-child(3) {
		margin-top: 80px;
}

.s2 ul li:nth-child(4) {
		margin-top: -70px;
}

.s2 ul li:nth-child(5) {
		margin-top: -30px;
}

.s2 ul li:nth-child(6) {
		margin-top: 10px;
		margin-bottom: 130px;
}

.s2 .swiper-wrapper {
		transition-timing-function: linear;
}

.s2 .swiper {
		width: 100% !important;
		max-width: 1920px;
		height: auto !important;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 5;
		position: relative;
}

.s2 .swiper .swiper-slide {
		width: 320px !important;
}

.s2 .swiper .swiper-slide img {
		width: 320px !important;
}

@media (max-width: 780px) {
		.s2 {
				background-color: rgba(247, 249, 250, 0.93);
				position: relative;
				width: 100%;
				height: auto;
				z-index: 3;
		}
		.s2 .line {
				background-image: url("../img/contents_bg-s.svg");
				background-repeat: no-repeat;
				background-position: left top;
				background-size: contain;
				width: 80vw;
				height: 80vw;
				margin: 0 auto;
				opacity: 0.06;
				position: absolute;
				top: 0;
				left: 0;
				right: 20vw;
				z-index: 2;
		}
		.s2 .inner {
				position: relative;
				z-index: 5;
				width: 90vw;
				margin: 0 auto;
		}
		.s2 .ttl_flex {
				display: flex;
				justify-content: space-between;
				align-items: flex-start;
				width: 100%;
				margin: 0 auto 8vw;
				padding-top: 15vw;
		}
		.s2 .ttl_flex .laurel_bx {
				flex-basis: 23.46vw;
				height: 21.666vw;
				background-image: url("../img/ttl_bg.svg");
				background-repeat: no-repeat;
				background-size: contain;
				background-position: center;
				position: relative;
		}
		.s2 .ttl_flex .laurel_bx p {
				position: absolute;
				top: 45%;
				left: 50%;
				transform: translate(-50%, -55%);
				-webkit-transform: translate(-50%, -55%);
				-ms-transform: translate(-50%, -55%);
				font-size: 2.17949vw;
				text-align: center;
				line-height: 1.2;
				white-space: nowrap;
		}
		.s2 .ttl_flex .laurel_bx p .osw {
				font-size: 5.64103vw;
				font-weight: 500;
				line-height: 1;
		}
		.s2 .ttl_flex .laurel_bx p .small {
				font-size: 1.53846vw;
				font-weight: 500;
				line-height: 1;
		}
		.s2 .ttl_flex .ttl_summary {
				text-align: right;
		}
		.s2 .ttl_flex .ttl_summary .en {
				font-size: 2.69231vw;
				font-weight: 600;
				line-height: 1;
				color: #1349A6;
		}
		.s2 .ttl_flex .ttl_summary h3 {
				font-size: 5.76923vw;
				line-height: 1.7;
		}
		.s2 .ttl_flex .ttl_summary h3 .under {
				color: #1349A6;
				position: relative;
		}
		.s2 .ttl_flex .ttl_summary h3 .under:after {
				content: "";
				background: #0a72c5;
				background: -webkit-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
				background: -o-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
				background: linear-gradient(to right, #0a72c5 0%, #009fe8 100%);
				width: 100%;
				height: 1.5vw;
				position: absolute;
				bottom: -1vw;
				left: 0;
				opacity: 0.23;
				z-index: -1;
		}
		.s2 ul {
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
				width: 100%;
				margin: 0 auto;
		}
		.s2 ul li {
				flex-basis: 44vw;
				height: 52.564vw;
				position: relative;
				margin-bottom: 4vw;
		}
		.s2 ul li .card {
				background-color: #fff;
				border-radius: 0.76923vw;
				filter: drop-shadow(0px 1.28205vw 1.28205vw rgba(19, 73, 166, 0.04));
				width: 44vw;
				height: 54.564vw;
				position: absolute;
				top: 0;
				left: 0;
		}
		.s2 ul li .card .cardimg {
				position: absolute;
				top: 0;
				left: 0;
				overflow: hidden;
				border-radius: 0.76923vw 0.76923vw 0 0;
		}
		.s2 ul li .card .cardimg img {
				max-width: 100%;
				transition: 1s all;
		}
}

@media (max-width: 780px) and (hover: hover) and (pointer: fine) {
		.s2 ul li .card .cardimg img:hover {
				transform: scale(1.1);
				transition: 1s all;
		}
}

@media (max-width: 780px) {
		.s2 ul li .card .ttl {
				background-image: url("../img/s2_ttl_bg.svg");
				background-repeat: no-repeat;
				background-size: contain;
				width: 41.794vw;
				height: 6.025vw;
				position: absolute;
				top: 23vw;
				left: -.5vw;
				position: relative;
				z-index: 6;
		}
		.s2 ul li .card .ttl p {
				font-size: 2.5641vw;
				line-height: 1;
				color: #fff;
				margin: 0 0 0 4vw;
				padding-top: 1.6vw;
		}
		.s2 ul li .card .num {
				font-size: 11.79487vw;
				font-weight: 500;
				line-height: 1;
				color: #1349A6;
				opacity: 0.07;
				position: absolute;
				top: 26vw;
				left: 2.5vw;
		}
		.s2 ul li .card h6 {
				font-size: 3.33333vw;
				line-height: 1.6;
				text-align: center;
				position: absolute;
				top: 31vw;
				left: 50%;
				transform: translateX(-50%);
				-webkit-transform: translateX(-50%);
				-ms-transform: translateX(-50%);
				color: #2d2d2d;
				white-space: nowrap;
		}
		.s2 ul li .card .card_btn {
				width: 34vw;
				border-radius: 7.69231vw;
				border: 1px solid #1349A6;
				text-align: center;
				padding: 3vw 0;
				position: absolute;
				top: 43vw;
				left: 50%;
				transform: translateX(-50%);
				-webkit-transform: translateX(-50%);
				-ms-transform: translateX(-50%);
				margin-bottom: 0;
				display: flex;
				justify-content: center;
				align-items: center;
				box-sizing: border-box;
		}
		.s2 ul li .card .card_btn p {
				font-size: 2.30769vw;
				font-weight: 600;
				line-height: 1;
				color: #1349A6;
				position: relative;
				width: 100%;
		}
		.s2 ul li .card .card_btn p:after {
				content: "";
				background-image: url("../img/kv_btn_arrow_on.svg");
				background-repeat: no-repeat;
				background-size: contain;
				width: 3vw;
				height: 3vw;
				position: absolute;
				top: calc(50% - 1.5vw);
				right: 3vw;
		}
}

@media (max-width: 780px) and (hover: hover) and (pointer: fine) {
		.s2 ul li .card:hover .card_btn {
				border: none;
				background-color: #1349A6;
				box-sizing: border-box;
		}
		.s2 ul li .card:hover .card_btn p {
				color: #fff;
		}
		.s2 ul li .card:hover .card_btn p:after {
				content: "";
				background-image: url("../img/kv_btn_arrow.svg");
				right: 11px;
		}
}

@media (max-width: 780px) {
		.s2 ul li:nth-child(2) {
				margin-top: 4vw;
		}
		.s2 ul li:nth-child(3) {
				margin-top: 0;
		}
		.s2 ul li:nth-child(4) {
				margin-top: 4vw;
		}
		.s2 ul li:nth-child(5) {
				margin-top: 0;
		}
		.s2 ul li:nth-child(6) {
				margin-top: 4vw;
				margin-bottom: 18.3vw;
		}
		.s2 .swiper {
				width: 100% !important;
				max-width: 100%;
				height: auto !important;
				bottom: 0;
				left: 0;
				right: 0;
				z-index: 5;
				position: relative;
		}
		.s2 .swiper .swiper-slide {
				width: 47.5vw !important;
		}
		.s2 .swiper .swiper-slide img {
				width: 47.5vw !important;
		}
}

.s3 {
		background-color: rgba(247, 249, 250, 0.93);
		position: relative;
		width: 100%;
		height: auto;
		padding-bottom: 200px;
		z-index: 3;
}

.s3 .line {
		background-image: url("../img/kv_bg.svg");
		background-repeat: no-repeat;
		background-position: left top;
		background-size: contain;
		width: 1150px;
		height: 1138px;
		margin: 0 auto;
		opacity: 0.06;
		position: absolute;
		top: 0;
		right: 50%;
		z-index: 2;
}

.s3 .inner {
		position: relative;
		z-index: 5;
}

.s3 .ttl_flex {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		width: 100%;
		margin: 0 auto 50px;
		padding-top: 130px;
}

.s3 .ttl_flex .laurel_bx {
		flex-basis: 151px;
		height: 139px;
		background-image: url("../img/ttl_bg.svg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
		position: relative;
}

.s3 .ttl_flex .laurel_bx p {
		position: absolute;
		top: 45%;
		left: 50%;
		transform: translate(-50%, -55%);
		-webkit-transform: translate(-50%, -55%);
		-ms-transform: translate(-50%, -55%);
		font-size: 14px;
		text-align: center;
		line-height: 1.2;
}

.s3 .ttl_flex .laurel_bx p .osw {
		font-size: 37px;
		font-weight: 500;
		line-height: 1;
}

.s3 .ttl_flex .ttl_summary {
		text-align: left;
}

.s3 .ttl_flex .ttl_summary .en {
		font-size: 18px;
		font-weight: 600;
		line-height: 1;
		color: #1349A6;
}

.s3 .ttl_flex .ttl_summary h3 {
		font-size: 38px;
		line-height: 1.7;
}

.s3 .ttl_flex .ttl_summary h3 .under {
		color: #1349A6;
		position: relative;
}

.s3 .ttl_flex .ttl_summary h3 .under:after {
		content: "";
		background: #0a72c5;
		background: -webkit-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
		background: -o-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
		background: linear-gradient(to right, #0a72c5 0%, #009fe8 100%);
		width: 100%;
		height: 9px;
		position: absolute;
		bottom: -6px;
		left: 0;
		opacity: 0.23;
		z-index: -1;
}

.s3 .problem {
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
}

.s3 .problem .problem_bx {
		flex-basis: 464px;
}

.s3 .problem .problem_bx .problem_ttl {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		background-color: #0A72C5;
}

.s3 .problem .problem_bx .problem_ttl li:first-child {
		background-image: url("../img/ttl_summary_bg.svg");
		width: 97px;
		height: 65px;
		background-repeat: no-repeat;
		background-size: contain;
		display: flex;
		justify-content: center;
		align-items: center;
}

.s3 .problem .problem_bx .problem_ttl li:first-child p {
		font-size: 11px;
		font-weight: 600;
		line-height: 1;
		color: #fff;
		text-align: center;
}

.s3 .problem .problem_bx .problem_ttl li:last-child {
		font-size: 22px;
		line-height: 1;
		color: #fff;
		flex-basis: 367px;
		text-align: center;
}

.s3 .problem .problem_bx .problem_summary {
		display: flex;
		width: 100%;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		margin: 25px auto 0;
}

.s3 .problem .problem_bx .problem_summary li {
		flex-basis: 416px;
		font-size: 18px;
		line-height: 2.2;
}

.s3 .problem .problem_bx .problem_summary li span {
		color: #1349A6 !important;
}

.s3 .problem .problem_bx .problem_summary .arrow {
		flex-basis: 48px;
		text-align: right;
}

.s3 .problem .problem_bx .problem_summary .arrow img {
		max-width: 25px;
}

.s3 .problem .problem_bx .problem_summary .kei {
		flex-basis: 100%;
		border-bottom: 1px dotted #2D2D2D;
		padding-bottom: 15px;
		margin-bottom: 15px;
}

.s3 .mail_ttl {
		background-color: #1349A6;
		width: 100%;
		font-size: 22px;
		line-height: 1;
		color: #fff;
		text-align: center;
		padding: 20px 0;
		margin: 45px auto 55px;
}

.s3 .point_wrap {
		width: 100%;
		height: 100%;
		margin: 0 auto 80px;
		display: block;
}

.s3 .point_wrap .c01,
.s3 .point_wrap .c03,
.s3 .point_wrap .c05,
.s3 .point_wrap .c07 {
		width: 100%;
		margin: 0 auto;
		min-height: 273px;
		position: relative;
}

.s3 .point_wrap .c01 .num,
.s3 .point_wrap .c03 .num,
.s3 .point_wrap .c05 .num,
.s3 .point_wrap .c07 .num {
		position: absolute;
		top: 0;
		right: -20px;
		font-size: 24px;
		font-weight: 600;
		line-height: 1;
		display: flex;
		align-items: center;
		color: #1349A6;
		z-index: 2;
}

.s3 .point_wrap .c01 .num span,
.s3 .point_wrap .c03 .num span,
.s3 .point_wrap .c05 .num span,
.s3 .point_wrap .c07 .num span {
		font-size: 70px;
		font-weight: 500;
		line-height: 1;
		margin-left: 20px;
}

.s3 .point_wrap .c01 .s3_photo,
.s3 .point_wrap .c03 .s3_photo,
.s3 .point_wrap .c05 .s3_photo,
.s3 .point_wrap .c07 .s3_photo {
		position: absolute;
		top: 45px;
		left: 80px;
		right: 0;
		z-index: 1;
}

.s3 .point_wrap .c01 .s3_photo img,
.s3 .point_wrap .c03 .s3_photo img,
.s3 .point_wrap .c05 .s3_photo img,
.s3 .point_wrap .c07 .s3_photo img {
		max-width: 880px;
}

.s3 .point_wrap .c01 .summary_bx,
.s3 .point_wrap .c03 .summary_bx,
.s3 .point_wrap .c05 .summary_bx,
.s3 .point_wrap .c07 .summary_bx {
		width: 784px;
		background-color: #fff;
		border-radius: 0 6px 6px 6px;
		position: absolute;
		top: 217px;
		left: 0;
		z-index: 2;
		min-height: 101px;
}

.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex,
.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex,
.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex,
.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex {
		display: flex;
		justify-content: space-between;
		width: 100%;
}

.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex .btn_ttl,
.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex .btn_ttl,
.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex .btn_ttl,
.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex .btn_ttl {
		background-color: #1349A6;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		width: 285px;
		height: 72px;
		padding: 0 20px;
		position: relative;
}

.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex .btn_ttl .ico,
.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex .btn_ttl .ico,
.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex .btn_ttl .ico,
.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex .btn_ttl .ico {
		margin-right: 20px;
}

.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex .btn_ttl p,
.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex .btn_ttl p,
.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex .btn_ttl p,
.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex .btn_ttl p {
		font-size: 20px;
		line-height: 1;
		color: #fff;
		position: relative;
		display: block;
		width: 100%;
		text-align: left;
}

.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex .btn_ttl p:after,
.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex .btn_ttl p:after,
.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex .btn_ttl p:after,
.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex .btn_ttl p:after {
		content: "";
		background-image: url("../img/s3_head_arrow.svg");
		background-repeat: no-repeat;
		background-size: contain;
		width: 22px;
		height: 22px;
		position: absolute;
		top: calc(50% - 11px);
		right: 0;
}

.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex .btn_ttl:after,
.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex .btn_ttl:after,
.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex .btn_ttl:after,
.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex .btn_ttl:after {
		content: "";
		position: absolute;
		bottom: 0;
		right: -20px;
		border-bottom: 72px solid #1349A6;
		border-right: 20px solid transparent;
}

.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex li h6,
.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex li h6,
.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex li h6,
.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex li h6 {
		font-size: 17px;
		line-height: 2.1;
		width: 432px;
		padding: 20px 30px 0 0;
}

@media (hover: hover) and (pointer: fine) {
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex:hover .btn_ttl,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex:hover .btn_ttl,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex:hover .btn_ttl,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex:hover .btn_ttl {
				background-color: #009FE8;
				display: flex;
				justify-content: flex-start;
				align-items: center;
				width: 285px;
				padding: 0 20px;
				position: relative;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex:hover .btn_ttl .ico,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex:hover .btn_ttl .ico,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex:hover .btn_ttl .ico,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex:hover .btn_ttl .ico {
				margin-right: 20px;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex:hover .btn_ttl p,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex:hover .btn_ttl p,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex:hover .btn_ttl p,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex:hover .btn_ttl p {
				font-size: 20px;
				line-height: 1;
				color: #fff;
				position: relative;
				display: block;
				width: 100%;
				text-align: left;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex:hover .btn_ttl p:after,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex:hover .btn_ttl p:after,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex:hover .btn_ttl p:after,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex:hover .btn_ttl p:after {
				content: "";
				background-image: url("../img/s3_head_arrow_on.svg");
				background-repeat: no-repeat;
				background-size: contain;
				width: 22px;
				height: 22px;
				position: absolute;
				top: calc(50% - 11px);
				right: -10px;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex:hover .btn_ttl:after,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex:hover .btn_ttl:after,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex:hover .btn_ttl:after,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex:hover .btn_ttl:after {
				content: "";
				position: absolute;
				bottom: 0;
				right: -20px;
				border-bottom: 72px solid #009FE8;
				border-right: 20px solid transparent;
		}
}

.s3 .point_wrap .c04,
.s3 .point_wrap .c06 {
		width: 100%;
		min-height: 273px;
		height: 100%;
		position: relative;
		margin: 0 auto 50px;
}

.s3 .point_wrap .c04 .num,
.s3 .point_wrap .c06 .num {
		position: absolute;
		top: 0;
		left: -20px;
		font-size: 24px;
		font-weight: 600;
		line-height: 1;
		display: flex;
		align-items: center;
		color: #1349A6;
		z-index: 2;
}

.s3 .point_wrap .c04 .num span,
.s3 .point_wrap .c06 .num span {
		font-size: 70px;
		font-weight: 500;
		line-height: 1;
		margin-right: 20px;
}

.s3 .point_wrap .c04 .s3_photo,
.s3 .point_wrap .c06 .s3_photo {
		position: absolute;
		top: 45px;
		right: 80px;
		left: 0;
		z-index: 1;
}

.s3 .point_wrap .c04 .s3_photo img,
.s3 .point_wrap .c06 .s3_photo img {
		max-width: 880px;
}

.s3 .point_wrap .c04 .summary_bx,
.s3 .point_wrap .c06 .summary_bx {
		width: 784px;
		background-color: #fff;
		border-radius: 0 6px 6px 6px;
		position: absolute;
		top: 217px;
		right: 0;
		z-index: 2;
		min-height: 101px;
}

.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex,
.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex {
		display: flex;
		justify-content: space-between;
		width: 100%;
}

.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex .btn_ttl,
.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex .btn_ttl {
		background-color: #1349A6;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		width: 285px;
		height: 72px;
		padding: 0 20px;
		position: relative;
}

.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex .btn_ttl .ico,
.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex .btn_ttl .ico {
		margin-right: 20px;
}

.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex .btn_ttl p,
.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex .btn_ttl p {
		font-size: 20px;
		line-height: 1;
		color: #fff;
		position: relative;
		display: block;
		width: 100%;
		text-align: left;
}

.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex .btn_ttl p:after,
.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex .btn_ttl p:after {
		content: "";
		background-image: url("../img/s3_head_arrow.svg");
		background-repeat: no-repeat;
		background-size: contain;
		width: 22px;
		height: 22px;
		position: absolute;
		top: calc(50% - 11px);
		right: 0;
}

.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex .btn_ttl:after,
.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex .btn_ttl:after {
		content: "";
		position: absolute;
		bottom: 0;
		right: -20px;
		border-bottom: 72px solid #1349A6;
		border-right: 20px solid transparent;
}

.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex li h6,
.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex li h6 {
		font-size: 17px;
		line-height: 2.1;
		width: 432px;
		padding: 20px 30px 0 0;
}

@media (hover: hover) and (pointer: fine) {
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex:hover .btn_ttl,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex:hover .btn_ttl {
				background-color: #009FE8;
				display: flex;
				justify-content: flex-start;
				align-items: center;
				width: 285px;
				height: 72px;
				padding: 0 20px;
				position: relative;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex:hover .btn_ttl .ico,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex:hover .btn_ttl .ico {
				margin-right: 20px;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex:hover .btn_ttl p,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex:hover .btn_ttl p {
				font-size: 20px;
				line-height: 1;
				color: #fff;
				position: relative;
				display: block;
				width: 100%;
				text-align: left;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex:hover .btn_ttl p:after,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex:hover .btn_ttl p:after {
				content: "";
				background-image: url("../img/s3_head_arrow_on.svg");
				background-repeat: no-repeat;
				background-size: contain;
				width: 22px;
				height: 22px;
				position: absolute;
				top: calc(50% - 11px);
				right: -10px;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex:hover .btn_ttl:after,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex:hover .btn_ttl:after {
				content: "";
				position: absolute;
				bottom: 0;
				right: -20px;
				border-bottom: 72px solid #009FE8;
				border-right: 20px solid transparent;
		}
}

.s3 .point_wrap .c04 {
		min-height: 552px;
}

.s3 .point_wrap .c05 {
		min-height: 380px;
}

.s3 .point_wrap .c06 {
		min-height: 714px;
}

.s3 .point_wrap .c05 {
		min-height: 365px;
}

.s3 .point_wrap .c02,
.s3 .point_wrap .c08 {
		width: 100%;
		min-height: 273px;
		position: relative;
		margin: 0 auto 50px;
}

.s3 .point_wrap .c02 .num,
.s3 .point_wrap .c08 .num {
		position: absolute;
		top: 0;
		left: -20px;
		font-size: 24px;
		font-weight: 600;
		line-height: 1;
		display: flex;
		align-items: center;
		color: #1349A6;
		z-index: 2;
}

.s3 .point_wrap .c02 .num span,
.s3 .point_wrap .c08 .num span {
		font-size: 70px;
		font-weight: 500;
		line-height: 1;
		margin-right: 20px;
}

.s3 .point_wrap .c02 .s3_photo,
.s3 .point_wrap .c08 .s3_photo {
		position: absolute;
		top: 45px;
		right: 80px;
		left: 0;
		z-index: 1;
}

.s3 .point_wrap .c02 .s3_photo img,
.s3 .point_wrap .c08 .s3_photo img {
		max-width: 880px;
}

.s3 .point_wrap .c02 .summary_bx,
.s3 .point_wrap .c08 .summary_bx {
		width: 784px;
		background-color: #fff;
		border-radius: 0 6px 6px 6px;
		position: absolute;
		top: 217px;
		right: 0;
		z-index: 2;
		min-height: 101px;
}

.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex,
.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex {
		display: flex;
		justify-content: space-between;
		width: 100%;
}

.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex .btn_ttl,
.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex .btn_ttl {
		background-color: #1349A6;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		width: 285px;
		height: 72px;
		padding: 0 20px;
		position: relative;
}

.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex .btn_ttl .ico,
.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex .btn_ttl .ico {
		margin-right: 20px;
}

.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex .btn_ttl p,
.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex .btn_ttl p {
		font-size: 20px;
		line-height: 1;
		color: #fff;
		position: relative;
		display: block;
		width: 100%;
		text-align: left;
}

.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex .btn_ttl:after,
.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex .btn_ttl:after {
		content: "";
		position: absolute;
		bottom: 0;
		right: -20px;
		border-bottom: 72px solid #1349A6;
		border-right: 20px solid transparent;
}

.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex li h6,
.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex li h6 {
		font-size: 17px;
		line-height: 2.1;
		width: 432px;
		padding: 20px 30px 0 0;
}

.s3 .point_wrap .summary_contents {
		display: flex;
		justify-content: space-between;
		width: 720px;
		margin: 20px auto;
		flex-wrap: wrap;
}

.s3 .point_wrap .summary_contents .summary_contents_bx {
		flex-basis: 33%;
}

.s3 .point_wrap .summary_contents .summary_contents_bx h5 {
		background-color: #EDEDED;
		width: 145px;
		min-height: 50px;
		font-size: 17px;
		line-height: 1.5;
		padding: 14px 0 12px;
		text-align: center;
}

.s3 .point_wrap .summary_contents .summary_contents_bx p {
		font-size: 17px;
		line-height: 2.1;
}

.s3 .point_wrap .summary_contents .summary_contents_bx p span {
		color: #1349A6;
}

.s3 .point_wrap .summary_contents .kei {
		flex-basis: 100%;
		border-bottom: 2px dotted #D1D1D1;
		padding-bottom: 15px;
		margin-bottom: 15px;
}

.s3 .point_wrap .summary_list {
		display: flex;
		justify-content: flex-start;
		width: 720px;
		margin: 20px auto;
		flex-wrap: wrap;
}

.s3 .point_wrap .summary_list li {
		flex-basis: 25%;
}

.s3 .point_wrap .summary_list li p {
		font-size: 17px;
		white-space: nowrap;
}

.s3 .point_wrap .summary_list li p span {
		color: #1349A6;
}

.s3 .point_wrap .summary_list .kei {
		flex-basis: 100%;
		border-bottom: 2px dotted #D1D1D1;
		padding-bottom: 15px;
		margin-bottom: 15px;
}

.s3 .point_wrap .summary_list02 {
		display: flex;
		justify-content: flex-start;
		width: 720px;
		margin: 20px auto;
}

.s3 .point_wrap .summary_list02 li {
		margin-right: 15px;
}

.s3 .point_wrap .summary_list02 li p {
		font-size: 16px;
		white-space: nowrap;
}

.s3 .point_wrap .summary_list02 li p span {
		color: #1349A6;
}

.s3 .point_wrap .summary_list02 li:last-child {
		margin-right: 0;
}

.s3 .point_wrap .summary_list02 .kei {
		flex-basis: 100%;
		border-bottom: 2px dotted #D1D1D1;
		padding-bottom: 15px;
		margin-bottom: 15px;
}

.s3 .slide-text {
		position: absolute;
		z-index: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 123px;
		background-image: url("../img/s3_typo.svg");
		opacity: 0.03;
		mix-blend-mode: multiply;
		background-repeat: repeat-x;
		background-size: auto 123px;
		/* 画像の高さ */
		animation: textPCloop 40s linear infinite;
}

@keyframes textPCloop {
		from {
				background-position: 0 0;
		}
		to {
				background-position: -1920px 0;
				/* 画像のマイナス幅 */
		}
}

@media (max-width: 780px) {
		.s3 {
				background-color: rgba(247, 249, 250, 0.93);
				position: relative;
				width: 100%;
				height: auto;
				z-index: 3;
				padding-bottom: 40vw;
		}
		.s3 .line {
				background-image: url("../img/contents_bg-s.svg");
				background-repeat: no-repeat;
				background-position: left top;
				background-size: contain;
				width: 80vw;
				height: 80vw;
				margin: 0 auto;
				opacity: 0.06;
				position: absolute;
				top: 0;
				left: 0;
				right: 20vw;
				z-index: 2;
		}
		.s3 .inner {
				position: relative;
				z-index: 5;
				width: 100vw;
				max-width: 100vw;
				margin: 0 auto;
		}
		.s3 .ttl_flex {
				display: flex;
				justify-content: space-between;
				align-items: flex-start;
				width: 90vw;
				margin: 0 auto 8vw;
				padding-top: 15vw;
		}
		.s3 .ttl_flex .laurel_bx {
				flex-basis: 23.46vw;
				height: 21.666vw;
				background-image: url("../img/ttl_bg.svg");
				background-repeat: no-repeat;
				background-size: contain;
				background-position: center;
				position: relative;
		}
		.s3 .ttl_flex .laurel_bx p {
				position: absolute;
				top: 45%;
				left: 50%;
				transform: translate(-50%, -55%);
				-webkit-transform: translate(-50%, -55%);
				-ms-transform: translate(-50%, -55%);
				font-size: 2.17949vw;
				text-align: center;
				line-height: 1.2;
				white-space: nowrap;
		}
		.s3 .ttl_flex .laurel_bx p .osw {
				font-size: 5.64103vw;
				font-weight: 500;
				line-height: 1;
		}
		.s3 .ttl_flex .ttl_summary {
				text-align: left;
		}
		.s3 .ttl_flex .ttl_summary .en {
				font-size: 2.69231vw;
				font-weight: 600;
				line-height: 1;
				color: #1349A6;
		}
		.s3 .ttl_flex .ttl_summary h3 {
				font-size: 5.76923vw;
				line-height: 1.7;
		}
		.s3 .ttl_flex .ttl_summary h3 .under {
				color: #1349A6;
				position: relative;
		}
		.s3 .ttl_flex .ttl_summary h3 .under:after {
				content: "";
				background: #0a72c5;
				background: -webkit-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
				background: -o-linear-gradient(left, #0a72c5 0%, #009fe8 100%);
				background: linear-gradient(to right, #0a72c5 0%, #009fe8 100%);
				width: 100%;
				height: 1.5vw;
				position: absolute;
				bottom: -1vw;
				left: 0;
				opacity: 0.23;
				z-index: -1;
		}
		.s3 .problem {
				display: flex;
				justify-content: space-between;
				margin: 0 auto;
				flex-wrap: wrap;
				width: 90vw;
		}
		.s3 .problem .problem_bx {
				flex-basis: 100%;
				margin-bottom: 3vw;
		}
		.s3 .problem .problem_bx .problem_ttl {
				display: flex;
				justify-content: space-between;
				align-items: center;
				width: 100%;
				background-color: #0A72C5;
		}
		.s3 .problem .problem_bx .problem_ttl li:first-child {
				background-image: url("../img/ttl_summary_bg-s.svg");
				width: 18.717vw;
				height: 12.564vw;
				background-repeat: no-repeat;
				background-size: contain;
				display: flex;
				justify-content: center;
				align-items: center;
		}
		.s3 .problem .problem_bx .problem_ttl li:first-child p {
				font-size: 2.05128vw;
				font-weight: 600;
				line-height: 1;
				color: #fff;
				text-align: center;
		}
		.s3 .problem .problem_bx .problem_ttl li:last-child {
				font-size: 4.35897vw;
				line-height: 1;
				color: #fff;
				flex-basis: 71vw;
				text-align: center;
		}
		.s3 .problem .problem_bx .problem_summary {
				display: flex;
				width: 100%;
				justify-content: space-between;
				align-items: center;
				flex-wrap: wrap;
				margin: 3vw auto 0;
		}
		.s3 .problem .problem_bx .problem_summary li {
				flex-basis: 80vw;
				font-size: 3.33333vw;
				line-height: 2;
		}
		.s3 .problem .problem_bx .problem_summary li span {
				color: #1349A6 !important;
		}
		.s3 .problem .problem_bx .problem_summary .arrow {
				flex-basis: 6.6vw;
				text-align: right;
		}
		.s3 .problem .problem_bx .problem_summary .arrow img {
				max-width: 6.6vw;
		}
		.s3 .problem .problem_bx .problem_summary .kei {
				flex-basis: 100%;
				border-bottom: 1px dotted #2D2D2D;
				padding-bottom: 3vw;
				margin-bottom: 3vw;
		}
		.s3 .mail_ttl {
				background-color: #1349A6;
				width: 90vw;
				font-size: 4.10256vw;
				line-height: 1;
				color: #fff;
				text-align: center;
				padding: 4vw 0;
				margin: 4vw auto 5vw;
		}
		.s3 .point_wrap {
				width: 100%;
				height: 100%;
				margin: 0 auto 4.6vw;
				display: block;
		}
		.s3 .point_wrap .c01,
		.s3 .point_wrap .c03,
		.s3 .point_wrap .c05,
		.s3 .point_wrap .c07 {
				width: 100%;
				margin: 2.5vw auto 0;
				min-height: 58.205vw;
				position: relative;
		}
		.s3 .point_wrap .c01 .num,
		.s3 .point_wrap .c03 .num,
		.s3 .point_wrap .c05 .num,
		.s3 .point_wrap .c07 .num {
				position: absolute;
				top: 0;
				right: 0;
				font-size: 3.71795vw;
				font-weight: 600;
				line-height: 1;
				display: flex;
				align-items: center;
				color: #1349A6;
				z-index: 2;
		}
		.s3 .point_wrap .c01 .num span,
		.s3 .point_wrap .c03 .num span,
		.s3 .point_wrap .c05 .num span,
		.s3 .point_wrap .c07 .num span {
				font-size: 10.89744vw;
				font-weight: 500;
				line-height: 1;
				margin-left: 4vw;
		}
		.s3 .point_wrap .c01 .s3_photo,
		.s3 .point_wrap .c03 .s3_photo,
		.s3 .point_wrap .c05 .s3_photo,
		.s3 .point_wrap .c07 .s3_photo {
				position: absolute;
				top: 7vw;
				left: 5vw;
				right: 0;
				z-index: 1;
		}
		.s3 .point_wrap .c01 .s3_photo img,
		.s3 .point_wrap .c03 .s3_photo img,
		.s3 .point_wrap .c05 .s3_photo img,
		.s3 .point_wrap .c07 .s3_photo img {
				max-width: 95vw;
		}
		.s3 .point_wrap .c01 .summary_bx,
		.s3 .point_wrap .c03 .summary_bx,
		.s3 .point_wrap .c05 .summary_bx,
		.s3 .point_wrap .c07 .summary_bx {
				width: 95vw;
				background-color: #fff;
				border-radius: 0 0.76923vw 0.76923vw 0.76923vw;
				position: absolute;
				top: 33.46vw;
				left: 0;
				z-index: 2;
				min-height: auto;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex {
				display: block;
				width: 95vw;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex .btn_ttl,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex .btn_ttl,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex .btn_ttl,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex .btn_ttl {
				background-color: #1349A6;
				display: flex;
				justify-content: flex-start;
				align-items: center;
				width: 50vw;
				height: 12.9vw;
				padding: 0 3vw;
				position: absolute;
				top: -8vw;
				left: 0;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex .btn_ttl .ico,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex .btn_ttl .ico,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex .btn_ttl .ico,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex .btn_ttl .ico {
				margin-right: 4vw;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex .btn_ttl p,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex .btn_ttl p,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex .btn_ttl p,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex .btn_ttl p {
				font-size: 3.46154vw;
				line-height: 1;
				color: #fff;
				position: relative;
				display: block;
				width: 100%;
				text-align: left;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex .btn_ttl p:after,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex .btn_ttl p:after,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex .btn_ttl p:after,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex .btn_ttl p:after {
				content: "";
				background-image: url("../img/s3_head_arrow.svg");
				background-repeat: no-repeat;
				background-size: contain;
				width: 4vw;
				height: 4vw;
				position: absolute;
				top: calc(50% - 2vw);
				right: 0;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex .btn_ttl:after,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex .btn_ttl:after,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex .btn_ttl:after,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex .btn_ttl:after {
				content: "";
				position: absolute;
				bottom: 0;
				right: -4.9vw;
				border-bottom: 12.9vw solid #1349A6;
				border-right: 5vw solid transparent;
		}
		.s3 .point_wrap .c01 .summary_bx .summary_ttl_flex li h6,
		.s3 .point_wrap .c03 .summary_bx .summary_ttl_flex li h6,
		.s3 .point_wrap .c05 .summary_bx .summary_ttl_flex li h6,
		.s3 .point_wrap .c07 .summary_bx .summary_ttl_flex li h6 {
				font-size: 3.33333vw;
				line-height: 2.1;
				width: 85vw;
				padding: 9vw 0 3vw 5vw;
		}
		.s3 .point_wrap .c07 {
				margin: 7vw auto 0 !important;
		}
		.s3 .point_wrap .c04,
		.s3 .point_wrap .c06 {
				width: 100%;
				min-height: 58.205vw;
				height: 100%;
				position: relative;
				margin: 2vw auto 0;
		}
		.s3 .point_wrap .c04 .num,
		.s3 .point_wrap .c06 .num {
				position: absolute;
				top: 0;
				left: 0;
				font-size: 3.71795vw;
				font-weight: 600;
				line-height: 1;
				display: flex;
				align-items: center;
				color: #1349A6;
				z-index: 2;
		}
		.s3 .point_wrap .c04 .num span,
		.s3 .point_wrap .c06 .num span {
				font-size: 10.89744vw;
				font-weight: 500;
				line-height: 1;
				margin-right: 4vw;
		}
		.s3 .point_wrap .c04 .s3_photo,
		.s3 .point_wrap .c06 .s3_photo {
				position: absolute;
				top: 7vw;
				right: 5vw;
				left: 0;
				z-index: 1;
		}
		.s3 .point_wrap .c04 .s3_photo img,
		.s3 .point_wrap .c06 .s3_photo img {
				max-width: 95vw;
		}
		.s3 .point_wrap .c04 .summary_bx,
		.s3 .point_wrap .c06 .summary_bx {
				width: 95vw;
				background-color: #fff;
				border-radius: 0 0.76923vw 0.76923vw 0.76923vw;
				position: absolute;
				top: 33.46vw;
				left: 5vw;
				z-index: 2;
				min-height: 21.15vw;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex {
				display: block;
				width: 95vw;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex .btn_ttl,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex .btn_ttl {
				background-color: #1349A6;
				display: flex;
				justify-content: flex-start;
				align-items: center;
				width: 50vw;
				height: 12.9vw;
				padding: 0 3vw;
				position: absolute;
				top: -8vw;
				left: 0;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex .btn_ttl .ico,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex .btn_ttl .ico {
				margin-right: 4vw;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex .btn_ttl p,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex .btn_ttl p {
				font-size: 3.46154vw;
				line-height: 1;
				color: #fff;
				position: relative;
				display: block;
				width: 100%;
				text-align: left;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex .btn_ttl p:after,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex .btn_ttl p:after {
				content: "";
				background-image: url("../img/s3_head_arrow.svg");
				background-repeat: no-repeat;
				background-size: contain;
				width: 4vw;
				height: 4vw;
				position: absolute;
				top: calc(50% - 2vw);
				right: 0;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex .btn_ttl:after,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex .btn_ttl:after {
				content: "";
				position: absolute;
				bottom: 0;
				right: -4.9vw;
				border-bottom: 12.9vw solid #1349A6;
				border-right: 5vw solid transparent;
		}
		.s3 .point_wrap .c04 .summary_bx .summary_ttl_flex li h6,
		.s3 .point_wrap .c06 .summary_bx .summary_ttl_flex li h6 {
				font-size: 3.33333vw;
				line-height: 2.1;
				width: 85vw;
				padding: 9vw 0 3vw 5vw;
		}
		.s3 .point_wrap .c04 {
				min-height: 140.128vw;
				margin: 3vw auto 0 !important;
		}
		.s3 .point_wrap .c05 {
				min-height: 89.8205vw;
		}
		.s3 .point_wrap .c06 {
				min-height: 192.948vw;
				margin: 4vw auto 0 !important;
		}
		.s3 .point_wrap .c02,
		.s3 .point_wrap .c08 {
				width: 100%;
				margin: -5vw auto 0;
				min-height: 58.205vw;
				position: relative;
		}
		.s3 .point_wrap .c02 .num,
		.s3 .point_wrap .c08 .num {
				position: absolute;
				top: 0;
				left: 0;
				font-size: 3.71795vw;
				font-weight: 600;
				line-height: 1;
				display: flex;
				align-items: center;
				color: #1349A6;
				z-index: 2;
		}
		.s3 .point_wrap .c02 .num span,
		.s3 .point_wrap .c08 .num span {
				font-size: 10.89744vw;
				font-weight: 500;
				line-height: 1;
				margin-right: 4vw;
		}
		.s3 .point_wrap .c02 .s3_photo,
		.s3 .point_wrap .c08 .s3_photo {
				position: absolute;
				top: 7vw;
				right: 5vw;
				left: 0;
				z-index: 1;
		}
		.s3 .point_wrap .c02 .s3_photo img,
		.s3 .point_wrap .c08 .s3_photo img {
				max-width: 95vw;
		}
		.s3 .point_wrap .c02 .summary_bx,
		.s3 .point_wrap .c08 .summary_bx {
				width: 95vw;
				background-color: #fff;
				border-radius: 0 0.76923vw 0.76923vw 0.76923vw;
				position: absolute;
				top: 33.46vw;
				right: 0;
				z-index: 2;
				min-height: 21.15vw;
		}
		.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex,
		.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex {
				display: block;
				width: 95vw;
		}
		.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex .btn_ttl,
		.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex .btn_ttl {
				background-color: #1349A6;
				display: flex;
				justify-content: flex-start;
				align-items: center;
				width: 50vw;
				height: 12.9vw;
				padding: 0 3vw;
				position: absolute;
				top: -8vw;
				left: 0;
		}
		.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex .btn_ttl .ico,
		.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex .btn_ttl .ico {
				margin-right: 4vw;
		}
		.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex .btn_ttl p,
		.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex .btn_ttl p {
				font-size: 3.46154vw;
				line-height: 1;
				color: #fff;
				position: relative;
				display: block;
				width: 100%;
				text-align: left;
		}
		.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex .btn_ttl:after,
		.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex .btn_ttl:after {
				content: "";
				position: absolute;
				bottom: 0;
				right: -4.9vw;
				border-bottom: 12.9vw solid #1349A6;
				border-right: 5vw solid transparent;
		}
		.s3 .point_wrap .c02 .summary_bx .summary_ttl_flex li h6,
		.s3 .point_wrap .c08 .summary_bx .summary_ttl_flex li h6 {
				font-size: 3.33333vw;
				line-height: 2.1;
				width: 90vw;
				padding: 9vw 0 3vw 5vw;
		}
		.s3 .point_wrap .summary_contents {
				display: flex;
				justify-content: space-between;
				width: 85vw;
				margin: 3vw 5vw;
				flex-wrap: wrap;
		}
		.s3 .point_wrap .summary_contents .summary_contents_bx {
				flex-basis: 50%;
		}
		.s3 .point_wrap .summary_contents .summary_contents_bx h5 {
				background-color: #EDEDED;
				min-width: 27.5vw;
				min-height: 9.4vw;
				font-size: 3.07692vw;
				line-height: 1;
				padding: 3.4vw;
				text-align: center;
				margin: 0 50vw 3vw 0;
		}
		.s3 .point_wrap .summary_contents .summary_contents_bx p {
				font-size: 3.07692vw;
				line-height: 2.1;
		}
		.s3 .point_wrap .summary_contents .summary_contents_bx p span {
				color: #1349A6;
		}
		.s3 .point_wrap .summary_contents .kei {
				flex-basis: 100%;
				border-bottom: 2px dotted #D1D1D1;
				padding-bottom: 4vw;
				margin-bottom: 4vw;
		}
		.s3 .point_wrap .summary_list {
				display: flex;
				justify-content: flex-start;
				width: 85vw;
				margin: 3vw 0 3vw 5vw;
				flex-wrap: wrap;
		}
		.s3 .point_wrap .summary_list li {
				flex-basis: 33%;
				margin-bottom: 3vw;
		}
		.s3 .point_wrap .summary_list li p {
				font-size: 3.07692vw;
				white-space: nowrap;
		}
		.s3 .point_wrap .summary_list li p span {
				color: #1349A6;
		}
		.s3 .point_wrap .summary_list .kei {
				flex-basis: 100%;
				border-bottom: 2px dotted #D1D1D1;
				padding-bottom: 4vw;
				margin-bottom: 4vw;
		}
		.s3 .point_wrap .summary_list02 {
				display: flex;
				justify-content: flex-start;
				width: 85vw;
				margin: 3vw 0 3vw 5vw;
				flex-wrap: wrap;
		}
		.s3 .point_wrap .summary_list02 li {
				flex-basis: 33%;
				margin-bottom: 3vw;
		}
		.s3 .point_wrap .summary_list02 li p {
				font-size: 3.07692vw;
				white-space: nowrap;
		}
		.s3 .point_wrap .summary_list02 li p span {
				color: #1349A6;
		}
		.s3 .point_wrap .summary_list02 li:last-child {
				margin-right: 0;
		}
		.s3 .point_wrap .summary_list02 .kei {
				flex-basis: 100%;
				border-bottom: 2px dotted #D1D1D1;
				padding-bottom: 4vw;
				margin-bottom: 4vw;
		}
		.s3 .slide-text {
				position: absolute;
				z-index: 0;
				bottom: 0;
				left: 0;
				width: 100%;
				height: 15.76vw;
				background-image: url("../img/s3_typo.svg");
				opacity: 0.03;
				mix-blend-mode: multiply;
				background-repeat: repeat-x;
				background-size: auto 15.76vw;
				/* 画像の高さ */
				animation: textPCloop 40s linear infinite;
		}
		@keyframes textPCloop {
				from {
						background-position: 0 0;
				}
				to {
						background-position: -100vw 0;
						/* 画像のマイナス幅 */
				}
		}
}

/* Right to Left */
@keyframes animate-panel {
		0% {
				transform-origin: right top;
				transform: scale(0, 1);
		}
		49% {
				transform-origin: right top;
				transform: scale(1, 1);
		}
		50% {
				transform-origin: left top;
				transform: scale(1, 1);
		}
		100% {
				transform-origin: left top;
				transform: scale(0, 1);
		}
}

@keyframes animate-content {
		0% {
				visibility: hidden;
		}
		49% {
				visibility: hidden;
		}
		50% {
				visibility: visible;
		}
		100% {
				visibility: visible;
		}
}

.mask-wrap {
		display: inline-block;
		margin: 0;
}

.mask-wrap .mask-inner {
		position: relative;
		visibility: hidden;
}

.mask-wrap .mask-inner::after {
		content: "";
		background: #000;
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		transform-origin: left top;
		transform: scale(0, 1);
		transition: all 0.3s ease 0s;
		visibility: visible;
}

.mask-wrap .mask-inner.start {
		animation-name: animate-content;
		animation-duration: 1s;
		animation-timing-function: ease;
		animation-delay: 0.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: both;
		animation-play-state: running;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
}

.mask-wrap .mask-inner.start::after {
		animation-name: animate-panel;
		animation-duration: 1s;
		animation-timing-function: ease;
		animation-delay: 0.5s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: both;
		animation-play-state: running;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
}

/* Left to Right */
@keyframes animate-panel02 {
		0% {
				transform-origin: left top;
				transform: scale(0, 1);
		}
		49% {
				transform-origin: left top;
				transform: scale(1, 1);
		}
		50% {
				transform-origin: right top;
				transform: scale(1, 1);
		}
		100% {
				transform-origin: right top;
				transform: scale(0, 1);
		}
}

@keyframes animate-content02 {
		0% {
				visibility: hidden;
		}
		49% {
				visibility: hidden;
		}
		50% {
				visibility: visible;
		}
		100% {
				visibility: visible;
		}
}

.mask-wrap02 {
		display: table;
		margin: 0;
}

.mask-wrap02 .mask-inner {
		position: relative;
		visibility: hidden;
}

.mask-wrap02 .mask-inner::after {
		content: "";
		background: #000;
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		transform-origin: left top;
		transform: scale(0, 1);
		transition: all 0.3s ease 0s;
		visibility: visible;
}

.mask-wrap02 .mask-inner::after {
		content: "";
		background: #000;
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		transform-origin: right top;
		transform: scale(0, 1);
		transition: all 0.3s ease 0s;
		visibility: visible;
}

.mask-wrap02 .mask-inner.start {
		animation-name: animate-content02;
		animation-duration: 1.5s;
		animation-timing-function: ease;
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: both;
		animation-play-state: running;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
}

.mask-wrap02 .mask-inner.start::after {
		animation-name: animate-panel02;
		animation-duration: 1s;
		animation-timing-function: ease;
		animation-delay: 0s;
		animation-iteration-count: 1;
		animation-direction: normal;
		animation-fill-mode: both;
		animation-play-state: running;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
}
