html,body {
  font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Yu Gothic", YuGothic, Meiryo, sans-serif;
}

#header .headArea {
  padding-right: 0;
}
#header .headArea .btnArea {
  padding: 0;
  gap: 8px;
}
@media screen and (max-width: 767px) {
  #header .headArea .btnArea {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  #header .headArea .btnArea {
    padding-right: 0;
  }
}
#header .headArea .btn {
  width: 89px;
}
@media screen and (min-width: 768px) {
  #header .headArea .btn {
    width: auto;
  }
}
@media screen and (min-width: 768px) {
    #header .headArea .btn.online1 a {
        background-color: #ffe7d9;
        -webkit-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
        padding: 0.5em;
        border-radius: 0.5em;
    }
}
@media screen and (min-width: 768px) {
    #header .headArea .btn a {
        /* width: 100%; */
        height: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -moz-align-items: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -moz-justify-content: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        border-radius: 0;
    }
}
@media screen and (min-width: 768px) {
    #header .headArea .btn.online1 p {
        font-size: 17px;
        color: #946134;
        line-height: 1em;
        margin: 0;
        padding: 0;
    }
}
@media screen and (min-width: 768px) {
    #header .headArea .btn+.btn {
        margin-left: 10px;
        margin-top: -16px;
    }
}
@media screen and (min-width: 768px) {
    #header .headArea .btn.doc1 a {
        background-color: #ff7726;
        -webkit-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
        height: 108px;
        width: 188px;
    }

    #header .headArea .btn a:hover {
      opacity: 0.85;
    }
}
@media screen and (min-width: 768px) {
    #header .headArea .btn p {
        text-align: center;
        font-size: 20px;
        line-height: 1em;
        -webkit-font-smoothing: antialiased;
        -moz-font-smoothing: antialiased;
        font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        color: #fff;
        margin-top: 0;
        margin-bottom: 0;
        font-weight: 600;
    }
}

#header .headArea .btn.tel {
  background-color: #fff;
  border-radius: 8px;
  border: solid 1px #e50012;
  -webkit-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out;
}
#header .headArea .btn.tel .circleicon {
  background-image: none;
}
#header .headArea .btn.tel .circleicon svg {
  width: 20px;
  height: 20px;
}
#header .headArea .btn.tel .circleicon svg path {
  -webkit-transition: fill 0.2s ease-in-out;
  transition: fill 0.2s ease-in-out;
}
#header .headArea .btn.tel p {
  color: #e50012;
  -webkit-transition: color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
  #header .headArea .btn.tel:hover {
    background-color: #e50012;
  }
  #header .headArea .btn.tel:hover .circleicon svg path {
    fill: #fff;
  }
  #header .headArea .btn.tel:hover p {
    color: #fff;
  }
}

@media screen and (min-width: 768px) {
  .fixed_tel_body,
  .fixed_header_cta {
    display: none;
  }
}

