@charset "utf-8";
/*
Theme Name:   NTT AI-CIX 2026
Theme URI: https://aicix.jp/
Description: 
Author: scitech
Tags: 
Version: 0.1.0
*/

/*--------------------*
 *  共通
 * --------------------*/
.breadcrumbs-wrap{
	position: relative;
	z-index: 2;
}

.recruit-section{
	padding: 100px 0;
	position: relative;
}
.recruit-section > .wp-block-group__inner-container{
	position: relative;
    z-index: 1;
}

.wrapContent{
	padding-bottom: 2em !important;
}

.borderShadow{
	background: #fff;
}

@media (max-width: 600px){
	.recruit-section{
		padding: 40px 10px;
	}
	.recruit-section.has-background{
		padding: 50px 10px;
	}
	.recruit-section p,
	.recruit-section li{
		font-size: 1rem !important;
	}
	
	.recruit-section .wp-block-spacer[style="height:50px"]{
		height: 25px !important;
	}
	.recruit-section .wp-block-spacer[style="height:80px"]{
		height: 40px !important;
	}
	.recruit-section .wp-block-spacer[style="height:100px"]{
		height: 50px !important;
	}
}

/* 投稿リストBOX */
.recruit-section .boxTeams{
	background: #fff;
	border-radius: 0;
	padding: 1rem;
}

@media (min-width: 641px){
	.recruit-section .wrapFlexSplit:has(> :nth-child(2):last-child) .boxTeams {
		width: 48%;	
	}
	.recruit-section .wrapFlexSplit:has(> :nth-child(1):last-child) .boxTeams,
	.recruit-section .wrapFlexSplit:has(> :nth-child(3):last-child) .boxTeams{
		width: 30%;	
	}
}


.recruit-section .boxTeams .inner img{
	border-radius: 0;
}

.recruit-section .boxTeams .teamTitle{
	/*font-size: 1.5rem;*/
	color: #1800AD;
	letter-spacing: 0;
	margin-bottom: 20px;
}
.recruit-section .boxTeams .teamEng{
	display: none;
}

.recruit-section .boxTeams .teamText{
	display:block !important;
	/*font-size: 1.25rem;*/
	font-size: 20px;
	line-height: 1.5;
	text-align:center;
	/*font-weight: bold;*/
	/*white-space: pre-line;*/
}

@media (max-width: 960px){
	.recruit-section .boxTeams .wrapTeam{
		padding-bottom: 10px;
	}
}

/*----- 装飾 -----*/
.decos{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
	z-index: -1;
}
.decos figure{
	position: absolute;
}
.decos figure img{
	width: revert-layer;
}

@media (max-width: 960px){
	.decos figure{
		max-width: 30%;
	}
}
@media (max-width: 600px){
	.decos figure,
	.wrapContent div::before,
	.wrapContent div::after{
		opacity: 0.5;
	}
}


/*--------------------*
 *  TOP 
 * --------------------*/
.recruit .wrapPageHeader{
	display: none;
}
.recruit .wrapContent{
    padding-top: 5px;
}

/*----- FV -----*/
.fv{height: 90vh;padding: 0;}

.fv .wp-block-cover__inner-container{
    height: 100%;	
}

.fv .fv-logo{
    max-width: 200px;
    aspect-ratio: 1 / 1;
    position: absolute;
    top: 1rem;
    left: 3rem;
	z-index: 2;
}

.fv .fv-title{
	z-index: 1;
	transform:translateY(-50%) rotate(-7deg);
	font-size:clamp(28px, 5vw, 64px);
}

@media (max-width: 960px){
	.fv{
		height: 70vh !important;
		min-height: 70vh !important;
	}
	.fv .fv-logo{
        max-width: clamp(80px, 20vw, 150px);
        z-index: 2;
        left: 1rem;
	}
}
@media (max-width: 600px){
	.fv .wp-block-group:has(.fv-title){
		position: absolute;	
    	top: 30%;
	}
}

.fv .decos{
	z-index: 0;
}

.fv .decos .deco1{
    top: 0;
    left: 25%;
    transform: translate(0, -50%) scale(2);
}
.fv .decos .deco2{
    top: 0;
    left: 50%;
    transform: translate(0, -50%);
}
.fv .decos .deco3{
    top: -5%;
    right: -5%;
    transform: rotate(90deg) translate(0, 0) scale(0.8);
}
.fv .decos .deco4{
    top: 75%;
    left: 0;
    transform: translate(0, -50%);
}
.fv .decos .deco5{
    top: 70%;
    left: 40%;
    transform: rotate(80deg) translate(0, 0);
}

