
/* PC SP 共通 */
#mainv{
	position: relative;
	overflow: hidden;
}
#mainv .image{
	margin-bottom: 0;
	line-height: 0;
	text-align: center;
}
#mainv .image img{
	width: 100%;
	max-height: 800px;
	object-fit: contain;
}
#mainv .catch-box{
	position: relative;
	z-index: 1;
}
#mainv .catch-box .catch_en{
	margin-bottom: 10px;
	font-size: 387.5%; /* 62px */
    font-family: "A1 Mincho", "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
	font-weight:bold;
	line-height:1.1;
    letter-spacing: 0.02em;
}
#mainv .catch-box .catch{
	margin-bottom: 0;
	font-size: 187.5%; /* 30px */
    font-family: "A1 Mincho", "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
	font-weight:bold;
	line-height:1.3;
    letter-spacing: 0.02em;
}
#mainv .catch-box .catch_en strong,
#mainv .catch-box .catch strong{
	font-weight: bold;
}
#mainv .catch-box .catch_en,
#mainv .catch-box .catch{
	text-shadow: 
		0px 0px 10px #ffffff, 0px 0px 10px #ffffff,
		0px 0px 10px #ffffff, 0px 0px 10px #ffffff,
		0px 0px 10px #ffffff, 0px 0px 10px #ffffff,
		0px 0px 10px #ffffff, 0px 0px 10px #ffffff,
		0px 0px 10px #ffffff, 0px 0px 10px #ffffff,
		0px 0px 10px #ffffff, 0px 0px 10px #ffffff;
}

body.home .title-home{
	font-size: 375%; /* 60px */
	line-height: 0.6;
	letter-spacing: 0;
}
body.home .title-home .smalltext{
	font-size: 33.3%; /* 20px */
	letter-spacing: 0.05em;
}
body.home .anchor-type02.type_home a:before,
body.home .anchor-type02.type_home .inner:before{
	bottom: 5px;
	background-color: #ffffff;
	border-top: 0.5px solid #00a0e9;
	border-bottom: 0.5px solid #00a0e9;
	box-shadow: 0px 0px 3px 0px #00cfff;
}
body.home .anchor-type02.type_home a:after,
body.home .anchor-type02.type_home .inner:after{
	width: 10px;
	height: 10px;
	background-color: #ffffff;
	border: 1px solid #00a0e9;
	box-shadow: 0px 0px 3px 0px #00cfff;
}

body.home #home-message{
	position: relative;
	z-index: 2;
}
body.home #home-message .image{
	margin-bottom: 0;
}
body.home #home-message .titles{
	margin-bottom: 25px;
	text-align: left;
}
body.home #home-message .titles .smalltext{
	font-size: 55.56%; /* 20px */
}
body.home #home-message .text{
	margin-bottom: 20px;
}
body.home #home-message .btn{
	margin-bottom: 5px;
}
body.home #home-message .name-box{
	text-align: right;
}
body.home #home-message .nametext{
    margin-bottom: 2px;
	font-size: 106.25%; /* 17px */
    font-family: "A1 Mincho", "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
}
body.home #home-message .nametext .status,
body.home #home-message .nametext .name{
	display: inline-block;
	vertical-align: baseline;
}
body.home #home-message .nametext .status{
	
}
body.home #home-message .nametext .name{
	font-size: 129.41%; /* 22px */
}
body.home #home-message .name_en{
    margin-bottom: 0;
    color: #00699E;
	font-size: 287.5%; /* 46px */
    font-family: "Alex Brush", cursive;
    font-weight: 400;
    line-height: 1.3;
}

