@charset "UTF-8";
/* CSS Document */

/*カスタムプロパティ*/
:root{
	--color-text:#725000; 
	--color-main: #bee0e2;
	--color-base: #bee2d7;
	--color-accent-a:#f0ff84;
	--color-accent-b:#dc9b00;
	--color-icon:#339999;
	--color-pale-gray:rgba(240,240,240,0.95);
	--hvr-bg-color:rgba(240,240,240,0.95);
	--marker-accent:linear-gradient(transparent 60%, #ffffa5 60%);
}

/*Google Mapのレスポンシブ化*/
.google-map {
    position: relative;
    padding: 28%;
    height: 0;
    overflow: hidden;
    border: 1px solid var(--color-text);
	border-radius: 20px;
}
.google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}


/*YouTube動画のレスポンシブ化*/
.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;    /*9:16=x:100*/
    margin-bottom: 2rem;
}
.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

/*画像の設定*/
img{
	display: block;
	max-width: 100%;
	height: auto;
	padding-bottom: 0.5rem;
	margin: auto;
}

#header-logo img{
	padding: 1rem 0;
	max-width: 11rem;
}

/*リンク周りの設定*/
.hvr-td-none a,
.hvr-td-underline a {
	text-decoration: none;
}
.hvr-td-underline a:hover {
	text-decoration: underline;
	/*background: #9FC;*/
}
a.link-block {
    display: block;
}

dl.hvr-bg-color,
ul.hvr-bg-color li,
ol.hvr-bg-color li{
	transition: all .5s;
}
dl.hvr-bg-color:hover,
ul.hvr-bg-color li:hover,
ol.hvr-bg-color li:hover{
    background: var(--hvr-bg-color);
}

.viewall-button{
	padding-bottom: 4rem;
}

.viewall-button a{
	display: block;
    text-align: center;
	font-size: 1.5rem;
    letter-spacing: 0.72px;
	line-height: 20px;	
	/* 
	margin: 0 auto 1rem;
	 */
	margin: 0 0 0 auto;
    margin-bottom: 1rem;
	background: var(--color-accent-a) 5px 5px;;
}
.viewall-button .flex-base{
	flex: 0 0 300px;
}

.bt-type-1 a{
	width: 300px;
    border: 2px solid #000;
}

.bt-type-2{
	display: block;
	font-size: 1.05rem;
    width: 200px;
    border: 1px solid var(--color-text);
    border-radius: 40px;
	padding: 2px 10px;
	padding: 1rem 0;

}
.bt-type-2:hover{
	color:var(--color-text);
	transform: translate(-5px,-5px);
	box-shadow: var(--color-accent-a) 5px 5px;
	transition: 0.2s;
}
.bt-type-3 a{
    width: 300px;
	background: #000;
	color: #fff;
	border-radius: 100px;
	padding: 15px 0;
	
}
.bt-type-3 i{
	padding-left: 0.5rem;
}


/*タイトル関連共通*/
#header-inner, .pagebody{
	font-family: zen-maru-gothic, sans-serif;
	font-weight: 400;
	font-style: normal;
}

h1,h2,h3,p,li,a,dl,dt,dd{
	color: var(--color-text);
}

h1,h2{
	font-size: 2rem;
	line-height: 3rem;
	padding: 3rem 0;
	margin: 0 0 3rem;
	letter-spacing: 0.2rem;
}

h3{
	margin: 0 0 1rem;
	letter-spacing: 0.075rem;
}

h3,li, a, p, dl, dt, dd{
	font-size: 1.2rem;
	line-height: 2rem;
	
}

time{
	font-size: 1rem;
	color: rgba(0,0,0,.5)
} 


/***余白の指定*/
section{
	margin-bottom: 3rem;
}

#header-logo {
margin-bottom: 0;
}

.gnav-items,.menu-item-type-custom {
	padding:0.6rem 2rem;
}
#alpha,
#beta{
	width: 100%;
	padding: 0 1rem;
}
.entry-box-two,
.entry-box-three,
.entry-box-four,
.entry-box-two-thirds,
.entry-box-three-quarters{
	margin-bottom: 1.5rem;
}
.entry-section{
	margin-bottom: 5rem;
}

.p-3 .entry-box-two,
.p-3 .entry-box-three,
.p-3 .entry-box-four,
.p-3 .entry-box-two-thirds,
.p-3 .entry-box-three-quarters{
	padding: 3rem 0;
}


/***専用クラス属性*/


/*テキストの揃え位置*/
.align-center{
	text-align: center;
}
.align-left{
	text-align: left
}
.align-right{
	text-align: right;
}


/*テキストの強調*/
.marker-accent {
	display: inline;
	background:var(--marker-accent);
}
.marker-accent+p{
	margin-top: 1rem;
}


/*flexboxの並べ方を交互にする*/
.row-reverse:nth-child(odd){
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
/*flexboxの並べ方を上下逆にする*/
.column-reverse{
	-webkit-flex-direction: column-reverse;
	flex-direction: column-reverse;
	justify-content: flex-end;
}

/*行頭文字を消す*/
.ls-none{
	/*remmet:lis:n*/
	list-style: none;
	margin: 0;
	padding: 0;
}


/*画像を丸く切り抜く*/
.br-50 img{
	border-radius: 50%;
}

.br-20px img{
	border-radius: 20px;
	border: var(--color-text) 1px solid;
}

/*背景色をずらす*/
.bg-color-shift{/*共通*/
	position: relative;
	z-index: 0;
}

.bg-color-shift-items-vertical::after{/*縦書き*/
	position: absolute;
    content: "";
    left: 3%;
	/*-----
    top: -7%;
	-----*/
    background-color: var(--color-accent-a);
    width: 100%;
    height: 100%;
    opacity: 0.5;
    z-index: -1;
	top: 0;
}
.bg-color-shift-items-horizonal::after{/*横書き*/
	position: absolute;
    content: "";
    left: 50%;
    top: 50%;
    background-color: var(--color-accent-a);
    width: 100%;
    height: 20%;
    /* opacity: 0.5; */
    z-index: -1;
    /* display: inline-block; */
    transform: translateX(-50%);
}
#news-roots .bg-color-shift-items-horizonal::after {
	position: absolute;
	content: "";
	left: 50%;
	top: 34%;
	background-color: var(--color-accent-a);
	width: 140%;
	height: 34%;
	border-radius: 10px;
	/* opacity: 0.5; */
	z-index: -1;
	/* display: inline-block; */
	transform: translateX(-50%);
	}
/*画像を親要素の横幅に関係なく画面幅いっぱいに表示させる指定*/
.img-full-width{
	width: 100vw;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}

/*背景色を横幅いっぱいに敷く指定*/
.bgcolor-full-width{
	position:relative;
	text-align: center;
}

.bgcolor-full-width:before{
	position: absolute;
	z-index: -20;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	background-color: var(--color-base);
	content: "";
	transform: translateX(-50%);
}

/*.bg-waves*/
.bg-waves-top{/*上側の区切り*/
	position: absolute;
    z-index: -2;
    top: -10%;
    left: 50%;
    display: block;
    width: 100vw;
    height: 100%;
/*    background-color: #fff;*/
    transform: translateX(-50%);
}
.bg-waves-bottom{/*下側の区切り*/
	position: absolute;
	z-index: -1;
	top: 100%;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	background-color: #fff;
	transform: translateX(-50%);

}

/*categoryをサムネイル画像の上に表示させる指定*/
.entry-image-box{
	position: relative;
}
.entry-image-box .post-tumb-cat{
	position: absolute;
	top: 0;
	left: 0;
	background: var(--color-main);
	color: #fff;
	padding: 0.5rem 1rem;
}


/*お知らせ一覧（テキストのみ）のブロックの指定*/
.news-list-noimage .module-set{
	display: flex;
	border: solid var(--color-pale-gray);
	border-width: 1px 0 0;
	padding: 1.5rem 0;
	margin: 0;
}

.news-list-noimage .module-set:last-child{
	border-bottom: solid 1px var(--color-pale-gray);
}

.news-list-noimage .module-set time{
	width: 10rem;
}

.news-list-noimage .module-set h3{
	flex-grow: 1;
	margin: 0;
}



/*ヘッダー関連の指定*/
#header-inner{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	background: #fff;
	border-bottom: 1px solid var(--color-pale-gray);
	z-index: 10;
}	
#menu-gnavi li+li{
	border-left: 1px dashed var(--color-text);
}

