@charset "UTF-8";
@import url("../css/default.css");
/* --------------------------------------------------------------
   共通
-------------------------------------------------------------- */
body {
  width: 100%;
  color: #0D232E;
  font-size: 0;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  body {
    min-width: 320px;
  }
}

.wrapper {
  overflow: hidden;
}

.container {
  width: 10.74rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .container {
    width: 3.46rem;
  }
}

.container_s {
  width: 9.2rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .container_s {
    width: 3.46rem;
  }
}

a {
  color: #0D232E;
}

img {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .pconly {
    display: none !important;
  }
}

@media screen and (min-width: 769px) {
  .sponly {
    display: none;
  }
}

.oswald {
  font-family: "Oswald", sans-serif;
}

/* header
--------------------------------------------------------------*/
.header {
  height: 1.1rem;
  padding: 0 0.33rem 0 0.38rem;
}
.header_logo {
  width: 2.2rem;
}
.header_info_text {
  margin-right: 0.3rem;
  font-size: 0.18rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.header_info_text .strong {
  margin-left: 0.12rem;
  color: #2B7094;
  font-size: 0.23rem;
  letter-spacing: 0.03em;
}
.header_info_btn a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 2.84rem;
  height: 0.8rem;
  padding: 0 0 0 0.58rem;
  background: #F5CE2E;
  border-radius: 0.4rem;
  transition: 0.3s;
  position: relative;
}
.header_info_btn a::before, .header_info_btn a::after {
  content: "";
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: absolute;
}
.header_info_btn a::before {
  width: 0.27rem;
  height: 0.27rem;
  background-image: url(../images/cmn/telbtn_icon.svg);
  top: calc(50% - 0.135rem);
  left: 0.18rem;
}
.header_info_btn a::after {
  width: 0.08rem;
  height: 0.2rem;
  background-image: url(../images/cmn/telbtn_arrow.svg);
  top: calc(50% - 0.1rem);
  right: 0.18rem;
}
.header_info_btn a:hover {
  transform: scale(1.1);
}
.header_info_btn a .num {
  margin: 0 0 0.07rem;
  font-size: 0.31rem;
  letter-spacing: 0.03em;
}
.header_info_btn a .time {
  font-size: 0.18rem;
}
.header_info_btn a .time .text {
  display: inline-block;
  padding: 0.02rem 0.05rem;
  margin-right: 0.08rem;
  font-size: 0.17rem;
  border: 1px solid #0D232E;
}
.header.thanks {
  height: auto;
  padding: 0.8rem 0 0;
}
.header.thanks .header_logo {
  margin: 0 auto 0.6rem;
}
@media screen and (max-width: 768px) {
  .header {
    height: 0.5rem;
    padding: 0.05rem 0.19rem;
  }
  .header_logo {
    width: 1.1rem;
  }
  .header_info_text {
    margin-right: 0.24rem;
    font-size: 0.09rem;
  }
  .header_info_text .strong {
    display: block;
    margin-left: 0;
    margin-top: 0.02rem;
    font-size: 0.115rem;
  }
  .header_info_btn a {
    width: 1.42rem;
    height: 0.4rem;
    padding: 0 0 0 0.3rem;
    border-radius: 0.2rem;
  }
  .header_info_btn a::before {
    width: 0.14rem;
    height: 0.14rem;
    top: calc(50% - 0.07rem);
    left: 0.1rem;
  }
  .header_info_btn a::after {
    width: 0.04rem;
    height: 0.1rem;
    right: 0.08rem;
    top: calc(50% - 0.05rem);
  }
  .header_info_btn a .num {
    margin: 0 0 0.03rem;
    font-size: 0.155rem;
  }
  .header_info_btn a .time {
    font-size: 0.09rem;
  }
  .header_info_btn a .time .text {
    padding: 0.01rem 0.025rem 0.015rem;
    margin-right: 0.04rem;
    font-size: 0.085rem;
  }
  .header.thanks {
    padding: 0.4rem 0 0;
  }
  .header.thanks .header_logo {
    margin: 0 auto 0.3rem;
  }
}

/* CTA
--------------------------------------------------------------*/
.cta {
  padding: 0.2rem 0 0.25rem;
  background: center/cover no-repeat url(../images/cta/bg_pc.jpg);
}
.cta_text {
  width: 4.97rem;
  margin: 0 auto;
}
.cta_btn a {
  display: block;
  width: 7.4rem;
  margin: -0.15rem auto 0;
  transition: 0.3s;
}
.cta_btn a:hover {
  transform: scale(1.1);
}
@media screen and (max-width: 768px) {
  .cta {
    padding: 0.6rem 0.25rem 0.22rem;
    background: center/cover no-repeat url(../images/cta/bg_sp.jpg);
  }
  .cta_text {
    width: 2.6rem;
  }
  .cta_btn a {
    width: 100%;
    margin: -0.075rem auto 0;
  }
}

/* 固定 CTA
--------------------------------------------------------------*/
.cta_fixed {
  width: 100%;
  height: 1.4rem;
  background: #2B7094;
  position: fixed;
  bottom: 0;
  transform: translateY(100%);
  opacity: 0;
  transition: 0.8s;
  z-index: 9999;
}
.cta_fixed a {
  display: block;
  transition: 0.3s;
}
.cta_fixed a:hover {
  transform: scale(1.1);
}
.cta_fixed_tel {
  width: 5.16rem;
  margin-right: 1.6rem;
}
.cta_fixed_mail {
  width: 5.56rem;
}
.cta_fixed.scrolled {
  opacity: 1;
  transform: translateY(0);
}
@media screen and (max-width: 768px) {
  .cta_fixed {
    height: 0.64rem;
  }
  .cta_fixed_tel {
    width: 1.68rem;
    margin-right: 0.05rem;
    margin-left: 0.05rem;
  }
  .cta_fixed_mail {
    width: 1.85rem;
  }
}

/* footer
--------------------------------------------------------------*/
.footer {
  margin: 0 0 1.4rem;
  padding: 0.05rem 0 0.08rem;
  text-align: center;
  background: #0D232E;
}
.footer_copyright {
  font-size: 0.16rem;
  color: #fff;
  font-weight: 400;
}
.footer.thanks {
  margin: 0;
}
@media screen and (max-width: 768px) {
  .footer {
    margin: 0 0 0.64rem;
    padding: 0.05rem 0 0.04rem;
  }
  .footer_copyright {
    font-size: 0.08rem;
  }
}

/* --------------------------------------------------------------
   Module_Element
-------------------------------------------------------------- */
/* Flex ---------- */
.mod_flex {
  display: flex;
  flex-wrap: wrap;
}
.mod_flex.align-center {
  align-items: center;
}