.fixed_header_cta {
  position: fixed;
  left: 0px;
  bottom: 0px;
  width: 100%;
  padding: 10px 90px 10px 15px;
  background-color: rgba(255, 255, 255, 0.8);
  z-index: 100;
}
@media screen and (min-width: 768px) {
  .fixed_header_cta {
    display: none;
  }
}
.fixed_header_cta .btnArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -moz-justify-content: space-between;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 4px;
}
.fixed_header_cta .btn {
  width: 33.3333333333%;
  height: 54px;
  display: block;
}
.fixed_header_cta .btn a {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -moz-align-items: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -moz-justify-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 8px;
}
.fixed_header_cta .btn p {
  font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Yu Gothic", YuGothic, Meiryo, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.fixed_header_cta .btn.doc a {
  background-color: #219a25;
}
.fixed_header_cta .btn.online {
  display: block !important;
}
.fixed_header_cta .btn.online a {
  background-color: #8064a2;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
  .fixed_header_cta .btn.online a:hover {
    background-color: #573f74;
  }
}
.fixed_header_cta .btn.online p {
  padding-top: 4px;
  font-size: 11px;
}
.fixed_header_cta .btn.tel {
  border: solid 1px #e50012;
  border-radius: 8px;
  background-color: #fff;
}
.fixed_header_cta .btn.tel p {
  color: #e50012;
  padding-top: 5px;
}
.fixed_header_cta .btn.online {
  display: none;
}
.fixed_header_cta .btn .circleicon {
  display: block;
  width: 23px;
  height: 20px;
  background-size: cover;
  background-position: center center;
  background-image: url(../images/icon/icon_btn02.png);
}
.fixed_header_cta .btn .circleicon.online {
  width: 25px;
  height: 20px;
  background-image: url(../images/icon/icon_btn08.png);
}
.fixed_header_cta .btn .circleicon.tel {
  width: 20px;
  height: 20px;
  background-image: url(../images/icon/icon_tel.svg);
}
.fixed_header_cta .btn p {
  text-align: center;
  font-size: 10px;
  line-height: 1em;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #fff;
  margin-top: 3px;
  font-weight: 600;
}
@media screen and (min-width: 980px) {
  .fixed_header_cta .btn p {
    font-weight: bold;
  }
}

#pageTop {
  z-index: 101;
}


/*fv*/
#fv {
  background: url(../images/bg-fv.svg) center top repeat-x;
  background-size: auto 744px;
  margin-bottom: 4em;
  height: 744px;
  text-align: center;
}
.fv-img {
  display: flex;
  align-items: flex-end;
  background: url(../images/fv-main.png) center bottom no-repeat;
  background-size: auto 644px;
  height: 744px;
  text-align: center;
}
.fv-inner {
  display: flex;
  margin: 0 auto 14px auto;
  width: 1200px;
}

.fv_left_block {
  width: 800px;
}
.fv_left-main {
  width: 100%;
  min-height: 680px;
  position: relative;
}
.fv_left-main h1 {
  display: none;
}
.fv-img1,
.fv-img2 {
  display: none;
}

.caption {
  display: block;
  margin: 0 auto 0 0;
  max-width: 490px;
  text-align: left;
}
.caption p {
  display: inline-block;
  margin: 0 auto;
  padding-left: 1em;
  font-size: 13px;
  line-height: 1.2em;
  text-align: left;
  text-indent: -1em;
  color: #a9815d;
}

.fv_right_block {
  display: flex;
  align-items: flex-end;
  position: relative;
  z-index: 2;
  width: 400px;
}
.fv_right_block-Wrap {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border-radius: 1em;
  gap: 14px;
}
.fv_right_block-img {
  display: flex;
  flex-direction: column;
  padding: 14px 16px 0 16px;
  gap: 14px;
}
.fv_right_block-img img {
  width: 100%;
  height: auto;
}
.img-radius {
  border-radius: 8px;
}

.column_btn {
  display: flex;
  flex-direction: column;
  padding: 12px 16px 12px 16px;
  max-width: 400px;
  font-family: "M PLUS Rounded 1c", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Yu Gothic", YuGothic, Meiryo, sans-serif;
  gap: 14px;
}

.btn-Doc {
  display: inline-block;
  background-color: #ff7726;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  position: relative;
  padding: 24px 0;
  width: 100%;
  border-radius: 8px;
  text-align: center;
  font-size: 24px;
  line-height: 1em;
  font-weight: 700;
  color: #fff;
  box-shadow: 0 4px 0 #dfd0c2;
}
.btn-Doc:hover {
  opacity: 0.85;
}
.column_btn .btn-Doc span {
  padding-left: 3em;
}
.btn-Doc span:before {
  content: '';
  background: url(../images/icon-01.svg) left center no-repeat;
  background-size: 64px 76px;
  width: 64px;
  height: 76px;
  position: absolute;
  top: -0.3em;
  left: 0.5em;
}

