@charset "utf-8";

/*==============================
        content
==============================*/

.contents h2,
.contents h3,
.contents h4 {
	font-weight:600;
	letter-spacing:.05em;
}
.contents h2.gtit {
	font-size:2.2rem;
	text-align:center;
	margin-bottom:2.5em;
}
.contents h2.gtit .jp {
	display:block;
	padding-top:.66em;
}
.contents h2.gtit .en {
	font-family: 'Manrope', sans-serif;
	font-size:7.0rem;
	color: transparent;
	background: linear-gradient(90deg, rgba(255,156,0,1) 0%, rgba(252,110,0,1) 100%);
	-webkit-background-clip: text;
}

strong {
	font-weight:600;
	background:linear-gradient(transparent 60%, #ffdd5a 60%);
}
p strong {
	font-weight: 600;
	background:linear-gradient(transparent 66%, #ffdd5a 66%);
}
.orange {
	color:#ff8003;
}
p {
	font-size:1.6rem;
	line-height:1.8;
	letter-spacing:.05em;
}
.cta {
	max-width:840px;
	margin:0 auto;
	text-align: center;
}
.cta h3 {
	font-size:2.0rem;
	margin-bottom:1.5em;
}
.cta h3 span {
	margin:0 1em;
}
.cta h3::before {
	content:'';
	width:1px;
	height:1.7em;
	background-color:#000000;
	transform:rotate(-35deg);
}
.cta h3::after {
	content:'';
	width:1px;
	height:1.7em;
	background-color:#000000;
	transform:rotate(35deg);
}
.cta .btnwrap {
	width:100%;
}
.cta .btnwrap a {
	font-size:2.2rem;
	height:3.2em;
	padding:0;
	width:calc(50% - 15px);
	box-shadow:2px 5px 5px rgba(0,0,0,.2);
}
.cta .btnwrap a span {
	font-weight:600;
}
.cta .btnwrap a::before {
	content:'';
	width: 2.2em;
	height:2.2em;
	margin-right:.5em;
	background:url(../img/common/icon_mail.png) no-repeat center center/contain;
}
.cta .btnwrap a.btn_line {
	background: rgb(7,199,86);
	background: linear-gradient(90deg, rgba(7,199,86,1) 0%, rgba(0,169,91,1) 100%);
}
.cta .btnwrap a.btn_line:hover {
	filter:brightness(1.2);
}
.cta .btnwrap a.btn_line::before {
	background:url(../img/common/icon_line.png) no-repeat center center/contain;
}

/*==============================
        header
==============================*/


/* =================================================================
        section
================================================================= */

/**FV**/
#fv .wrap {
	background:url(../img/top/fv_bg.jpg) no-repeat center center/auto 100% #fffcee;
	overflow:hidden;
}
#fv .contents {
	height:700px;
	max-width:1200px;
	position:relative;
}
#fv .contents h1 {
	width:40%;
	padding-top: 63px;
}
#fv .contents .tablet {
	width:73.3%;
	position:absolute;
	left:42%;
	top:50%;
	transform:translateY(-50%);
}

/**sec_01**/

#sec_01 .wrap {
	padding:45px 0;
}
#sec_01 .contents {
	text-align:center;
	max-width:1200px;
}
#sec_01 h2 {
	font-size:2.6rem;
	margin-bottom:0;
}
#sec_01 h2::before,
#sec_01 h2::after {
	content:'';
	width:1.75em;
	height:1px;
	background-color:#000000;
}
#sec_01 h2 span {
	margin:0 .5em;
}
#sec_01 .contents_inner {
	/* padding:30px 0 45px; */
	padding:10px 0 15px;
}
#sec_01 .btn {
	min-width:285px;
}
#sec_01 .gs_logo_single {
	padding:0;
}

/**sec_02**/
#sec_02 .wrap {
	padding:45px 0 60px;
	background-color:#f6f5f0;
	position:relative;
}
#sec_02 .wrap::before {
	content:'';
	display:block;
	width:50px;
	height:60px;
	background:url(../img/common/arrow_down.png) no-repeat center center/contain;
	position:absolute;
	bottom:-45px;
	left:50%;
	transform:translateX(-50%);
}
#sec_02 .contents {
	text-align:center;
}
#sec_02 h2 {
	font-size:3.6rem;
	line-height:1.3;
	margin-bottom:.75em;
	color:#1a222a;
}
#sec_02 h2 span {
	margin:0 .33em;
}
#sec_02 h2::before,
#sec_02 h2::after {
	content:'';
	width: 3em;
	height: 3.5em;
	background:url(../img/top/sec02_img1.png) no-repeat center center/contain;
}
#sec_02 h2::after {
	background:url(../img/top/sec02_img2.png) no-repeat center center/contain;
}
#sec_02 .list {
	text-align:left;
	max-width:820px;
	margin:0 auto;
}
#sec_02 .list li {
	font-size:2.4rem;
	line-height:1.3;
	padding:.5em;
	border-bottom:1px dashed #bfd7ea;
	letter-spacing:.05em;
	text-indent:-1.65em;
	padding-left:1.9em;
}
#sec_02 .list li::before {
	content:'';
	width:1.2em;
	height:1.2em;
	display:inline-block;
	background:url(../img/common/check.png) no-repeat center center/contain;
	margin-right:.5em;
	transform:translateY(.15em);
}