.mod_flex_center {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.mod_flex_center.align-center {
  align-items: center;
}

.mod_flex_between {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.mod_flex_between.align-center {
  align-items: center;
}
.mod_flex_between.col3::after, .mod_flex_between.col4::before, .mod_flex_between.col4::after {
  content: "";
  display: block;
  height: 0;
}
.mod_flex_between.col4::before {
  order: 1;
}

.mod_flex_around {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.mod_flex_around.align-center {
  align-items: center;
}

/* number ---------- */
.mod_num {
  counter-reset: number 0;
}
.mod_num .num {
  position: relative;
}
.mod_num .num::before {
  counter-increment: number 1;
  content: counter(number, decimal-leading-zero) "";
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 600;
  letter-spacing: 0;
  position: absolute;
}
.mod_num .num2 {
  position: relative;
}
.mod_num .num2::before {
  counter-increment: number 1;
  content: counter(number, decimal-leading-zero) "";
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  letter-spacing: 0.06em;
  position: absolute;
}

/* 共通ボタン ---------- */
/* 共通タイトル ---------- */
/* 共通フォントスタイル ---------- */
.ls100 {
  letter-spacing: 0.1em;
}

/* Main
--------------------------------------------------------------*/
/* Firstview ----------- */
.fv {
  padding: 0 0 0.25rem;
  background: center bottom/15.36rem auto no-repeat url(../images/fv/bg_pc.jpg);
}
.fv_note {
  padding: 0.15rem 0 0.2rem;
  font-size: 0.22rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
  background: #CDDFED;
}
.fv_note .deco {
  padding-left: 0.4rem;
  display: inline-block;
  position: relative;
}
.fv_note .deco::before {
  content: "";
  width: 0.26rem;
  height: 0.26rem;
  background: center/100% auto no-repeat url(../images/cmn/mark_icon.svg);
  position: absolute;
  top: 0.05rem;
  left: 0;
}
.fv_note .strong {
  font-size: 0.28rem;
  color: #2B7094;
}
.fv_wrap {
  position: relative;
}
.fv_text01 {
  width: 5.04rem;
  margin: 0.4rem 0 0;
}
.fv_catch {
  font-size: 0.75rem;
  color: #2B7094;
  font-weight: 900;
  line-height: 1.28;
  letter-spacing: -0.01em;
}
.fv_catch strong {
  font-size: 0.89rem;
  font-weight: 900;
  color: #00A7FF;
}
.fv_text02 {
  width: 5.1rem;
  margin: 0.2rem 0;
}
.fv_medal {
  width: 5.1rem;
}
.fv_img {
  width: 5.84rem;
  position: absolute;
  bottom: -0.25rem;
  right: -0.84rem;
}
@media screen and (max-width: 768px) {
  .fv {
    margin: 0.1rem 0 0;
    padding: 0 0.19rem;
    background: center bottom/auto 2.7rem no-repeat url(../images/fv/bg_sp.jpg);
    position: relative;
  }
  .fv::before {
    content: "";
    width: 2.03rem;
    height: 1.1rem;
    background: center/100% auto no-repeat url(../images/fv/img2_sp.png);
    position: absolute;
    left: 0;
    bottom: -2px;
    z-index: 3;
  }
  .fv_note {
    padding: 0.075rem 0 0.1rem;
    font-size: 0.11rem;
    text-align: left;
  }
  .fv_note .deco {
    padding-left: 0.37rem;
  }
  .fv_note .deco::before {
    width: 0.13rem;
    height: 0.13rem;
    top: 0.02rem;
    left: 0.19rem;
  }
  .fv_note .strong {
    font-size: 0.14rem;
  }
  .fv_text01 {
    width: 1.5rem;
    margin: 0.23rem 0 0.05rem;
  }
  .fv_catch {
    font-size: 0.285rem;
  }
  .fv_catch strong {
    font-size: 0.34rem;
  }
  .fv_text02 {
    width: 1.9rem;
    margin: 0.18rem 0 0;
  }
  .fv_medal {
    width: 100%;
    margin: -0.25rem 0 0;
    position: relative;
    bottom: -0.6rem;
    z-index: 5;
  }
  .fv_img {
    width: 1.68rem;
    bottom: -2px;
    right: -0.08rem;
  }
}

/* バナー ----------- */
.bnr {
  padding: 0.2rem 0;
  background: #CDDFED;
}
.bnr_bg {
  height: 2.73rem;
  background: center/100% auto no-repeat url(../images/bnr/bg_pc.png);
  position: relative;
}
.bnr_catch {
  font-size: 0.46rem;
  color: #2B7094;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.06em;
  position: absolute;
  top: 1.1rem;
  left: 4.3rem;
}
.bnr_catch .small {
  font-size: 0.36rem;
}
.bnr_catch .strong {
  color: #00A7FF;
}
@media screen and (max-width: 768px) {
  .bnr {
    padding: 0.1rem 0;
  }
  .bnr_bg {
    width: 3.66rem;
    height: 1.43rem;
    background: center/100% auto no-repeat url(../images/bnr/bg_sp.png);
  }
  .bnr_catch {
    font-size: 0.215rem;
    line-height: 1.2;
    top: 0.55rem;
    left: 1.5rem;
  }
  .bnr_catch .small {
    font-size: 0.17rem;
  }
}

/* 時間と労力が必要 ----------- */
.need {
  height: 9.16rem;
  padding: 0.7rem 0 0;
  background: center/cover no-repeat url(../images/need/bg_pc.jpg);
}
.need_title {
  padding: 0.7rem 0 0;
  margin: 0 0 0.5rem;
  font-size: 0.3rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  letter-spacing: 0.06em;
  background: center top/0.6rem auto no-repeat url(../images/cmn/mark_icon.svg);
}
.need_title .mark {
  font-size: 0.35rem;
  color: #00A7FF;
}
.need_lists {
  position: relative;
}
.need_lists_item {
  padding: 0.38rem 0 0 0.55rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% auto;
  position: absolute;
}
.need_lists_item .text {
  font-size: 0.23rem;
  line-height: 1.4;
  letter-spacing: 0.03em;
}
.need_lists_item .text .mark {
  color: #2B7094;
  font-weight: 700;
}
.need_lists_item.item1 {
  width: 3.43rem;
  height: 1rem;
  background-image: url(../images/need/item02_bg@2x.png);
  top: 0.6rem;
  left: 0.65rem;
}
.need_lists_item.item2 {
  width: 4.3rem;
  height: 1.21rem;
  background-image: url(../images/need/item02_bg@2x.png);
  left: 1.5rem;
  top: 1.6rem;
}
.need_lists_item.item3 {
  width: 3.99rem;
  height: 1.21rem;
  background-image: url(../images/need/item03_bg@2x.png);
  left: 0.65rem;
  top: 2.85rem;
}
.need_lists_item.item4 {
  width: 3.41rem;
  height: 1.21rem;
  background-image: url(../images/need/item04_bg@2x.png);
  left: 1.5rem;
  top: 4.1rem;
}
@media screen and (max-width: 768px) {
  .need {
    height: 4.42rem;
    padding: 0.18rem 0 0;
    background: center/cover no-repeat url(../images/need/bg_sp.jpg);
  }
  .need_title {
    padding: 0.35rem 0 0;
    margin: 0 0 0.1rem;
    font-size: 0.15rem;
    background-size: 0.3rem auto;
  }
  .need_title .mark {
    font-size: 0.175rem;
  }
  .need_lists_item {
    padding: 0.2rem 0 0 0.27rem;
  }
  .need_lists_item .text {
    font-size: 0.115rem;
  }
  .need_lists_item.item1, .need_lists_item.item2, .need_lists_item.item3, .need_lists_item.item4 {
    left: -0.1rem;
  }
  .need_lists_item.item1 {
    width: 1.72rem;
    height: 0.5rem;
    top: 0.3rem;
    background-image: url(../images/need/item02_bg.png);
  }
  .need_lists_item.item2 {
    width: 2.15rem;
    height: 0.61rem;
    background-image: url(../images/need/item02_bg.png);
    top: 0.8rem;
  }
  .need_lists_item.item3 {
    width: 2rem;
    height: 0.61rem;
    background-image: url(../images/need/item03_bg.png);
    top: 1.43rem;
  }
  .need_lists_item.item4 {
    width: 1.71rem;
    height: 0.61rem;
    background-image: url(../images/need/item04_bg.png);
    top: 2.06rem;
  }
}

/* その悩み ----------- */
.worry {
  background: #2B7094;
}
.worry_wrap {
  padding: 0.9rem 0 0.75rem;
  position: relative;
}
.worry_balloon {
  width: 2.47rem;
  position: absolute;
  top: -0.28rem;
  left: -0.4rem;
}
.worry_title {
  margin: 0 0 0.25rem;
  font-size: 0.37rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.54;
  letter-spacing: 0.03em;
}
.worry_title .strong,
.worry_title .deco {
  display: inline-block;
}
.worry_title .strong {
  font-size: 0.57rem;
  color: #FFE990;
}
.worry_title .deco {
  width: 0.41rem;
  margin: 0 0.05rem;
  vertical-align: 0.07rem;
}
.worry_desc {
  font-size: 0.24rem;
  color: #fff;
  letter-spacing: 0.06em;
}
.worry_img {
  width: 3.2rem;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 768px) {
  .worry_wrap {
    padding: 0.33rem 0.19rem 0.25rem;
  }
  .worry_balloon {
    width: 1.24rem;
    top: -0.17rem;
    left: 0;
  }
  .worry_title, .worry_desc {
    position: relative;
    z-index: 5;
  }
  .worry_title {
    margin: 0 0 0.13rem;
    font-size: 0.185rem;
  }
  .worry_title .strong {
    font-size: 0.285rem;
  }
  .worry_title .deco {
    width: 0.205rem;
    margin: 0 0.025rem;
    vertical-align: 0.035rem;
  }
  .worry_desc {
    font-size: 0.115rem;
    line-height: 1.56;
  }
  .worry_img {
    width: 2.15rem;
    right: -0.19rem;
    z-index: 1;
  }
}

/* サービス内容 ----------- */
.service {
  padding: 0.6rem 0 0.3rem;
  background: center/cover no-repeat url(../images/service/bg_pc.jpg);
}
.service_title {
  padding: 1.1rem 0 0;
  margin: 0 0 0.55rem;
  font-size: 0.34rem;
  font-weight: 700;
  line-height: 1.65;
  letter-spacing: 0.06em;
  text-align: center;
  background: center top/1.16rem auto no-repeat url(../images/service/deco.svg);
}
.service_title .small {
  font-size: 0.28rem;
}
.service_title .mark {
  font-size: 0.42rem;
  color: #00A7FF;
  position: relative;
}
.service_title .mark::before {
  content: "";
  width: 0.08rem;
  height: 0.08rem;
  border-radius: 50%;
  background: #00A7FF;
  position: absolute;
  top: 0;
  left: calc(50% - 0.04rem);
}
.service_lists_item {
  width: 5.54rem;
  margin: 0 0.55rem 0.7rem;
  border: 0.03rem solid #2B7094;
  background: #fff;
  box-shadow: 0 0 0.25rem rgba(43, 112, 148, 0.35);
  position: relative;
}
.service_lists_item_title {
  height: 1.26rem;
  padding: 0.2rem 0 0 1.6rem;
  font-size: 0.28rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #2B7094;
  line-height: 1.4;
  background: #E2EBF2;
}
.service_lists_item_title::before {
  font-size: 0.96rem;
  top: -0.1rem;
  left: 0.45rem;
}
.service_lists_item_title .small {
  font-size: 0.18rem;
}
.service_lists_item_title .small2 {
  font-size: 0.23rem;
}
.service_lists_item_title .small3 {
  font-size: 0.25rem;
}
.service_lists_item_title .strong {
  color: #00A7FF;
}
.service_lists_item .txt_bg {
  padding: 0.25rem 0 0.2rem 0.3rem;
}
.service_lists_item_desc_area {
  width: 3rem;
}
.service_lists_item_desc {
  font-size: 0.195rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 2;
}
.service_lists_item_desc .mark {
  color: #2B7094;
  font-weight: 700;
  background: rgba(255, 233, 144, 0.45);
  letter-spacing: 0.02em;
}
.service_lists_item_pic {
  width: 1.69rem;
  margin: 0.08rem 0 0 0.25rem;
}
.service_lists_item.item2 .txt_bg {
  padding: 0.27rem 0 0 0.3rem;
  position: relative;
}
.service_lists_item.item2 .service_lists_item_desc {
  width: auto;
  font-size: 0.17rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  position: absolute;
  top: 0.62rem;
  left: 3.2rem;
  z-index: 10;
}
.service_lists_item.item2 .service_lists_item_desc .mark2 {
  color: #FFE990;
}
.service_lists_item.item2 .service_lists_item_img {
  width: 5.24rem;
  position: relative;
  bottom: 0;
  right: 5px;
}
.service_lists_item.item3 .service_lists_item_desc.add {
  margin-right: -0.2rem;
}
.service_lists_item.item3 .service_lists_item_img {
  width: 1.73rem;
  margin: 0.13rem 0 0 0.1rem;
}
.service_lists_item.item4 .service_lists_item_img {
  width: 2.63rem;
  position: absolute;
  bottom: 0;
  right: -0.28rem;
}
@media screen and (max-width: 768px) {
  .service {
    padding: 0.2rem 0.19rem 0.12rem;
    background: center/cover no-repeat url(../images/service/bg_sp.jpg);
  }
  .service_title {
    padding: 0.55rem 0 0;
    margin: 0 0 0.15rem;
    font-size: 0.17rem;
    background-size: 0.58rem auto;
  }
  .service_title .small {
    font-size: 0.14rem;
  }
  .service_title .mark {
    font-size: 0.21rem;
  }
  .service_title .mark::before {
    width: 0.04rem;
    height: 0.04rem;
    left: calc(50% - 0.02rem);
  }
  .service_lists_item {
    width: 100%;
    margin: 0 0 0.23rem;
    border: 2px solid #2B7094;
    box-shadow: 0 0 0.125rem rgba(43, 112, 148, 0.35);
  }
  .service_lists_item_title {
    height: 0.79rem;
    padding: 0.12rem 0 0 0.8rem;
    font-size: 0.18rem;
  }
  .service_lists_item_title::before {
    font-size: 0.6rem;
    top: -0.05rem;
    left: 0.17rem;
  }
  .service_lists_item_title .small {
    font-size: 0.125rem;
  }
  .service_lists_item_title .small2 {
    font-size: 0.155rem;
  }
  .service_lists_item_title .small3 {
    font-size: 0.17rem;
  }
  .service_lists_item .txt_bg {
    padding: 0.2rem 0 0.2rem 0.19rem;
  }
  .service_lists_item_desc_area {
    width: 1.85rem;
  }
  .service_lists_item_desc {
    font-size: 0.12rem;
    line-height: 1.6;
  }
  .service_lists_item_desc + .service_lists_item_desc {
    margin-top: 0.1rem;
  }
  .service_lists_item_pic {
    width: 1.05rem;
    margin: 0 0 0 0.17rem;
  }
  .service_lists_item.item2 .txt_bg {
    padding: 0.08rem 0 0 0.17rem;
  }
  .service_lists_item.item2 .service_lists_item_desc {
    font-size: 0.11rem;
    top: 0.275rem;
    left: 1.9rem;
  }
  .service_lists_item.item2 .service_lists_item_img {
    width: 100%;
    right: 2px;
  }
  .service_lists_item.item3 .service_lists_item_desc.add {
    margin-right: -0.1rem;
  }
  .service_lists_item.item3 .service_lists_item_img {
    width: 1.08rem;
    margin: 0 0 0 0.1rem;
  }
  .service_lists_item.item4 .service_lists_item_img {
    width: 1.68rem;
    right: -0.19rem;
  }
}

/* お客様の声 ----------- */
.voice {
  padding: 0.7rem 0 1.45rem;
  background: center/cover no-repeat url(../images/voice/bg_pc.jpg);
}
.voice_title {
  margin: 0 0 0.5rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.06em;
}
.voice_title .small {
  font-size: 0.3rem;
}
.voice_title .main {
  display: inline-block;
  margin: 0.25rem 0 0;
  color: #15A7FF;
  font-size: 0.64rem;
}
.voice .flickity-prev-next-button.previous {
  left: 1.5rem;
}
.voice .flickity-prev-next-button.next {
  right: 1.5rem;
}
.voice .flickity-button {
  background: none;
}
.voice .flickity-button-icon {
  fill: #4DA4F8;
}
.voice .flickity-page-dots {
  bottom: -0.35rem;
}
.voice .flickity-page-dots .dot {
  width: 0.12rem;
  height: 0.12rem;
  background: #fff;
  opacity: 1;
}
.voice .flickity-page-dots .dot.is-selected {
  background: #15A7FF;
}
.voice_slide_item {
  position: relative;
  padding: 0.9rem 0.35rem 0;
}
.voice_wrap {
  display: flex;
  justify-content: space-between;
  padding: 0.45rem 0.35rem 0.3rem 0.37rem;
  background: #fff;
  height: 6.2rem;
}
.voice_pic {
  width: 5rem;
  position: relative;
}
.voice_pic_medal {
  width: 1.7rem;
  height: 1.7rem;
  position: absolute;
  top: -0.9rem;
  left: -0.55rem;
  z-index: 5;
}
.voice_pic .text {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 0.88rem;
  margin: 0.1rem 0 0;
  padding: 0.05rem 0 0rem;
  font-size: 0.22rem;
  color: #fff;
  letter-spacing: 0.06em;
  background: center/100% 100% no-repeat url(../images/voice/balloon_pc.png);
  text-align: center;
}
.voice_pic .text .mark {
  color: #FFE990;
}
.voice_pic .text .inner::before {
  content: "";
  display: inline-block;
  background: url(../images/voice/deco.png) no-repeat center top;
  background-size: 100% 100%;
  width: 0.18rem;
  height: 0.1rem;
  position: relative;
  left: 0;
  top: -1em;
}
.voice_text {
  width: 4.6rem;
  font-weight: 400;
}
.voice_text .desc {
  font-size: 0.21rem;
  letter-spacing: 0.06em;
  line-height: 1.9;
}
.voice_text .desc .mark {
  font-weight: 700;
  color: #2B7094;
  background: rgba(255, 233, 144, 0.45);
}
.voice_text .desc + .desc {
  margin: 0.1rem 0 0;
}
.voice_text .sign {
  display: flex;
  margin: 0.3rem 0 0;
  font-size: 0.16rem;
  line-height: 1.7;
}
@media screen and (max-width: 768px) {
  .voice {
    padding: 0.35rem 0 0.5rem;
    background: center/cover no-repeat url(../images/voice/bg_sp.jpg);
  }
  .voice_title {
    margin: 0 0 0.25rem;
  }
  .voice_title .small {
    font-size: 0.15rem;
  }
  .voice_title .main {
    margin: 0.12rem 0 0;
    font-size: 0.32rem;
  }
  .voice .flickity-prev-next-button.previous {
    left: 0;
  }
  .voice .flickity-prev-next-button.next {
    right: 0;
  }
  .voice .flickity-page-dots {
    bottom: -0.2rem;
  }
  .voice .flickity-page-dots .dot {
    width: 0.06rem;
    height: 0.06rem;
    margin: 0 0.03rem;
  }
  .voice_slide_item {
    position: relative;
    padding: 0.24rem 0.1rem 0;
  }
  .voice_wrap {
    display: block;
    padding: 0.22rem 0.15rem 0.2rem;
    height: 6.3rem;
  }
  .voice_wrap.container {
    width: 3.08rem;
  }
  .voice_pic {
    width: 100%;
  }
  .voice_pic_medal {
    width: 0.84rem;
    height: 0.84rem;
    top: -0.44rem;
    left: -0.18rem;
  }
  .voice_pic .text {
    height: 0.5rem;
    margin: 0.14rem 0 0.1rem;
    padding: 0 0 0.05rem;
    font-size: 0.12rem;
    background: center/100% auto no-repeat url(../images/voice/balloon_sp.png);
    text-align: center;
  }
  .voice_pic .text .inner::before {
    width: 0.06rem;
    height: 0.05rem;
    left: 0;
    top: -0.6em;
  }
  .voice_text {
    width: 100%;
  }
  .voice_text .desc {
    font-size: 0.125rem;
    line-height: 2;
  }
  .voice_text .desc + .desc {
    margin: 0.15rem 0 0;
  }
  .voice_text .sign {
    margin: 0.2rem 0 0;
    font-size: 0.1rem;
    line-height: 1.55;
  }
}

/* 価格 ----------- */
.price {
  padding: 0.95rem 0 0;
}
.price_title {
  font-size: 0.38rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
.price_title .small {
  font-size: 0.31rem;
}
.price_title .main {
  font-size: 0.47rem;
  color: #00A7FF;
}
.price .data1 {
  margin: 0.5rem 0 1.05rem;
}
.price_catch {
  padding: 0.5rem 0 0.45rem;
  background: center/cover no-repeat url(../images/price/bg1_pc.jpg);
}
.price_catch .text {
  padding: 0 0 0 2.3rem;
  font-size: 0.51rem;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.33;
  position: relative;
}
.price_catch .text::before {
  content: "";
  width: 1.46rem;
  height: 1.42rem;
  background: center/100% auto no-repeat url(../images/price/medal_pc.png);
  position: absolute;
  top: 0;
  left: 0.45rem;
}
.price_catch .text .main {
  color: #FFE990;
}
.price_wrap {
  padding: 1.05rem 0;
}
.price_wrap .title {
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
.price_wrap .mark {
  color: #15A7FF;
}
.price_wrap_top {
  margin: 0 0 0.95rem;
}
.price_wrap_top .title {
  width: 5.25rem;
  padding: 0.45rem 0 0;
  font-size: 0.44rem;
  line-height: 1.4;
}
.price_wrap_top .title .small {
  font-size: 0.34rem;
}
.price_wrap_top .balloon {
  width: 5.37rem;
}
.price_wrap_bottom .title {
  margin: 0 0 0.4rem;
  font-size: 0.47rem;
  line-height: 1.4;
}
.price_wrap_bottom .title .small {
  font-size: 0.28rem;
}
.price_wrap_bottom .data2 {
  width: 6.92rem;
  margin: 0 auto;
}
.price_last {
  padding: 1.05rem 0 1rem;
  background: center/cover no-repeat url(../images/price/bg2_pc.jpg);
}
.price_last .tit {
  margin: 0 0 0.55rem;
  color: #fff;
  font-size: 0.29rem;
  font-weight: 700;
  line-height: 1.38;
  letter-spacing: 0.06em;
  position: relative;
}
.price_last .tit::before {
  content: "";
  width: 8.2rem;
  height: 1.27rem;
  background: #15A7FF;
  position: absolute;
  left: calc((100% - 10.74rem) / 2 - 2.3rem);
  z-index: 3;
}
.price_last .tit .bg {
  display: inline-block;
  padding: 0.23rem 0 0;
  position: relative;
  z-index: 5;
}
.price_last .tit .mark {
  color: #FFE990;
}
.price_last .desc {
  width: 5.37rem;
  font-size: 0.21rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 2.38;
}
.price_last .desc .mark {
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .price {
    padding: 0.3rem 0 0;
  }
  .price_title {
    font-size: 0.19rem;
  }
  .price_title .small {
    font-size: 0.155rem;
  }
  .price_title .main {
    font-size: 0.235rem;
  }
  .price .data1 {
    margin: 0.2rem 0 0.32rem;
  }
  .price_catch {
    padding: 0.28rem 0 0.26rem;
    background: center/cover no-repeat url(../images/price/bg1_sp.jpg);
  }
  .price_catch .text {
    padding: 0 0 0 0.78rem;
    margin: 0 -0.1rem;
    font-size: 0.215rem;
  }
  .price_catch .text::before {
    width: 0.67rem;
    height: 0.65rem;
    background: center/100% auto no-repeat url(../images/price/medal_sp.png);
    top: 0;
    left: 0.05rem;
  }
  .price_wrap {
    padding: 0.3rem 0 0.58rem;
  }
  .price_wrap_top {
    margin: 0 0 0.53rem;
  }
  .price_wrap_top .title {
    width: 100%;
    padding: 0;
    font-size: 0.22rem;
    text-align: center;
  }
  .price_wrap_top .title .small {
    font-size: 0.17rem;
  }
  .price_wrap_top .balloon {
    width: 3.08rem;
    margin: 0.21rem auto 0;
  }
  .price_wrap_bottom .title {
    margin: 0 0 0.2rem;
    font-size: 0.235rem;
  }
  .price_wrap_bottom .title .small {
    font-size: 0.14rem;
  }
  .price_wrap_bottom .data2 {
    width: 100%;
  }
  .price_last {
    padding: 0.32rem 0 0.27rem;
    background: center/cover no-repeat url(../images/price/bg2_sp.jpg);
  }
  .price_last .tit {
    margin: 0 0 0.27rem;
    font-size: 0.14rem;
  }
  .price_last .tit::before {
    width: 3rem;
    height: 0.63rem;
    left: -0.2rem;
  }
  .price_last .tit .bg {
    padding: 0.12rem 0 0;
  }
  .price_last .desc {
    width: 2.41rem;
    font-size: 0.125rem;
    line-height: 2;
  }
}

/* お約束します ----------- */
.promise {
  padding: 1.05rem 0;
  background: center/cover no-repeat url(../images/promise/bg_pc.jpg);
}
.promise_title {
  height: 1.94rem;
  padding: 0.4rem 0 0;
  color: #fff;
  font-size: 0.4rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
  line-height: 1.45;
  background: #2B7094;
}
.promise_title .mark {
  color: #FFE990;
}
.promise_wrap {
  padding: 0.5rem 0;
  background: #fff;
  position: relative;
}
.promise_text {
  width: 6.31rem;
}
.promise_text .desc {
  font-size: 0.21rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 2.38;
}
.promise_text .desc .mark {
  font-weight: 500;
}
.promise_text .desc + .desc {
  margin: 0.1rem 0 0;
}
.promise_text .sign {
  margin: 0.3rem 0 0;
  font-size: 0.2rem;
  font-weight: 400;
  color: #000;
  line-height: 1.55;
  text-align: right;
}
.promise_pic {
  width: 3.15rem;
  position: absolute;
  bottom: 0;
  right: 0.4rem;
}
@media screen and (max-width: 768px) {
  .promise {
    padding: 0.37rem 0 0.25rem;
    background: center/cover no-repeat url(../images/promise/bg_sp.jpg);
  }
  .promise_title {
    height: 1.42rem;
    padding: 0.25rem 0 0;
    font-size: 0.21rem;
    line-height: 1.43;
  }
  .promise_wrap {
    padding: 0.18rem 0.19rem 0.15rem;
  }
  .promise_text {
    width: 100%;
  }
  .promise_text .desc {
    font-size: 0.125rem;
    line-height: 2;
  }
  .promise_text .desc + .desc {
    margin: 0.1rem 0 0;
  }
  .promise_text .desc.add {
    width: 2.12rem;
  }
  .promise_text .sign {
    margin: 0.15rem 0 0;
    font-size: 0.1rem;
  }
  .promise_pic {
    width: 1.43rem;
    right: -0.27rem;
  }
}

/* プレゼント ----------- */
.present {
  padding: 0.6rem 0;
  background: center/cover no-repeat url(../images/present/bg_pc.jpg);
}
.present_title {
  margin: 0 0 0.1rem;
  font-size: 0.49rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.06em;
  line-height: 1.33;
  text-align: center;
}
.present_title .mark {
  color: #FFE990;
}
.present_bnr {
  height: 2.8rem;
  background: center/cover no-repeat url(../images/present/bnr_pc.png);
  position: relative;
}
.present_bnr .text {
  font-size: 0.43rem;
  color: #2B7094;
  font-weight: 700;
  letter-spacing: 0.06em;
  position: absolute;
  top: 1.57rem;
  left: 4.38rem;
  z-index: 5;
}
.present_bnr .text .mark {
  color: #00A7FF;
}
.present_desc {
  color: #fff;
  font-size: 0.25rem;
  letter-spacing: 0.06em;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .present {
    padding: 0.3rem 0;
    background: center/cover no-repeat url(../images/present/bg_sp.jpg);
  }
  .present_title {
    margin: 0 0 0.05rem;
    font-size: 0.245rem;
  }
  .present_bnr {
    width: 3.68rem;
    height: 1.45rem;
    background: center/cover no-repeat url(../images/present/bnr_sp.png);
  }
  .present_bnr .text {
    font-size: 0.215rem;
    top: 0.8rem;
    left: 1.53rem;
  }
  .present_desc {
    font-size: 0.125rem;
  }
}

/* 取得するまでの流れ ----------- */
.flow_first {
  padding: 1.2rem 0 0.65rem;
  background: center/cover no-repeat url(../images/flow/bg_pc.jpg);
}
.flow_first_title {
  margin: 0 0 1.15rem;
  font-size: 0.41rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
.flow_first_title .main {
  font-size: 0.49rem;
  color: #15A7FF;
}
.flow_first_lists .mark {
  color: #2B7094;
}
.flow_first_lists_item {
  margin: 0 0 1.15rem;
  border: 2px solid #2B7094;
  background: #fff;
}
.flow_first_lists_item::before {
  color: #fff;
  font-size: 0.37rem;
  left: calc(50% - 0.215rem);
  top: -0.45rem;
  z-index: 10;
}
.flow_first_lists_item::after {
  content: "";
  width: 1.62rem;
  height: 0.72rem;
  background: center/100% auto no-repeat url(../images/flow/step_bg.svg);
  position: absolute;
  left: calc(50% - 0.81rem);
  top: -0.72rem;
}
.flow_first_lists_title, .flow_first_lists_desc {
  letter-spacing: 0.06em;
}
.flow_first_lists_title {
  display: flex;
  align-items: center;
  height: 1.08rem;
  padding: 0 0 0 0.35rem;
  font-size: 0.35rem;
  font-weight: 700;
  background-color: #E2EBF2;
  background-repeat: no-repeat;
  background-position: center left 0.35rem;
  border-bottom: 1px dashed #2B7094;
  position: relative;
}
.flow_first_lists_desc {
  padding: 0.25rem 0 0 0.35rem;
  font-size: 0.23rem;
  line-height: 1.87;
}
.flow_first_lists_desc .mark {
  font-weight: 700;
}
.flow_first_lists_pic {
  width: 3.87rem;
  position: absolute;
  bottom: 0;
  right: 0;
}
.flow_first_lists_item.item1 .flow_first_lists_title, .flow_first_lists_item.item2 .flow_first_lists_title, .flow_first_lists_item.item5 .flow_first_lists_title {
  height: 1.27rem;
}

.flow_first_lists_item.item1 {
  height: 2.71rem;
}
.flow_first_lists_item.item1 .flow_first_lists_title {
  padding: 0 0 0 1.3rem;
  background-size: 0.67rem 0.76rem;
  background-image: url(../images/flow/step1_icon.svg);
}
.flow_first_lists_item.item1 .flow_first_lists_pic {
  width: 3.85rem;
}
.flow_first_lists_item.item2 {
  height: 2.71rem;
}
.flow_first_lists_item.item2 .flow_first_lists_title {
  padding: 0 0 0 1.4rem;
  background-size: 0.79rem 0.89rem;
  background-image: url(../images/flow/step2_icon.svg);
}
.flow_first_lists_item.item3 {
  height: 2.54rem;
}
.flow_first_lists_item.item4 {
  height: 2.93rem;
}
.flow_first_lists_item.item5 {
  height: 2.7rem;
}
.flow_first_lists_item.item5 .flow_first_lists_title {
  background-size: 0.79rem 0.89rem;
  background-image: url(../images/flow/step5_icon.svg);
}
.flow_last {
  background: #2B7094;
}
.flow_last .balloon {
  width: 5.42rem;
  height: 1.38rem;
  margin: 0 auto -0.2rem;
  text-align: center;
  background: center/100% auto no-repeat url(../images/flow/balloon_pc.png);
  position: relative;
  top: -0.65rem;
}
.flow_last .balloon .text {
  display: inline-block;
  padding: 0.35rem 0 0;
  color: #000;
  font-size: 0.36rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
.flow_last .balloon .text .mark {
  color: #2B7094;
}
.flow_last .balloon .text .mark .num {
  font-size: 0.47rem;
}
.flow_last_wrap {
  padding: 0 0 0.7rem;
  position: relative;
}
.flow_last_title, .flow_last_desc {
  color: #fff;
  letter-spacing: 0.06em;
}
.flow_last_title {
  margin: 0 0 0.5rem;
  font-size: 0.47rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}
.flow_last_title .mark {
  color: #FFE990;
  font-size: 0.59rem;
  position: relative;
}
.flow_last_title .mark::before {
  content: "";
  width: 0.1rem;
  height: 0.1rem;
  border-radius: 50%;
  background: #FFE990;
  position: absolute;
  top: 0;
  left: calc(50% - 0.05rem);
}
.flow_last_title .small {
  font-size: 0.4rem;
}
.flow_last_desc {
  margin: 0 0 0.25rem;
  font-size: 0.23rem;
  font-weight: 400;
  line-height: 1.87;
}
.flow_last_desc .mark {
  font-weight: 500;
}
.flow_last_img {
  width: 3.14rem;
  position: absolute;
  bottom: 0;
  right: -0.2rem;
}
@media screen and (max-width: 768px) {
  .flow_first {
    padding: 0.37rem 0 0.1rem;
    background: center/cover no-repeat url(../images/flow/bg_sp.jpg);
  }
  .flow_first_title {
    margin: 0 0 0.6rem;
    font-size: 0.235rem;
    line-height: 1.18;
  }
  .flow_first_title .main {
    font-size: 0.325rem;
  }
  .flow_first_lists_item {
    margin: 0 0 0.6rem;
    border-width: 1px;
  }
  .flow_first_lists_item::before {
    font-size: 0.185rem;
    left: calc(50% - 0.1125rem);
    top: -0.21rem;
  }
  .flow_first_lists_item::after {
    width: 0.81rem;
    height: 0.36rem;
    left: calc(50% - 0.405rem);
    top: -0.36rem;
  }
  .flow_first_lists_title {
    height: 0.54rem;
    padding: 0 0 0 0.19rem;
    font-size: 0.175rem;
    background-position: center left 0.19rem;
  }
  .flow_first_lists_desc {
    width: 2.26rem;
    padding: 0.08rem 0 0 0.1rem;
    font-size: 0.125rem;
    line-height: 1.8;
  }
  .flow_first_lists_pic {
    width: 1.18rem;
  }
  .flow_first_lists_item.item1 .flow_first_lists_title, .flow_first_lists_item.item2 .flow_first_lists_title, .flow_first_lists_item.item5 .flow_first_lists_title {
    height: 0.71rem;
  }
  .flow_first_lists_item.item1 {
    height: 1.61rem;
  }
  .flow_first_lists_item.item1 .flow_first_lists_title {
    display: block;
    padding: 0.15rem 0 0 0.73rem;
    line-height: 1.3;
    background-size: 0.4rem 0.45rem;
  }
  .flow_first_lists_item.item1 .flow_first_lists_pic {
    width: 1.18rem;
  }
  .flow_first_lists_item.item2 {
    height: 1.6rem;
  }
  .flow_first_lists_item.item2 .flow_first_lists_title {
    padding: 0 0 0 0.73rem;
    background-size: 0.4rem 0.45rem;
  }
  .flow_first_lists_item.item3 {
    height: 1.67rem;
  }
  .flow_first_lists_item.item4 {
    height: 1.63rem;
  }
  .flow_first_lists_item.item5 {
    height: 1.38rem;
  }
  .flow_first_lists_item.item5 .flow_first_lists_title {
    background-size: 0.4rem 0.45rem;
  }
  .flow_first_lists_item.item5 .flow_first_lists_desc {
    width: 2.2rem;
  }
  .flow_first_lists_item.item5 .flow_first_lists_pic {
    width: 1.4rem;
    right: -0.15rem;
  }
  .flow_last {
    background: #2B7094;
  }
  .flow_last .balloon {
    width: 2.71rem;
    height: 0.69rem;
    margin: 0 auto -0.1rem;
    background: center/100% auto no-repeat url(../images/flow/balloon_sp.png);
    top: -0.33rem;
  }
  .flow_last .balloon .text {
    padding: 0.18rem 0 0;
    font-size: 0.18rem;
  }
  .flow_last .balloon .text .mark .num {
    font-size: 0.235rem;
  }
  .flow_last_wrap {
    padding: 0 0 0.5rem;
  }
  .flow_last_title {
    margin: 0 -0.1rem 0.25rem;
    font-size: 0.235rem;
  }
  .flow_last_title .mark {
    font-size: 0.295rem;
  }
  .flow_last_title .mark::before {
    width: 0.06rem;
    height: 0.06rem;
    left: calc(50% - 0.03rem);
  }
  .flow_last_title .small {
    font-size: 0.2rem;
  }
  .flow_last_desc {
    margin: 0;
    font-size: 0.125rem;
    line-height: 2;
    position: relative;
    z-index: 5;
  }
  .flow_last_desc.add {
    width: 2.14rem;
  }
  .flow_last_img {
    width: 2.15rem;
    z-index: 2;
  }
}

/* お問合せ ----------- */
/* form */
input,
textarea,
select {
  width: 100%;
  border: none;
  font-size: 0.25rem;
  letter-spacing: 0.06em;
  background-color: #fff;
  outline: none;
}

@media screen and (max-width: 768px) {
  input,
  textarea,
  select {
    font-size: 0.16rem;
  }
}
input::placeholder,
textarea::placeholder {
  color: #777;
  font-size: 0.24rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  input::placeholder,
  textarea::placeholder {
    font-size: 0.135rem;
  }
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #777;
  font-size: 0.24rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  input:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    font-size: 0.135rem;
  }
}

input::-ms-input-placeholder,
textarea::placeholder {
  color: #777;
  font-size: 0.24rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  input::-ms-input-placeholder,
  textarea::placeholder {
    font-size: 0.13rem;
  }
}

input {
  min-height: 0.75rem;
  padding: 0 0.23rem;
}

textarea {
  height: 1.8rem;
  padding: 0.3rem 0.23rem;
  position: relative;
  resize: none;
}

@media screen and (max-width: 768px) {
  input {
    min-height: 0.375rem;
    padding: 0 0.08rem;
  }
  textarea {
    height: 0.9rem;
    padding: 0.14rem 0.08rem;
  }
}
.contact {
  padding: 1.1rem 0;
}
.contact_info_text {
  display: flex;
  width: 6.08rem;
  margin: 0 auto;
}
.contact_info_btn {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 6.92rem;
  height: 1.96rem;
  margin: 0.2rem auto 0.35rem;
  padding: 0 0 0 1.4rem;
  background: #F5CE2E;
  border-radius: 0.9rem;
  transition: 0.3s;
  position: relative;
}
.contact_info_btn::before, .contact_info_btn::after {
  content: "";
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: absolute;
}
.contact_info_btn::before {
  width: 0.67rem;
  height: 0.67rem;
  background-image: url(../images/cmn/telbtn_icon.svg);
  top: calc(50% - 0.335rem);
  left: 0.45rem;
}
.contact_info_btn::after {
  width: 0.16rem;
  height: 0.4rem;
  background-image: url(../images/cmn/telbtn_arrow.svg);
  top: calc(50% - 0.1rem);
  right: 0.48rem;
}
.contact_info_btn:hover {
  transform: scale(1.1);
}
.contact_info_btn .num {
  margin: 0 0 0.2rem;
  font-size: 0.74rem;
  letter-spacing: 0.03em;
}
.contact_info_btn .time {
  font-size: 0.42rem;
}
.contact_info_btn .time .text {
  display: inline-block;
  padding: 0.08rem 0.2rem;
  margin-right: 0.2rem;
  font-size: 0.34rem;
  border: 1px solid #0D232E;
}
.contact_title {
  margin: 0 0 0.55rem;
  font-size: 0.53rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
.contact_title .small {
  display: block;
  font-size: 0.37rem;
}
.contact_wrap {
  padding: 0.8rem 0.78rem 0.6rem;
  background: #F0EFEF;
}
.contact_wrap_title {
  margin: 0 0 0.75rem;
  font-size: 0.42rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
.contact_wrap_title .pos {
  display: inline-block;
  padding: 0 0.6rem;
  position: relative;
}
.contact_wrap_title .pos .req {
  font-size: 0.14rem;
  position: absolute;
  right: 0;
  bottom: 0.03rem;
}
.contact_wrap .req {
  color: #f00;
  font-weight: 400;
  letter-spacing: 0;
}
.contact_wrap_lists dt,
.contact_wrap_lists dd {
  padding: 0 0 0.6rem;
  font-size: 0.25rem;
  letter-spacing: 0.06em;
}
.contact_wrap_lists dt {
  width: 3.8rem;
}
.contact_wrap_lists dt .req {
  font-size: 0.17rem;
  margin-left: 0.13rem;
}
.contact_wrap_lists dd {
  width: calc(100% - 3.8rem);
}
.contact_wrap_privacy {
  margin: 0.2rem 0 0;
}
.contact_wrap_privacy_title {
  margin: 0 0 0.3rem;
  font-size: 0.23rem;
  letter-spacing: 0.06em;
  text-align: center;
}
.contact_wrap_privacy .scroll_area {
  width: 7rem;
  height: 2.7rem;
  margin: 0 auto;
  padding: 0.3rem 0.2rem;
  background: #fff;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}
.contact_wrap_privacy .scroll_area::-webkit-scrollbar {
  width: 0.1rem;
}
.contact_wrap_privacy .scroll_area::-webkit-scrollbar-thumb {
  background: #b5b5b5;
  border-radius: 0.1rem;
}
.contact_wrap_privacy .scroll_area .stit,
.contact_wrap_privacy .scroll_area .desc {
  font-size: 0.2rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
}
.contact_wrap_privacy .scroll_area .stit {
  margin: 0 0 0.1rem;
}
.contact_wrap_privacy .scroll_area .stit + .stit {
  margin-top: 0.3rem;
}
.contact_wrap_privacy .scroll_area .desc {
  font-weight: 400;
  letter-spacing: 0.05em;
}
.contact_wrap_privacy .scroll_area .desc + .stit {
  margin-top: 0.3rem;
}
.contact_wrap_form_btn {
  display: flex;
  margin: 0.25rem auto 0;
}
.contact_wrap_form_btn input {
  width: 5.26rem;
  height: 1.3rem;
  margin: 0 auto;
  padding: 0;
  font-size: 0;
  background: center/100% auto no-repeat url(../images/contact/form_btn.svg);
  cursor: pointer;
  transition: 0.3s;
}
.contact_wrap_form_btn input:hover {
  transform: scale(1.1);
}
@media screen and (max-width: 768px) {
  .contact {
    padding: 0.39rem 0 0.32rem;
  }
  .contact_info_text {
    width: 3.04rem;
  }
  .contact_info_btn {
    width: 3.46rem;
    height: 0.98rem;
    margin: 0.1rem auto 0.175rem;
    padding: 0 0 0 0.7rem;
    border-radius: 0.45rem;
  }
  .contact_info_btn::before {
    width: 0.34rem;
    height: 0.34rem;
    top: calc(50% - 0.17rem);
    left: 0.19rem;
  }
  .contact_info_btn::after {
    width: 0.1rem;
    height: 0.2rem;
    right: 0.24rem;
  }
  .contact_info_btn .num {
    margin: 0 0 0.08rem;
    font-size: 0.37rem;
  }
  .contact_info_btn .time {
    font-size: 0.21rem;
  }
  .contact_info_btn .time .text {
    padding: 0.04rem 0.1rem;
    margin-right: 0.1rem;
    font-size: 0.185rem;
  }
  .contact_title {
    margin: 0 0 0.26rem;
    font-size: 0.265rem;
    line-height: 1.4;
  }
  .contact_title .small {
    font-size: 0.185rem;
  }
  .contact_wrap {
    padding: 0.38rem 0.33rem 0.2rem;
  }
  .contact_wrap_title {
    margin: 0 0 0.28rem;
    font-size: 0.21rem;
  }
  .contact_wrap_title .pos {
    padding: 0 0.25rem;
  }
  .contact_wrap_title .pos .req {
    font-size: 0.07rem;
    bottom: 0.01rem;
  }
  .contact_wrap_lists dt,
  .contact_wrap_lists dd {
    font-size: 0.135rem;
  }
  .contact_wrap_lists dt {
    width: 100%;
    padding: 0 0 0.05rem;
  }
  .contact_wrap_lists dt .req {
    font-size: 0.085rem;
    margin-left: 0.065rem;
  }
  .contact_wrap_lists dd {
    width: 100%;
    padding: 0 0 0.15rem;
  }
  .contact_wrap_privacy {
    margin: 0.1rem 0 0;
  }
  .contact_wrap_privacy_title {
    margin: 0 0 0.1rem;
    font-size: 0.13rem;
  }
  .contact_wrap_privacy .scroll_area {
    width: 100%;
    height: 1.5rem;
    padding: 0.15rem 0.1rem;
  }
  .contact_wrap_privacy .scroll_area::-webkit-scrollbar {
    width: 0.05rem;
  }
  .contact_wrap_privacy .scroll_area .stit,
  .contact_wrap_privacy .scroll_area .desc {
    font-size: 0.11rem;
  }
  .contact_wrap_privacy .scroll_area .stit + .stit {
    margin-top: 0.15rem;
  }
  .contact_wrap_privacy .scroll_area .desc + .stit {
    margin-top: 0.15rem;
  }
  .contact_wrap_form_btn {
    margin: 0.075rem auto 0;
  }
  .contact_wrap_form_btn input {
    width: 100%;
    height: 0.65rem;
  }
}

/* エラー　デフォルト ----------- */
.error {
  display: block;
  font-size: 0.22rem;
  color: #f00;
}
@media screen and (max-width: 768px) {
  .error {
    font-size: 0.14rem;
  }
}

/* thanks ----------- */
.thanks_cot {
  padding: 0 0 0.65rem;
  color: #1F1F1F;
  text-align: center;
}
.thanks_cot_logo {
  width: 1.98rem;
  margin: 0 auto 0.6rem;
}
.thanks_cot_desc {
  font-size: 0.23rem;
  line-height: 1.7;
  letter-spacing: 0.06em;
}
.thanks_cot_desc .mark {
  color: #2B7094;
  font-weight: 700;
}
.thanks_cot_desc.big {
  font-size: 0.25rem;
  line-height: 1.6;
}
.thanks_cot_wrap {
  margin: 0.5rem 0;
  padding: 0.37rem 0;
  background: #CDDFED;
}
.thanks_cot_url {
  width: 6.14rem;
  margin: 0.5rem auto 0.4rem;
  padding: 0.23rem 0 0.17rem;
  font-size: 0.25rem;
  letter-spacing: 0.1em;
  border: 2px solid #2B7094;
}
.thanks_cot_btn {
  width: 5.6rem;
  margin: 0.6rem auto 0;
}
.thanks_cot_btn a {
  -webkit-transition: opacity 0.3s;
  -moz-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.thanks_cot_btn a:hover {
  opacity: 0.6;
}
@media screen and (max-width: 768px) {
  .thanks_cot {
    padding: 0 0 0.3rem;
  }
  .thanks_cot_logo {
    width: 0.99rem;
    margin: 0 auto 0.3rem;
  }
  .thanks_cot_desc {
    font-size: 0.125rem;
    line-height: 1.6;
  }
  .thanks_cot_desc.big {
    font-size: 0.125rem;
  }
  .thanks_cot_wrap {
    margin: 0.3rem 0;
    padding: 0.15rem 0;
  }
  .thanks_cot_url {
    width: 100%;
    margin: 0.2rem auto;
    padding: 0.1rem 0 0.07rem;
    font-size: 0.125rem;
    border-width: 1px;
  }
  .thanks_cot_btn {
    width: 2.8rem;
    margin: 0.3rem auto 0;
  }
}

/* 事務所概要 ----------- */
.overview {
  padding: 0.9rem 0 0.65rem;
  background: #E2EEF7;
}
.overview_title {
  margin: 0 0 0.6rem;
  font-size: 0.38rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #2B7094;
  text-align: center;
}
.overview_lists {
  text-align: left;
}
.overview_lists dt,
.overview_lists dd {
  padding: 0 0 0.2rem;
  font-size: 0.2rem;
  line-height: 2;
}
.overview_lists dt {
  width: 4.2rem;
}
.overview_lists dd {
  width: calc(100% - 4.2rem);
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .overview {
    padding: 0.4rem 0 0.15rem;
  }
  .overview_title {
    margin: 0 0 0.25rem;
    font-size: 0.21rem;
  }
  .overview_lists dt,
  .overview_lists dd {
    padding: 0 0 0.15rem;
    font-size: 0.11rem;
  }
  .overview_lists dt {
    width: 1.15rem;
    padding: 0 0 0.15rem 0.19rem;
  }
  .overview_lists dd {
    width: calc(100% - 1.15rem);
  }
}/*# sourceMappingURL=style.css.map */