.btn-Price {
  display: inline-block;
  background-color: #ffe7d9;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  position: relative;
  padding: 6px 0 6px 3em;
  width: 100%;
  border: 4px solid #ff7726;
  border-radius: 8px;
  text-align: left;
  font-size: 24px;
  line-height: 1.2em;
  font-weight: 700;
  color: #ff7726;
  box-shadow: 0 4px 0 #dfd0c2;
}
.btn-Price:hover {
  opacity: 0.85;
}
.btn-Price span {
  
}
.btn-Price span:before {
  content: '';
  background: url(../images/icon-02.svg) left center no-repeat;
  background-size: 50px 76px;
  width: 50px;
  height: 76px;
  position: absolute;
  top: -0.5em;
  left: 0.5em;
}
.btn-Price .fixed_time {
    position: absolute;
    top: 0;
    right: 0.2em;
    bottom: 0;
    margin: auto;
    width: 58px;
    height: 58px;
    background-color: #F87135;
    font-size: 18px;
    line-height: 1.2em;
    font-weight: bold;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    z-index: 11;
    border-radius: 50%;
}
.btn-Price .fixed_time p {
  text-align: center;
}
.pc_Only {
  display: block;
}
.sp_Only {
  display: none;
}



/*campaign*/
.campaign {
  margin: 0 auto 4em auto;
  max-width: 1100px;
}


/*sec01*/
.sec01 {
  width: 100%;
}
.sec01-header {
  margin: 0 auto 5em auto;
  width: 100%;
  text-align: center;
}
.sec01-head_title {
  background: url(../images/sec01-title.svg) center top no-repeat;
  background-size: 1780px 249px;
  width: 100%;
  height: 249px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.sec01-head_title h1 {
  text-indent: -99999em;
}
.sec01-head-inner {
  background: #fef1f4;
  padding-bottom: 5em;
  width: 100%;
}
.sec01-head-inner ul.sec01_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
  max-width: 1100px;
  gap: 1.5em;
}
.sec01-head-inner ul.sec01_list li {
  position: relative;
  width: calc(100% / 2 - 1em);
  border-radius: 0.75em;
}
.sec01-head-inner ul.sec01_list li:first-child {
  width: 71.35%;
}
.sec01-head-inner ul.sec01_list li a {
  display: block;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  width: 100%;
  height: 100%;
  position: relative;
}
.sec01-head-inner ul.sec01_list li a:hover {
  opacity: 0.85;
}
.sec01-head-inner ul.sec01_list li a img {
  width: 100%;
  height: auto;
}

.sec01-01,
.sec01-02,
.sec01-03,
.sec01-04,
.sec01-05 {
  margin: 0 auto 4em auto;
  max-width: 1100px;
}
.sec01-01_head {
  background: #fdeaef;
}
.sec01-01_head h3,
.sec01-02_head h3,
.sec01-03_head h3,
.sec01-04_head h3,
.sec01-05_head h3 {
  margin-bottom: 0.8em;
  padding: 0.8em 0 0.5em 2.8em;
  font-size: 44px;
  line-height: 1.5em;
  font-weight: bold;
  color: #946134;
}
.sec01-01_head h3 {
  background: url(../images/sec01-icon01.svg) 0.5em 0.3em no-repeat;
  background-size: 88px 92px;
}
.sec01-02_head {
  background: #fef1e2;
}
.sec01-02_head h3 {
  background: url(../images/sec01-icon02.svg) 0.5em 0.3em no-repeat;
  background-size: 88px 92px;
}
.sec01-03_head {
  background: #def4f5;
}
.sec01-03_head h3 {
  background: url(../images/sec01-icon03.svg) 0.5em 0.3em no-repeat;
  background-size: 88px 92px;
}
.sec01-04_head {
  background: #ecf5e2;
}
.sec01-04_head h3 {
  background: url(../images/sec01-icon04.svg) 0.5em 0.3em no-repeat;
  background-size: 88px 92px;
}
.sec01-04_head h3 span {
  display: inline-block;
  background: #9fce70;
  padding: 0.2em;
  font-size: 36px;
  line-height: 1em;
  border-radius: 999em;
  color: #ffffff;
}
.sec01-05_head {
  background: #e3f5fc;
}
.sec01-05_head h3 {
  background: url(../images/sec01-icon05.svg) 0.5em 0.3em no-repeat;
  background-size: 88px 92px;
}

