@charset "UTF-8";

.main_title_area .main_title {
	align-items: center;
	padding-left: 0;
}

.main_title_area .main_title img {
	max-width: 372.54px;
	width: 19.4vw
}

@media screen and (max-width: 1024px) {
	.main_title_area .main_title img {
		max-width: 583.58px;
		width: 77.81vw;
		margin: auto;
	}
}


#sec01 {
	padding: 110px 0 118px;
}

#sec01 .title_area.center {
	margin-bottom: 80px;
}

#sec01 .title_area.center .en {
	font-size: 2rem;
}

#sec01 .title_area.center .title02 {
	font-size: 4.5rem;
	text-decoration: none;
}

#sec01 .center {
	margin-bottom: 90px;
}

#sec01 .center p {
	font-size: 1.8rem;
	text-align: center;
	line-height: 2.2;
}

#sec01 figure {
	max-width: 1200px;
	margin: auto;
}

@media screen and (max-width: 1700px) {
	#sec01 {
		padding: 7.14vw 0 7.66vw;
	}

	#sec01 .title_area.center {
		margin-bottom: 5.19vw;
	}

	#sec01 .title_area.center .en {
		font-size: 1.29vw;
	}

	#sec01 .title_area.center .title02 {
		font-size: 2.92vw;
	}

	#sec01 .center {
		margin-bottom: 5.84vw;
	}

	#sec01 .center p {
		font-size: 1.16vw;
	}
}

@media screen and (max-width: 1024px) {
	#sec01 {
		padding: 10.66vw 0 17.33vw;
	}

	#sec01 .title_area.center {
		margin-bottom: 8vw;
	}

	#sec01 .title_area.center .en {
		font-size: 2.4vw;
		text-align: center;
	}

	#sec01 .title_area.center .title02 {
		font-size: 5.33vw;
	}

	#sec01 .center {
		margin-bottom: 8vw;
	}

	#sec01 .center p {
		font-size: 3.73vw;
		text-align: left;
		line-height: 2;
	}
}


#sec02 {
	padding: 133px 0 140px;
}

#sec02 .title_area {
	margin-bottom: 80px;
}

#sec02 .contents {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#sec02 .contents.odd {
	padding: 30px 60px 30px 0;
	background: linear-gradient(90deg, transparent 0%, transparent 24.48%, #fff 24.48%, #fff 100%);
}

#sec02 .contents.even {
	padding: 30px 0 30px 60px;
	flex-direction: row-reverse;
	background: linear-gradient(90deg, #fff 0%, #fff 75.52%, transparent 75.52%, transparent 100%);
}

#sec02 .contents+.contents {
	margin-top: 40px;
}

#sec02 .contents figure {
	max-width: 710px;
	width: 46.1%;
}

#sec02 .contents .in {
	max-width: 650px;
	width: 42.2%;
}

#sec02 .contents .in .title03 {
	margin-bottom: 10px;
	font-size: 3.4rem;
	font-weight: bold;
}

#sec02 .contents .in .en {
	margin-bottom: 30px;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
}

#sec02 .contents .in p .a {
	color: #0093FF;
	text-decoration: underline;
	text-underline-offset: 2px;
}

#sec02 .contents.odd .in .btn a {
	margin: 30px 0 0 auto;
}

#sec02 .contents.even .in .btn a {
	margin: 30px auto 0 0;
}

@media screen and (max-width: 1700px) {
	#sec02 {
		padding: 8.63vw 0 9.09vw;
	}

	#sec02 .title_area {
		margin-bottom: 5.19vw;
	}

	#sec02 .contents.odd {
		padding: 1.94vw 3.89vw 1.94vw 0;
		background: linear-gradient(90deg, transparent 0%, transparent 24.48%, #fff 24.48%, #fff 100%);
	}

	#sec02 .contents.even {
		padding: 1.94vw 0 1.94vw 3.89vw;
		flex-direction: row-reverse;
		background: linear-gradient(90deg, #fff 0%, #fff 75.52%, transparent 75.52%, transparent 100%);
	}

	#sec02 .contents+.contents {
		margin-top: 2.59vw;
	}

	#sec02 .contents .in .title03 {
		margin-bottom: 0.64vw;
		font-size: 2.2vw;
	}

	#sec02 .contents .in .en {
		margin-bottom: 1.94vw;
		font-size: 0.77vw;
		letter-spacing: 0.05em;
	}

	#sec02 .contents .in .btn a {
		margin: 1.94vw 0 0 auto;
	}
}