body.home #home-recruit{
	background-color: #cadbea;
}
body.home #home-recruit .recruit_h-headbox{
	margin-bottom: 35px;
	position: relative;
}
body.home #home-recruit .recruit_h-subbox{
	margin-bottom: 100px;
}
body.home #home-recruit .recruit_h-subbox .list > li a{
	display: block;
}
body.home #home-recruit .recruit_h-subbox .text-box .text{
	margin-bottom: 30px;
}
body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a{
	display: block;
	text-decoration: none !important;
}
body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a:hover{
	opacity: 0.6;
}
body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .image{
	display: block;
	margin-bottom: 10px;
	line-height: 0;
	text-align: center;
}
body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .text-box{
	line-height: 1.45;
}
body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .joining_y{
	font-size: 93.75%; /* 15px */
}
body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .nametext{
	font-size: 81.25%; /* 13px */
}
body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .nametext .name{
	font-size: 169.23%; /* 22px */
    font-weight: 500;
}
body.home #home-research{
	background-image: url("../images/home/research-bg.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
body.home #home-research > .container-inner{
	padding-top: 100px;
	padding-bottom: 140px;
}
body.home #home-research .title-home{
	margin-bottom: 60px;
	color: #ffffff;
	letter-spacing: -0.04em;
}
body.home #home-research .list > li a{
	min-width: 238px;
    padding-bottom: 10px;
	color: #ffffff;
	font-size: 162.5%; /* 26px */
}
body.home #home-research .list > li a:before,
body.home #home-research .list > li a:after{
	background-color: #ffffff;
}
body.home #home-research .list > li.lsplus a{
	letter-spacing: 0.8em;
}
body.home #home-staff .title-wrapper{
	margin-bottom: 0;
}
body.home #home-staff .title-wrapper .wrapper{
	display: block;
	height: 700px;
	padding-top: 50px;
	padding-bottom: 50px;
	background-image: url("../images/home/staff-bg.jpg");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	box-sizing: border-box;
}
body.home #home-staff .title-wrapper a.wrapper{
	text-decoration: none !important;
}
body.home #home-staff .title-wrapper a.wrapper:hover{
	opacity: 0.6;
}
body.home #home-staff .title-wrapper .wrapper > .inner-wrapper{
	display: flex;
	column-gap: 45px;
}
body.home #home-staff .title-home{
	margin-bottom: 0;
}