/**sec_03**/
#sec_03 .wrap {
	padding:90px 0 60px;
}
#sec_03 h2 {
	font-size:4.0rem;
	text-align:center;
	line-height:1.4;
	margin-bottom:1em;
	color:#1a222a;
}
#sec_03 h2 > span {
	font-size:3.0rem;
	display:block;
}
#sec_03 .contents {
	text-align:center;
}
#sec_03 .contents_inner {
	max-width:870px;
	text-align:left;
	margin-bottom:90px;
}
#sec_03 .contents_inner .detail {
	width:65%;
}
#sec_03 .contents_inner .detail h3 {
	font-size:2.2rem;
	margin-bottom:1.5em;
	letter-spacing:.05em;
}
#sec_03 .contents_inner .detail h3 img {
	display:block;
	width:20em;
	margin-bottom:.5em;
}
#sec_03 .contents_inner .detail p strong {
	background:none;
}
#sec_03 .contents_inner .detail p:not(:last-child) {
	margin-bottom:1em;
}
#sec_03 .contents_inner .img {
	width:23%;
	margin-bottom:20px;
}
#sec_03 .exwrap {
	position:relative;
    margin-bottom: 20px;
}
#sec_03 .exwrap .bg {
	display:block;
}
#sec_03 .exwrap img:not(.bg) {
	position:absolute;
	transition-duration:.2s;
	opacity:0;
}
#sec_03 .exwrap.anim-on img:not(.bg) {
	transition-duration:.66s;
}
#sec_03 .exwrap.anim-on img:not(.bg) {
	opacity:1;
	transform:translateX(0);
}
#sec_03 .exwrap .anim-r {
	transform:translateX(30px);
}
#sec_03 .exwrap .anim-l {
	transform:translateX(-30px);
}
#sec_03 .exwrap .spobj {
	width: 29%;
	left: 1%;
}
#sec_03 .exwrap.anim-on .dl1 {
	transition-delay:.5s;
}
#sec_03 .exwrap.anim-on .dl2 {
	transition-delay:1s;
}
#sec_03 .exwrap.anim-on .dl3 {
	transition-delay:1.5s;
}
#sec_03 .exwrap .sp1 {
	top:9%
}
#sec_03 .exwrap .sp2 {
	top: 26%;
}
#sec_03 .exwrap .sp3 {
	top: 67%;
}
#sec_03 .exwrap .sp4 {
	top: 81%;
}
#sec_03 .exwrap .tbobj {
	width: 22%;
	left: 51%;
}
#sec_03 .exwrap .tb1 {
	top:61%;
}
#sec_03 .exwrap .tb2 {
	top: 66%;
}
#sec_03 .exwrap .tb3 {
	top: 70.5%;
}
#sec_03 .exwrap .tb4 {
	top: 78%;
}

/**sec_04**/
#sec_04 .wrap {
	background-color:#fff9e4;
	padding:80px 0;
	position:relative;
	z-index:1;
}
#sec_04 h2 {
	text-align:center;
	font-size:2.6rem;
	margin-bottom:2em;
	color:#1a222a;
}
#sec_04 h2 > span {
	display:block;
	font-size:4.0rem;
	max-width:7.0em;
	margin:0 auto;
	color: transparent;
	background: linear-gradient(90deg, rgba(255,156,0,1) 0%, rgba(252,110,0,1) 100%);
	-webkit-background-clip: text;
}
#sec_04 h2 > span span {
	font-family: 'Manrope', sans-serif;
	font-size:8.0rem;
}
#sec_04 .point {
	max-width:calc(100% - 15px);
	background-color:#FFFFFF;
	border-radius:20px;
	position:relative;
	padding:30px 50px 40px;
}
#sec_04 .point::after {
	content:'';
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:15px;
	left:15px;
	background: repeating-linear-gradient(-40deg, #ffedbc 0px, #ffedbc 3px, transparent 3px, transparent 6px);
	border-radius:20px;
	z-index:-1;
}
#sec_04 .point:not(:last-child) {
	margin-bottom:50px;
}
#sec_04 .point h3 {
	font-size:3.2rem;
	position:relative;
	width:100%;
	margin-bottom:1.33em;
	color:#1a222a;
}
#sec_04 .point h3 .num {
	font-size:7.0rem;
	left:0;
	bottom:0;
	font-family: 'Manrope', sans-serif;
	letter-spacing:normal;
	color: transparent;
	background: linear-gradient(90deg, rgba(255,156,0,1) 0%, rgba(252,110,0,1) 100%);
	-webkit-background-clip: text;
	margin-bottom:-.15em;
}
#sec_04 .point h3 .num span {
	font-size:2.0rem;
	display:block;
	font-family: 'Manrope', sans-serif;
	letter-spacing:normal;
	color:#ff8003;
	margin-bottom:-.3em;
	margin-left:.2em;
}
#sec_04 .point h3 .tit {
	width:calc(100% - 90px);
	background:url(../img/common/marker_bg.png) repeat-x left bottom/5px auto;
	padding:0 .33em 8px;
}
#sec_04 .point .detail {
	width:calc(50% - 40px);
}
#sec_04 .point .img {
	width: 49%;
}
#sec_04 .point.point2 .btn {
	padding:0 1.5em;
	margin-top:1em;
}
#sec_04 .point.point3 h3 + .fbox {
	margin-bottom:40px;
}
#sec_04 .point.point3 h4 {
	font-size:2.2rem;
	color:#1a222a;
	border-bottom:1px solid #000000;
	padding-bottom:.4em;
	padding-left:.5em;
	margin-bottom:1.25em;
}
#sec_04 .point.point3 h4 span {
	display:block;
	line-height:1.3;
	border-left:6px solid #ff8003;
	padding-left:.75em;
}
#sec_04 .point.point4 .detail .img {
	width:90%;
	margin-top:30px;
}
#sec_04 .point.point4 .simulation {
	width:50%;
}
#sec_04 .point.point4 .simulation h4 {
	font-size:1.8rem;
	line-height:1.3;
	margin-bottom:.25em;
}
#sec_04 .point.point4 .simulation h4::before {
	content:'';
	width: 5em;
	height: 4em;
	background:url(../img/top/sec04_img6.png) no-repeat center center/contain;
	transform:translateY(-.5em);
}
#sec_04 .point.point4 .simbox {
	background-color:#fff9e4;
	border-radius:15px;
	padding:20px;
	font-size:1.6rem;
	text-align:center;
	margin-bottom:10px;
}
#sec_04 .point.point4 .simbox dl {
	width:100%;
	text-align:left;
}
#sec_04 .point.point4 .simbox dt {
	width:155px;
}
#sec_04 .point.point4 .simbox dd {
	width:calc(100% - 155px);
}
#sec_04 .point.point4 .simbox dd:not(:last-child) {
	margin-bottom:6px;
}
#sec_04 .point.point4 .simbox dd input {
	padding:.5em 2em;
	width:calc(100% - 2.5em);
	border:1px solid #999999;
	border-radius:3px;
	text-align:right;
	font-size:1.8rem;
	font-family: 'Manrope', sans-serif;
}
#sec_04 .point.point4 .simbox dd span {
	width:2em;
	color:#2d2d2d;
}
#sec_04 .point.point4 .simbox .btn {
	width:12em;
	height:2.5em;
	margin:1em 0;
}
#sec_04 .point.point4 .simbox .results dt {
	color:#ff8003;
	font-weight:600;
	font-size:1.8rem;
	line-height:1.3;
}
#sec_04 .point.point4 .simbox .results dd #results {
	color:#ff8003;
	font-weight:600;
	font-size:1.8rem;
	background-color:#ffedbc;
	border:1px solid #999999;
	min-height:2.4em;
	width:calc(100% - 2.5em);
	border-radius:3px;
	padding:.5em 2em;
	font-family: 'Manrope', sans-serif;
	text-align:right;
}
#sec_04 .point.point4 .simbox .results dd #results span {
	width:100%;
	color:inherit;
	font-size:2.1rem
}
#sec_04 .point.point4 .simulation .att {
	font-size:1.4rem;
	line-height:1.4;
}
#sec_04 .point.point5 h3 .tit span {
	font-size:2.2rem;
	display:block;
	margin-bottom:.5em;
}
#sec_04 .point.point5 .btn {
	height:3.4em;
	width:20em;
	margin-top:1.5em;
}
#sec_04 .point.point5 .btn span span {
	color:#000000;
	display:block;
	font-size:.77em;
	margin:0 0 .25em;
}
body .fancybox-opened .fancybox-skin {
    box-shadow: none;
	background-color:#FFFFFF;
}
body .fancybox-close {
    top: -23px;
    right: -23px;
    width: 46px;
    height: 46px;
	background:url(../img/common/modal_close.png) no-repeat center center/contain;
}

