@charset "UTF-8";

/* COMMON */

.img_float_right{
	width:30% !important;
	float:right;
	margin:0 0 3% 3%;
}

.img_float_left{
	width:30% !important;
	float:right;
	margin:0 3% 3% 0;
}

.img_full_center{
	width:100% !important;
	margin:0 0 3% 0;
}

sub, sup {
	font-size:75%;
	line-height:0;
	position:relative;
	vertical-align:baseline;
}
sub {
	bottom: -0.25em;
}
sup {
	top: -0.5em;
}


/* INTERFACE */

#globalmenu{
	max-width:1200px;
	height:100px;
	margin:0 auto;
	padding:0 3%;
	position:relative;
}

#globalmenu h1{
	margin:0;
	line-height:1;
}

#globalmenu h1 img,
#globalmenu a.logo img{
	width:120px;
	vertical-align:bottom;
	position:absolute;
	top:25px;
	left:40px;
}

#globalmenu a.btn_contact{
	display:inline-block;
	padding:10px 12px 10px 32px;
	font-size:14px;
	line-height:1;
	color:#000;
	background-color:#ffd83c;
	background-image:url("../img/interface/ico_arrow.svg");
	background-repeat:no-repeat;
	background-size:15px;
	background-position:left 10px center;
	border-radius:5px;
	position:absolute;
	top:36px;
	right:85px;
}

#globalmenu a.btn_contact:hover{
	background-color:#ffe374;
}

#globalmenu ul.pcmenu{
	margin:0;
	padding:0;
	list-style-type:none;
	font-size:13px;
	position:absolute;
	top:45px;
	left:190px;
}

#globalmenu ul.pcmenu li{
	float:left;
	margin:0 25px 0 0;
}

#globalmenu ul.pcmenu li a{
	padding:0 0 0 12px;
	color:#21489d;
	background-image:url("../img/interface/ico_arrow_right.svg");
	background-repeat:no-repeat;
	background-size:6px;
	background-position:left center;
}

#courcelist{
	padding:15px 0;
	background-color:#f4f4f4;
}

#courcelist ul{
	display:flex;
	justify-content:center;
	margin:0;
	padding:0;
	list-style-type:none;
	font-size:14px;
	line-height:1.2;
}

#courcelist ul li{
	padding:0 20px;
	border-right:1px solid #21489d;
}

#courcelist ul li:last-child{
	border-right:none;
}

@media only screen and (max-width:1070px){
	#courcelist ul{
		font-size:13px;
	}
	#courcelist ul li{
		padding:0 10px;
	}
	#globalmenu h1 img,
	#globalmenu a.logo img{
		width:100px;
	}
	#globalmenu ul.pcmenu{
		font-size:12px;
		left:160px;
	}
	
	#globalmenu ul.pcmenu li{
		margin:0 18px 0 0;
	}
}

@media only screen and (max-width:900px){
	#courcelist ul{
		font-size:12px;
	}
	#courcelist ul li{
		padding:0 7px;
	}
	#globalmenu ul.pcmenu{
		display:none;
	}
}

body>footer{
	padding:40px 40px 60px;
	text-align:center;
	background-color:#21489d;
	border-top:10px solid #c1e4e9;
}

.footer_nav_group{
	break-inside: avoid;
}

#topicpath{
	max-width:1200px;
	margin:0 auto 40px;
	padding:0 0 10px;
	border-bottom:0.5px solid #ccc;
}

#topicpath ul{
	display:flex;
	margin:0;
	padding:0;
	list-style-type:none;
	text-align:left;
	font-size:14px;
	color:#fff;
}

#topicpath ul li{
	margin:0 15px 0 0;
	padding:0 15px 0 0;
	background-image:url("../img/interface/ico_arrow04.svg");
	background-repeat:no-repeat;
	background-size:6px;
	background-position:right center;
}

#topicpath ul li:last-child{
	background-image:none;
}

body>footer a.logo img{
	width:120px;
	vertical-align:bottom;
	margin:0 0 50px;
}

body>footer .nav{
	max-width:1200px;
	margin:0 auto 50px;
}

body>footer .nav>ul{
	margin:0;
	padding:0;
	text-align:left;
	font-size:14px;
	color:#fff;
	column-count:3;
}

body>footer .nav>ul span{
	display:block;
	margin:0.8em 0;
	padding:0 0 0.2em;
	color:#d4f6fa;
	border-bottom:0.5px dashed #d4f6fa;
}

body>footer .nav>ul>li{
	margin:0 1.5em 1em;
}

body>footer .nav>ul>li>div>ul{
	padding:0;
	list-style-type:none;
}

body>footer .nav>ul>li>div>ul>li{
	margin:0.4em 0;
}

body>footer .nav>ul>li>div>ul>li::before{
	content:"-";
	margin:0 0.5em 0 0;
}

body>footer .nav>ul>li>div>ul>li>ul{
	margin:0;
	padding:0 0 0 2em;
}

body>footer .nav>ul>li>div>ul>li>ul>li{
	margin:0.2em 0;
}

body>footer ul li a:link,
body>footer ul li a:visited{
	color:#fff;
}

body>footer .sns{
	margin:0 0 20px;
}

body>footer .sns img{
	width:25px;
}

body>footer small{
	font-size:9px;
	color:#fff;
}

@media only screen and (max-width:1070px){
	body>footer .nav>ul{
		column-count:2;
	}
}

br.pc{
	display:block;
}

br.sp{
	display:none;
}

/* SIZE HOME */

#home_contents_area p{
	margin:1em 0;
	font-size:15px;
	font-weight:300;
	line-height:1.8;
}

#home_contents_area h2{
	margin:0 0 3em;
	font-size:25px;
	font-weight:600;
	line-height:1.2;
}

#home_contents_area h3{
	margin:0 0 2em;
	font-size:22px;
	font-weight:600;
	line-height:1.2;
}

#home_contents_area h4{
	margin:0 0 1.2em;
	font-size:18px;
	font-weight:500;
	line-height:1.2;
}

#home_contents_area figcaption{
	margin:0.5em 0;
	font-size:13px;
	font-weight:300;
	line-height:1.3;
	color:#5e6a74;
}


/* PARTS */

#home_contents_area a.btn_a{
	display:inline-block;
	padding:15px 20px 15px 35px;
	font-size:15px;
	line-height:1.2;
	border:1px solid #21489d;
	background-image:url("../img/interface/ico_arrow02.svg");
	background-repeat:no-repeat;
	background-size:9px;
	background-position:left 18px center;
}

body>footer{
	position:relative;
}

#pagetop{
	position:absolute;
	top:-37px;
	right:5%;
	background-color:#fff;
	border-top:2px solid #6bbfcb;
	border-left:2px solid #6bbfcb;
	border-right:2px solid #6bbfcb;
}

#pagetop a{
	display:table;
	padding:0.5em 1em 0.5em 2em;
	font-size:15px;
	color:#6bbfcb;
	background-image:url("../img/interface/ico_arrow_up.svg");
	background-repeat:no-repeat;
	background-size:10px;
	background-position:left 1em center;
}

#sub_contents_area a.btn_a{
	display:table;
	padding:15px 20px 15px 35px;
	font-size:15px;
	line-height:1.2;
	border:1px solid #21489d;
	background-image:url("../img/interface/ico_arrow02.svg");
	background-repeat:no-repeat;
	background-size:9px;
	background-position:left 18px center;
}

#sub_contents_area a.btn_a.margin{
	margin:0 0 3%;
}

#sub_contents_area a.btn_b{
	display:inline-block;
	padding:15px 20px 15px 35px;
	font-size:15px;
	line-height:1.2;
	color:#000;
	border:1px solid #ffd83c;
	background-color:#ffd83c;
	background-image:url("../img/interface/ico_arrow03.svg");
	background-repeat:no-repeat;
	background-size:9px;
	background-position:left 18px center;
}

