@charset "utf-8";
@media screen and (max-width: 1536px) {}

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

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

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

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

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

/* ==============================
  #common
============================== */
.lbluetxt{
  color: #1eaddd;
}
.dbluetxt{
  color: #0B487E;
}
.btxt{
  font-size: 3.6rem;
}

@media screen and (min-width: 767px) {
  a[href*="tel:"]{
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}

/* ==============================
  #other
============================== */
#mainarea{
  background: url(../images/case/bg_case01.png) no-repeat right top, linear-gradient(90deg, #0b487e, #68c1df);
  border-radius: 30px;
  margin: 0 40px 60px;
  height: 279px;
  padding: 5%;
}
#mainarea .inner{
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
  max-width: 1350px;
}
#mainarea .inner .txts .sub{
  font-size: 2.0rem;
  font-weight: 700;
  margin-bottom: 0px;
  color: #FFF;
}
#mainarea .inner .txts .maintxt{
  font-size: 5.2rem;
  font-weight: 700;
  color: #FFF;
}
#mainarea + section{
  margin: 60px 0;
}

@media screen and (max-width: 767px) {
  #mainarea{
    background: url(../images/case/bg_case01.png) no-repeat right top / 40%, linear-gradient(90deg, #0b487e, #1eaddd);
    border-radius: 15px;
    margin: 0 10px 20px;
    height: 168px;
  }
  #mainarea .inner .txts .sub{
    font-size: 1.4rem;
  }
  #mainarea .inner .txts .maintxt{
    font-size: 2.5rem;
  }
  #mainarea + section{
    margin-top: 30px;
  }
}

#other .inner{
  width: 94%;
  max-width: 1100px;
  margin-bottom: 60px;
}
#other .inner section{
  border-bottom: 1px solid #d3dae1;
  padding-bottom: 60px;
  margin-bottom: 60px;
}
#other .companyBtn{
  display: flex;
  justify-content: center;
  margin: 0 auto;
}
#other .h2txt{
  font-size: 4.2rem;
  text-align: center;
  margin: 30px 0;
}
#other .h3txt{
  font-size: 2.2rem;
  color: #0b487e;
  margin: 20px 0;
}
#other ol,#other ul{
  margin: 10px 0 20px;
}
#other ol li::marker{
  font-family: "Lexend Giga", sans-serif;
  color: #0b487e;
  font-weight: bold;
}
#other ul li{
  padding-left: 2rem;
  position: relative;
}
#other ul li::before{
  content: '';
  position: absolute;
  top: 1em;
  left: 0;
  transform: translateY(-0.5em);
  width: 1rem;
  height: 1rem;
  background-color: #1eaddd;
  border-radius: 50%;
}
#other .otherImg{
  width: fit-content;
  margin: 0 auto;
}
#other .txtRight{
  text-align: right;
}
#other .underLine{
  text-decoration: underline;
}
#other .imgFlex {
    display: flex;
    padding: 30px 0 0;
}
#other .imgFlexWrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#other .imgFlexWrap img {
    width: calc(50% - 10px);
}
#other .imgFlexWrap img:nth-child(n+4) {
    margin-top: 20px;
}

@media screen and (max-width: 767px) {
  #other .h2txt{
    font-size: 2.8rem;
  }
  #other .h3txt{
    font-size: 2rem;
  }
  #other .inner section{
    padding-bottom: 50px;
    margin-bottom: 50px;
  }
  #other .imgFlex {
    width: 50%;
    padding: 0;
  }
}