/**sec_05**/
#sec_05 .wrap {
	padding:70px 0 60px;
}
#sec_05 .contents_inner {
	padding:60px 50px 80px;
	background-color:#fff2c6;
	border-radius:30px;
	margin-bottom: 80px;
}
#sec_05 .contents_inner h3 {
	font-size:2.6rem;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,'Hiragino Kaku Gothic Pro',Osaka, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
	background-color:#ffd477;
	padding:.66em 1.25em .66em 2.2em;
	border-radius:.66em;
	position:relative;
	margin-bottom:1em;
}
#sec_05 .contents_inner h3::before {
	content:'';
	width:5px;
	display:inline-block;
	height:1.2em;
	background-color:#ff8003;
	position:absolute;
	left:1.4em;
	top:calc(50% + .05em);
	transform:translateY(-50%);
}
#sec_05 .contents_inner .timeline {
	margin-bottom:40px;
}
#sec_05 .contents_inner .benefits {
	width:100%;
	border:3px solid #ff8003;
	background-color:#FFFFFF;
	padding:15px;
	font-size:1.8rem;
	margin-bottom:30px;
}
#sec_05 .contents_inner .benefits dt {
    width: 125px;
    font-weight:600;
    background: url(../img/common/icon_check.png) no-repeat left center/contain;
    padding: .25em 0 .25em 1.8em;
}
#sec_05 .contents_inner .benefits dd {
	width:calc(100% - 125px);
	padding-left:1em;
	border-left:1px solid #000000;
}
#sec_05 .contents_inner .benefits dd p {
	font-size:1.8rem;
}
#sec_05 .contents_inner .benefits dd p span {
	color:#ff8003;
	font-weight: 600;
}
#sec_05 .contents_inner .case {
	width:100%;
}
#sec_05 .contents_inner .casewrap:not(:last-child) {
	margin-bottom:80px;
}
@media screen and (min-width:769px) {
    #sec_05 .contents_inner .casewrap {
    	display:block!important;
    }
}
#sec_05 .contents_inner .case dt {
	width:60px;
	text-align:center;
}
#sec_05 .contents_inner .case dt span {
	font-size:1.3rem;
}
#sec_05 .contents_inner .case dd {
	width:calc(100% - 90px);
	background-color:#FFFFFF;
	padding:20px 30px;
	border-radius:15px;
	position:relative;
	font-size:1.6rem;
	line-height:1.7;
	font-weight:400;
}
#sec_05 .contents_inner .case dd::before {
	content:'';
	display:block;
	border-top: 8px solid transparent;
	border-right: 14px solid #ffffff;
	border-bottom: 8px solid transparent;
	position:absolute;
	top:20px;
	left:-13px;
}
#sec_05 .contents_inner .case dd:not(:last-child) {
	margin-bottom:15px;
}

/**sec_06**/
#sec_06 .wrap {
	padding:70px 0 100px;
	background-color:#fff9e4;
}
#sec_06 .contents {
	max-width:1200px;
	text-align: center;
}
#sec_06 .teacher {
	width:100%;
}
#sec_06 .teacher li {
	width:calc(25% - 15px);
	background-color:#FFFFFF;
	border-radius:15px;
	padding:20px;
	margin-bottom:25px;
}
#sec_06 .teacher li:not(:nth-child(4n)) {
	margin-right:20px;
}
#sec_06 .teacher li:last-child {
	margin-right:auto;
}
#sec_06 .teacher li p {
	font-size:1.5rem;
	background-color:#ffeeb9;
	padding:.5em 1em;
	line-height:1.5;
	border-radius:12px;
	min-height:5.75em;
	position:relative;
	margin-bottom:30px;
	text-align:left;
}
#sec_06 .teacher li p::before {
	content:'';
	display:block;
	border-left: 12px solid transparent;
	border-top: 12px solid #ffeeb9;
	border-right: 12px solid transparent;
	position:absolute;
	bottom:-11px;
	left:calc(50% - 12px);
}
#sec_06 .teacher li .img {
	width:56%;
	margin:0 auto 20px;
	border-radius:50%;