.header-contact-button-items{
	display: block;
	background-color: #BEE0E2;
	border-radius: 40px;
	line-height: 3rem;
	margin-right: 4rem;
}

.header-contact-button-items:last-child{
	background-color: var(--color-base);
}

/*#fixed-button*/
#fixed-button{
    position: fixed;
    top: 55%;
    right: 0;
    width: 60px;
    height: auto;
    z-index: 5;
	display: none;
}

/*セクションごと固有の指定*/
/*message*/
#bg-message img{
	margin-top: -30px;
}
#message{
	position: relative;
	margin-bottom: 0;
}
.message-items{
	position: absolute;
	top: 50%;
	width: 80%;
	left: 50%;
	transform:translate(-50%,-35%)
}
.message-items p:first-child{
	color: var(--color-accent-b);
	margin-bottom: 0.5rem;
    line-height: 1.4rem;
}
.message-items h2{
	margin-bottom: 0.5rem;
	padding: 0;
	font-size: 1.4rem;
	line-height: 1.4rem;
}
.message-items p:last-child{
	color: var(--color-text);
	line-height: 1.8rem;
}

/*about*/
#about:before{
	opacity: 0.5;
	background-image: url("../img/bg-about.jpg");
}
/*about roots*/
#about-roots .post-tumb-cat{
    top: -3%;
    left: -1%;
    padding: 1.5rem;
    font-size: 2rem;
    font-weight: bold;
    z-index: 2;
}
#about-roots .entry-text-box{
	position: absolute;
	top: 0;
	right: 1%;
	width: 98%;
	z-index: 1;
}

#about-roots .entry-text-box:last-child{
	position: absolute;
    top: 80%;
    left: 50%;
    transform: translateX(-50%);
    width: 90%;
    z-index: 1;
}

#about-roots .post-tumb-cat,
#about-roots .entry-text-box h2,
#about-roots .entry-text-box p{
    background: #fff;
    border: var(--color-text) solid 1px;
    border-radius: 20px;
    color: var(--color-text);
}

#about-roots .entry-text-box h2{
	font-size:1.25rem;
	padding: 0.5rem 0.15rem 0.5rem 4rem;
	margin:0;
}
#about-roots .entry-text-box p{
	padding: 0.75rem;
}

/*SNSリンクボタンの指定*/
#header-inner i{
	color: #977934;
}

/*#commitment-roots*/
#commitment-roots h3,
#about h3{
	border-bottom: 1px dashed;
}
 #commitment-roots .fa-icon h3,
#about .fa-icon h3{
	padding: 0 0 1rem 0;
	font-size: 1.5rem;
}
#commitment-roots .fa-icon h3::before,
#about .fa-icon h3::before{
	content: '\f4d8';
	font-family: 'Font Awesome 5 Free';
	color: var(--color-base);
	font-weight: 900;
}

/*#access-roots*/
#access-roots p:first-child{
	color: var(--color-accent-b);
	margin: -5rem 0 1rem 0;
}
#access-roots .information{
	margin: 1rem 0 1rem 1rem;
}
#access-roots .information dl{
	display: flex;
}
#access-roots .information dt{
	flex-basis: 75px;
}
#access-roots .information dd{
	margin: 0;
}
#access-roots .information dd:before{
	content: ":";
	color: var(--color-text);
	padding:0 0.5rem;
}

/*#news-roots*/
#news-roots .entry-section{
	background-color: #fff;
	padding: 2rem 5rem;
	border-radius: 20px;
}
#news-roots ul li{
	/*padding-bottom: 2.5rem;*/
}
#news-roots .post-categories{
	list-style: none;
	padding-left: 0;
}
#news-roots ul li p{
	line-height: 1.5rem;
	margin-bottom: 0.5rem;
}

/*.link-block*/
.link-block{
    max-width: 1000px;
    padding: 5rem 0;
    margin: -2rem auto 1rem auto;
}
.link-block h2{
    letter-spacing: 0.5rem;
    margin: -5rem 0 0 0;
    padding: 2rem 0;
}
.link-block p{
	color: var(--color-accent-b);
	padding: 1rem;
}
.link-block .bt-type-2{
	width: inherit;
	line-height: 38px;
}
.link-block .viewall-button{
	padding-bottom: 2rem;
}
.link-block ul li:first-child a{
	background: #BEE0E2;
}

.link-block ul li:last-child a{
	background: var(--color-base);
}

.link-block ul li a:hover{
	color:var(--color-text);
	transform: translate(-5px,-5px);
	box-shadow: var(--color-pale-gray) 5px 5px;
	transition: 0.2s;
}

/*#contact-roots*/
#contact-roots h2{
	background: url("../img/bg-access.png");
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: bottom;
    color: var(--color-accent-b);
    letter-spacing: 0.5rem;
	margin-top: 3rem;
	margin-bottom: 3rem;
	font-weight: normal;
}

/*パンくずリストの指定*/
#breadcrumbs-area{
	margin: 90px auto 2rem;
}

/*サイドバーの指定*/
#beta .module-set{
	margin: 0 auto 3rem;
}

#beta .module-set h3{
	position: relative;
    padding-bottom: 10px;
    margin-bottom: 20px;
}

#beta .module-set h3:before{
	content: '';
	position: absolute;
	bottom: -5px;
	border-bottom: 5px solid var(--color-main);
    width: 45%;
}

#beta .module-set h3:after{
	content: '';
	position: absolute;
	left: 45%;
	bottom: -5px;
	border-bottom: 5px solid var(--color-pale-gray);
	width: 55%;
}

#beta .module-set ul li{
	border-bottom: 1px solid var(--color-pale-gray);
	padding: 0.64rem;
}

#beta .module-set ul li a:before{
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 700;
	padding-right: 5px;
	color:var(--color-text);
}

#beta .module-set dl{
	display: flex;
	flex-wrap: wrap;
	border-bottom: 1px solid var(--color-pale-gray);
	padding: 0.64rem;
	margin: 0;
}
#beta .module-set dt{
	padding:0.2rem 5px 0.2rem 0.2rem;
}

#beta .module-set dd{
	padding: 0.2rem;
	margin:0;
}

/*footerの指定*/
footer{
	background: var(--color-base);
	opacity: 0.65;
}
footer p,
footer li{
	font-size: 0.75rem;
	padding-left: 2rem;
}

/*contact form7 カスタマイズ*/
.contact-block{
	padding: 0 1.5rem;
	width: 70%;
	margin: auto;
}
.contact-block .flex{
	display: flex;
	justify-content: center;
	flex-direction: column;
/*	align-items:flex-start;*/
}
.contact-block .flex-child{
/*	width: 15%;*/
}
.contact-block .flex-child-wide{
	max-width: 100%;
    margin-block-start: 0;
    margin-inline-start: 0;
}

.contact-block .flex-child-wide input,
.contact-block .flex-child-wide textarea{
	width: 100%;
}

/*個別記事ページのデザイン*/
.post-info{
	display: flex;
}
.post-info li{
	padding-left: 1rem;
}

.title-1{
	padding: 1rem;
	margin: 0;
}

.title-2{
	padding: 0.7rem 1rem;
	margin-bottom: 0.5rem;
	border-top: 2px solid var(--color-text);
	border-bottom:  2px solid var(--color-text);
}

.title-3{
	padding: 0.7rem 1rem;
	font-size: 2rem;
	letter-spacing: 0.2rem;
	margin-bottom: 0.5rem;
	border-left: 3px solid var(--color-base);
}
.title-4{
	border-bottom: 1px dashed;
	padding: 0 0 1rem 0;
	font-size: 1.5rem;
}
.title-4::before{
	content: '\f4d8';
	font-family: 'Font Awesome 5 Free';
	color: var(--color-base);
	font-weight: 900;
}	

.callout::before{
	content: '\f0eb';
	font-family: 'Font Awesome 5 Free';
	color: var(--color-text);
	font-weight: 900;
	padding-right: 1rem;
}
.callout{
	display: inline-block;
	padding: 2rem 5rem;
	background: var(--color-pale-gray);
	font-size: 1.5rem;
	border-radius: 5px;
}
.title-5{
	font-weight: bold;
	font-size: 1.5rem;
	line-height: 2rem;
	border-bottom: 1px solid var(--color-text);
	padding: 0.75rem 0; 
}
.title-5::before{
	content: '\f304';
	font-family: 'Font Awesome 5 Free';
	color: var(--color-text);
	font-weight: 900;
	padding-right: 1rem;
}
/*====== 9-1-1 縦線が動いてスクロールを促す =======*/