#sub_contents_area a.btn_b:hover{
	border:1px solid #ffd83c;
	background-color:#fff;
}

#sub_contents_area a.btn_c{
	display:block;
}

#sub_contents_area a.btn_c.margin{
	margin:0 0 5%;
}

#sub_contents_area a.btn_c img{
	width:100%;
}

#sub_contents_area a.btn_d{
	font-size:14px;
	font-weight:300;
	color:#333;
}

#sub_contents_area>section>h2{
	text-align:center;
	font-family: "Noto Serif", serif;
}

#sub_contents_area #contact_btn_area{
	max-width:1200px;
	margin:0 auto 8%;
	padding:5%;
	text-align:center;
	background-color:#fff;
	border:4px solid #ffd83c;
	border-radius:15px;
	font-style:normal;
}

#sub_contents_area #contact_btn_area a.btn_c{
	max-width:300px;
	margin:0 auto;
}

#sub_contents_area #contact_btn_area h2{
	margin:0 0 0.5em;
	padding:50px 0 0;
	font-family:"Noto Sans", sans-serif;
	background-image:url("../img/interface/ico_plane.png");
	background-repeat:no-repeat;
	background-size:45px;
	background-position:top center;
}

#sub_contents_area #contact_btn_area a.btn_tel{
	padding:0 0 0 80px;
	font-size:45px;
	font-weight:600;
	color:#000;
	background-image:url("../img/interface/ico_fd.png");
	background-repeat:no-repeat;
	background-size:70px;
	background-position:left center;
}

#sub_contents_area #contact_btn_area p{
	margin:0 0 2em;
	text-align:center;
}


/* HOME */

#home_key img{
	width:100%;
	vertical-align:bottom;
}

#home_welcome_contents{
	box-sizing:border-box;
	margin:0 0;
	padding:5% 5% 12%;
	background-image:url("../img/interface/bg_welcome.png");
	background-repeat:no-repeat;
	background-size:cover;
	background-position:top center;
}

#home_welcome_contents>div{
	max-width:1200px;
	box-sizing:border-box;
	margin:0 auto;
	padding:6% 5%;
	background-color:#fff;
	box-shadow:0px 25px 72px 0px rgba(0, 0, 0, 0.07);
	overflow:hidden;
}

#home_welcome_contents figure{
	width:45%;
	float:right;
	margin:0 0 0 4%;
}

#home_welcome_contents figure img{
	width:100%;
}

#home_welcome_contents figure figcaption{
	text-align:center;
}

#home_welcome_contents p{
	margin:0 0 2em;
	text-align:justify;
	text-indent:1em;
}

#home_welcome_contents h2{
	margin:0 0 1em;
	font-family: "Noto Serif", serif;
	font-size:27px;
	font-weight:600;
	line-height:1.2;
	color:#21489d;
}

#home_solution_area{
	max-width:1200px;
	margin:0 auto 10%;
	padding:0 5%;
	display:flex;
}

#home_solution_area>div:first-child{
	width:50%;
	box-sizing:border-box;
	padding:3%;
	background-color:#edf0f4;
}

#home_solution_area>div:last-child{
	width:50%;
	background-color:#edf0f4;
}

#home_solution_area a.btn_a{
	background-color:#fff;
}

#home_solution_area>div img{
	width:100%;
	vertical-align:bottom;
}

#home_solution_area h2{
	margin:0 0 0.5em;
	font-size:39px;
	font-weight:200;
}

#home_solution_area p{
	margin:0 0 1.5em;
	text-align:justify;
	text-indent:1em;
}

#home_solution_area p.lead{
	margin:0 0 0.5em;
	font-size:20px;
	font-weight:400;
	color:#21489d;
	text-indent:0em;
}

@media only screen and (max-width:1300px){
	#home_solution_area>div:last-child{
		box-sizing:border-box;
		padding:3% 3% 3% 0;
	}

	#home_solution_area h2{
		font-size:3vw;
	}
	#home_solution_area p{
		font-size:14px;
	}
	
	#home_solution_area p.lead{
		font-size:17px;
	}
}

#home_banner_area{
	max-width:1200px;
	margin:0 auto 10%;
	padding:0 5%;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

#home_banner_area img{
	width:100%;
}

#home_banner_area>div:first-child{
	width:48%;
	margin:0 0 6%;
}

#home_banner_area>div:nth-child(2){
	width:48%;
	margin:0 0 6%;
}

#news_index_area{
	max-width:800px;
	margin:0 auto 12%;
	padding:0 5%;
}

#news_index_area>a.btn_a{
	display:table;
	margin:0 auto;
}

#news_index_area section{
	margin:0 0 2%;
}

#news_index_area section:last-of-type{
	margin:0 0 10%;
}

#news_index_area section a{
	display:flex;
	justify-content:space-between;
	align-items:center;
	color:#333;
}

#news_index_area section span{
	display:flex;
	justify-content:space-between;
	align-items:center;
	color:#333;
}

#news_index_area section img{
	width:20%;
	border-radius:5px;
}

#news_index_area h2{
	margin:0 0 2em;
	padding:0 0 0.5em;
	color:#21489d;
	border-bottom:1px solid #21489d;
}

#news_index_area section h3{
	width:78%;
	margin:0;
	font-size:16px;
	line-height:1.4;
}

#news_index_area section h3 time{
	display:block;
	font-size:13px;
	font-weight:300;
	color:#5e6a74;
}

#sub_contents_area #news_index_area{
	max-width:1000px;
	margin:5% auto 12%;
}

#home_course_link{
	margin:0 auto 150px !important;
	padding:0;
	border-top:1px solid #21489d;
	background-color:#f4f4f4;
	display:flex;
}

#home_course_link li{
	box-sizing:border-box;
	margin:0 !important;
	border-right:1px solid #fff;
	width:25%;
}

#home_course_link li::before{
	content:none !important;
}

#home_course_link a{
	display:block;
	padding:15px;
	cursor:pointer;
	transition: all 0.2s ease-out allow-discrete;
}

#home_course_link a::before{
	content:"▼ " !important;
}


#home_course_link a:link,
#home_course_link a:visited{
	color:#21489d;
}
#home_course_link a:hover,
#home_course_link a:active{
	color:#111;
	background-color:#c7e2e7;
}

#course_index_area{
	max-width:1200px;
	margin:0 auto;
	padding:0 5%;
}

#course_index_area h2{
	text-align:center;
	font-family: "Noto Serif", serif;
}

#course_index_area h2 span{
	display:block;
	margin:0 0 5px;
	font-family: "Lora", serif;
	font-size:16px;
	font-weight:400;
	color:#6bbfcb;
}

#course_index_area h3{
	padding:4px 0 6px 35px;
	color:#21489d;
	background-image:url("../img/interface/ico_bar.svg");
	background-repeat:no-repeat;
	background-size:18px;
	background-position:left center;
}

#course_index_area h4{
	padding:0.7em 0 0 50px;
	font-size:25px;
	font-weight:400;
	background-image:url("../img/interface/ico_pencil.png");
	background-repeat:no-repeat;
	background-size:40px;
	background-position:left bottom;
}

#course_index_area p{
	text-align:justify;
	text-indent:1em;
}

#course_index_area p.mark{
	display:inline-block;
	margin:0 0 1.5em;
	padding:5px 18px 7px 12px;
	font-size:14px;
	font-weight:400;
	color:#21489d;
	background-color:#ffe374;
	clip-path:polygon(0 0, 100% 0, 92% 100%, 0 100%);
	text-indent:0;
}

#course_index_area ul{
	margin:2em 0;
	padding:0;
	list-style-type:none;
	font-size:16px;
}

#course_index_area ul li{
	margin:0 0 1em;
}

#course_index_area ul li::before{
	content:"ー";
	margin:0 10px 0 0;
	font-weight:200;
	color:#21489d;
}

#course_index_area>article>section{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
}

#course_index_area>article>section{
	margin:0 0 10%;
}

#course_index_area>article>section>a{
	width:46%;
}