/* 	padding:2px;
	background: rgb(255,110,0);
	background: linear-gradient(90deg, rgba(255,110,0,1) 0%, rgba(252,156,0,1) 100%); */
}
#sec_06 .teacher li .img img {
	display:block;
}
#sec_06 .teacher li h3 {
	font-size:2.2rem;
	line-height:1.5;
	margin-bottom:.75em;    
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,'Hiragino Kaku Gothic Pro',Osaka, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
}
#sec_06 .teacher li h3 span {
	font-size:.73em;
	display:block;
	color:#ff8003;
	font-weight:600;
}
#sec_06 .teacher li dl {
	font-size:1.5rem;
}
#sec_06 .teacher li dt {
	font-weight:500;
	margin-bottom:.5em;
}
#sec_06 .teacher li dd {
	line-height:1.4;
}
#sec_06 .btn_teacher {
	width:20em;
	margin:25px 0 60px;
}
#sec_06 .contents_inner {
	background-color:#ffeeb9;
	border-radius:20px;
	padding:55px 65px 70px;
}
#sec_06 .contents_inner h3 {
	font-size:2.6rem;
	border:2px solid #000000;
	width:17em;
	height:2.8em;
	border-radius:2em;
	position:relative;
	margin-bottom:2em;
}
#sec_06 .contents_inner h3 > span {
	margin-left:4em;
}
#sec_06 .contents_inner h3::before {
	content:'';
	width: 4.5em;
	height: 4em;
	background:url(../img/top/sec06_img9.png) no-repeat center center/contain;
	position:absolute;
	left:1.5em;
	bottom:.5em;
}
#sec_06 .contents_inner:last-child h3::before {
	background:url(../img/top/sec06_img14.png) no-repeat center center/contain;
	left:1.75em;
	bottom:.15em;
}
#sec_06 .contents_inner:not(:last-child) {
	margin-bottom:30px;
}
#sec_06 .contents_inner .flow {
	width:100%;
	max-width:1000px;
}
#sec_06 .contents_inner .flow li {
	max-width:calc(25% - 30px);
	position:relative;
}
#sec_06 .contents_inner .flow li:not(:last-child)::before {
	content:'';
	display:block;
	width:24px;
	height:40px;
	background:url(../img/common/arrow_r.png) no-repeat center center/contain;
	position:absolute;
	right:-32px;
	top:27%;
}
#sec_06 .contents_inner .flow li img {
	display:block;
	width:94%;
	margin:0 auto 20px;
}
#sec_06 .contents_inner .flow li p {
	font-size:1.5rem;
	line-height:1.5;
	text-align:left;
	font-weight:400;
}
#sec_06 .contents_inner .recruit {
	width:100%;
	text-align:left;
}
#sec_06 .contents_inner .recruit li {
	width:calc(50% - 5px);
	background-color:#FFFFFF;
	border:1px solid #ff9b38;
	border-radius:6px;
	font-size:1.8rem;
	line-height:1.4;
	padding:.5em .5em .5em 2.5em;
	padding:.475em .5em .525em 2.5em;
	margin-bottom:5px;
	position:relative;
}
#sec_06 .contents_inner .recruit li span {
	position:relative;
}
#sec_06 .contents_inner .recruit li span::before {
    content: '';
    width: 1.0em;
    height: 1.0em;
    display: inline-block;
    background: url(../img/common/check2.png) no-repeat center center/contain;
	position:absolute;
	left:-1.5em;
	top:.25em;
}

/**sec_07**/
#sec_07 .wrap {
	padding:80px 0 70px;
}
#sec_07 .contents_inner .ex {
	width:calc(50% - 20px);
	border-radius:20px;
	overflow:hidden;
	background-color:#ffeeb9;
	margin-bottom:35px;
	text-align:left;
}
#sec_07 .contents_inner .ex > dt {
	font-size:2.0rem;
	background-color:#ffb23a;
	text-align:center;
	font-weight:600;
	padding:.75em;
}
#sec_07 .contents_inner .ex > dd {
	padding:20px 30px 30px;
	background-color:#ffeeb9;
}
@media screen and (min-width:769px) {
    #sec_07 .contents_inner .ex > dd {
    	display:block!important;
    }
}
#sec_07 .contents_inner .ex .qbox {
	border:2px solid #ff9b00;
	background-color:#FFFFFF;
	border-radius:12px;
	padding:15px;
	margin-bottom:20px;
}
#sec_07 .contents_inner .ex .qbox p {
	line-height:1.5;
}
#sec_07 .contents_inner .ex .qbox p sub {
	font-size:.5em;
}
#sec_07 .contents_inner .ex .qbox p:not(:last-child) {
	margin-bottom:.5em;
}
#sec_07 .contents_inner .ex .modal {
	display:block;
	border:2px solid #cbcbcb;
	background-color:#FFFFFF;
	padding:20px 15px 50px;
	position:relative;
	margin-bottom:20px;
}
#sec_07 .contents_inner .ex .modal img {
	transition:.3s;
}
#sec_07 .contents_inner .ex .modal:hover img {
	opacity:.75;
}
#sec_07 .contents_inner .ex1 .modal {
	padding-bottom:300px;
}
#sec_07 .contents_inner .ex3 .modal {
	padding-bottom:150px;
}
#sec_07 .contents_inner .ex .modal::before {
	content:'';
	display:block;
	width:26px;
	height:26px;
	background:url(../img/common/zoom.png) no-repeat center center/contain;
	position:absolute;
	right:10px;
	bottom:10px;
	transition:.3s;
}
#sec_07 .contents_inner .ex .modal:hover::before {
	transform:scale(1.2);
}
#sec_07 .contents_inner .ex .voice {
	border:2px solid #ffce00;
	background-color:#fff9e4;
	border-radius:12px;
	padding:15px 20px 20px;
}
#sec_07 .contents_inner .ex .voice dt img {
	width:40px;
}
#sec_07 .contents_inner .ex .voice dt span {
	font-size:1.6rem;
	font-weight:600;
	margin-left:.75em;
}
#sec_07 .contents_inner .ex .voice dd {
	font-size:1.5rem;
	line-height:1.5;
	padding:.25em 0 .33em;
	font-weight:400;
	color:#1a222a;
}
#sec_07 .contents_inner .btn.online {
	margin:0 auto;
	background:none;
	height:auto;
	padding:0;
	font-size:2.4rem;
	margin-bottom:90px;
}
#sec_07 .contents_inner .btn.online span {
	color:#000000;
	border-bottom:1px solid #000000;
	padding-bottom:.1em;
	font-weight:500;
}
#sec_07 .contents_inner .btn.online::before {
	content:'';
	width:1.7em;
	height:1.7em;
	background:url(../img/common/icon_instag.png) no-repeat center center/contain;
	margin-right:.75em;
}