@media screen and (max-width: 1024px) {
	#sec02 {
		padding: 16vw 0;
	}

	#sec02 .title_area {
		margin-bottom: 8vw;
	}

	#sec02 .contents {
		display: block;
		padding: 0 4vw 8vw;
	}

	#sec02 .contents.odd,
	#sec02 .contents.even {
		padding: 0 0 8vw;
		background: linear-gradient(0, #fff 0%, #fff 85%, transparent 85%, transparent 100%);
	}

	#sec02 .contents+.contents {
		margin-top: 8vw;
	}

	#sec02 .contents figure {
		max-width: none;
		width: 81.33vw;
		margin: 0 auto 5.33vw;
	}

	#sec02 .contents .in {
		max-width: none;
		width: 78.66vw;
		margin: auto;
	}

	#sec02 .contents .in .title03 {
		margin-bottom: 2vw;
		font-size: 4.53vw;
		text-align: center;
	}

	#sec02 .contents .in .en {
		margin-bottom: 3.33vw;
		font-size: 2.4vw;
		text-align: center;
		font-weight: 600;
	}

	#sec02 .contents .in .btn a {
		width: 78.66vw;
		margin: 5.33vw auto;
	}
}


#products_cat {
	padding: 140px 0;
}

#products_cat .title_area {
	margin-bottom: 60px;
}

#products_cat .list {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	margin-bottom: 80px;
}

#products_cat .list li {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: calc((100% - (30px * 4)) / 5);
	aspect-ratio: 1 / 1;
	border: 1px solid #001E46;
	border-radius: 8px;
}

#products_cat .list li figure {
	width: 63.38%;
	margin-bottom: 10px;
}

#products_cat .list li p {
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.05em;
}

#products_cat .btn a {
	width: 710px;
	height: 100px;
	margin: auto;
	font-size: 2.4rem;
}

#products_cat .btn a img {
	right: 30px;
	width: 25px;
	height: 25px;
}

@media screen and (max-width: 1700px) {
	#products_cat {
		padding: 9.09vw 0;
	}

	#products_cat .title_area {
		margin-bottom: 3.89vw;
	}

	#products_cat .list {
		gap: 1.94vw;
		margin-bottom: 5.19vw;
	}

	#products_cat .list li {
		width: calc((100% - (1.94vw * 4)) / 5);
		border-radius: 0.51vw;
	}

	#products_cat .list li figure {
		margin-bottom: 0.64vw;
	}

	#products_cat .list li p {
		font-size: 1.29vw;
	}

	#products_cat .btn a {
		width: 46.1vw;
		height: 6.49vw;
		font-size: 1.55vw;
	}

	#products_cat .btn a img {
		right: 1.94vw;
		width: 1.62vw;
		height: 1.62vw;
	}
}

@media screen and (max-width: 1024px) {
	#products_cat {
		padding: 16vw 0;
	}

	#products_cat .title_area {
		margin-bottom: 8vw;
	}

	#products_cat .list {
		gap: 4vw;
		margin-bottom: 8vw;
	}

	#products_cat .list li {
		width: calc((100% - 4vw) / 2);
		border: 0.26vw solid #001E46;
		border-radius: 1.06vw;
	}

	#products_cat .list li figure {
		width: 63.125%;
		margin-bottom: 1.33vw;
	}

	#products_cat .list li p {
		font-size: 3.73vw;
	}

	#products_cat .btn a {
		width: 89.33vw;
		height: 16vw;
		font-size: 4vw;
	}

	#products_cat .btn a img {
		right: 4.66vw;
		width: 5.33vw;
		height: 5.33vw;
	}
}


#payment {
	padding: 140px 0 122px;
}

#payment .title_area {
	margin-bottom: 80px;
}

#payment .top {
	position: relative;
	margin-bottom: 154px;
}

#payment .top .wrap {
	padding-left: 837px;
}

#payment .top .title03 {
	margin-bottom: 30px;
	font-size: 3.4rem;
	font-weight: bold;
}

#payment .top figure {
	position: absolute;
	top: 0;
	right: 52.96875vw;
	max-width: 900px;
	width: 46.875vw;
}

