@charset "UTF-8";
/* 基本設定
------------------------------------------------------------*/
/* ブレイクポイント
-------------------
pc: 1201px;
tb: 991px;
sp: 767px;
*/

/*headsec ■ ---------------------------------*/
.headsec{
  position: relative;
  margin-top: 78px;
  background-color: #C9EDFF;

}
.headsec .container{
  display: flex;
  justify-content: center;
  align-items: center;
}
.headsec .container:has(.headTxt){
  background:url("../img/common/headsec.png") no-repeat center center;
  background-size: cover;
  height: clamp(80px, 8vw, 110px);
}
.headsec .breadcrumb-col{
  width: 100%;
  padding: 10px 0 10px 0;
  background: #fff;
}
#breadcrumb{
  position: relative;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1800px;
  margin: 0 auto 0 auto;
  padding-left: 40px;
}
#breadcrumb li,#breadcrumb li a{
  margin-right: 1.5em;
  position: relative;
  font-size: 13px;
  font-size: clamp(1.1rem, 1.3vw, 1.3rem);
}
#breadcrumb li::after{
  content: '>'; 
  width: 20px;
  height: 20px;
  position: absolute;
  right: -1.5em;
  top:-3px;
  bottom: 0; 
  margin: auto;
}
#breadcrumb li:last-child::after{
  content: '';   
}
#breadcrumb li:first-child a::before{
  content: '';
  background: url('../img/common/home_icon.svg') no-repeat center center;
  width: 14px;
  height: 14px;
  position: absolute;
  top: 0;
  bottom: 0; 
  left: -1.5em;
  margin: auto;
}
.page_cont{
  margin-top: 0;
}
@media screen and (max-width: 767px){
  .headsec{
    position: relative;
    margin-top: 60px;
  }
  .headsec .container:has(.headTxt){
    background:url("../img/common/headsec-sp.png") no-repeat center center;
    background-size: cover;
  }
  #breadcrumb li::after{
    top: 0;
  }
}

/*parts ■ ---------------------------------*/
.clearfix::after {
  content: ""; /* contentプロパティを空にするか、何かしらの値を設定します */
  display: block; /* 要素をブロックレベルに設定します */
  clear: both;    /* 浮遊要素の回り込みを解除します */
}
.page_cont p{
  line-height: 1.8em;
  font-size: 1.7rem;
  font-size: clamp(1.4rem, 1.7rem, 1.8rem);  
}

.annotation{
  font-size: 15px;
}

.annotation{
  margin-left: 0.5em;
}
.annotation li{
  text-indent: -0.5em;
  line-height: 1.5em;
  font-size: 1.2rem;
  font-size: clamp(1.1rem, 1.2vw, 1.2rem);
}

.intro-title{
  font-size: 2rem;
  font-size: clamp(1.5rem, 1.8vw, 2rem);
  font-weight: 600;
  text-align: center;
  margin-top: 30px;
}
.intro-txt{
  font-size: 1.5rem;
  font-size: clamp(1.2rem, 1.3vw, 1.5rem); 
  text-align: center;
  margin-top: 30px;
  margin-bottom: 30px;
  font-weight: 600; 
}
.intro-txt span{
  font-weight: 400;
  display: block;
}
#data_title{
  font-size: 2rem;
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
  margin-bottom: 1em;
}
#contact .plan-action{
  margin: 0;
}
.plan-action a{
  padding: 8px 25px;
  font-weight: 400;
  font-size: 1.3rem;
}
.plan-action .btn-s{
  padding: 8px 10px;
}

@media screen and (max-width: 767px){
  .page_cont p{
    font-size: 1.5rem;
    line-height: 1.5em;      
  }
  #pageTopBtn {
    bottom: 110px;    
  }

}

/*page_data-col ■ ---------------------------------*/
.page_data-col{
  padding-bottom: 100px;
}

.page_data-col .round_box-in{
  padding: 50px;
}
.page_data-col .round_box-in p,
.page_data-col .round_box-in a{
    line-height: 1.5em;
    font-size: 1.6rem;
    font-size: clamp(1.4rem, 1.6rem, 1.7rem);
}
@media screen and (max-width: 767px) {
  .page_data-col #data_title{
    font-size: 1.6rem;
  }
  .page_data-col .container{
    padding: 0;
    background: #fff;
  }
  .page_data-col .round_box-in{
    padding: 20px 20px 60px 20px;
    background: #fff;
  }  
  .page_data-col .round_box-in img{
    width: 80%;
    height: auto;
  }
  .page_data-col{
    padding-bottom: 0;
  }
  .page_data-col .round_box{
    padding-bottom: 100px;
  }
}