/*スクロールダウン全体の場所*/
.scrolldown1{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	left:50%;
	bottom:50px;
    /*全体の高さ*/
	height:50px;
}

/*Scrollテキストの描写*/
.scrolldown1 span{
    /*描画位置*/
	position: absolute;
	left:-15px;
	top: -15px;
    /*テキストの形状*/
	color: var(--color-text);
	font-size: 0.7rem;
	letter-spacing: 0.05em;
}

/* 線の描写 */
.scrolldown1::after{
	content: "";
    /*描画位置*/
	position: absolute;
	top: 0;
    /*線の形状*/
	width: 1px;
	height: 30px;
	background: var(--color-text);
    /*線の動き1.4秒かけて動く。永遠にループ*/
	animation: pathmove 1.4s ease-in-out infinite;
	opacity:0;
}

/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:30px;
		opacity: 1;
	}
	100%{
		height:0;
		top:50px;
		opacity: 0;
	}
}



/*==================================================
スクロールしたらふわっと出現するアニメーション
===================================*/


.fadeUp{
animation-name:fadeUpAnime;
animation-duration:0.75s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeUpTrigger{
    opacity: 0;
}



/* fadeUpをするアイコンの動き */

.fadeUp{
animation-name: fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

#news-roots {
	margin-bottom: 0;
	padding: 8rem 0 4rem;
}

/*-------------------------------------------------------------*/
#news-roots .post-categories a {
	font-size: 1.2rem;
	text-decoration: none;
	border: #725000 1px solid;
	display: inline-block;
}

time {
	color: #725000;
}

.sp_br {
	display: block;
}

.pc_br {
	display: none;
}

#reason {
	margin: 4rem 0 10rem;
}

#reason h2 {
	font-size: 2rem;
	text-align: center;
	margin: 0;
	padding: 1rem 0;
	width: 90%;
    margin: auto;
	margin-bottom: 2rem;
}

#reason p {
	color: #DC9B00;
	font-size: 1.6rem;
	text-align: center;
	margin-bottom: 0;
}

#reason .flex {
	justify-content: space-around;
}

#reason ul li {
	list-style-type: none;
	position: relative;
	font-size: 1.6rem;
	line-height: 2;
}

#reason ul li:before {
	position: absolute;
	content: '';
	width: 16px;
	height: 8px;
	left: -2.7rem;
	top: 1rem;
    bottom: 0px;
    margin: auto;
    content: '';
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-45deg);
}

#reason ul li::after {
	position: absolute;
	content: '';
	width: 20px;
	height: 10px;
	left: -3.6rem;
    top: 25%;
    bottom: 0px;
	background-color: #DAEEDB;
	border-radius: 50px;
	width: 36px;
	height: 36px;
	z-index: -2;
}

#conclusion {
	margin-bottom: 8rem;
}

#conclusion ._wrapper {
	background-color: #DC9B00;
	text-align: center;
}

#conclusion h2 {
	font-size: 2.2rem;
	color: #fff;
	padding: 1rem 0 2rem;
}

#conclusion ._wrapper  p {
	font-size: 1.4rem;
	color: #fff;
	padding: 2rem 0 0;
	margin-bottom: 0;
}

#conclusion .__wrapper p {
	font-size: 1.4rem;
}

#conclusion img {
	margin-top: 2rem;
}

/*-------------------------------------------------*/
#reason_bg {
	margin: 0;
}

#reason_bg img {
	padding: 0;
	width: 100%;
}

#feature {
	margin: 0;
}

#feature .main_wrapper {
	font-weight: 400;
	font-style: normal;
	width: 81.51%;
	margin: 0 auto;
}

#feature ._wrapper {
	background-color: #fff;
	text-align: center;
	position: relative;
}
/* 
#feature h2 {
	position: absolute;
	display: block;
	top: -8rem;
	right: 0;
	left: 0;
	margin: auto;
	font-size: 1.6rem;
	padding: 1rem 0;
	background-color: #fff;
	padding: 0;
}
*/

#feature .__wrapper {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#feature .__wrapper a {
	display: block;
	width: 100%;
}

#feature .__wrapper h3 {
	background-color: #F0FF84;
	padding: 2rem;
	margin-bottom: 0;
	font-size: 1.5rem;
	line-height: 2;
}

#feature .__wrapper p {
	background-color: #Fff;
	text-align: end;
	padding: 1rem;
}



#top_service_2 {
	margin: 4rem 0;
}

#top_service_2 .__wrapper {
	display: block;
	position: relative;
	margin-bottom: 10rem;
}

#top_service_2 .__wrapper h3 {
	font-size: 1.6rem;
	color: #DC9B00;
	font-weight: 400;
	margin-bottom: 2rem;
}

#top_service_2 h2,#feature h2 {
	font-size: 1.8rem;
	text-align: center;
	width: 100%;
    margin: auto;
	padding: 1rem 0;
	margin-bottom: 4rem;
}

#top_service_2 .__wrapper h4 {
	font-size: 1.4rem;
	font-weight: 400;
	color: #725000;
	position: relative;
	background: linear-gradient(transparent 50%, #F0FF84 50%);
	display: inline;
}

#top_service_2 .__wrapper h5 {
	font-size: 1.4rem;
	font-weight: 400;
	color: #725000;
	margin-top: 2rem;
}

#top_service_2 .__wrapper  img {
	width: 80%;
}

#top_service_2 .___wrapper {
	width: 100%;
	position: relative;
}

#top_service_2 .__wrapper::before {
	position: absolute;
    right: 0;
    top: -9rem;
    content: "";
    background-size: contain;
    background-repeat: no-repeat;
    width: 15rem;
    height: 15rem;
}
/* 
#top_service_2 .no_1::before {
	background-image: url('../img/top_service_01.png');
}

#top_service_2 .no_2::before {
	background-image: url('../img/top_service_02.png');
}

#top_service_2 .no_3::before {
	background-image: url('../img/top_service_03.png');
}

#top_service_2 .no_4::before {
	background-image: url('../img/top_service_04.png');
}
 */

#top_service_2 .__wrapper h3 {
	background-image : linear-gradient(to right, #707070, #707070 5px, transparent 4px, transparent 10px);  /* 幅2の線を作る */
	background-size: 8px 1px;          /* グラデーションの幅・高さを指定 */
	background-position: left bottom;  /* 背景の開始位置を指定 */
	background-repeat: repeat-x;       /* 横向きにのみ繰り返す */
}

.slick-prev,.slick-arrow {
	display: none !important;
}

.slider-1 {
	padding: 0 !important;
}

#students {
	margin: 0rem 0 4rem;
	width: 100%;
    margin: auto;
}

#students h2 {
	font-size: 1.6rem;
	text-align: center;
	color: #977934;
	font-family: zen-maru-gothic, sans-serif;
	padding: 1rem 0;
}

#access-roots {
	margin: 10rem 0 4rem;
}

#access-roots h2 {
	font-size: 2rem;
}

#reason ul li {
	font-size: 1.12rem;
	margin-bottom: 1rem;
}

.slick-slide img {
	padding: 0 0.5rem !important;
}

.kakoi_new {
	position: relative;
}

.kakoi_new::before, .kakoi_new::after {
	content: '';
	width: 15px;
	height: 80%;
	position: absolute;
}

.kakoi_new::before  {
	border-left: solid 1px #725000;
	border-top: solid 1px #725000;
	border-bottom: solid 1px #725000;
	top: 10%;
	left: 5%;
}

.kakoi_new::after {
	border-right: solid 1px #725000;
	border-top: solid 1px #725000;
	border-bottom: solid 1px #725000;
	top: 10%;
	right: 5%;
}

#feature .kakoi_new::before,#feature .kakoi_new::after {
	height: 60%;
	top: 20%;
}

#feature .kakoi_new::before {
	left: 5%;
}

#feature .kakoi_new::after {
	right: 5%;
}

#thanks {
	margin: 10rem 1.5rem;
}

#thanks img {
	width: 80%;
}

#thanks h1 {
	text-align: center;
	margin: 0rem 0 0rem;
	font-size: 2rem;
}