#payment .top .box {
	display: flex;
	align-items: center;
	gap: 30px;
	width: 100%;
	height: 100px;
	margin-top: 57px;
	padding: 0 40px;
	font-size: 2.2rem;
	background: #fff;
	border: 1px solid #1A2930;
	border-radius: 8px;
}

#payment .top .box+.box {
	margin-top: 20px;
}

#payment .top .box span {
	display: flex;
	align-items: center;
}

#payment .top .box span.fss {
	font-size: 2rem;
}

#payment .top .box img.icon {
	position: unset;
	width: 46px;
	height: 46px;
	margin: 0;
	filter: invert(0);
}

#payment .flow {
	padding: 37px 0 44px;
}

#payment .flow .title03 {
	margin-bottom: 45px;
	font-size: 4.2rem;
	text-align: center;
	font-weight: bold;
}

#payment .flow ol {
	justify-content: center;
	flex-wrap: wrap;
	gap: 34px 20px;
}

#payment .flow ol li {
	position: relative;
	width: 386px;
	padding: 62px 23px 23px;
	background: #fff;
	border: 1px solid #1A2930;
	border-radius: 8px;
}

#payment .flow ol li .number {
	position: absolute;
	top: -20px;
	left: 0;
	right: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 76px;
	height: 76px;
	padding-top: 0.5em;
	margin: auto;
	font-size: 1.4rem;
	line-height: 1.2;
	color: #fff;
	font-weight: 500;
	background: #1A2930;
	border-radius: 50%;
}

#payment .flow ol li .number span {
	font-size: 3.2rem;
}

#payment .flow ol li .fwb {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 5em;
	font-size: 2.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

#payment .flow ol li figure {
	margin-top: 1rem;
}

#payment .flow ol li.step_5 {
	width: 793px;
	padding: 62px 12px 6px 23px;
}

#payment .flow ol li.step_5 .fwb {
	display: block;
	height: auto;
}

#payment .flow ol li.step_5 .flex {
	justify-content: flex-start;
	gap: 28px;
	margin-top: 20px;
}

#payment .flow ol li.step_5 .left {
	width: 500px;
}

#payment .flow ol li.step_5 .left .fwn {
	font-size: 1.8rem;
	text-align: left;
	font-weight: normal;
	line-height: 1.55;
}

#payment .flow ol li.step_5 .left .flex {
	justify-content: space-between;
	gap: 0;
	margin-top: 15px;
}

#payment .flow ol li.step_5 .left .flex>figure {
	width: 235px;
	margin-top: 0;
}

#payment .flow ol li.step_5 .left .flex .in {
	width: 245px;
}

#payment .flow ol li.step_5 .left .flex .in img {
	display: block;
	width: 235px;
	margin: auto;
}

#payment .flow ol li.step_5 .left .flex .in p {
	margin-top: 10px;
	font-size: 1.6rem;
	font-weight: normal;
	line-height: 1.5;
}

#payment .flow ol li.step_5 .right {
	width: 230px;
	margin-top: 15px;
}