/**sec_08**/
#sec_08 .wrap {
	padding:70px 0 90px;
	background-color:#fff9e4;
}
#sec_08 .contents {
	max-width:720px;
}
#sec_08 .contents h2 {
	margin-bottom:3.5em;
}
#sec_08 .flow {
	width:100%;
}
#sec_08 .flow .step {
	width:100%;
	position:relative;
}
#sec_08 .flow .step:not(:last-child)::before {
	content:'';
	display:block;
	width:3px;
	height:100%;
	background-color:#000000;
	position:absolute;
	left:calc(120px + 48px);
	top:10px;
	z-index:0;
}
#sec_08 .flow .step img {
	width:120px;
	transform:translateY(-15px);
}
#sec_08 .flow .step span {
	width:60px;
	height:60px;
	font-family: 'Manrope', sans-serif;
	font-size:3.2rem;
	font-weight:600;
	color:#ff8003;
	background-color:#FFFFFF;
	border:3px solid #000000;
	text-align:center;
	line-height:54px;
	border-radius:50%;
	marign:0 20px;
	position:relative;
}
#sec_08 .flow .step dl {
	width:calc(100% - 220px);
	letter-spacing:.05em;
}
#sec_08 .flow .step dt {
	font-size:2.2rem;
	color:#ff8003;
	margin-bottom:.5em;
	font-weight:600;
}
#sec_08 .flow .step dd {
	font-size:1.6rem;
	line-height:1.5;
	margin-bottom:50px;
}
#sec_08 .flow .step:last-child dd {
	margin-bottom:0;
}

/**sec_09**/
#sec_09 .wrap {
	padding:80px 0 70px;
}

/**sec_10**/
#sec_10 .wrap {
	padding:80px 0 90px;
	background-color:#fff9e4;
}
#sec_10 dl {
	width:100%;
}
#sec_10 dt {
	cursor:pointer;
	border:2px solid #000000;
	background-color:#FFFFFF;
	font-size:2.2rem;
	color:#ff8003;
	line-height:1.4;
	font-weight:600;
	padding:.75em 3.5em;
	position:relative;
	border-radius:.75em;
	margin-bottom:20px;
}
#sec_10 dt::before {
	content:'Q';
	font-family: 'Manrope', sans-serif;
	font-size:3.0rem;
	font-weight:600;
	color:#000000;
	position:absolute;
	line-height:1;
	left:1.25em;
	top:.6em;
}
#sec_10 dt::after {
	content:'';
	display:block;
	width:20px;
	height:20px;
	background:url(../img/common/arrow_orange.png) no-repeat center center/contain;
	position:absolute;
	right:1.5em;
	top:1em;
	transform:rotate(180deg);
	transition:.3s;
}
#sec_10 dt.open::after {
	transform:rotate(0deg);
}
#sec_10 dd {
	font-size:1.6rem;
	line-height:1.5;
	font-weight: 400;
	padding:0 5em 2em;
	position:relative;
	border-radius:.75em;
}
#sec_10 dd {
	display:none;
}
#sec_10 dd a {
	text-decoration:underline;
	color:#ff8003;
}
#sec_10 dd::before {
	content:'A';
	font-family: 'Manrope', sans-serif;
	font-size:3.0rem;
	font-weight:600;
	position:absolute;
	color:#ff8003;
	line-height:1;
	left:1.4em;
	top:-.1em;
}


@media screen and (max-width:1260px){

#fv .contents {
    height: 56vw;
}
#fv .contents h1 {
    padding-top: 5vw;
}

}
@media screen and (max-width:1024px){

/*==============================
        content
==============================*/

.btn {
	font-size:1.6rem;
}
.cta .btnwrap a {
	font-size:1.8rem;
}


/**sec04**/
#sec_04 .point .detail {
    width: calc(50% - 20px);
}
#sec_04 .point h3 {
	font-size:2.8rem;
}
#sec_04 .point.point5 h3 .tit span {
    font-size: 2.0rem;
}

#sec_06 .contents_inner .recruit li {
font-size: 1.6rem;
}
   
#sec_07 .contents_inner .ex {
	width:calc(50% - 10px);
}
	
}


@media screen and (max-width:900px) and (min-width:769px) {
	
#sec_04 .point.point4 .simbox dt {
	width: 130px;
	font-size:1.4rem;
}
#sec_04 .point.point4 .simbox dd {
	width:calc(100% - 138px);
	font-size:1.4rem;
}
#sec_04 .point.point4 .simbox dd input {
	width:calc(100% - 2.0em);
    padding: 0.5em 1em;
}
#sec_04 .point.point4 .simbox dd span {
	font-size:1.4rem;
}
#sec_04 .point.point4 .simbox .results dt {
	font-size:1.4rem;
}
#sec_04 .point.point4 .simbox .results dt {
	width:110px;
}
#sec_04 .point.point4 .simbox .results dd {
	width:calc(100% - 110px);
	font-size:1.4rem;
}
#sec_04 .point.point4 .simbox .results dd span {
	width:1em;
}
#sec_04 .point.point4 .simbox .results dd #results {
    font-size: 1.6rem;
    width: calc(100% - 1.5em);
    padding: 0.5em 1em;
}

}

