@charset "utf-8";
/* CSS Document */

.pcOnlyB{
	display:block;
}

.pcOnlyI{
	display:inline;
}

.spOnly, .spOnlyI, .spOnlyB{
	display:none;
}

/* トップページ */
.mvArea{
	width: 70%;
	max-width: 750px;
	margin: 8.5rem auto 5rem;
}

.mvArea:before{
	width: 26rem;
	top: -3.8rem;
	left:-30rem;
}
.mvArea:after{
	width: 26rem;
	top: -3.8rem;
	right: -30rem;
}

/*
ディーキャリアとは
--------------------------------------------------
*/

.areaMvToAbout{
	width: 100%;
	overflow: hidden;
}

.secAbout{
	position: relative;
	margin-top: -5rem;
}

.about__area__inner{
	padding: 0 20px;
	max-width: 1000px;
	width: auto;
	margin: 0 auto;
}

.about__header{
	padding-top: 3rem;
	grid-template-columns: max-content 1fr;
	gap: 2rem;
	margin-bottom: 5rem;
}

.about__header__txt1{
	font-size: min(3.13vw,32px);
}

.about__header__txt2{
	font-size: min(4.7vw,48px);
}

.about__header__image{
	margin-top: -1rem;
	position: relative;
	z-index: 2;
	width: 75%;
}

.about__content{
	padding-bottom: 5rem;
}

.about__content dt{
	font-size: 3.4rem;
}

.about__content dd{
	font-size: 2.4rem;
}

.about__content dd span{
	font-size: 3rem;
	font-weight: 900;
}

/*
大人の発達障害とは
--------------------------------------------------------
*/

.secDd{
	padding: 8rem 20px 16rem;
}

.dd__header{
	margin-bottom: 8rem;
}

.dd__content{
	max-width: 1000px;
	padding: 0 20px;
	margin: 0 auto 8rem auto;
	font-size: 2.8rem;
}


/*
お悩み
--------------------------------------------------------
*/

.secWorry{
	padding: 8rem 20px 16rem;
}

.worry__header{
	margin-bottom: 8rem;
}

.worry__list{
	max-width: 1410px;
	padding: 0 20px;
	margin-bottom: 8rem;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 8rem;
	margin-inline: auto;
}

.worry__list figcaption{
	min-height: 3.2em;
	line-height: 1.2;
	font-size: 2.8rem;
	border-radius: 1.5rem;
	padding-bottom: 0.2em;
}

/*
ステップ
--------------------------------------------------------
*/

.secStep{
	background-size: 100% auto;
	padding: 18rem 20px 16rem;
}

.step__read{
	max-width: 1520px;
	margin: 0 auto 8rem auto;
	display: grid;
	grid-template-columns: 3fr 2fr;
	gap: 8rem;
}

.step__read>p{
	margin-bottom:0;
	font-size: 2.4rem;
}

.step__flow{
	max-width: 1520px;
	margin: 0 auto 8rem auto;
	grid-template-columns:1fr 8rem 1fr 8rem 1fr;
	gap: 1rem;
}

.step__flow__item{
	padding: 2.4rem;
	border-radius: 2rem;
	& h3{
		font-size: 5rem;
		line-height: 1;
		border-bottom: 0;
		padding: 2rem 0;
		margin-bottom: 0;
		& span{
			display: block;
			background-color: var(--color2);
			color: #FFF;
			font-size: 3.2rem;
			padding: 0.8rem;
			margin-top: 1.5rem;
		}
	}
	& .grid{
		grid-template-columns:1fr;
		align-items: center;
		& figure{
			padding:0 2rem;
			text-align: center;
			& img{
				width: 65%;
				height: auto;
				aspect-ratio: 1/1;
				object-fit: contain;
			}
		}
	}

	& .txt1{
		line-height: 1.1;
		font-size: 3rem;
	}
	& .txt2{
		font-size: 2.6rem;
		min-height: 3em;
		line-height: 1.4;
	}

	& .point{
		grid-template-columns: 1fr;
		gap: 1.5rem;
		& li{
			border: solid 4px var(--color2);
			font-size: 2.8rem;
			padding: 1rem;
		}
	}
}

.step__flow__arrow{
	align-self: center;
}

.step__flow__arrow img{
	width: auto;
	transform: rotate(0);
}
/*
お知らせ・イベント
--------------------------------------------------------
*/

.secInfo{
	padding:8rem 20px 16rem;
}

.info__header{
	margin-bottom: 8rem;
}

.info__list{
	max-width: 1200px;
	width:fit-content;
	margin: 0 auto 8rem auto;
}


/*
オフィス情報
--------------------------------------------------------
*/

.office__inner{
	padding: 8rem 20px;
	container-type: inline-size;
}

.office__header{
	margin-bottom: 8rem;
}

.office__grid{
	max-width: 1700px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr max-content;
	gap: 4rem;
	
}

.office__grid figure{
	flex-wrap: wrap;
	width: 100%;
	gap: 2rem;
	margin-bottom: 0;
	align-items: flex-start;
}

.office__grid figure img{
	width: calc(50% - 1rem);
	height: auto;
	aspect-ratio:unset;
	object-fit: cover;
}

@container (width < 1200px) {
	.office__grid figure img{
		width: 100%;
	}
}

.office__grid__content{
	& ul{
		margin: 0 0 4rem 0;
	}
	& ul>li{
		margin: 0 0 1rem 1.2em;
	}

	& .taikyu{
		padding: 2rem 4rem;
	}
}

/*
アクセス
--------------------------------------------------------
*/

.secAccess{
	padding: 8rem 20px 16rem;
}
.access__header{
	margin-bottom: 8rem;
}

.access__content{
	max-width: 1600px;
	margin: 0 auto 16rem auto;
	text-align: center;
}
.access__content .gmap{
	width: 100%;
	height: auto;
	margin-top: 0;
}

.access__way__header{
	margin-bottom: 8rem;
}

.access__way__flow{
	grid-template-columns: repeat(3,1fr);
	gap: 9rem;
	max-width: 1400px;
	margin: 0 auto;
}

.access__way__flow li:not(:nth-of-type(3n)) figure:after{
	content: "";
	width: 5.4rem;
	height: 0;
	padding-top: calc(100% * 0.7);
	background: url(../img/arrow_right_o.svg) no-repeat center center;
	background-size: contain;
	display: block;
	position: absolute;
	right: -6.85rem;
	top: 0;
}

.access__way__flow figure:before{
	left: 1.5rem;
	top: 1.5rem;
	width: 2.1em;
	font-size: 2rem;
	padding: 0 0.05em 0.1em 0.05em;
}


/*
スタッフ
--------------------------------------------------------
*/

.secStaff{
	padding: 0;
}

.staff__image{
	padding: 8rem 20px;
	text-align: center;
	margin-bottom:8rem;
}

.staff__header{
	margin-bottom: 6rem;
	line-height: 1;
}

.staff__list{
	max-width: 1200px;
	margin: 0 auto;
}

.staff__list li{
	
}

.staff__list li:not(:last-of-type){
	margin: 0 0 8rem 0;
}

.staff__list li:nth-of-type(2n) {
	grid-template-columns: 3fr 1fr;
}

.staff__list__item{
	padding-right: 20%;
	& .name{
		padding: 2rem 4rem 2rem 4rem;
		font-size: 2.8rem;

		& .licence{
			font-size: 2rem;
		}
	}
	& .txt{
		padding: 4rem;
	}
}

.staff__list li:nth-of-type(2n) .staff__list__item{
	padding-right: 0;
	padding-left: 20%;
}