@media screen and (max-width: 1700px) {
	#payment {
		padding: 9.09vw 0 7.176vw;
	}

	#payment .title_area {
		margin-bottom: 5.19vw;
	}

	#payment .top {
		margin-bottom: 9.058vw;
	}

	#payment .top .wrap {
		padding-left: 50vw;
	}

	#payment .top .title03 {
		margin-bottom: 1.94vw;
		font-size: 2.2vw;
	}

	#payment .top .box {
		gap: 1.5vw;
		height: 6.49vw;
		padding: 0 2.2vw;
		margin-top: 3.7vw;
		font-size: 1.42vw;
		font-weight: 600;
		border: 0.12vw solid #1A2930;
	}

	#payment .top .box+.box {
		margin-top: 1.29vw;
	}

	#payment .top .box span.fss {
		font-size: 1.29vw;
	}

	#payment .top .box img.icon {
		width: 2.98vw;
		height: 2.98vw;
	}

	#payment .flow {
		padding: 2.176vw 0 2.588vw;
	}

	#payment .flow .title03 {
		margin-bottom: 2.647vw;
		font-size: 2.470588vw;
	}

	#payment .flow ol {
		gap: 2vw 1.17647vw;
	}

	#payment .flow ol li {
		width: 22.70588vw;
		padding: 3.647vw 1.3529vw 1.3529vw;
		border-radius: 0.47058vw;
	}

	#payment .flow ol li .number {
		top: -1.17647vw;
		width: 4.470588vw;
		height: 4.470588vw;
		font-size: 0.82352vw;
	}

	#payment .flow ol li .number span {
		font-size: 1.88235vw;
	}

	#payment .flow ol li .fwb {
		font-size: 1.294117vw;
	}

	#payment .flow ol li figure {
		margin-top: 0.588vw;
	}

	#payment .flow ol li.step_5 {
		width: 46.64705vw;
		padding: 3.647vw 0.7058vw 0.352941vw 1.3529vw;
	}

	#payment .flow ol li.step_5 .flex {
		gap: 1.647vw;
		margin-top: 1.1764vw;
	}

	#payment .flow ol li.step_5 .left {
		width: 29.4117vw;
	}

	#payment .flow ol li.step_5 .left .fwn {
		font-size: 1.0588vw;
	}

	#payment .flow ol li.step_5 .left .flex {
		margin-top: 0.8823vw;
	}

	#payment .flow ol li.step_5 .left .flex>figure {
		width: 13.8235vw;
	}

	#payment .flow ol li.step_5 .left .flex .in {
		width: 14.4117vw;
	}

	#payment .flow ol li.step_5 .left .flex .in img {
		width: 13.823vw;
	}

	#payment .flow ol li.step_5 .left .flex .in p {
		margin-top: 0.588vw;
		font-size: 0.941176vw;
	}

	#payment .flow ol li.step_5 .right {
		width: 13vw;
		margin-top: 1vw;
	}
}

@media screen and (max-width: 1024px) {
	#payment {
		padding: 16vw 0 21.33vw;
	}

	#payment .title_area {
		margin-bottom: 8vw;
	}

	#payment .top {
		margin-bottom: 16vw;
	}

	#payment .top .wrap {
		padding-left: 0;
	}

	#payment .top .title03 {
		margin-bottom: 8vw;
		font-size: 4.53vw;
		text-align: center;
	}

	#payment .top figure {
		position: unset;
		max-width: none;
		width: 100%;
		margin-bottom: 8vw;
	}

	#payment .top .box {
		gap: 2.5vw;
		height: 16vw;
		padding: 0 3.5vw;
		margin-top: 8vw;
		font-size: 3.6vw;
		border: 0.26vw solid #1A2930;
	}

	#payment .top .box+.box {
		margin-top: 2.66vw;
	}

	#payment .top .box span.fss {
		font-size: 2.8vw;
	}

	#payment .top .box img.icon {
		width: 6.13vw;
		height: 6.13vw;
	}

	#payment .flow {
		padding: 0;
	}

	#payment .flow .title03 {
		margin-bottom: 9.066vw;
		font-size: 5.6vw;
	}

	#payment .flow ol {
		gap: 6.66vw;
	}

	#payment .flow ol li {
		width: 100%;
		padding: 11.066vw 4vw 3.733vw;
		border: 2px solid #1A2930;
		border-radius: 1.066vw;
	}

	#payment .flow ol li .number {
		top: -4.533vw;
		width: 14.66vw;
		height: 14.66vw;
		font-size: 2.4vw;
	}

	#payment .flow ol li .number span {
		font-size: 6vw;
	}

	#payment .flow ol li .fwb {
		display: block;
		height: auto;
		font-size: 4vw;
	}

	#payment .flow ol li figure {
		margin-top: 2vw;
	}

	#payment .flow ol li.step_5 {
		width: 100%;
		padding: 11.066vw 4vw 3.733vw;
	}

	#payment .flow ol li.step_5 .flex {
		display: block;
		margin-top: 2.266vw;
	}

	#payment .flow ol li.step_5 .left {
		width: 100%;
	}

	#payment .flow ol li.step_5 .left .fwn {
		margin: 2.4vw 0 8vw;
		font-size: 3.733vw;
		text-align: center;
		line-height: 1.75;
	}

	#payment .flow ol li.step_5 .left .flex {
		margin-top: 2.266vw;
	}

	#payment .flow ol li.step_5 .left .flex>figure {
		width: 100%;
	}

	#payment .flow ol li.step_5 .left .flex .in {
		width: 100%;
	}

	#payment .flow ol li.step_5 .left .flex .in img {
		width: 66.4vw;
	}

	#payment .flow ol li.step_5 .left .flex .in p {
		margin-top: 3.33vw;
		font-size: 3.733vw;
		text-align: center;
		line-height: 1.75;
	}

	#payment .flow ol li.step_5 .right {
		width: 100%;
		margin: 8.66vw auto 0;
	}

	#payment img {
		width: 100%;
	}
}