.sec01-01_body,
.sec01-03_body,
.sec01-04_body,
.sec01-05_body {
  display: flex;
  padding: 0 4.375rem;
  gap: 1.5em;
}
.sec01-02_body {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
.sec02-img01 {
  margin: 0 auto;
  min-width: 417px;
}
.sec02-img01 img {
  width: 100%;
  height: auto;
}
.sec02-img02_03 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto 0 auto;
  width: 100%;
}
.sec02-img02,
.sec02-img03 {
  width: calc(50% - 2px);
}
.sec02-img02 {
  padding-right: 3em;
  border-right: 2px solid #875732;
}
.sec02-img03 {
  padding-left: 3em;
}
.sec02-img04 {
  margin: 0 auto;
  min-width: 988px;
}
.sec02-img04 img {
  width: 100%;
  height: auto;
}
.sec02-caption p {
  font-size: 13px;
  line-height: 1.5em;
  text-align: center;
}

.sec01-text {
  font-size: 20px;
}
.sec01-img {
  min-width: 302px;
  text-align: center;
}
.sec01-img img {
  margin: 0 auto;
  width: 100%;
  height: auto;
}
.sec01-01_body .sec01-img img {
  max-width: 243px;
  height: auto;
}

.cta {
  background: #fef1f4;
  margin-bottom: 5em;
  padding: 5em 0;
  width: 100%;
  text-align: center;
}
.cta.bg-B {
  background: #ecf8fd;
  margin-bottom: 0;
}
.cta-head {
  margin: 0 auto 2em auto;
  width: 960px;
}
.cta-body {
  margin: 0 auto;
  width: 960px;
}
.cta-btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5em;
}
.cta-btn li {
  width: calc(100% / 2 - 16px);
}
.cta-btn li > .btnArea > .btn-Doc {
  padding: 12px 0 12px 3em;
  text-align: center;
}
.cta-btn li > .btn-Doc {
  padding: 12px 0 12px 3em;
  text-align: center;
}
.cta-btn li > .btnArea > .btn-Doc span {
    padding-left: 0;
}
.cta-btn li > .btnArea > .btn-Price {
  padding: 18px 0 18px 3em;
}

/*CTA縮小版*/
.cta-min {
  background: #fef1e2;
  margin-bottom: 5em;
  padding: 5em 0;
  width: 100%;
  text-align: center;
  border-radius: 24px;
}


.sec02 {
  width: 100%;
  text-align: center;
}
.sec02-head {
  margin: 0 auto 3em auto;
  max-width: 1100px;
  text-align: center;
}
.sec02-head img {
  margin: 0 auto 1em auto;
  max-width: 616px;
}
.sec02-head h1 {
  font-size: 44px;
  text-align: center;
  font-weight: bold;
  color: #946134;
}
.sec02-head h1 span {
  color: #fa8298;
}

.sec02-01,
.sec02-02,
.sec02-03,
.sec02-04,
.sec02-05 {
  background: #fcfcf5;
  margin: 0 auto 5em auto;
  padding: 3em 0;
  max-width: 1100px;
  text-align: center;
}
.sec02-title h2 {
  margin: 0 auto 1em auto;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  color: #f17592;
  position: relative;
}
.sec02-title h2 span {
  background-image: url(../images/icon-before.svg),url(../images/icon-after.svg);
  background-position: left center, right center;
  background-repeat: no-repeat, no-repeat;
  background-size: 29px 50px;
  padding: 0 1.5em;
}
.sec02-title h2 br {
  display: none;
}
.sec02-title p {
  margin: 0 auto 1em auto;
  font-size: 20px;
  text-align: center;
  color: #505050;
}

