@charset "utf-8";

body{
	color:#333333;
	font-family: 'Noto Sans JP',"Hiragino sans", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-size:14px;
	line-height:1.8;
	background:#F4F4F4;
	
}

body.on{
	overflow:hidden;
}


ul{
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}

li{
	letter-spacing: normal; /* 文字間を通常に戻す */
}
a {
	color:#333333;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	-ms-transition: all 0.4s;
	-o-transition: all 0.4s;
	transition: all 0.4s;
	text-decoration:none;
}

.cu_btn{
	text-align:center;
	margin-bottom:20px;
}

header a , nav a{
	text-decoration:none;
}


img{
	max-width:100%;
	height:auto;
}

.clear{
	clear:both;
}

.clearfix_af:after{
	content: "";
	display: block; 
	height: 0; 
	font-size:0;    
	clear: both; 
	visibility:hidden;
}

.clearfix_bf:before{
	content: "";
	display: block; 
	height: 0; 
	font-size:0;    
	clear: both; 
	visibility:hidden;
}
.clearfix_af ,.clearfix_bf{
	display: inline-block;
} 
/* Hides from IE Mac */
* html .clearfix_af{
	height: 1%;
}
.clearfix_af ,.clearfix_bf{
	display:block;
}
/* End Hack */

.container{
	max-width:1480px;
	padding:0 20px;
	box-sizing:border-box;
	margin:auto;
}

body header{
//	z-index:99;
}

.content_frame{
	padding-top:100px;
	position: relative;
	z-index:9;
}

h2{
	font-weight: 800;
	font-size: 103px;
	line-height: 120%;
	color:#fff;
	font-family: YakuHanJP, Gilroy-Bold, "ヒラギノ角ゴシック", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3", "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "メイリオ",Meiryo,sans-serif;
}

section{
	max-width:1240px;
	padding:0 20px;
	box-sizing:border-box;
	margin:auto;
}

.tabrow {
	text-align: center;
	list-style: none;
	margin: 0;
	padding: 0;
	line-height: 24px;
	position: relative;
}

.tabrow:after {
	position: absolute;
	content: "";
	width: 100%;
	bottom: 0;
	left: 0;
	border-bottom: 1px solid #eee;
	z-index: 1;
}

.tabrow:before {
	z-index: 1;
}

.tabrow li {
	border: 1px solid #eee;
	background: #fff;
	display: inline-block;
	vertical-align:top;
	position: relative;
	z-index: 0;
	text-shadow: 0 1px #FFF;
	margin:0;
	padding:0;
	background: #FFFFFF;
	border-radius: 20px 20px 0 0;
	text-align:center;
	box-sizing:border-box;
}

ul.tabrow li:nth-child(1){
	width:25%;
}

ul.tabrow li:nth-child(2){
	width:25%;
}

ul.tabrow li:nth-child(3){
	width:25%;
}

ul.tabrow li:nth-child(4){
	width:25%;
}

ul.tabrow.three li:nth-child(1){
	width:40%;
}

ul.tabrow.three li:nth-child(2){
	width:40%;
}

ul.tabrow.three li:nth-child(3){
	width:20%;
}

ul.tabrow li a{
	display:block;
	padding-top:20px;
	min-height:90px;
}

ul.tabrow li.selected a{
	min-height:76px;
}

.tabrow li.selected {
	background: #FFF;
	z-index: 10;
	border-bottom-color: #FFF;
}

.tabrow li.selected:before {
	box-shadow: 2px 2px 0 #FFF;
}

.tabrow li.selected:after {
	box-shadow: -2px 2px 0 #FFF;
}

.tabrow li:first-child:before {
	display:none;
}

.tabrow li:last-child:after {
	display:none;
}

.tabrow li:before,
.tabrow li:after {
	position: absolute;
	bottom: -1px;
	width: 6px;
	height: 6px;
	content: " ";
	border: 1px solid #eee;
}

.tabrow li:before {
	border-bottom-right-radius: 6px;
	border-width: 0 1px 1px 0;
	left: -6px;
  box-shadow: 2px 2px 0 #ECECEC;
}

.tabrow li:after {
	border-bottom-left-radius: 6px;
	border-width: 0 0 1px 1px;
	right: -6px;
	box-shadow: -2px 2px 0 #ECECEC;
}