@media screen and (max-width:768px){
	
/*==============================
        content
==============================*/

.contents h2.gtit {
	font-size:4vw;
	margin-bottom:1.5em;
}
.contents h2.gtit .en {
	font-size:11vw;
}
p {
	font-size:3.5vw;
}
strong {
    font-weight: 600;
    background: linear-gradient(transparent 70%, #ffdd5a 70%);
}
.cta h3 {
	font-size:4vw;
	margin-bottom:.75em;
}
.cta h3 span {
	margin:0 .75em;
}
.cta .btnwrap a {
	font-size:4.4vw;
	width:100%;
}
.cta .btnwrap a:first-child {
	margin-bottom:3vw;
}

/*==============================
        header
==============================*/


/* =================================================================
        section
================================================================= */

/**FV**/
/* #fv .wrap {
	background:url(../img/top/sp/fv_bg.jpg) no-repeat center top/100% auto #fffcee;
}
#fv .contents {
	height:auto;
	width:100%;
}
#fv .contents h1 {
	width:100%;
	padding: 10vw 0;
} */

/**sec_01**/

#sec_01 .wrap {
	padding:6vw 0 10vw;
}
#sec_01 .contents {
	width:calc(100% - 10px);
}
#sec_01 h2 {
	font-size:4.4vw;
}
#sec_01 .btn {
	min-width:240px;
}
#sec_01 .contents_inner {
	margin:0;
	/* 	padding:5vw 0 7vw; */
	padding: 1vw 0 1vw;
}
#sec_01 .gs_logo_single {
	padding:10px 5px;
}


/**sec_02**/
#sec_02 .wrap {
	padding:6vw 0 10vw;
}
#sec_02 .wrap::before {
	width:8vw;
	height:10vw;
	bottom:-8vw;
}
#sec_02 h2 {
	font-size:4.6vw;
}
#sec_02 h2 span {
	margin:0 .25em;
}
#sec_02 .list li {
	font-size:4vw;
	padding:.66em .5em;
	border-bottom:2px dotted #bfd7ea;
	padding-left:1.9em;
}
#sec_02 .list li::before {
	content:'';
	width:1.2em;
	height:1.2em;
	display:inline-block;
	background:url(../img/common/check.png) no-repeat center center/contain;
	margin-right:.5em;
	transform:translateY(.15em);
}

/**sec_03**/
#sec_03 .wrap {
	padding:12vw 0 10vw;
}
#sec_03 h2 {
	font-size:5.4vw;
	line-height:1.5;
}
#sec_03 h2 > span {
	font-size:4.3vw;
	display:block;
}
#sec_03 .contents_inner {
	max-width:92%;
	margin-bottom:12vw;
	position:relative;
}
#sec_03 .contents_inner .detail {
	width:100%;
}
#sec_03 .contents_inner .detail h3 {
	font-size:4.3vw;
	margin-bottom:1em;
}
#sec_03 .contents_inner .detail h3 img {
	width:16em;
}
#sec_03 .contents_inner .detail p:last-child {
	width:calc(100% - 34vw);
}
#sec_03 .contents_inner .img {
	width:30vw;
	margin-bottom:0;
	position:absolute;
	right:0;
	bottom:0;
}
#sec_03 .exwrap {
    margin-bottom: 5vw;
}

/**sec_04**/
#sec_04 .wrap {
	padding:10vw 0;
}
#sec_04 h2 {
	font-size:4.4vw;
	margin-bottom:1em;
}
#sec_04 h2 > span {
	font-size:6vw;
}
#sec_04 h2 > span span {
	font-size:12vw;
}
#sec_04 .point {
	max-width:calc(100% - 0px);
	border-radius:3vw;
	padding:5vw 4.55vw 7.5vw;
}
#sec_04 .point::after {
	top:10px;
	left:10px;
	background: repeating-linear-gradient(-40deg, #ffedbc 0px, #ffedbc 2px, transparent 2px, transparent 4px);
	border-radius:3vw;
	z-index:-1;
}
#sec_04 .point:not(:last-child) {
	margin-bottom:8vw;
}
#sec_04 .point h3 {
	font-size:4.6vw;
}
#sec_04 .point h3 .num {
	font-size:12vw;
    margin-bottom: -0.1em;
}
#sec_04 .point h3 .num span {
	font-size:3.8vw;
	margin-bottom:-.25em;
}
#sec_04 .point h3 .tit {
	width:calc(100% - 16vw);
	background:url(../img/common/marker_bg.png) repeat-x left bottom/.2em auto;
	padding:0 .33em .3em;
	line-height:1.2;
}
#sec_04 .point .detail {
	width:100%;
}
#sec_04 .point .img {
	width:100%;
}
#sec_04 .point1 .img,
#sec_04 .point2 .img,
#sec_04 .point5 .img {
	-webkit-box-ordinal-group: 1;
	-ms-flex-order: -1;
	order: -1;
	margin-bottom:5vw
}
#sec_04 .point.point2 .detail {
	text-align:center;
}
#sec_04 .point.point2 .detail p {
	text-align:left;
}
#sec_04 .point.point3 h3 + .fbox {
	margin-bottom:8vw;
}
#sec_04 .point.point3 h4 {
	font-size:4vw;
}
#sec_04 .point.point3 h4 span {
	border-left:1.2vw solid #ff8003;
	padding-left:.5em;
}
#sec_04 .point.point3 .detail {
	margin-bottom:4vw;
}
#sec_04 .point.point4 .detail .img {
	width:90%;
	margin:5vw auto 5vw;
}
#sec_04 .point.point4 .simulation {
	width:100%;
}
#sec_04 .point.point4 .simulation h4 {
	font-size:3.5vw;
}
#sec_04 .point.point4 .simulation h4::before {
	content:'';
	width: 4.5em;
	height: 3.5em;
}
#sec_04 .point.point4 .simbox {
	border-radius:3vw;
	padding:5vw 3vw;
	font-size:3.4vw;
	margin-bottom:2vw;
}
#sec_04 .point.point4 .simbox dt {
	width:45%;
}
#sec_04 .point.point4 .simbox dd {
	width:55%;
}
#sec_04 .point.point4 .simbox dd:not(:last-child) {
	margin-bottom:1.5vw;
}
#sec_04 .point.point4 .simbox dd input {
	width:calc(100% - 2.2em);
	font-size:3.6vw;
	padding: .5em 1em;
}
#sec_04 .point.point4 .simbox .results dt {
	font-size:3.6vw;
}
#sec_04 .point.point4 .simbox .results dd #results {
	font-size:3.6vw;
	min-height:2.4em;
	width:calc(100% - 2.2em);
	padding: .5em 1em;
}
#sec_04 .point.point4 .simbox .results dd #results span {
	font-size:4vw;
}
#sec_04 .point.point4 .simulation .att {
	font-size:3.2vw;
}
#sec_04 .point.point5 h3 .tit span {
	font-size:4vw;
	line-height:1.2;
	margin-bottom:0;
}
#sec_04 .point.point5 .detail {
	text-align:center;
}
#sec_04 .point.point5 .detail p {
	text-align:left;
}
#sec_04 .point.point5 .btn {
	height:3.8em;
	width:19em;
}
#sec_04 .point.point5 .btn span span {
	margin:0 0 .5em;
}
body .fancybox-opened .fancybox-skin {
    box-shadow: none;
	background-color:#FFFFFF;
}
body .fancybox-close {
    top: -23px;
    right: -23px;
    width: 46px;
    height: 46px;
	background:url(../img/common/modal_close.png) no-repeat center center/contain;
}