.sec02-01-body {
  margin: 0 auto;
  max-width: 780px;
}
.sec02-01-body img {
  margin-bottom: 1em;
  width: 100%;
  height: auto;
}
.sec02-01-body p {
  font-size: 13px;
  line-height: 1.2em;
  color: #a9815d;
}

.sec02-02-body {}
.sec02-02-img01 {
  margin: 0 auto 2em auto;
  max-width: 928px;
}
.sec02-01-img01 img {
  width: 100%;
  height: auto;
}
.sec02-02-img02 {
  margin: 0 auto;
  max-width: 863px;
}
.sec02-02-img02 img {
  margin-bottom: 1em;
  width: 100%;
  height: auto;
}
.sec02-02-img02 p {
  font-size: 13px;
  line-height: 1.2em;
  color: #a9815d;
}

.sec02-03-body {}
ul.sec02-03-list {
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 928px;
  gap: 1.5em;
}
ul.sec02-03-list li {
  display: grid;
  grid-template-columns: 300px 1fr;
  align-items: start;
  background: #ffffff;
  padding: 0.75em;
  max-width: 928px;
  gap: 1em;
}
.sec02-03-img {
  position: relative;
  width: 300px;
}
.sec02-03-img .sec02-03-icon {
  width: 82px;
  height: 52px;
  position: absolute;
  top: -0.75em;
  left: 1em;
}
.sec02-03-img img {
  width: 100%;
  height: auto;
}