#caution {
	padding: 140px 0 70px;
}

#caution .title_area {
	margin-bottom: 80px;
}

#caution ul {
	max-width: 1200px;
	margin: 0 auto 40px;
}

#caution ul li {
	display: flex;
	align-items: center;
	gap: 36px;
	padding: 0 10px 30px;
	border-bottom: 1px solid #DEDEDE;
}

#caution ul li+li {
	padding: 30px 10px;
}

#caution ul li img {
	width: 43.88px;
}

#caution ul li span {
	width: calc(100% - 36px - 43.88px);
	font-size: 1.5rem;
	line-height: 2.13;
}

#caution ul+p {
	margin-bottom: 40px;
	text-align: center;
}

#caution .btn a {
	justify-content: center;
	width: 650px;
	height: 100px;
	padding: 0;
	margin: auto;
	font-size: 2.4rem;
}

#caution .btn a img {
	right: 42px;
	width: 16.69px;
	height: 14.65px;
}

@media screen and (max-width: 1700px) {
	#caution {
		padding: 9.09vw 0 4.54vw;
	}

	#caution .title_area {
		margin-bottom: 5.19vw;
	}

	#caution ul {
		margin: 0 auto 2.59vw;
	}

	#caution ul li {
		gap: 2.33vw;
		padding: 0 0.64vw 1.94vw;
	}

	#caution ul li+li {
		padding: 1.94vw 0.64vw;
	}

	#caution ul li img {
		width: 2.84vw;
	}

	#caution ul li span {
		width: calc(100% - 2.33vw - 2.84vw);
		font-size: 0.97vw;
	}

	#caution ul+p {
		margin-bottom: 2.59vw;
	}

	#caution .btn a {
		width: 42.2vw;
		height: 6.49vw;
		font-size: 1.55vw;
	}

	#caution .btn a img {
		right: 2.72vw;
		width: 1.08vw;
		height: 0.95vw;
	}
}

@media screen and (max-width: 1024px) {
	#caution {
		padding: 18vw 0 8vw;
	}

	#caution .title_area {
		margin-bottom: 8vw;
	}

	#caution ul {
		margin-bottom: 5.33vw;
	}

	#caution ul li {
		gap: 5.33vw;
		padding: 0 0 5.33vw;
		border-bottom: 0.26vw solid #DEDEDE;
	}

	#caution ul li+li {
		padding: 5.33vw 0;
	}

	#caution ul li img {
		width: 8.776vw;
	}

	#caution ul li span {
		width: calc(100% - 5.33vw - 8.776vw);
		font-size: 3.73vw;
		line-height: 1.75;
	}

	#caution ul+p {
		margin-bottom: 8vw;
		text-align: left;
	}

	#caution .btn a {
		justify-content: flex-start;
		width: 89.33vw;
		height: 16vw;
		padding: 0 5.33vw;
		font-size: 4vw;
	}

	#caution .btn a img {
		right: 3.33vw;
		width: 4vw;
		height: 3.51vw;
	}
}


#flow {
	padding: 70px 0 140px;
}

#flow .title_area {
	margin-bottom: 60px;
}

#flow .title_area+p {
	margin-bottom: 60px;
	text-align: center;
}

#flow ol {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 45px 20px;
	width: 1200px;
	margin: auto;
}

#flow ol li {
	position: relative;
	width: calc((100% - (20px * 2)) / 3);
	padding: 45px 5px 30px;
	border: 1px solid #DEDEDE;
	border-radius: 8px;
}

#flow ol li .number {
	position: absolute;
	top: -0.7em;
	left: 50%;
	font-size: 5rem;
	font-weight: 600;
	transform: translateX(-50%);
}