@media print, all and (min-width: 751px) {
	/* PC */ 
	#mainv{
		display: flex;
		justify-content: center;
		margin-top: 130px;
		margin-bottom: -170px;
	}
	#mainv .image{
		margin-bottom: 0;
		position: relative;
	}
	#mainv .image img{
		display: inline-block;
	}
	#mainv .image:before,
	#mainv .image:after{
		content: "";
		display: block;
		width: 100px;
		height: 100%;
		position: absolute;
		top: 0;
		z-index: 1;
	}
	#mainv .image:before{
		left: 0;
		background: linear-gradient(-90deg,rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
	}
	#mainv .image:after{
		right: 0;
		background: linear-gradient(90deg,rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
	}
	#mainv .catch-box{
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		align-items: flex-start;
		height: 100%;
		padding-bottom: 60px;
		box-sizing: border-box;
		position: absolute;
		top: 0;
		left: 50%;
		margin-right: -50%;
		transform: translateX(-50%);
		z-index: 2;
	}
	
	body.home #content:before{
		width: 300px;
		height: 1354px;
		background-image: url("../images/home/content-accent_right01.svg");
		top: 0;
		left: calc( 50% + 343px );
		margin: 0;
	}
	body.home #content:after{
		width: 293px;
		height: 700px;
		background-image: url("../images/home/content-accent_right02.svg");
		top: 1500px;
		left: calc( 50% + 420px );
		margin: 0;
	}
	body.home #content #c-wrapper:before{
		width: 234px;
		height: 856px;
		background-image: url("../images/home/content-accent_left01.svg");
		top: 324px;
		right: calc( 50% + 466px );
		margin: 0;
	}
	body.home #content #c-wrapper:after{
		width: 234px;
		height: 820px;
		background-image: url("../images/home/content-accent_left02.svg");
		top: 1750px;
		right: calc( 50% + 520px );
		margin: 0;
	}
	
	body.home .title-home{
		text-align: left;
	}
	body.home .title-home.type_l{
		font-size: 500%; /* 80px */
	}
	body.home .title-home.type_l .smalltext{
		font-size: 31.25%; /* 25px */
	}
	
	body.home #home-message{
		display: flex;
		flex-direction: row-reverse;
		column-gap: 43px;
		padding-top: 170px;
	}
	body.home #home-message .text-box{
		width: 534px;
	}
	body.home #home-message .image-box{
		width: calc( 50% - 37px );
	}
	body.home #home-message .image-box .image img{
		width: 100%;
		height: 413px;
		object-fit: cover;
		object-position: center top;
		clip-path: polygon( 
			4.6237% 0%, 
			100% 0%, 
			100% 100%, 
			4.6237% 100%, 
			0% calc( 100% - 7.3551% ), 
			0% calc( 100% - 4.6237% ) , 
			0% 7.3551% 
		);
	}
	body.home #home-recruit > .container-inner{
		padding: 67px 0 45px;
	}
	body.home #home-recruit .recruit_h-headbox{
		padding-top: 55px;
	}
	body.home #home-recruit .recruit_h-headbox .titles{
		margin-bottom: 60px;
	}
	body.home #home-recruit .recruit_h-headbox .image01{
		position: absolute;
		top: 0;
		right: 93px;
	}
	body.home #home-recruit .recruit_h-subbox .text-box{
		padding-left: 30px;
	}
	body.home #home-recruit .recruit_h-subbox .list{
		display: grid;
		grid-template-columns: 1fr 1fr;
		align-items: end;
		gap: 15px 80px;
	}
	body.home #home-recruit .recruit_h-voicebox{
		display: flex;
		flex-direction: row-reverse;
		column-gap: 68px;
	}
	body.home #home-recruit .recruit_h-voicebox .titles{
		flex: 1;
	}
	body.home #home-recruit .recruit_h-voicebox .voice_h-list{
		display: flex;
		column-gap: 31px;
	}
	body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .text-box{
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		column-gap: 30px;
		padding: 0 10px;
	}
	body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .joining_y{
		line-height: 1.75;
	}
	body.home #home-news > .container-inner{
		overflow: hidden;
	}
	body.home #home-news .title-home{
		float: left;
		width: 180px;
		margin-bottom: 60px;
	}
	body.home #home-news .news-box{
		float: right;
		width: 796px;
        min-height: 180px;
	}
	body.home #home-news .anchor{
		float: left;
		width: 180px;
	}
	body.home #home-research .list{
		display: flex;
		justify-content: center;
		column-gap: 85px;
	}
	body.home #home-staff .title-wrapper .wrapper > .inner-wrapper .anchor{
		padding-top: 15px;
	}
}

