@charset "UTF-8";
/* ===================================================================
CSS information
 file name  :  common.css
 style info :  全ページ cssの定義
 header/footer/top
=================================================================== */
/*body{
	font-size: 16px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}
@media only screen and (max-width: 979px) {
	body{
		font-size: 14px;
	}	
}*/
.sp_on{display: none;}
@media only screen and (max-width: 690px) {
.sp_on{display: block;}
}
/*----------------------
グランド TOP
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/
/*----------------------------
header
------------------------------*/
/*.logo_sub_img{width: 240px;}
.logo_sub_img img{height: 46px;}*/
.logo_sub_img a{display: block;line-height: 1;}
/*.header_navi ul li a, .header_navi ul li.nav04{padding-top: 40px;background-size: 30px auto;}*/
.header_navi ul li a{background-size: 30px auto;}
/*.header_navi li{background-repeat: no-repeat;}*/
.header_navi li.nav01_n a {background-image: url(../image/common/header_icon01.png);}
.header_navi li.nav02_n a {background-image: url(../image/common/n_header_icon02.png);}
.header_navi li.nav05_n a {background-image: url(../image/common/n_header_icon05.png);}
.header_navi li.nav06_n a {background-image: url(../image/common/n_header_icon06.png);}
.header_navi li.nav03_n a {background-image: url(../image/common/header_icon03.png);}
.header_navi li.nav03_n.on a {background-image: url(../image/common/header_icon02_on.png);}
.header_navi li.nav04_n {
	background-image: url(../image/common/n_header_icon04.png);
	box-shadow: 0 0 5px 3px rgba(0,0,0,.1);
	background-color: #00448D;
	width: 105px;
	height: 105px;
	background-position: center 40%;
	margin-top: -30px;
	padding-top: 65px;
	text-align: center;
	font-size: 17px;
	letter-spacing: .05em
	font-weight: bold;
	color: #ffffff;
}
.header_navi li.nav04_n.green{background-color: #077F83;}
body.is-fix .header_navi li.nav04_n{margin-top: 0;}

.header_navi ul li.current a{color: #077F83;}

@media only screen and (max-width: 979px) {
	.header_navi li.nav04_n.green{
		background-color: #ffffff;
		background-image: url(../image/common/header_icon04.png);
		background-size: 20px auto;
		font-size: 11px;
		padding-top: 32px;
		background-position: center 12px;
		color: #000000;
	}
/*	.header_area{margin-left: 0;max-width: 100%;}
	.logo_sub{display: flex;align-items: center;justify-content: center;}
	.logo_sub_img{width: 160px;margin: 0;position: static;}
	.logo_sub_txt{margin-left: 10px;}
	.logo_sub_txt p:first-child{

		font-size: 10px;
	}
	.logo_sub_txt p:last-child{
		position: static;
		transform:translateY(0);
		font-size: 10px;
	}
	.logo_sub_img img{height: 30px;}*/
	.logo_sub_txt.grand p:last-child{
		position: static;
		transform: translateY(0);
	}
	.header_navi ul li a, .header_navi ul li.nav04{background-size: 20px auto;}
	.header_navi li.nav04_n {
		background-size: 20px auto;
		width: 25%;
		height: auto;
		background-position: center 30%;
		margin-top: 0;
		padding-top: 35px;
		font-size: 11px;
		box-shadow: none;
		background-color: #ffffff;
		color: #000000;
		background-image: url(../image/common/header_icon04.png);
	}
/*	.header_navi ul li{padding: 10px;}*/
/*	.header_navi ul li a{padding-top: 27px;}*/
}


/*----------------------------
top mainimage
------------------------------*/
.topmain_area {
	background-image: url(../image/n_mainimage.jpg);
	height: 640px;
}
.topmain_area.green {
	background-image: url(../image/common/tt_top_mainimage_logo.png), url(../image/tt_top_mainimage.jpg);
	background-position: left center, 45% center;
	background-size: auto 100%, cover;
	background-repeat: no-repeat;
}
body#top #container{margin-top: 0;}
.topmain_area_sp,.sp_logo{display: none;}
.topmain_catch_l h1{
	font-size: 40px;
	line-height: 1.3;
	color: #ffffff;
	text-shadow: #000 2px 2px 4px;
}
.topmain_catch_l h1 sup{
	margin-left: 0;
	line-height: 1;
}
.topmain_catch_l{
	display: inline-block;
	margin-bottom: 40px;
}
.green .topmain_catch_l h1{
	font-size: 52px;
	line-height: 1.3;
	color: #ffffff;
	text-shadow: none;
}
.green .topmain_catch_l h1 sup{
	margin-left: 0;
	line-height: 1;
}
.green .topmain_catch_l{
	padding-bottom: 10px;
	border-bottom: 2px solid #F7B524;
	display: inline-block;
	margin-bottom: 40px;
	margin-left: 4.5%;
}
@media only screen and (max-width: 1200px) {
.green .topmain_catch_l{
	margin-left: 7%;
}
}
@media only screen and (max-width: 979px) {
	.topmain_area {
		height: 600px;
		background-position: center bottom;
	}
	.topmain_catch_l img {
		width: 460px;
		height: auto;
	}
	.green .topmain_catch_l h1{
		font-size: 40px;
	}
	.topmain_catch_l h1{
		font-size: 40px;
	}
	.topmain_area.green {
		background-position: left center, 55% center;
		background-size: auto 80%, cover;
	}
	.green .topmain_catch_l{
		margin-left: 10%;
	}
	/*.green .topmain_catch_l img{width: 320px;}*/
}
@media only screen and (max-width: 690px) {
	.topmain_area {
		height: 280px;
	}
	.topmain_catch_l img {
		width: 240px;
	}
	.topmain_area.green {
		background-image: url(../image/tt_top_mainimage_sp.jpg);
		position: relative;
		background-position: center top;
		background-size: cover;
	}
	.sp_logo{
		display: block;
		position: absolute;
		bottom: 10px;
		right: 25%;
	}
	.sp_logo img{
		width: 80px;
		height: auto;
	}
	.green .topmain_catch_l{display: none;}
	.topmain_area_sp{
		display: block;
		text-align: center;
		padding: 20px 10px;
		background-color: #077F83;
		color: #ffffff;
		letter-spacing: .1em;
		font-size: 22px;
		font-weight: bold;
	}
	.topmain_catch_l h1{
		font-size: 22px;
	}
}


/*----------------------------
important info
------------------------------*/
.info_block {
	max-width: 1060px;
	width: 90%;
	margin: auto auto 0;
	box-shadow: 0 0px 3px 3px rgba(0, 0, 0, 0.08);
	background-color: #ffffff;
	border: 1px solid #eeeeee; 
	display: flex;
	align-items: center;
	padding: 5px;
	position: relative;
	z-index: 1;
}
.info_title {
	text-align: center;
	width: 240px;
	background-color: #F7F7F7;
	position: relative;
	padding: 20px 0;
	display: flex;
	align-content: center;
	flex-wrap: wrap;
}
.info_title_jp{
	font-size: 26px;
	font-weight: bold;
	width: 100%;
	letter-spacing: .15em;
}
.info_title_en{
	font-weight: bold;
	color: #F7B524;
	width: 100%;
	line-height: 1;
	letter-spacing: .1em;
}
.info_rss {
	padding: 10px 0;
	width: calc(100% - 240px);
}
.info_rss dl {
	padding: 15px 5%;
}
.rss_title a{display: block;}
.rss_title a::after{
	content: "";
	display: block;
	clear: both;
}
.rss_title a:hover{text-decoration: none;color: #00448D;}
.rss_title span{
	display: block;
	float: left;
	margin-right: 10px;
}
.info_rss .rss_contents,
.info_rss .rss_date{
	display: none;
	text-align: center;
}
span.rss_icon{
	display: block;
	color: #ffffff;
	line-height: 1;
	background-color: #FF0000;
	padding: 0 0 0 10px;
	width: 100px;
	line-height: 22px;
	height: 22px;
	position: relative;
	text-align: center;
	margin-right: 30px;
	font-weight: bold;
	font-size: 12px;
}
span.rss_icon::after{
	content: "";
	position: absolute;
	right: -22px;
	top: 0;
	width: 0;
	height: 0;
	border-top: solid 11px transparent;
	border-right: solid 11px transparent;
	border-bottom: solid 11px transparent;
	border-left: solid 11px #FF0000;
}

@media only screen and (max-width: 	979px) {
	.info_title {
		width: 160px;
	}
	.info_title_jp{
		font-size: 24px;
	}
	.info_rss {
		width: calc(100% - 160px);
	}
	.info_rss dl{
		padding: 10px 5%;
	}
	.rss_title span{
		float: none;
		width: 100%;
	}
	span.rss_icon{
		width: 100px;
		margin-bottom: 5px;
		font-size: 12px;
		line-height: 22px;
		height: 22px;
	}
	span.rss_icon::after{
		content: "";
		position: absolute;
		right: -22px;
		top: 0;
		width: 0;
		height: 0;
		border-top-width: 11px;
		border-right-width: 11px;
		border-bottom-width: 11px;
		border-left-width: 11px;
	}
}
@media only screen and (max-width: 690px) {
	.info_area{
		padding-bottom: 10px;
		padding-top: 30px;
		background-color: #EBF0F7;
	}
	.info_block{
		flex-wrap: wrap;
	}
	.info_title {
		width: 100%;
	}
	.info_title_jp{
		font-size: 20px;
	}
	.info_title_en{
		width: 100%;
		font-size: 12px;
	}
	.info_rss {
		padding: 10px 0;
		width: 100%;
	}
}
/*----------------------------
top info
------------------------------*/
#oinfo_area{
	background-color: #EBF0F7;
	padding: 140px 0 100px;
}
.oinfo_block{
	max-width: 1060px;
	width: 90%;
	margin: auto auto 0;
	display: flex;
}
.oinfo_col{
	width: 48%;
	background-color: #ffffff;
	box-shadow: 0 0px 3px 3px rgba(0, 0, 0, 0.08);
}
.oinfo_col + .oinfo_col{
	margin-left: 4%;
}
.oinfo_title{
	padding: 20px 10px 20px 30px;
	display: flex;
	align-items: center;
	background-color: #00448D;
	color: #ffffff;
	font-size: 24px;
	font-weight: bold;
	border-bottom: 3px solid #F7B524;
	line-height: 1;
}
.oinfo_title .in{
	font-size: 14px;
	color: #F7B524;
	padding-left: 15px;
}
.oinfo_list{
	padding: 0 10px;
}
.oinfo_list dl{
	position: relative;
	padding: 20px 15px;
}
.oinfo_list dl:nth-child(even){
	background-color: #f5f5f5;
}
.oinfo_list .rss_contents{
	display: none;
	text-align: center;
}
.oinfo_list .rss_date{
	color: #7A7A7A;
	font-weight: bold;
}
.oinfo_list .rss_title span{
	width: 100%;
	margin-top: 10px;
}
.oinfo_list .rss_title span.rss_icon{
	position: absolute;
	left: 110px;
	width: 100px;
	top: 20px;
	font-size: 12px;
	line-height: 22px;
	height: 22px;
	margin-right: 0;
	margin-top: 0;
}
span.rss_icon::after{
	content: "";
	position: absolute;
	right: -22px;
	border-top-width: 11px;
	border-right-width: 11px;
	border-bottom-width: 11px;
	border-left-width: 11px;
}
.oinfo_btn{
	padding: 15px 0;
	border-top: 2px solid #eeeeee; 
	display: flex;
	justify-content: center;
	margin-top: 20px;
}
.oinfo_btn a{
	display: block;
	margin: 0 20px;
}
.oinfo_btn a .in{
	position: relative;
	padding-left: 25px;
	color: #00448D;
	font-weight: bold;
}
.oinfo_btn a .in::before,
.oinfo_btn a .in::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.oinfo_btn a .in::before{
	box-sizing: border-box;
	width: 16px;
	height: 16px;
	border: 1px solid #00448D;
	border-radius: 50%;
}
.oinfo_btn a .in::after{
	left: 4px;
	width: 4px;
	height: 4px;
	border-top: 1px solid #00448D;
	border-right: 1px solid #00448D;
	transform: rotate(45deg);
}
.tablist{display: none;}

/* test takers ----------------*/
#oinfo_area.green{background-color: #EAF5F6;}
.green .oinfo_title{background-color: #077F83;}
.green .oinfo_btn a .in{color: #077F83;}
.green .oinfo_btn a .in::before{border-color: #077F83;}
.green .oinfo_btn a .in::after{border-top-color: #077F83;border-right-color: #077F83;}

@media only screen and (max-width: 979px) {
	#oinfo_area{padding: 160px 0 60px;}
	.oinfo_title{
		font-size: 20px;
		padding-left: 20px;
		flex-wrap: wrap;
	}
	.oinfo_title .in{
		padding-left: 0;
		width: 100%;
		font-size: 12px;
		margin-top: 8px; 
	}
	.oinfo_list dl{padding: 15px 10px;}
	.oinfo_list .rss_title span.rss_icon{
		top: 15px;
		left: 95px;
	}
	.oinfo_btn a{margin: 0 10px;}
}
@media only screen and (max-width: 690px) {
	#oinfo_area{padding: 20px 0 40px;}
	.oinfo_title{display: none;}
	.tablist{
		display: block;
		width: 90%;
		margin: auto auto 0;
		display: flex;
	}
	.tablist .tab{list-style: none;}
	.tablist .tab a{
		display: block;
		padding: 15px 20px;
		background-color: #00448D;
		color: #ffffff;
		font-weight: bold;
		border-bottom: 3px solid #00448D;
		line-height: 1;
	}
	.tablist .tab + .tab{margin-left: 2px;}
	.tablist .tab.active a{
		border-bottom-color: #F7B524;
	}
	.tabcon {display: none;}
	.tabcon.active {display: block;}
	.oinfo_col{width: 100%;}
	.oinfo_col + .oinfo_col{margin-left: 0;}

	/* test takers ----------------*/
	.green .tablist .tab a{
		background-color: #077F83;
		border-bottom-color: #077F83;
	}
	.green .tablist .tab.active a{
		border-bottom-color: #F7B524;
	}
}

/*----------------------------
top lowerent_area
------------------------------*/
.lowerent_block {
	position: relative;
	height: 470px;
	overflow: hidden;
}
.lowerent_txt {
	height: 100%;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 2;
	display: flex;
	align-items: center;
}
.lowerent_txt_in {
	padding: 50px 10px 50px;
	width: 100%;
	transition: all .4s ease 0s;
	background-position: center bottom;
}
.lowerent_title {
	text-align: center;
	margin-bottom: 30px;
	padding-top: 80px;
	background-position: center top;
	background-repeat: no-repeat;
}
.lowerent_title.leleft{background-image: url(../image/n_top_lowerent_icon01.png);}
.lowerent_title.leright{background-image: url(../image/n_top_lowerent_icon02.png);}
.lowerent_title .in{
	text-align: center;
	border-bottom: 2px solid #F7B524;
	padding-bottom: 10px;
	font-weight: bold;
	font-size: 34px;
	color: #ffffff;
}
.lowerent_subtxt {
	text-align: center;
	padding: 0 3em 0 3em;
	color: #ffffff;
}
.lowerent_bg {
	height: 100%;
	position: absolute;
	top: 0;
	background-color: rgba(0, 0, 0, 0.4);
	width: 100%;
	z-index: 1;
}
.lowerent_img {
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	z-index: 0;
	transition: all .4s ease 0s;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.lowerent_img01 {background-image: url(../image/n_top_lowerent_img01.jpg);}
.lowerent_img02 {background-image: url(../image/n_top_lowerent_img02.jpg);}
.lowerent_block:hover .lowerent_bg {background-color: rgba(0, 0, 0, 0.4);}
.lowerent_block:hover .lowerent_bg::after {opacity: 1;}
.lowerent_block:hover .lowerent_img {
	-webkit-filter: blur(5px);
	filter: blur(5px);
	transform: scale(1.05);
}
.lowerent_btn a{
	display: block;
	max-width: 320px;
	background-color: #00448D;
	color: #ffffff;
	padding: 10px;
	width: 80%;
	margin: 30px auto 0;
	text-align: center;
	padding-left: 15px;
	text-decoration: none;
	font-weight: bold;
}
.lowerent_btn a .in{position: relative;font-weight: bold;}
.lowerent_btn a .in::before{
	content: '';
	width: 4px;
	height: 4px;
	border: 0px;
	border-width: 2px 2px 0 0;
	border-color: #ffffff;
	border-style: solid;
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 3px);
	left: -15px;
}
.lowerent_block:hover .lowerent_btn a,
.lowerent_btn a:hover{
	background-color: #ffffff;
	color: #00448D;
}
.lowerent_block:hover .lowerent_btn a .in::before,
.lowerent_btn a:hover .in::before{border-color: #00448D;}
@media only screen and (max-width: 979px) {
	.lowerent_title .in{font-size: 28px;}
}
@media only screen and (max-width: 690px) {
	#lowerent_area{margin-top: 30px;margin-bottom: 20px;}
	.lowerent_block {
		height: 250px;
		width: 94% !important;
		margin: 0 auto 10px !important;
	}
	.lowerent_title .in{font-size: 24px;}
	.lowerent_title {margin-bottom: 0;font-size: 20px;background-size: 60px auto;padding-top: 65px;}
	.lowerent_subtxt {display: none;}
}


/*----------------------------
top info
------------------------------*/
.product_titlearea{
	padding: 60px 0 140px;
	background-color: #00448D;
	margin-top: -1px;
}
.product_titleblock{
	max-width: 1000px;
	margin: auto;
	width: 94%;
	text-align: center;
}
.product_title {
	text-align: center;
	margin-bottom: 30px;
	padding-top: 80px;
	background-position: center top;
	background-repeat: no-repeat;
	background-image: url(../image/n_top_product_icon01.png);
}
.product_title .in{
	text-align: center;
	border-bottom: 2px solid #F7B524;
	padding-bottom: 10px;
	font-weight: bold;
	font-size: 34px;
	color: #ffffff;
}
.product_txt{
	color: #ffffff;
}
.product_block{
	margin: -90px auto 0;
	max-width: 1200px;
	width: 94%;
}
.product_block .product_col{
	background-color: #ffffff;
	padding: 20px;
	box-shadow: 0 0px 3px 3px rgba(0, 0, 0, 0.08);
	width: calc(33.33333% - 30px);
	margin-right: 45px;
	margin-bottom: 0;
}
.product_subtitle{
	margin: 20px auto 10px;
	text-align: center;
	font-weight: bold;
	font-size: 20px;
}
.product_btn{margin-top: 20px;}
.product_btn a{
	display: block;
	background-color: #00448D;
	color: #ffffff;
	padding: 10px;
	padding-left: 10px;
	width: 100%;
	margin: 0 auto 0;
	text-align: center;
	padding-left: 15px;
	text-decoration: none;
	font-weight: bold;
	border: 1px solid #00448D; 
}
.product_btn a .in{position: relative;}
.product_btn a .in::before{
	content: '';
	width: 4px;
	height: 4px;
	border: 0px;
	border-width: 2px 2px 0 0;
	border-color: #ffffff;
	border-style: solid;
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 3px);
	left: -15px;
}
.product_btn a:hover{
	background-color: #ffffff;
	color: #00448D;
}
.product_btn a:hover .in::before{border-color: #00448D;}
@media only screen and (max-width: 979px) {
	.product_title .in{
		font-size: 28px;
	}
	.product_block .product_col{
		width: calc(50% - 20px);
		margin-right: 40px;
		margin-bottom: 40px;
	}
	.product_block .product_col:nth-child(2n){
		margin-right: 0;
	}
	.product_subtitle{font-size: 18px;}
}
@media only screen and (max-width: 690px) {
	.product_titlearea{
		padding: 20px 0 120px;
		margin-top: 0;
	}
	.product_title .in{
		font-size: 24px;
	}
	.product_block .product_col{
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
	.product_subtitle{font-size: 16px;}
	.product_btn{margin-top: 10px;}
	.product_title {
		margin-bottom: 20px;
		padding-top: 60px;
		background-size: 60px auto;
	}
	.product_title .in{
		font-size: 24px;
	}
}


/*----------------------------
top activity
------------------------------*/
#activity_area{
	background-color: #EBF0F7;
	padding: 60px 0 40px;
	margin: 80px auto 60px;
}
.activity_title {
	text-align: center;
	margin-bottom: 50px;
}
.activity_title .in{
	text-align: center;
	border-bottom: 2px solid #F7B524;
	padding-bottom: 10px;
	font-weight: bold;
	font-size: 34px;
	color: #00448D;
}
.activity_block{
	max-width: 1200px;
	width: 94%;
	margin: auto;
	display: flex;
	flex-wrap: wrap;
}
.activity_block .col{padding: 10px 15px;}
.activity_block.noslide .col{
	width: calc(33.33333% - 30px);
	margin-right: 45px;
	margin-bottom: 45px;
}
.activity_block.noslide .col:nth-child(3n){
	margin-right: 0;
}
.activity_subtitle{
	margin: 20px 0 10px;
	font-size: 20px;
}
.activity_btn{margin-top: 20px;}
.activity_btn a{
	display: inline-block;
	background-color: #ffffff;
	color: #00448D;
	padding: 10px;
	padding-left: 10px;
	width: 60%;
	text-align: center;
	padding-left: 15px;
	text-decoration: none;
	font-weight: bold;
	border: 1px solid #00448D; 
}
.activity_btn a .in{position: relative;}
.activity_btn a .in::before{
	content: '';
	width: 4px;
	height: 4px;
	border: 0px;
	border-width: 2px 2px 0 0;
	border-color: #00448D;
	border-style: solid;
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 3px);
	left: -15px;
}
.activity_btn a:hover{
	background-color: #00448D;
	color: #ffffff;
}
.activity_btn a:hover .in::before{border-color: #ffffff;}
	.activity_block .slick-prev,
	.activity_block .slick-next{
		top: calc(50% + 30px);
		height: 40px;
		width: 30px;
	}
	.activity_block .slick-next::before,
	.activity_block .slick-prev::before{
		height: 40px;
		width: 30px;
	}
	.activity_block .slick-next::after,
	.activity_block .slick-prev::after {
		position: absolute;
		top: 10px;
		content: "";
		width: 20px;
		height: 20px;
		border-top-width: 2px;
		border-top-style: solid;
		border-right-width: 2px;
		border-right-style: solid;
		border-color: #333333;
	}
	.activity_block .slick-prev {left: -20px;}
	.activity_block .slick-next {right: -20px;}

/* test takers ----------------*/
#voice_area {background-color: #EAF5F6;padding: 70px 0 80px;}
#activity_area.green{background-color: transparent;padding: 0;}
.green .activity_title .in{color: #008085;}
.green .activity_subtitle{text-align: center;}
.green .activity_btn a{
	background-color: #077F83;
	color: #ffffff;
	border-color: #077F83;
}
.green .activity_btn a{display: block;width: 100%;max-width: 420px;margin-left: auto;margin-right: auto;}
.green .activity_btn a .in::before{border-color: #ffffff;}
.green .activity_btn a:hover{background-color: #ffffff;color: #077F83;}
.green .activity_btn a:hover .in::before{border-color: #077F83;}
.voice_zoku{
	font-size: 80%;
	padding: 5px 15px;
	border: 1px solid #077F83;
	color: #077F83;
	margin-top: 25px;
	margin-bottom: 15px;
	line-height: 1;
	display: inline-block;
}
.voice_subtitle{
	font-weight: bold;
	font-size: 16px;
}
#voice_area .col_in{
	padding: 25px 25px 40px 25px;
	box-shadow: 0 0 5px 2px rgba(0,0,0,.1);
	background-color: #ffffff;
	text-align: left;
	min-height: 345px;
}
#voice_area .img100{border-bottom: 2px solid #077F83;}

@media only screen and (max-width: 979px) {
	#activity_area{
		padding: 40px 0 50px;
		margin: 20px auto 50px;
	}
	.activity_block .col,
	.activity_block.noslide .col,
	.activity_block.noslide .col:nth-child(3n){
		width: 100%;
		margin-right: 0;
		margin-bottom: 0;
		text-align: center;
	}
	.activity_title .in{font-size: 28px;}

	/* test takers ----------------*/
	#activity_area.green{margin: 50px auto 60px;}
	#voice_area {padding: 40px 0 50px;}
}
@media only screen and (max-width: 690px) {
	#activity_area{
		padding: 30px 0 20px;
		margin: 20px auto 30px;
	}
	.activity_title {margin-bottom: 30px;}
	.activity_title .in{font-size: 24px;}
	.activity_subtitle{font-size: 18px;}
	.activity_block .slick-prev {left: -10px;}
	.activity_block .slick-next {right: -10px;}
	.activity_block .col{padding: 10px 30px;}

	/* test takers ----------------*/
	#activity_area.green{margin: 30px auto 40px;}
	#voice_area {padding: 30px 0 40px;}

}

/*----------------------------
top Recommended
------------------------------*/
.reco_title{
	text-align: center;
	margin-bottom: 50px;
}
.reco_title .in{
	text-align: center;
	border-bottom: 2px solid #F7B524;
	padding-bottom: 10px;
	font-weight: bold;
	font-size: 34px;
	color: #00448D;
}
.reco_title.green .in{color: #077F83;}
.mainimage .swiper-btn{
	background-color: #00448D;
	position: absolute;
	width: 100%;
	padding: 10px;
	left: 0;
	bottom: 0;
	margin: auto;
}
.mainimage .swiper-btn{background-color: #00448D;}
.mainimage .swiper-button-prev,
.mainimage .swiper-container-rtl .swiper-button-next{
	background-image: url("../image/common/n_icon_arr_prev.png");
}
.mainimage .swiper-button-next,
.mainimage .swiper-container-rtl .swiper-button-next{
	background-image: url("../image/common/n_icon_arr_next.png");
}
.mainimage .swiper-pagination-bullet-active{background-color: #F7B524;}
/*.mainimage .swiper-container{max-width: 100%;}*/
.hl_bg{	height: 500px;}

.green .hl_bg{background-color: #EAF5F6;}
.mainimage.green .swiper-btn{background-color: #077F83;}

/* test takers ----------------*/
/*.reco_title .in{
	color: #077F83;
}*/

@media only screen and (max-width: 979px) {
	.reco_title .in{font-size: 28px;}
}
@media only screen and (max-width: 690px) {
	.reco_title {margin-bottom: 30px;}
	.reco_title .in{font-size: 24px;}
	.mainimage{margin-bottom: 0;}
}

/*----------------------------
footer
------------------------------*/
.fgnav_block > ul > li{margin-bottom: 30px;}
.fgnav_block > ul > li.nolink_l .in{
	font-weight: bold;
	font-size: 16px; 
}
.fgnav_block > ul > li > a{border: none;padding-left: 0;}
.fgnav_block li:first-child a{padding-top: 0;}
.fgnav_block li:last-child a{padding-bottom: 0;}
.fgnav_block ul ul{margin-top: 15px;}
.footer_gnavi{
	margin-bottom: 40px;
	padding: 80px 0 100px;
	background-color: #F7F7F7;
}
@media only screen and (max-width: 979px) {
	.footer_gnavi{
		margin-bottom: 40px;
		padding: 40px 0 10px;
	}
}
@media only screen and (max-width: 690px) {
	.footer_gnavi{margin-bottom: 15px;}
	.fgnav_block > ul > li.nolink_l .in{
		font-size: 14px;
	}
}



/*----------------------
受験者 TOP
-------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------*/

/*----------------------------
top test_takers utilization 
------------------------------*/

#utilization_area.green .asymmet_title{
	background-color: #077F83;
	color: #ffffff;
}
#utilization_area.green .uz_img01{background-image: url(../image/tt_top_teachingmaterials_img01.jpg);}
#utilization_area.green .uz_img02{background-image: url(../image/tt_top_teachingmaterials_img02.jpg);}

.green .ss_bg{
	background: url(../image/tt_top_utilization_bg.jpg) no-repeat center/cover;
}
@media only screen and (max-width: 690px) {
	.green .ss_bg{
		background-position: 80% center;
	}
}
/*----------------------------
top test_takers system_area 
------------------------------*/
#system_area{
	padding: 100px 0;
}
.ssg_block{
	max-width: 800px;
	margin-left: auto;
	margin-right: auto; 
	position: relative;
	z-index: 4;
	text-align: center;
}
.ssg_title {
	text-align: center;
	margin-bottom: 30px;
	background-position: center top;
	background-repeat: no-repeat;
	padding: 70px 20px 0;
	background-image: url(../image/common/tt_top_utilization_icon.png);
}
.ssg_title .in{
	text-align: center;
	border-bottom: 2px solid #F7B524;
	padding-bottom: 10px;
	font-weight: bold;
	font-size: 34px;
	color: #ffffff;
}
.ssg_txt{
	color: #ffffff;
	font-weight: bold;
}
.ssg_btn{
	margin-top: 20px;
}
.ssg_btn a{
	display: block;
	display: inline-block;
	background-color: #077F83;
	color: #ffffff;
	padding: 10px;
	padding-left: 10px;
	width: 60%;
	max-width: 320px;
	text-align: center;
	padding-left: 15px;
	text-decoration: none;
	font-weight: bold;
	border: 1px solid #077F83; 
}
.ssg_btn a .in{position: relative;}
.ssg_btn a .in::before{
	content: '';
	width: 4px;
	height: 4px;
	border: 0px;
	border-width: 2px 2px 0 0;
	border-color: #ffffff;
	border-style: solid;
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 3px);
	left: -15px;
}
.bl-hover .ssg_btn a,
.ssg_btn a:hover{
	background-color: #ffffff;
	color: #077F83;
}
.bl-hover .ssg_btn a .in::before,
.ssg_btn a:hover .in::before{border-color: #077F83;}


@media only screen and (max-width: 979px) {
	.ssg_title .in{
		font-size: 28px;
	}
}
@media only screen and (max-width: 690px) {
	#system_area{
		padding: 50px 0;
	}
	.ssg_title {
		margin-bottom: 15px;
		background-size: 50px auto;
		padding-top: 50px;
	}
	.ssg_title .in{
		font-size: 24px;
		line-height: 2;
		padding-bottom: 5px;
	}
}


/*----------------------------
top test_takers utilization 
------------------------------*/
#features_area{
	margin: 60px auto 80px;
}
.features_block ol{
	display: flex;
	justify-content: center;
	margin-bottom: 50px;
}
.features_block li{
	margin: 0 3%;
	text-align: center;
	list-style: none; 
}
.features_title {
	text-align: center;
	margin-bottom: 60px;
}
.features_title .in{
	text-align: center;
	border-bottom: 2px solid #F7B524;
	padding-bottom: 10px;
	font-weight: bold;
	font-size: 34px;
	color: #077F83;
}
.features_title .innum{
	font-size: 56px;
	position: relative;
}
.features_title .innum::after{
	content: url(../image/common/tt_top_features_titlebg.png);
	position: absolute;
	right: -15px;
	top: -55px;
}
.features_subtitle{
	font-weight: bold;
	margin-top: 15px;
	line-height: 1.4;
}
.features_num{
	font-size: 34px;
	font-weight: bold;
	color: #077F83;
	position: relative;
}
.features_num::before{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 20px 0 20px;
	border-color: #F7B524 transparent transparent transparent;
	position: absolute;
	top: -20px;
	left: calc(50% - 20px);
}


@media only screen and (max-width: 979px) {
	#features_area{
		margin: 60px auto 60px;
	}
	.features_block ol{
		margin-bottom: 0;
	}
	.ssg_title .in{
		font-size: 28px;
	}
	.features_title .innum{
		font-size: 44px;
	}
	.features_block ol{
		flex-wrap: wrap;
	}
	.features_block li{
		width: 27.333%;
		margin-bottom: 50px;
	}
}
@media only screen and (max-width: 690px) {
	#features_area{
		margin: 40px auto 30px;
	}
	.features_title {
		margin-bottom: 30px;
	}
	.features_title .in{
		font-size: 24px;
	}
	.features_title .innum{
		font-size: 40px;
	}
	.features_block li{
		width: 100%;
		margin: 0 auto 10px;
		padding: 15px 20px;
		display: flex;
		align-items: center;
		background-color: #f5f5f5;
	}
	.features_num{
		display: none;
	}
	.features_icon{
		width: 60px;
	}
	.features_subtitle{
		width: calc(100% - 50px);
		padding-left: 20px;
		text-align: left;
		margin-top: 0;
	}
	.features_subtitle br{display: none;}
}

/*----------------------------
top movie
------------------------------*/
#movie_area{
	margin: 80px auto 100px;
}
.movie_block {
	max-width: 715px;
	width: 94%;
	margin: auto;
}
.movie_item {
	margin-bottom: 15px;
	height: 400px;
	width: 715px;
}
.movie_list {
	padding: 0 5%;
	width: 100%;
}
.movie_list.slick-dotted.slick-slider{margin: 0 auto;}
.movie_list .slick-slide{
	position: relative;
	padding: 2px;
}
.movie_list .slick-slide::before{
	content: "";
	width: calc(100% - 6px);
	height: calc(100% - 6px);
	border: 3px solid rgba(0,0,0,0);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.movie_list .slick-slide.slick-current::before{
	border-color: #077F83; 
}
.movie_list .slick-prev{
	left: -10px;
}
.movie_list .slick-next{
	right: -10px;
}
.movie_list .slick-prev::after,
.movie_list .slick-next::after{
	border-color: #077F83;
}
.movie_list .slick-dots{
	width: 90%;
	bottom: -20px;
}
.movie_list .slick-dots li.slick-active button{
	background-color: #077F83;
}
.movie_list .slick-dots li button{
	width: 8px;
	height: 8px;
	background-color: #dddddd;
}
.movie_list .slick-dots li button::before{
	width: 8px;
	height: 8px;
}
.movie_list .slick-dots li{
	width: 8px;
	height: 8px;
}
.movie_title {
	text-align: center;
	margin-bottom: 60px;
}
.movie_title .in{
	text-align: center;
	border-bottom: 2px solid #F7B524;
	padding-bottom: 10px;
	font-weight: bold;
	font-size: 34px;
	color: #077F83;
}
.movie_block iframe {
	margin: 0 auto;
	width: 715px;
	height: 400px;
}
@media only screen and (max-width: 979px) {
	#movie_area{
		margin: 50px auto 80px;
	}
	.movie_title {
		margin-bottom: 40px;
	}
	.movie_title .in{
		font-size: 28px;
	}
	.movie_item,
	.movie_block iframe {
		width: 600px;
		height: 335px;
		margin: auto auto 10px;
	}
}

@media only screen and (max-width: 690px) {
	#movie_area{
		margin: 30px auto 70px;
	}
	.movie_title {
		margin-bottom: 30px;
	}
	.movie_title .in{
		font-size: 24px;
	}
	.movie_item,
	.movie_block iframe {
		width: 320px;
		height: 179px;
	}
}




/*----------------------------
pcg_navi
------------------------------*/
body.green .dlb_txt_link_before a::before{background-image: url(../image/common/icon_arrcircle_dgreen.png);}
#pagetitle-d.green h1{margin-bottom: 0;position:relative;z-index: 2;}
#pagetitle-d.green{
	text-align: center;
	color: #ffffff;
	position: relative;
}
/*#pagetitle-d.green::after{
	content: "";
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.7);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}*/
#pagetitle-d.green::before{
	content: "";
	width: 100%;
	height: 3px;
	background-color: #F7B524;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.green .pcg_navi_list > li:hover > a {background-color: #077F83;}
.green .pcg_navi_list li .pcg_subocn {background-color: #077F83;}
.green .pcg_navi_list li .pcg_subocn a{background-color: #077F83;}
.green .menuin{background-image: url(../image/common/icon_menu_pc_green.png);}
.green .submit_btn{background-image: url(../image/common/icon_search_green.png);}
.green#subnav{background: linear-gradient(90deg, #077F83 40%, #f5f5f5 40%);}
.green#subnav .acbtn{background-image: url(../image/icon_submenu_closed_green.png);}
.green#subnav .acbtn.opened{background-image: url(../image/icon_submenu_opened_green.png);}
.green #subnav_title a{background-color: #077F83;}
.green #subnav_list li.current a, body.green #subnav_list li.active a{color: #077F83;}
.green #subnav_list li a::after{border-bottom-color: #B2D9DA;}

/*@media only screen and (max-width: 690px) {
.green#subnav{margin-bottom: 30px;}
}*/




.ie{display: none;}
/* IE hack */
@media all and (-ms-high-contrast:none){
.ie {display: block;}
}

@media only screen and (max-width: 979px) {
	/*------------------------------------------------
	youtube
	-------------------------------------------------*/
	.youtube_sptab {
		position: relative;
		width: 100%;
		padding-top: 56.25%;
	}
	.youtube_sptab iframe {
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
	}
}