#course_index_area>article>section>a img{
	width:100%;
}

#course_index_area>article>section>div{
	width:50%;
}

#course_index_area .business a{
	order:2;
}

#home_solution{
	max-width:1200px;
	margin:0 auto;
	padding:8% 5%;
}

#home_solution h2{
	text-align:center;
	font-family: "Noto Serif", serif;
}

#course_index_area.sub{
	margin:5% auto 0;
}

#course_index_area.sub h2{
	padding:4px 0 6px 35px;
	text-align:left;
	font-family:"Noto Sans", sans-serif;
	color:#21489d;
	background-image:url("../img/interface/ico_bar.svg");
	background-repeat:no-repeat;
	background-size:18px;
	background-position:left center;
}

#course_index_area.sub h3{
	margin:0 0 1.2em;
	padding:0.7em 0 0 50px;
	font-size:25px;
	font-weight:400;
	color:#333;
	background-image:url("../img/interface/ico_pencil.png");
	background-repeat:no-repeat;
	background-size:40px;
	background-position:left bottom;
}

#course_index_area.sub ul{
	margin:2em 0;
	padding:0;
	font-size:16px;
}

/* SIZE SUB */

#sub_contents_area p{
	margin:0 0 1em;
	font-size:15px;
	font-weight:300;
	line-height:1.8;
}

#sub_contents_area figcaption{
	margin:0.5em 0;
	font-size:13px;
	font-weight:300;
	line-height:1.3;
	color:#5e6a74;
}

#sub_contents_area figcaption.center{
	text-align:center;
}

#sub_contents_area h2{
	margin:0 0 3em;
	font-size:25px;
	font-weight:600;
	line-height:1.2;
}

#sub_contents_area h3{
	margin:0 0 2em;
	font-size:22px;
	font-weight:600;
	line-height:1.2;
}

#sub_contents_area h4{
	margin:0 0 1.2em;
	font-size:18px;
	font-weight:500;
	line-height:1.2;
}

#sub_contents_area h5{
	margin:0 0 1em;
	font-size:16px;
	font-weight:600;
	line-height:1.2;
	color:#555;
}

#sub_contents_area ul{
	margin:0;
	padding:0 0 0 2em;
	font-size:15px;
	font-weight:300;
	line-height:1.4;
}

#sub_contents_area ol{
	margin:0;
	padding:0 0 0 2em;
	font-size:15px;
	font-weight:300;
	line-height:1.4;
}

/* SUB */

#course_index_title{
	background-repeat:repeat-x;
	background-size:4098px 269px;
	background-position:top center;
}

#course_index_title.elementary{
	background-image:url("../img/interface/bg_title_elementary.jpg");
}

#course_index_title.juniorhigh{
	background-image:url("../img/interface/bg_title_juniorhigh.jpg");
}

#course_index_title.high{
	background-image:url("../img/interface/bg_title_high.jpg");
}

#course_index_title.business{
	background-image:url("../img/interface/bg_title_business.jpg");
}

#course_index_title>div{
	max-width:1200px;
	margin:0 auto 6%;
	padding:0 5%;
	overflow:hidden;
}

#course_index_title img{
	width:45%;
	margin:35px 0 0;
	float:right;
}

#course_index_title h1{
	width:52%;
	margin:80px 0 120px;
	float:left;
	font-size:42px;
	font-weight:400;
	line-height:1.2;
}

#course_index_title h1 span{
	display:table;
	margin:0 0 10px;
	padding:10px 15px;
	font-size:20px;
	background-color:#fff;
}

#course_index_title p{
	width:52%;
	margin:0;
	text-align:justify;
}

#course_index_title.noimage>div{
	margin:0 auto;
}

#course_index_title.noimage h1{
	width:100%;
	margin:80px 0 80px;
	float:none;
}

@media only screen and (max-width:1070px){
	#course_index_title{
		background-size:3352px 220px;
	}
	#course_index_title h1{
		margin:70px 0 90px;
		font-size:37px;
	}
	#course_index_title.noimage h1{
		margin:70px 0 50px;
	}
}

@media only screen and (max-width:900px){
	#course_index_title{
		background-size:2742px 180px;
	}

	#course_index_title img{
		margin:25px 0 0;
	}
	#course_index_title h1{
		margin:45px 0 80px;
		font-size:30px;
	}
	#course_index_title.noimage h1{
		margin:45px 0 45px;
	}
	#course_index_title h1 span{
		font-size:16px;
	}
}

#course_index_list{
	clear:both;
	padding:8% 5% 2%;
	background-color:#fafafa;
}

#course_index_list h2{
	text-align:center;
	font-family: "Noto Serif", serif;
}

#course_index_list h2 span{
	display:block;
	margin:0 0 5px;
	font-family: "Lora", serif;
	font-size:16px;
	font-weight:400;
	color:#6bbfcb;
}

#course_index_list .comment{
	max-width:1200px;
	margin:0 auto 2%;
}

#course_index_list .comment p{
	font-size:14px;
	font-weight:300;
}

#course_index_list .comment p.title{
	padding:4px 0 6px 35px;
	font-size:22px;
	font-weight:500;
	background-image:url("../img/interface/ico_bar02.svg");
	background-repeat:no-repeat;
	background-size:18px;
	background-position:left center;
}

#course_index_list .comment h2.title{
	padding:4px 0 6px 35px;
	text-align:left;
	font-family:"Noto Sans", sans-serif;
	font-size:22px;
	font-weight:500;
	background-image:url("../img/interface/ico_bar02.svg");
	background-repeat:no-repeat;
	background-size:18px;
	background-position:left center;
}

#course_index_list .feature{
	max-width:calc(1200px + 4%);
	margin:30px auto 5%;
	display:flex;
	flex-wrap:wrap;
}

#course_index_list .feature>section{
	display:flex;
	width:50%;
	box-sizing:border-box;
	margin:0 0 4%;
	padding:0 2% 4%;
}

#course_index_list .feature>section>div{
	padding:0 8% 8%;
	box-shadow:0px 25px 72px 0px rgba(0, 0, 0, 0.08);
	border-radius:20px;
}

#course_index_list .feature>section img{
	width:100px;
	position:relative;
	top:-30px;
	vertical-align:bottom;
}

#course_index_list .feature>section p{
	margin:0;
	text-align:justify;
	font-weight:200;
	line-height:1.6;
}

#course_index_list .feature>section p.copy{
	margin:0 0 0.5em;
	font-size:20px;
	font-weight:500;
	line-height:1.3;
	color:#1f9a5c;
}

#course_index_list>section{
	display:flex;
	justify-content:space-between;
	max-width:1200px;
	box-sizing:border-box;
	margin:0 auto 6%;
	padding:5% 5%;
	background-color:#fff;
	box-shadow:0px 25px 72px 0px rgba(0, 0, 0, 0.07);
}

#course_index_list>section>a{
	width:42%;
	order:2;
}

#course_index_list>section a img{
	width:100%;
}

#course_index_list>section>div{
	width:53%;
}

#course_index_list>section h3{
	margin:0 0 1em;
	color:#21489d;
}

#course_index_list>section p{
	margin:0 0 1.7em;
	text-align:justify;
}

#course_index_list>section>div>div{
	display:flex;
	justify-content:space-between;
}

#course_index_list>section>div>div>a{
	width:48%;
	box-sizing:border-box;
}

@media only screen and (max-width:1070px){
	#course_index_list>section>a{
		width:45%;
	}
	#course_index_list>section>div{
		width:50%;
	}
}

@media only screen and (max-width:900px){
	#course_index_list>section{
		display:block;
	}
	#course_index_list>section>a{
		width:100%;
	}
	#course_index_list>section>a img{
		margin:0 0 1.5em;
	}
	#course_index_list>section>div{
		width:100%;
	}
}

#course_principal_message{
	max-width:1200px;
	margin:0 auto;
	padding:8% 5%;
	overflow:hidden;
}

