@charset "utf-8";
#keyvisual{
	width:100%;
    height: 100vh;
	min-height:650px;
	position:relative;
	z-index:3;
}

#keyvisual:before{
	content:"";
	position:absolute;
	z-index:-1;
	top:0;
	left:0;
	background-image: url("image.php?id=017");
	background-size: cover;
	width:100%;
	height:100%;
	/*filter: blur(7px);*/
}
.multiply{
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
background-color:rgba(42,39,39,0.60);
mix-blend-mode: multiply;
}
.glow{
width:100%;
height:100%;
position:absolute;
opacity: 0;
top:0;
left:0;
 background-image: linear-gradient(-135deg, rgba(133, 76, 185, 1) 34%, rgba(56, 144, 170, 1));mix-blend-mode:hard-light;
}

.multiply2,.multiply3{
opacity: 0;
pointer-events: none;
width:100%;
height:100%;
position:fixed;
top:0;
left:0;
background-color:hsla(27,34%,14%,0.43);
mix-blend-mode: multiply;
z-index:1010;
transition: all .3s;
}
.multiply2.open,.multiply3.open{
opacity: 1;
pointer-events:inherit;
}
#keyvisual .space2{
	height:100%;
	position:relative;
	left:0;
	bottom:0;
}
#key_text_cont{
  width:80%;
  height:100%;
  margin:0 auto;
  position:relative;
}
@media screen and (max-width:768px){
#key_text_cont{
  width:calc(90% - 10px);
}
}
#key_text{
	font-family: "Noto Sans JP",'Arial','メイリオ';
	width:fit-content;
	position:absolute;
	z-index:2;
	/*left:0;
	bottom:60px;*/
    bottom: 20%;
    left:0;
}
#key_text p{
  width:fit-content;
	color:#fff;
	font-size:20px;
	font-weight:500;
	line-height:40px;
	text-shadow: 0px 0px 20px #fff;
}
#white_logo{
	width:250px;
	margin-top:20px;
}
.bx-wrapper{
	position:relative;
  padding:0;
	-ms-touch-action:pan-y;
	touch-action:pan-y;
}
#kikagaku_bg{
	background-image:url("image.php?id=001");
	background-size:100% auto;
	background-repeat:repeat-y;
}
#sec01{
	position:relative;
	z-index:2;
	padding:100px 0;
}
.detailtxt{
	margin:50px 0;
	font-weight:700;
}
#news_blog{
	position:relative;
	z-index:2;
	padding:100px 0 100px 0;
}
#news_left{
	width:50%;
}
#news_blog h3 img{
	height:30px;
}
#news_right{
	width:50%;
	margin-top:-30px;
}

.news_honbun p{
font-size: clamp(9px, calc(10px + 0.625vw), 14px);
    line-height: 1.8;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; /* 任意の行数を指定 */
}
@media screen and (max-width:768px){
#news_left{
	width:100%;
}
#news_right{
	width:100%;
	margin-top:0px;
}
}
#news_blog #news_btn{
	margin-top:30px;
	float: right;
}
#news_blog .display_cont{
	justify-content: space-between;
}
#news_blog .beside_50p_cont{
	padding:0 1%;
}
#news_btn{
	width:fit-content;
	border:1px solid #bcbcbc;
	color:#bcbcbc;
	border-radius:3px;
	transition: all .2s;
}
#news_btn:hover{
	background-color:#bcbcbc;
	color:#fff;
}
#news_btn p{
	padding:3px 7px;
	font-size:12px;
	font-weight:700;
}
@media screen and (max-width:1149px){
	#news_blog .beside_50p_cont:first-child{
	margin-bottom:150px;
}
}
.blocklink{
	padding: 30px 0;
    border-bottom: solid 1px #b7b7b7;
    font-size: 0.9rem;
    font-weight: 400;
}
#news_blog dd{
    font-size: 0.9rem;
    font-weight: bold;
    line-height: 1.8em;
    margin-bottom: 5px;
    position: relative;
}
#news_blog dt{
    font-size: 0.8rem;
    font-weight: 400;
    font-style: normal;
    line-height: 1.2em;
    margin-bottom: 30px;
}
#news_blog .EN_minititle{
	color:auto;
}
#sec02{
	position:relative;
	padding:100px 0;
}
#sec02::before{
	content:"";
	width:100%;
	height:580px;
	position:absolute;
	top:0;
	left:0;
	background-color:#F7F8FA;
}
#sec02 h3 img{
	position:relative;
	z-index:2;
	height:30px;
}

