@charset "utf-8";
.sp{display:none !important;}

html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	vertical-align:baseline;
	background:transparent;
	list-style-type:none;
	font-size: 16px;
	color: #0f2540;
	font-family:"Noto Sans JP","Noto Serif JP",  "League Gothic",  "源ノ角ゴシック","ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 游ゴシック体, "Yu Gothic", YuGothic, "Open Sans", "Helvetica Neue", "sans-serif", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.6;
	outline:none;
	letter-spacing:0.08em;
}

a{text-decoration:none;}

html{
  scroll-behavior: smooth;
}

:root {
  --main-color: #40c2c9;
  --dark-color: #223751;
}

img{
	display:block;
	width:100%;
}

.fit_img{
	width:100%;
	margin:0 auto;
}

.fit_img img{
	width:100%;
	height:100%;
	object-fit:cover;
}

section{
	margin:0 auto;
}

.inner{
	width:1000px;
	margin:0 auto;
}

h2{
	font-size:175%;
	text-align:center;
}

/*header*/
header{
	position:fixed;
	width:100%;
	top:0;
	border-bottom:1px solid rgba(0,0,0,0.2);
	background:rgba(0,171,212,0.7);
	z-index:999;
}

header .inner{
	width:1000px;
	margin:0 auto;
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:15px 0;
}

header .inner h1{
	color:#fff;
	font-size:125%;
	font-weight:500;
}

header .inner h1 span{
	color:#fff;
	font-size:80%;
	margin-right:10px;
}

header .inner ul{
	width:45%;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10%;
}

header .inner ul li{
	width:50%;
}

header .inner ul li a{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:3%;
	width:100%;
	padding:10px 0;
	font-size:90%;
	color:#0f2540;
	font-weight:bold;
	border:1px solid #0f2540;
	box-sizing:border-box;
	border-radius:50px;
	line-height:1;
}

header .inner ul li.mail a{
	background:#fff;
}

header .inner ul li.mail a:before{
	content:"";
	display:block;
	height:20px;
	width:20px;
	background:URL("../img/head_mail.png") no-repeat center;
	background-size:contain;
}

header .inner ul li.line a{
	background:#8fff79;
}

header .inner ul li.line a:before{
	content:"";
	display:block;
	height:20px;
	width:20px;
	background:URL("../img/head_line.png") no-repeat center;
	background-size:contain;
}

main .fv{
	background:URL("../img/fv_bk.png") no-repeat center;
	background-size:cover;
	padding:130px 0 80px;
}

main .fv .inner{
	width:1100px;
	margin:0 auto;
	background:URL("../img/fv_img.png")no-repeat right top;
	background-size: contain;
	box-sizing:border-box;
	padding:20px 50px;
}

main .fv .inner h2{
	width:60%;
	color:#fff;
	font-size:260%;
	font-weight:bold;
	text-align:left;
}

main .fv .inner h2 span{
	display:block;
	color:#fff;
	font-size:45%;
	margin:20px auto 40px;
	font-weight:normal;
}

main .fv .inner .head_cta{
	width:30%;
	margin:0 0 60px;
}

main .fv .inner .head_cta p{
	color:#fff;
	margin:0 auto 10px;
}

main .fv .inner .head_cta a{
	display:block;
	background:#8fff79;
	color:#0f2540;
	text-align:center;
	padding:20px 0;
	border-radius:50px;
	box-sizing:border-box;
	box-shadow: 0 4px 0 #0f2540;
	font-weight:bold;
}

main .fv .inner p.notes{
	color:#fff;
	font-size:80%;
}

/*fv*/


/*lead*/

section.lead{
	background:#2fa3c6;
	padding:50px 0 10px;
}

section.lead h2,
section.lead p{
	color:#fff;
}

section.lead h2{
	width:fit-content;
	margin:0 auto 20px;
	padding:0 0 10px 0;
	border-bottom:solid 1px #fff;
	background: linear-gradient(
		135deg,
		#fff 40%,
		#e3ff1a 70%
	);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
	color: transparent;
}