@media (max-width: 960px){
	.fv .decos .deco1{
		left: 40%;
	}
	.fv .decos .deco2{
		display: none;
	}
}

.fv + *{
	position: relative;
}
.fv + *::before{
    content: "";
    display: block;
    width: 20vw;
    aspect-ratio: 1 / 1;
    background-image: url(/wp-content/uploads/2026/03/shapes_circle-green.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
	right: 15%;
    transform: translate(0, -75%);
}




/*----- イントロ -----*/
#intro .fv-subtitle{
	font-size: clamp(24px, 5vw, 48px);
	text-shadow: 1px 0 #00e5ff, -1px 0 #ff007f;
	letter-spacing: 1px;
	margin-bottom: 1em;
}

#intro .decos .deco1{
    top: 50%;
    right: 0;
    transform: translate(50%, -50%);
}

/*
.FV-sub-title::before{
    content:attr(data-text);
    position:absolute;
    left:1px;
    top:0;
    color:#00e5ff;
    z-index:-1;
}
.FV-sub-title::after{
    content:attr(data-text);
    position:absolute;
    left:-1px;
    top:0;
    color:#ff007f;
    z-index:-2;
}
*/

/*----- チーム紹介 -----*/
#Teams .decos .deco1{
    top: 35%;
    right: 0;
    transform: translate(25%, -50%);
}
#Teams::before{
    content: "";
    display: block;
    width: 20vw;
    aspect-ratio: 1 / 1;
    background-image: url(/wp-content/uploads/2026/03/shapes_triangle-orange2.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-25%, -45%) rotate(80deg) scale(0.8);
}


/*----- 職種紹介 -----*/
#Jobs .boxTeams{
	background: #ECECED;
}
#Jobs .boxTeams　a:has(.wp-post-image),
#Jobs .boxTeams .wp-post-image{
	display: none;
}

#Jobs .boxTeams .wrapTeam{
	padding-top: 45px;
}

#Jobs .decos .deco1{
    top: 15%;
    right: 0;
    transform: translate(50%, -50%);
}

#Jobs .wrapFlexSplit{
	position: relative;
}
#Jobs .wrapFlexSplit::before{
    content: "";
    display: block;
    width: 15vw;
    aspect-ratio: 1 / 1;
    background-image: url(/wp-content/uploads/2026/03/shapes_triangle-pink.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 100%;
    left: 0;
    transform: translate(-55%, -75%) rotate(70deg);
    z-index: -1;
}
#Jobs .wrapFlexSplit::after{
    content: "";
    display: block;
    width: 15vw;
    aspect-ratio: 1 / 1;
    background-image: url(/wp-content/uploads/2026/03/shapes_circle-blue.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 100%;
    left: 100%;
    transform: translate(-50%, -45%);
    z-index: -1;
}

#Jobs::before{
	content: "";
    display: block;
    width: 20vw;
    aspect-ratio: 1 / 1;
    background-image: url(/wp-content/uploads/2026/03/shapes_circle-green.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-50%, -50%);
}
#Jobs::after{
    content: "";
    display: block;
    width: 20vw;
    aspect-ratio: 1 / 1;
    background-image: url(/wp-content/uploads/2026/03/shapes_rectangle-red.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(-15%, -35%) rotate(90deg) scale(0.7);
}

/*----- 会社概要 -----*/
#Jobs .decos .deco2{
	top: 75%;
    right: 0;
    transform: translate(50%, -50%) scale(1.5);
}
#Jobs .decos .deco3{
    top: 75%;
    left: 0;
    transform: translate(-50%, 0);
}
#Jobs .decos .deco4{
    top: 100%;
    left: 75%;
    transform: translate(-50%, 25%);
}

@media (max-width: 960px){
	#Jobs .wrapFlexSplit::before,
	#Jobs .wrapFlexSplit::after{
		display: none;
	}
}


/*--------------------*
 *  チームページ
 * --------------------*/
.single-cpt_teams h2.wp-block-heading,
.single-cpt_teams h3.wp-block-heading,
.single-cpt_teams h4.wp-block-heading{
    font-size: 22px;
	letter-spacing: 0.1rem;
	margin-bottom: 0.5em;
}

/*----- チームFV -----*/
#team-fv h2.wp-block-heading{
    font-size: clamp(32px, 5vw, 42px);	
}

#team-fv .decos .deco1{
    top: -35%;
    right: 0%;
    transform: rotate(90deg) scale(0.8);
}
#team-fv .decos .deco2{
    top: 75%;
    left: 0;
    transform: translate(0, -50%);
}
#team-fv .decos .deco3{
    top: 90%;
    right: 5%;
}
#team-fv .decos .deco4{
    top: 0;
    left: 25%;
    transform: translate(0, -100%) scale(1.5);
}