.content_area{
	background: #FFFFFF;
	border-radius: 20px 20px 20px 20px;
	position:relative;
	top:-15px;
	z-index:9;
	border-top:solid 1px #eee;
}

.content_area.select_first{
	background: #FFFFFF;
	border-radius: 0 20px 20px 20px;
	position:relative;
	top:-15px;
	z-index:9;
	border-top:solid 1px #eee;
}

.content_area.select_last{
	background: #FFFFFF;
	border-radius:20px 0 20px 20px;
	position:relative;
	top:-15px;
	z-index:9;
	border-top:solid 1px #eee;
}

.content_area ul.sub_nav{
	justify-content:space-between;
	display:flex;
	flex-wrap:wrap;
	padding-top:40px;
}

.content_area ul.sub_nav li{
	width:49%;
	text-align:center;
	border-right: 1px solid #C6C6C6;
}

.content_area ul.sub_nav.career li{
	width:30%;
}

.content_area ul.sub_nav.four li{
	width:23%;
}

.content_area ul.sub_nav li:last-child{
	border-right:0;
}

.content_area ul.sub_nav li a{
	font-size: 18px;
	font-weight:300;
	padding:8px 4px ;
	display:inline-block;
	line-height:1;
}

.content_area ul.sub_nav li a.act{
	border-bottom: 5px solid #2AC5FF;
	font-weight:500;
}

.detail_check .check_area{
	justify-content:flex-start;
	display:flex;
	flex-wrap:wrap;
}

.detail_check .check_area.item_center{
	justify-content:center;
}

.detail_check .check_area a.go_detail{
	background: #2AC5FF;
	border-radius: 5px;
	display:block;
	font-weight: bold;
	color:#fff;
	padding:8px 8px;
	line-height:1;
}

.detail_check .check_area a.cancel{
	background: #C4C4C4;
	border-radius: 5px;
	display:block;
	margin-left:10px;
	font-weight: bold;
	color:#fff;
	padding:8px 8px;
	line-height:1;
}

.state input[type=checkbox] {
    display: none;
}
label {
	font-size: 21px;
	line-height: 21px;
	display: inline-block;
	cursor: pointer;
	position: relative;
}

label:before {
	content: '';
	width: 21px;
	height: 21px;
	display: inline-block;
	position: absolute;
	left: -12px;
	top: -17px;
	background-color: #fff;
	border: 1px solid #dad9d4;
	border-radius: 6px 6px 6px 6px;
}
input[type=checkbox]:checked + label:before {
	content:		'\2713';		/* チェックの文字 */ 
	font-size:		16px;			/* チェックのサイズ */
	color:			#fff;			/* チェックの色 */
	background-color:	#0090f5;			/* チェックした時の色 */
	text-align:center;
}