section.lead p{
	font-size:125%;
	text-align:center;
	margin:0 auto 45px;
	line-height:2;
}

section.lead ol{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:5%;
}

section.lead ol li{
	width:47.5%;
	background: linear-gradient(135deg,#e7f7ff 30%,#a1c4fd 100%);
	border-radius:30px 0 30px 0;
	margin:0 auto 45px;
	padding:25px 0;
	box-sizing:border-box;
	display:flex;
	align-items:center;
}

section.lead ol li .fit_img{
	width:35%;
}

section.lead ol li .fit_img img{
	width:auto;
	margin:0 auto;
}

section.lead ol li .text_wrap{
	width:65%;
}

section.lead ol li .text_wrap h3{
	background:var(--dark-color);
	padding:5px 25px;
	color:#fff;
	font-size:125%;
	box-sizing:border-box;
	margin:0 auto 10px;
}

section.lead ol li .text_wrap p{
	width:93%;
	color:var(--dark-color);
	text-align:left;
	font-size:100%;
	margin:0;
	line-height:1.6;
}

/*google_ad_grants*/

section.google_ad_grants{
	background: linear-gradient(135deg,#e0edff 0%,#fff 60%,#e2dffd 100%);
	padding:130px 0 135px;
	position: relative;
}

section.google_ad_grants::before {
	content: "";
	position: absolute;
	left: 50%;
	top:0;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-left: 50vw solid transparent;
	border-right: 50vw solid transparent;
	border-top: 80px solid #2fa3c6;
}

section.google_ad_grants:after{
	content:;
}

section.google_ad_grants h2{
	border-bottom:solid 1px #000;
	width:fit-content;
	margin:0 auto 45px;
	padding:10px 0;
}

section.google_ad_grants h2 span{
	display:block;
	font-size:70%;
	font-weight:normal;
	margin:0 auto 10px;
}

section.google_ad_grants h3{
	text-align:center;
	font-size:250%;
	letter-spacing:0;
	font-weight:900;
	margin:0 auto 60px;
	background: linear-gradient(
		135deg,
		#2871fa 40%,
		#6717cd 60%
	);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
	color: transparent;
}

section.google_ad_grants h3 span{
	font-size:70%;
	color:#484848;
	-webkit-text-fill-color: #484848;
	font-weight:bold;
	margin-left:5px;
}

section.google_ad_grants .what_is{
	background:#fff;
	padding:70px;
	border-radius:70px 0 70px 0;
	box-sizing:border-box;
	box-shadow: 0 10px 30px rgba(15, 37, 64, 0.12);
}

section.google_ad_grants .what_is .box_01{
	display:flex;
	align-items:flex-start;
	gap:3%;
	margin:0 auto 30px;
}

section.google_ad_grants .what_is .box_01 .fit_img{
	width:16%;
}

section.google_ad_grants .what_is .box_01 h4{
	width:81%;
	letter-spacing:0.02em;
	font-size:150%;
}

section.google_ad_grants .what_is .box_01 h4 span{
	display:block;
	font-size:150%;
	letter-spacing:0.02em;
	line-height:1.4;
	margin:10px auto;
	background: linear-gradient(
		135deg,
		#2871fa 40%,
		#6717cd 60%
	);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
	color: transparent;
}

section.google_ad_grants .what_is .box_02{
	display:flex;
	align-items:flex-start;
	gap:2%;
}

section.google_ad_grants .what_is .box_02 .text_wrap{
	width:55%;
}

section.google_ad_grants .what_is .box_02 .text_wrap p{
	font-weight:600;
	font-size:125%;
}

section.google_ad_grants .what_is .box_02 .text_wrap p span{
	display:block;
	margin:20px auto;
	font-weight:normal;
	font-size:80%;
}

section.google_ad_grants .what_is .box_02 .fit_img{
	width:40%;
}

/* merit */
section.merit{
	position:relative;
	background:URL("../img/merit_bk.png") no-repeat;
	background-size:cover;
	overflow:hidden;
}

section.merit:after{
    content: "";
    position: absolute;
    left: 50%;
    top: 60px;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 50vw solid transparent;
    border-right: 50vw solid transparent;
    border-top: 80px solid #162d50;
	z-index:1;
}

section.merit:before{
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    width: 100%;
    height: 60px;
	background:#162d50;
	z-index:1;
}

section.merit .inner{
	position:relative;
}

section.merit .before{
	width:1100px;
	padding-top:140px;
}

section.merit .before:before{
	position:absolute;
	top:-10px;
	left:0;
	content:URL("../img/merit_before.png");
	z-index:1;
}

section.merit .after{
	width:1100px;
}

section.merit .after:after{
	position:absolute;
	bottom:-10px;
	right:0;
	content:URL("../img/merit_after.png");
	z-index:1;
}

section.merit h2{
	position:relative;
	background:#163750;
	padding:20px 0;
	background: linear-gradient(
		135deg,
		#c2e9fb 40%,
		#a1c4fd 70%
	);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
	color: transparent;
	z-index:2;
	margin:0 auto;
}

section.merit .inner p{
	color:#FFF;
}

section.merit .inner p.laed_text{
	font-size:185%;
	margin:0 auto 80px;
	line-height:2;
	font-weight:bold;
	text-align:center;
	position:relative;
	z-index:2;
}

section.merit .inner p.laed_text span{
	text-align:center;
	font-size:70%;
	display:block;
	color:#fff;
	margin:40px auto;
	font-weight:normal;
}

section.merit .merit_flex{
	position:relative;
	margin:0 auto 120px;
}

section.merit .merit_flex .fit_img{
	width:42vw;
	position:absolute;
	height:550px;
	top:0;
	left:0;
}

section.merit .merit_flex ul{
	width:1000px;
	margin:0 auto;
	box-sizing:border-box;
}

section.merit .merit_flex ul li{
	background:#45aac3;
	border:1px solid #fff;
	border-radius:40px 0 40px 0;
	width:55%;
	margin:0 0 40px 45%;
	box-shadow: 0 10px 10px rgba(15, 37, 64, 0.12);
}

section.merit .merit_flex ul li *{
	color:#fff;
}

section.merit .merit_flex ul li h4{
	position:relative;
	font-size:200%;
	width:80%;
	border-bottom:1px solid #fff;
	margin:0 auto 10px 0;
	display:flex;
	height:90px;
	align-items:center;
	padding:0 5%;
	box-sizing:border-box;
}

section.merit .merit_flex ul li h4:after{
	position:absolute;
	right:0;
	top:0;
}

section.merit .merit_flex ul li:nth-child(1) h4:after{
	content:URL("../img/merit_num_1.png");
}

section.merit .merit_flex ul li:nth-child(2) h4:after{
	content:URL("../img/merit_num_2.png");
}

section.merit .merit_flex ul li:nth-child(3) h4:after{
	content:URL("../img/merit_num_3.png");
}

section.merit .merit_flex ul li p{
	width:90%;
	font-size:150%;
	margin:0 0 25px;
	padding:0 5%;
	box-sizing:border-box;
}

section.merit .inner p.after_text{
	font-size:185%;
	margin:0 auto;
	padding-bottom:160px;
	line-height:2;
	font-weight:bold;
	text-align:center;
	position:relative;
	z-index:2;
}

section.merit .inner p.after_text span{
	text-align:center;
	font-size:120%;
	display:block;
	color:#fff;
	margin:40px auto;
}

section.merit .inner p.after_text span strong{
	font-size:100%;
	color:#91ff7f;
}

section.difference{
    background: linear-gradient(135deg, #e0edff 0%, #fff 60%, #e2dffd 100%);
	padding:120px 0 90px;
}

section.difference .inner h2{
	margin:0 auto 30px;
	color:#484848;
}

section.difference .inner h2 span{
	font-size:150%;
	color:#484848;
}

section.difference .inner h2 strong{
	text-align:center;
	font-size:150%;
	letter-spacing:0;
	font-weight:900;
	margin:0 auto 60px;
	background: linear-gradient(
		135deg,
		#2871fa 40%,
		#6717cd 60%
	);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
	color: transparent;
}


section.difference .inner img{
	margin:0 auto 10px;
}

p.caution{
	color:#484848;
	width:95%;
	margin:0 auto;
}

/* tools */
section.tools{
	background:#f7fdfd;
	padding:100px 0;
}

section.tools .inner h2{
	color:var(--dark-color);
	margin:0 auto 30px;
	line-height:1.6;
}

section.tools .inner > p.lead{
	text-align:left;
	width:85%;
	margin:0 auto 60px;
}

section.tools .inner > p.lead .emphasis{
	text-decoration:underline;
	text-underline-offset:4px;
	font-weight:500;
}

section.tools .inner ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:3%;
	margin:0 auto 40px;
}

section.tools .inner ul li{
	width:30%;
	background:#fff;
	border-radius:20px 0 20px 0;
	box-sizing:border-box;
	padding:35px 4% 30px;
	margin:0 0 30px;
	box-shadow: 0 6px 10px rgba(15, 37, 64, 0.15);
}

section.tools .inner ul li h3{
	font-size:115%;
	margin:0 auto 12px;
}

section.tools .inner ul li p.discount{
	display:inline-block;
	background:var(--main-color);
	color:#fff;
	font-size:85%;
	font-weight:500;
	padding:4px 14px;
	border-radius:20px;
	margin:0 auto 15px;
}

section.tools .inner ul li p:last-child{
	font-size:90%;
	line-height:1.7;
}

section.tools .inner p.notes{
	font-size:80%;
	color:#484848;
	text-align:left;
	width:95%;
	margin:0 auto;
}

section.qa{
	background-image:URL("../img/qa_bk.png");
	background-repeat:no-repeat;
	background-color:#44c5cd;
	padding:80px 0 180px;
}

section.qa h2{
	color:#fff;
	font-family:League Gothic;
	font-size:625%;
	font-weight:normal;
	margin:0 auto 80px;
}

section.qa h2 span{
	color:#fff;
	font-family:League Gothic;
	font-size:60%;
	font-weight:normal;
}

section.qa dl{
	margin:0 auto 20px;
}

section.qa dl dt{
	background:#eaf8fb;
	padding: 0 4.5%;
	box-sizing:border-box;
	border-radius:10px;
	display:flex;
	justify-content:flex-start;
	align-items:center;
	gap:5%;
	position:relative;
	transition:border-radius 0.3s ease;
}

section.qa dl dt.open{
	border-radius:10px 10px 0 0;
}

section.qa dl dt::after{
	content:"";
	display:block;
	width:40px;
	height:40px;
	background-color:#45c2c8;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M11 17 L20 26 L29 17' fill='none' stroke='%23fff' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat:no-repeat;
	background-position:center;
	background-size:40px 40px;
	border-radius:50%;
	position:absolute;
	top:40px;
	right:4.5%;
	transform:rotate(0deg);
	transition:transform 0.3s ease;
}

section.qa dl dt.open::after{
	transform:rotate(180deg);
}

section.qa dl dt span.q_number{
	font-size:500%;
	color:#43c5cc;
	font-family:League Gothic;
	line-height:1.5;
	text-align:center;
	letter-spacing:0.02em;
	width:10%;
}

section.qa dl dt span.text{
	font-size:150%;
	font-weight:bold;
	width:85%;
}

section.qa dl dd{
	background:#fff;
	border-radius:0 0 10px 10px;
	margin:0 auto 30px;
	padding:30px 4.5% 40px;
	box-sizing:border-box;
	font-size:125%;
	font-weight:500;
}

section.cta{
    background: linear-gradient(135deg, #e0edff 0%, #fff 60%, #e2dffd 100%) no-repeat;
	overflow:hidden;
	position:relative;
}

section.cta:after{
	content:"";
	display:block;
	width:100%;
	height:100px;
	background:#fff;
	position:absolute;
	top:0;
}

section.cta .inner{
	display:flex;
	align-items:center;
	justify-content:sapace-between;
	margin:100px auto;
	position:relative;
	z-index:2;
}

section.cta .inner .left{
	width:60%;
	margin:50px auto 80px;
}

section.cta .inner .left h3{
	text-align:left;
	font-size:180%;
	font-weight:600;
	margin:0 auto 60px;
}

section.cta .inner .left h3 span{
	font-size:70%;
	display:block;
	margin:0 auto 30px;
	font-weight:normal;
}

section.cta .inner .right{
	width:40%;
	display:flex;
	align-items:center;
	justify-content:center;
}

section.cta .inner a{
	display: block;
	width:60%;
	margin:0;
	background: #8fff79;
	color: #0f2540;
	text-align: center;
	padding: 20px 0;
	border-radius: 50px;
	box-sizing: border-box;
	box-shadow: 0 4px 0 #0f2540;
	font-weight: bold;
}

section.overview{
	background: URL("../img/merit_bk.png") no-repeat;
    background-size: cover;
}

section.overview .inner{
	width:1100px;
	padding:90px 0 170px;
	position:relative;
	overflow:hidden;
}

section.overview .inner:before{
	position:absolute;
	top:-10px;
	left:0;
	content:URL("../img/merit_before.png");
	z-index:1;
}

section.overview .inner:after{
	position:absolute;
	bottom:-10px;
	right:0;
	content:URL("../img/merit_after.png");
	z-index:1;
}

section.overview .inner h2{
	color:#fff;
	font-size:180%;
	margin:0 auto 70px;
}

section.overview table{
	border-collapse:separate;
	border-spacing:0 10px;
	width:90%;
	margin:0 auto;
	position:relative;
	z-index:2;
}

section.overview table th{
	background:#d7eff1;
	margin:0 auto 10px;
	width:26.5%;
	padding:10px 0;
	font-size:110%;
}

section.overview table td{
	width:73.5%;
	padding:20px 4%;
	box-sizing:border-box;
	background:#fff;
	font-size:105%;
	font-weight:400;
	letter-spacing:0.05em;
}

/* point */
section.point{
	background:URL("../img/point_bk.png") no-repeat;
	background-size:cover;
	overflow:hidden;
	padding-top:135px;
}

section.point .inner h2 span{
	display:block;
	margin:0 auto 20px;
	font-weight:500;
	font-size:80%;
}

section.point .inner h2{
	font-size:220%;
	display:block;
	margin:0 auto 80px;
	line-height:2.2;
}

section.point .inner h2 strong{
	font-size:100%;
	background:rgba(255,255,255,0.9);
	padding:10px 1.5%;
	border-radius:10px;
	box-sizing:border-box;
	box-shadow: 0 6px 10px rgba(15, 37, 64, 0.3);
}

section.point .inner ol{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:4%;
	margin:0 auto 90px;
}

section.point .inner ol > li{
	width:48%;
	background:#ecf9fa;
	border-radius:50px 0 50px 0;
	margin:0 auto 50px;
/*	padding:0 8%  35px; */
	box-sizing:border-box;
	box-shadow: 0 6px 10px rgba(15, 37, 64, 0.3);
	position:relative;
	overflow: hidden;
}

section.point .inner ol > li::after{
	content:"";
	display:block;
	width:128px;
	height:128px;
	background:URL("../img/point_icon01.png") no-repeat center;
	background-size:contain;
	position:absolute;
	bottom:-15px;
	right:-1.5%;
}

section.point .inner ol > li:nth-child(2)::after{
	background:URL("../img/point_icon02.png") no-repeat center;
}

section.point .inner ol > li:nth-child(3)::after{
	background:URL("../img/point_icon03.png") no-repeat center;
}

section.point .inner ol > li:last-child::after{
	background:URL("../img/point_icon04.png") no-repeat center;
}

section.point .inner ol > li h3{
	background:#0f2540;
	color:#fff;
	font-size:210%;
	letter-spacing:0;
	margin:0 auto 30px;
	padding:16px 0 16px 7.5%;
	border:solid 2px #fff;
	box-sizing:border-box;
	border-radius:50px 0 0 0;
	box-shadow: 0 6px 10px rgba(15, 37, 64, 0.3);
	position:relative;
}

section.point .inner ol > li h3::after{
	content:"";
	display:block;
	width:125px;
	height:85px;
	position:absolute;
	top:0;
	right:0;
}

section.point .inner ol > li:nth-child(1) h3::after{
	background:URL("../img/case_01.png") no-repeat center;
	background-size:contain;
}

section.point .inner ol > li:nth-child(2) h3::after{
	background:URL("../img/case_02.png") no-repeat center;
	background-size:contain;
}

section.point .inner ol > li:nth-child(3) h3::after{
	background:URL("../img/case_03.png") no-repeat center;
	background-size:contain;
}

section.point .inner ol > li:last-child h3::after{
	background:URL("../img/case_04.png") no-repeat center;
	background-size:contain;
}


section.point .inner ol > li  .text_wrap{
	width:85%;
	margin:0 auto 40px;
}

section.point .inner ol > li .text_wrap h4{
	font-size:160%;
	border-bottom:solid 4px #0f2540;
	letter-spacing: normal;
	margin:0 auto 15px;
	padding-bottom:10px;
}

section.point .inner ol > li .text_wrap ul li{
	font-size:125%;
	letter-spacing:0;
	font-weight: 500;
	margin:0 auto 10px;
}

section.point .inner .last_text{
	font-size:265%;
	text-align:center;
	font-weight:bold;
	margin:0 auto 25px;
	display:flex;
	justify-content:center;
	align-items:center;
}

section.point .inner .last_text::before,
section.point .inner .last_text::after{
	content: "";
	display:block;
	width: 60px;
	height: 1.5px;
	background-color: #0f2540;
}

section.point .inner .last_text::before{
	transform: rotate(60deg);
}

section.point .inner .last_text::after{
	transform: rotate(-60deg);
}

section.point img.sample{
	width:1000px;
	margin:200px auto 0;
}

/* perspective */
section.perspective{
	overflow:hidden;
    background: linear-gradient(135deg, #e0edff 0%, #fff 60%, #e2dffd 100%);
	position:relative;
}

section.perspective:after{
	content:"";
	display:block;
	height:25vw;
	width:100%;
	background:#53c8ce;
	position:absolute;
	bottom:0;
}

section.perspective img,sample{
	width:1000px;
	margin:0 auto 80px;
	z-index:2;
	position:relative;
	z-index:2;
}

/* assessment */
section.assessment{
	overflow:hidden;
	position:relative;
	background: linear-gradient(135deg,#e0edff 0%,#fff 60%,#e2dffd 100%);
	padding-top:120px;
}

section.assessment:after{
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 50vw solid transparent;
    border-right: 50vw solid transparent;
    border-top: 80px solid #53c8ce;
    z-index: 1;
}

section.assessment img.sample{
	width:1000px;
	margin:150px auto 40px;
}

section.assessment .inner h2,
section.assessment .inner h2 span,{
	color:#484848;
}

section.assessment .inner h2{
	font-size:225%;
	letter-spacing:0;
	color:#484848;
	margin:0 auto 35px ;
}

section.assessment .inner h2 span{
	font-size:75%;
	letter-spacing:0;
	color:#484848;
}

section.assessment .inner h2 strong{
	font-size:115%;
	background: linear-gradient(
		135deg,
		#2871fa 40%,
		#6717cd 60%
	);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
	color: transparent;
	letter-spacing:0;
}

section.assessment .inner p.lead{
	color:#0f2540;
	font-size:175%;
	text-align:center;
	margin:0 auto 60px;
}

section.assessment .inner ol{
	display:flex;
	justify-content:center;
	align-items:stretch;
	gap:2.75%;
	margin:0 auto 50px;
}

section.assessment .inner ol li{
	width:23%;
	background:#fff;
	padding-bottom:30px;
	border-radius:15px;
	box-shadow: 0 6px 10px rgba(15, 37, 64, 0.3);
	position:relative;
}

section.assessment .inner ol li:not(:last-child)::after{
	content: "";
	position: absolute;
	top: 50%;
	right:-24px;
	transform: translateY(-50%);
	width:0;
	height:0;
	border-style: solid;
	border-width: 18px 0 18px 24px;
	border-color: transparent transparent transparent #2F67D8;
}

section.assessment .inner ol li h3{
	background:#3174e5;
	color:#fff;
	font-size:125%;
	border-radius:15px 15px 0 0;
	padding:0 4.5%;
	margin:0 auto 25px;
	box-sizing:border-box;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	box-shadow: 0 6px 10px rgba(15, 37, 64, 0.3);
}

section.assessment .inner ol li h3 span{
	color:#fff;
	font-size:250%;
	font-family:League Gothic;
	font-weight:normal;
	line-height:1.3;
}

section.assessment .inner ol li .fit_img{
	width:auto;
	height:235px;
	margin:0 auto 20px;
}

section.assessment .inner ol li .fit_img img{
	width:100%;
	object-fit:contain;
}

section.assessment .inner ol li p{
	font-size:100%;
	font-weight:500;
	width:80%;
	margin:0 auto;
	letter-spacing:0.02em;
}

section.assessment .inner p.cta_text{
	width:95.5%;
	margin:0 auto 50px;
	text-align:center;
	color:#484848;
	font-size:175%;
	letter-spacing:0;
}

section.assessment a{
	display: block;
	width:40%;
	margin:0 auto 120px;
	background: #8fff79;
	color: #0f2540;
	text-align: center;
	padding: 20px 0;
	border-radius: 50px;
	box-sizing: border-box;
	box-shadow: 0 4px 0 #0f2540;
	font-weight: bold;
}

/* support */
section.support{
	overflow:hidden;
	position: relative;
    background: URL("../img/merit_bk.png") no-repeat;
    background-size: cover;
}

section.support .inner{
	width:1200px;
	position: relative;
	padding:130px 0 165px;
}

section.support .inner:before{
	position:absolute;
	top:-10px;
	left:0;
	content:URL("../img/merit_before.png");
}

section.support .inner:after{
	position:absolute;
	bottom:-10px;
	right:0;
	content:URL("../img/merit_after.png");
}

section.support .inner{
	z-index:1;
}

section.support .inner .content{
	width:1000px;
	margin:0 auto;
	position:relative;
	z-index:2;
}

section.support .inner h2{
	color:#fff;
	font-size:250%;
	border-bottom:solid 1px #fff;
	padding-bottom:15px;
	margin:0 auto 90px;
}

section.support .inner .support_wrap{
	background:#fff;
	width:96%;
	margin:0 0 0 auto;
	padding:45px 0 50px;
	border-radius:0 0 50px 0;
	position:relative;
	box-shadow: 0 6px 10px rgba(15, 37, 64, 0.3);
}

section.support .inner .support_wrap img{
	width:36%;
	height:auto;
	position:absolute;
	top:-40px;
	left:-10%;
}

section.support .inner .support_wrap .text_wrap{
	width:65%;
	margin-left:30%;
	box-sizing:border-box;
}

section.support .inner .support_wrap .text_wrap h3{
	font-weight:500;
	margin:0 auto 15px;
}

section.support .inner .support_wrap .text_wrap p.name{
	margin:0 auto 35px;
}

section.support .inner .support_wrap .text_wrap p.name strong{
	font-size:160%;
	margin:0 0 0 2%;
}

section.support .inner .support_wrap .text_wrap p.lead{
	margin:0 auto 35px;
	font-weight:500;
	letter-spacing:0;
}

section.support .inner .support_wrap .text_wrap p.lead:last-child{
	margin:0 auto;
}

section.support .inner .support_wrap .text_wrap ul{
	margin:0 auto 35px;
}

section.support .inner .support_wrap .text_wrap ul li{
	font-weight:500;
	margin:0 auto 10px;
	display:flex;
	align-items:center;
	gap:1%;
}

section.support .inner .support_wrap .text_wrap ul li::before{
	content:"";
	display:block;
	width:15px;
	height:15px;
	background:var(--main-color);
	border-radius:50%;
}


section.support img.sample{
	width:90%;
	margin:200px auto 150px;
	position:relative;
	z-index:2;
}

/* flow */
section.flow{
	overflow:hidden;
	padding:90px 0 155px;
    background: linear-gradient(135deg, #e0edff 0%, #fff 60%, #e2dffd 100%);
}

section.flow img.sample{
	width:1000px;
	margin:100px auto 150px;
}

section.flow .inner h2{
	color:#484848;
	font-size:185%;
	letter-spacing:0.1em;
	margin:0 auto 25px;
	padding-bottom:5px;
	border-bottom:solid 1px #000;
}

section.flow .inner h2 strong{
	font-size:120%;
	background: linear-gradient(
		135deg,
		#2871fa 40%,
		#6717cd 60% 
	);

	-webkit-background-clip: text;
	background-clip: text;

	-webkit-text-fill-color: transparent;
	color: transparent;
	letter-spacing:0;
}

section.flow .inner p.lead{
	font-size:125%;
	text-align:center;
	margin:0 auto 65px;
	line-height:2;
}

section.flow .inner ol li{
	display:flex;
	background:#fff;
	border:solid 2px #1b65e2;
	box-sizing:border-box;
	border-radius:20px;
	margin:0 auto 60px;
	box-shadow: 0 6px 10px rgba(15, 37, 64, 0.3);
	position:relative;
	align-items: center;
	gap:3%;
}

section.flow .inner ol li:nth-child(5) .step_number{
	padding:48px 0;
}

section.flow .inner ol li:last-child{
	margin:0 auto 35px;
}


section.flow .inner ol li:not(:last-child)::after{
	content: "";
	position: absolute;
	bottom:-45px;
	right:50%;
	transform: translateX(-50%);
	width:0;
	height:0;
	border-style: solid;
	border-width: 24px 18px 0 18px;
	border-color: #2F67D8 transparent transparent transparent;
}


section.flow .inner ol li p.step_number{
	background:#1b65e2;
	color:#fff;
	text-align:center;
	font-size:435%;
	font-family:League Gothic;
	line-height:1;
	width:11%;
	padding:24px 0;
	box-sizing:border-box;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	letter-spacing:0;
    box-shadow: 0 6px 10px rgba(15, 37, 64, 0.3);
	border-radius: 15px 0 0 15px;
}

section.flow .inner ol li p.step_number span{
	color:#fff;
	display:block;
	font-family:League Gothic;
	font-size:57%;
	line-height:1;
	letter-spacing:0;
}

section.flow .inner ol li .text_wrap{
	width:86%;
	box-sizing:border-box;
	padding-right:3%;
}

section.flow .inner ol li .text_wrap h3{
	font-size:185%;
	color:#1b65e2;
	margin:0 auto 15px;
	display:flex;
	align-items:center;
	gap:1%;
}

section.flow .inner ol li .text_wrap h3::before{
	content:"";
	display:block;
	width:50px;
	height:50px;
	background:URL("../img/flow_01.png") no-repeat center;
}

section.flow .inner ol li:nth-child(2) .text_wrap h3::before{
	background:URL("../img/flow_02.png") no-repeat center;
}

section.flow .inner ol li:nth-child(3) .text_wrap h3::before{
	background:URL("../img/flow_03.png") no-repeat center;
}

section.flow .inner ol li:nth-child(4) .text_wrap h3::before{
	background:URL("../img/flow_04.png") no-repeat center;
}

section.flow .inner ol li:nth-child(5) .text_wrap h3::before{
	background:URL("../img/flow_05.png") no-repeat center;
}

section.flow .inner ol li:last-child .text_wrap h3::before{
	background:URL("../img/flow_06.png") no-repeat center;
}

section.flow .inner ol li .text_wrap p{
	font-size:125%;
	letter-spacing:normal;
}

section.flow .inner p.precautions{
	color:#484848;
	font-weight:300;
}

address{
	font-style:normal;
	text-align:center;
	padding:10px 0;
	color:#fff;
	background:var(--main-color);
}


