@charset "UTF-8";
/* //////////////////////////////////////////////////////////////////////////////////////////////////

PC

////////////////////////////////////////////////////////////////////////////////////////////////// */
@media screen and (min-width: 768px) {
  /*
  ========================================================================= */
  /* layout レイアウト
  ========================================================================= */
  .worry_btm {
    margin-top: calc(var(--var-1) * 310);
    padding-top: 0;
    position: relative;
  }
  .worry_btm::before, .worry_btm::after {
    content: "";
    position: absolute;
    top: calc(var(--var-1-sub) * 16);
    display: block;
  }
  .worry_btm::before {
    content: "";
    position: absolute;
    left: calc(var(--var-1-sub) * 555);
    display: block;
    width: calc(var(--var-1-sub) * 130);
    height: calc(var(--var-1-sub) * 170);
    background: url(../img/top/worry_img3.png) no-repeat top/100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  .worry_btm::before {
    transform: translateX(calc(var(--var-1) * -60));
  }
}
@media screen and (min-width: 768px) {
  .worry_btm::after {
    content: "";
    position: absolute;
    right: calc(var(--var-1-sub) * 560);
    display: block;
    width: calc(var(--var-1-sub) * 120);
    height: calc(var(--var-1-sub) * 168);
    background: url(../img/top/worry_img4.png) no-repeat top/100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  .worry_btm::after {
    transform: translateX(calc(var(--var-1) * 60));
  }
}
@media screen and (min-width: 768px) {
  .worry_btm .worry_btm_ttl {
    font: 700 calc(var(--var-1) * 42)/1.333 var(--family-base);
    text-align: center;
  }
  .worry_btm .worry_btm_ttl small {
    font-size: calc(var(--var-1) * 30);
  }
  .worry_btm .worry_btm_ttl .small_em {
    font-size: calc(var(--var-1) * 35);
  }
  .worry_btm .worry_btm_ttl .green_txt {
    font-size: calc(var(--var-1) * 35);
  }
  .worry_btm .worry_btm_desc {
    margin-top: calc(var(--var-1) * 50);
    text-align: center;
  }
  .cmn_worry {
    padding-bottom: 0;
    background: var(--cl-pink);
    position: relative;
  }
  .cmn_worry::before {
    content: "";
    position: absolute;
    bottom: calc(var(--var-1) * -230);
    left: 0;
    display: block;
    width: 100%;
    height: calc(var(--var-1) * 230);
    background: var(--cl-pink);
    clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  }
  .cmn_worry .cmn_worry_list {
    gap: calc(var(--var-1) * 10);
    margin-top: calc(var(--var-1) * 60);
    position: relative;
  }
  .cmn_worry .cmn_worry_list::before {
    content: "";
    position: absolute;
    bottom: calc(var(--var-1) * -14);
    right: calc(var(--var-1) * -37);
    z-index: 3;
    display: block;
    width: calc(var(--var-1) * 216);
    height: calc(var(--var-1) * 113);
    background: url(../img/top/worry_img2.png) no-repeat top/100%;
  }
  .cmn_worry .cmn_worry_list .cmn_worry_item {
    padding: calc(var(--var-1) * 20) calc(var(--var-1) * 30);
    background: var(--cl-white);
    font: 700 calc(var(--var-1) * 22)/1 var(--family-base);
    letter-spacing: 0.06em;
    position: relative;
  }
  .cmn_worry .cmn_worry_list .cmn_worry_item::before {
    content: "";
    display: inline-block;
    width: calc(var(--var-1) * 20);
    height: calc(var(--var-1) * 18);
    margin-right: calc(var(--var-1) * 8);
    background: url(../img/cmn/check.png) no-repeat top/100%;
  }
  .qanda {
    background: var(--cl-pink-light);
  }
  .qanda .qanda_list {
    gap: calc(var(--var-1) * 50);
    margin-top: calc(var(--var-1) * 50);
  }
  .qanda .qanda_list .qanda_item .qanda_item_top {
    padding: calc(var(--var-1) * 10) calc(var(--var-1) * 30);
    background: var(--cl-orange-light);
    color: var(--txt-sub-white);
    font-weight: 700;
    border-radius: calc(var(--var-1) * 5);
  }
  .qanda .qanda_list .qanda_item .qanda_item_top .qanda_lead {
    flex-shrink: 0;
    width: 86%;
  }
  .qanda .qanda_list .qanda_item .qanda_item_top .qanda_tag_list {
    gap: calc(var(--var-1) * 12);
  }
  .qanda .qanda_list .qanda_item .qanda_item_top .qanda_tag_list .qanda_tag_item {
    padding: calc(var(--var-1) * 5) calc(var(--var-1) * 14);
    border: 1px solid var(--cl-white);
    border-radius: calc(var(--var-1) * 12);
    font: 700 calc(var(--var-1) * 14)/1 var(--family-base);
  }
  .qanda .qanda_list .qanda_item em {
    flex-shrink: 0;
    display: inline-block;
    padding-top: calc(var(--var-1) * 5);
    padding-left: calc(var(--var-1) * 11.5);
    width: calc(var(--var-1) * 40);
    height: calc(var(--var-1) * 40);
    margin-right: calc(var(--var-1) * 12);
    background: var(--cl-white);
    color: var(--cl-orange);
    border-radius: 50%;
    font: 900 calc(var(--var-1) * 26)/1 var(--family-base);
  }
  .qanda .qanda_list .qanda_item .qanda_desc {
    margin-top: calc(var(--var-1) * 22);
    padding-left: calc(var(--var-1) * 30);
  }
  .qanda .qanda_list .qanda_item .qanda_desc em {
    flex-shrink: 0;
    background: var(--cl-green);
    color: var(--txt-sub-white);
  }
}
@media screen and (min-width: 768px) {
  /*
  ========================================================================= */
  /* title タイトル
  ========================================================================= */
  .cmn_ttl {
    font: 700 calc(var(--var-1) * 42)/1.429 var(--family-base);
    text-align: center;
  }
  .cmn_ttl .cmn_ttl_sub {
    display: block;
    margin-top: calc(var(--var-1) * 22);
    font: 700 calc(var(--var-1) * 18)/1 var(--family-base);
    color: var(--cl-green);
  }
  .worry_ttl {
    display: block;
    line-height: 1;
    position: relative;
  }
  .worry_ttl::before, .worry_ttl::after {
    content: "";
    position: absolute;
    top: calc(var(--var-1) * -4);
    margin: auto 0;
    display: block;
    width: calc(var(--var-1) * 2);
    height: calc(var(--var-1) * 60);
    background: var(--txt-base);
  }
  .worry_ttl::before {
    left: calc(var(--var-1) * 175);
    transform: rotate(-40deg);
  }
  .worry_ttl::after {
    right: calc(var(--var-1) * 175);
    transform: rotate(40deg);
  }
  .worry_ttl em {
    color: var(--cl-orange);
  }
  /*
  ========================================================================= */
  /* text テキスト
  ========================================================================= */
  /*
  ========================================================================= */
  /* list リスト
  ========================================================================= */
  /*
  ========================================================================= */
  /* table テーブル
  ========================================================================= */
  /*
  ========================================================================= */
  /* tel 電話番号
  ========================================================================= */
  .tel .tel_number {
    color: var(--cl-orange);
    font: 700 calc(var(--var-1) * 25)/1 var(--family-base);
    letter-spacing: 0.02em;
  }
  .tel .tel_number em {
    margin-right: calc(var(--var-1) * -6);
    font-size: calc(var(--var-1) * 13);
  }
  .tel .tel_number2 {
    margin-left: calc(var(--var-1) * 8);
    font-size: calc(var(--var-1) * 18);
  }
  .tel .tel_number2 em {
    margin-right: calc(var(--var-1) * -4);
    font-size: calc(var(--var-1) * 11);
  }
  .tel img {
    display: block;
    width: calc(var(--var-1) * 192);
    height: calc(var(--var-1) * 11);
    margin: 0 0 0 auto;
    transform: translateX(calc(var(--var-1) * 18));
  }
  /*
  ========================================================================= */
  /* times 営業時間・定休日
  ========================================================================= */
  /*
  ========================================================================= */
  /* btn ボタンの設計 
  ========================================================================= */
  .contact_btn {
    height: calc(var(--var-1) * 50);
    padding: calc(var(--var-1) * 16) calc(var(--var-1) * 20) calc(var(--var-1) * 19);
    background: var(--cl-green);
    color: var(--txt-sub-white);
    border-radius: calc(var(--var-1) * 5);
    font: 700 calc(var(--var-1) * 18)/1 var(--family-base);
  }
  .contact_btn::before {
    content: "";
    display: inline-block;
    width: calc(var(--var-1) * 21);
    height: calc(var(--var-1) * 15);
    margin-right: calc(var(--var-1) * 8);
    background: url(../img/cmn/mail_icon.png) no-repeat top/100%;
  }
  .cmn_btn {
    display: block;
    width: calc(var(--var-1) * 340);
    padding: calc(var(--var-1) * 22) 0;
    background: var(--cl-green);
    color: var(--txt-sub-white);
    border-radius: calc(var(--var-1) * 5);
    font-weight: 700;
    line-height: 1;
    text-align: center;
    position: relative;
  }
  .cmn_btn::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: calc(var(--var-1) * 20);
    display: block;
    width: calc(var(--var-1) * 23);
    height: calc(var(--var-1) * 23);
    background: url(../img/cmn/btn_arw.png) no-repeat top/100%;
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7487%) hue-rotate(359deg) brightness(102%) contrast(105%);
  }
}
/* //////////////////////////////////////////////////////////////////////////////////////////////////

SP

////////////////////////////////////////////////////////////////////////////////////////////////// */
@media screen and (max-width: 767px) {
  /*
  ========================================================================= */
  /* layout レイアウト
  ========================================================================= */
  .worry_btm {
    margin-top: calc(var(--var-1) * 100);
    padding-top: 0;
    position: relative;
  }
  .worry_btm::before, .worry_btm::after {
    content: "";
    position: absolute;
    top: calc(var(--var-1) * 16);
    display: block;
  }
  .worry_btm::before {
    content: "";
    position: absolute;
    left: calc(var(--var-1) * 555);
    display: block;
    width: calc(var(--var-1) * 130);
    height: calc(var(--var-1) * 170);
    background: url(../img/top/worry_img3.png) no-repeat top/100%;
  }
  .worry_btm::after {
    content: "";
    position: absolute;
    right: calc(var(--var-1) * 560);
    display: block;
    width: calc(var(--var-1) * 120);
    height: calc(var(--var-1) * 168);
    background: url(../img/top/worry_img4.png) no-repeat top/100%;
  }
  .worry_btm .worry_btm_ttl {
    font: 700 calc(var(--var-1) * 24)/1.6 var(--family-base);
    text-align: center;
  }
  .worry_btm .worry_btm_ttl small {
    font-size: calc(var(--var-1) * 16);
  }
  .worry_btm .worry_btm_ttl .small_em {
    font-size: calc(var(--var-1) * 18);
  }
  .worry_btm .worry_btm_ttl .green_txt {
    font-size: calc(var(--var-1) * 18);
  }
  .worry_btm .worry_btm_desc {
    margin-top: calc(var(--var-1) * 32);
    text-align: center;
  }
  .cmn_worry {
    padding-bottom: calc(var(--var-1) * 20);
    background: var(--cl-pink);
    position: relative;
  }
  .cmn_worry::before {
    content: "";
    position: absolute;
    bottom: calc(var(--var-1) * -64);
    left: 0;
    display: block;
    width: 100%;
    height: calc(var(--var-1) * 64);
    background: var(--cl-pink);
    clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  }
  .cmn_worry .cmn_worry_list {
    gap: calc(var(--var-1) * 12);
    margin-top: calc(var(--var-1) * 56);
  }
  .cmn_worry .cmn_worry_list .cmn_worry_item {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    padding: calc(var(--var-1) * 12) calc(var(--var-1) * 18);
    background: var(--cl-white);
    font: 700 calc(var(--var-1) * 14) var(--family-base);
    letter-spacing: 0.06em;
    position: relative;
  }
  .cmn_worry .cmn_worry_list .cmn_worry_item::before {
    content: "";
    flex-shrink: 0;
    display: inline-block;
    width: calc(var(--var-1) * 12);
    height: calc(var(--var-1) * 10);
    margin-right: calc(var(--var-1) * 12);
    background: url(../img/cmn/check.png) no-repeat top/100%;
    transform: translateY(calc(var(--var-1) * 6));
  }
  .qanda {
    background: var(--cl-pink-light);
  }
  .qanda .qanda_list {
    gap: calc(var(--var-1) * 50);
    margin-top: calc(var(--var-1) * 56);
  }
  .qanda .qanda_list .qanda_item .qanda_item_top {
    padding: calc(var(--var-1) * 8) calc(var(--var-1) * 16);
    background: var(--cl-orange-light);
    color: var(--txt-sub-white);
    font-weight: 700;
    border-radius: calc(var(--var-1) * 5);
  }
  .qanda .qanda_list .qanda_item .qanda_item_top .qanda_lead {
    flex-shrink: 0;
    width: 66%;
  }
  .qanda .qanda_list .qanda_item .qanda_item_top .qanda_tag_list {
    gap: calc(var(--var-1) * 8);
  }
  .qanda .qanda_list .qanda_item .qanda_item_top .qanda_tag_list .qanda_tag_item {
    padding: calc(var(--var-1) * 4) calc(var(--var-1) * 8);
    border: 1px solid var(--cl-white);
    border-radius: calc(var(--var-1) * 12);
    font: 700 calc(var(--var-1) * 10)/1 var(--family-base);
  }
  .qanda .qanda_list .qanda_item em {
    flex-shrink: 0;
    display: inline-block;
    padding-top: calc(var(--var-1) * 5);
    padding-left: calc(var(--var-1) * 8.5);
    width: calc(var(--var-1) * 32);
    height: calc(var(--var-1) * 32);
    margin-right: calc(var(--var-1) * 12);
    background: var(--cl-white);
    color: var(--cl-orange);
    border-radius: 50%;
    font: 900 calc(var(--var-1) * 20)/1 var(--family-base);
  }
  .qanda .qanda_list .qanda_item .qanda_desc {
    margin-top: calc(var(--var-1) * 24);
    padding-left: calc(var(--var-1) * 16);
  }
  .qanda .qanda_list .qanda_item .qanda_desc em {
    flex-shrink: 0;
    background: var(--cl-green);
    color: var(--txt-sub-white);
  }
  /*
  ========================================================================= */
  /* title タイトル
  ========================================================================= */
  .cmn_ttl {
    font: 700 calc(var(--var-1) * 24)/1.429 var(--family-base);
    text-align: center;
  }
  .cmn_ttl .cmn_ttl_sub {
    display: block;
    margin-top: calc(var(--var-1) * 12);
    font: 700 calc(var(--var-1) * 14)/1 var(--family-base);
    color: var(--cl-green);
  }
  .worry_ttl {
    display: block;
    position: relative;
  }
  .worry_ttl::before, .worry_ttl::after {
    content: "";
    position: absolute;
    top: calc(var(--var-1) * 16);
    margin: auto 0;
    display: block;
    width: calc(var(--var-1) * 2);
    height: calc(var(--var-1) * 40);
    background: var(--txt-base);
  }
  .worry_ttl::before {
    left: calc(var(--var-1) * 20);
    transform: rotate(-40deg);
  }
  .worry_ttl::after {
    right: calc(var(--var-1) * 20);
    transform: rotate(40deg);
  }
  .worry_ttl em {
    color: var(--cl-orange);
  }
  /*
  ========================================================================= */
  /* text テキスト
  ========================================================================= */
  /*
  ========================================================================= */
  /* list リスト
  ========================================================================= */
  /*
  ========================================================================= */
  /* table テーブル
  ========================================================================= */
  /*
  ========================================================================= */
  /* tel 電話番号
  ========================================================================= */
  .tel .tel_number {
    color: var(--cl-orange);
    font: 700 calc(var(--var-1) * 25)/1 var(--family-base);
    letter-spacing: 0.02em;
  }
  .tel .tel_number em {
    margin-right: calc(var(--var-1) * -6);
    font-size: calc(var(--var-1) * 13);
  }
  .tel .tel_number2 {
    margin-left: calc(var(--var-1) * 8);
    font-size: calc(var(--var-1) * 18);
  }
  .tel .tel_number2 em {
    margin-right: calc(var(--var-1) * -4);
    font-size: calc(var(--var-1) * 11);
  }
  .tel img {
    display: block;
    width: calc(var(--var-1) * 192);
    height: calc(var(--var-1) * 11);
    margin: 0 0 0 auto;
    transform: translateX(calc(var(--var-1) * 18));
  }
  /*
  ========================================================================= */
  /* times 営業時間・定休日
  ========================================================================= */
  /*
  ========================================================================= */
  /* btn ボタンの設計 
  ========================================================================= */
  .contact_btn {
    width: calc(var(--var-1) * 180);
    height: calc(var(--var-1) * 40);
    padding: calc(var(--var-1) * 12) calc(var(--var-1) * 20) calc(var(--var-1) * 19);
    background: var(--cl-green);
    color: var(--txt-sub-white);
    border-radius: calc(var(--var-1) * 5);
    font: 700 calc(var(--var-1) * 16)/1 var(--family-base);
  }
  .contact_btn::before {
    content: "";
    display: inline-block;
    width: calc(var(--var-1) * 18);
    height: calc(var(--var-1) * 13);
    margin-right: calc(var(--var-1) * 4);
    background: url(../img/cmn/mail_icon.png) no-repeat top/100%;
  }
  .cmn_btn {
    display: block;
    width: calc(var(--var-1) * 200);
    padding: calc(var(--var-1) * 16) 0;
    background: var(--cl-green);
    color: var(--txt-sub-white);
    border-radius: calc(var(--var-1) * 5);
    font-weight: 700;
    line-height: 1;
    text-align: center;
    position: relative;
  }
  .cmn_btn::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: calc(var(--var-1) * 20);
    display: block;
    width: calc(var(--var-1) * 18);
    height: calc(var(--var-1) * 18);
    background: url(../img/cmn/btn_arw.png) no-repeat top/100%;
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7487%) hue-rotate(359deg) brightness(102%) contrast(105%);
  }
}
/* //////////////////////////////////////////////////////////////////////////////////////////////////

共通コンポーネント

////////////////////////////////////////////////////////////////////////////////////////////////// */
/*
========================================================================= */
/*  breadcrumb(パンくずリスト)
========================================================================= */
.breadcrumb {
  position: relative;
}
.breadcrumb .inner .breadcrumb_list {
  padding-top: calc(var(--var-1) * 32);
  position: absolute;
  gap: calc(var(--var-1) * 24);
  z-index: 100;
  font-weight: 700;
}
.breadcrumb .inner .breadcrumb_list .breadcrumb_item_secondary,
.breadcrumb .inner .breadcrumb_list .breadcrumb_third {
  color: var(--cl-orange);
}
.breadcrumb .inner .breadcrumb_list .arrow {
  position: relative;
}
.breadcrumb .inner .breadcrumb_list .arrow::before {
  content: ">";
  width: calc(var(--var-1) * 8);
  height: 100%;
  display: block;
  position: absolute;
  right: calc(-1 * var(--var-1) * 16);
}

