@charset "utf-8";


.main_area{
	margin-top: 100px;
	background: var(--c_blue);
	position: relative;
	overflow: hidden;
}
.main_area,
.main_area>div{
	height: 80vw;
	max-height: 740px;
}
.main_area::after{
	content: "";
	background: url(../images/front/main_pattern.png);
	background-size: cover;
	width: 50%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.main_area>div{
	position: relative;
	z-index: 1;
}

.main_area .img_area{
	width: 50%;
	order: 2;
}
.main_area .img_area img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.main_area .txt_area{
	width: 50%;
	padding: 2% 4%;
	order: 1;
	display: flex;
	align-items: center;
	position: relative;
}

.main_area .txt_area::after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-color: var(--c_blue) transparent transparent transparent;
	border-width: 800px 60px 0px 0px;
	position: absolute;
	top: 0;
	right: -60px;
}

.main_area .txt_area h1,
.main_area .txt_area h3{
	color: #fff;
}

.main_area .txt_area h1{
	font-size: clamp(1.5rem, 0.591rem + 4.55vw, 4rem);
	margin-bottom: 0;
	line-height: 1.4;
}
.main_area .txt_area h1 .intro{
	font-size: clamp(1.125rem, 0.761rem + 1.82vw, 2.125rem);
	margin-bottom: .125em;
}
.main_area .txt_area h1 .small{
	font-size: clamp(1rem, 0.773rem + 1.14vw, 1.625rem);
}

.main_area .txt_area h2{
	width: fit-content;
	background: var(--c_yel);
	color: #004EA2;
	border-radius: 10px;
	padding: .35em 1.25em;
	font-size: clamp(1rem, 0.773rem + 1.14vw, 1.625rem);
	margin-bottom: 1.5em;
}

.main_area .btn{
	width: fit-content;
}
.main_area .btn a{
	display: block;
	color: #fff;
	padding: .75em 2.25em;
	text-align: center;
	border-radius: 50px;
	border: 2px solid #fff;
	font-weight: 700;
	position: relative;
	background: var(--c_red);
}

section h2{font-size: clamp(1.5rem, 1rem + 2.5vw, 2.875rem);margin-bottom: .75em}
section h3{font-size: clamp(1.25rem, 1.114rem + 0.68vw, 1.625rem);margin-bottom: .75em;}
section h4{font-size: clamp(1rem, 0.682rem + 1.59vw, 1.875rem);margin-bottom: .75em;}


section h2 .en{
	display: block;
	border-radius: 10px;
	padding: .25em 1em;
	width: fit-content;
	font-size: clamp(1rem, 0.909rem + 0.45vw, 1.25rem);
	background: var(--c_blue);
	color: #fff;
	margin: 0 auto .25em;
	position: relative;
}

section h2 .en::after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-color: var(--c_blue) transparent transparent transparent;
	border-width: 16px 7px 0px 7px;
	position: absolute;
	bottom: -14px;
	left: 50%;
	transform: translateX(-50%);
	margin: auto;
}

.front_case h2 .en{
	background: #fff;
	color: var(--c_blue);
}
.front_case h2 .en::after{
	border-color: #fff transparent transparent transparent;
}

.bg_pattern,.bg_pattern02{
	position: relative;
}
.bg_pattern>div,
.bg_pattern02>div{
	position: relative;
	z-index: 1;
}
.bg_pattern::after{
	content: "";
	mask: url(../images/front/bg_pattern.svg);
	mask-size: cover;
	width: 30vw;
	height: 30vw;
	max-width: 300px;
	max-height: 300px;
	position: absolute;
	z-index: 0;
}
.front_example.bg_pattern::after{
	background-color: var(--c_blue);
	bottom: 0;
	left: -6vw;
}
.front_case.bg_pattern::after{
	background-color: #fff;
	top: 0;
	right: -6vw;
}
.front_curriculum.bg_pattern::after{
	background-color: var(--c_trqs);
	top: 0;
	left: -6vw;
}
.front_thoughts.bg_pattern::after,
.front_faq.bg_pattern::after{
	background-color: var(--c_blue);
	top: 0;
	right: -6vw;
}

.bg_pattern02::after{
	content: "";
	background: url(../images/front/main_pattern.png);
	background-size: cover;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	opacity: .2;
}