.sec02-03-text {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.sec02-03-text-head {

}
.sec02-03-text-head p {
  font-size: 20px;
  line-height: 1.5em;
  font-weight: bold;
  color: #875732;
}
.sec02-03-text-head p span {
  color: #f17592;
}
.sec02-03-text-info {
  display: flex;
  justify-content: center;
  gap: 0.5em;
}
.sec02-03-text-info dl {
  border-top: 1px solid #bababa;
}
.sec02-03-text-info dl:first-child {
  width: 164px;
}
.sec02-03-text-info dl:last-child {
  width: 256px;
}
.sec02-03-text-info dl dt {
  display: inline-block;
  background: #def4f5;
  padding: 0 0.5em;
  font-size: 1rem;
  line-height: 2.2em;
}
.sec02-03-text-info dl dd {
  padding: 0.3em 1em 0 1em;
  font-size: 1rem;
  line-height: 1.6em;
}
.sec02-03-btn {
  text-align: center;
}

.sec02-04-list {
  display: flex;
  margin: 0 auto;
  max-width: 980px;
  gap: 1rem;
}
.sec02-04-list li {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border-radius: 0.9rem;
  width: calc(100% / 3);
  gap: 1.5rem;
}
.sec02-04-list-img {}
.sec02-04-list-img img {
  border-radius: 0.9rem 0.9rem 0 0;
  width: 100%;
  height: auto;
}
.sec02-04-list-title {
  display: grid;
  grid-template-columns: 77px 1fr;
  justify-content: center;
  align-items: center;
  padding: 0 0.5rem;
  min-height: 4em;
  gap: 1rem;
}

.sec02-04-list-title h3 {
  font-size: 1.5rem;
  line-height: 1.4em;
  color: #875732;
}
ul.sec02-04-list-text {
  padding: 0 1rem 2rem 1rem;
  width: 100%;
}
ul.sec02-04-list-text li {
  margin-bottom: 0.5em;
  padding-left: 1.2rem;
  width: 100%;
  font-size: 1rem;
  line-height: 1.4em;
  position: relative;
}
ul.sec02-04-list-text li::before {
  content: '●';
  color: #f8bac8;
  position: absolute;
  top: 0;
  left: 0;
}

.sec02-05-body {
  margin: 0 auto;
  max-width: 980px;
}
.sec02-05-body img {
  margin-bottom: 3rem;
  width: 100%;
  height: auto;
}
.sec02-05-body p {
  padding-left: 1em;
  font-size: 13px;
  line-height: 1.6em;
  text-indent: -1em;
  text-align: left;
  color: #a9815d;
}


.faq {
  background: url(../images/bg-faq.svg) center repeat;
}
.faq-inner {
  margin: 0 auto;
  padding: 5em 0;
  max-width: 1100px;
}
.faq-inner h2.faq-title {
  margin-bottom: 1.5rem;
  min-height: 174px;
  font-size: 60px;
  line-height: 2em;
  text-align: center;
  color: #875732;
}
.faq-inner h2.faq-title span {
  position: relative;
}
.faq-inner h2.faq-title span::after {
  display: block;
  content: '';
  background: url(../images/icon-04.svg) center no-repeat;
  background-size: 144px 172px;
  margin: auto;
  width: 144px;
  height: 172px;
  position: absolute;
  top: 0;
  right: -172px;
  bottom: 0;
}
.faq-area {
  max-width: 1100px;
}
/* 親 */
.qaList {
  background: #fafbef;
  border-bottom: 1px solid #828282;
  cursor: pointer;
}

/* 質問 */
.q {
  display: grid;
  grid-template-columns: 3em 1fr;
  background: url(../images/btn-faq-plus.svg) 2em center no-repeat;
  background-size: 1.5em 1.5em;
  padding: 2.5em 1em 2em 5em;
}

/* 開いた状態 */
.q.active {
  background: url(../images/btn-faq-minus.svg) #f3eeea 2em center no-repeat;
  background-size: 1.5em 1.5em;
}

/* 回答（ここが重要） */
.a {
  display: grid;
  grid-template-columns: 3em 1fr;
  background: #ffffff;
  padding: 0 1em 0 5em;

  max-height: 0;
  overflow: hidden;
  /* transition: max-height 0.1s ease, padding 0.1s ease; */
}

/* 開いた状態 */
.q.active + .a {
  max-height: 500px; /* 適当に大きく（重要） */
  padding: 2em 1em 2em 5em;
}

.q-icon,
.a-icon {
  font-family: Josefin Sans;
  width: 2.4em;
  font-size: 28px;
  text-align: right;
  color: #997051;
}

.q-icon span {
  font-size: 60px;
  color: #bac439;
}

.info p.text,
.in .textArea {
  padding-left: 1.5em;
  font-size: 24px;
}



.contact {
  padding-top: 4em;
  width: 100%;
  text-align: center;
}
.contact-head {
  margin: 0 auto 2em auto;
  max-width: 1100px;
}
.contact-head p {
  margin-bottom: 1rem;
  font-size: 30px;
  line-height: 1.6em;
  text-align: center;
  color: #464646;
}
.contact-head p br {
    display: none;
}
.contact-head h2 {
  margin-bottom: 1rem;
  font-size: 40px;
  line-height: 1.6em;
  font-weight: bold;
  text-align: center;
  color: #f17592;
}
.contact-btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto 3em auto;
  max-width: 1100px;
  gap: 1.5rem;
}
.contact-area {
  width: calc(100% / 3 - 1em);
}
.contact-area dl {}
.contact-area dl dt {
  margin-bottom: 1em;
}
.contact-area dl dd {
  padding: 0 2em;
  font-size: 18px;
  line-height: 1.6em;
}

.btn-Doc-c {
  display: inline-block;
  background-color: #ff7726;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  position: relative;
  padding: 10px 0 10px 0;
  width: 100%;
  border-radius: 8px;
  text-align: center;
  font-size: 24px;
  line-height: 1.2em;
  font-weight: 700;
  color: #fff;
  box-shadow: 0 4px 0 #dfd0c2; 
}
.btn-Doc-c span:before {
    content: '';
    background: url(../images/icon-01.svg) left center no-repeat;
    background-size: 64px 76px;
    width: 64px;
    height: 76px;
    position: absolute;
    top: -0.5em;
    left: 0.5em;
}
.btn-online {
  display: inline-block;
  background-color: #ffffff;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  position: relative;
  padding: 6px 0 6px 5em;
  border: 4px solid #ff7726;
  width: 100%;
  border-radius: 8px;
  text-align: left;
  font-size: 24px;
  line-height: 1.2em;
  font-weight: 700;
  color: #ff7726;
  box-shadow: 0 4px 0 #dfd0c2; 
}
.btn-online span:before {
    content: '';
    background: url(../images/icon-05.svg) left center no-repeat;
    background-size: 96px 88px;
    width: 96px;
    height: 88px;
    position: absolute;
    top: -0.8em;
    left: 0.5em;
}
.btn-Doc-c:hover,
.btn-online:hover {
  opacity: 0.85;
}

