@charset "UTF-8";

.grid { display:grid; }
@media screen and (max-width: 767px) {
.grid { display:block; }
.t-h6-2 span { width:auto; margin-right:0; }
}
/* バナーエリア */
.banner_area .sp{
    display: none;
}
.banner_area .pc a{
    display: block;
}
.banner_area .pc > *{
    margin-bottom: 40px;
}
.banner_area .pc > *:last-child{
    margin-bottom: 0;
}
@media screen and (max-width:767px){
    .banner_area .pc{
        display: none;
    }
    .banner_area .sp{
        display: block;
    }
    .banner_area .sp a{
        display: block;
    }
    .banner_area .sp > *{
        margin-bottom: 20px;
    }
    .banner_area .sp > *:last-child{
        margin-bottom: 0;
    }
}
.lead_main { margin-bottom:10px; font-size:32px; font-weight:bold; color:#1D5CAD; }
.lead_sub { font-size:20px; color:#333333; }
@media screen and (max-width: 767px) {
.lead_main { font-size:24px; }
.lead_sub { font-size:18px; }
}
/* benefit */
.benefit { font-size:120%; font-weight:bold; line-height:1.5; }
.benefit .bold { font-size:120%; color:#059669; }
.benefit .bold.red { font-size: 175%; color: #CC0000; background: linear-gradient(transparent 60%, #FFEE00 60%); }
.webcp_table tr th, .webcp_table tr td { width:auto; }
.webcp_table thead tr th, .webcp_table tbody tr th { text-align:center; }
.webcp_table_item {
  margin-bottom:30px;
  padding:20px;
  border-radius:10px;
  background-color:#f2f2f2;
}
.webcp_table_vertical {  }
.webcp_table_vertical dt { margin-bottom:10px; padding:5px 0; font-size:100%; font-weight:bold; color:#005BAC; }
.webcp_table_vertical dd {  }
.webcp_table_summary {  }
.webcp_table_summary dt { margin-bottom:5px; color:#000000; font-weight:normal; font-size:100%; }
.webcp_table_summary dt::before { display:inline-block; content: "-"; margin-right: 0.5em; color: #D4AF37; font-weight: bold; }
.webcp_table_summary dd { margin-bottom:5px; padding-bottom:5px; border:none; }
/* flow */
.webcp_flow_cta {
  margin-top: 24px;
}
.webcp_flow_cta p {
  font-size: 14px;
  color: #333;
  margin-bottom: 8px;
}
.webcp_flow_cta .webcp_flow_cta_btn {
  display: inline-block;
  background-color: #ffd600;
  color: #000;
  font-weight: bold;
  font-size: 18px;
  padding: 14px 28px;
  border-radius: 8px;
  text-decoration: none;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
  transition: background 0.2s ease, transform 0.1s ease;
}
.webcp_flow_cta .webcp_flow_cta_btn:hover {
  background-color: #ffcc00;
  transform: scale(1.02);
}
/* inquiry */
.webcp_inquiry { grid-template-columns:40% 1fr; gap:0 20px; }
.webcp_form .yellow_btn { margin-top:20px; }
.webcp_tel .freecall_block { margin-top:20px; margin-bottom:0; padding:20px; }
.webcp_tel .freecall_block .freecall_tel { font-size:50px; }
@media screen and (max-width: 767px) {
.webcp_tel .freecall_block .freecall_tel { font-size:30px; }
}
/* faq */
.webcp_faq {
  padding: 1em 0;
  border-bottom: 1px solid #ccc;
}
.webcp_q {
  position: relative;
  font-weight: bold;
  padding-right: 2em;
  cursor: pointer;
  transition: color 0.2s ease;
}
.webcp_q::after {
  content: '＋';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.2em;
  color: #333;
  transition: transform 0.3s ease, color 0.2s ease;
}
.webcp_q:hover::after {
  color: #0078c8;
}
.webcp_faq_show::after {
  content: '－';
}
.webcp_a {
  padding:10px;
}
.webcp_a p:last-child { margin-bottom:0; }


