@charset "utf-8";

/* -----------------------------
	-area
-------------------------------- */
.contents{
	background: var(--lightblue);
}
#wrapper{
	overflow: clip;
}
@media screen and (max-width: 768px){
}

/* -----------------------------
	intro-area
-------------------------------- */
.intro-area{
	padding: 0 0 100px;
}
.intro-area .inner{
	position: relative;
}
.intro-area .catch-l{
	padding: 30px 0 0;
}
.intro-area .basic-txt{
	padding: 30px 0 0;
	width: 750px;
}
.intro-area .inner::before{
content: '';
    position: absolute;
    width: 308px;
    height: 286px;
    top: 50px;
    right: -110px;
    background: url(../img/corporation-bottom-ill01.png) no-repeat top center / contain;
    z-index: 1;
}
@media screen and (max-width: 768px){
	.intro-area {
		position: relative;
		margin: 50px 0 0;
		padding: 0 0 50px;
	}
	.intro-area .inner::before{
		width: 136px;
		height: 86px;
		left: auto;
		right: 0px;
		top: -50px;
	}
	.intro-area .catch-l{
		padding: 20px 0 0;
	}
	.intro-area .basic-txt{
		padding: 20px 0 0;
		width: 100%;
	}
}

/* -----------------------------
	service-area
-------------------------------- */
.service-area{
	margin: 100px 0 0;
}
.service-area .block .box{
	margin: 80px 0 0;
	display: flex;
	align-items: center;
	gap: 50px;
}
.service-area .block .box.right-img{
	flex-direction: row-reverse;
}
.service-area .block .box .subcatch{
color: var(--blue);
    font-size: 2.3rem;
    line-height: 1.6;
    font-weight: bold;
    border-bottom: 1px dashed var(--blue);
    padding: 0 0 5px;
}
.service-area .block .box .catch-l{
	padding: 15px 0 0;
}
.service-area .block .box .basic-txt{
	padding: 15px 0 0;
}

.service-area .support-box{
	margin: 50px 0 0;
}
.service-area .support-box .catch-ss{
	text-align: center;
}
.service-area .support-box ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 50px 20px;
	margin: 50px 0 0;
}
.service-area .support-box ul li{
	width: calc((100% / 3) - 20px);
	background: #fff;
	padding: 40px 20px 20px;
	text-align: center;
	border: dotted 2px var(--blue);
	position: relative;
}
.service-area .support-box .top-txt{
	background: var(--blue);
	color: #fff;
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 10px 20px;
	border-radius: 50px;
	position: absolute;
	top: -25px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	/*background: linear-gradient(135deg, var(--blue) 0 50%,#4d4c5d 50%);*/
	width: 90%;

    border: 6px double;
}
/*
.service-area .support-box .top-txt::before{
	content: '';
	position: absolute;
	width: 20px;
	height: 15px;
	background: var(--blue);
	bottom: -14px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.service-area .support-box .top-txt::after{
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 25px solid transparent;
	border-left: 25px solid transparent;
	border-top: 22px solid var(--blue);
	border-bottom: 0;
	bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}*/
.service-area .support-box .top-txt .s{
	font-size: 1.5rem;
}
.service-area .support-box .bottom-txt{
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.6;
}
@media screen and (max-width: 768px){
	.service-area{
		margin: 50px 0 0;
	}
	.service-area .block .box{
		display: block;
		margin: 30px 0 0;
	}
	.service-area .block .box img{
		width: 100%;
		height: 200px;
		object-fit: cover;
	}
	
	.service-area .block .box.right-img{
	}
	.service-area .block .box .subcatch{
		font-size: 1.6rem;
		line-height: 1.5;
		margin: 20px 0 0;
	}
	.service-area .block .box .catch-s{
		margin: 5px 0 0;
	}
	.service-area .block .box .basic-txt{
	}

	.service-area .support-box{
		margin: 30px 0 0;
	}
	.service-area .support-box .catch-ss{
	}
	.service-area .support-box ul{
		display: block;
		margin: 30px 0 50px;
	}
	.service-area .support-box ul li{
		width: 100%;
		padding: 30px 20px 15px;
		border: dotted 1px var(--blue);
	}
	.service-area .support-box ul li:nth-child(n + 2){
		margin: 30px 0 0;
	}
	.service-area .support-box .top-txt{
		font-size: 1.5rem;
		padding: 5px 20px;
		top: -20px;
	}
	.service-area .support-box .top-txt::before{
		height: 10px;
		bottom: -9px;
	}
	.service-area .support-box .top-txt::after{
		border-right: 20px solid transparent;
		border-left: 20px solid transparent;
		border-top: 15px solid var(--blue);
		bottom: -20px;
	}
	.service-area .support-box .bottom-txt{
		font-size: 1.6rem;
		font-weight: 500;
	}
	
}


/* -----------------------------
	faq-area
-------------------------------- */
.faq-area{
	padding: 100px 0 150px;
}
@media screen and (max-width: 768px){
	.faq-area{
		padding: 50px 0;
	}
}