#service_cont{
	display:flex;
	justify-content:center;
	position:relative;
	z-index:2;
}
.gradbox{
	width:240px;
	height:200px;
	margin:0 10px;
	position:relative;
}
.gradbox::after{
    content: '';
    display: block;
    position: absolute;
	z-index:-1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	filter: blur(20px);
	mix-blend-mode: multiply;
	transition:all .2s;
}
.gradbox:hover::after{
	opacity:0;
}
.serviceimg1,.serviceimg1::after{
	background-image: url("image.php?id=029");
	background-size: cover;
}
.serviceimg2,.serviceimg2::after{
	background-image: url("image.php?id=030");
	background-size: cover;
}
.serviceimg3,.serviceimg3::after{
	background-image: url("image.php?id=031");
	background-size: cover;
}
.serviceimg4,.serviceimg4::after{
	background-image: url("image.php?id=032");
	background-size: cover;
}
.service_btn_cont{
	position:relative;
}
.service_btn_cont .space{
	margin:100px auto 50px auto;
	/*padding:30px 0;*/
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
}
/*
.service_btn_cont:before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
    background: linear-gradient(to left, #d400a1, #ff0068);
}*/
.service_btn_cont a{
	width:100%;
	height:100%;
	display:flex;
	justify-content: center;
	align-items: center;
}

.service_btn{
	position:relative;
	width:calc(50% - 0.5%);
	height:150px;
	border-radius:10px;
	background-color:#222222;
	box-shadow: 0 0 25px 0 rgba(0, 0, 0, .5);
    transition: all .2s;
}
.service_btn:hover{
	background-color:#000;
	box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0);
}
.service_btn::before {
        content: "";
        position: absolute;
        right: 10px;
        bottom: 10px;
        border: 7px solid;
        border-color: #dc005e #dc005e transparent transparent;
        transform: rotate(90deg);
        transition: all .2s;
    }
.service_btn:hover::before {
        border: 10px solid;
        border-color: #dc005e #dc005e transparent transparent;
}
.service_btn p{
	color:#fff;
}

@media screen and (max-width:480px){
.service_btn{
	height:100px;
}
}
#sec03{
	padding:100px 0;
}
#sec03 h3{
	text-align:center;
}
#sec03 h3 img{
	height:100px;
}
#recruit_cont{
	position:relative;
	z-index:2;
}
#recrit_txtbox{
	width:100%;
	position:absolute;
	top:0;
	left:0;
}
#recruit_cont .space{
	height:300px;
	display:flex;
	justify-content:center;
	align-items:center;
}
#recruit_bg{
	width:85%;
	height:300px;
	display:flex;
	justify-content:center;
	align-items:center;
	position:relative;
	margin:100px 0;
	background-image:url("image.php?id=024");
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
	overflow:hidden;
	border-radius:0 10px 10px 0;
}
#recruit_bg:after{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background-color:#00000090;
	mix-blend-mode:multiply;
}
#recruit_cont p{
	position:relative;
	z-index:2;
	font-size:30px;
	font-weight:700;
	color:#fff;
}
@media screen and (max-width:1149px){
#recruit_bg{
	width:90%;
}
#recruit_cont p{
	font-size:3vw;
}
}
@media screen and (max-width:768px){
#recruit_bg{
	width:95%;
}
#recruit_cont p{
	font-size:4vw;
}
}