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


@media screen and (max-width: 768px) {
	.flow_list {
		grid-template-columns: repeat(2,1fr);
	}
	
	.flow_img {
		height: 14rem;
	}
	
	.flow_ttl {
		padding: 5px 0px;
	}
	
	.flow_tel {
	margin-top: 3px;
	}
	
	.accordion__title::after,
	.accordion__title.show::after {
		width: 30px;
		height: 30px;
	}
	
	.business_list {
		grid-template-columns: repeat(3,1fr);
	}
	
	.footer_inner {
		padding-bottom: 110px;
	}
	
	.footer_sp_tel {
		bottom: 0px;
		position: fixed;
		background: #004988;
		width: 100%;
		padding-bottom: env(safe-area-inset-bottom);
	}
	
	.footer_sp_tel_inner {
		max-width: 200px;
		width: 80%;
		margin: 0px auto;
		padding: 10px 0px;
		display: flex;
		justify-content: center;
	}
	
	#page-top {
		width: 5rem;
		height: 5rem;
		right: 15px;
		bottom: 100px;
	}
}


@media screen and (max-width: 655px) {
	.lineup_interior::after {
		width: 36vw;
		height: 18vw;
		position: absolute;
	}

}

@media screen and (max-width: 600px) {
	.pc {
		display: none;
	}
	
	.sp {
		display: block;
	}
	
	.mv {
		padding-bottom: 3rem;
	}
	
	.sp_tel {
		background: #FFEF31;
		border: 6px solid #004988;
		padding: 1rem 2rem;
		max-width: 685px;
		width: 90%;
		margin: 0px auto;
	}
	
	.sp_tel p {
		max-width: 400px;
		width: 80%;
		margin: 0px auto;
	}
	
	section.about {
		background: url("../images/about_img_sp.jpg");
		background-size: auto 104%;
		padding-top: 3rem;
	}
	
	.about_ttl {
		border-bottom-width: 5px;
		max-width: 370px;
		width: 100%;
		margin: 0px auto 4vw;
	}
	
	section.lineup {
		padding: 0px 0px 3rem;
	}
	
	.lineup_ttl {
		font-size: 2rem;
		font-weight: bold;
		text-align: center;
		padding: 1rem 0px;
	}
	
	.lineup_list {
		display: grid;
		grid-template-columns: repeat(auto-fit,minmax(140px,1fr));
		gap: 1rem;
		width: 90%;
		margin: 2rem auto 5rem;
	}
	
	.lineup_list li {
		background: #F4F4F4;
		border-radius: 20px;
		padding: 2rem 1rem;
		font-weight: bold;
		text-align: center;
	}
	
	.lineup_img {
		height: 30px;
	}
	
	.lineup_img img {
		height: 100%;
		object-fit: contain;
	}
	
	.lineup_name {
		font-size: 1.3rem;
		margin: 5px 0px;
	}
	
	.lineup_txt {
		font-size: 1rem;
		letter-spacing: -0.5px;
	}
	
	.lineup_exterior .lineup_ttl_wrap {
		background: #EAF8FF;
	}
	
	.lineup_exterior .lineup_ttl {
		color: #0072C6;
	}
	
	.lineup_exterior .lineup_name {
		color: #0072C6;
	}
	
	.lineup_interior::after {
		content: '';
		background: url("../images/lineup_img.png");
		background-repeat: no-repeat;
		background-position: right bottom;
		background-size: contain;
		display: inline-block;
		width: 100%;
		height: 18vw;
		right: 20px;
		bottom: 0px;
		position: absolute;
	}
	
	.lineup_interior .lineup_ttl_wrap {
		background: #FFF1D6;
	}
	
	.lineup_interior .lineup_ttl {
		color: #EFA415;
	}
	
	.lineup_interior .lineup_name {
		color: #EFA415;
	}
	
	.case-slide li {
		margin: 0px 1rem;
		width: 300px;
	}
	
	.case_ttl {
		padding: 3vw 0px;
	}
	
	.case_img {
		height: 200px;
	}
	
	.case_caution {
		padding: 2rem;
		margin-top: 2rem;
	}
	
	.case_caution_inner > p:nth-of-type(n+2) {
		margin-top: 2rem;
	}
	
	.examples_cate {
		padding: 1rem;
	}
	
	.examples_box {
		padding: 2rem;
	}
	
	.examples_cate > span::before {
		transform: scale(0.6);
		left: -8px;
	}
	
	.accordion__title::after,
	.accordion__title.show::after {
		width: 21px;
		height: 21px;
	}
	
	.accordion__title > p {
		width: 80%;
	}
	
	.accordion__content_inner {	
		width: 90%;
		margin-top: 1rem;
	}
	
	.accordion__content_inner > p {
		margin: 0px auto;
	}
	
	.accordion_inner:nth-of-type(n+2) {
		margin-top: 1rem;
	}
	
	.faq_box > * {
		padding: 1rem 2rem;
	}
	
	.faq_box > dd {
		padding: 2rem;
		margin-top: 5px;
	}
	
	.faq_box > * > p::before {
		margin-right: 6vw;
	}
	
	.caution_ttl_wrap::before,
	.caution_ttl_wrap::after {
		height: 4px;
	}
	
	.caution_ttl  {
		padding: 5px 0px;
	}
	
	.caution_ttl::before {
		width: 26px;
		height: 23px;
	}
	
	.caution_box > dt {
		width: 70%;
	}
	
	section.business {
		border-width: 5px 0px;
	}
	
	.business_ttl_wrap {
		margin-bottom: 1rem;
	}
	
	.business_ttl {
		padding: 8px 7rem;
	}
	
	.business_list {
		grid-template-columns: repeat(2,1fr);
		gap: 3vw 1rem;
	}
	
	.business_list > dl > dd {
		padding: 1rem 5px;
	}
	
	.shoukoukai_logo > span::before {
		width: 15px;
		height: 15px;
	}
	
	.lineup_interior::after {
		width: 50vw;
		height: 25vw;
	}
	
	.case-slide li {
		width: 240px;
	}
	
	.case_ttl::before {
		width: 49px;
		height: 28px;
		top: -18px;
		left: -10px;
	}
	
	.case_box {
		padding: 2rem;
	}
	
	.case_img {
		height: 160px;
	}

}


@media screen and (max-width: 522px) {
	.lineup_interior::after {
		height: 20vw;
	}
	
	.accordion__content_inner {	
		width: 84%;
	}
}

















