@charset "utf-8";
/* -----------------------------------------------------------
    about
-------------------------------------------------------------- */

.no-wrap{
    white-space: nowrap;
}

#wrapper {
    overflow: clip;
}

/* -----------------------------
	pattern-area
-------------------------------- */
.pattern-area{
	margin: 150px 0 0;
}
.pattern-block{
	display: flex;
	margin: 80px 0 0;
	gap: 40px;
}
.pattern-block > div{

	width: calc((100% / 2) - 20px);
	padding: 40px 50px 30px;
	position: relative;
	background: var(--light-blue);

}
.pattern-area .pattern-block .title{
	position: absolute;
	font-size: 2.4rem;
	color: #fff;
	font-weight: 500;
	left: 50px;
	top: -15px;
	background: var(--blue);
	border-radius: 50px;
	line-height: 1;
	padding: 5px 30px;
}
.pattern-area .pattern-block .catch-s{
	color: var(--blue);
}
.pattern-area .pattern-block .basic-txt{
	margin: 20px 0 0;
}
.pattern-area .pattern-block .note{
	background: #fff;
	margin: 20px 0 0;
	padding: 15px 20px;
}
@media screen and (max-width: 768px){
	.pattern-area{
		margin: 40px 0 0;
	}
	.pattern-block{
		flex-direction: column;
		gap: 30px;
		margin: 40px 0 0;
	}
	.pattern-block > div{

		width: 100%;
		padding: 30px 20px 20px;

	}
	.pattern-area .pattern-block .title{
		left: 20px;
		font-size: 1.6rem;
	}
	.pattern-area .pattern-block .catch-s{
	}
	.pattern-area .pattern-block .basic-txt{
		margin: 10px 0 0;
	}
	.pattern-area .pattern-block .note{
		margin: 10px 0 0;
	}
}

/* -----------------------------
	reason-area
-------------------------------- */
.note-block{
	margin: 50px 0 0;
	border: solid 1px var(--line-black);
	padding: 50px;
	position: relative;
	background: #fff;
	display: flex;
	align-items: center;
}
.note-block::before{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	background: var(--orange);
	    transform: rotate(-1.5deg);
	z-index: -1;
}
.note-block .basic-txt{
	margin: 20px 0 0;
}
.note-block img{
	margin: 0 50px 0 0;
	height: 350px;
	width: 500px;
	object-fit: cover;
}

@media screen and (max-width: 768px){
	.note-block{
		width: 100%;
		padding: 20px;
		display: block;
	}	
	.note-block::before{

	}
	.note-block::after{
	}
	.note-block .basic-txt{
	}
	.note-block img{
		margin: 0 0 10px;
		width: 100%;
		height: 230px;
		object-position: top;
	}
}

/* -----------------------------
	case-area
-------------------------------- */
.case-area .block:nth-child(4) .price-box::before{
	right: 10px;
}
@media screen and (max-width: 768px){
	.case-area .block:nth-child(4) .price-box::before{
		right: -40px;
	}
}

/* -----------------------------
	price-area
-------------------------------- */
.price-area{
	margin: 100px 0 0;
}
.hour-price{
	font-size: 2.2rem;
	font-weight: bold;
	margin: 30px 0 0;
	border-bottom: solid 1px var(--line-black);
}
.individual-box,
.corporate-box{
	margin: 50px 0 0;
}
.individual-box .title,
.corporate-box .title{
	font-size: 2.2rem;
	font-weight: bold;	
}
.price-area table{
	width: 100%;
}
.price-area .table02{
	margin: 30px 0 0;
}
.price-area table ,.price-area  td,.price-area  th {
	border: 1px solid #333;
	border-collapse: collapse;
}
.price-area td,.price-area  th {
	padding: 15px;
	text-align: center;
	font-size: 1.8rem;
}
.price-area th {
	background: #F2F2F2;
	width: 50%;
}
.price-area .note{
	margin: 30px 0 0;
}
@media screen and (max-width: 768px){
	.price-area{
		margin: 40px 0 0;
	}
	.hour-price{
		margin: 20px 0 0;
		font-size: 1.8rem;
	}
	.individual-box,
	.corporate-box{
		margin: 20px 0 0;
	}
	.individual-box .title,
	.corporate-box .title{
	}
	.price-area table{
	}
	.price-area .table02{
		margin: 10px 0 0;
	}
	.price-area table ,.price-area  td,.price-area  th {
	}
	.price-area td,.price-area  th {
		font-size: 1.5rem;
		line-height: 1.2;
		padding: 8px 3px;
	}
	.price-area th .s{
		font-size: 1.2rem;
	}
	.price-area th {
	}
	.price-area .note{
		margin: 20px 0 0;
	}
}







