/*--------------
基本設定
--------------*/
body {
  font-size: 5vw;
}
.title {
  font-size: 6vw;
}
.list-check-light-blue li {
  font-size: 5.5vw;
  padding: 10px 10px 10px 60px;
}
.list-check-light-blue li::before {
  width: 40px;
  left: 10px;
}
.pc {
  display: none;
}
.mobi {
  display: block;
}
/*--------------
header
--------------*/
.header-wrap {
  height: 16vw;
}
.header-wrap .logo {
  font-size: 4.5vw;
}
.header-button-contact {
  width: 15%;
}
.header-nav {
  top: 16vw;
}
.hamburger {
  width: 40px;
}
/*--------------
top
--------------*/
.kv {
  margin-top: 16vw;/*57px*/
}
/*--------------
onayami
--------------*/
.onayami {
  padding: 0 0 50px;
}
.onayami .title {
  font-size: 5.5vw;
}
.onayami h3 {
  font-size: 5vw;
  padding: 20px 2% 20px 70px;
}
.onayami h3::before {
  width: 60px;
}
.onayami-list-wrap li {
  padding: 5px 10px 5px 40px;
}
.onayami-list-wrap li::before {
  width: 30px;
}
.onayami-txt {
  margin: 40px 0 0;
}
.onayami-txt p:first-of-type {
  font-size: 5.5vw;
}
.onayami-txt p:last-of-type {
  font-size: 11vw;
}
/*--------------
merit
--------------*/
.merit h2 {
  font-size: 7vw;
  width: 80%;
  height: auto;
  margin: 0 auto 30px;
}
.merit .last {
  margin: 30px 0;
}
.merit .last li {
  padding: 10px 10px 10px 45px;
  font-size: 4.7vw;
}
.merit .last li::before {
  left: 4vw;
  width: 6vw;
}
.merit-txt {
  padding: 40px 0;
}
.merit-txt p:first-of-type {
  font-size: 7vw;
  margin-bottom: 30px;
}
.merit-txt p:first-of-type .big {
  font-size: 14vw;
}
.merit-txt p:last-of-type {
  font-size: 6vw;
}
.merit-txt p:last-of-type .red {
  font-size: 6vw;
}
.merit-txt p:last-of-type .big {
  font-size: 8vw;
}
/*--------------
about
--------------*/
.about h2 {
  font-size: 6vw;
  padding: 20px 10px 20px 90px;
}
.about h2::before {
  width: 70px;
  left: 10px;
}
/*--------------
profile
--------------*/
.profile-con {
  padding: 10px 10px 0 10px;
  min-height: 140px;
  column-gap: 10px;
}
.profile-con img {
  width: 30%;
  margin: 0;
}
.profile-txt {
  width: 65%;
}
.profile-con p:first-of-type{
  font-size: 5vw;
}
.profile-con p:nth-of-type(2){
  font-size: 4.5vw;
}
.profile-con .profile-comment{
  font-size: 4vw;
}
.profile-table h3{
  font-size: 6vw;
}
.profile th,
.profile td {
  font-size: 5vw;
  padding: 10px;
}
.profile th{
  width: 30%;
}
.profile-table{
  margin: 30px 0;
  padding: 20px 10px;
}
.profile-table::before{
  width: 25vw;
  left: -1.5vw;
  top: -1.5vw;
}
.profile-table::after{
  width: 25vw;
  bottom: -1.5vw;
  right: -1.5vw;
}
/*--------------
reason
--------------*/
.reason .title {
  font-size: 6vw;
  padding: 20px 10px 20px 70px;
}
.reason .title .small {
  font-size: 4.3vw;
}
.reason .title::before {
  width: 70px;
  left: 10px;
}
.reason-img > img {
  width: 70%;
}
.reason-img .num {
  width: 30%;
  font-size: 5vw;
}
.reason-img .num span {
  font-size: 10vw;
}
.reason-con {
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 1) 32%, rgba(237, 203, 5, 1) 32%);
}
.reason-con dt {
  font-size: 5.6vw;
  padding: 10px 0;
}
.reason-con dd {
  font-size: 5vw;
  padding: 15px 10px;
}
.area01 {
  margin-top: 100px;
}
.area01 h2 {
  font-size: 6vw;
}
.area01 h2::before {
  width: 50px;
  top: -70px;
}
.area01 p {
  font-size: 5vw;
}
.area01 .box {
  padding: 20px 10px;
  font-size: 5vw;
  margin: auto;
}
.area01 .small {
  font-size: 4.5vw;
}
.cta{
  padding: 7vw 10px 10px;
}
.cta .serif{
  font-size: 6vw;
}
.cta .tel{
  margin: 2vw 0;
}
.cta .tel > p{
  font-size: 7vw;
  padding-left: 10%;
}
.cta .tel > p::before{
  width: 30px;
}
.cta .tel > span{
  font-size: 4vw;
}
.cta .mail{
  font-size: 5vw;
  padding-left: 50px;
  margin-bottom: 3vw;
}
.cta .mail::before{
   width: 25px;
}
.cta > p:last-of-type{
  font-size: 4vw;
}
.reassure-area-inner {
  width: 100%;
}
.reassure-area-inner div {
  width: 95%;
}
.reassure-area p {
  font-size: 4.5vw;
}
.reassure-area p:first-of-type{
  font-size: 5.5vw;
}
.reassure-area .bg-yellow {
  font-size: 6.8vw;
  margin-bottom: 0;
}
.reassure-area-txt {
  width: 95%;
}
.yellow-balloon {
  width: 100%;
  padding: 20px 10px 10px;
  margin: 30px 0;
}
/*--------------
case
--------------*/
.case-content {
  padding: 0 2.5% 10px;
}
.case-inner{
  align-items: center;
}
.case-inner p {
  font-size: 6vw;
  width: 70%;
}
.case-inner p span:first-of-type{
  font-size: 5vw;
  margin-bottom: 10px;
}
.case-inner img {
  width: 30%;
  margin: 0;
}
.case-content .red {
  font-size: 5vw;
}
/*--------------
voice
--------------*/
.voice .title span {
  font-size: 5vw;
}
.voice dl {
  width: 95%;
  margin: 0 auto 20px;
}
.voice dt {
  font-size: 6vw;
}
.voice dt span {
  width: 40px;
  line-height: 34px;
  left: 160px;
  padding-left: 5px;
}
.voice dd {
  font-size: 5vw;
}