#thanks p {
	text-align: center;
	line-height: 2.5rem;
	font-size: 1.4rem;
	margin-bottom: 5rem;
}

#thanks  a {
	margin: auto;
    text-align: center;
    font-size: 1.6rem;
}

#thanks .sp_br {
	display: block;
}

#news-roots h3 {
	font-size: 1.6rem;
	font-weight: normal;
	margin-top: 1rem;
}

@media screen and (min-width: 600px) and (max-width: 1024px){
	.entry-text-box h3 {
		height: 8rem;
	}
	#reason h2  {
		width: 80%;
	}
	#feature .__wrapper h3 {
		font-size: 1.4rem;
	}
	.sp_br {
		display: none;
	}

	.pc_br {
		display: block;
	}

	#reason img {
		width: 60%;
	}

	#top_service_2 .__wrapper img {
		width: 50%;
	}

	#feature h2 {
		padding: 1.5rem 0;
	}

	#conclusion img {
		width: 60%;
	}
	.message-items p:last-child{
		color: var(--color-text);
		line-height: 3rem;
	}
	.message-items h2 {
		font-size: 2rem;
		line-height: 3rem;
	}
	.message-items p:first-child{
		margin-bottom: auto;
		line-height: 3rem;
	}
}


@media screen and (min-width: 1025px){
	#reason ul {
		margin-left: 6rem;
	}
	.entry-text-box h3 {
		height: 6rem;
	}
	#reason h2  {
		width: 80%;
	}
	.message-items{
		top: 42%;
	}
	#message p {
		font-size: 1.5rem;
		line-height: 3.5;
	}
	.message-items h2 {
		font-size: 2rem;
		line-height: 3rem;
	}
	.message-items p:first-child{
		margin-bottom: auto;
		line-height: 3rem;
	}
	.message-items p:last-child{
		color: var(--color-text);
		line-height: 3rem;
	}
	#fixed-button {
		display: block;
	}
	/*---hover------------------------------------*/
	#feature .__wrapper a {
		position: relative;
	}
	#feature .__wrapper a::before {
		content: '';
		position: absolute;
		top: 0;
		left: -75%;
		width: 50%;
		height: 90%;
		background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.4) 100%);
		transform: skewX(-25deg);
	}
	
	#feature .__wrapper a:hover::before {
		animation: shine 1s;
	}
	  
	@keyframes shine {
		100% {
		  left: 100%;
		}
	  }

	.gnav-items,.menu-item-type-custom {
		padding:0.6rem 0.7rem;
	}

	.bt-type-2{
		width: 358px;
		line-height: 33px;
	}

	#news-roots .bg-color-shift-items-horizonal::after {
		top: 25%;
		height: 50%;
		width: 32%;
		border-radius: 20px;
	}

	#access-roots .bg-color-shift-items-horizonal::after {
		top: 25%;
		height: 50%;
		width: 32%;
		border-radius: 10px;
	}

	#conclusion img {
		width: 80%;
		margin-top: 10rem;
	}

	#conclusion h2 {
		font-size: 3rem;
	}

	.sp_br {
		display: none;
	}

	.pc_br {
		display: block
	}

	#reason h2 {
		width: 70%;
	}

	#students h2 {
		font-size: 2.2rem;
		margin-top: 10rem;
	}

	#feature h2 {
		padding: 2rem 0;
		font-size: 2.2rem;
		width: 80%;
	}

	#reason img {
		width: 43.19%;
		margin: unset;
	}

	#reason {
		margin: 10rem 0 10rem;
	}

	#feature {
		/* 
		background-image: url('../img/feature_bg.png');
		 */
		background-repeat: no-repeat;
		background-size: contain;
		padding: 0;
		margin: 0;
	}

	#feature .main_wrapper {
		font-family: zen-maru-gothic, sans-serif;
		font-weight: 400;
		font-style: normal;
		max-width: 1565px;
		width: 81.51%;
		margin: 0 auto;
	}

	#feature ._wrapper {
		background-color: #fff;
		text-align: center;
	}

	#feature .__wrapper {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	#feature .__wrapper a {
		display: block;
		width: 47.85%;
	}

	#feature .__wrapper h2 {
		font-size: 2rem;
	}

	#feature .__wrapper h3 {
		background-color: #F0FF84;
		padding: 2rem;
		margin-bottom: 0;
		font-size: 2rem;
		line-height: 2;
	}

	#feature .__wrapper p {
		background-color: #Fff;
		text-align: end;
		padding: 1rem;
	}

	#top_service_2 {

	}

	#top_service_2 ._wrapper {
	}

	#top_service_2 .__wrapper {
		display: flex;
		justify-content: space-between;
		align-items: center;
		position: relative;
		margin-bottom: 12rem;
	}

	#top_service_2 .reverse {
		flex-direction: row-reverse;
	}

	#top_service_2 .__wrapper h3 {
		font-size: 2rem;
		color: #DC9B00;
		font-weight: 400;
		margin-bottom: 4rem;
		margin-top: 8rem;
		padding-bottom: 1rem;
	}

	#top_service_2 h2,#feature h2 {
		font-size: 2.2rem;
		text-align: center;
		width: 70%;
	}

	#top_service_2 .__wrapper h4 {
		font-size: 1.8rem;
		font-weight: 400;
		color: #725000;
		position: relative;
		background: linear-gradient(transparent 50%, #F0FF84 50%);
		display: inline;
	}

	#top_service_2 .__wrapper h5 {
		font-size: 1.8rem;
		font-weight: 400;
		color: #725000;
		margin-top: 4rem;
	}

	#top_service_2 .__wrapper  img {
		width: 47.92%;
	}

	#top_service_2 .___wrapper {
		width: 49.96%;
		position: relative;
	}

	#top_service_2 .____wrapper {
		margin-left: 3rem;
	}
/* 
	#top_service_2 .__wrapper::before {
		position: absolute;
		left: -4rem;
		top: -14rem;
		right: auto;
		content: "";
		background-size: contain;
		background-repeat: no-repeat;
		width: 40rem;
		height: 40rem;
	}
	#top_service_2 .no_1::before {
		background-image: url('../img/top_service_01.png');
	}

	#top_service_2 .no_2::before {
		background-image: url('../img/top_service_02.png');
		left: 50%;
	}

	#top_service_2 .no_3::before {
		background-image: url('../img/top_service_03.png');
	}

	#top_service_2 .no_4::before {
		background-image: url('../img/top_service_04.png');
		left: 50%;
	}
 */
	#reason ul li {
		font-size: 1.6rem;
	}

	#access-roots .information{
		margin: 2.5rem 0 1rem 9rem;
	}

	#students {
		margin: 14rem 0 4rem;
	}

	#thanks {
		width: 85.41%;
		margin: 10rem auto;
		max-width: 1640px;
	}

	#thanks p {
		font-size: 1.6rem;
	}

	#thanks .sp_br {
		display: none;
	}

	#thanks img {
		width: 30%;
	}

.kakoi_new::before  {
	left: 10%;
}

.kakoi_new::after {
	right: 10%;
}
}

@media screen and (min-width: 600px) {
	#feature .__wrapper a {
		display: block;
		width: 47.85%;
		overflow: hidden;
	}
}

