@charset "utf-8";

.flex{ display: flex; justify-content: space-between; flex-wrap: wrap;}


.contents{  padding: 100px 0 175px ; background: #f5f5f5;}
.service_center .titBox{ padding-bottom: 30px;}

h2{ font-size: 5rem; font-weight: bold; max-width: 1200px; width: calc(100% - 50px); line-height: 1.5; margin:0 auto;}
h2 span{ display: block; font-size: clamp(16px,1.5vw,1.8rem); }
h3{ font-size: 3.6rem; line-height: 1.4; }

.box{ margin-top: 100px; padding: 55px 0; border: solid #000; border-width: 1px 0 1px 0;}
.box .txt{ width: 52.08%;}
.box figure{ width: 45%;}
.box .form{ margin: 0 auto;}

figure.tel{ margin: 50px auto 0; max-width: 400px; width: 100%;}
figure.tel img{ width: 400px;}

@media (max-width: 1400px){
    .contents{ padding:100px 0 150px;}
    h2{ font-size: 4.5rem; }
}

@media (max-width: 768px){

    .contents{  padding: 70px 0 65px;}

    .service_center .titBox{ padding-bottom: 20px;}
    h2{ font-size: clamp( 2rem , 6.5vw, 5rem); margin-bottom: 0;}
    h3{ font-size: calc( 5vw, 3.6rem); margin-top: 20px;}

    .box{ margin-top: 50px; padding: 27px 0;}
    .box .txt{ width: 100%; margin-bottom: 20px;}
    .box figure{ width: 100%;}
}