input[type="submit"]{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.completed{
	background: #C4C4C4;
	border-radius: 22px;
	color:#fff;
	padding:5px 12px;
}

.finish{
	color:#C4C4C4;
}

h3.sub_title{
	font-weight: bold;
	font-size: 24px;
	text-align:center;
	padding:20px 0;
}

.mypage_attend{
	text-align:center;
	font-size: 15px;
	line-height: 160%;
}


.prof_area{
	max-width:600px;
	margin:auto;
	justify-content:flex-start;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	margin-top:20px;
}

.prof_area .prof_title{
	width:160px;
}

.prof_area .form_title{
	width:160px;
}

.prof_area .prof_input{
	flex:1;
}

.prof_area .form_input{
	flex:1;
}

.btn_area{
	padding:40px 0;
}

.btn01{
	display:block;
	width:280px;
	margin:auto;
	color:#fff;
	background: #2AC5FF;
	border-radius: 8px;
	text-align:center;
	font-size: 16px;
	padding:20px 0;
	border:0;
	cursor: pointer;
}

input[type="text"]{
	border: 1px solid #DEDEDE;
	box-sizing: border-box;
	border-radius: 6px;
	padding:15px 10px;
	width:100%;
}

input[type="password"]{
	border: 1px solid #DEDEDE;
	box-sizing: border-box;
	border-radius: 6px;
	padding:15px 10px;
	width:100%;
}

select{
	border: 1px solid #DEDEDE;
	box-sizing: border-box;
	border-radius: 6px;
	padding:15px 10px;
	width:100%;
}

textarea{
	border: 1px solid #DEDEDE;
	box-sizing: border-box;
	border-radius: 6px;
	padding:15px 10px;
	width:100%;
	height:100px;
}

.announcement_frame{
	max-width:720px;
	margin:auto;
	background: #FFFFFF;
	box-shadow: 0px 4px 23px rgba(0, 0, 0, 0.12);
	border-radius: 20px;
}

.announcement_area{
	box-sizing:border-box;
	padding:50px 50px 30px 50px;
}

.announcement_area .an_title{
	color: #AEAEAE;
}

.announcement_area h4{
	font-size: 28px;
	line-height: 150%;
}

.announcement_area h5{
	font-size: 18px;
	line-height: 150%;
}

.detail_link a{
	display:block;
	border-radius: 3px;
	font-weight: bold;
	font-size: 16px;
	line-height: 22px;
	text-align: center;
	letter-spacing: 0.07em;
	color: #2AC5FF;
	border:solid 1px #2AC5FF;
	width:320px;
	padding:15px 0;
	margin:25px auto 0 auto;
}

.detail_dl a{
	display:block;
	border-radius: 3px;
	font-weight: bold;
	font-size: 16px;
	line-height: 22px;
	text-align: center;
	letter-spacing: 0.07em;
	color: #fff;
	background-color:#2AC5FF;
	width:320px;
	padding:15px 0;
	margin:10px auto 0 auto;
}

.announcement_comment{
	border-top:1px solid #E6E6E6;
	padding:50px 50px 30px 50px;
}

.backlink{
	text-align:center;
	font-weight: bold;
	font-size: 15px;
	line-height: 200%;
	color: #646464;
	margin-top:40px;
}

.go_cancel{
	justify-content:center;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	margin-top:30px;
}

.go_btn{
	display:block;
	font-weight: bold;
	text-align: center;
	color: #fff;
	background: #2AC5FF;
	border-radius: 5px;
	width:150px;
	padding:15px 0;
	margin-right:10px;
	font-size: 14px;
	line-height: 22px;
	letter-spacing: 0.2em;
}

.cancel_btn{
	display:block;
	font-weight: bold;
	text-align: center;
	color: #fff;
	background: #C4C4C4;
	border-radius: 5px;
	width:150px;
	padding:15px 0;
	font-size: 14px;
	line-height: 22px;
	letter-spacing: 0.2em;
}

.entry_attend{
	text-align:center;
	padding-top:30px;
}

.top_attend{
	padding:12px;
	text-align:center;
	font-size:14px;
}

.prof_area .cu_regist_area{
	width:100%;
}

.prof_area .cu_regist_area a{
	display:block;
	background:#f8eef1;
	border:solid 1px #e73752;
	border-radius: 5px;
	width:100%;
	padding:20px 0;
	text-align: center;
}

.cu_now{
	text-align:center;
	padding-bottom:30px;
	font-size:18px;
	color:#ff0000;
}

ul.head_btn{
	display:flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 100px;
}

ul.head_btn li{
	padding:10px;
	max-width:400px;
}


ul.head_btn li:last-child img{
	border-radius: 10px;
}

.f_career_result{
	padding:20px 0;
}

.f_career_result table{
	margin:20px auto;
}

.fcws_explanin_image{
	max-width: 80%;
	margin:auto;
}

@media only screen and (min-width: 768px) {
	.sp_only{
		display:none !important;
	}

	ul.event_list.list_title{
		margin-top:35px;
		background-color: #F8F8F8;
		font-weight: bold;
		font-size: 14px;
		padding:20px 0;
	}

	ul.event_list.list_detail{
		padding:20px 0;
		border-top:solid 1px #eee;
	}

	ul.event_list.list_detail li.class_name{
		text-align:left;
		box-sizing:border-box;
		padding-left:20px;
		padding-right:20px;
	}

	ul.event_list{
		justify-content:space-between;
		display:flex;
		flex-wrap:wrap;
		align-items:center;
	}

	ul.event_list.movie_list{
		flex-direction: row-reverse;
	}

	ul.event_list li{
		text-align:center;
	}

	ul.event_list li.state{
		width:20%;
	}

	ul.event_list li.date{
		width:15%;
	}

	ul.event_list li.class_name{
		flex:1;
	}

	ul.event_list li.detail_check{
		width:22%;
	}

	ul.event_list li.con_title{
		width:85%;
	}

	ul.event_list.list_detail li.con_title{
		text-align: left;
		box-sizing: border-box;
		padding-left: 40px;
		padding-right: 40px;
	}

	ul.event_list li.con_cate{
		width:15%;
	}


}

@media (max-width: 768px) {
	.tab_hidden{
		display:none !important;
	}

	h2{
		font-size:40px;
	}

	.detail_check .check_area a.go_detail{
		margin-bottom:8px;
	}

	.content_area ul.sub_nav li a{
		font-size:10px;
	}

}


@media (max-width: 767px) {

	.pc_only{
		display:none !important;
	}

	.cu_btn{
		margin-top:20px;
	}

	.content_area{
		padding-bottom:20px;
		background-color:#f8f8f8 !important;
	}

	.tabrow li.selected{
		background-color:#f8f8f8 !important;
		border-bottom:0;
	}

	.tabrow li.selected:before {
		box-shadow: 2px 2px 0 #f8f8f8;
		border:0;
	}

	.tabrow li.selected:after {
		box-shadow: -2px 2px 0 #f8f8f8;
		border:0;
	}

	.content_frame{
		padding-top:30px;
	}

	.content_area ul.sub_nav{
		padding-top:15px;
	}

	.content_area ul.sub_nav li{
	}


	ul.tabrow li{
		border-radius: 10px 10px 0 0;
	}

	ul.tabrow li a{
		min-height:50px;
		padding-top:10px;
		font-size:12px;
	}

	ul.tabrow li.selected a{
		min-height:37px;
	}

	ul.tabrow li:nth-child(1){
		width:25%;
	}

	ul.tabrow li:nth-child(2){
		width:25%;
	}

	ul.tabrow li:nth-child(3){
		width:25%;
	}

	ul.tabrow li:nth-child(4){
		width:25%;
	}

	ul.tabrow.three li:nth-child(1){
		width:33.33%;
	}
	
	ul.tabrow.three li:nth-child(2){
		width:33.33%;
	}
	
	ul.tabrow.three li:nth-child(3){
		width:33.33%;
	}
	.tabrow li:nth-child(1) img{
		width:85px;
	}

	.tabrow li:nth-child(2) img{
		width:100px;
	}

	.tabrow li:nth-child(3) img{
		width:75px;
	}

	ul.event_list.list_detail{
		margin:20px 12px 0 12px;
		padding:15px 30px;
		background: #FFFFFF;
		border: 1px solid #EAEAEA;
		box-sizing: border-box;
		border-radius: 10px;
	}

	.detail_check .check_area{
		justify-content:space-between;
	}

	.detail_check .check_area a.go_detail{
		margin-bottom:0;
		padding:8px 10px;
		width:49%;
		text-align:center;
	}

	.detail_check .check_area a.cancel{
		margin-bottom:0;
		padding: 8px 10px;
		width:49%;
		margin-left:0;
		text-align:center;
	}

	label:before{
		left:0;
	}

	ul.event_list.list_detail li.class_name{
		font-weight: bold;
	}

	.completed{
		display:inline-block;
		font-size:12px;
	}

	.date{
		margin:5px 0;
		font-size:12px;
	}

	.detail_check{
		margin-top:10px;
	}

	.mypage_area{
		padding:0 15px;
	}

	.prof_area{
		padding:0 15px;
	}

	.prof_area .prof_title{
		width:120px;
	}

	.prof_area .form_title{
		width:100%;
	}

	ul.event_list li.con_title{
		padding-top:10px;
	}

	ul.event_list li.con_cate{
		margin-top:10px;
		border-bottom:solid 1px #eee;
		padding-bottom:10px;
	}

	.announcement_area h4{
		font-size:20px;
	}

	.announcement_frame{
		width:95%;
		max-width:unset;
	}

	.announcement_area{
		padding:20px;
	}

	.announcement_comment{
		padding:20px;
	}

	.go_btn{
		width:130px;
	}

	.cancel_btn{
		width:130px;
	}

	.backlink{
		padding-bottom:40px;
	}

	.entry_attend{
		font-size:12px;
		line-height: 160%;
		padding-left:12px;
		padding-right:12px;
	}

	.btn01{
		padding:14px 0;
	}

	h3.sub_title{
		font-size:18px;
	}

	.mypage_attend{
		padding:0 20px;
	}

	ul.event_list li.state{
		font-size:12px;
		border-bottom:solid 1px #eee;
		padding-bottom:10px;
	}

	.top_attend{
		font-size:12px;
	}


}