#flow ol li .title03 {
	margin-bottom: 12px;
	font-size: 2.8rem;
	font-weight: bold;
	text-align: center;
}

#flow ol li p {
	text-align: center;
	line-height: 1.46;
}

#flow ol li .small {
	display: block;
	margin: 1em 0;
	font-size: 80%;
}

#flow ol li .btn {
	margin-top: 12px;
}

#flow ol li .btn a {
	justify-content: center;
	margin: auto;
}

#flow .box_yellow {
	max-width: 1200px;
	margin: 70px auto 0;
	padding: 50px 70px 80px;
	background: rgba(242, 217, 120, .5);
	border-radius: 8px;
}

#flow .box_yellow .icon {
	display: block;
	width: 57px;
	margin: 0 auto 22px;
}

#flow .box_yellow .title03 {
	margin-bottom: 30px;
	font-size: 38px;
	font-weight: bold;
	text-align: center;
}

#flow .box_yellow .center {
	font-size: 18px;
	text-align: center;
	line-height: 2.22;
}

#flow .box_yellow .btn_area {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	margin-top: 50px;
}

#flow .box_yellow .btn_area .btn {
	width: 100%;
}

#flow .box_yellow .btn_area .btn a {
	gap: 34px;
	width: 100%;
	height: 100px;
	font-size: 2.4rem;
}

#flow .box_yellow .btn_area .btn._w a {
	gap: 26px;
	background: #fff;
}

#flow .box_yellow .btn_area .btn a img.icon {
	position: unset;
	width: 30.39px;
	height: 32.52px;
	margin: 0;
}

#flow .box_yellow .btn_area .btn._w a img.icon {
	width: 44.98px;
	height: 35.66px;
	filter: invert(0);
}

#flow .box_yellow .btn_area .btn a .arrow img {
	right: 46px;
	width: 18.23px;
	height: 16px;
}

#flow .box_yellow .btn_area .btn._w a:hover {
	background: #1A2930;
}

#flow .box_yellow .btn_area .btn._w a:hover img.icon {
	filter: brightness(0) invert(1);
}

@media screen and (max-width: 1700px) {
	#flow {
		padding: 4.54vw 0 9.09vw;
	}

	#flow .title_area {
		margin-bottom: 3.89vw;
	}

	#flow .title_area+p {
		margin-bottom: 3.89vw;
	}

	#flow ol {
		gap: 2.92vw 1.29vw;
		width: 77.92vw;
	}

	#flow ol li {
		width: calc((100% - (1.29vw * 2)) / 3);
		padding: 2.92vw 0.32vw 1.94vw;
		border-radius: 0.51vw;
	}

	#flow ol li .number {
		font-size: 3.24vw;
	}

	#flow ol li .title03 {
		margin-bottom: 0.77vw;
		font-size: 1.81vw;
	}

	#flow .box_yellow {
		margin: 4.1176vw auto 0;
		padding: 2.9411vw 4.1176vw 4.70588vw;
		border-radius: 0.470588vw;
	}

	#flow .box_yellow .icon {
		width: 3.3529vw;
		margin: 0 auto 1.29411vw;
	}

	#flow .box_yellow .title03 {
		margin-bottom: 1.7647vw;
		font-size: 2.23529vw;
	}

	#flow .box_yellow .center {
		font-size: 1.0588vw;
	}

	#flow .box_yellow .btn_area {
		margin-top: 2.94117vw;
		gap: 1.17647vw;
	}

	#flow .box_yellow .btn_area .btn a {
		gap: 2vw;
		height: 5.88vw;
		font-size: 1.411vw;
	}

	#flow .box_yellow .btn_area .btn._w a {
		gap: 1.52941vw;
	}

	#flow .box_yellow .btn_area .btn a img.icon {
		width: 1.7876vw;
		height: 1.91294vw;
	}

	#flow .box_yellow .btn_area .btn._w a img.icon {
		width: 2.64588vw;
		height: 2.09764vw;
	}

	#flow .box_yellow .btn_area .btn a .arrow img {
		right: 2.705vw;
		width: 1.07235vw;
		height: 0.94117vw;
	}
}