#course_principal_message h2{
	text-align:center;
	font-family: "Noto Serif", serif;
}

#course_principal_message h2 span{
	display:block;
	margin:0 0 5px;
	font-family: "Lora", serif;
	font-size:16px;
	font-weight:400;
	color:#6bbfcb;
}

#course_principal_message p{
	text-align:justify;
}

#course_principal_message p.lead{
	margin:0 0 1em;
	font-family: "Noto Serif", serif;
	font-size:22px;
	font-weight:600;
	line-height:1.2;
	color:#21489d;
}

#course_principal_message figure{
	width:30%;
	margin:0;
	float:left;
}

#course_principal_message figure img{
	width:100%;
}

#course_principal_message figure figcaption{
	text-align:center;
}

#course_principal_message>div{
	width:70%;
	float:right;
	box-sizing:border-box;
	padding:0 0 0 4%;
}

#sub_contents_area .bg{
	padding:8% 5%;
	background-color:#fafafa;
}

#course_link_list{
	max-width:600px;
	margin:0 auto;
}

#course_link_list h2{
	margin:0 0 1.5em;
	font-family:"Noto Sans", sans-serif;
}

#course_link_list ul{
	margin:0 0 8%;
	padding:0;
	list-style-type:none;
	border-top:1px solid #ddd;
}

#course_link_list ul li{
	border-bottom:1px solid #ddd;
}

#course_link_list ul li a{
	display:block;
	padding:20px 20px;
	background-image:url("../img/interface/ico_arrow02.svg");
	background-repeat:no-repeat;
	background-size:8px;
	background-position:left center;
}

#analysis_link_list{
	max-width:1200px;
	margin:0 auto;
	padding:0 5%;
}

#analysis_link_list>section{
	margin:0 0 10%;
}

#analysis_link_list h2{
	padding:4px 0 6px 35px;
	text-align:left;
	font-family:"Noto Sans", sans-serif;
	font-size:22px;
	font-weight:500;
	background-image:url("../img/interface/ico_bar02.svg");
	background-repeat:no-repeat;
	background-size:18px;
	background-position:left center;
}

#analysis_link_list ul{
	display:flex;
	flex-wrap:wrap;
	width:104%;
	margin:0 0 5%;
	padding:0;
	list-style-type:none;
	position:relative;
	left:-2%;
}

#analysis_link_list ul li{
	width:33.3333333333%;
	box-sizing:border-box;
	padding:0 2%;
}

#analysis_link_list ul li a{
	display:block;
	padding:20px 20px 20px 35px;
	border-bottom:1px solid #ddd;
	background-image:url("../img/interface/ico_arrow02.svg"),url("../img/interface/ico_pdf.png");
	background-repeat:no-repeat;
	background-size:8px,25px;
	background-position:right center,left center;
}

#selection_link_list{
	padding:0 0 10%;
	background-color:#fafafa;
}

#selection_link_list a.btn_d{
	display:table;
	margin:0 auto;
}

#selection_link_list>div{
	max-width:600px;
	margin:0 auto;
	padding:5%;
}

#selection_link_list h2{
	text-align:center;
	font-size:20px;
	font-weight:500;
}

#selection_link_list p{
	display:table;
	margin:0 auto 3em;
	text-align:justify;
}

#selection_link_list em{
	font-style:normal;
	font-weight:500;
}

#selection_link_list .btn_list{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin:0;
	padding:0;
	list-style-type:none;
	text-align:center;
	font-size:16px;
}

#selection_link_list .btn_list li{
	width:50%;
	box-sizing:border-box;
	padding:0 3% 5%;
}

#selection_link_list .btn_list li a{
	display:block;
	width:100%;
	padding:5% 0;
	color:#333;
	background-color:#fff;
	border:2px solid #ffd73c;
	border-radius:5px;
}

#selection_link_list .btn_list.green li a{
	border:2px solid #d2e658;
}

#selection_link_list .link_list{
	display:table;
	margin:0 auto;
	padding:0;
	list-style-type:none;
	font-size:15px;
	font-weight:500;
}

#selection_link_list .link_list li{
	margin:0 0 1em;
	padding:0.5em 0 0.5em 3em;
	background-image:url("../img/interface/ico_check.png");
	background-repeat:no-repeat;
	background-size:2em;
	background-position:left center;
}

#selection_link_list .link_list li a{
	color:#333;
}


@media only screen and (max-width:900px){
	#course_principal_message figure{
		width:40%;
		margin:0 auto 2em;
		float:none;
	}
	#course_principal_message>div{
		width:100%;
		float:none;
		padding:0;
	}
}

#course_detail_title{
	padding:40px 5%;
	text-align:center;
	background-repeat:repeat-x;
	background-size:4098px 269px;
	background-position:top center;
}

#course_detail_title.elementary{
	background-image:url("../img/interface/bg_title_elementary.jpg");
}

#course_detail_title.juniorhigh{
	background-image:url("../img/interface/bg_title_juniorhigh.jpg");
}

#course_detail_title.high{
	background-image:url("../img/interface/bg_title_high.jpg");
}

#course_detail_title.business{
	background-image:url("../img/interface/bg_title_business.jpg");
}

#course_detail_title p{
	margin:0 0 1em;
	font-size:22px;
	line-height:1.4;
}

#course_detail_title p span{
	display:block;
	font-size:16px;
	font-weight:600;
}

#course_detail_title>span{
	display:inline-block;
	margin:0 0 1.5em;
	padding:5px 40px;
	font-size:12px;
	background-color:#f9ff62;
}

#course_detail_title h1{
	margin:0;
	font-size:45px;
	font-weight:500;
	line-height:1.2;
}

#course_detail_title h1 span{
	display:block;
	font-size:12px;
	font-weight:300;
}

#course_detail_outline{
	max-width:1200px;
	margin:0 auto;
	padding:5%;
	overflow:hidden;
}

#course_detail_outline>img{
	width:40%;
	float:right;
	margin:0 0 20px 4%;
}

#course_detail_outline p{
	margin:0 0 2em;
	text-align:justify;
}

#course_detail_outline p.title{
	margin:0 0 0.5em;
	font-size:16px;
	font-weight:500;
	color:#1f9a5c;
}

#course_detail_outline #deadline_title{
	text-indent:0;
	font-size:16px;
	font-weight:500;
	line-height:1.5;
	color:#ffae0d;
}

#course_detail_outline #deadline{
	font-size:14px;
	font-weight:400;
	color:#333;
}

#course_detail_outline .table_outline{
	margin:0 0 1.5em;
	padding:2%;
	background-color:#f6f6f6;
	border-radius:10px;
	line-height:1.4;
}

#course_detail_outline .table_outline th{
	padding:0 10px 0 0;
	text-align:right;
	vertical-align:top;
	font-size:13px;
	font-weight:600;
	white-space:nowrap;
}

#course_detail_outline .table_outline td{
	padding:0;
	vertical-align:top;
	font-size:14px;
	font-weight:300;
}

#course_detail_outline .table_outline b{
	font-size:18px;
	line-height:1;
}

#course_detail_outline .table_outline .margin{
	padding:10px 0 0;
}

#course_detail_outline .table_outline small.s{
	font-size:11px;
	font-weight:300;
}

#course_detail_outline .list_basic{
	margin:0 0 2em;
	padding:0 0 0 1.5em;
	font-size:14px;
	font-weight:300;
	line-height:1.3;
}

#course_detail_outline .list_basic li{
	margin:0.5em 0;
}

#course_detail_outline .list_note{
	width:56%;
	margin:0 0 2em;
	padding:0;
	list-style-type:none;
	text-align:justify;
	font-size:12px;
	font-weight:300;
	line-height:1.5;
}

#course_detail_outline .list_note li{
	margin:0 0 5px;
	padding:0 0 0 2.5em;
	text-indent:-2.5em;
}