.contact-aside {
  margin: 0 auto 3em auto;
  max-width: 1100px;
}
.contact-aside p {
  font-size: 13px;
  line-height: 1.5em;
  text-align: center;
}

.contact-phone {
  background: #f2788a;
  padding: 3em 0;
  width: 100%;
  text-align: center;
}
.contact-phone-inner {
  margin: 0 auto;
  max-width: 1100px;
}
.contact-phone-head {
  background: #f6a0b0;
  width: 100%;
}
.contact-phone-head p {
  font-size: 20px;
  text-align: center;
  line-height: 4rem;
  color: #ffffff;
}
.contact-phone-body {
  background: #ffffff;
  margin-bottom: 1rem;
  padding: 2rem 0;
  width: 100%;
  text-align: center;
  display: flex;
  flex-direction: column;
}
.contact-phone-body p.text {
  font-size: 36px;
  font-weight: bold;
  color: #f6a0b0;
  text-align: center;
  margin-bottom: 1rem;
}
.contact-phone-body p.tel {
  color: #f6a0b0;
}
.contact-phone-body p.tel a.phone {
display: block;
  font-family: Josefin Sans;
  font-size: 120px;
  line-height: 1em;
  font-weight: bold;
  color: #f6a0b0;
  text-align: center;
}
.contact-phone-body p.time {
  font-size: 28px;
  font-weight: bold;
  color: #f6a0b0;
  text-align: center;
}
.contact-phone-body p.time span {
  font-weight: normal;
}
.contact-phone-aside {
  margin-bottom: 2rem;
}
.contact-phone-aside p {
  font-size: 14px;
  line-height: 1.6em;
  color: #ffffff;
}

.bottomLink ul {
  max-width: 620px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.bottomLink ul li {
  text-align: center;
  width: calc(100% / 3);
  line-height: 1em;
  font-size: 14px;
}
.bottomLink ul li a {
  display: inline-block;
  padding: 0;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  color: #ffffff;
}

#footer {
  background: #f8f8f1;
  margin-top: 0px;
}
#pageTop a {
  background: url(../images/bg-pageTop.svg) center top no-repeat;
  background-size: 112px 112px;
  width: 112px;
}
#pageTop span {
  background: url(../images/icon-06.svg) no-repeat;
  background-size: 64px 80px;
  background-position: center calc(100% - 3px);
  width: 112px;
  height: 128px !important;
  font-size: 21px;
  border-radius: 0;
}
#pageTop span span {
  padding-top: 15px !important;
  font-size: 20px;
  letter-spacing: -0.05em;
  color: #dc1a1f;
}
#pageTop span span:before {
  border-top: 3px solid #dc1a1f;
  border-right: 3px solid #dc1a1f;
  width: 9px !important;
  height: 9px !important;
  margin-left: -5px !important;
  top: 8px;
}
@media screen and (min-width: 980px) {
  #pageTop a:hover {
    opacity: 0.8;
  }
  #pageTop a:hover span {
    background-color: transparent;
  }
  #pageTop a:hover span span {
  color: #dc1a1f;
  }
  #pageTop a:hover span span:before {
    border-color: #dc1a1f;
  }
}
.animation01 {
  position: relative;
  display: block;
  animation: move_fuwa_01 1s ease-in-out infinite alternate;
}

@keyframes move_fuwa_01 {
  0% {
      transform: scale(105%);
  }

  100% {
      transform: scale(95%)
  }
}
@keyframes move_fuwa_02 {
  0% {
      transform: scale(105%);
  }

  100% {
      transform: scale(95%)
  }
}