@media screen and (min-width: 1500px) {
	.gnav-items,.menu-item-type-custom {
		padding:0.6rem 2rem;
	}
	#news-roots {
		margin-bottom: 0;
		padding: 14rem 0 0;
	}
	#news-roots h2 {
		font-size: 4rem;
		padding: 2rem 0;
	}
	#news-roots h3 {
		font-size: 2rem;
		font-weight: normal;
		margin-top: 1.5rem;
	}
	time {
		font-size: 1.6rem;
		letter-spacing: 0.13rem;
	}
	#news-roots .post-categories a {
		font-size: 1.6rem;
	}
	#news-roots .bg-color-shift-items-horizonal::after {
		top: 10%;
        height: 80%;
		width: 260%;
        border-radius: 20px;
	}
	#news-roots .entry-section {
		padding: 3rem 5rem 3rem;
		margin-bottom: 8rem;
	}
	#reason {
		margin: -3rem 0 21rem;
	}
	#reason ul {
		margin-left: 6.3rem;
	}
	#reason ul li {
		font-size: 2.4rem;
	}
	#reason p {
		font-size: 2.8rem;
		margin-bottom: 4rem;
	}
	#reason h2 {
		font-size: 4rem;
		padding: 1rem 0;
		margin-bottom: 11rem;
	}
	#conclusion h2 {
		font-size: 7rem;
		padding: 5rem 0 7rem;
	}
	#conclusion ._wrapper p {
		font-size: 3.4rem;
	}
	#conclusion .__wrapper p {
		font-size: 2.2rem;
		line-height: 1.7;
		letter-spacing: 0.5rem;
		margin-bottom: 5rem;
	}
	#conclusion img {
		width: 70%;
	}
	/*  
	#feature h2 {
		font-size: 4.2rem;
		padding: 2.5rem 0;
        top: -18rem;
	}
	*/
	#feature .__wrapper h3 {
		font-size: 3rem;
	}
	#feature .__wrapper p {
		font-size: 2rem;
		letter-spacing: 0.3rem;
		padding: 1.2rem;
	}
	#top_service_2 {
		margin: 19rem 0;
	}
	#top_service_2 h2,#feature h2 {
		font-size: 4.2rem;
		margin-bottom: 5rem;
	}
	#top_service_2 .__wrapper h3 {
		font-size: 4.2rem;
		margin-left: 6rem;
		margin-top: 6rem;
		padding-bottom: 3rem;
	}
	#top_service_2 .__wrapper h4 {
		font-size: 2.66667rem;
	}

	#top_service_2 .__wrapper::before {
		top: -22rem;
		width: 48rem;
		height: 58rem;
	}

	#top_service_2 .__wrapper {
		margin-bottom: 14rem;
	}

	#top_service_2 .__wrapper h5 {
		font-size: 2.66667rem;
	}
	#students h2 {
		font-size: 4.2rem;
        margin-top: 20rem;
		margin-bottom: 6rem;
	}
	#access-roots {
		margin: 19.2rem 0 0;
	}
	#access-roots .bg-color-shift-items-horizonal::after {
		height: 40%;
		width: 32%;
		border-radius: 20px;
	}
	#access-roots p:first-child {
		margin: 0rem 0 4rem;
		font-size: 2.6rem;
		letter-spacing: 0.4rem;
	}
	#access-roots .information dt {
		flex-basis: 100px;
		font-size: 2rem;
	}
	.information dd {
		font-size: 2rem;
		letter-spacing: 0.05rem;
	}
	#access-roots p {
		font-size: 1.6rem;
		margin-top: 2rem;
	}
	#students .kakoi_new::before {
		left: 5%;
	}
	#students .kakoi_new::after {
		right: 5%;
	}
	#feature .kakoi_new::before {
		left: 5%;
	}
	#feature  .kakoi_new::after {
		right: 5%;
	}
}
@media screen and (min-width: 1840px) {
	#feature .__wrapper h3 {
		font-size: 4.2rem;
	}
}

@media screen and (min-width: 1500px) and (max-width: 1810px) {
	#gnavi li a {
		font-size: 1.4rem;
	}
}

@media screen and (min-width: 1750px) {
	#message p {
		letter-spacing: 0.26rem;
		line-height: 4;
	}
}

@media screen and (min-width: 1810px) {
	#gnavi li a {
		font-size: 2rem;
	}
}


#students {
	margin-top: 4rem;
}
#students .slick-slider {
	margin-bottom: 2rem;
}
#top_service_2 {
	margin: 4rem 0 2rem;
}
.campaign_banner {
	margin: 2rem auto 6rem;
}
.campaign_banner:hover {
	opacity: 0.9;
}
.campaign_banner img {
	width: 90%;
	max-width: 1430px;
}
.orange_bubble {
	background-color: #EFA800;
	padding: 1rem 2rem;
}
.service_pillar {
	text-align: center;
	color: #977934;
}
.service_pillar h3 {
	font-size: 3rem;
}
.service_pillar h4 {
	font-size: 2rem;
	margin-bottom: 2rem;
}
.service_pillar p {
	text-align: left;
	font-size: 1.4rem;
	justify-content: center;
    display: flex;
}
#top_service_2 h2,#feature h2 {
	margin-bottom: 0;
	background-color: #fff;
	font-size: 1.6rem;
	letter-spacing: 0.4rem;
}
#top_service_2_studies ._wrapper {
	background-color: #fff;
	padding: 1rem 1rem 4rem;
}
.study_cycle {
	margin: 2rem auto;
}
#top_service_2_studies .__wrapper h3 {
	font-size: 1.6rem;
	color: #977934;
	margin-bottom: 0.5rem;
	/* 
	background-image: linear-gradient(to right, #707070, #707070 5px, transparent 4px, transparent 10px);
	background-size: 8px 1px;
	background-position: left bottom;
	background-repeat: repeat-x;
	 */
}
#top_service_2_studies .____wrapper {
	background-image: linear-gradient(to right, #707070, #707070 5px, transparent 4px, transparent 10px);
	background-size: 8px 1px;
	background-position: top;
	background-repeat: repeat-x;
}
#top_service_2_studies .__wrapper h3 span {
	vertical-align: bottom;
	margin-right: 0.5rem;
}
#top_service_2_studies .__wrapper h4 {
	background-image: linear-gradient(to right, #707070, #707070 5px, transparent 4px, transparent 10px);
    background-size: 8px 1px;
    background-position: left bottom;
    background-repeat: repeat-x;
	color: #DC9B00;
	font-size: 1.6rem;
}
#top_service_2_studies .__wrapper h5 span {
	background: linear-gradient(transparent 50%, #F0FF84 50%);
	display: inline;
}
#top_service_2_studies h5 {
	font-size: 1.2rem;
	color: #725000;
	font-weight: normal;
}
.study_arrow {
	max-width: 8rem;
	margin: 2rem auto;
}
.service_pillar_conclusion {
	text-align: center;
}
.service_pillar_conclusion span {
	color: #DC9B00;
	text-align: center;
	font-size: 1.6rem;
	background-image: linear-gradient(to right, #707070, #707070 5px, transparent 4px, transparent 10px);
    background-size: 8px 1px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.orange_flow_arrow_w {
	display: flex;
	width: 100%;
    justify-content: center;
	margin: 6rem auto 6rem;
}
.orange_flow_arrow {
	display: block;
	width: 8%;
	height: 5rem;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	background-color: #DC9B00;
}
#top_service_2_test .service_pillar {
	margin-top: 2rem;
}

#top_service_2_test .test_flow {
	display: flex;
	width: 80%;
	margin: auto;
	justify-content: center;
}
#top_service_2_test .test_flow span {
	display: block;
	width: 20%;
	height: auto;
}
#top_service_2_test .test_flow .flow_arrow {
	margin-left: 1rem;
	padding: 4rem 0;
	width: 25rem;
}
#top_service_2_test .test_flow .green {
	background-color: #68AD84;
	clip-path: polygon(0 0, 100% 0%, 100% 95%, 50% 100%, 0 95%);
}
#top_service_2_test .test_flow .green_b {
	background-color: #A3CDB4;
	clip-path: polygon(100% 0%, 100% 87%, 50% 100%, 0 87%, 0 0, 50% 12%);
}
#top_service_2_test .test_flow .green_c {
	background-color: #D0E5D9;
	clip-path: polygon(100% 0%, 100% 87%, 50% 100%, 0 87%, 0 0, 50% 8%);
}
#top_service_2_test .test_flow h3 {
	font-size: 1.6rem;
}
#top_service_2_test .test_flow p {
	font-size: 1.2rem;
}
.back_green {
	background-color: #DAEEDB;
	padding: 2rem 0;
}
.back_green_b {
	background-color: #BEE0E2;
	padding: 5rem 0 7rem;
}
#top_service_2_test {
	margin-bottom: 0;
	background-color: #fff;
	padding: 1rem;
}
.top_service_2_sub {
	font-size: 1.4rem;
	font-weight: bold;
	text-align: center;
}