#course_detail_contents .list_note{
	margin:0;
	padding:0;
	list-style-type:none;
	text-align:justify;
	font-size:14px;
	font-weight:300;
	line-height:1.5;
}

#course_detail_contents .list_note li{
	margin:0 0 5px;
	padding:0 0 0 2.5em;
	text-indent:-2.5em;
}

#course_detail_outline a.btn_c{
	width:30%;
}

#sub_contents_area #anchor_link{
	display:flex;
	max-width:1200px;
	margin:0 auto 10%;
	padding:0;
	list-style-type:none;
	font-size:14px;
	border-top:1px solid #21489d;
	border-bottom:1px solid #21489d;
}

#sub_contents_area #anchor_link li{
	box-sizing:border-box;
	margin:0 !important;
	border-right:1px solid #fff;
	width:25%;
}

#sub_contents_area #anchor_link li::before{
	content:none !important;
}

#sub_contents_area #anchor_link a{
	display:block;
	padding:15px;
	cursor:pointer;
	transition: all 0.2s ease-out allow-discrete;
}

#sub_contents_area #anchor_link a::before{
	content:"▼ " !important;
}

#sub_contents_area #anchor_link a:link,
#sub_contents_area #anchor_link a:visited{
	color:#21489d;
}
#sub_contents_area #anchor_link a:hover,
#sub_contents_area #anchor_link a:active{
	color:#111;
	background-color:#c7e2e7;
}


@media only screen and (max-width:900px){
	#course_detail_outline>img{
		margin:0 0 2% 4%;
	}
	#course_detail_outline .list_note{
		width:100%;
	}
	#course_detail_outline a.btn_c{
		width:40%;
	}
}


#course_bnr_area{
	clear:both;
}

#course_bnr_area img{
	width:48%;
}

#course_bnr_area a:first-child img{
	float:left;
}

#course_bnr_area a:last-child img{
	float:right;
}

#course_different_area{
	margin:30px 0 0;
	text-align:center;
	background-color:#fcfbf2;
}

#course_different_area>div{
	display:flex;
	justify-content:space-between;
	max-width:1000px;
	margin:0 auto;
	padding:0 5% 3%;
}

#course_different_area>div figure{
	width:35%;
	margin:0;
}

#course_different_area>div figure img{
	width:100%;
}

#course_different_area>div>div{
	width:60%;
	margin:0;
}

#course_different_area h2{
	margin:0 0 1.5em;
	text-align:left;
	font-size:18px;
	font-weight:500;
	color:#333;
}

#course_different_area>img{
	max-width:400px;
	margin:0 auto 5px;
	position:relative;
	top:-30px;
}

#course_different_area p{
	text-align:justify;
}

#course_different_area p.note{
	font-size:13px;
}

#course_different_area>p{
	text-align:center;
	position:relative;
	top:-30px;
}

#course_different_area p.margin{
	margin:0 0 2.5em;
}

#course_detail_contents{
	padding:5% 5%;
	background-color:#f6f6f6;
}

#course_detail_contents a.btn_c{
	max-width:400px;
	margin:0 auto;
}

#course_detail_contents h2{
	text-align:center;
	font-family: "Noto Serif", serif;
}

#course_detail_contents h2 span{
	display:block;
	margin:0 0 5px;
	font-family: "Lora", serif;
	font-size:16px;
	font-weight:400;
	color:#6bbfcb;
}

#course_detail_contents h3{
	margin:0 0 1.5em;
	padding:4px 0 6px 35px;
	color:#21489d;
	background-image:url("../img/interface/ico_bar.svg");
	background-repeat:no-repeat;
	background-size:18px;
	background-position:left center;
}

#course_detail_contents h3 span{
	margin:0 0 0 1em;
	font-size:15px;
}

#course_detail_contents h4{
	padding:0 0 0 35px;
	font-weight:400;
	background-image:url("../img/interface/ico_pencil02.png");
	background-repeat:no-repeat;
	background-size:25px;
	background-position:left center;
}

#course_detail_contents h4 span{
	margin:0 0 0 0.5em;
	font-size:14px;
}

#course_detail_contents h5{
	margin:2em 0 0.5em;
	color:#1f9a5c;
}

#course_detail_contents p{
	text-align:justify;
}

#course_detail_contents p.note{
	font-size:13px;
}

#course_detail_contents p.copy{
	margin:0 0 1em;
	font-family:"Noto Serif", serif;
	font-size:22px;
	font-weight:600;
	line-height:1.2;
	color:#21489d;
}

#course_detail_contents ul{
	margin:0;
	padding:0 0 0 25px;
}

#course_detail_contents ul li{
	margin:0 0 10px;
}

#course_detail_contents section{
	max-width:900px;
	margin:0 auto 6%;
	overflow:hidden;
}

#course_detail_contents .pic>div{
	display:flex;
	justify-content:space-between;
}

#course_detail_contents .pic>div>div{
	width:51%;
}

#course_detail_contents .pic figure{
	width:45%;
	margin:0;
}

#course_detail_contents .pic figure img{
	width:100%;
}

#course_detail_contents .pic figure img.margin{
	margin:0 0 2em;
}

#course_detail_contents .tekuto{
	box-sizing:border-box;
	padding:2% 2% 1%;
	background-color:#fff;
	border:2px solid #ffd83c;
	border-radius:10px;
}

#course_detail_contents .tekuto>div{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
}

#course_detail_contents .tekuto img{
	width:35%;
}

#course_detail_contents .tekuto>div>div{
	width:62%;
}

#course_detail_contents .tekuto p.title{
	margin:0 0 1.5em;
	padding:0.2em 1em;
	font-size:18px;
	font-weight:500;
	background-color:#ffe374;
	clip-path:polygon(0 0, 100% 0, 97% 100%, 0 100%);
	text-indent:0;
}

#course_detail_contents .tekuto p.title02{
	margin:0 0 0.5em;
	font-size:16px;
	font-weight:600;
	text-indent:0;
}

#course_detail_contents .syouronbun{
	box-sizing:border-box;
	padding:2% 2% 1%;
	background-color:#fff;
	border:2px solid #6bbfcb;
	border-radius:10px;
}

#course_detail_contents .syouronbun>div{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
}

#course_detail_contents .syouronbun img{
	width:40%;
}

#course_detail_contents .syouronbun>div>div{
	width:57%;
}

#course_detail_contents .syouronbun p.title{
	margin:0 0 1.5em;
	padding:0.2em 1em;
	font-size:18px;
	font-weight:500;
	background-color:#c1e4e9;
	clip-path:polygon(0 0, 100% 0, 97% 100%, 0 100%);
	text-indent:0;
}

#course_detail_contents .syouronbun p.title02{
	margin:0 0 0.5em;
	font-size:16px;
	font-weight:600;
	text-indent:0;
}

#course_detail_contents section section{
	margin:3em 0;
}

#course_detail_contents section section:first-child{
	margin:0 0 3em;
}

#course_detail_contents section section.pic>div{
	display:flex;
	justify-content:space-between;
}

#course_detail_contents section section.pic>div>div{
	width:76%;
}

#course_detail_contents section section.pic figure{
	width:20%;
	margin:0;
	text-align:center;
}

#course_detail_contents section section.pic.wide>div>div{
	width:56%;
}

#course_detail_contents section section.pic.wide figure{
	width:40%;
}


#course_detail_contents section section.pic figure img{
	width:100%;
	vertical-align:bottom;
}

#course_detail_contents .table_curriculum{
	width:100%;
	border-collapse:collapse;
	margin:2em 0;
	background-color:#fff;
	border-top:1px solid #ddd;
}

#course_detail_contents .table_curriculum th{
	padding:20px 20px;
	border-bottom:1px solid #ddd;
	border-right:1px solid #ddd;
	font-size:15px;
	font-weight:500;
	color:#555;
	white-space:nowrap;
}

#course_detail_contents .table_curriculum th:last-child{
	border-right:none;
}