#otherContact{
  background-color: #000;
  padding: 60px 0 100px!important;
  border-bottom: 1px solid #fff;
}
#otherContact .h2txt{
  color: #fff;
  text-align: center;
  font-size: 5.2rem;
  margin-bottom: 30px;
}
#otherContact .btnBox{
  display: flex;
  gap: 20px;
}
#otherContact .btnBox a{
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: space-between;
}
#otherContact .btnBox a:hover{
  text-decoration: none;
}
#otherContact .btnBox .ttl{
  font-size: 2.4rem;
}
#otherContact .btnBox .telNum{
  font-size: clamp(3.4rem, 3vw, 5rem);
  line-height: 1;
}
#otherContact .btnBox p{
  padding: 0;
  font-size: 1.8rem;
}
#otherContact .btnBox .tel,
#otherContact .btnBox .web{
  flex: 1;
  position: relative;
}
#otherContact .btnBox .tel a,
#otherContact .btnBox .web a{
  padding: 30px;
  padding-right: 60px;
  border: 1px solid #fff;
  font-weight: bold;
  border-radius: 10px;
}
#otherContact .btnBox .tel a{
  background-color: #6C8398;
  color: #fff;
}
#otherContact .btnBox .ttl{
  font-size: 2.2rem;
  position: relative;
  padding-left: 35px;
  margin-bottom: 10px;
  line-height: 1.2;
}
#otherContact .btnBox .tel .ttl::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 2.4rem;
  height: 2.4rem;
  background: url(../images/common/ico_tel.svg) no-repeat center/contain;
}
#otherContact .btnBox .web .ttl::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 2.4rem;
  height: 2.4rem;
  background: url(../images/common/ico_mail.svg) no-repeat center/contain;
}
#otherContact .btnBox .tel a .telTime{
  display: inline-block;
}
#otherContact .btnBox .web a{
  background-color: #fff;
  color: #0B487E;
}
#otherContact .btnBox .ico{
  background: #0B487E;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
}
#otherContact .btnBox .icoarrow::after{
  background-color: #fff;
}
.icoarrow:hover::after,
#otherContact .btnBox .tel:hover .icoarrow::after,
#otherContact .btnBox .web:hover .icoarrow::after{
  -webkit-animation: 2s cubic-bezier(0.86, 0, 0.07, 1) button-arrow;
  animation: 2s cubic-bezier(0.86, 0, 0.07, 1) button-arrow;
}

@media screen and (min-width: 767px){
  #otherContact .btnBox .tel  .ico{
    display: none;
  }
  #otherContact .btnBox .tel a{
    padding-right: 30px;
  }
}

@media screen and (max-width: 767px) {
  #otherContact .btnBox{
    flex-direction: column;
  }
  #otherContact .h2txt{
    font-size: 3.8rem;
  }
  #otherContact .btnBox .tel a,
  #otherContact .btnBox .web a{
    padding: 20px;
    padding-right: 50px;
  }
  #otherContact .btnBox .ico{
    right: 10px;
  }
  #otherContact .btnBox .ttl{
    font-size: 2rem;
  }
  #otherContact .btnBox p{
    font-size: 1.4rem;
  }
}


/* ==============================
  #society
============================== */
#society section{
  padding-bottom: 60px;
}
#society #read .readTtl{
  font-size: 3.2rem;
  font-weight: bold;
  text-align: center;
  color: #0b487e;
  margin-bottom: 20px;
}
#society #read .bnr{
  width: fit-content;
  margin: 0 auto;
}
#society #societyBlock{
  border-radius: 60px 60px 0 0;
  background-color: #eff4f6;
  padding-top: 60px;
}
#society #societyBlock .inner{
  display: flex;
  gap: 40px;
}
#society #societyBlock .ttlBox{
  width: 30%;
}
#society #societyBlock .ttlBox .h2txt.iconttl{
  color: #0b487e;
  font-size: 3.6rem;
  font-weight: bold;
  padding-left: 40px;
  position: relative;
}
#society #societyBlock .ttlBox .h2txt.iconttl::before{
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background: url(../images/common/ico_logo01.png) no-repeat left top / contain;
  position: absolute;
  top: 0.8em;
  left: 0px;
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  #society #read .readTtl{
    font-size: 2rem;
  }
  #society #societyBlock{
    border-radius: 30px 30px 0 0;
  }
  #society #societyBlock .inner{
    gap: 30px;
  }
  #society #societyBlock .ttlBox .h2txt.iconttl{
    font-size: 2.8rem;
  }
}

#society #societyBlock .table03{
  width: 70%;
  border-collapse: collapse;
}
#society #societyBlock .table03 .table-contents{
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
#society #societyBlock .table03 .table-contents.more-contents{
  border-top: none;
}
#society #societyBlock .table03 .table-contents p{
  padding: 0;
}
#society #societyBlock .table03 .table-cell{
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  background-color: #fff;
  padding: 15px;
  margin: 0;
}
#society #societyBlock .table03 .table-cell.cell-feature{
  color: #fff;
  font-weight: bold;
  text-align: center;
  background-color: #5b758c;
}
#society #societyBlock .table03 .table-cell:nth-child(3n+1),
#society #societyBlock .table03 .table-cell:nth-child(3n){
  width: 40%;
}
#society #societyBlock .table03 .table-cell:nth-child(3n+2){
  width: 20%;
}
#society #societyBlock .table03 .table-cell:not(:has(a)){
  color: #111;
}
#society #societyBlock .table03 .table-cell .label {
  padding: 0;
  border: none;
  margin: 0;
}
#society #societyBlock .table03 .table-cell .label:not(:last-child)::after{
  content: " ／ ";
}