.snsflex {
	display: flex;
}
.tell_btn {
	font-size: 1.6rem;
	padding: 1.5rem 0;
	border-radius: 25px;
	background-color: #00B900;
	color: #fff;
	position: relative;
	text-decoration: none;
	display: flex;
	justify-content: center;
	max-width: 40rem;
	margin: auto;
}
.tell_btn::before {
	content: "";
    display: block;
    position: absolute;
    left: 1.5rem;
    top: 50%;
    margin-top: -13px;
	background-image: url('../img/phone_icon.png');
    width: 24px;
    height: 24px;
}
footer {
	background-color: #F0F0F0;
}
footer ul li {
	text-decoration: none;
}
.footer_wrapper {
	padding: 4rem 1.5rem 0;
}
footer .footer_time {
	color: #725000;
	margin: 2rem 0;
	text-align: center;
	display: block;
}
footer .footer_time li {
	margin-bottom: 1rem;
}
.footer_tell_wrapper {
	margin-top: 2rem;
	font-size: 1.6rem;
}
footer ul {
	padding-left: 0;
	display: flex;
	justify-content: space-between;
	margin-bottom: 3rem;
}
footer li {
	font-size: 1.6rem;
	list-style: none;
	padding-left: 0;
}
footer li a {
	font-size: 1.6rem;
	text-decoration: none;
}
footer p {
	font-size: 1.6rem;
	font-weight: bold;
    padding-left: 0;
    margin: 1rem 0;
}
.footer___wrapper {
	margin-top: 4rem;
}
.footer___wrapper ul {
	margin-bottom: 2rem;
	justify-content: left;
}
.footer___wrapper ul li {
	margin-bottom: 1rem;
}
.footer_btn {
	font-size: 2rem;
    padding: 1rem 4rem;
    border-radius: 25px;
    color: #fff;
    position: relative;
    text-decoration: none;
    display: flex;
    justify-content: center;
    max-width: 40rem;
    margin: auto;
}
.btn_brown {
	background-color: #977934;
	margin-bottom: 2rem;
}
.btn_green {
	background-color: #39B54A;
}
.footer__wrapper_c {
	margin-top: 4rem;
}
.sp_none {
	display: none;
}
footer .footer_sns {
	margin: 2rem 0;
	display: flex;
	justify-content: center;
}
footer .footer_sns li {
	margin: 0 2rem;
}
footer .footer_corp {
	margin-top: 4rem;
}
footer .footer_corp a {
	text-align: center;
	font-size: 1.6rem;
	text-decoration: none;
	display: block;
	margin-bottom: 1rem;
}
footer .copyright {
	text-align: center;
	margin-top: 4rem;
	margin-bottom: 0;
	padding-bottom: 1rem;
	font-size: 1.2rem;
	letter-spacing: 0.2rem;
}

.header_tell_wrapper .tell_btn {
	background-color: #DC9B00;
	width: 80%;
}
#gnavi .header_tell_wrapper .header_time li{
	display: block;
	font-size: 1.2rem;
}
.header_tell__wrapper {
	align-items: center;
}
.header_tell__wrapper ul li {
	margin-right: 2rem;
}
.header_tell_wrapper .header_time ul li {
	text-decoration: none;
}
.header_time_wrapper {
	width: 100%;
	justify-content: space-between;
}
.header_tell_wrapper .header_time li {
	display: block;
}
.test_flow_wrapper {
	display: grid;
	justify-content: center;
	margin: 4rem 0;
}
footer ul {
	display: block;
}
.no_1 {
	margin-top: 4rem;
}
.footer__wrapper_b {
	text-align: center;
}
.footer___wrapper ul {
	justify-content: center;
}
.header-contact-button-items {
	line-height: normal;
}
#heroheader-copy {
	display: block;
	top: 40%;
	list-style-type: none;
	left: 4%;
    padding-left: 0;
	transform: unset;
}
#heroheader-copy li p {
	font-size: 2rem;
	letter-spacing: 0.8rem;
	padding: 0.5rem 1rem 0.5rem 4rem;
	margin-bottom: 2rem;
}
.bg-color-shift-items-vertical::after {
	border-radius: 10px;
	opacity: 1;
}
.bg-color-shift {
	width: fit-content;
}
#students .viewall-button a {
	margin: auto;
	padding: 1rem;
	font-size: 1.5rem;
	margin-top: 10rem;
}
#top_service_2 {
	position: relative;
}
#top_service_2::after {
	content: "";
	display: block;
	width: 86px;
	height: 56px;
	margin: auto;
	background-color: #DC9B00;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}
.two_arrow {
	font-size: 4rem;
}
.top_service_2_sub span {
	background: linear-gradient(transparent 50%, #F0FF84 50%);
	display: inline;
}
.service_pillar h3,.service_pillar h4 {
	font-family: Zen Kaku Gothic New;
}

#news-roots .bg-color-shift {
	margin: auto;
}