@media screen and (max-width: 767px) {
  .breadcrumb {
    position: relative;
    z-index: 0;
  }
  .breadcrumb .inner .breadcrumb_list {
    width: 84%;
    position: absolute;
    padding-top: calc(var(--var-1) * 24);
    gap: calc(var(--var-1) * 24);
    z-index: 100;
    font-weight: 700;
    overflow-x: scroll;
  }
  .breadcrumb .inner .breadcrumb_list .breadcrumb_item {
    display: inline-block;
    font-size: calc(var(--var-1) * 12);
    flex-shrink: 0;
  }
  .breadcrumb .inner .breadcrumb_list .breadcrumb_item:first-child {
    margin: 0;
  }
  .breadcrumb .inner .breadcrumb_list .breadcrumb_item_secondary,
  .breadcrumb .inner .breadcrumb_list .breadcrumb_third {
    color: var(--cl-orange);
  }
  .breadcrumb .inner .breadcrumb_list .arrow {
    position: relative;
  }
  .breadcrumb .inner .breadcrumb_list .arrow::before {
    content: ">";
    width: calc(var(--var-1) * 8);
    height: 100%;
    display: block;
    position: absolute;
    right: calc(-1 * var(--var-1) * 16);
  }
}
/*
========================================================================= */
/*  no_post
========================================================================= */
.no_post {
  font-size: calc(var(--var-1) * 56);
  font-weight: 700;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .no_post {
    font-size: calc(var(--var-1) * 32);
    font-weight: 700;
    text-align: center;
  }
}
/*
========================================================================= */
/*  copy
========================================================================= */
.copy {
  margin-top: calc(var(--var-1) * 20);
  font: 400 calc(var(--var-1) * 12) var(--family-base);
  text-align: center;
}
.copy .copy_link {
  transition: 0.3s;
}
.copy .copy_link:hover {
  color: var(--txt-base);
}