@media screen and (max-width: 767px) {
  #society #societyBlock .inner{
      flex-direction: column;
  }
  #society #societyBlock .ttlBox,
  #society #societyBlock .table03{
    width: 100%;
  }
  #society #societyBlock .table03 .table-cell{
    padding: 10px;
    font-size: 1.4rem;
  }
}

/* ==============================
  #price
============================== */
#price section{
  padding-bottom: 60px;
}
#price #read .anchorLink{
  display: flex;
  gap: 20px;
  margin-top: 30px;
}
#price #read .anchorLink .btn01{
  flex: 1;
  position: relative;
}
#price #read .anchorLink .btn01::after{
  font-family: "Font Awesome 5 Free";
  content: "\f063";
  font-size: 1.2rem;
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  margin-right: 12px;
  position: absolute;
  width: 12px;
  height: 12px;
  top: 0;
  bottom: 0;
  right: 12px;
  margin: auto;
  color: #FFFFFF;
}
#price #read .anchorLink .btn01:hover::after{
  color: #0b487e;
}
#price #read .anchorLink .btn01 a{
  width: 100%;
  border: 2px #0b487e solid;
}

#price .serviceBlock{
  padding: 80px 0;
}
#price .serviceBlock:nth-of-type(even){
  background-color: #EFF4F6;
  border-radius: 60px;
} 
#price .serviceBlock .flexbox{
  display: flex;
  gap: 30px;
}
#price .serviceBlock .flexbox img{
  width: fit-content;
}
#price .serviceBlock .flexbox .txtBox .h2txt{
  font-size: 3.4rem;
  font-weight: bold;
  line-height: 1.4;
}
#price .serviceBlock .flexbox .txtBox .h2txt p{
  padding: 0;
}
#price .serviceBlock .flexbox .txtBox .h2txt .subTtl{
  font-size: 2rem;
}
#price .serviceBlock .flexbox .txtBox .h2txt .price{
  font-size: 3rem;
}
#price .serviceBlock .flexbox .txtBox .h2txt .price span{
  font-size: 4.2rem;
  color: #0B487E;
}

@media screen and (max-width: 767px) {
  #price #read .anchorLink{
    flex-wrap: wrap;
    gap: 10px;
  }
  #price #read .anchorLink .btn01{
    flex: auto;
    width: calc(50% - 5px);
  }
  #price .serviceBlock .flexbox{
    flex-direction: column;
  }
  #price .serviceBlock:nth-of-type(even){
    border-radius: 30px;
  }
  #price .serviceBlock .flexbox .txtBox .h2txt{
    font-size: 2.4rem;
  }
  #price .serviceBlock .flexbox .txtBox .h2txt .subTtl{
    font-size: 1.6rem;
  }
  #price .serviceBlock .flexbox .txtBox .h2txt .price{
    line-height: 1.4;
    margin: 10px 0 20px;
  }
}

