@charset "utf-8";
* {margin: 0;padding: 0;
   box-sizing:border-box;}
.sp1024on{display: none;}
.sp430on{display: none;}
body{
	background-color: #010317;
	overflow-x: hidden;
}
.sec_ma{margin-top: 30px;}
.s_logo{margin-top: 3em;}
.k_topvideo{width: 100%;}
.k-video_pc,.k-video_sp{
	width: 100%;
	height: auto;
	display: block;
}
.k-video_sp{
	display: none;
}
.logo_bg{
	width: 100%;
	height: auto;
	position: relative;
	display: block;
}
.logo_img{
	position: relative;
	width: 100%;
	vertical-align: bottom;
}
.logo_sp{display: none;}
/*ABOUT*/
.about_bg{
	width: 92%;height: auto;
	max-width: 1207px;
	min-height: 707px;
	background-image: url("about_waku1920.png");
	background-size: 100% 100%;
	margin: 0 auto;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
h2{margin: 0;padding: 0;text-align: center;}
.about_h2img{
	width:80%; 
	max-width:386px;
	filter: drop-shadow(0px 0px 18px #005fff);
	margin: 0 auto;
	margin-bottom: 20px;
}
.about_blue_p{
	font-size: 1.5em;
	line-height: 1.8em;
	text-shadow: 0px 0px 10px #004eff;
	margin-bottom: 1em;
}
.about_p{
	font-size: 18px;
	line-height: 2.2em;
	font-weight:400;
}
.about_btn_pc,.about_btn_sp{
	width: 90%;
	max-width: 652px;
	height: auto;
	margin: 0 auto;
	margin-top:2em;
	margin-bottom:0.5em;
	filter: drop-shadow(0px 0px 10px #02245d);
}
.about_btn_pc:hover{
	opacity: 0.9;
	filter: hue-rotate(150deg);
}
.about_btn_sp{display: none;}
/*PROJECTS*/
.s_projects,.s_team{
	margin-top: 2em;
}
.projects_h2img{
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	margin-bottom: 20px;
}
.pro_oya_div{
	width: 92%;
	max-width: 1210px;
	margin: 0 auto;
	display: flex;
	justify-content: space-around;
}
.pro_ko_div{
	border-right: 4px solid #FFF;
	border-left: 4px solid #FFF;
	border-top: 3px solid #FFF;
	border-bottom: 3px solid #FFF;
	width: 33%;
	box-shadow: 0px 0px 10px 8px #0043b8;
	margin:0 auto;
	margin-right: 6px;
	margin-left: 6px;
}
.pro_mat_u{
	width: 100%;height: 100%;
	background-image: url("pro-mat_u.png");
	background-position: top center;
	background-size: 100% auto;
	background-repeat: no-repeat;
}
.pro_mat_s{
	width: 100%;height: 100%;
	background-image: url("pro-mat_s.png");
	background-position: bottom center;
	background-size: 100% auto;
	background-repeat: no-repeat;
}
.pro_in{
	width: 80%;
	margin: 0 auto;
	padding: 50px 0;
	text-align: center;
}
.pro_name{
	font-weight: 900;
	font-size: 1.5em;
	text-align: left;
	margin-bottom: 0.5em;
}
.pro_img{
	width: 100%;
	max-width: 480px;
	margin-bottom: 0.5em;
}
.pro_p{
	font-size: 14px;
	letter-spacing: 1px;
	text-align: left;
	line-height: 1.7em;
	margin-bottom: 1em;
}
.pro_mini{
	font-size: 12px;
	text-align: center;
}
.pro_btn{width: 100%;}
.pro_btn:hover{
	filter: hue-rotate(220deg);
}
.pro_csimg{
	width: 80%;
	max-width: 277px;
	margin: 3% auto;
	text-align: center;
}
.btn_pro p{
	color: #FFF;
	padding: 10px 0;
}
.btn_pro:hover{
	border: 3px solid red;
	color: red;
	box-shadow: 0 0 10px yellow;
}
/*GENESIS*/
.gene_div{
	width: 92%;
	max-width: 1200px;
	border: 1px solid #FFF;
	margin: 0 auto;
	margin-bottom: 80px;
	background-color: #010317;
	padding: 70px 40px;
}
.gene_h2img{
	width: 70%;
	max-width: 332px;
}
.gene_team_div{
	margin-top: 8em;
	/*border: 1px solid #FFF;*/
	width: 100%;
	background-image: url("gene-team-bg.jpg");
	background-position: top 10vh center;
	background-size: 100% auto;
	background-repeat: no-repeat;
	vertical-align: bottom;
}
.gene_oya_div{
	display: flex;
}
.gene_pic_div,.gene_moji_div{
	width: 50%;
	display: flex;
	justify-content: center;
	flex-direction: column;
	/*border: 1px solid #FFF;*/
}
.gene_title{
	white-space: nowrap;
	font-size: 34px;
	margin: 0;padding: 0;
	font-family: "Montserrat",sans-serif;
	font-weight:600;
	letter-spacing: 0;
	text-align: left;
	margin-bottom: 0.5em;
}
.gene_p{
	font-size: 16px;
	font-weight: 400;
	padding-right: 1em;
}
.gene_in_div{
	/*border: 1px solid blue;*/
}
.gene_inbt_div{
	/*border: 1px solid red;*/
	height: 100%;
	text-align: center;
	position: relative;
	display: flex;
	align-items: end;
}
.gene_csimg{
	max-width:443px;
	width: 90%;
	vertical-align: bottom;
	filter: drop-shadow(0px 0px 12px #005fff);
 }
.gene_img{
	width: 100%;
	vertical-align: bottom;
}
/*TEAM*/
.team_h2img{
	width: 80%;
	max-width: 950px;
}
.team_oya_div{
	display: flex;
	justify-content: space-between;
	width: 90%;
	max-width: 1000px;
	margin:0 auto;
	margin-top: 2em;
}
.team_ko_div{
	margin-left: 1%;
	margin-right: 1%;
}
.team_img{
	width: 100%;
	max-width: 315px;
}
.team_pm{
	text-align: center;
	font-size: 30px;
	margin: 0 auto;
	margin-top: 60px ;
	margin-bottom: 0px;
}
.team_bn{
	width: 100%;
	max-width: 496px;
}
/*Footer*/
footer p{
	text-align: center;
	font-size: 16px;
    font-weight: 400;
    opacity: 0.7;
    padding: 4px 0;
}
/*FOOTER(下部にメニューがある場合)
footer {
	height: auto;
	padding-top: 50px;
	padding-bottom: 50px;
}
.ft_column{
	gap:3rem;
	display: flex;
    flex-direction: column;
}
.footer_nav {
	width: 668px;
	justify-content: space-around;
}
.flex-center{
	display: flex;
}
footer a {
	font-size: 15px;
	font-size: 700;
}
footer p {
	font-size: 15px;
	font-weight: 400;
	opacity: 0.7;
}*/

@media screen and (min-width: 1921px) {
section,.gene_team_div{
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
}
.s_top{
	width: 100%;
	max-width: 100% !important;
	margin: 0 auto;
}
}
@media screen and (max-width: 1366px) {
.pro_in{padding: 10% 0;}
.pro_name{
	font-size: 1.2em;
}
.pro_oya_div{width: 92%;
max-width:92%;
}
.pro_p{font-size: 12px;}
.pro_img{width: 70%;}
.pro_in{padding: 4% auto;}
}
@media screen and (max-width: 1024px) {
.sp1024on{display: block;}
.sp1024non{display: none;}
.sp1024-431non{display: none;}
.column{gap:1rem;}
.about_h2img{width: 70%;}
.gene_div{
	width: 92%;
	max-width: 92%;
	padding: 30px 30px;
}
.gene_h2img{width: 35%;}
.gene_csimg{margin-top: 1em;}
}
@media screen and (max-width: 820px) {
.sp820non{display: none;}
.about_bg{
	width: 92%;height: auto;
	max-width: 92%;
	min-height: 707px;
	background-image: url("about_waku820.png");
	background-size: 100% 100%;
}
.pro_img{width: 100%;}
}
/*スマホサイズ表示*/
@media screen and (max-width: 767px) {
.k-video_pc{display: none;}
.k-video_sp{display: block;}
.logo_pc{display: none;}
.logo_sp{display: block;}
.about_h2img{width: 38vw;}
.about_blue_p{font-size: 3.5vw;}
.about_p{font-size: 2.7vw;}
.pro_p{font-size: 12px;}
/*GENESIS*/
.gene_title{font-size: 5vw;}
.gene_oya_div{
	flex-direction: column-reverse;
}
.gene_moji_div,.gene_pic_div{
	width: 100%;
}
.gene_p{padding-right: 0;
padding: 1em 0;
}
.gene_inbt_div{
	justify-content: center;
}
/*TEAM*/
.gene_team_div{
	background-image: url("gene-team-bg_sp.jpg");
	background-position: top 70vh center;
}
.team_oya_div{
	width: 90%;
	flex-wrap: wrap;
}
.team_ko_div{
	width: 46%;
	margin-left: 2%;
	margin-right: 2%;
	margin-bottom: 20px;
}
.team_sita_div{
	margin-top:20px;
}
.team_sita_div .team_ko_div{
	/*insidework,A3のバナー*/
	width: 100%;
	margin-bottom: 1em;
}
.team_pm{
	font-size: 4vw;
}
}
@media screen and (max-width:540px) {
/*PROJECT*/
.pro_oya_div{
	flex-direction: column;
	justify-content: center;
}
.pro_ko_div{width: 98%;
	margin-bottom: 1.5em;
}
.pro_p{font-size: 14px;}
}
/*スマホサイズ*/
@media screen and (max-width: 430px) {
.sp430on{display: block;}
.sp1024-431non{display: block;}
.s_logo{margin-bottom: 1em;}
.about_bg{
	background-image: url("about_waku430.png");
}
.about_h2img{width: 48vw;
margin-top: 10%;}
.about_blue_p{font-size: 4.5vw;}
.about_p{font-size: 14px;}
.about_btn_pc{display: none;}
.about_btn_sp{
	display: block;
	width: 90%;
	max-width: 492px;
	margin-top:1.5em;
}
.gene_team_div{
	margin-top:4em;
	background-image: url("gene-team-bg_sp.jpg");
	background-position: top 54vh center;
}
.gene_title{font-size: 6.5vw;}
.gene_p{font-size: 15px}
footer p{font-size: 12px;}
.pro_mini{
	font-size: 10px;
}
}
@media screen and (max-width: 375px) {
	.gene_div{padding:30px 20px;}
	.gene_p{font-size: 14px}
}
@media screen and (max-width: 320px) {
p{font-size: 12px !important;}
}