/*.front_about .list>li:first-child{
	margin-bottom: 4em;
}
.front_about .list>li .txt_area{
	width: 70%;
}
.front_about .list>li .img_area{
	width: 25%;
}

.front_about h3{
	text-align: left;
}*/

.front_news h2{
	margin-bottom: .5em;
}

.front_news p{
	text-align: center;
	font-weight: bold;
	font-size: clamp(1rem, 0.864rem + 0.68vw, 1.375rem);
	margin-bottom: 2.5em;
}
.front_news .img_area{
	width: 80%;
	max-width: 460px;
	margin: auto;
}

.front_example h2 .small{
	width: fit-content;
	background: var(--c_yel);
	color: #004EA2;
	border-radius: 10px;
	padding: .35em 1.25em;
	font-size: clamp(1rem, 0.864rem + 0.68vw, 1.375rem);
	margin-bottom: 1.5em;
	text-align: center;
	margin: auto;
}

.front_example .list{
	position: relative;
	margin-bottom: 6em;
}
.front_example .list::after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-color: var(--c_blue) transparent transparent transparent;
	border-width: 48px 54px 0px 54px;
	position: absolute;
	bottom: calc(-48px - 1.5em);
	left: 50%;
	transform: translateX(-50%);
	margin: auto;
}



.front_example .list>li,
.front_example .list02{
	margin: 1em;
	border: 1px solid #707070;
	border-radius: 10px;
}
.front_example .list>li{
	width: calc(100% / 2 - 2em);
}



.front_example .list>li h3 + div,
.front_example .list02 ul{
	padding: 1.5em 2em;
	background: #fff;
}

.front_example h3{
	color: #fff;
	padding: .25em .5em;
	border-radius: 9px 9px 0 0;
}
.front_example .list h3{
	background: var(--c_blue);
}
.front_example .list02 h3{
	background: var(--c_red);
}


.front_example .list>li h3 + div dl{
	font-weight: 700;
}
.front_example .list>li h3 + div dt{
	font-size: clamp(1rem, 0.864rem + 0.68vw, 1.375rem);
}

.front_example .list02 li{
	width: calc(100% / 2 - 1em);
	position: relative;
}


.front_example .list02 h4{
	color: var(--c_red);
}

.front_example .list>li li{
	position: relative;
	padding-left: 1.5em;
	margin-bottom: .5em;
}

.front_example .list>li li::before{
	content: "";
	background: url(../images/front/check.png);
	background-size: cover;
	width: 20px;
	height: 17px;
	position: absolute;
	top: .5em;
	left: 0;
}



.front_order .box01 .img_area{width: 40%;}
.front_order .box01 .txt_area{width: 55%;}
.front_order .box01 .img_area img{
	border-radius: 20px;
	border: 4px solid var(--c_blue);
}
.front_order .box02 .list{
	margin-bottom: 4em;
}
.front_order .box02 .list>li{
	width: calc(100% / 3 - 3em);
	margin: 1.5em;
	position: relative;
}
.front_order .box02 .list>li:nth-of-type(1){margin-top: 5em;}
.front_order .box02 .list>li:nth-of-type(3){margin-top: 4em;}
.front_order .box02 .list>li:nth-of-type(1)::after{
	content: "";
	width: 5em;
	border-bottom: 6px dotted #54B850;
	position: absolute;
	bottom: -2.5em;
	right: -1.5em;
	transform: rotate(55deg);
}
.front_order .box02 .list>li:nth-of-type(2)::after{
	content: "";
	width: 5em;
	border-bottom: 6px dotted #FE9023;
	position: absolute;
	bottom: -2.5em;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
	transform: rotate(90deg);
}
.front_order .box02 .list>li:nth-of-type(3)::after{
	content: "";
	width: 5em;
	border-bottom: 6px dotted var(--c_blue);
	position: absolute;
	bottom: -2.5em;
	left: -1.5em;
	transform: rotate(-55deg);
}