/*--------------- #costexample ---------------*/
#costexample{
  padding-top: 60px;
}
#costexample .costexampleBox{
  background: #FFF;
  padding: 30px;
  box-shadow: 0 0 20px 0px rgba(15, 66, 113, 0.12);
  display: flex;
  margin-bottom: 30px;
}
#costexample .costexampleBox .img{
  width: 24.44%;
  margin-right: 30px;
  flex-shrink: 0;
}
#costexample .costexampleBox .img img{
  border-radius: 10px;
}
#costexample .costexampleBox .txts .ttl{
  width: 100%;
  display: flex;
  align-items: center;
  font-size: 2.4rem;
  font-weight: 700;
  border-bottom: 1px #d3dae1 solid;
  padding-bottom: 15px;
  margin-bottom: 20px;
}
#costexample .costexampleBox .txts .ttl .cat{
  width: fit-content;
  background: #1eaddd;
  padding: 6px 10px;
  border-radius: 5px;
  color: #FFFFFF;
  font-size: 1.4rem;
  text-align: center;
  margin-right: 10px;
}
#costexample .costexampleBox .txts .ttl span{
  font-size: 1.8rem;
}
#costexample .costexampleBox .txts .list{
  margin-bottom: 20px;
}
#costexample .costexampleBox .txts .list ul{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}
#costexample .costexampleBox .txts .list ul li{
  display: flex;
  justify-content: space-between;
  width: 49.5%;
  margin-bottom: 7px;
  border-radius: 5px;
}
#costexample .costexampleBox .txts .list .item{
  color: #0b487e;
  font-weight: 700;
}
#costexample .costexampleBox .txts .fee{
  display: flex;
  align-items: baseline;
}
#costexample .costexampleBox .txts .fee .price{
  font-size: 2.4rem;
  font-weight: 700;
}
#costexample .costexampleBox .txts .fee .price::before{
  font-family: "Font Awesome 5 Free";
  content: "\f04b";
  font-size: 2.4rem;
  font-weight: 900;
  margin-right: 10px;
  color: #0b487e;
}
#costexample .costexampleBox .txts .fee .staff{
  color: #0b487e;
  position: relative;
  padding: 0 0 0 33px;
  margin-left: 30px;
}
#costexample .costexampleBox .txts .fee .staff::before{
  content: "";
  display: block;
  width: 18px;
  height: 21px;
  background: url(../images/bcategry/ico_staff01.png) no-repeat left top / 100%;
  position: absolute;
  top: 0px;
  left: 0px;
}
#costexample .costexampleBox .given{
  border: 1px #0b487e solid;
  display: flex;
  margin-bottom: 20px;
}
#costexample .costexampleBox .given .giventtl{
  background: #0b487e;
  color: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6;
  width: 110px;
  flex-shrink: 0;
}
#costexample .costexampleBox .given .giventxt{
  padding: 18px;
}
#costexample .costexampleBox .given .giventxt .line{
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  font-weight: 700;
  color: #0b487e;
  margin-bottom: 10px;
}
#costexample .costexampleBox .given .giventxt .line .linettl{
  background: #eff4f6;
  padding: 5px 10px;
  margin-right: 8px;
}
#costexample .costexampleBox .given .giventxt .line .linetxt{
  margin-right: 30px;
}
#costexample .costexampleBox .given .giventxt .stxt01{
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  #costexample{
    padding-top: 30px;
  }
  #costexample .costexampleBox{
    padding: 15px 10px;
    margin-bottom: 20px;
    flex-wrap: wrap;
  }
  #costexample .costexampleBox .img{
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  #costexample .costexampleBox .txts .ttl{
    width: 100%;
    flex-direction: column;
    font-size: 2.0rem;
    padding-bottom: 9px;
    margin-bottom: 9px;
    align-items: flex-start;
  }
  #costexample .costexampleBox .txts .ttl .cat{
    width: fit-content;
    background: #1eaddd;
    padding: 4px 7px;
    font-size: 1.1rem;
    margin-right: 0px;
    margin-bottom: 5px;
  }
  #costexample .costexampleBox .txts .list{
    margin-bottom: 10px;
  }
  #costexample .costexampleBox .txts .list ul{
    flex-direction: column;
  }
  #costexample .costexampleBox .txts .list ul li{
    width: 100%;
  }
  #costexample .costexampleBox .txts .fee{
    flex-direction: column;
  }
  #costexample .costexampleBox .txts .fee .staff{
    margin-left: 10px;
  }
  #costexample .costexampleBox .given .giventxt{
    padding: 10px;
  }
  #costexample .costexampleBox .given .giventxt .line{
    flex-wrap: wrap;
  }
  #costexample .costexampleBox .given .giventxt .line .linettl{
    padding: 7px;
    margin-right: 2%;
    width: 36%;
    margin-bottom: 8px;
  }
  #costexample .costexampleBox .given .giventxt .line .linetxt{
    width: 60%;
    margin-bottom: 8px;
    margin-right: 0;
  }
}

#management #costexample .costexampleBox .txts .list ul li{
  display: block;
}
#management #costexample .costexampleBox .txts .list ul li .itemttl{
  display: flex;
  justify-content: space-between;
  width: 100%;
  border-radius: 5px;
  cursor: pointer;
    background: #eff4f6;
      padding: 10px 19px 10px 19px;
}
#costexample .costexampleBox .txts .list ul li.itemttl {
  display: flex;
  justify-content: space-between;
  border-radius: 5px;
  background: #eff4f6;
  padding: 10px 19px 10px 19px;
}