/*----- チーム紹介文 -----*/
#team-intro .decos .deco1{
	top: 70%;
    left: 0;
    transform: rotate(-60deg);
}

/*----- チームインタビュー -----*/
#team-interview .decos .deco1{
    top: 65%;
    left: 0;
}
#team-interview .decos .deco2{
    top: 35%;
    left: -5%;
    transform: rotate(45deg) scale(0.5);
}
#team-interview .decos .deco3{
    top: 85%;
    right: 0;
}
#team-interview .decos .deco4{
    top: 15%;
    right: 0%;
}

/*----- チームメンバー -----*/
#team-member .decos .deco1{
    top: 0;
    left: 0;
    transform: translate(0, -50%);
}
#team-member .decos .deco2{
    top: 80%;
    right: -5%;
    transform: rotate(80deg);
}


/*--------------------*
 *  職種ページ
 * --------------------*/
#job-fv h2.wp-block-heading{
    font-size: clamp(32px, 5vw, 42px);	
}

#job-fv .decos .deco1{
    top: 0;
    left: 0;
    transform: translate(50%, -50%) rotate(45deg);
}
#job-fv .decos .deco2{
    top: 50%;
    right: 0;
    transform: translate(0%, -50%);
}
/*
#job-fv .decos .deco3{
    top: 100%;
    left: 0;
    transform: translate(-10px, -50%);
}
*/


#job-overview .wp-block-table:last-child {
	background: #fff;
}

#job-overview .decos .deco1{
    top: 5%;
    left: 75%;
    transform: translate(-25%, -25%) rotate(195deg) scale(0.8);
}
#job-overview .decos .deco2{
	top: 20%;
    left: 25%;
    transform: translate(-100%, -25%) scale(1.5);
}
#job-overview .decos .deco3{
    top: 40%;
    right: 0;
    transform: translate(50%, -50%) scale(1.5);
}
#job-overview .decos .deco4{
    top: 60%;
    left: 25%;
    transform: translate(-75%, 0%);
}
#job-overview .decos .deco5{
	top: 80%;
    right: 25%;
    transform: translate(50%, 0);
}

@media (max-width: 600px){
	#job-fv{
		padding-bottom: 0;
	}
	
	  #job-fv .decos .deco1 {
		left: -120px;
	  }
	  #job-fv .decos .deco2 {
		right: -80px;
	  }
	
	#job-overview .borderShadow{
		padding: 10px 30px 20px 30px !important;
		box-shadow: none !important;
		background: none !important;
		margin-bottom: 0px !important;
	}
	#job-overview .wp-block-table:last-child {
		background: #fff;
	}
	
	#job-overview .decos .deco1 {
        top: 18%;
        right: 0;
        transform: scale(1.5) translate(40%, 0%);
    }
    #job-overview .decos .deco2 {
        top: 20%;
        left: 0;
        transform: translate(-25%, 0);
    }	
    #job-overview .decos .deco3 {
        left: -50px;
        transform: scale(1.2);
    }
    #job-overview .decos .deco4 {
        top: 63%;
        left: 85%;
        transform: translate(0%, 0%) scale(2.5) rotate(270deg);
    }
    #job-overview .decos .deco5 {
        bottom: 10%;
        right: 0%;
    }	
}

#job-entry{
	margin-top: 50px;
}

/*--------------------*
 *  フローCTA
 * --------------------*/
.flow-cta{
    --cta-width: clamp(220px, 15vw, 400px);
    width: var(--cta-width);
    position: sticky;
    bottom: 2rem;
    left: 2rem;
    z-index: 5;
    margin-top: calc(var(--cta-width) * 1.2 * -1);
}

.flow-cta .flow-cta_media{
    width: 85%;
    margin: 0 auto -3px;
}
.flow-cta .flow-cta_content{
    background: #fff;
    border: 5px solid #41A8AF;
    border-radius: 1rem;
    padding: 1.5rem;
    text-align: center;
    box-shadow: 0 5px 10px #aaa;
}


.flow-cta .wp-block-buttons {
	gap: 1rem;
    margin-top: 1rem;
    font-size: 1rem;
}
.flow-cta .wp-block-buttons .wp-block-button{
    width: 100%;
}
.flow-cta .wp-block-buttons .wp-block-button__link{
    display: block;	
    width: 100%;
    padding: 0.75rem;
}

@media (max-width: 600px){
	.flow-cta{display: none;}
}