@media screen and (max-width: 1024px) {
	#flow {
		padding: 8vw 0 16vw;
	}

	#flow .title_area {
		margin-bottom: 8vw;
	}

	#flow .title_area+p {
		margin-bottom: 13.33vw;
		text-align: left;
	}

	#flow ol {
		gap: 7.33vw 0;
		width: 100%;
	}

	#flow ol li {
		width: 100%;
		padding: 8vw 5.33vw 5.33vw;
		border: 0.26vw solid #DEDEDE;
		border-radius: 1.06vw;
	}

	#flow ol li .number {
		top: -0.9em;
		font-size: 9.06vw;
	}

	#flow ol li .title03 {
		margin-bottom: 2vw;
		font-size: 5.33vw;
	}

	#flow ol li p {
		line-height: 1.75;
	}

	#flow ol li .btn {
		margin-top: 0.77vw;
	}

	#flow ol li .btn a {
		width: 100%;
	}

	#flow .box_yellow {
		margin: 10vw auto 0;
		padding: 5vw;
		border-radius: 1.066vw;
	}

	#flow .box_yellow .icon {
		width: 9.3023vw;
		margin: 0 auto 2.3255vw;
	}

	#flow .box_yellow .title03 {
		margin-bottom: 0.5em;
		font-size: 5.1162vw;
	}

	#flow .box_yellow .center {
		font-size: 3.73vw;
		line-height: 2;
	}

	#flow .box_yellow .btn_area {
		flex-wrap: wrap;
		gap: 5vw;
		margin-top: 5vw;
	}

	#flow .box_yellow .btn_area .btn a {
		gap: 4.53vw;
		height: 16vw;
		padding: 0 8vw;
		font-size: 4vw;
	}

	#flow .box_yellow .btn_area .btn._w a {
		gap: 3.33vw;
		padding: 0 6.66vw;
		border: 0.4vw solid #1A2930;
	}

	#flow .box_yellow .btn_area .btn a img.icon {
		width: 4.86vw;
		height: 5.2vw;
	}

	#flow .box_yellow .btn_area .btn._w a img.icon {
		width: 7.19vw;
		height: 5.7vw;
	}

	#flow .box_yellow .btn_area .btn a .arrow img {
		right: 3.33vw;
		width: 4vw;
		height: 3.51vw;
	}
}


#inside {
	padding: 140px 0 260px;
	overflow: hidden;
}

#inside .title_area {
	margin-bottom: 80px;
}

#inside .posirela {
	position: relative;
}

#inside .posirela.left {
	margin-top: 96px;
	margin-bottom: 380px;
}

#inside .posirela.right {
	margin-bottom: 100px;
}

#inside .posirela.left .wrap {
	padding-right: 830px;
}

#inside .posirela.right .wrap {
	padding-left: 830px;
}

#inside .posirela .en {
	margin-bottom: 10px;
	font-size: 5.2rem;
	font-weight: 600;
	line-height: 1;
}

#inside .posirela .title03 {
	margin-bottom: 30px;
	font-size: 3.4rem;
	font-weight: bold;
}

#inside .posirela figure {
	position: absolute;
	top: 0;
	max-width: 900px;
	width: 46.875vw;
}

#inside .posirela p+img {
	margin-top: 30px;
}

#inside .posirela.left figure {
	left: 52.96875vw;
}

#inside .posirela.right figure {
	right: 52.96875vw;
}

#inside .howto {
	margin-bottom: 140px;
}

#inside .howto .title03 {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
	margin-bottom: 80px;
	font-size: 2.7rem;
	font-weight: bold;
}

#inside .howto .title03:before,
#inside .howto .title03:after {
	content: "";
	display: block;
	width: 50px;
	height: 1px;
	background: #1A2930;
	transform: rotate(-40deg);
}

#inside .howto .contents {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#inside .howto .contents.odd {
	padding: 30px 60px 30px 0;
	background: linear-gradient(90deg, transparent 0%, transparent 24.48%, #fff 24.48%, #fff 100%);
}

#inside .howto .contents.even {
	padding: 30px 0 30px 60px;
	flex-direction: row-reverse;
	background: linear-gradient(90deg, #fff 0%, #fff 75.52%, transparent 75.52%, transparent 100%);
}

#inside .howto .contents+.contents {
	margin-top: 40px;
}

#inside .howto .contents figure {
	max-width: 710px;
	width: 46.1%;
}

#inside .howto .contents .in {
	max-width: 650px;
	width: 42.2%;
}