#management #costexample .costexampleBox .txts .list .item{
  background: url(../images/management/ico_splus01.png) no-repeat left center;
  padding-left: 20px;
}
#management #costexample .costexampleBox .txts .list .itemtbox{
  border-top: 1px #CCC solid;
  font-size: 1.4rem;
  background: #eff4f6;
    padding: 10px 19px 10px 19px;
    border-radius: 0 0 5px 5px;
}

@media screen and (max-width: 767px) {
  #costexample .costexampleBox{
    flex-direction: column;
  }
}

#price .serviceBlock .priceOption{
  padding-top: 60px;
}
#price .serviceBlock .priceOption .h3txt{
  font-size: 3rem;
  color: #0B487E;
  padding-left: 40px;
  margin-bottom: 20px;
  position: relative;
  line-height: 1.2;
}
#price .serviceBlock .priceOption .h3txt span{
  font-size: 2rem;
  margin-left: 15px;
}
#price .serviceBlock .priceOption .h3txt::before{
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background: url(../images/common/ico_logo01.png) no-repeat left top / contain;
  position: absolute;
  top: 0.8em;
  left: 0px;
  transform: translateY(-50%);
}
#price .serviceBlock .priceOption table{
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 40px;
}
#price .serviceBlock .priceOption table th,
#price .serviceBlock .priceOption table td{
  border: 1px solid #ccc;
  padding: 15px;
}
#price .serviceBlock .priceOption table th{
  background-color: #5b758c;
  font-weight: bold;
  color: #fff;
  text-align: left;
}
#price .serviceBlock .priceOption table td{
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  #price .serviceBlock{
    padding: 50px 0;
  }
  #price .serviceBlock .priceOption{
    padding-top: 40px;
  }
  #price .serviceBlock .priceOption .h3txt span{
    margin-left: 0;
  }
  #price .serviceBlock .priceOption table th,
  #price .serviceBlock .priceOption table td{
    display: block;
    width: 100%;
  }
}

#price #mvimg{
  border-radius: 60px 60px 0 0;
  background-color: #EFF4F6;
  padding-top: 80px;
}
#price #mvcount{
  padding: 0 0 117px;
  background-color: #EFF4F6;
}
#price #mvcount .mvcount{
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin-bottom: 25px;
}
#price #mvcount .mvcount .wauto{
  width: auto;
}
#price #mvcount .mvcount .countTxt{
  color: #0b487e;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 0px;
  line-height: 1;
  text-align: left;
}
#price #mvcount .mvcount .countWrap{
  margin: 0 50px;
}
#price #mvcount .mvcount .countWrap .countBox{
  display: flex;
  align-items: baseline;
  width: 100%;
}
#price #mvcount .mvcount .countWrap{
  font-size: 2.8rem;
  color: #0b487e;
  line-height: 1;
}
#price #mvcount .mvcount .mvcount .countTxt02{
  color: #0b487e;
  font-size: 5.0rem;
  line-height: 1;
}
#price #mvcount .mvcount .countNum{
  font-size: 6.8rem;
  background-image: linear-gradient(90deg, rgba(30, 172, 220, 1), rgba(18, 86, 151, 1));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #0b487e;
  line-height: 1;
}
#price #mvcount .mvcount .sla{
  position: relative;
}
#price #mvcount .mvcount .sla::before{
  content: "";
  display: block;
  width: 48px;
  height: 82px;
  background: url(../images/top/ico_sla01.png) no-repeat left top / contain;
  position: absolute;
  top: 3px;
  left: -75px;
}
#price #mvcount .mvsmtxt{
  font-size: 1.4rem;
  font-weight: 500;
  text-align: center;
}
#price #mvcount .mvsmtxt a{
  text-decoration: underline;
  color: #111;
}