/**sec_05**/
#sec_05 .wrap {
	padding:8vw 0;
}
#sec_05 .contents_inner {
	padding:5vw 5vw 7vw;
	border-radius:3vw;
	margin-bottom: 10vw;
}
#sec_05 .contents_inner h3 {
	font-size:4vw;
	padding: .75em 1.5em .75em 1.5em;
	border-radius:1.5vw;
	margin-bottom:0;
	position:relative;
	cursor:pointer;
}
#sec_05 .contents_inner h3:not(:first-child) {
	margin-top:4vw;
}
#sec_05 .contents_inner .casewrap {
	padding-top:3vw;
}
	#sec_05 .contents_inner .casewrap:not(:nth-child(2)){
		display:none;
	}
#sec_05 .contents_inner .casewrap:not(:last-child) {
	margin-bottom:0;
}
#sec_05 .contents_inner h3::after {
	content:'';
	display:block;
	width:.9em;
	height:.9em;
	background:url(../img/common/arrow_orange.png) no-repeat center center/cover;
	position:absolute;
	right:1em;
	top:calc(50% - .45em);
	transition:.3s;
	transform:rotate(180deg);
}
#sec_05 .contents_inner h3.open::after {
	transform:rotate(0deg);
}
#sec_05 .contents_inner h3::before {
	width:1vw;
	left:.75em;
}
#sec_05 .contents_inner .timeline {
	margin-bottom:3vw;
}
#sec_05 .contents_inner .benefits {
	padding:3vw;
	font-size:3.8vw;
	margin-bottom:5vw;
}
#sec_05 .contents_inner .benefits dt {
	width:100%;
	padding:.25em 0 .25em 1.8em;
	margin-bottom:.5em
}
#sec_05 .contents_inner .benefits dd {
	width:100%;
	padding-left:1em;
	border-left:none;
	border-top:1px solid #000000;
	padding:.5em 0 0;
}
#sec_05 .contents_inner .benefits dd p {
	font-size:3.5vw;
	letter-spacing:normal;
}
#sec_05 .contents_inner .benefits dd p span {
	color:#ff8003;
}
#sec_05 .contents_inner .case {
	width:100%;
}
#sec_05 .contents_inner .case dt {
	width:14vw;
}
#sec_05 .contents_inner .case dt span {
	font-size:3.2vw;
}
#sec_05 .contents_inner .case dd {
	width:calc(100% - 18vw);
	padding:3vw 4vw;
	border-radius:2vw;
	font-size:3.4vw;
}
#sec_05 .contents_inner .case dd::before {
	border-top: 2vw solid transparent;
	border-right: 3vw solid #ffffff;
	border-bottom: 2vw solid transparent;
	top:4vw;
	left:-2.8vw;
}
#sec_05 .contents_inner .case dd:not(:last-child) {
	margin-bottom:3vw;
}

/**sec_06**/
#sec_06 .wrap {
	padding:10vw 0;
	overflow:hidden;
}
#sec_06 .teacher {
	position:relative;
}
#sec_06 .teacher .swiper-wrapper {
	align-items: stretch!important;
}
#sec_06 .teacher .swiper-slide {
	height: auto;
}
#sec_06 .teacher li {
	width:auto;
	border-radius:3vw;
	padding:3vw;
	margin-bottom:0;
}
#sec_06 .teacher li:not(:nth-child(4n)) {
	margin-right:0;
}
#sec_06 .teacher li:last-child {
	margin-right:0;
}
#sec_06 .teacher li p {
	font-size:3.2vw;
	padding:.75em;
	line-height:1.3;
	border-radius:2vw;
	margin-bottom:4vw;
}
#sec_06 .teacher li p::before {
	border-left: 2.4vw solid transparent;
	border-top: 2.4vw solid #ffeeb9;
	border-right: 2.4vw solid transparent;
	position:absolute;
	bottom:-2.2vw;
	left:calc(50% - 2.4vw);
}
#sec_06 .teacher li .img {
	width:70%;
	margin:0 auto 1vw;
}
#sec_06 .teacher li h3 {
	font-size:4vw;
	margin-bottom:.5em;
}
#sec_06 .teacher li dl {
	font-size:3.4vw;
}
#sec_06 .teacher li dt {
	margin-bottom:.25em;
}
#sec_06 .teacher li dd {
	line-height:1.3;
	font-size:3.2vw;
}
#sec_06 .btn_teacher {
	width:18em;
	margin:6vw 0 10vw;
}
#sec_06 .swiper-button-next::after,
#sec_06 .swiper-button-prev::after {
	content:none;
}
#sec_06 .swiper-button-next {
	background:url(../img/top/sp/next.png) no-repeat center center/contain;
	width:8vw;
	height:8vw;
	right:-3vw;
}
#sec_06 .swiper-button-prev {
	background:url(../img/top/sp/prev.png) no-repeat center center/contain;
	width:8vw;
	height:8vw;
	left:-3vw;
}
	