#course_detail_contents .table_curriculum td{
	padding:20px 20px;
	font-size:14px;
	font-weight:300;
	border-bottom:1px solid #ddd;
}

#course_detail_contents .table_curriculum tr:nth-child(even) th{
	background-color:#fcfcfc;
}

#course_detail_contents .table_curriculum tr:nth-child(even) td{
	background-color:#fcfcfc;
}

#course_detail_contents .table_curriculum p:last-child{
	margin:0;
}

#course_detail_contents .table_curriculum p.title{
	margin:0 0 0.5em;
	font-size:16px;
	font-weight:600;
	color:#21489d;
}

#course_detail_contents .table_curriculum ul{
	margin:0 0 1em;
	padding:0 0 0 1.5em;
}

#course_detail_contents .table_curriculum ul:last-child{
	margin:0;
}

@media only screen and (max-width:900px){
	#course_detail_contents .pic{
		flex-wrap:wrap;
	}
	
	#course_detail_contents .pic div{
		width:100%;
	}
	
	#course_detail_contents .pic figure{
		
	}
}

#course_detail_correction{
	max-width:1200px;
	margin:0 auto;
}

#course_detail_correction>div{
	margin:0 0 8%;
}

#course_detail_correction figure{
	width:90%;
	margin:0 auto;
}

#course_detail_correction figure img{
	width:100%;
}

#course_detail_correction h3{
	text-align:center;
	font-weight:500;
}

#course_detail_correction p{
	max-width:600px;
	margin:0 auto 5%;
}

#course_detail_message{
	max-width:1200px;
	margin:0 auto;
}

#course_detail_message>div{
	display:flex;
	flex-wrap:wrap;
}

#course_detail_message>div>div{
	width:33.333333333%;
	box-sizing:border-box;
	margin:0 0 5%;
	padding:0 2%;
}

#course_detail_message figure{
	width:80%;
	margin:0 auto 1em;
}

#course_detail_message figure img{
	width:100%;
}

#course_detail_message figure figcaption{
	text-align:center;
	font-size:16px;
	font-weight:400;
	color:#333;
}

#course_detail_message p{
	text-align:justify;
}

/*
#course_detail_message>div{
	margin:0 0 5%;
	overflow:hidden;
}

#course_detail_message figure{
	width:25%;
	margin:0 0 2% 4%;
	float:right;
}

#course_detail_message figure img{
	width:100%;
}

#course_detail_message figure figcaption{
	text-align:center;
}

#course_detail_message p{
	text-align:justify;
}

#course_detail_message p.lead{
	margin:0 0 1em;
	font-family: "Noto Serif", serif;
	font-size:22px;
	font-weight:600;
	line-height:1.2;
	color:#21489d;
}
*/

.course_detail_voice{
	max-width:calc(1200px + 4%);
	margin:0 auto;
}

.course_detail_voice>div{
	display:flex;
	flex-wrap:wrap;
}

.course_detail_voice article{
	display:flex;
	width:33.333333333%;
	box-sizing:border-box;
	padding:0 2% 4%;
}

.course_detail_voice article>div{
	padding:25% 8% 10%;
	box-shadow:0px 25px 72px 0px rgba(0, 0, 0, 0.07);
	border-radius:20px;
	background-image:url("../img/interface/bg_voice.png");
	background-repeat:no-repeat;
	background-size:100%;
	background-position:top center;
}

.course_detail_voice.two>div article{
	width:50%;
}

#sub_contents_area .course_detail_voice h3{
	margin:0 0 1em;
	text-align:center;
	font-weight:500;
	line-height:1.4;
}

#sub_contents_area .course_detail_voice h3 span{
	display:block;
	font-size:16px;
	color:#21489d;
}

.course_detail_voice p{
	margin:0;
	text-align:justify;
	font-weight:200;
	line-height:1.6;
}

#course_detail_qa{
	max-width:1000px;
	margin:0 auto 5%;
}

#course_detail_qa h2{
	margin:5em 0 0;
	padding:0 0 2em;
	font-family:"Noto Sans", sans-serif !important;
	border-bottom:1px solid #c6c6c6;
}

#course_detail_qa h2.color01 span{
	border-bottom:4px solid #e57298;
}

#course_detail_qa>article.color01 .q span{
	padding:0 0 20px;
	border-bottom:8px solid #e57298;
}

#course_detail_qa h2.color02 span{
	border-bottom:4px solid #73bee5;
}

#course_detail_qa>article.color02 .q span{
	padding:0 0 20px;
	border-bottom:8px solid #73bee5;
}

#course_detail_qa h2.color03 span{
	border-bottom:4px solid #91da6d;
}

#course_detail_qa>article.color03 .q span{
	padding:0 0 20px;
	border-bottom:8px solid #91da6d;
}

#course_detail_qa h2.color04 span{
	border-bottom:4px solid #f1a56e;
}

#course_detail_qa>article.color04 .q span{
	padding:0 0 20px;
	border-bottom:8px solid #f1a56e;
}


#course_detail_qa h2:first-child{
	margin:0;
}

#course_detail_qa>article{
	display:flex;
	padding:4% 0;
	border-bottom:1px solid #c6c6c6;
}

#course_detail_qa>article:first-of-type{
	border-top:2px solid #000;
}

#course_detail_qa .q{
	padding:0 5%;
}

#course_detail_qa .q span{
	display:block;
	font-size:80px;
	font-weight:800;
	line-height:1;
}

#course_detail_qa .txt p{
	text-align:justify;
	text-indent:1em;
	font-size:16px;
}

#course_detail_qa .txt .title{
	margin:2em 0 3em;
	font-weight:600;
	text-indent:0;
}

#course_detail_qa a.btn_a{
	margin:5% auto 0;
}

#sub_contents_area .padding{
	padding:5% 5% 2%;
}

#sub_contents_area .point{
	display:flex;
	margin:0 0 8%;
}

#sub_contents_area .point section{
	display:flex;
	width:33.3333333333%;
	box-sizing:border-box;
	padding:0 2%;
}

#sub_contents_area .point section div{
	padding:12% 10% 10%;
	background-color:#fcf7d7;
	box-shadow:0px 25px 72px 0px rgba(0, 0, 0, 0.07);
	border-radius:20px;
}

#sub_contents_area .point section h3{
	margin:0 0 1em;
	text-align:center;
	font-weight:500;
}

#sub_contents_area .point section p{
	text-align:justify;
	font-size:14px;
}


/* ABOUT US */

#sub_index_title{
	background:linear-gradient(150deg, #94d5de 0 20%, #cae3cd 70%, #ffe1a8 100%);
}

#sub_index_title h1{
	max-width:1200px;
	margin:0 auto;
	padding:2% 5%;
	font-size:35px;
	font-weight:400;
	line-height:1.3;
}

#sub_index_title a{
	display:block;
	max-width:1200px;
	margin:0 auto;
	padding:2% 5%;
	font-size:35px;
	font-weight:400;
	line-height:1.3;
	color:#000;
}

#aboutus_index_list{
	padding:4% 5%;
	background-color:#f4f4f4;
}

#aboutus_index_list>div{
	max-width:1200px;
	box-sizing:border-box;
	margin:0 auto;
	padding:5%;
	background-color:#fff;
}

#aboutus_index_list section{
	display:flex;
	justify-content:space-between;
	margin:0 0 10%;
}

#aboutus_index_list section>div{
	width:36%;
}

#aboutus_index_list section a{
	width:60%;
}

#aboutus_index_list section:nth-child(odd)>a{
	order:2;
}

#aboutus_index_list section a img{
	width:100%;
}

#aboutus_index_list section h2{
	margin:0 0 1.5em;
	font-size:23px;
	color:#21489d;
}

#aboutus_index_list section p{
	margin:0 0 2.5em;
	text-align:justify;
}

#aboutus_index_list section.history{
	display:block;
	padding:4%;
	background-image:url("../img/interface/bg_history.jpg");
	background-repeat:repeat-x;
	background-size:cover;
	background-position:top center;
}

