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

/*--  template view関係  --*/

body{
    position: relative;
    min-height: 100vh;
    padding-bottom: 190px!important;
    width: 100%;
}

.max1280{
    max-width: 1280px;
    margin: 0 auto;
}
.pt80{padding: 80px 0 0!important;}
.sp550{display: none;}
.sp700{display: none!important;}
@media only screen and (max-width: 700px){
.sp700{display:block!important;}
}
@media only screen and (max-width: 550px){
.sp550{display: inline-block;}
}
/*-----------------------------------------------------------------
	header関係
-----------------------------------------------------------------*/
header{
    width: 100%;
    background: #fff;
    height: 60px;
    padding: 0;
    border-bottom: 3px #ddd solid;
    position: fixed!important;
    top: 0;
    left: 0;
    z-index: 10000;
}


header::before{display:none!important;}
.headerin_que,
.headerin{
    position: relative;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
}

.headerin_que a,
.headerin a{color: #000;}


.uni_logo_box {
    display: inline-block;
    line-height: 60px;
    position: absolute;
    left:25px;
    top:0;
  /*cursor: pointer;*/
}

.headerin_que .uni_logo_box{position: static;}

.f_uni_logo_box li,/*footer*/
.uni_logo_box li{
    display: inline-block;
    line-height: 60px;
    vertical-align: middle;
}
.logo{height: 40px;}

.logo img{
    width: auto;
    height: 100%;
    padding:0 5px 0 0;
}
h1{font-size: 113%;}

.f_uni_menu_box,/*footer*/
.uni_menu_box{
    position: absolute;
    right: 0px;
    top:0;
    height: 60px;
    padding: 15px 0;
    line-height: 30px;
}
.uni_menu_box li:last-child{
    display: none!important;
    height: 23px;
}
.f_uni_menu_box li,/*footer*/
.uni_menu_box li{
    display: inline-block;
    position: relative;
    padding: 0 20px;
    font-size: 88%;
    vertical-align: middle;
  cursor: pointer;
}

.f_uni_menu_box li::before,/*footer*/
.uni_menu_box li::before{
    content: "";
    display: block;
    width: 3px;
    height: 25px;
    border-radius: 5px;
    background: #000;
    position: absolute;
    top: 3px;
}
.f_uni_menu_box li::before,/*footer*/
.uni_menu_box li::before{right:-3px;}
.f_uni_menu_box li:last-child::before,/*footer*/
.uni_menu_box li:nth-last-child(2)::before{display: none!important;}


.menu_item .loginbtn button,
.uni_menu_box li .loginbtn button{
    padding: 6px 15px;
    border-radius: 5px;
    background: #000;
    font-size: 88%;
}
.menu_item .loginbtn,
.uni_menu_box li .loginbtn {margin: 0!important;}


.menu_item .loginbtn button {padding: 13px 15px;}

/*tab------------------------------------*/
.tab{
    position: fixed;
    top: 60px;
    right: 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    z-index: 4;
    display: flex;
}
.tab li{margin: 10px 0;}

.tab .tab1,
.tab a {
    border-radius: 10px 0px 0px 10px;
    padding: 30px 15px;
    color: #fff;
    display: inline-block;
    font-size: 100%;
    position: relative;
    border-top: solid 2px #fff;
    border-left: solid 2px #fff;
    border-bottom: solid 2px #fff;
    cursor: pointer;
}
.tab .tab1 {background: #004da0;}
.tab .tab2 a{background: #e46100!important;}

/*nav------------------------------------*/
.navToggle {
    display: inline-block;
    width: 35px;
    height: 23px;
    cursor: pointer;
    z-index: 999;
    position: relative;
}
.navToggle span {
    display: block;
    position: absolute;
    width: 30px;
    border-radius: 10px;
    border-bottom: solid 4px #000;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    right: 0;
}
.navToggle span:nth-child(1) {top: 0px;}
.navToggle span:nth-child(2) {top: 9px;}
.navToggle span:nth-child(3) { top: 18px;}

	/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
    top: 10px;
	border-bottom: solid 4px #000;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
    top: 10px;
	border-bottom: solid 4px #000;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

.navToggle.active::after {
  border: 2px solid #000;
    -webkit-animation: circle .4s .25s forwards;
    animation: circle .4s .25s forwards;
}
#nav{
    display: none;
/*    background: #000;*/
    background: #71605c;
    width: 100%;
    max-width: 360px;
    color: #fff;
    position: absolute;
    top: 60px;
    right: 0;
    z-index: 1000;
    padding: 0 18px;
}
.menu{
    display: -webkit-flex;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.menu li{
    padding:20px 10px;
    position: relative;
    cursor: pointer;
}
.menu li a{
    width: 100%;
    height: 100%;
    display: block;
	color: #fff;
}
.menu li:first-child{width: 100%;}
.menu li:nth-last-child(n+2){border-bottom: dashed 2px #fff;}

.menu li.class_questionary{
	border-top: dashed 2px #fff;
	width: 100%;
}

.menu li:nth-of-type(n+2):nth-of-type(-n+8) {
	display: inline-block;
/*	width: 47%;*/
	width: 100%;
}

.menu_item h1{margin-bottom: 10px;}

.menu li:nth-child(n+2)::before{
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
    position: absolute;
    right: 10px;
    top: 50%;
	    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
    font-size: 88%;
}



@media only screen and (max-width: 1050px){
.tab,
.uni_menu_box li::before,
.uni_menu_box li:nth-last-child(n+2),
.uni_logo_box li:nth-child(even){display: none!important;}
.uni_menu_box li:last-child{display: inline-block!important;}
	
.uni_menu_box li .loginbtn button{
    padding: 3px 8px;
    font-size: 75%;
}
.uni_menu_box li {
    padding: 0 10px 0 0;
    font-size: 88%;
}
	
}
@media only screen and (max-width: 999px){
.uni_logo_box {left:10px;}
.tab a::before {
    width: 20px;
    height: 17px;
    background-size: 20px 17px;
    bottom: 8px;
    }
.tab a {
    border-radius: 5px 0px 0px 5px;
    padding: 30px 8px 45px 8px;
    font-size: 107%;
}
.tab a::before {
    width: 20px;
    height: 17px;
    background-size: 20px 17px;
    bottom: 15px;
}
}
@media only screen and (max-width: 500px){
.uni_menu_box li {
    padding: 0px 8px 0 6px;
    font-size: 82%;
}
}
@media only screen and (max-width: 400px){
	#nav{
		padding: 0 10px;
		max-width: 100%;
	}
	.menu li:nth-child(n+2)::before {right: 3px;}
	.menu_item .loginbtn button, .uni_menu_box li .loginbtn button{
		width: 100%;
		max-width: 100%;
	}
	
}

/*-----------------------------------------------------------------
	footer関係
-----------------------------------------------------------------*/
footer{
    width: 100%;
    background: rgb(255 251 245);
    height: 190px;
    position: absolute;/*←絶対位置*/
    bottom: 0; /*下に固定*/
}
.footerinner{
    width: 100%;
    height: 190px;
    top:0;
    position: relative;
}
.f_uni_logo_box{
    display: block;
    line-height: 60px;
    position: absolute;
    bottom:45px;
    left:0;
    right: 0;
    margin: 0 auto;
}
.f_uni_menu_box{
    left: 0;
    margin: 0 auto;
    top: 15px;
}
.footerinner a,
.f_uni_logo_box li a{color: #000;}

@media only screen and (max-width: 999px){
.f_uni_logo_box li:nth-child(even){display: none!important;}
}
@media only screen and (max-width: 750px){
.f_uni_menu_box li::before{
    height: 20px;
    top:5px;
}
}
@media only screen and (max-width: 500px){
.f_uni_menu_box li{
    padding: 0px 8px 0 6px;
    font-size: 82%;
}
}
/*-----------------------------------------------------------------
	main・content関係
-----------------------------------------------------------------*/
.mainbox{
width: 100%;
    background: #fff;
	margin-top: 60px;
}
.blur{
	position: relative;
	overflow: hidden;
}
.blur_img{
	min-width: 150%;
    min-height: 150%;
	position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    object-fit: cover;
    font-family: "object-fit:cover;";
	z-index: 1;
}
.blur::before{
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	z-index: 2;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.radio_list,
.field_check,
.que_radio,
/*.full-screen slider,*/
.schedule_check,
.character_check,
.adopt_check,
.other_check,
.recruit_check,
.area_check,
.genre_check,
.joinflex,
.name,
.companymain,
.company_list,
.namebox,
.ampm_serach{
    display: flex;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    position: relative;
}



.photbox,
.namelogo{
    padding-top:31.3vw;
    position: relative;
    overflow: hidden;
}



.companyimg img,
.photbox img,
.namelogo img{
	position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    min-width: 100%;
    min-height: 100%;
}
.photbox img{object-fit: cover;}
.namelogo img{object-fit: contain;}



.companyimg img{object-fit: contain;}

.companyimg img{
    height: -webkit-fill-available;
    font-family:"object-fit:cover;";
}





.liner{
    top:44vw;
    height: 10%;
}
section{
    position: relative;
    padding: 60px 0;
}
section p{margin:0 0 25px;}

.secstr{
    background-color: #fff6e3 !important;
    background-image: repeating-linear-gradient(-45deg, #ffe7b9, #ffe7b9 5px, transparent 0, transparent 10px);
    padding: 40px 0 !important;
    margin-top: 60px;
}
.secback{
    background-color:#fff6e3;
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 50px 0;
}
.newsbox{
    width: 95%;
    max-width: 1000px;
}

h3{
    font-size: 150%;
    padding: 0 0 20px ;
    position: relative;
    margin: 0 auto 40px;
}
h3::before{
    content: "";
    display: inline-block;
    width: 100px;
    height: 6px;
    border-radius: 5px;
    background: #000;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
.keyword_box{justify-content: space-between;}
.keyword_btn_list{
	width: 190px;
	justify-content: space-between;
}
.keyword_btn_list li{width: 49%;}
.keyword_box input{width: calc(100% - 200px);}


.toggle_wrap{ position: relative;}
.all_btn_list{
    width: 230px;
    justify-content: space-between;
    align-items: center;
    margin: 45px 0 15px auto;
}
.all_btn_list li{width: 49%;}
.all_btn{
    padding:10px!important;
    background: #f9f9f9;
    color: #323333!important;
    width: 100%;
    line-height: 100%!important;
    border-radius: 30px!important;
    border: solid #323333 1.5px;
		font-size: 88%!important;
}

.toggle_wrap .search_detailbtn {
	position: relative;
	display: block;
    cursor: pointer;
    border: none;
    padding:15px;
    border-radius: 0;
    background: #f9f9f9;
    color: #000;
    max-width: 100%;
    border-top: solid 2px #e6e6e6;
    text-align: left;
}

.search_detailbtn::before {
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    position: absolute;
    top: 25%;
    right: 30px;
	-webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
	transform:rotateZ(90deg);
	transition: all .3s;
}
#togglecheckbox_1:checked ~ .search_detailbtn_1::before,
#togglecheckbox_2:checked ~ .search_detailbtn_2::before,
#togglecheckbox_3:checked ~ .search_detailbtn_3::before,
#togglecheckbox_4:checked ~ .search_detailbtn_4::before,
#togglecheckbox_5:checked ~ .search_detailbtn_5::before,
#togglecheckbox_6:checked ~ .search_detailbtn_6::before,
#togglecheckbox_7:checked ~ .search_detailbtn_7::before,
#togglecheckbox_8:checked ~ .search_detailbtn_8::before,
#togglecheckbox_9:checked ~ .search_detailbtn_9::before,
#togglecheckbox_10:checked ~ .search_detailbtn_10::before,
#togglecheckbox_11:checked ~ .search_detailbtn_11::before{transform:rotateZ(-90deg);}







.clear_btn{
    background: rgb(255 102 102)!important;
    margin: 0!important;
    height: 52px!important;
	line-height: 52px;
    font-size: 88%!important;
    padding: 0!important;
    border-radius: 5px!important;
}
.search_result{
    width: 100%;
    text-align: left;
    display: block;
    font-size: 180%;
    color:rgb(255 102 102);
}

.hide,
#togglecheckbox_1,
#togglecheckbox_2,
#togglecheckbox_3,
#togglecheckbox_4,
#togglecheckbox_5,
#togglecheckbox_6,
#togglecheckbox_7,
#togglecheckbox_8,
#togglecheckbox_9,
#togglecheckbox_10,
#togglecheckbox_11{display: none;}



#togglecheckbox_1:checked ~ .hide_box1,
#togglecheckbox_2:checked ~ .hide_box2,
#togglecheckbox_3:checked ~ .hide_box3,
#togglecheckbox_4:checked ~ .hide_box4,
#togglecheckbox_5:checked ~ .hide_box5,
#togglecheckbox_6:checked ~ .hide_box6,
#togglecheckbox_7:checked ~ .hide_box7,
#togglecheckbox_8:checked ~ .hide_box8,
#togglecheckbox_9:checked ~ .hide_box9,
#togglecheckbox_10:checked ~ .hide_box10,
#togglecheckbox_11:checked ~ .hide_box11{display: block!important;}


/*最後記述*/
#togglecheckbox_11:checked ~ .hide{border-bottom: solid 2px #e6e6e6;}
.search_detailbtn_11{border-bottom: solid 2px #e6e6e6!important;}
#togglecheckbox_11:checked ~ .search_detailbtn_11{border-bottom: solid 2px #f9f9f9!important;}




.longradio li label{
    padding-left: 35px;
    position: relative;
}
.longradio li label input{
    position: absolute!important;
    top: 0!important;
    left: 10px!important;
    max-width: 20px!important;
    margin: auto 0!important;
}
.radio_list li label{border:none;}
.radio_list input[type=radio] {
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	position: relative;
	right: 0;
	bottom: 0;
	left: 0;
	height: 20px;
	width: 20px;
	vertical-align: -0.7rem;
	transition: all .15s ease-out 0s;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	margin: .4rem .4rem .4rem 1rem;
	outline: none;
	border-radius: 10%;
}
.radio_check input[type=radio]{margin:  .4rem .4rem .4rem 0;}


.radio_list input[type=radio] {
	border-radius: 50%;
}
.radio_list input[type=radio]:checked:before {
	transform: scale(1);
}
.radio_list input[type=radio]:before {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	margin: 3px;
	transform: scale(0);
	transition: all ease-out 250ms;
}
/* 黒 */
.radio_list input[type=checkbox].black,.radio_list input[type=radio].black {
	border: 2px solid #aaa;
}
.radio_list input[type=checkbox].black:checked,.radio_list input[type=checkbox].black:indeterminate, input[type=radio].black:checked:before {
	background: #000;
}




.radio_list,
.field_check,
.schedule_check,
.character_check,
.adopt_check,
.other_check,
.recruit_check,
.area_check,
.genre_check{
    width: 100%;
    padding: 20px 0;
    border-radius: 5px;
    text-align: left;
}

.radio_check,
.recruit_check,
.area_check,
.genre_check{padding:5px 0 20px;}

/*.radio_list li,*/
.radio_check li p,
.field_check li p,
.schedule_check li p,
.character_check li p,
.adopt_check li p,
.other_check li p,
.recruit_check li p,
.area_check li p,
.genre_check li p{margin: 0!important;}

.radio_list li,
.field_check li ,
.schedule_check li,
.character_check li,
.adopt_check li,
.other_check li,
.recruit_check li,
.area_check li,
.genre_check li{
    display: inline-block;
    margin-bottom: 10px;
    background: #fff;
}
.checkitem input[type='checkbox'] + label > span{
	min-width: 22px;
    margin-top: 3.5px;
}
.checkitem input[type='checkbox'] + label{align-items: flex-start;}

.radio_list li label,
.field_check li label,
.schedule_check li label,
.character_check li label,
.adopt_check li label,
.other_check li label,
.recruit_check li label,
.area_check li label,
.genre_check li label{font-size: 88%;}

.radio_list li label,
.field_check li label,
.schedule_check li label,
.adopt_check li label,
.other_check li label{min-width: 175px;}

.radio_check li label{min-width: 320px!important;}

.area_check li label {
    min-width: 335px;
    font-weight: bold;
}

.longradio li label,
.character_check li label,
.recruit_check li label,
.genre_check li label{min-width: 320px;}
.longradio li label{max-width: 320px;}

.radio_check,
.radio_list,
.field_check ,
.schedule_check,
.character_check,
.adopt_check,
.other_check,
.recruit_check,
.area_check,
.genre_check,
.company_list,
.ampm_serach{
    justify-content: space-between;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
.radio_list li:nth-child(3n+2):last-child ,
.radio_list .secnum,
.other_check li:nth-child(3n+2):last-child {
    margin-left: auto;
    margin-right: 237px;
}
.radio_check li:nth-child(3n+2):last-child{
	margin-left: 0;
	margin-right:0;
}
.ampm_serach{margin: 0 0 20px;}

.ampm_serach li label{
    color: #fff;
    background: #323333;
    border:none;
    font-weight: bold;
    font-size: 88%;
    padding: 15px 10px;

}
.ampm_searchbox{
    width: 95%;
    max-width: 650px;
    margin: 0 auto 20px;
}

.cmp_list input[type="button"],
.ampm_searchbox .searchbox .search_container input[type="button"],
.ampm_searchbox .searchbox .search_container input[type="submit"] {
    position: static;
    height: 48px;
    display: block;
    width: 100%;
    border-radius: 5px;
    margin: 20px 0px;
    border: none;
	cursor: pointer;
}
.ampm_searchbox .searchbox .search_container input[type="button"]{
    margin: 0px;
    width: 100%;
    height: 52px;
}
.ampm_searchbox .searchbox .search_container{
    border: none;
    overflow: inherit;
    height: auto;
}
.ampm_searchbox .searchbox .search_container,
.ampm_searchbox .searchbox{
    width: 100%;
    max-width: 100%;
}
.ampm_searchbox .searchbox .search_container input[type="text"]{
    height: 52px!important;
    border: 1.5px solid rgb(113 096 093);
}
.ampm_radiobutton:checked + label{background:#005d5a;}

.ampm_serach li{
    display: inline-block;
    position: relative;
    height: 55px;
}
.ampm_serach li .searchbox .search_container{ max-width: 100%;}
.ampm_serach li .searchbox{
    position: absolute;
    right: 0;
    width: 100%;
    max-width: 300px;
}
.ampm_serach li:nth-child(1),
.ampm_serach li:nth-child(2){width: 49.5%;}

.cmp_list input[type="button"],
.search_container input[type="button"],
.search_container input[type="submit"]{
    background: rgb(113 096 093);
    color: #fff;
}
.sec_inner{
    width:95%;
    max-width:1000px;
/*    margin: 135px auto 0;*/
    margin: 60px auto 0;
}
.company_s_list li,
.company_list li{
    width:100%;
    margin: 0 0 10px;
}
.company_s_list .name{
    padding: 10px 0 0 ;
    font-size: 130%;
	width:100%;
}

.company_s_list .comtext{font-size: 113%;}
.combox{
    width: 100%;
    border:solid 6px #d3d3d3;
    background: #fff;
    padding: 30px 20px 15px;
    position: relative;
    min-height: 215px;
    cursor: pointer;
}

/*.slick-slide:hover{ border-color:#1289ba;}*/
.company_s_list .combox:hover{ border:solid 6px #1289ba;}
.company_s_list .combox{min-height: 215px;}
.combox a{
    position: absolute;
    top:0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    z-index: 1;
    cursor: pointer;
}
.combox::before{
    content:"";
    position: absolute;
    top:4px;
    left: 4px;
    border-bottom: solid 25px transparent;
    border-left: solid 25px #1289ba;
    z-index: 1;
}
.comgenre{
    position: absolute;
    top: 3px;
    right: 3px;
    padding: 5px 7px;
    background: #000;
    color: #fff;
    font-size: 80%;
    border-radius: 3px;
    z-index: 5;
    margin: 1px;
    height: 35px;
    overflow: hidden;
}
.namebox{
    width: 100%;
/*    padding:0 0 8px;*/
/*
    border-bottom: dashed #ccc 2px;
	margin-bottom: 10px;
*/
    vertical-align: middle;
    border-bottom: solid #ebebeb 2px;
    margin-bottom: 8px;
}
.namebox img[src=""]:empty{display: none;}

.phot{width: 280px;}
.photbox{
    width: 100%;
    padding-top: 150px;
    min_width: 40px;
    border-radius: 5px;
}
.namelogo{
    width: 20%;
    padding-top: 20%;
    min_width: 40px;
}
.name{
    width: calc(100% - 20%);
/*    padding:10px 0 0 10px;*/
    padding:0 30px 0 10px;
    font-size: 113%;
    margin: 0;
    text-align: left;
    line-height: 30px;
	transition: all .3s;

}
.company_s_list .namebox{flex-direction: column;}
.company_s_list .namebox p{-webkit-line-clamp: 1; }

.event_hour,
.d_line{
    display: block;
    background: #f8f8f8;
    border-radius: 3px;
    font-weight: bold;
    margin: 0;
    padding: 5px 10px;
}

ul.name{
    width: calc(100% -280px)!important;
    padding: 0 0 0 10px!important;
}
.name li:nth-child(2){
    width: calc(100% - 75px);
    font-size: 113%;}

.name li:first-child{
    width: 100%;
    max-width: 40px;
}
.name li:nth-child(3){margin: 0;}
.name:last-child{
    width: 100%;
    max-width: 100%;
    display: block;
}
.name li:nth-child(n+1):nth-child(-n+2){
    display: inline-block;
    vertical-align: top;
}
.name li .namelogo{
    width: 100%;
    padding-top:100%;
}
.name li{ margin: 0 0 10px 0;}
.name span{
    font-size: 80%;
    display: block;
    padding:0;
-webkit-line-clamp: 2;
}
.name span:empty{display: none;}
.comtext {
    line-height: 25px;
    padding:5px 0 0 0;
}
.company_s_list .namebox p,
.name span,
.comtext span,
.comtext p{
    display: -webkit-box;
overflow: hidden!important;
-webkit-box-orient: vertical;
}

.comtext span{
    font-size: 88%;
    color: #1289ba;
-webkit-line-clamp: 1;
    margin: 5px 0;
    overflow: hidden!important;
 text-overflow: ellipsis;
 -webkit-text-overflow: ellipsis;
 -o-text-overflow: ellipsis;
}
.comtext p{
    font-size: 80%;
    color: #616161;
    line-height: 25px;
-webkit-line-clamp: 2;
    height: 50px;
    overflow: hidden!important;
 text-overflow: ellipsis;
 -webkit-text-overflow: ellipsis;
 -o-text-overflow: ellipsis;
}
.favoritecon{
    height: 40px;
    width: 40px;
    cursor: pointer;
    font-weight: bold;
}
.reservationcon{
    height: 40px;
    width: 90px;
    cursor: pointer;
	margin-right: 10px;
    font-weight: bold;
}
.f_only .favoritecon i,
.reservationcon i{margin-right: 5px;}


/*.f_r_inner{margin: 80px auto!important;}*/
.f_r_inner{margin: 50px auto!important;}
.f_r_con_list{
    position: absolute;
    top:3px;
    right: 0;
    z-index: 2;
    width: 140px;
    justify-content: flex-end;
	
}
.r_only{width:95px;}
.r_only .reservationcon{
	width: 85px;
	margin-right: 0;
}
.f_only{
	width:175px;
    margin-right: 10px;
}
.f_only .favoritecon{width: 165px;}

.reservationcon_btn,
.favoritecon_btn{
    width: 100%;
    max-width: 150px;
    cursor: pointer;
}
.reservationcon_btn input[type="checkbox"] + label,
.favoritecon_btn input[type="checkbox"] + label{
    padding: 0px;
    border:2px solid #ccc;
}

.reservationcon_btn input[type="checkbox"] + label i, 
.favoritecon_btn input[type="checkbox"] + label i{padding: 8px;}
.reservationcon_btn input[type="checkbox"] + label p{padding: 5px 15px 5px 5px;}
.favoritecon_btn input[type="checkbox"] + label p{padding: 5px 5px 5px 10px;}



.reservationcon input[type="checkbox"] + label, 
.favoritecon input[type="checkbox"] + label{
    border: none;
    background: rgba(0,0,0,0);
	justify-content: center;
}

 
.reservationcon_btn input[type="checkbox"] + label, 
.reservationcon_btn input[type="checkbox"] + label i, 
.reservationcon input[type="checkbox"] + label,
.favoritecon_btn input[type="checkbox"] + label,
.favoritecon_btn input[type="checkbox"] + label i,
.favoritecon input[type="checkbox"] + label i{ color: #ccc;}

.reservationcon_btn input[type="checkbox"] + label,
.favoritecon_btn input[type="checkbox"] + label{font-size: 100%;}

.reservationcon_btn input[type="checkbox"] + label i{ font-size: 140%;}

.reservationcon input[type="checkbox"] + label,
.favoritecon input[type="checkbox"] + label{padding:5px 0;}
.reservationcon input[type="checkbox"] + label i, 
.favoritecon input[type="checkbox"] + label i{padding: 0;}

.reservationcon input[type="checkbox"] + label i, 
.favoritecon input[type="checkbox"] + label i{ font-size: 165%;}

.reservationcon_btn input[type="checkbox"] + label p, 
.favoritecon_btn input[type="checkbox"] + label p{margin: 0;}

.reservationcon_btn input[type="checkbox"]:checked + label i, 
.reservationcon input[type="checkbox"]:checked + label{color: #7bcd1c;}


.r_only .reservationcon input[type="checkbox"]:checked + label,
.favoritecon_btn input[type="checkbox"]:checked + label i,
.favoritecon input[type="checkbox"]:checked + label i,
.favoritecon input[type="checkbox"]:checked + label{color: rgb(252 102 102);}

.reservationcon_btn input[type="checkbox"]:checked + label p,
.favoritecon_btn input[type="checkbox"]:checked + label p{
    color: #000;
    font-weight: bold;
}
.reservationcon_btn input[type="checkbox"]:checked + label{border:2px solid #7bcd1c;}
.favoritecon_btn input[type="checkbox"]:checked + label{border:2px solid rgb(252 102 102);}









@media only screen and (max-width: 750px){
.keyword_box input,
.keyword_btn_list{width: 100%;}
	.keyword_btn_list{margin-top: 10px;}
	.keyword_btn_list button,
	.keyword_btn_list li{
		width: 100%;
	max-width: 100%;}
	.keyword_btn_list li:first-child{margin-bottom: 10px;}

.ampm_searchbox .searchbox .search_container input[type="button"] {height: 40px;}
.clear_btn {
    height: 40px!important;
    line-height: 40px;
	}
	.all_btn{padding: 8px 0px!important;}
}

@media only screen and (max-width: 550px){
	.search_detailbtn::before {right: 15px;}
	
	.participate_date{font-size: 88%;}
.company_s_list .name {
        padding: 0;
	font-size: 113%;
	}
}
/*------------------------------------------------------
        詳細
--------------------------------------------------------*/
h5{
    font-size: 125%;
    width: 95%;
    max-width: 1000px;
    padding: 20px 0px;
    margin: 0px auto;
    border-radius: 5px;
    background: #f8f8f8;
}

.companybox{
    width: 100%;
    height: 36.5vw;
    overflow: hidden;
	margin-top: 60px;
}
.companyimg{
    padding-top:36.5vw;
    position: relative;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    z-index: 3;
}

.companysecmain,
.companymain{
    width: 95%;
    max-width: 1000px;
    height: auto;
    margin: 0 auto;
}

.top_com{
    margin: 20px auto 0;
}

.companydetail {
  width: 100%;
}
.companydetail .freetext{
    margin: 0 auto;
	width: 95%;
    max-width: 700px;
}

.freetext p{margin: 0;}
.companydetail_title{
	width: 100%;
    padding:40px 0 0;
	display: -webkit-flex!important;
	display: flex!important;
	justify-content: center;
    align-items: center;
}
.companydetail_title .company_name{text-align:left;}

.companydetail_title li{
    display: inline-block;
    vertical-align: middle;
}
.companydetail_img{
    width: 70px;
    height: 70px;
    display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
    align-items: center;
}
.companydetail_img img{
	max-width: 70px;
    max-height:70px;
}

.companydetail_title li h4{
    padding: 0 0 0 20px;
    font-size: 200%;
    line-height: 130%;
}
/*
.company_comment_box{justify-content: space-between;}


.company_comment{
	width: calc(100% - 150px);
}
*/
.company_comment{
	margin: 0!important;
	width: 100%;
}


.company_session_box{
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin: 10px auto 0;
    border-radius: 5px;
    background: #f8f8f8;
    padding: 8px 8px 8px 15px;
}
.company_session_box h5{
	padding: 0;
	width:auto;
    margin:0;
	background: none;
    font-size: 125%;
	line-height: 50px;
}
.company_session_box .btn{padding: 0.8rem 1rem;}
.company_session_box .joinbtn{
    border: none;
    background: rgb(252 102 102);
    width: 250px;
}


.view_company_pdf{
	padding: 0;
	max-width: 1000px;
	margin: 30px auto;
	background: #fff!important;
}

.sectitle{
    width:100%;
    display: block;
    font-size: 150%;
    padding:0 0 0 10px;
    margin: 10px 0 20px;
    border-left: 10px solid #000;
}
.com_detailtbl{
    width: 100%;
/*    background: #fff;*/
}

.com_detailtbl tr{border-bottom: solid 2px #ccc;}
.com_detailtbl tr th,
.com_detailtbl tr td{padding: 15px 10px;}

.com_detailtbl tr th{width: 220px;}

.company_datetbl{
    margin: 10px 0;
    width: 100%;
    border-collapse: separate;
    border-spacing: 0px 3px;
    border-top:solid 2px #f8f8f8;
    border-bottom:solid 2px #f8f8f8;

}
.com_detailtbl a{word-break: break-word;}

.company_datetbl th i{padding: none;}
.company_datetbl th{
    background: rgb(252 102 102);
    color: #fff;
    padding: 10px;
    width: 150px;
    min-width: 40px;
}
.company_datetbl td{
    color: #616161;
    padding: 10px;
    border-bottom:solid 2px #f8f8f8;
}
.company_datetbl tr:last-child td{border: none;}
.point_non .btn{
    pointer-events: none;
    color: #949494;
}
.point_non .btn-border-shadow{background: #ccc!important;}
.point_non .btn-border-shadow::before{border: 3px solid #ACACAC;}

.btn_wrap{
    width: 100%;
    margin: 20px auto 0!important;
}
.archivebtn div,
.joinbtn div{
    width: 95%;
    max-width: 1000px!important;
    margin: 0 auto;
}

.archivebtn{padding: 50px 0 0;}
.archivebtn button,
.joinbtn button{
    width: 100%;
    max-width: 100%;
    display: inline-block;
    color: #fff;
    font-size: 150%!important;
    bordr:none!important;
}
.archivebtn button span::before,
.joinbtn button span::before{
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    position: absolute;
    font-size: 140%;
    top: 17px;
    right: 56px;
}
.archivebtn button span::before{
    top: 50%;
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}
.btn {
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
    color: #fff;
  border-radius: 0.5rem;
}


.btn-border-shadow {
    padding: 1.5rem 3rem;
    background: rgb(252 102 102);
  transition: all 0.3s;
}


 .archivebtn .btn-border-shadow:before {
  position: absolute;
  top: -6px;
  left: -6px;
  width: 100%;
  height: 100%;
  content: "";
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border: 3px solid #000;
  border-radius: 0.5rem;
}

.btn-border-shadow:hover{padding: 1.5rem 3rem;}

.archivebtn .btn-border-shadow:hove{opacity: 1;}
.archivebtn .btn-border-shadow:hover:before {
  top: 0;
  left: 0;
}


@media only screen and (max-width: 750px){
	h5{font-size: 125%;}
	.company_session_box h5{
    width: 100%;
	font-size: 115%;
	}
	.company_session_box .btn{
		width: 100%;
		max-width: 100%;
	}
	.company_session_box {
    border-radius: 10px;
    padding: 10px;
}
	
.com_detailtbl tr th { width: 180px;}
}

@media only screen and (max-width: 550px){
/*
	.company_comment{width: 100%;}
	
	.company_comment{margin-bottom: 10px!important;}
*/
	.com_detailtbl{font-size: 88%;}
.fixed_com{padding-bottom: 10px;}
}
@media only screen and (max-width: 500px){ 
	h5{font-size: 110%;}
	.company_session_box h5{font-size: 100%;}
		.company_session_box .btn span{font-size: 88%;}
}

/*------------------------------------------------------
        お問い合わせ アンケート
--------------------------------------------------------*/
.headerin_que .eb_backbtn{
	position: absolute;
	top: 5px;
}
.quetbl{
    width: 95%;
    max-width: 700px;
    margin: 0 auto;
}
.contacttextbox{
    border:solid 2px #ccc;
    background: #f8f8f8;
    padding: 20px;
    border-radius: 10px;
    width: 95%;
    max-width: 700px;
    margin: 20px auto 80px;
}
.contacttextbox a{
    display: inline-block;
    color: #1289ba;
}

.genre {
    border-radius: 3px;
    border: solid 1px #000;
}

.contactbtn{
    max-width: 300px;
    margin: 0 auto;
}
.contactbtn button{
    background:#000;
    color: #fff;
    padding: 20px 10px;
    border-radius: 5px;
    font-size: 113%;
    border:none;
    margin: 50px 0;
}
.contact_secback{
    background: #fff;
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 50px 15px;
    position: relative;
}
.contact_secstr {
    background-color: #ffffff!important;
    background-image: repeating-linear-gradient(-45deg,#f9f9f9, #f9f9f9 5px,transparent 0, transparent 10px);
    padding: 40px 0!important;
	margin-top: 60px!important;
    width: 100%;
}
.confirm{border:solid 2px #ddd;}
.confirm th{background: #f8f8f8;}
.confirm td,
.completetext{color: #757575;}


.quetbl textarea{resize: none;}
.quetbl select{
   padding: 10px;
    border-radius: 3px;
    font-size: 88%!important;
}
.quetbl .select{
    position: relative;
    max-width: 200px;
}
.quetbl .select::before{top:4px;}
.quetbl .select::after{bottom:6px;}


.quetbl .q_t{
    font-size: 125%;
/*    color: #005d5a;*/
    letter-spacing: 3px;
    position: absolute;
    left: 10px;
}
.quetbl .mndin span{font-size: 75%;}
.que_radio{
    width: 100%;
    padding:20px 10px;
    background: #f8f8f8;
    border-radius: 5px;
}
.que_radio li,
.que_radio div{
    width: calc(100%/5);
    text-align: center;
}
.que_radio li p,
.que_radio div p{
    font-size: 80%;
    color: #000;
    margin: 0!important;
}
.que_radio li label,
.que_radio div label{
    background: #f8f8f8;
    padding:0;
    border: none;
}
.list4 li,
.list4 div{width: calc(100%/4)!important;}

.list3 li,
.list3 div{width: calc(100%/3)!important;}

.list_w{
    display: block;
    padding: 20px
}
.list_w input[type=radio]{margin: 0 0 6px!important;}
.list_w li{
    width: 45%;
    display:inline-block;
}
.list_w li p{
    display: inline-block;
    padding: 0px 10px 10px;
    font-size: 100%;
}
.list_w label{
    text-align: left;
    padding: 0 10px!important;
}

.check_open{position: relative;}
.check_open_text{
    display:none;
    min-height: 100px!important;
}
.sp_on{
    display: inline-block;
    font-weight: bold;
}
.br_on{display: none;}

.que_radio input[type=radio]:checked#que_1_16~.check_open_text{display:block;}
.que_radio input[type=radio]:checked#que_4_5~.check_open_text{display:block;}

.que_radio input[type=radio] {
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	position: relative;
	right: 0;
	bottom: 0;
	left: 0;
	height: 20px;
	width: 20px;
	vertical-align: -0.7rem;
	transition: all .15s ease-out 0s;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	margin: 0 0 10px;
	outline: none;
	border-radius: 10%;
    background: #fff;
}
.que_radio input[type=radio] {border-radius: 50%;}
.que_radio input[type=radio]:checked:before {transform: scale(1);}

.que_radio input[type=radio]:before {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	margin: 3px;
	transform: scale(0);
	transition: all ease-out 250ms;
}
/* 黒 */
.que_radio input[type=checkbox].black, input[type=radio].black {border: 2px solid #aaa;}
.que_radio input[type=checkbox].black:checked, input[type=checkbox].black:indeterminate, input[type=radio].black:checked:before {background: #000;}
.nonbr{display: none;}

.quetbl td,
.quetbl th{
    display: block;
    width: 100%;
}
.quetbl th,
.quetbl td{padding: 10px;}

.quetbl th{
    position: relative;
    padding: 10px 10px 10px 40px;
    line-height: 30px;	
}

/*html記載css*/
.quetbl th.one{padding: 10px 10px 10px 55px;}
.quetbl th.two{padding: 10px 10px 10px 70px;}
.width100{width: 100% !important;}
.quetbl .hope {
	width: 50%;
	max-width: 50%;
}
.que_txt_title {
	text-align: left !important;
	color: #616161;
	min-height: 0 !important;
}
	.list1 li, .list1 li label {
		width: 100%!important;
		max-width: 100%!important;
	}
@media only screen and (max-width: 999px){
.headerin_que .eb_backbtn{
	position: absolute;
	top: 10px;
		right: 5px;
}
.headerin_que .eb_backbtn input {
    padding: 10px 0px!important;
    width: 36px;
}
}
@media only screen and (max-width: 750px){
.list_w li p{font-size: 88%;}
/*.que_radio input[type=radio]:checked#que_5_5~.check_open_text{min-width: 89vw;}*/
}
@media only screen and (max-width: 600px){
    /*.que_radio input[type=radio]:checked#que_5_5~.check_open_text{right:8px;}*/
    .br_on{display: inline-block;}
}

@media only screen and (max-width: 499px){
        /*.que_radio input[type=radio]:checked#que_5_5~.check_open_text{min-width: 86vw;}*/
    .sp_on{display: none;}
}
@media only screen and (max-width: 420px) {
	.quetbl .hope {
		width: 100%;
		max-width: 100%;
	}
}
@media only screen and (max-width: 370px){
        .list_w li{width: 100%!important;}
}
/*------------------------------------------------------
        参加にあたって
--------------------------------------------------------*/
.jointext{
    width: 95%;
    color: #757575;
    margin: 0 auto;
}
.jointext span{
    font-size: 113%;
    position: relative;
    color: #000;
    padding: 40px 0 15px;
    display: inline-block;
}
.jointext span:before{
    position: absolute;
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    content: '\f071';
    font-weight: 900;
    top: -15px;
    left: 0;
    right: 0;
    margin: auto;
    font-size: 200%;
    color: #ffa737;
}
.joinflex{
    width: 95%;
    max-width: 900px;
    margin: 50px auto;
    justify-content: space-between;
}
.joinflex li{
    width: 30%;
    max-width: 250px;
    display: block;
    flex-direction: column;
    background: #f9f9f9;
    padding:10px 20px;
    border-radius: 10px;
    position: relative;
}
.joinflex li::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 4px;
    border-bottom: solid 25px transparent;
    border-left: solid 25px #000;
    z-index: 1;
}
.joinflex li i{
    font-size: 350%;
    padding: 30px 0;
}
.joinflex li p{font-size: 88%;}


.joinflex li:hover::before{border-left: solid 25px #c84f40;}
.joinflex li:hover i{color: #c84f40;}
.jointextbox{
    max-width: 900px;
    padding: 20px;
    border: 2px dashed #ccc;
}
.jointextbox a{color: #66d1d4;}
.jointextbox a:hover{opacity: .7;}



@media only screen and (max-width: 999px){
.companydetail_img{
    max-width: 50px;
    height: 50px;
}
.companydetail_img img{
	max-width: 50px;
    max-height:50px;
}
/*.companydetail_title li:last-child{width: calc(100% - 60px);}*/
.companydetail_title li h4{font-size: 180%;}
.company_s_list li,
.company_list li{width: 100%;}
}
@media only screen and (max-width: 750px){
.phot{width: 200px;}
.photbox{padding-top: 100px;}

.name li:nth-child(2){
    width: calc(100% - 60px);
    font-size: 100%;
 }
.company_datetbl{font-size: 80%;}
.name li:nth-child(n+3):nth-child(-n+4){font-size: 88%;}
.name li:first-child {max-width: 35px;}
.name li .comtext p{margin: 0 0 15px;}

section {padding: 40px 0 20px;}
.ampm_searchbox,
.ampm_searchbox .searchbox{
    max-width: 500px;
    width: 95%;
    margin: 0 auto;
}
.area,
.genre {font-size: 82%!important;}

.comgenre{
    padding: 3px 5px;
    font-size: 75%;
    height: 31px;
}
h3{
    font-size: 125%;
    padding: 0 0 10px ;
}
h3::before{ height: 5px;}

.reservationcon_btn,
.favoritecon_btn{
	width: 100%;
	max-width: 38px;
	}

.reservationcon_btn input[type="checkbox"] + label i{padding: 5px 7px;}
	
.reservationcon_btn input[type="checkbox"] + label i,
.favoritecon_btn input[type="checkbox"] + label i{border-right:none;}
.reservationcon_btn input[type="checkbox"] + label p,
.favoritecon_btn input[type="checkbox"] + label  p{display: none;}
	

	
	
.companydetail_img{
    max-width: 45px;
    height: 45px;
}
	.companydetail_img img{
	max-width: 45px;
    max-height:45px;
}
	
/*.companydetail_title li:last-child{width: calc(100% - 55px);}*/
.companydetail_title li h4{
    padding: 0 0 0 10px;
    font-size: 165%;
}
	
.companydetail_title {padding: 30px 0px 0px;}
.completetext{font-size: 88%;}
.joinflex{
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
.joinflex li{
    width: 48%;
    max-width: 100%;
    margin: 10px 0;
}

.radio_list li,
.field_check li,
.schedule_check li,
.adopt_check li,
.other_check li ,
.area_check li {width:48%;}

.radio_list li:nth-child(3n+2):last-child,
.radio_list .secnum,
.other_check li:nth-child(3n+2):last-child {
    margin-left: 0;
    margin-right: 0;
}

.longradio li,
.character_check li,
.recruit_check li,
.genre_check li{
        width: 100%!important;
        display: block!important;
}
.longradio li label,
.radio_list li label,
.field_check li label,
.schedule_check li label,
.adopt_check li label,
.other_check li label,
.area_check li label,
.character_check li label,
.recruit_check li label,
.genre_check li label{
    min-width: 100%!important;
    max-width: 100%!important;
}
.company_s_list .comtext{font-size: 100%;}
}

@media only screen and (max-width: 600px){
    .que_radio {padding: 20px 0px;}
    .que_radio div p{font-size: 10px;}
    .nonbr{display: inline-block;}
    .quetbl th {
        font-size: 95%;
    padding: 10px 10px 10px 40px;
    }
    .quetbl .q_t {
    font-size: 107%;
    letter-spacing: 1px;
}
}
@media only screen and (max-width: 550px){
.companybox{height: 50vw;}
.companyimg{padding-top: 50vw;}
	
.ampm_searchbox .searchbox{position: static!important;}
.ampm_serach li:nth-child(1),
.ampm_serach li:nth-child(2) {width: 49%;}
.ampm_serach li {position: static;}
.ampm_serach .searchbox{
    position: static!important;
    max-width: 265px;
    display:block;
}

.companyimg{
	position: relative;
	display: block;
	}

h3 {font-size: 113%;}
.h3{margin: 0 0 100px 0;}

.company_s_list,
.company_list{justify-content: center;}

.com_detailtbl tr th,
.com_detailtbl tr td{
    width: 100%;
    display: block;
}
.com_detailtbl tr th{background: #f5f5f5;}
.com_detailtbl tr{border-bottom: none;}
.companydetail_title li h4{font-size: 125%;}


.archivebtn button span::before,
.archivebtn button,
.joinbtn button span::before,
.sectitle,
.joinbtn button{font-size: 110%!important;}


 .btn-border-shadow {padding: calc(1.5rem - 0px) 1rem 1.5rem;}
.btn-border-shadow {padding-left: 0!important;}

.archivebtn button span::before,
.joinbtn button span::before{
    top: 21px;
    right: 20px;
}

.photnamebox{display: block!important;}
.phot,
ul.name{
        width: 100%!important;
        max-width: 100%!important;
        display: block;
        margin: 25px 0 5px;
}
ul.name{padding: 0!important;}
.photbox {
    padding-top: 40vw;
}
.company_datetbl th span{display: none;}
.company_datetbl th i{padding: 0!important;}
.company_datetbl th{
    width: 25px;
    min-width: 20px;
    text-align: center;
    }
.photcombox{padding: 20px 10px 0;}
	

.radio_list li,
.field_check li,
.schedule_check li,
.adopt_check li,
.other_check li ,
.area_check li {width:100%;}
}
@media only screen and (max-width: 500px){
.joinflex li i {font-size: 250%;}
.joinflex li,
.area_check li {width:100%;}
}
@media only screen and (min-width:1000px){
.companybox{ height: 400px!important;}

.companyimg{
    position: relative;
    padding-top: 400px!important;
    }

}
@media only screen and (min-width:1280px){


.liner{
    top:570px;
    height: 400px;
    }

.name li:nth-child(2){font-size: 130%;}
.photbox{padding-top: 150px;}
}

/*------------------------------------------------------
        相談コーナー
--------------------------------------------------------*/
.consult{
    width: 95%;
    max-width: 1000px;
    margin: 50px auto 0;
}
.consult_list{
    display: flex;
    justify-content: center;
    align-items: center;
}
.consult_list li{
    width: 30%;
    margin: 0 2%;
}
.consult_box{
    width: 100%;
    padding:30px 20px;
    display: inline-block;
    border-radius: 35px;
    background: #f1f1f1;
    position: relative;
    margin: 0 0 25px;
	height: 190px;
}
.consult_list li .consult_box:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #f1f1f1;
}

.consult_list li .bk{
    background: #000;
    padding:15px 10px;
}

.consult_icon{
    font-size: 350%;
    margin: 0;
}
.consult_title{
    font-size: 110%;
    margin: 0 !important;
    padding: 20px 0 0px;
}
@media only screen and (max-width:999px){
.consult_title{font-size: 104%;}
.consult_icon{font-size: 270%;}
.consult_list li .bk{padding: 10px;}
.consult_list li .bk span{font-size: 88%;}
}
@media only screen and (max-width:750px){
    .consult_list{flex-wrap: wrap;}
    .consult_list li{
        width: 45%;
        margin: 5% 2%;
    }
}
@media only screen and (max-width:500px){
    .consult_list li{
        width: 100%;
        margin: 5%;
    }
}

/* ページトップ */

#pagetop:hover {
  opacity: 0.8;
}

#pagetop{
  width: 70px;
  height: 70px;
    line-height: 65px;
  position: fixed;
  right: 10px;
  bottom: 10px;
border: solid 2px #ce1313;
    border-radius: 5px;
    background: rgba(255,255,255,0.9);
    z-index: 9999;
}
#pagetop a{
  position: relative;
  display: block;
  font-size: 200%;
  text-decoration: none;
    text-align: center;
    color: #ce1313;
}
#pagetop i{padding: 0!important;}
@media print, screen and (max-width: 750px) {
#pagetop {
	width: 55px;
	height: 55px;
    line-height: 50px;
}
#pagetop a {font-size: 180%;}
}

/*------------------------------------------------------
      企業比較
--------------------------------------------------------*/
.comparison_outline{
	width:95%;
	max-width: 1000px;
	margin: 0 auto;
	padding:50px 0 0px;
	border-radius: 15px;
    border: solid 2px #323333;
}
.cmp_tbl_box{
	width: 80%;
    margin: 65px auto 80px;
	overflow: hidden;
	height: auto;
	transition: all .3s;
}
.cmp_tbl{
	width: 100%;
	font-size: 100%;
	border-bottom: solid 1px #000;
}
.cmp_tbl_box.close{
	height: 0px;
    margin: 0 auto;
}

.cmp_tbl tr{border-top: solid #000 1px;}
.cmp_tbl th,
.cmp_tbl td{padding:5px 10px;}

.cmp_tbl th{background: #f8f8f8;}
.cmp_tbl td{
	width: 50%;
	padding:20px 10px;
	position: relative;
}

.cmp_tbl td:first-child::before{
	content: "";
    width: 1px;
    height: 15px;
    background: #6a6a6a;
    display: inline-block;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}




@media print, screen and (max-width: 999px) {
.cmp{font-size: 94%;}
.cmp_tbl_box{
	width: 90%;
	font-size: 88%;
	}
}
@media print, screen and (max-width: 550px) {
.cmp_tbl_box{
	width: 100%;
	margin:0 auto;
}
.cmp_tbl{ border-bottom: none;}
}
/*------------------------------------------------------
        color変更（テンプレート用）
--------------------------------------------------------*/
.newsbox::-webkit-scrollbar {
  width: 15px;
  height: 15px;
display: block;
}
.newsbox::-webkit-scrollbar-track {
	background:#f3f3f3;
  border-radius:0 5px 5px 0;
	}
.newsbox::-webkit-scrollbar-thumb {
  background:#6F6347;
  border-radius:50px;
}
.cls-1{fill:#fff;}



/*colo_7————————————————————————*/
body.color_7 .sectitle{border-left: 10px solid rgb(255 102 102);}

body.color_7 .video_list_item:hover{ border:solid 2px rgb(252 102 102);}
/*body.color_7 .video_list_item:hover .name{color: rgb(252 102 102);}*/

body.color_7 .tag_item:hover{
	color: rgb(252 102 102);
	border:solid 1px rgb(252 102 102);
}

body.color_7 .video_box:hover p{color: rgb(252 102 102);}

body.color_7 .navToggle.active span:nth-child(1),
body.color_7 .navToggle.active span:nth-child(2),
body.color_7 .navToggle.active span:nth-child(3),

body.color_7 .navToggle.active::after,
body.color_7 .navToggle span {border-bottom: solid 4px rgb(113 096 093);}



body.color_7 .ampm_radiobutton:checked + label,
body.color_7 .menu_item .loginbtn button,
body.color_7 .uni_menu_box li .loginbtn button,
body.color_7 h3::before{background:rgb(255 102 102);}

body.color_7 .f_uni_menu_box li::before,
body.color_7 .uni_menu_box li::before{background:rgb(113 096 093);}

body.color_7 .archivebtn .btn-border-shadow{background: rgb(255 110 000);}

body.color_7 .link_jump li a,

body.color_7 .video_link,
body.color_7 .video_link_top,
body.color_7 .two_timetable .fir_table th,
body.color_7 .timetable .fir_table th,
body.color_7 .vh100,
body.color_7 .consult_list li .bk,
body.color_7 .contactbtn button,
body.color_7 .companybox {background:#323333;}


body.color_7 .morebtn .bk{background: rgb(113 096 093);}

body.color_7 .loading{background: rgb(255 147 150);;}

body.color_7 .company_s_list .combox:hover{ border:solid 6px #323333;}

/*body.color_7 .slick-slide:hover{border:7px solid #323333;}*/

body.color_7 #pagetop{border-color:  rgb(113 096 093)!important;}

body.color_7 .com_detailtbl a,
body.color_7 .quetbl .q_t,
body.color_7 #pagetop a,
body.color_7 .consult_list li:hover .consult_icon{color:rgb(113 096 093)!important; }

body.color_7 .cls-1{fill:#323333;}

body.color_7 .two_timetable .fir_table,
body.color_7 .timetable .fir_table{ border: solid 2px #323333;}

body.color_7 .news_category,
body.color_7 .back_btn,
body.color_7 a.bk,
body.color_7 .newsbox::-webkit-scrollbar-thumb {background: rgb(113 096 093);}




/*====================================================================
slider関係
====================================================================*/
.slider_container {
    width: 95%;
    max-width: 700px;
    margin: 10px auto 0;
}
.slider{
	width: 100%;
	display: block;
}
.slick-img{
  	width: 100%;
	padding-top: 390px;
	position:relative;	
	border: solid #ccc 1.5px;
	border-radius: 20px;
	overflow:hidden;
}
.thumbnail-img img,
.slick-img img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    object-fit: cover;
    font-family: "object-fit:cover;";
    z-index: 1;
    transition: all .5s;
}
.slick-img::before{
	content: "";
	width: 100%;
	height: 100%;
	background:url("../img/video.svg")no-repeat;
	background-position: center;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	opacity: .6;
    transition: all .5s;
}


.thumbnail {
    width: 100%;
	display: flex;
	justify-content: center;
	margin:5px auto 0;
}

.thumbnail-img {
    width: 19%;
	cursor: pointer;
	border: 1.5px solid #ccc;
	transition: all .3s;
	border-radius: 10px;
	overflow:hidden;
	position:relative;	
	padding-top: 72px;
	margin:0 0.5%;
	
}
.thumbnail-img img{
	opacity:0.5;
	transition: all .3s;
}
.thumbnail-img.is-active {border-color: #000;}
.thumbnail-img.is-active img{opacity: 1;}



@media only screen and (max-width: 750px){
.slick-img{
	border-radius: 10px;
}
	
.thumbnail-img {
	border-radius: 5px;
}
.slick-img {
    padding-top: 11%;
}
.thumbnail-img {
	padding-top: 10.5%;
}
}
/*====================================================================
 モーダルCSS
====================================================================*/
.modalArea {
  position: fixed;
  z-index: 1001;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}
.modalBg {
  width: 100%;
  height: 100vh;
    background-color: rgba(50,50,50,0.5);
}

.modalWrapper {
  position: absolute;
  left: 50%;
  width: 90%;
  max-width: 800px;
  padding:40px;
  background: #fff;
border-radius: 5px;
   top: 90px;
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
}
.modalWrapper_news,
.modalWrapper_join{
    overflow-y: scroll;
    background: none;
    position: absolute;
  left: 50%;
  width: 90%;
  max-width: 1000px;
border-radius: 5px;
   top: 90px!important;
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    height: calc(90vh - 90px)!important;
}

.modalWrapper_news{
	max-width: 700px;
    max-height: 500px;
}

.news_pop .contact_secback,
.join .contact_secback{height: 100%;}

.news_pop .contact_secback{min-height: 400px;}
.news_txt{
	width: 70%;
	margin: 0 auto;
}
.news_pop .news_title{width: 85%;}
.news_date_box{
	justify-content: flex-end;
    align-items: center;
    position: absolute;
    top: 10px;
    left: 0;
	right: 0;
	width: 100%;
	margin: 0 auto;
	padding-right: 10px;
}
.news_date_box .date{color: #999;}

.news_pop .modalContents,
.join .modalContents{
    background-color: #ffffff!important;
    background-image: repeating-linear-gradient(-45deg,#f9f9f9, #f9f9f9 5px,transparent 0, transparent 10px);
    padding: 40px 0!important;
    display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
    display: flex;
    align-items: center;
	min-height: 100%;
}
.modalWrapper_pdf{
    /*overflow-y: scroll;*/
    background: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 90%;
    max-width: 400px;
    border-radius: 5px;
    /*height: 90vh;*/
    max-height: 550px;
}
.modalWrapper_pdf .modalContents{ padding:0!important; }
.modalWrapper_pdf .contacttextbox{
    width: 80%!important;
    margin: 20px auto 20px!important;
}
.modalWrapper h2 {
    font-size: 130%;
     margin: 0 0 20px;
}
body.fixed {
    position: fixed;
    left: 0;
}
.submit_buttonbox{
    max-width: 400px;
    margin:30px auto 0;
}
.submit_buttonbox li{
    width: 44%;
    margin: 0 10px;
    display: inline-block;
}
.submit_buttonbox li .bk,
.submit_buttonbox li button{max-width:100%!important;}
.submit_buttonbox li:last-child button{background:#999;}
.pop h2{font-size:113%;}
.pop p{
     color: #737373;
     font-size: 100%;
}
@media only screen and (max-width: 750px){

.news_txt{width: 85%;}
}
@media only screen and (max-width: 550px){
.pop h2{
    font-size: 90%;
    margin: 0 0 20px!important;
}
.submit_buttonbox li .bk,
.pop p{font-size: 84%!important;}

.submit_buttonbox li{margin: 0 5px;}
.submit_buttonbox li .bk{padding: 10px 0;}
	

}
/*====================================================================
 モーダルCSS end
====================================================================*/

/*pop*/
.swal2-popup {padding: 30px 20px!important;}
.swal2-title {font-size: 150%!important;}
.swal2-actions {
    flex-wrap: inherit!important;
    justify-content: center!important;
}
.swal2-actions button{width:48%;}
.swal2-styled.swal2-confirm {background-color: #2778c4!important;}
.swal2-styled.swal2-deny {background-color: #e87d3a!important;}


/*====================================================================
時間割
====================================================================*/
.two_timetable,
.timetable{
    max-width: 1000px;
    width: 95%;
    margin: 0 auto;
}

.two_timetable{
    margin: 0 auto 50px;
	justify-content: space-between;
}

.two_timetable .fir_table,
.timetable .fir_table{
    width: 100%;
    overflow: hidden;
    border-radius: 15px;
}

.two_timetable .fir_table{width: 48%;}
.one_timetable .fir_table{
	width: 100%;
    max-width: 700px;
    margin: 0 auto;
}

.two_timetable table,
.two_timetable table tr,
.timetable table,
.timetable table tr{width: 100%;}

@-moz-document url-prefix() {
	.two_timetable table tr,
    .timetable table tr{
        display: -webkit-flexbox;
        display: -moz-flexbox;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: flex;
    }
}


.timetable table td,
.timetable table th{
    padding: 15px 10px;
    text-align: center;
}
.two_timetable table td,
.two_timetable table th{
    display: inline-block;
    padding: 15px 20px;
    text-align: center;
    font-size: 125%;
}

.timetable table th:first-child{min-width: 150px;}

.timetable table th:nth-of-type(n+2):nth-of-type(-n+6){
	min-width:calc((100% - 150px)/5);
	width: 170px;
}
.timetable table th{
    color: #fff;
    font-size: 120%;
}
.two_timetable table th{
    color: #fff;
    width: 20%;
    max-width: 120px;
    min-width: 120px;
}
.one_timetable table th{
    width: 25%;
    max-width: 160px;
    min-width: 160px;
}

.timetable table td {
    color: #3e3e3e;
	text-align: left; 
    font-size: 88% !important;
	border-right: solid 2px #f0f0f0;
    width: calc(100% / 5);
	min-width: 160px;
}

.two_timetable table td {
    color: #3e3e3e;
    width:calc(100% - 120px);
}
.one_timetable table td {width:calc(100% - 160px);}


.timetable table td span{font-size: 82%;}
.timetable table td:last-child{border-right: none;}
.timetabltext{
	margin: 0 auto;
	width:85%;
	line-height: 160%;
}



.timetable .fir_table th{border-right: solid 2px #f8f8f8;}
.timetable .fir_table th:last-child{border: none;}

.two_timetable .fir_table tr,
.timetable .fir_table tr{border-bottom: solid 2px #f0f0f0;}

.two_timetable .fir_table tr:last-child,
.timetable .fir_table tr:last-child{border-bottom:none;}

.scroll_erro{display: none;}

.no_data{
	background: #f0f0f0;
	text-align: center!important;
}
.no_data::before{content:"調整中";}


.long_th{
	width: 100%!important;
    max-width: 100%!important;
}
a.btn{
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 2rem;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
    color: #fff;
  border-radius: 0.5rem;
	margin: 0 auto 65px;
    max-width: 1000px;
    width: 95%;
    font-size: 125%;
}
a.btn span{
	margin-left: 10px;
    display: inline-block;
    padding: 5px 10px;
    border-radius: 5px;
    font-size: 88%;
	border: solid 1.5px #fff;
}

a.btn:hover{opacity: .8;}


@media only screen and (max-width: 999px){
.scroll_erro{
		display: block;
		font-size: 100%;
	}
.timetable .fir_table{
	width: 100%;
	max-width: 1000px;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
	}
.fir_table table{white-space: pre-wrap;}
.timetable table th:nth-of-type(n+2):nth-of-type(-n+6){
	min-width: 170px;
	max-width: 170px;
}
.timetable table th:first-child {
    min-width: 130px;
    position: sticky;
    left: 0;
    top: 0;
}
.timetable .fir_table tr:first-child th{text-align: left;}
}
@media only screen and (max-width: 750px){
	.timetable table td,
.timetable table th{ font-size: 100%;}
	.timetable table th:first-child {min-width: 130px;}
.timetable table th:nth-of-type(n+2):nth-of-type(-n+6){
	min-width: 170px;
	max-width: 170px;
}
a.btn {font-size: 113%;}
	
.two_timetable table th {
    max-width: 90px;
    min-width: 90px;
}
.one_timetable table th {
    max-width:130px;
    min-width:130px;
}
.two_timetable table td { width: calc(100% - 90px);}
.one_timetable table td { width: calc(100% - 130px);}
	
.two_timetable table td,
.two_timetable table th{font-size: 113%;}
}
@media only screen and (max-width: 550px){
.two_timetable .fir_table {width: 100%;}
.two_timetable .fir_table:first-child {margin-bottom: 30px;}

.two_timetable table td, .two_timetable table th {
	font-size: 100%;
	padding: 10px 20px;
	}

}


.pdf:after{
content: url(../img/betu.svg);
    margin: 0px 5px;
    width: 15px;
    display: inline-block;

}
.filter_favorite {
    display: flex;
    margin-top: -40px;
    width: 45%;
    right: 0;
    position: absolute;
}
.filter_favorite .title_filter {
    width: 160px;
    margin-top: 10px;
}
.filter_favorite .select {
    max-width: 250px;
}
.filter_favorite .select::after {
    bottom: 9px;
}
@media only screen and (max-width: 1024px) {
    .filter_favorite {
        width: 42%;
        right: 5px;
    }
}
@media only screen and (max-width: 768px) {
    .filter_favorite {
        width: 55%;
        right: 5px;
    }
}
@media only screen and (max-width: 540px) {
    .filter_favorite {
        width: 70%;
        right: 15px;
    }
    .filter_favorite .select {
        max-width: 220px;
    }
}
@media only screen and (max-width: 420px) {
    .filter_favorite {
        width: 90%;
        right: 0;
    }
    .filter_favorite .select {
        max-width: 200px;
    }
}