@charset "utf-8";
/*===========================
add
===========================*/

.backWaterM {
	/* 背景黒 
	background: rgba(255,255,255,.2);
	*/
	/* 背景白 */
	background: rgba(255,255,255,.8);
	padding:2em;
	border-radius:10px;
	box-shadow: 0px 0px 10px #ccc;
	text-shadow: 0 0 1px #fff,0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
}
/* 画像の上にテキストを重ねる */


.waterMright {
	box-sizing: border-box;
	/* 背景白 */
	background: rgba(253,253,253,.9);
	z-index:2;
	padding:2em;
	margin-left:-15%;	
	box-shadow: 0px 0px 10px #ccc;
	border-radius:10px;
	/* 背景黒 
	text-shadow: 0 0 1px #000,0 0 2px #000, 0 0 4px #000, 0 0 6px #000, 0 0 8px #000,0 0 10px #000,0 0 12px #000, 0 0 14px #000, 0 0 16px #000, 0 0 18px #000;
	*/
	/* 背景白 */
	text-shadow: 0 0 1px #fff,0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
	border:1px solid #f0f0f0;
}

.waterMleft {
	box-sizing: border-box;
	/* 背景白 */
	background: rgba(253,253,253,.8);
	z-index:2;
	padding:2em;
	margin-right:-15%;	
	box-shadow: 0px 0px 10px #ccc;
	border-radius:10px;
	/* 背景黒 
	text-shadow: 0 0 1px #000,0 0 2px #000, 0 0 4px #000, 0 0 6px #000, 0 0 8px #000,0 0 10px #000,0 0 12px #000, 0 0 14px #000, 0 0 16px #000, 0 0 18px #000;
	*/
	/* 背景白 */
	text-shadow: 0 0 1px #fff,0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
	border:1px solid #f0f0f0;
}

.text-shadow-non {
	text-shadow:none !important;
}

.box-shadow-non {
	box-shadow:none !important;
}

.waterMrightFeat {

	background: rgba(253,253,253,.9);
	z-index:10;
	padding:2em 3em 4em 3em;
	margin-left:-15%;	

	text-shadow: 0 0 1px #fff,0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
	border:1px solid #f0f0f0;
	
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius:5px;
}

.waterMleftFeat {
	background: rgba(253,253,253,.9);
	z-index:10;
	padding:2em 3em 4em 3em;
	margin-right:-15%;
	text-shadow: 0 0 1px #fff,0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
	border:1px solid #f0f0f0;
	
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius:5px;
}

.waterFeatTxt {
	/*writing-mode: vertical-lr;*/
	color:#999;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	margin-bottom:1em;
	font-size:0.9em;
}



.waterTit {
	font-size:1.7em;
	line-height:1.2em;
	margin-bottom:0.8em;
	
	padding-left:1em;  
	text-indent:-0.5em; 
}

.waterTitMark {
	font-size:80%;
	color:var(--basic-color);
	display:inline-block;
	padding-right:0.4em;
	
	vertical-align: top;
	position: relative;
	top: 0.3em;
}



.price-section{
    padding:80px 0;
}

.bg-gray{
    background:#f7f7f7;
}

.price-section .inner{
    max-width:1100px;
    margin:0 auto;
    padding:0 20px;
}

/*.price-section h2{
    font-size:2rem;
    font-weight:700;
    text-align:center;
    margin-bottom:40px;
    color:#333;
    position:relative;
    padding-bottom:15px;
}

.price-section h2::after{
    content:"";
    width:70px;
    height:3px;
    background:#c89b3c;
    position:absolute;
    bottom:0;
    left:50%;
    transform:translateX(-50%);
}*/

.lead{
    line-height:2;
    margin-bottom:30px;
}

.price-table{
    width:100%;
    border-collapse:collapse;
    background:#fff;
}

.price-table th{
    background-color: #AF0E22;
    color: #fff;
    padding: 15px;
    text-align: center;
    font-weight: 700;
	border:1px solid #ddd;
}

.price-table td{
    padding:15px;
    border:1px solid #ddd;
}

.price-table tr:nth-child(even){
    background:#fafafa;
}