#aboutus_index_list section.history a{
	color:#444;
}

#aboutus_index_list section.history h2{
	margin:0 0 0.5em;
	text-align:center;
	font-family: "Lora", serif;
	font-size:35px;
	font-weight:400;
	line-height:1.2;
	color:#000;
}

#aboutus_index_list section.history h2 span{
	display:block;
	font-size:17px;
	font-style:italic;
}

#aboutus_index_list section.history p{
	margin:0;
	text-align:center;
	font-size:14px;
	line-height:1.6;
}

#sub_category_title{
	background-color:#e8e8e8;
}

#sub_category_title a{
	display:block;
	max-width:1000px;
	margin:0 auto;
	padding:2% 5%;
	font-size:24px;
	font-weight:400;
	line-height:1.3;
	color:#000;
}

#sub_article_area{
	max-width:1000px;
	margin:5% auto 10%;
	padding:0 5%;
	counter-reset:section;
}

#sub_article_area>a.btn_a{
	margin:0 auto;
}

#sub_article_area .narrow{
	max-width:650px;
	margin:0 auto;
}

#sub_article_area .narrow section{
	margin:15% 0;
}

#sub_article_area .middle{
	max-width:850px;
	margin:0 auto;
}

#sub_article_area .middle section{
	margin:10% 0 15% 0;
}

#sub_article_area h1{
	margin:1em 0;
	text-align:center;
	font-size:70px;
	font-weight:500;
	line-height:1.3;
}

#sub_article_area h1 span{
	font-family: "Lora", serif;
	font-size:90px;
}

#sub_article_area h1.s{
	font-size:40px;
}

#sub_article_area h2{
	margin:0 0 1.5em;
	font-weight:500;
	color:#21489d;
}

#sub_article_area.number h2:before{
	display:inline-block;
	margin:0 0 0 -80px;
	content:counter(section);
	counter-increment:section;
	text-align:right;
	font-family: "Lora", serif;
	font-size:80px;
	font-weight:400;
	line-height:0.8;
	float:left;
}

#sub_article_area.aboutus h3{
	margin:2em 0 1.5em;
	padding:0 0 0.5em;
	font-weight:500;
	border-bottom:3px double #ffe374;
}

#sub_article_area.aboutus h4{
	margin:2em 0 1.2em;
	color:#1f9a5c;
}

#sub_article_area.aboutus h5{
	margin:2em 0 1em;
}

#sub_article_area p{
	text-align:justify;
}

#sub_article_area p.lead{
	margin:0 0 4em;
	font-size:16px;
	font-weight:400;
}

#sub_article_area p.margin{
	margin:0 0 2em;
}

#sub_article_area .middle ol li{
	margin:0 0 1em;
}

#sub_article_area ul.indent{
	list-style-type:none;
	padding:0 0 0 2.2em;
	text-indent:-2em;
	font-size:14px;
}

#sub_article_area p.sign{
	display:table;
	margin:0 0 0 auto;
}

#sub_article_area img{
	width:100%;
}

#sub_article_area figure{
	margin:0;
}

#sub_article_area ul.notes{
	margin:0;
	padding:0 0 0 2.6em;
	text-indent:-2.6em;
	list-style-type:none;
	font-size:13px;
}

#sub_article_area ul.notes li{
	margin:0 0 1em;
}

#sub_article_area .table_column{
	width:100%;
	border-collapse:collapse;
	margin:2em 0;
	background-color:#fff;
	border-top:1px solid #ddd;
	border-left:1px solid #ddd;
}

#sub_article_area .table_column caption{
	margin:0 0 1em;
	font-size:18px;
	color:#21489d;
}

#sub_article_area .table_column th{
	padding:20px 20px;
	border-bottom:1px solid #ddd;
	border-right:1px solid #ddd;
	font-size:14px;
	font-weight:500;
	color:#555;
	white-space:nowrap;
}

#sub_article_area .table_column td{
	padding:20px 20px;
	font-size:15px;
	font-weight:300;
	border-bottom:1px solid #ddd;
	border-right:1px solid #ddd;
}

#sub_article_area .table_column thead th,
#sub_article_area .table_column thead td{
	background-color:#21489d;
	color:#fff;
}



@media only screen and (max-width:900px){
	#sub_article_area.number .narrow section{
		margin:0 5% 15%;
	}

	#sub_article_area.number h2:before{
		margin:0 0 0 -60px;
		font-size:70px;
	}
}

#sub_article_area.history{
	max-width:100%;
	margin:0 auto 10%;
	padding:0;
}

#sub_article_area.history h1{
	margin:0 0 5%;
	padding:4% 4%;
	text-align:center;
	font-family: "Lora", serif;
	font-size:50px;
	font-weight:400;
	line-height:1.2;
	background-image:url("../img/interface/bg_history.jpg");
	background-repeat:repeat-x;
	background-size:cover;
	background-position:top center;
}

#sub_article_area.history h1 span{
	display:block;
	font-size:20px;
	font-style:italic;
}

#sub_article_area.history .narrow{
	padding:0 5%;
}

#sub_article_area.history .narrow section{
	margin:10% 0 10%;
	padding:0 0 10%;
	border-bottom:0.5px solid #d9d9d9;
}

#sub_article_area.history h2{
	margin:0 0 0.5em;
	text-align:center;
	font-family: "Lora", serif;
	font-size:90px;
	font-weight:400;
	line-height:1;
}

#sub_article_area.history p.title{
	margin:0 0 0.5em;
	font-family: "Noto Serif", serif;
	font-size:25px;
	font-weight:600;
	line-height:1.5;
}

#sub_article_area.history p.title span{
	display:block;
	font-family: "Lora", serif;
	font-size:16px;
	font-weight:400;
	font-style:italic;
}


#sub_article_area.column h1{
	margin:1em 0 0.5em;
	text-align:left;
	font-size:40px;
	font-weight:400;
	line-height:1.3;
}

#sub_article_area.column h3{
	margin:0 0 0.5em;
	font-size:16px;
	font-weight:600;
	line-height:1.7;
	color: #21489d;
}

#sub_article_area.column ul{
	padding: 0;
	list-style-type: none;
	line-height: 1.8;
}

#sub_article_area.column ul.list{
	padding: 0 0 1em 1em;
	list-style-type: disc;
}

#column_index_list{
	padding:4% 5%;
	background-color:#f4f4f4;
}

#column_index_list>div{
	display:flex;
	flex-wrap:wrap;
	max-width:1200px;
	box-sizing:border-box;
	margin:0 auto;
	padding:5% 3%;
	background-color:#fff;
}

#column_index_list article{
	width:33.33333333333%;
	box-sizing:border-box;
	padding:0 2%;
}

#column_index_list article img{
	width:100%;
	vertical-align:bottom;
}

#column_index_list article h2{
	margin:0.5em 0 3em;
	font-size:22px;
}

#column_index_list.home{
	padding:4% 5% 10%;
}

#column_index_list.home>div{
	padding:0;
	background-color:transparent;
}

#column_index_list.home a.btn_a{
	display:table;
	margin:0 auto;
	background-color:#fff;
}

#column_index_list.home h2{
	font-family:"Noto Serif", serif;
	text-align:center;
}

#column_index_list article h3{
	margin:0.5em 0 3em;
}


#sub_article_area .feature{
	display:flex;
	margin:0 0 15%;
}

#sub_article_area .feature section{
	display:flex;
	width:33.3333333333%;
	box-sizing:border-box;
	padding:0 2%;
}

#sub_article_area .feature section div{
	padding:12% 10% 10%;
	background-color:#fcf7d7;
	border-radius:10px;
	position:relative;
}

#sub_article_area .feature section h3{
	margin:0 0 1em;
	text-align:center;
	font-weight:500;
}

#sub_article_area .feature section h3 span{
	width:100%;
	position:absolute;
	top:-5%;
	left:0;
}

#sub_article_area .feature section h3 span img{
	width:40%;
}