#access-roots .bg-color-shift-items-horizonal::before {
	position: absolute;
    content: "";
	background-image: url("../img/babyleaf.png");
	width: 71px;
    height: 71px;
    top: 3%;
    right: -87%;
}
#heroheader::before {
	top: 70%;
}
#access-roots .bg-color-shift {
	margin: auto;
}
#access-roots .bg-color-shift-items-horizonal::after {
	width: 150%;
}
#access-roots .bg-color-shift-items-horizonal::before {
	right: -50%;
}
@media screen and (min-width: 600px) and (max-width: 1024px){
	.sp_br_2 {
		display: block;
	}
	#top_service_2_test .test_flow .flow_arrow {
		width: 40rem;
	}
	#top_service_2_test .test_flow span {
		width: 15%;
	}
	footer ul {
		display: flex;
	}
	#heroheader-copy {
		top: 23%;
	}
	#heroheader::before {
		width: 20rem;
        height: 17rem;
		top: 24%;
	}
}
@media screen and (min-width: 1025px) {
	.sp_none {
		display: block;
	}
	.pc_none {
		display: none;
	}
	footer .pc_none {
		display: none;
	}
	.footer_wrapper {
		display: flex;
		justify-content: space-between;
	}
	footer .footer_corp {
		display: flex;
		justify-content: end;
	}
	footer .footer_corp a {
		margin-left: 2rem;
		font-size: 1.4rem;
	}
	#breadcrumbs-area{
		margin: 154px auto 2rem;
	}
	#top_service_2_studies .__wrapper h3 span {
		font-size: 2.6rem;
	}
	#top_service_2_test .test_flow {
		width: 80%;
	}
	.footer_btn:hover {
		color: #fff;
		transform: translate(-5px,-5px);
		box-shadow: var(--color-accent-a) 5px 5px;
		transition: 0.2s;
	}
	.footer_wrapper_d {
		display: flex;
		justify-content: space-between;
	}
	.footer_wrapper_d .sp_none {
		width: 40%;
	}
	.footer_wrapper_d .footer_corp {
		width: 40%;
		margin-top: 2rem;
	}
	.header_tell_wrapper .tell_btn {
		width: auto;
	}
	#header-inner {
		display: block;
		padding: 1rem 2rem;
	}
	#header-logo img{
		padding: 1rem 0;
		max-width: auto;
	}
	footer ul {
		display: flex;
	}
	.footer__wrapper_b {
		text-align: left;
		display: flex;
		justify-content: space-between;
        width: 42%;
		max-width: 630px;
	}
	.footer___wrapper ul {
		justify-content: left;
	}
	.footer___wrapper ul li {
		margin-right: 2rem;
		margin-bottom: 0;
		margin-top: 1rem;
	}
	footer .footer_sns li {
		margin: 0;
	}
	footer .footer_sns {
		justify-content: unset;
		margin: 4rem 0 0;
	}
	footer .footer_sns li:first-child {
		margin-left: 3rem;
	}
	footer .footer_sns li:nth-child(2),footer .footer_sns li:last-child {
		margin-left: 2rem;
	}
	.header-contact-button-items {
		line-height: normal;
	}
	.header_tell_wrapper .header_time {
		margin-bottom: 0;
	}
	#top_service_2 {
		margin: 20.5rem 0 2rem;
	}
	.orange_bubble {
		padding: 2rem 7rem;
	}
	.orange_bubble_b {
		padding: 2rem 7rem;
	}
	#top_service_2 h2, #feature h2 {
		font-size: 2.4rem;
		line-height: normal;
		padding: 1rem 0;
	}
	#feature .main_wrapper {
		margin-top: 11rem;
	}
	#feature .__wrapper h3 {
		padding: 2.5rem 3rem;
		line-height: 1.5;
	}
	.orange_bubble_b .kakoi_new::before,.orange_bubble_b .kakoi_new::after {
		height: 43%;
	}
	.orange_bubble_b .kakoi_new::after {
        right: 4%;
		top: 30%;
	}
	.orange_bubble_b .kakoi_new::before {
        left: 7%;
		top: 30%;
    }
	#feature .__wrapper {
		margin-bottom: -1rem;
	}
	#top_service_2 .orange_bubble_b h2 {
		padding: 4rem 0;
	}
	.top_service_2_sub {
		font-size: 3rem;
		margin-top: 5rem;
		line-height: normal;
		letter-spacing: 0.4rem;
		margin-bottom: 6rem;
	}
	.back_green {
		padding: 6rem 0 3rem;
	}
	.service_pillar h3 {
		font-family: Zen Kaku Gothic New;
        padding: 4rem;
        font-size: 6rem;
        letter-spacing: 1rem;
	}
	.service_pillar h4 {
		font-size: 4rem;
		margin-bottom: 4rem;
	}
	.service_pillar p {
		font-size: 2rem;
		letter-spacing: 0.2rem;
		line-height: 1.6;
		padding: 0 1rem;
	}
	.study_cycle {
		width: 60%;
		margin: 4rem auto;
	}
	.no_1,.no_2,.no_3 {
		display: flex;
		justify-content: space-between;
	}
	#top_service_2_studies .no_2 .___wrapper {
		margin-left: 2rem;
	}
	.no_1 img,.no_2 img,.no_3 img {
		width: 46%;
	}
	#top_service_2_studies .__wrapper h3 {
		font-family: Zen Kaku Gothic New;
		display: flex;
		align-items: baseline;
		font-size: 3rem;
        margin-top: 2.4rem;
		letter-spacing: 0.8rem;
		margin-left: 2rem;
		padding-bottom: 2rem;
	}
	.no_1 {
		margin-top: 10rem;
	}
	.no_2 {
		flex-direction: row-reverse;
		margin-top: -2rem;
	}
	#top_service_2_studies .__wrapper h3 span {
		font-size: 6rem;
	}
	#top_service_2_studies .no_2 h3 span {
		padding-left: 1rem;
	}
	#top_service_2_studies .___wrapper {
		margin-left: 1rem;
	}
	#top_service_2_studies .__wrapper h4 {
		padding-top: 1rem;
		font-size: 2rem;
		letter-spacing: 0.4rem;
		margin-bottom: 3rem;
		font-weight: normal;
		padding-bottom: 1rem;
		max-width: 790px;
        overflow: hidden;
	}
	#top_service_2_studies .no_2  h4 {
		letter-spacing: 0.1rem;
	}
	#top_service_2_studies .__wrapper h5 {
		font-weight: normal;
		width: 95%;
		font-size: 1.6rem;
		letter-spacing: 0.2rem;
		padding-left: 0.75rem;
		line-height: 2rem;
		margin-bottom: 0;
	}
	.study_arrow {
		max-width: unset;
		width: 12rem;
	}
	#top_service_2_studies .no_2 .__wrapper h3 {
		margin-left: 0;
	}
	#top_service_2_studies .no_2 .__wrapper h3 span {
		padding-right: 0;
	}
	#top_service_2_studies .no_2 .____wrapper {
		margin-left: 2rem;
	}
	.study_arrow_b {
		width: 12rem;
		margin-bottom: -3rem;
	}
	.study_arrow_c {
		width: 12rem;
		margin-top: 6rem;
	}
	#top_service_2_studies .no_3 .___wrapper {
		margin-left: 2rem;
	}
	#top_service_2_studies .no_3 img {
		margin-top: 4rem;
	}
	.service_pillar_conclusion span {
		font-size: 3rem;
        letter-spacing: 0.2rem;
	}
	.test_flow_wrapper {
		margin-top: 10rem;
		display: block;
	} 
	#top_service_2_test {
		padding: 1rem 0 6rem;
	}
	#top_service_2_test .test_flow span {
		width: 9%;
	}
	#top_service_2_test .test_flow .flow_arrow {
		width: 90%;
		padding: 3rem 0;
		margin-left: 9rem;
	}
	#top_service_2_test .test_flow {
		width: 78%;
        margin: 0 0 0 auto;
	}
	#top_service_2_test .test_flow h3 {
		font-size: 3rem;
		letter-spacing: 0.7rem;
		margin-bottom: 2rem;
	}
	#top_service_2_test .test_flow p {
		font-size: 2.4rem;
        line-height: 1.5;
		margin-bottom: 0;
	}
	#top_service_2_test .test_flow .green {
		clip-path: polygon(0 0, 100% 0%, 100% 92%, 50% 100%, 0 92%);
	}
	#top_service_2_test .test_flow .green_b {
		clip-path: polygon(100% 0%, 100% 85%, 50% 100%, 0 85%, 0 0, 50% 14%);
	}
	#top_service_2_test .test_flow .green_c {
		clip-path: polygon(100% 0%, 100% 85%, 50% 100%, 0 85%, 0 0, 50% 12%);
	}
	.sp_br_2 {
		display: none;
	}
	#top_service_2_test .test_flow .flow_arrow_b {
		padding: 6rem 0 6rem;
	}
	#top_service_2_test .test_flow .flow_arrow_c h3 {
		padding-top: 2rem;
	}
	#top_service_2_test .test_flow .flow_arrow_c p {
		padding-top: 1.5rem;
		padding-bottom: 3rem;
	}
	#news-roots .viewall-button a {
		font-size: 1.5rem;
		padding: 1rem 0;
	}
	#news-roots .viewall-button span {
		font-size: 1.6rem;
	}
	#news-roots .viewall-button {
		padding-bottom: 1rem;
	}
	#access-roots {
        margin: -3rem 0 0;
    }
	#access-roots .bg-color-shift {
		margin: auto;
	}
	#access-roots .bg-color-shift-items-horizonal::after {
		height: 18%;
        top: 49%;
        width: 250%;
        border-radius: 10px;
    }
	#access-roots .information dl {
		padding-bottom: 0.8rem;
	}
	#access-roots p {
        margin-top: 1rem;
    }
	#access-roots .information dt {
		flex-basis: auto;
		letter-spacing: 0.4rem;
	}
	#access-roots .information dd {
		letter-spacing: 0.25rem;
	}
	.footer_wrapper {
		max-width: 1100px;
		margin: auto;
		padding: 4rem 0rem 0;
	}
	.footer_wrapper_d {
		max-width: 1100px;
		margin: auto;
	}
	.footer_wrapper .tell_btn {
		margin: unset;
		margin-top: 3.5rem;
		font-size: 1.4rem;
		padding: 1rem 0rem;
		max-width: 22.5rem;
	}
	.footer_wrapper .tell_btn span {
		letter-spacing: 0.25rem;
		padding-left: 1rem;
	}
	.footer___wrapper ul {
		display: block;
	}
	footer p {
		font-size: 1.4rem;
	}
	.footer_btn {
		padding: 1rem 4.5rem;
	}
	.footer__wrapper_c {
		margin-top: 4.5rem;
	}
	footer .footer_wrapper_d li {
		font-size: 1.4rem;
		letter-spacing: 0.1rem;
	}
	footer li a {
		font-size: 1.4rem;
	}
	.footer_wrapper_d ul {
		margin-top: 1.2rem;
		margin-left: 1rem;
		margin-bottom: 0;
	}
	.footer_wrapper_d ul li:first-child {
		margin-bottom: 1rem;
	}
	.footer_wrapper_d .footer_corp {
        margin-top: 4.5rem;
        margin-right: 1.5rem;
	}
	footer .footer_corp a {
		letter-spacing: 0.15rem;
		margin-bottom: 0;
	}
	footer .copyright {
		margin-top: 1.5rem;
		font-size: 1.4rem;
		font-weight: normal;
	}
	#heroheader::before {
		width: 20rem;
        height: 17rem;
        right: 10%;
        top: 40%;
	}
	.tell_btn {
		padding: 0.5rem 0;
	}
	#heroheader {
		top: 115px;
	}
	#heroheader-copy li p {
		font-size: 3rem;
		margin-bottom: 3rem;
	}
	#heroheader-copy {
		top: 20%;
		left: 4%;
	}
	#news-roots .bg-color-shift-items-horizonal::after {
        top: 20%;
        height: 60%;
        width: 260%;
        border-radius: 20px;
    }
}
@media screen and (min-width: 1500px) {
	.sp_none {
		display: block;
	}
	.pc_none {
		display: none;
	}
	#top_service_2_studies .service_pillar h3 span {
		font-size: 20rem;
	}
	.tell_btn {
		padding: 1rem 4rem;
	}
	.header-contact-button-items {
		line-height: 3rem;
	}
	.campaign_banner {
		margin: 10rem auto 19rem;
	}
	#heroheader {
		top: 188px;
	}
	#reason .flex {
		justify-content: space-between;
	}
	#reason h2 {
		margin-bottom: 10.5rem;
    }
	#reason ul {
		margin-left: 4rem;
	}
	#reason ul li {
		line-height: 1.7;
	}
	#conclusion {
		margin-top: -6rem;
	}
	#conclusion h2 {
		margin-bottom: 3rem;
	}
	#conclusion img {
		margin-top: 5rem;
	}
	#feature .__wrapper a {
		margin-bottom: 3rem;
	}
	#access-roots h2 {
		font-size: 4.2rem;
	}
	#students .viewall-button a {
		font-size: 2.4rem;
		padding: 2rem;
	}
	#news-roots .viewall-button a {
		font-size: 2.4rem;
		padding: 1.75rem 0;
	}
	.footer_wrapper_d ul li:first-child {
        margin-bottom: 1.4rem;
    }
	footer .footer_wrapper_d li {
		font-size: 2rem;
	}
	footer .footer_corp a {
		font-size: 1.6rem;
	}
	#news-roots .bg-color-shift-items-horizonal::after {
        top: 0%;
        height: 100%;
        width: 260%;
        border-radius: 20px;
    }
	.tell_btn {
		font-size: 2rem;
		padding: 1rem 0;
	}
	#access-roots .bg-color-shift-items-horizonal::before {
		right: -75%;
	}
}
@media screen and (min-width: 1600px) {
	#gnavi {
		padding-bottom: 2rem;
	}
	#breadcrumbs-area {
        margin: 300px auto 2rem;
    }
	#heroheader::before {
		top: -2%;
        left: 2%;
		width: 25%;
        height: 43%;
		max-width: 40rem;
		max-height: 34rem;
	}
    #header-logo {
		margin-left: 0;
	}
	#header-logo img {
		padding: 1.3rem 5rem;
		max-width: 40rem;
	}
	.header_tell_wrapper {
		margin: 2rem 2rem 4rem 0;
	}
	#heroheader {
        top: 324px;
    }
	.tell_btn {
		letter-spacing: 0.4rem;
		padding: 1.5rem 5rem;
		border-radius: 60px;
	}
	.header_tell__wrapper {
		align-items: end;
		margin-top: 1.5rem;
		margin-right: 3rem;
	}
	.header_tell_wrapper .header_time {
		font-size: 2rem;
		letter-spacing: 0.25rem;
		margin: 0;
		margin-left: 2rem;
	}
	.header_tell_wrapper .header_time li:first-child {
		margin-bottom: 1rem;
	}
	.header_tell__wrapper ul li {
		margin-right: 0;
	}
	.header_tell_wrapper .header_time li {
		font-size: 2.2rem;
	}
	#gnavi #menu-gnavi {
		margin: 0 0 0 5.7rem;
	}
	.header_tell_wrapper .tell_btn {
		margin: 0 0 0 auto;
		width: 28rem;
	}
	.gnav-items, .menu-item-type-custom {
		padding: 0 2.25rem;
	}
	.header-contact-button-items {
		padding: 0.5rem 0;
	}
	#menu-item-60 {
		width: 24rem;
		background-color: #FBFF95;
	}
	#menu-item-61 {
		margin-right: 1rem;
		width: 17rem;
	}
	.fa-xl {
		font-size: 3rem !important;
	}
	.fa-twitter {
		margin-left: 2rem;
	}
	.fa-instagram {
		margin-left: 2rem;
	}
	#news-roots {
		padding: 21rem 0 0;
	}
	.link-block {
		max-width: none;
		margin: -2rem auto 4rem auto;
	}
	#contact-roots h2 {
		font-size: 4rem;
        padding-bottom: 3.5rem;
		max-width: 921px;
        margin: 7rem auto 4rem;
	}
	.viewall-button a {
		font-size: 3rem;
		padding: 2rem 0;
		max-width: 487px;
	}
	.link-block-items {
		max-width: 1170px;
		margin: auto;
		margin-bottom: 3rem;
	}
	.link-block ul li:first-child a {
		margin: 0 auto 0 0;
	}
	.footer_wrapper,.footer_wrapper_d {
		max-width: 1496px;
	}
	#bg-message img {
		margin-top: 260px;
	}
	#heroheader-copy li p {
		font-size: 5.7rem;
		padding: 0.5rem 1rem 0.5rem 4rem;
		margin-bottom: 3rem;
	}
	#heroheader-copy {
		top: 45%;
	}
	#top_service_2 h2, #feature h2 {
		font-size: 4rem;
		padding: 3.6rem 0;
	}
	.orange_bubble {
		padding: 3rem 7rem;
	}
	.orange_bubble_b {
        padding: 5.7rem;
    }
	.top_service_2_sub {
		font-size: 4rem;
	}
	.service_pillar h3 {
		padding: 8rem;
		font-size: 15rem;
		letter-spacing: 2rem;
	}
	.service_pillar h4 {
        font-size: 7rem;
    }
	.service_pillar p {
        font-size: 2.5rem;
    }
	#top_service_2_studies .___wrapper {
        margin-left: 5rem;
    }
	#top_service_2_studies .__wrapper h3 {
        font-size: 5.4rem;
        margin-top: 2.4rem;
        margin-left: 2rem;
        padding-bottom: 7.5rem;
    }
	#top_service_2_studies .__wrapper h4 {
		font-size: 3rem;
		letter-spacing: 0.4rem;
		padding-top: 2rem;
	}
	#top_service_2_studies .__wrapper h5 {
		font-size: 2.6rem;
		line-height: 3rem;
	}
	#top_service_2_studies .__wrapper h3 span {
		font-size: 12rem;
		padding-right: 3rem;
	}
	#top_service_2_studies .__wrapper h3 {
		padding-bottom: 7.5rem;
	}
	.no_1 img, .no_2 img, .no_3 img {
		margin-right: 2rem;
		margin-top: 0;
	}
	.no_2 img {
		margin-right: 0;
		margin-left: 2rem;
	}
	.study_arrow {
		width: 19rem;
    }
	.study_arrow_b {
        width: 24rem;
        margin-bottom: -3rem;
    }
	.study_arrow_c {
        width: 23rem;
        margin-top: 6rem;
    }
	.study_cycle {
        margin: 7rem auto;
        width: 100%;
    }
	.no_1 {
        margin-top: 20rem;
    }
	.orange_flow_arrow_w {
		margin: 9rem auto 10rem;
	}
	#top_service_2_test .test_flow h3 {
        font-size: 4rem;
        margin-bottom: 4rem;
    }
	#top_service_2_test .test_flow p {
        font-size: 3.2rem;
        line-height: 1.7;
    }
	#top_service_2_test .test_flow .flow_arrow_c p {
		padding-top: 1.5rem;
	}
	#top_service_2_test .test_flow .green {
		clip-path: polygon(0 0, 100% 0%, 100% 94%, 50% 100%, 0 94%);
	}
	#top_service_2_test .test_flow .green_b {
		clip-path: polygon(100% 0%, 100% 85%, 50% 100%, 0 85%, 0 0, 50% 14%);
	}
	#top_service_2_test .test_flow .green_c {
		clip-path: polygon(100% 0%, 100% 85%, 50% 100%, 0 85%, 0 0, 50% 14%);
	}
	#top_service_2_test {
        padding: 1rem 0 15rem;
    }
	#access-roots h2 {
        font-size: 4.2rem;
    }
	#access-roots p {
		font-size: 1.8rem;
		letter-spacing: 0.4rem;
	}
	#access-roots .bg-color-shift-items-horizonal::after {
        height: 36%;
        top: 43%;
    }
	.service_pillar_conclusion span {
		font-size: 4.2rem;
	}
	.footer_wrapper .tell_btn {
		font-size: 1.6rem;
	}
	footer p {
		font-size: 2rem;
	}
	footer li a {
		font-size: 1.8rem;
	}
	.footer___wrapper ul li {
        margin-right: 2rem;
        margin-top: 2rem;
    }
}
@media screen and (min-width: 1850px) {
	#top_service_2_studies .__wrapper h3 {
		font-size: 7.2rem;
	}
	#top_service_2_studies .__wrapper h4 {
		font-size: 4rem;
	}
	footer .footer_corp a {
		margin-left: 6rem;
	}
}