.fee table {
  font-size: 4vw;
}
.fee th,
.fee td {
  padding: 10px;
}
/*--------------
flow
--------------*/
.flow li {
  font-size: 5vw;
  max-height: 100px;
}
.flow li span {
  width: auto;
  height: 80px;
  font-size: 12vw;
  line-height: 80px;
}
.flow .img {
  width: 25%;
}
.flow li:nth-of-type(4) .img img {
  width: 80%;
}
.flow li:nth-of-type(5) .img img {
  width: 50%;
}
/*--------------
qa
--------------*/
.qa .title {
  font-size: 5vw;
}
.qa-list li:nth-of-type(odd) {
  font-size: 5vw;
}
/*--------------
contact
--------------*/

.contact p{
  font-size: 4.5vw;
}
.form-check{
  font-size: 4.5vw;
}
.form-wrap td{
  padding-bottom: 20px;
}
.form-wrap input[type="submit"]{
  font-size: 6vw;
}
/*--------------
footer
--------------*/
footer{
  margin-bottom: 27vw!important;
}
.footer-fixed{
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  background: rgb(255 255 255 / 0.8);
  padding: 10px;
}
.footer-fixed p{
  position: absolute;
  top: 5px;
  left: 50%;
  transform: translateX(-50%);
}
.footer-fixed p span{
  font-weight: bold;
  font-size: 5vw;
  color: #ff1209 ;
  position: relative;
  display: block;
}
.footer-fixed p span::after,
.footer-fixed p span::before{
  content: "";
  width: 4px;
  height: 70%;
  display: block;
  position: absolute;
  bottom: 0;
  background: #ff1209 ;
}
.footer-fixed p span::before{
  left: -20px;
  transform: rotate(-30deg);
}
.footer-fixed p span::after{
  right: -20px;
  transform: rotate(30deg);
}
.footer-fixed .flex-between{
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  column-gap: 10px;
}