#sub_article_area .principal{
	margin:0 0 15%;
}

#sub_article_area .principal h2{
	text-align:center;
}

#sub_article_area .principal section{
	display:flex;
	justify-content:space-between;
}

#sub_article_area .principal section>figure{
	width:35%;
	order:2;
}

#sub_article_area .principal section>div{
	width:60%;
}

#sub_article_area .principal h3{
	margin:0 0 1em;
	font-family: "Noto Serif", serif;
}

#sub_article_area .principal h3 span{
	display:block;
	margin:0 0 0.5em;
	font-size:14px;
	font-weight:400;
}

#sub_article_area .principal p{
	margin:0 0 2em;
}

#sub_article_area .teacher_list{
	width:104%;
	position:relative;
	left:-2%;
}

#sub_article_area .teacher_list h2{
	text-align:center;
}

#sub_article_area .teacher_list>p{
	text-align:center;
	font-size:13px;
}

#sub_article_area .teacher_list>div{
	display:flex;
	flex-wrap:wrap;
}

#sub_article_area .teacher_list>div a{
	width:29.3333333333%;
	margin:2% 2%;
}

#sub_article_area .teacher_list figure figcaption span{
	display:inline-block;
	margin:0 0.2em 0 0;
	font-size:18px;
}

#sub_article_area .teacher_detail{
	display:flex;
	justify-content:space-between;
	margin:0 0 5%;
}

#sub_article_area .teacher_detail>figure{
	width:40%;
	order:2;
}

#sub_article_area .teacher_detail>div{
	width:56%;
}

#sub_article_area .teacher_detail section{
	margin:10% 0;
}

#sub_article_area .teacher_detail h1{
	margin:0 0 1em;
	text-align:left;
	font-family: "Noto Serif", serif;
	font-size:40px;
	color:#333;
}

#sub_article_area .teacher_detail h1 ruby > rt{
	font-size:13px;
}

#sub_article_area .teacher_detail h1 span:first-child{
	display:block;
	margin:0 0 0.5em;
	font-size:16px;
	font-weight:400;
}

#sub_article_area .teacher_detail h1 span:last-child{
	display:inline-block;
	margin:0 0 0 0.5em;
	font-size:14px;
	font-weight:400;
}

#sub_article_area .teacher_detail h2{
	margin:0 0 1.5em;
	color:#21489d;
}

#sub_article_area .teacher_detail ul.course_list{
	margin:0;
	padding:0 0 0 2em;
}

#sub_article_area .teacher_detail ul.course_list li{
	margin:0 0 1em;
}

#sub_article_area .book_list{
	width:104%;
	position:relative;
	left:-2%;
}

#sub_article_area .book_list a.btn_a{
	display:table;
	margin:0 auto;
}

#sub_article_area .book_list h2{
	text-align:center;
}

#sub_article_area .book_list>div#book_list_description>p{
	text-align:justify;
	font-size:14px;
}

#sub_article_area .book_list>div{
	display:flex;
	flex-wrap:wrap;
	margin:0 0 5%;
}

#sub_article_area .book_list>div#book_list_description{
	display:block;
	margin:0 0 5%;
	overflow:hidden;
}

#sub_article_area .book_list>div#book_list_description>img{
	float:right;
	width:50%;
	margin:0 0 3% 3%;
}

#sub_article_area .book_list>div a{
	width:21%;
	margin:2% 2%;
}

#sub_article_area .book_list figure figcaption span{
	display:inline-block;
	margin:0 0 0.2em;
	font-size:16px;
}

#sub_article_area .book_detail{
	display:flex;
	justify-content:space-between;
	margin:0 0 5%;
}

#sub_article_area .book_detail>figure{
	width:30%;
	order:2;
}

#sub_article_area .book_detail>figure img{
	border:1px solid #eee;
}

#sub_article_area .book_detail>div{
	width:66%;
}

#sub_article_area .book_detail section{
	margin:10% 0;
}

#sub_article_area .book_detail h1{
	margin:0 0 1em;
	text-align:left;
	font-family: "Noto Serif", serif;
	font-size:35px;
	color:#333;
}

#sub_article_area .book_detail h1 span{
	display:block;
	margin:0.5em 0 0;
	font-size:16px;
	font-weight:400;
}

#sub_article_area .book_detail h1 span:last-child{
	font-family:"Noto Sans", sans-serif;
	font-size:14px;
}

#sub_article_area .book_detail h2{
	margin:0 0 1.5em;
	color:#21489d;
}

#sub_article_area .book_detail p{
	text-indent:1em;
}

#sub_article_area.solution{
	max-width:1200px;
}

#sub_article_area.solution h1{
	margin:0 0 2em;
	text-align:left;
	font-size:40px;
}

#sub_article_area.solution h2{
	color:#333;
}

#sub_article_area.solution h3{
	color:#21489d;
}

#sub_article_area.solution h4{
	color:#1f9a5c;
}

#sub_article_area.solution h5{
	margin:2em 0 0.5em;
}

#sub_article_area.solution ul li{
	margin:0 0 0.5em;
}

#sub_article_area.solution ol li{
	margin:0 0 0.5em;
}

#sub_article_area.solution .pic>div{
	display:flex;
	justify-content:space-between;
}

#sub_article_area.solution .pic>div>div{
	width:56%;
}

#sub_article_area.solution .pic figure{
	width:40%;
	margin:0;
}

#sub_article_area.solution .pic figure img{
	width:100%;
	margin:0 0 2em;
}

#sub_article_area.solution section section{
	margin:10% 0;
}

#sub_article_area.solution section section section{
	margin:0 0 10%;
}

#sub_article_area.contact .narrow>div{
	margin:0 0 15%;
}

#sub_article_area.contact a.btn_c{
	max-width:350px;
	margin:0 auto;
}

#sub_article_area.contact address{
	text-align:center;
	font-style:normal;
}

#sub_article_area.contact p{
	margin:0 0 1.5em;
	text-align:center;
}

#sub_article_area.contact a.btn_tel{
	padding:0 0 0 80px;
	font-size:45px;
	font-weight:600;
	color:#000;
	background-image:url("../img/interface/ico_fd.png");
	background-repeat:no-repeat;
	background-size:70px;
	background-position:left center;
}

#sub_article_area .ceo{
	display:flex;
	justify-content:space-between;
	margin:0 0 10%;
}

#sub_article_area .ceo>figure{
	width:35%;
	order:2;
}

#sub_article_area .ceo>div{
	width:60%;
}

#sub_article_area .ceo p{
	margin:0 0 2em;
}

#sub_article_area .btn_area{
	display:flex;
	justify-content:center;
}

#sub_article_area .btn_area>div{
	width:33.333333333333%;
	box-sizing:border-box;
	padding:0 2%;
}

#sub_article_area .btn_area>div a{
	width:100%;
	box-sizing:border-box;
}

#sub_article_area .company_detail{
	margin:0 0 10%;
}

#sub_article_area .company_detail h1{
	margin:0 0 1em;
	text-align:left;
	font-family: "Noto Serif", serif;
	font-size:40px;
	color:#333;
}

#sub_article_area .table_basic{
	width:100%;
	border-collapse:collapse;
	margin:2em 0;
	background-color:#fff;
	border-top:1px solid #ddd;
}

#sub_article_area .table_basic th{
	width:30%;
	padding:25px 20px;
	border-bottom:1px solid #ddd;
	font-size:14px;
	font-weight:400;
	color:#444;
	white-space:nowrap;
}

#sub_article_area .table_basic th:last-child{
	border-right:none;
}

#sub_article_area .table_basic td{
	padding:25px 20px;
	font-size:15px;
	font-weight:300;
	border-bottom:1px solid #ddd;
}

sub_article_area .table_basic tr:nth-child(even) th{
	background-color:#fcfcfc;
}

sub_article_area .table_basic tr:nth-child(even) td{
	background-color:#fcfcfc;
}
