@charset "UTF-8";
/*
Theme Name: REVENUE Share Theme
Author: etto co LLC
Description: 株式会社REVENUE Share 公式サイトテーマ
Version: 4.0.0

License: GNU General Public License
License URI: http://www.gnu.org/licenses/gpl.html
*/
@font-face {
	font-family: "NotoSansJP";
	font-weight: 100 900;
	src: url("../fonts/SourceHanSansJP-VF.otf.woff2") format("woff2"), url("../fonts/SourceHanSansJP-VF.otf") format("opentype");
}
:root {
	--colorA: #333;
	--colorB: #ea6060;
	--colorC: #4dc7e1;
	--colorD: #77e14d;
	--colorE: #e1de4d;
}

/* タブレット以上サイズで電話ボタンリンクを非活性状態にする */
@media screen and (min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}

.sp-only {
  display: none;
  @media (max-width: 767px) {
    display: block;
  }
}
.pc-only {
  display: block;
  @media (max-width: 767px) {
    display: none;
  }
}

body {
	font-family: "NotoSansJP", sans-serif;
	color: #171717;
}

.l-wrapper {
	width: 100%;
}

.l-mainHeader {
	width: 100%;
}

.l-mainFooter {
	width: 100%;
}

.l-main {
	width: 100%;
	padding-left: 5vw;
	padding-right: 5vw;
	margin: auto;
}

img {
	max-width: 100%;
}

@media (hover: hover) {
	.hover {
		display: inline-block;
		width: 100%;
		height: 100%;
		transition: all 0.5s ease;
	}
	.hover:hover {
		box-shadow: 0 10px 20px rgb(0 0 0 / 16%);
		transform: translateY(-10px);
	}
}

.sp {
	display: none;
}
.pc {
	display: block;
}
@media screen and (max-width: 479px) {
	.sp {
		display: block;
	}
	.pc {
		display: none;
	}
}



* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
	font-family: 'Rajdhani', sans-serif;
	background: linear-gradient(135deg, #0a0a0a 0%, #1a1a2e 50%, #16213e 100%);
	color: #ffffff;
	line-height: 1.6;
}

.neon-text {
	text-shadow: 0 0 5px #00ffff, 0 0 10px #00ffff, 0 0 15px #00ffff, 0 0 20px #00ffff;
}

.neon-green {
	 color: #39ff14;
    text-shadow: 0 0 5px #39ff14, 0 0 10px #39ff14, 0 0 15px #39ff14;
    color: #fff;
    text-shadow: 0 0 2px #39ff14, 0 0 6px #39ff14;

}

.neon-blue {
	color: #fff;
    text-shadow: 0 0 2px #00ffff, 0 0 4px #00ffff, 0 0 5px #00ffff;
    text-shadow: 0 0 1px #00ffff, 0 0 3px #00ffff, 0 0 6px rgba(0, 255, 255, 0.5);
}

.neon-border {
	border: 2px solid #00ffff;
	box-shadow: 0 0 10px #00ffff, inset 0 0 10px rgba(0, 255, 255, 0.1);
}

.neon-border-green {
	border: 2px solid #39ff14;
	box-shadow: 0 0 10px #39ff14, inset 0 0 10px rgba(57, 255, 20, 0.1);
}

.cyber-grid {
	background-image: 
		linear-gradient(rgba(0, 255, 255, 0.1) 1px, transparent 1px),
		linear-gradient(90deg, rgba(0, 255, 255, 0.1) 1px, transparent 1px);
	background-size: 50px 50px;
}

.hover-glow:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 25px rgba(0, 255, 255, 0.3);
	transition: all 0.3s ease;
}

.section-divider {
	height: 2px;
	background: linear-gradient(90deg, transparent, #00ffff, #39ff14, #00ffff, transparent);
	margin: 4rem 0;
}

.tech-card {
	background: rgba(0, 255, 255, 0.05);
	border: 1px solid rgba(0, 255, 255, 0.2);
	backdrop-filter: blur(10px);
}

.orbitron {
	font-family: 'Orbitron', monospace;
}

.nav-link {
	position: relative;
	transition: all 0.3s ease;
}

.nav-link:hover {
	color: #00ffff;
	text-shadow: 0 0 10px #00ffff;
}

.hero-bg {
	background: radial-gradient(circle at center, rgba(0, 255, 255, 0.1) 0%, transparent 70%),
		linear-gradient(135deg, #0a0a0a 0%, #1a1a2e 100%);
}


@media screen and (max-width: 1023px) {
}
/*追記*/
@media screen and (max-width: 768px) {
.hero-bg > div{
	padding-inline: 10px;
}
	.Job-positions__text{
		display:flex;
		gap: 5px;
		
	}
	.Job-positions__text strong{
		flex-shrink: 0;
		/*min-width:85px*/
	}
	.p-12{
		padding:1rem;
	}
	.p-8{
		padding:1rem;
	}
	.px-12{
		padding-inline:1rem;
	}
	.px-8{
		padding-inline:1rem;
	}
	
}
@media screen and (max-width: 374px) {
	.contact-btn__wrapper{
	flex-direction:column;	
		gap: 20px;
	}
	.contact-btn__wrapper button{
		margin-left:0 !important;
	} 
}