.front_order .box02 .list>li img{
	border-radius: 50%;
	display: block;
	width: 100%;
	max-width: 360px;
	margin: auto;
	text-align: center;
}
.front_order .box02 .list>li:nth-of-type(1) img{border: 6px solid #54B850;}
.front_order .box02 .list>li:nth-of-type(2) img{border: 6px solid #FE9023;}
.front_order .box02 .list>li:nth-of-type(3) img{border: 6px solid var(--c_blue);}
.front_order .box02 .list>li figcaption{
	background: #54B850;
	color: #fff;
	font-size: clamp(0.875rem, 0.693rem + 0.91vw, 1.375rem);
	text-align: center;
	font-weight: 700;
	padding: .5em .25em;
	border-radius: 10px;
	margin-top: -2em;
	position: relative;
	z-index: 1;
}
.front_order .box02 .list>li:nth-of-type(1) figcaption{background: #54B850;}
.front_order .box02 .list>li:nth-of-type(2) figcaption{background: #FE9023;}
.front_order .box02 .list>li:nth-of-type(3) figcaption{background: var(--c_blue);}

.front_order .box02 .list02>li{
	width: calc(100% / 2 - 2.5em);
	background: #fff;
	border: 4px solid var(--c_red);
	border-radius: 10px;
	position: relative;
}
.front_order .box02 .list02>li h3{
	background: var(--c_red);
	color: #fff;
	text-align: center;
	padding: .5em;
}
.front_order .box02 .list02>li p{
	padding: 1.5em 2em;
}

.front_order .box02 .list02>li:nth-of-type(1)::after {
	content: '\f067';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	color: var(--c_red);
	font-size: clamp(2.5rem, 1.591rem + 4.55vw, 5rem);
	position: absolute;
	top: 50%;
	right: -1.125em;
	transform: translateY(-50%);
}

.front_order .big_txt{
	text-align: center;
	font-size: clamp(1.5rem, 0.818rem + 3.41vw, 3.375rem);
	color: var(--c_red);
	position: relative;
	margin-bottom: 3em;
}

.front_order .big_txt::after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-color: var(--c_red) transparent transparent transparent;
	border-width: 48px 54px 0px 54px;
	position: absolute;
	bottom: calc(-48px - 1em);
	left: 50%;
	transform: translateX(-50%);
	margin: auto;	
}



.front_case h3{
	font-size: clamp(1.125rem, 0.807rem + 1.59vw, 2rem);
	color: var(--c_blue);
}

.front_case .list>li{
	background: #fff;
	min-height: 410px;
	border-radius: 10px;
}
.front_case .list>li:not(:last-child){
	margin-bottom: 3em;
}

.front_case .img_area{
	width: 35%;
}
.front_case .img_area img{
	object-fit: cover;
	width: 100%;
	height: 100%;
	border-radius: 10px 0 0 10px;
}

.front_case .txt_area{
	width: 65%;
	padding: 1.5em 2em;
}

.front_case .txt_area h3 .case{
	display: inline-block;
	background: var(--c_blue);
	color: #fff;
	border-radius: 10px;
	font-size: clamp(0.875rem, 0.693rem + 0.91vw, 1.375rem);
	padding: .25em 1em;
	margin-bottom: .25em;
}

.front_case .list .point li{
	text-indent: -1em;
	padding-left: 1em;
}



section.contact_btn .inner_section{
	padding: 4em 0;
}
section.contact_btn li{
	width: calc(100% / 3 - 1em);
}

.contact_btn li a{
	display: block;
	color: #fff;
	padding: 1em .5em;
	text-align: center;
	border-radius: 50px;
	border: 2px solid #fff;
	font-weight: 700;
	position: relative;
}

.contact_btn .material a{background: var(--c_trqs);}
.contact_btn .contact a{background: var(--c_blue);}
.contact_btn .training a{background: var(--c_red);}



.front_curriculum h2{
	margin-bottom: 2em;
}
.front_curriculum li{
	position: relative;
}

.front_curriculum li .step_no{
	position: absolute;
	top: -3em;
	left: 50%;
	transform: translateX(-50%);
	margin: auto;
	background: var(--c_trqs);
	color: #fff;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20vw;
	height: 20vw;
	max-width: 110px;
	max-height: 110px;
	border-radius: 50%;
}

.front_curriculum li .step{
	font-size: clamp(0.75rem, 0.568rem + 0.91vw, 1.25rem);
}
.front_curriculum li .num{
	font-size: clamp(2rem, 1.364rem + 3.18vw, 3.75rem);
}



.front_curriculum li:not(:last-child){
	background: #fff;
	padding: 4.5em 3em 2.5em;
	border-radius: 10px;
	margin-bottom: 5em;
}
.front_curriculum li:nth-of-type(3){
	margin-bottom: 8em;
}

.front_curriculum li:nth-of-type(3)::after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-color: var(--c_trqs) transparent transparent transparent;
	border-width: 48px 54px 0px 54px;
	position: absolute;
	bottom: calc(-48px - 2em);
	left: 50%;
	transform: translateX(-50%);
	margin: auto;	
}




.front_curriculum li .img_area{
	width: 20%;
}
.front_curriculum li .img_area img{
	display: block;
	width: auto;
	height: 100%;
	max-height: 130px;
	margin: auto;
	text-align: center;
}

.front_curriculum li:not(:last-child) .txt_area{
	width: 75%;
}

.front_curriculum li:last-child{
	background: var(--c_yel);
	padding: 3em 2.5em 2em;
	border-radius: 10px;
	position: relative;
}

.front_curriculum h3{
	background: var(--c_trqs);
	color: #fff;
	text-align: center;
	padding: .5em 1em;
	position: absolute;
	top: -1.25em;
	left: 50%;
	transform: translateX(-50%);
	margin: auto;
	width: 80%;
	border-radius: 10px;
}




.front_features li{
	width: calc(100% / 2 - 2em);
	margin: 1em 0;
}

.front_features li .img_area{
	margin-bottom: 1em;
}

.front_features li .features{
	background: var(--c_trqs);
	color: #fff;
	font-size: clamp(1rem, 0.818rem + 0.91vw, 1.5rem);
	padding: .125em 1em;
	border-radius: 10px;
}


.front_features li img{
	border: 6px solid var(--c_trqs);
	border-radius: 20px;
}
.front_features .youtube{
	display: block;
	text-align: right;
	position: relative;
	padding-right: 1em;
}
.front_features .youtube .arrow::after{
	right: 0;
}
.front_features .youtube a:hover{
	text-decoration: underline;
	opacity: 1;
}


.front_voice dl{
	width: 48%;
	background: #fff;
	border: 4px solid var(--c_dblue);
	border-radius: 20px;
}
.front_voice dl dt{
	background: var(--c_blue);
	border-bottom: 4px solid var(--c_dblue);
	border-radius: 16px 16px 0 0;
	color: #fff;
	font-size: clamp(1rem, 0.864rem + 0.68vw, 1.375rem);
	font-weight: 700;
	padding: .5em;
	text-align: center;
}

.front_voice dl dd{
	padding: 1.5em 2em;
}




.front_thoughts li:not(:last-child){
	margin-bottom: .25em;
}

.front_thoughts figure{
	width: 16%;
	max-width: 180px;
}

.front_thoughts li p{
	color: #fff;
	width: 80%;
	font-size: clamp(0.875rem, 0.693rem + 0.91vw, 1.375rem);
  position: relative;
  display: inline-block;
  padding: 1em 1.5em;
  border-radius: 10px;
}

.front_thoughts li:nth-of-type(odd) p{
	background: #45A0FC;
	border: 4px solid #05529F;
}
.front_thoughts li:nth-of-type(even) p{
	background: #FC4577;
	border: 4px solid #CF0039;
}


.front_thoughts li p::before,
.front_thoughts li p::after {
  content: "";
  position: absolute;
  top: 50%;
  border-style: solid;
  transform: skew(0, -10deg);
}

.front_thoughts li:nth-of-type(odd) p::before {
  left: 0;
  border-width: 0 24px 22px 0;
  border-color: transparent #05529F transparent transparent;
  translate: -100% -50%;
  transform-origin: right;
}

.front_thoughts li:nth-of-type(odd) p::after {
  left: 0;
  border-width: 0 14.8px 13.3px 0;
  border-color: transparent #45A0FC transparent transparent;
  translate: -100% calc(-50% - 0.3px);
  transform-origin: right;
}

.front_thoughts li:nth-of-type(even) p::after {
  right: 0;
  border-width: 0 0 13.3px 14.8px;
  border-color: transparent transparent transparent #FC4577;
  translate: 100% calc(-50% - 0.3px);
  transform-origin: left;
}


.front_thoughts li:nth-of-type(even) p::before {
  right: 0;
  border-width: 0 0 22px 24px;
  border-color: transparent transparent transparent #CF0039;
  translate: 100% -50%;
  transform-origin: left;
}



.front_comment li{
	width: calc(100% / 2 - 1.25em);
	display:flex;
	flex-direction:column;
}
.front_comment li p{
	padding: 1.25em 1.5em;
	color: #fff;
	flex-grow:1;
	margin-bottom: 1.5em;
	border-radius: 20px;
	position: relative;
}
.front_comment li:nth-of-type(1) p{
	background: #45A0FC;
	border: 3px solid #05529F;
}
.front_comment li:nth-of-type(2) p{
	background: #FC4583;
	border: 3px solid #CF0039;
}

.front_comment li p::before,
.front_comment li p::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  transform: skew(-10deg);
  transform-origin: top;	
}

.front_comment li p::before {
  border-width: 22px 0 0 20px;
  border-color: #000000 transparent transparent;
  translate: -50% 100%;
}

.front_comment li p::after {
  border-width: 14.8px 0 0 13.3px;
  border-color: #9bee8c transparent transparent;
  translate: calc(-50% + 0.3px) 100%;
}

.front_comment li:nth-of-type(1) p::before {border-color: #05529F transparent transparent;}
.front_comment li:nth-of-type(1) p::after {border-color: #45A0FC transparent transparent;}
.front_comment li:nth-of-type(2) p::before {border-color: #CF0039 transparent transparent;}
.front_comment li:nth-of-type(2) p::after {border-color: #FC4583 transparent transparent;}
.front_comment li figure{text-align: center;}
.front_comment li figure img{
	width: 160px;
	height: auto;
}
.front_comment li figure figcaption{
	font-size: clamp(0.75rem, 0.614rem + 0.68vw, 1.125rem);
}

.front_companies li{
	width: calc(100% / 5 - 2em);
	margin: 1em;
}

.front_companies .box{
	background: var(--c_lblue);
	padding: 1.5em 2em;
}
.front_companies h3{
	color: var(--c_blue);
	font-size: clamp(1.25rem, 0.977rem + 1.36vw, 2rem);
}


.front_price h3{
	background: var(--c_blue);
	color: #fff;
	padding: .25em;
	font-size: clamp(1.25rem, 0.977rem + 1.36vw, 2rem);
}

.front_price dl{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 4px;
}

.front_price dt,
.front_price dd{
	padding: .5em;
	text-align: center;
	background: #fff;
}

.front_price .dl_head dt,
.front_price .dl_head dd{
	background: var(--c_red);
	color: #fff;
}

.front_price dt{
	width: 30%;
}
.front_price dd{
	width: calc(70% / 2 - 4px);
}


.front_price .txt{
	text-indent: -2.25em;
	padding-left: 2.25em;
}


.front_faq .list dl:not(:last-child){
	margin-bottom: 4em;
}


.front_faq dl dt,.front_faq dl dd{
	padding-left: 70px;
	position: relative;
}

.front_faq dl dt{
	margin-bottom: 1em;
	font-size: clamp(1rem, 0.909rem + 0.45vw, 1.25rem);
	font-weight: 700;
}
.front_faq dl dd{
	font-size: clamp(0.875rem, 0.784rem + 0.45vw, 1.125rem);
}

.front_faq dl dt::before,.front_faq dl dd::before{
	border-radius: 10px;
	color: #fff;
	font-weight: 700;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: .15em;
	position: absolute;
}
.front_faq dl dt::before{
	content: "Q";
	background: var(--c_blue);
	font-size: clamp(1.25rem, 1.023rem + 1.14vw, 1.875rem);
	width: 46px;
	height: 46px;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.front_faq dl dd::before{
	content: "A";
	background: var(--c_red);
	font-size: clamp(1.125rem, 0.989rem + 0.68vw, 1.5rem);
	width: 36px;
	height: 36px;
	top: 0;
	left: 10px;
}

.front_business dl{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 1.5em 0;
}
.front_business dl dt{
	padding: .5em 1em;
	width: 12em;
	background: #45A0FC;
	color: #fff;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}
.front_business dl dd{
	padding: .5em 2em;
	width: calc(100% - 12em);
	border-bottom: 1px solid #ccc;
}




@media (max-width: 1199px){


.main_area{
	margin-top: 80px;
}
.main_area .txt_area::after{
	border-width: 80vw 60px 0px 0px;
	right: -60px;
}


}



@media (max-width: 1099px){


.front_contact_btn li{
	width: calc(100% / 3 - .5em);
}


}

@media (max-width: 999px){

.front_contact_btn li a{
	font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
}

}



@media (max-width: 899px){

.main_area{margin-top: 0;}


.front_contact_btn .inner_section{
	padding: 2em 0;
}
.front_contact_btn li{
	width: 100%;
	max-width: 460px;
	margin: .5em auto;
}

section.contact_btn{
	display: none;
}


}




@media (max-width: 799px){


.main_area,.main_area>div{
	height: auto;
	max-height: auto;
}

.main_area .img_area,
.main_area .txt_area{
	width: 100%;
	order: 2;
}
.main_area .txt_area{
	padding: 4%;
}
.main_area::after{
	width: 100%;
}
.main_area .btn{
	margin: auto;
}


section h2 .en::after{
	border-width: 10px 6px 0px 6px;
	bottom: -10px;
}


/*.front_about .list>li:first-child{
	margin-bottom: 2em;
}
.front_about .list>li .txt_area{
	width: 100%;
}
.front_about .list>li .img_area{
	width: 80%;
	max-width: 360px;
	margin: 0 auto 1.5em;
}

.front_about h3{
	text-align: center;
}*/





.front_example .list>li{
	width: 100%;
}

.front_example dt{
	text-align: center;
	margin-bottom: 1em;
}

.front_example .list::after{
	border-width: 44px 50px 0px 50px;
	bottom: calc(-44px - .75em);
}
.front_example .list02 li{
	width: 100%;
}
.front_example .list02 li:nth-of-type(1){
	margin-bottom: 1em;
}

.front_order .box01 .img_area{
	width: 100%;
	max-width: 640px;
	margin: 0 auto 2em;
}

.front_order .box01 .txt_area{
	width: 100%;
}


.front_order .box02 .list>li,
.front_order .box02 .list>li:nth-of-type(1),
.front_order .box02 .list>li:nth-of-type(3){
	width: 100%;
	margin: 1em;
}

.front_order .box02 .list>li:nth-of-type(1)::after,
.front_order .box02 .list>li:nth-of-type(2)::after{
	display: none;
}

.front_order .box02 .list>li:nth-of-type(3)::after{
	width: 3.5em;
	border-bottom: 6px dotted var(--c_red);
	position: absolute;
	bottom: -2.75em;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
	transform: rotate(90deg);
}
.front_order .box02 .list>li img{
	width: 80%;
}

.front_order .big_txt{
	margin-bottom: 2.5em;
}
.front_order .big_txt::after{
	border-width: 44px 50px 0px 50px;
	bottom: calc(-44px - .75em);
}

.front_order .box02 .list02>li{
	width: 100%;
	border: 3px solid var(--c_red);
}
.front_order .box02 .list02>li:nth-of-type(1){
	margin-bottom: 6em;
}

.front_order .box02 .list02>li p{
	padding: 1.25em 1.5em;
	text-align: center;
}

.front_order .box02 .list02>li:nth-of-type(1)::after {
	top: unset;
	bottom: -1.75em;
	right: 0;
	left: 0;
	transform: unset;
	margin: auto;
	text-align: center;
}


.front_companies li{
	width: calc(100% / 3 - 2em);
	margin: 1em;
}

.front_companies .box{
	padding: 1em 1.25em;
}

.front_curriculum li .img_area{
	width: 50%;
	max-width: 360px;
	margin: 0 auto 2em;
}

.front_curriculum li:not(:last-child) .txt_area{
	width: 100%;
}
.front_curriculum li:not(:last-child){
	background: #fff;
	padding: 4.5em 1.75em 1.5em;
	margin-bottom: 4em;
}

.front_curriculum h3{
	padding: .5em;
	width: 94%;
}
.front_curriculum li .step_no{
	top: -10vw;
	width: 20vw;
	height: 20vw;
}

.front_curriculum li:nth-of-type(3)::after{
	border-width: 44px 50px 0px 50px;
	bottom: calc(-44px - 2em);
}

.front_features li{
	width: 100%;
}


.front_voice .list dl:nth-of-type(1){
	margin-bottom: 6vw;
}

.front_voice dl{
	width: 100%;
}
.front_voice dl dd{
	padding: 1em 1.5em;
}

.front_comment li{
	width: 100%;
}
.front_comment li:nth-of-type(1){
	margin-bottom: 6vw;
}

.front_thoughts li:not(:last-child){margin-bottom: 1em;}
.front_thoughts li p{padding: .5em 1em;}
.front_thoughts li:nth-of-type(odd) p{border: 3px solid #05529F;}
.front_thoughts li:nth-of-type(even) p{border: 3px solid #CF0039;}

.front_case .list>li{
	background: #fff;
	min-height: auto;
	border-radius: 10px;
}
.front_case .list>li:not(:last-child){
	margin-bottom: 3em;
}

.front_case .img_area,
.front_case .txt_area{
	width: 100%;
}

.front_case .txt_area{
	padding: 1em 1.5em;
}

.front_case .img_area img{
	border-radius: 10px 10px 0 0;
}


.front_price dt,
.front_price dd{
	padding: .5em;
	text-align: center;
}

.front_price .dl_head dt,
.front_price .dl_head dd{
	background: var(--c_red);
	color: #fff;
}

.front_price .dl_head{
	display: none;
}

.front_price dt,.front_price dd{
	width: 100%;
}
.front_price dd{
	margin: 2px 0;
}

.front_price dt{
	background: var(--c_red);
	color: #fff;
}
.front_price dt::before{
	content: "受講者数";
	display: inline-block;
	margin-right: 1em;
}

.front_price dd::before{
	display: inline-block;
	margin-right: .5em;
	font-size: 90%;
}


.front_price .price01 dd:nth-of-type(1)::before{
	content: "税別 受講料(50分単位）";
}
.front_price .price01 dd:nth-of-type(2)::before{
	content: "税込 受講料(50分単位）";
}
.front_price .price02 dd:nth-of-type(1)::before{
	content: "税別 受講料(90分単位）";
}
.front_price .price02 dd:nth-of-type(2)::before{
	content: "税込 受講料(90分単位）";
}


.front_faq .list dl:not(:last-child){
	margin-bottom: 2em;
}

.front_faq dl dt,.front_faq dl dd{
	padding-left: 50px;
}
.front_faq dl dt::before{
	width: 34px;
	height: 34px;
}

.front_faq dl dd::before{
	width: 30px;
	height: 30px;
	left: 4px;
}




.front_business dl{
	margin: 1em 0;
}

.front_business dl dt,
.front_business dl dd{
	width: 100%;
}
.front_business dl dd{
	padding: 1em;
	border-bottom: none;
}



}



@media (max-width: 599px){

.front_example .list{
	margin-bottom: 4em;
}

.front_example .list::after{
	border-width: 34px 40px 0px 40px;
	bottom: calc(-34px - .5em);
}

.front_example .list>li h3 + div,
.front_example .list02 ul{
	padding: 1em 1.5em;
}

.front_example .list>li li::before{
	width: 18px;
	height: 15px;
	top: .25em;
}


.front_order .big_txt::after{
	border-width: 34px 40px 0px 40px;
	bottom: calc(-34px - .75em);
}


.front_curriculum li:last-child {
  padding: 1em 1.25em;
}
.front_curriculum h3{
	position: static;
	width: 100%;
	transform: unset;
	margin-bottom: .5em;
}

.front_curriculum li:nth-of-type(3){
	margin-bottom: 6em;
}

.front_curriculum li:nth-of-type(3)::after{
	border-width: 34px 40px 0px 40px;
	bottom: calc(-34px - 2em);
}


.front_features li img{
	border: 4px solid var(--c_trqs);
	border-radius: 10px;
}


.front_thoughts figure{
	width: 20%;
}

.front_thoughts li p{
	width: 75%;
}
.front_thoughts li p{padding: .5em .75em;}
.front_thoughts li:nth-of-type(odd) p::before {border-width: 0 18px 16px 0;}
.front_thoughts li:nth-of-type(odd) p::after {border-width: 0 11.8px 10.3px 0;}
.front_thoughts li:nth-of-type(even) p::after {border-width: 0 0 10.3px 11.8px;}
.front_thoughts li:nth-of-type(even) p::before {border-width: 0 0 16px 18px;}


}



@media (max-width: 399px){



.front_curriculum li:not(:last-child){
	background: #fff;
	padding: 3.25em 1.5em 1.25em;
}




}