@media screen and (max-width: 1024px){
  #price #mvcount{
    padding-bottom: 60px;
  }
  #price #mvcount .mvcount{
    flex-wrap: wrap;
  }
  #price #mvcount .mvcount .txts{
    font-size: 1.8rem;
    margin-top: 15px;
    width: 100%;
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  #price #mvimg{
    border-radius: 30px 30px 0 0;
    padding-bottom: 10px;
  }
  #price #mvcount .mvcount{
    flex-wrap: wrap;
  }
  #price #mvcount .countWrap{
    margin: 0 7px;
  }
  #price #mvcount .mvcount .countWrap{
    margin: 0 22px;
  }
  #price #mvcount .mvcount .countWrap .countBox{
    display: flex;
    align-items: baseline;
    width: 100%;
  }
  #price #mvcount .mvcount .countTxt{
    font-size: 1.4rem;
    margin-bottom: 0px;
  }
  #price #mvcount .mvcount .countNum{
    font-size: 3.6rem;
  }
  #price #mvcount .mvcount .countTxt02{
    font-size: 2.7rem;
  }
  #price #mvcount .mvcount .sla{
    position: relative;
  }
  #price #mvcount .mvcount .sla::before{
    content: "";
    display: block;
    width: 26px;
    height: 44px;
    background: url(../images/top/ico_sla01sp.png) no-repeat left top / contain;
    position: absolute;
    top: 3px;
    left: -35px;
  }
  #price #mvcount .mvcount .countTxt{
    font-size: 1.4rem;
    margin-bottom: 0px;
  }
  #price #mvcount .mvcount .countTxt .txt14{
    font-size: 1.0rem;
    margin-bottom: 0px;
  }
  #price #mvcount .mvcount .txts{
    font-size: 1.6rem;
    margin-top: 15px;
    width: 100%;
    text-align: center;
  }
}

#price #faq{
  background: linear-gradient(to right, #0b487e 50%, #1eaddd 100%);
  padding: 100px 0;
  border-radius: 30px 30px 0 0;
  margin-top: -60px;
}
#price #faq .inner{
  padding: 40px;
  background: #FFF;
  border-radius: 10px;
}
#price #faq .iconttlWrap, #price #faq .ttlBox{
  text-align: center;
  justify-content: center;
}
#price #faq .iconttlWrap{
  margin-bottom: 0px;
}
#price #faq .iconttl{
  display: inline-block;
  font-size: 1.6rem;
  color: #0b487e;
  margin-bottom: 25px;
  position: relative;
  padding: 5px 0 0 40px;
}
#price #faq .iconttl::before{
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background: url(../images/common/ico_logo01.png) no-repeat left top / contain;
  position: absolute;
  top: 0px;
  left: 0px;
}
#price #faq .ttlBox{
  margin-bottom: 25px;
}
#price #faq .ttlBox .h2txt{
  font-size: 4.2rem;
  font-weight: 700;
  line-height: 1.4;
}
#price #faq .faqBox .q01{
  background: #eff4f6;
  color: #0b487e;
  padding: 10px 0 10px 20px;
  border-radius: 10px;
  min-height: 90px;
  display: flex;
  align-items: center;
  font-size: 2.4rem;
  font-weight: 700;
  font-feature-settings: "palt";
}
#price #faq .faqBox .q01::before{
  font-family: "Lexend Giga", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400 !important;
  font-style: normal;
  content: "Q";
  font-size: 2.4rem;
  background: #0b487e;
  color: #FFF;
  height: 50px;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 15px;
  border-radius: 25px;
}
#price #faq .faqBox .a01{
  padding: 25px 20px;
  margin-bottom: 15px;
  font-size: 1.6rem;
  line-height: 1.8;
}
#price #faq .btn01 a{
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  #price #faq{
    margin-top: -30px;
    padding: 50px 0;
  }
  #price #faq .inner{
    padding: 30px 12px;
    border-radius: 5px;
  }
  #price #faq .iconttl::before{
    content: "";
    display: block;
    width: 24px;
    height: 29px;
    background: url(../images/common/ico_logo01.png) no-repeat left 5px / 100%;
  }
  #price #faq .ttlBox{
    margin-bottom: 28px;
  }
  #price #faq .ttlBox .h2txt{
    font-size: 2.6rem;
    margin-bottom: 20px;
    font-feature-settings: "palt";
  }
  #price #faq .faqBox{
    margin-bottom: 10px;
  }
  #price #faq .faqBox .q01{
    border-radius: 5px;
    min-height: 78px;
    padding-left: 10px;
    padding-right: 30px;
    font-size: 1.8rem;
  }
  #price #faq .faqBox .q01::before{
    font-size: 1.5rem;
    height: 35px;
    width: 35px;
    margin-right: 15px;
    flex-shrink: 0;
  }
  #price #faq .faqBox .a01{
    padding: 15px;
    margin-bottom: 15px;
    font-size: 1.6rem;
  }
  #price #faq .btn01{
    margin: 0 auto;
  }
}