.price-note{
    margin-top:20px;
}

.price-note li{
    margin-bottom:10px;
    line-height:1.8;
}

@media screen and (max-width:768px){

    .price-section{
        padding:60px 0;
    }

    .price-section h2{
        font-size:1.5rem;
    }

    .price-table th,
    .price-table td{
        padding:10px;
        font-size:14px;
    }

}



.area-section{
    padding:80px 0;
    background:#f8f8f8;
}

.area-section .inner{
    max-width:1100px;
    margin:0 auto;
    padding:0 20px;
}

/*.area-section h2{
    text-align:center;
    font-size:2rem;
    margin-bottom:20px;
    color:#333;
    position:relative;
    padding-bottom:15px;
}

.area-section h2::after{
    content:"";
    width:70px;
    height:3px;
    background:#c89b3c;
    position:absolute;
    left:50%;
    bottom:0;
    transform:translateX(-50%);
}*/

.area-lead{
    text-align:center;
    margin-bottom:40px;
    line-height:1.8;
}

.area-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-bottom:50px;
}

.area-card{
    background: #fff;
    border: 2px solid #AF0E22;
    border-radius: 10px;
    padding: 25px 15px;
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
    color: #333;
    transition: .3s;
}

/*.area-card:hover{
    transform:translateY(-5px);
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}*/

.area-message{
    background:#fff;
    border-left:6px solid #c89b3c;
    padding:30px;
    border-radius:10px;
    box-shadow:0 5px 20px rgba(0,0,0,.05);
}

.area-message h3{
    font-size:1.3rem;
    margin-bottom:15px;
    color:#333;
}

.area-message p{
    line-height:2;
}

@media screen and (max-width:768px){

    .area-section{
        padding:60px 0;
    }

    .area-grid{
        grid-template-columns:repeat(2,1fr);
        gap:12px;
    }

    .area-card{
        font-size:1rem;
        padding:18px 10px;
    }

    .area-message{
        padding:20px;
    }

}

/*===========================
box02
===========================*/
@media screen and (min-width: 601px) {
	.box02 .in01{
		display: flex;
		padding-bottom: 20px;
		margin: 0 auto 20px;
		width: 75%;
	}
}
@media screen and (max-width: 768px) {
	.box02 .in01{
		width: 100%;
		padding-bottom: 15px;
		margin: 0 auto 15px;
	}
}

.box02 .in01:last-child{
	border: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.box02 .st{
    background-color: #AF0E22;
    margin-right: 3%;
    width: 30%;
    text-align: center;
    border-radius: 10px;
    position: relative;
    box-shadow: 5px 5px 0 0px #FFEDEF;
    -webkit-box-shadow: 5px 5px 0 0px #FFEDEF;
}
@media screen and (max-width: 600px) {
	.box02 .st{
		width: 100%;
		padding: 8px 0;
		margin-bottom: 15px;
		box-shadow: 3px 3px 0 0px #e8faff;
	}
}

@media screen and (min-width: 601px) {
	.box02 .st .st-box{
		position: absolute;
		top: 50%;
		left: 0;
		right: 0;
		transform: translateY(-50%);
	}
}

.box02 .st .st-box p{
	font-size: 1.4em;
	color: #fff;
	line-height: 100%;
	padding: 0 !important;
}
@media screen and (max-width: 768px) {
	.box02 .st .st-box p{
		font-size: 1.2em;
	}
}


.box02 .de01{
	width: 67%;
	padding: 20px;
	background-color: #fff;
	border: 1px solid #e2e2e2;
	/*font-size: 1em;*/
	line-height: 150%;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	box-shadow: 5px 5px 0 0px #FFEDEF;
    -webkit-box-shadow: 5px 5px 0 0px #FFEDEF;
}
@media screen and (max-width: 600px) {
	.box02 .de01{
		font-size: 1em;
		width: 100%;
		box-sizing: border-box;
		box-shadow: 3px 3px 0 0px #f8f1de;
	}
}


.box02 .contactBtnWrap{
	text-align: left;
}

.box02 .contactBtnWrap .contactBtn{
	margin-bottom: 0;
}

.qa-list .answer-text{
  display: none;
}