#inside .howto .contents .in .title04 {
	margin-bottom: 10px;
	font-size: 3.4rem;
	font-weight: bold;
}

#inside .howto .contents .in .en {
	margin-bottom: 30px;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
}

@media screen and (max-width: 1700px) {
	#inside {
		padding: 9.09vw 0 16.88vw;
	}

	#inside .title_area {
		margin-bottom: 5.19vw;
	}

	#inside .posirela.left {
		margin-top: 5.647vw;
		margin-bottom: 22.35294vw;
	}

	#inside .posirela.right {
		margin-bottom: 0;
	}

	#inside .posirela.left .wrap {
		padding-right: 53.89%;
	}

	#inside .posirela.right .wrap {
		padding-left: 53.89%;
	}

	#inside .posirela .en {
		margin-bottom: 0.64vw;
		font-size: 3.37vw;
	}

	#inside .posirela .title03 {
		margin-bottom: 1.94vw;
		font-size: 2.2vw;
	}

	#inside .howto {
		margin-bottom: 9.09vw;
	}

	#inside .howto .title03 {
		gap: 1.94vw;
		margin-bottom: 5.19vw;
		font-size: 1.75vw;
	}

	#inside .howto .title03:before,
	#inside .howto .title03:after {
		width: 3.24vw;
	}

	#inside .howto .contents.odd {
		padding: 1.94vw 3.89vw 1.94vw 0;
	}

	#inside .howto .contents.even {
		padding: 1.94vw 0 1.94vw 3.89vw;
	}

	#inside .howto .contents+.contents {
		margin-top: 2.59vw;
	}

	#inside .howto .contents .in .title04 {
		margin-bottom: 0.64vw;
		font-size: 2.2vw;
	}

	#inside .howto .contents .in .en {
		margin-bottom: 1.94vw;
		font-size: 0.77vw;
	}
}

@media screen and (max-width: 1024px) {
	#inside {
		padding: 16vw 0;
	}

	#inside .title_area {
		margin-bottom: 8vw;
	}

	#inside .posirela.left {
		margin: 10.66vw 0;
	}

	#inside .posirela.right {
		margin-bottom: 0;
	}

	#inside .posirela.left .wrap {
		padding-right: 0;
	}

	#inside .posirela.right .wrap {
		padding-left: 0;
	}

	#inside .posirela .en {
		margin-bottom: 0;
		font-size: 5vw;
		text-align: center;
	}

	#inside .posirela .title03 {
		margin-bottom: 30px;
		font-size: 6.13vw;
		text-align: center;
	}

	#inside .posirela figure {
		position: unset;
		max-width: none;
		width: 100%;
		margin-bottom: 8vw;
	}

	#inside .posirela p+img {
		margin-top: 1.764vw;
	}

	#inside .posirela.left figure {
		left: 52.96875vw;
	}

	#inside .posirela.right figure {
		right: 52.96875vw;
	}

	#inside .howto {
		margin-bottom: 16vw;
	}

	#inside .howto .title03 {
		gap: 2vw;
		margin-bottom: 8vw;
		font-size: 6.13vw;
	}

	#inside .howto .title03:before,
	#inside .howto .title03:after {
		width: 9vw;
		height: 0.26vw;
	}

	#inside .howto .contents {
		display: block;
		padding: 0 4vw 8vw;
	}

	#inside .howto .contents.odd,
	#inside .howto .contents.even {
		padding: 0 0 8vw;
		background: linear-gradient(0, #fff 0%, #fff 85%, transparent 85%, transparent 100%);
	}

	#inside .howto .contents+.contents {
		margin-top: 8vw;
	}

	#inside .howto .contents figure {
		max-width: none;
		width: 81.33vw;
		margin: 0 auto 5.33vw;
	}

	#inside .howto .contents .in {
		max-width: none;
		width: 78.66vw;
		margin: auto;
	}

	#inside .howto .contents .in .title04 {
		margin-bottom: 2vw;
		font-size: 4.53vw;
		text-align: center;
	}

	#inside .howto .contents .in .en {
		margin-bottom: 3.33vw;
		font-size: 2.4vw;
		text-align: center;
		font-weight: 600;
	}

	#inside .howto .contents .in .btn a {
		width: 78.66vw;
		margin: 5.33vw auto;
	}
}