@media only screen and (max-width: 750px) {
	/* SP */
	#mainv{
		margin-top: 67px;
		margin-bottom: -40px;
	}
	#mainv .image{
		margin: 0 -50% 0 0;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	#mainv .catch-box{
		padding: calc( 55 / 375 * 100% ) 30px 20px;
	}
	#mainv .catch-box .catch_en{
		font-size: 8.53vw; /* 32px */
		line-height: 1.3;
	}
	#mainv .catch-box .catch{
		font-size: 4.8vw; /* 18px */
	}
	
	body.home #content:before{
		width: 148px;
		height: 640px;
		background-image: url("../images/home/content-accent_right01_sp.svg");
		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: contain;
		top: 0;
		right: -40px;
		margin: 0;
	}
	body.home #content:after{
		content: "";
		display: block;
		width: 127px;
		height: 322px;
		background-image: url("../images/home/content-accent_right02_sp.svg");
		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 1500px;
		right: -43px;
		left: auto;
		margin: 0;
	}
	body.home #content #c-wrapper:before{
		content: "";
		width: 102px;
		height: 402px;
		background-image: url("../images/home/content-accent_left01_sp.svg");
		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 394px;
		left: -26px;
		margin: 0;
		z-index: 1;
	}
	body.home #content #c-wrapper:after{
		content: "";
		width: 129px;
		height: 495px;
		background-image: url("../images/home/content-accent_left02_sp.svg");
		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 2422px;
		left: -54px;
		margin: 0;
		z-index: 1;
	}
	
	body.home .title-home{
		font-size: 200%; /* 32px */
		line-height: 0.75;
	}
	body.home .title-home .smalltext{
		font-size: 56.25%; /* 18px */
	}
	
	body.home #home-message{
		margin-right: 30px;
		margin-left: 30px;
		padding-top: 75px;
	}
	body.home #home-message .image-box{
		margin-bottom: 5px;
	}
	body.home #home-message .text-box{
		display: flex;
		flex-direction: column;
	}
	body.home #home-message .titles{
		margin-bottom: 10px;
		font-size: 112.5%; /* 18px */
	}
	body.home #home-message .titles .smalltext{
		font-size: 100%; /* 18px */
	}
	body.home #home-message .text-box .name-box{
		order: -1;
		margin-bottom: 10px;
		text-align: center;
	}
	body.home #home-message .nametext{
		margin-bottom: 5px;
		font-size: 87.5%; /* 14px */
	}
	body.home #home-message .nametext .name{
		font-size: 114.2857%; /* 16px */
	}
	body.home #home-message .name_en{
		font-size: 137.5%; /* 22px */
	}
	body.home #home-message .text{
		line-height: 1.75;
	}
	body.home #home-message .anchor{
		display: flex;
		justify-content: center;
	}
	body.home #home-recruit > .container-inner{
		padding-top: 40px;
		padding-bottom: 40px;
	}
	body.home #home-recruit .recruit_h-headbox{
		margin-bottom: 5px;
	}
	body.home #home-recruit .recruit_h-headbox .image01{
		margin-bottom: 8px;
	}
	body.home #home-recruit .recruit_h-headbox .image01 img{
		max-width: calc( 120 / 315 * 100% );
	}
	body.home #home-recruit .recruit_h-headbox .image02{
		margin-right: -30px;
		text-align: right;
	}
	body.home #home-recruit .recruit_h-headbox .image02 img{
		max-width: calc( 260 / 315 * 100% );
	}
	body.home #home-recruit .recruit_h-subbox{
		margin-bottom: 50px;
	}
	body.home #home-recruit .recruit_h-subbox .list > li:not(:last-child){
		margin-bottom: 15px;
	}
	body.home #home-recruit .recruit_h-voicebox .voice_h-list > li:not(:last-child){
		margin-bottom: 35px;
	}
	body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .text-box{
		text-align: center;
	}
	body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .joining_y{
		display: block;
		font-size: 100%; /* 16px */
	}
	body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .nametext{
		display: block;
		font-size: 112.5%; /* 18px */
	}
	body.home #home-recruit .recruit_h-voicebox .voice_h-list > li a .nametext .name{
		font-size: 111.1%; /* 20px */
	}
	body.home #home-news .news-box{
		margin-bottom: 30px;
	}
	body.home #home-news .anchor{
		display: flex;
		justify-content: center;
	}
	body.home #home-research > .container-inner{
		padding-top: 60px;
		padding-bottom: 60px;
	}
	body.home #home-research .list{
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 30px;
	}
	body.home #home-research .list > li a{
		padding-left: 14px;
		font-size: 137.5%; /* 22px */
	}
	body.home #home-staff .title-wrapper .wrapper{
		height: 230px;
		padding-top: 15px;
		padding-bottom: 15px;
	}
	body.home #home-staff .title-wrapper .wrapper > .inner-wrapper{
		justify-content: space-between;
		column-gap: 20px;
	}
	body.home #home-staff .title-home{
		text-align: left;
	}
    
}