#sec_06 .contents_inner {
	border-radius:3vw;
	padding:10vw 5vw 5vw;
}
#sec_06 .contents_inner h3 {
	font-size:4.2vw;
	border:1px solid #000000;
	margin-bottom:1.5em;
}
#sec_06 .contents_inner:not(:last-child) {
	margin-bottom:4vw;
}
#sec_06 .contents_inner .flow li {
	max-width:100%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	align-content: center;
}
#sec_06 .contents_inner .flow li:not(:last-child) {
	margin-bottom:7vw;
}
#sec_06 .contents_inner .flow li:not(:last-child)::before {
	width:5vw;
	height:7vw;
	transform:rotate(90deg);
	right:calc(50% - 2.5vw);
	top:auto;
	bottom:-7vw;
}
#sec_06 .contents_inner .flow li img {
	width:44%;
	margin:0;
}
#sec_06 .contents_inner .flow li p {
	width:52%;
	font-size:3.4vw;
}
#sec_06 .contents_inner .recruit li {
	width:100%;
	border-radius:1vw;
	font-size:3.4vw;
	margin-bottom:1.5vw;
	padding: 0.45em 0.5em 0.55em 2.5em;
}
/**sec_07**/
#sec_07 .wrap {
	padding:10vw 0;
}
#sec_07 .contents_inner .ex {
	width:100%;
	border-radius:5vw;
	margin-bottom: 4vw;
}
#sec_07 .contents_inner .ex > dt {
	font-size:4vw;
	position:relative;
	padding:.8em 0;
}
#sec_07 .contents_inner .ex > dt::after {
	content:'';
	display:block;
	width:.9em;
	height:.9em;
	background:url(../img/common/arrow_white.png) no-repeat center center/cover;
	position:absolute;
	right:1.5em;
	top:calc(50% - .3em);
	transition:.3s;
	transform:rotate(180deg);
}
#sec_07 .contents_inner .ex > dt.open::after {
	transform:rotate(0deg);
}
#sec_07 .contents_inner .ex > dd {
	padding:4vw;
}
#sec_07 .contents_inner .ex:not(.ex1) > dd {
	display:none;
}
#sec_07 .contents_inner .ex .qbox {
	border-radius:2vw;
	padding:3vw;
	margin-bottom:3vw;
}
#sec_07 .contents_inner .ex .qbox p {
	line-height:1.3;
}
#sec_07 .contents_inner .ex .modal {
	display:block;
	border:2px solid #cbcbcb;
	background-color:#FFFFFF;
	padding:3vw 3vw 5vw;
	position:relative;
	margin-bottom:3vw;
	pointer-events:none;
}
#sec_07 .contents_inner .ex .modal img {
	transition:0s;
}
#sec_07 .contents_inner .ex .modal:hover img {
	opacity:1;
}
#sec_07 .contents_inner .ex1 .modal {
	padding-bottom:5vw;
}
#sec_07 .contents_inner .ex3 .modal {
	padding-bottom:5vw;
}
#sec_07 .contents_inner .ex .modal::before {
	content:none;
}
#sec_07 .contents_inner .ex .modal:hover::before {
	transform:scale(1);
}
#sec_07 .contents_inner .ex .voice {
	border-radius:2vw;
	padding:3vw 4vw;
}
#sec_07 .contents_inner .ex .voice dt img {
	width:12vw;
}
#sec_07 .contents_inner .ex .voice dt span {
	font-size:3.5vw;
}
#sec_07 .contents_inner .ex .voice dd {
	font-size:3.3vw;
	line-height:1.3;
	padding:.25em 0 .5em;
}
#sec_07 .contents_inner .btn.online {
	font-size:4.4vw;
	margin: 3vw auto 10vw;
}
#sec_07 .contents_inner .btn.online span {
	color:#000000;
	border-bottom:1px solid #000000;
	padding-bottom:.1em;
	font-weight:500;
}
#sec_07 .contents_inner .btn.online::before {
	content:'';
	width:1.7em;
	height:1.7em;
	background:url(../img/common/icon_instag.png) no-repeat center center/contain;
	margin-right:.75em;
}

/**sec_08**/
#sec_08 .wrap {
	padding:10vw 0;
}
#sec_08 .contents h2 {
	margin-bottom:2.5em;
}
#sec_08 .flow .step:not(:last-child)::before {
	width:2px;
	left:28.3vw;
	top:5vw;
}
#sec_08 .flow .step img {
	width:21vw;
	transform:translateY(-4vw);
}
#sec_08 .flow .step span {
	width:11vw;
	height:11vw;
	font-size:6vw;
	border:2px solid #000000;
	line-height:10vw;
	marign:0 1.5vw;
}
#sec_08 .flow .step dl {
	width:calc(100% - 36vw);
}
#sec_08 .flow .step dt {
	font-size:4vw;
}
#sec_08 .flow .step dd {
	font-size:3.4vw;
	margin-bottom:10vw;
}

/**sec_09**/
#sec_09 .wrap {
	padding:10vw 0;
}

/**sec_10**/
#sec_10 .wrap {
	padding:10vw 0;
}
#sec_10 dt {
	border:1px solid #000000;
	font-size:3.8vw;
	margin-bottom: 3vw;
	padding: 0.75em 2.75em 0.85em;
	border-radius:2vw;
}
#sec_10 dt::before {
	font-size:5.4vw;
	left:.75em;
	top: .45em;
}
#sec_10 dt::after {
	width:4vw;
	height:4vw;
	right:1em;
}
#sec_10 dd {
	font-size:3.4vw;
	padding:0 1em 2em 3em;
	position:relative;
}
#sec_10 dd::before {
	font-size:5.4vw;
	left:.8em;
	top:-.1em;
}
	
}


@media screen and (max-width:480px){
	
/**FV**/
#fv .wrap {
	background:url(../img/top/sp/fv_bg.jpg) no-repeat center top/100% auto #fffcee;
}
#fv .contents {
	height:auto;
	width:100%;
}
#fv .contents h1 {
	width:100%;
	padding: 10vw 0;
}
#fv .contents .tablet {
	display:none;
}
	
}


@media screen and (max-width:380px){
}