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

PC

////////////////////////////////////////////////////////////////////////////////////////////////// */
@media screen and (min-width: 768px) {
  /*
  ========================================================================= */
  /*  side_btn
  ========================================================================= */
  .side_btn {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 1000;
  }
  .side_btn .page_top .pagetop_btn {
    width: calc(var(--var-1) * 50);
    height: calc(var(--var-1) * 50);
    margin: 0 0 0 auto;
    position: relative;
    right: calc(var(--var-1) * 20);
  }
  .side_btn .line_item {
    width: calc(var(--var-1) * 242);
    margin-top: calc(var(--var-1) * 70);
    padding: calc(var(--var-1) * 20);
    border-radius: 0 calc(var(--var-1) * 30) 0 calc(var(--var-1) * 30);
  }
  .side_btn .line_item .line_lead {
    display: inline-block;
    padding-bottom: calc(var(--var-1) * 8);
    background-image: radial-gradient(circle, #fff 1px, transparent 1px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: calc(var(--var-1) * 4) calc(var(--var-1) * 2);
    color: var(--cl-white);
    font: 700 calc(var(--var-1) * 21)/1 var(--family-base);
    position: relative;
  }
  .side_btn .line_item .line_lead::before, .side_btn .line_item .line_lead::after {
    content: "";
    position: absolute;
    top: calc(var(--var-1) * 2);
    display: block;
    width: calc(var(--var-1) * 9);
    height: calc(var(--var-1) * 20);
    background: url(../img/cmn/side_deco.png) no-repeat top/100%;
  }
  .side_btn .line_item .line_lead::before {
    left: calc(var(--var-1) * -21);
    transform: scale(-1, 1);
  }
  .side_btn .line_item .line_lead::after {
    right: calc(var(--var-1) * -21);
  }
  .side_btn .line_item .line_link {
    width: calc(var(--var-1) * 200);
    margin-top: calc(var(--var-1) * 12);
    padding: calc(var(--var-1) * 8) 0 calc(var(--var-1) * 12);
    background: var(--cl-white);
    font: 700 calc(var(--var-1) * 20)/1.2 var(--family-base);
  }
  .side_btn .line_item .line_link::before {
    content: "";
    display: inline-block;
    width: calc(var(--var-1) * 37);
    height: calc(var(--var-1) * 37);
    margin-right: calc(var(--var-1) * 18);
    background: url(../img/sns/LINE_logo.svg) no-repeat top/100%;
    transform: translateY(calc(var(--var-1) * 2));
  }
  .side_btn .line_item .line_link small {
    font-size: calc(var(--var-1) * 17);
  }
  /*
  ========================================================================= */
  /*  cmn_contact
  ========================================================================= */
  .cmn_contact {
    padding: calc(var(--var-1) * 80) 0 calc(var(--var-1) * 90);
  }
  .cmn_contact .cmn_contact_content {
    width: calc(var(--var-1) * 800);
    margin: 0 auto;
    padding: calc(var(--var-1) * 46) calc(var(--var-1) * 56) calc(var(--var-1) * 34) calc(var(--var-1) * 72);
    border-radius: 0 calc(var(--var-1) * 50) 0 calc(var(--var-1) * 50);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_txt {
    color: var(--cl-white);
    text-align: center;
  }
  .cmn_contact .cmn_contact_content .cmn_contact_txt .cmn_contact_ttl,
  .cmn_contact .cmn_contact_content .cmn_contact_txt .cmn_contact_ttl_en {
    color: var(--cl-white);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_txt .cmn_contact_desc {
    margin-top: calc(var(--var-1) * 28);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list {
    gap: calc(var(--var-1) * 65);
    margin-top: calc(var(--var-1) * 42);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item {
    text-align: center;
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_item_lead {
    display: inline-block;
    padding-bottom: calc(var(--var-1) * 8);
    background-image: radial-gradient(circle, #fff 1px, transparent 1px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: calc(var(--var-1) * 4) calc(var(--var-1) * 2);
    color: var(--cl-white);
    font: 700 calc(var(--var-1) * 21)/1 var(--family-base);
    position: relative;
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_item_lead::before, .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_item_lead::after {
    content: "";
    position: absolute;
    top: calc(var(--var-1) * 2);
    display: block;
    width: calc(var(--var-1) * 9);
    height: calc(var(--var-1) * 20);
    background: url(../img/cmn/side_deco.png) no-repeat top/100%;
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_item_lead::before {
    left: calc(var(--var-1) * -21);
    transform: scale(-1, 1);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_item_lead::after {
    right: calc(var(--var-1) * -21);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_tel {
    margin-top: calc(var(--var-1) * 16);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_tel .tel_number {
    color: var(--cl-white);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_btn {
    width: calc(var(--var-1) * 320);
    margin-top: calc(var(--var-1) * 16);
    padding: calc(var(--var-1) * 16) 0;
    background: var(--cl-white);
    font: 700 calc(var(--var-1) * 17)/1 var(--family-base);
    position: relative;
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_btn::before {
    content: "";
    display: inline-block;
    width: calc(var(--var-1) * 37);
    height: calc(var(--var-1) * 37);
    margin-right: calc(var(--var-1) * 15);
    background: url(../img/sns/LINE_logo.svg) no-repeat top/100%;
  }
  /*
  ========================================================================= */
  /* layout レイアウト
  ========================================================================= */
  .cmn_worry {
    padding: calc(var(--var-1) * 60) 0 calc(var(--var-1) * 80);
    background: url(../img/top/worry_bg.png) no-repeat top/cover;
  }
  .cmn_worry .cmn_worry_content {
    width: calc(var(--var-1) * 900);
    margin: 0 auto;
    padding: calc(var(--var-1) * 46) calc(var(--var-1) * 20) calc(var(--var-1) * 50);
    background: var(--cl-white);
    position: relative;
  }
  .cmn_worry .cmn_worry_content::before {
    content: "";
    position: absolute;
    bottom: calc(var(--var-1) * -64);
    left: 0;
    right: 0;
    margin: 0 auto;
    display: block;
    width: calc(var(--var-1) * 420);
    height: calc(var(--var-1) * 100);
    background: linear-gradient(to bottom, rgba(92, 194, 242, 0) 0%, rgba(92, 194, 242, 0) 20%, rgb(238, 181, 120) 80%, rgb(238, 181, 120) 100%);
    clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  }
  .cmn_worry .cmn_worry_ttl {
    font: 700 calc(var(--var-1) * 36)/1 var(--family-base);
    padding-bottom: calc(var(--var-1) * 16);
    border-bottom: calc(var(--var-1) * 4) double var(--cl-gray);
    text-align: center;
    position: relative;
    z-index: 0;
  }
  .cmn_worry .cmn_worry_ttl::before {
    content: "";
    position: absolute;
    top: calc(var(--var-1) * -12);
    left: calc(var(--var-1) * 312);
    display: block;
    width: calc(var(--var-1) * 88);
    height: calc(var(--var-1) * 6);
    background: url(../img/top/worry_dot.png) no-repeat top/100%;
  }
  .cmn_worry .cmn_worry_ttl::after {
    content: "";
    position: absolute;
    top: calc(var(--var-1) * 26);
    left: calc(var(--var-1) * 294);
    z-index: -1;
    display: block;
    width: calc(var(--var-1) * 123);
    height: calc(var(--var-1) * 25);
    background: url(../img/top/worry_ttl_deco.png) no-repeat top/100%;
  }
  .cmn_worry .cmn_worry_ttl em {
    font-size: calc(var(--var-1) * 40);
  }
  .cmn_worry .cmn_worry_list {
    gap: calc(var(--var-1) * 28) 0;
    margin-top: calc(var(--var-1) * 42);
    padding: 0 calc(var(--var-1) * 40);
  }
  .cmn_worry .cmn_worry_item {
    width: 50%;
    font: 700 calc(var(--var-1) * 18)/1 var(--family-base);
    position: relative;
  }
  .cmn_worry .cmn_worry_item::before {
    content: "";
    display: inline-block;
    width: calc(var(--var-1) * 16);
    height: calc(var(--var-1) * 12);
    background: url(../img/cmn/check.png) no-repeat top/100%;
  }
  .cmn_worry .cmn_worry_btm {
    text-align: center;
  }
  .cmn_worry .cmn_worry_lead {
    display: inline-block;
    margin: calc(var(--var-1) * 85) auto 0;
    color: #fff;
    font: 900 calc(var(--var-1) * 32)/1 var(--family-base);
    text-align: center;
    z-index: 0;
    letter-spacing: 0.06em;
    text-shadow: 0px 0px calc(var(--var-1) * 6) rgb(51, 104, 159), 0px 0px calc(var(--var-1) * 6) rgb(51, 104, 159);
    position: relative;
  }
  .cmn_worry .cmn_worry_lead::before {
    content: "";
    position: absolute;
    bottom: calc(var(--var-1) * -8);
    left: 0;
    z-index: -1;
    display: block;
    width: 100%;
    height: calc(var(--var-1) * 12);
    background: linear-gradient(135deg, rgb(92, 194, 242) 0%, rgb(92, 194, 242) 30%, rgb(134, 209, 108) 60%, rgb(134, 209, 108) 100%);
  }
  .cmn_worry .cmn_worry_lead small {
    font-size: calc(var(--var-1) * 29);
  }
  .cmn_worry .cmn_worry_desc {
    margin-top: calc(var(--var-1) * 36);
    line-height: 1;
  }
  .cmn_service {
    padding-top: calc(var(--var-1) * 70);
  }
  .cmn_service .cmn_service_ttl {
    background: var(--cl-blue);
    background-clip: text;
    -webkit-background-clip: text;
    color: rgba(38, 38, 42, 0.5);
  }
  .cmn_service .cmn_service_ttl_en {
    color: var(--cl-blue) !important;
  }
  .cmn_service .cmn_service_list {
    gap: calc(var(--var-1) * 70);
    margin-top: calc(var(--var-1) * 74);
  }
  .cmn_service .cmn_service_item {
    padding-bottom: calc(var(--var-1) * 60);
    border-bottom: 1px solid var(--cl-gray);
  }
  .cmn_service .cmn_service_item:last-child {
    padding-bottom: 0;
    border: none;
  }
  .cmn_service .cmn_service_content {
    gap: calc(var(--var-1) * 52);
  }
  .cmn_service .cmn_service_figure {
    flex-shrink: 0;
    width: calc(var(--var-1) * 400);
    height: calc(var(--var-1) * 300);
  }
  .cmn_service .cmn_service_txt {
    white-space: nowrap;
  }
  .cmn_service .cmn_service_lead {
    color: var(--cl-blue);
    font: 700 calc(var(--var-1) * 28)/1 var(--family-base);
  }
  .cmn_service .cmn_service_desc {
    margin-top: calc(var(--var-1) * 28);
  }
  .cmn_service .cmn_service_btm_content {
    margin-top: calc(var(--var-1) * 40);
    padding: calc(var(--var-1) * 28) calc(var(--var-1) * 20) calc(var(--var-1) * 34);
    background: var(--cl-blue);
    border-radius: 0 calc(var(--var-1) * 30) 0 calc(var(--var-1) * 30);
  }
  .cmn_service .cmn_service_btm_txt {
    color: var(--cl-white);
    text-align: center;
  }
  .cmn_service .cmn_service_btm_lead {
    padding-bottom: calc(var(--var-1) * 16);
    border-bottom: 1px solid var(--cl-white);
    font: 700 calc(var(--var-1) * 21)/1 var(--family-base);
  }
  .cmn_service .cmn_service_btm_desc {
    margin-top: calc(var(--var-1) * 26);
  }
  .cmn_reason {
    padding: calc(var(--var-1) * 60) 0 calc(var(--var-1) * 90);
    background: var(--cl-blue-light);
  }
  .cmn_reason .cmn_reason_ttl {
    background: var(--cl-blue);
    background-clip: text;
    -webkit-background-clip: text;
    color: rgba(38, 38, 42, 0.5);
  }
  .cmn_reason .cmn_reason_ttl_en {
    color: var(--cl-blue) !important;
  }
  .cmn_reason .cmn_reason_list {
    margin-top: calc(var(--var-1) * 78);
    padding: calc(var(--var-1) * 20) calc(var(--var-1) * 30);
    background: var(--cl-white);
    counter-reset: number 0;
  }
  .cmn_reason .cmn_reason_item {
    width: calc(var(--var-1) * 318);
    position: relative;
  }
  .cmn_reason .cmn_reason_item::before {
    content: "";
    position: absolute;
    top: 0;
    right: calc(var(--var-1) * -12);
    display: block;
    width: 1px;
    height: 100%;
    background: var(--cl-gray);
  }
  .cmn_reason .cmn_reason_item:last-child::before {
    content: none;
  }
  .cmn_reason .cmn_reason_txt {
    text-align: center;
    position: relative;
  }
  .cmn_reason .cmn_reason_txt::before {
    counter-increment: number 1;
    content: "0" counter(number);
    position: absolute;
    top: calc(var(--var-1) * -40);
    left: 0;
    right: 0;
    margin: 0 auto;
    display: block;
    width: calc(var(--var-1) * 40);
    height: calc(var(--var-1) * 40);
    padding-top: calc(var(--var-1) * 8);
    background: var(--cl-blue);
    color: var(--cl-white);
    border-radius: calc(var(--var-1) * 5);
    font: 700 calc(var(--var-1) * 28)/1 var(--family-en);
    text-align: center;
  }
  .cmn_reason .cmn_reason_lead {
    display: inline-block;
    margin-top: calc(var(--var-1) * 26);
    font: 900 calc(var(--var-1) * 22)/1 var(--family-base);
    position: relative;
    z-index: 0;
  }
  .cmn_reason .cmn_reason_lead::before {
    content: "";
    position: absolute;
    bottom: calc(var(--var-1) * -4);
    left: 0;
    z-index: -1;
    display: block;
    width: 100%;
    height: calc(var(--var-1) * 5);
    background: var(--cl-blue);
    border-radius: calc(var(--var-1) * 12);
  }
  .cmn_reason .cmn_reason_desc {
    margin-top: calc(var(--var-1) * 24);
    font: 500 calc(var(--var-1) * 16)/1.875 var(--family-base);
    text-align: left;
  }
  .cmn_reason .cmn_reason_btm {
    margin-top: calc(var(--var-1) * 55);
  }
  .cmn_reason .cmn_reason_btm_lead {
    padding: calc(var(--var-1) * 18) 0;
    background: var(--cl-blue);
    color: var(--cl-white);
    font: 700 calc(var(--var-1) * 24)/1 var(--family-base);
    text-align: center;
  }
  .cmn_reason .cmn_reason_btm_desc {
    margin-top: calc(var(--var-1) * 24);
    font: 500 calc(var(--var-1) * 16)/1.875 var(--family-base);
    text-align: center;
  }
  .cmn_reason .cmn_reason_btm_list_wrap {
    margin-top: calc(var(--var-1) * 40);
  }
  .cmn_reason .cmn_reason_btm_list {
    gap: calc(var(--var-1) * 16);
  }
  .cmn_reason .cmn_reason_btm_item {
    width: calc(var(--var-1) * 500);
  }
  .cmn_reason .cmn_reason_btm_before {
    position: relative;
  }
  .cmn_reason .cmn_reason_btm_before::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: calc(var(--var-1) * -50);
    display: block;
    width: calc(var(--var-1) * 28);
    height: calc(var(--var-1) * 100);
    background: linear-gradient(to right, rgba(92, 194, 242, 0) 0%, rgba(92, 194, 242, 0) 20%, rgb(238, 181, 120) 80%, rgb(238, 181, 120) 100%);
    clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
  }
  .cmn_reason .cmn_reason_btm_figure_after {
    background: var(--cl-blue) !important;
  }
  .cmn_reason .cmn_reason_btm_img_wrap {
    gap: calc(var(--var-1) * 24);
  }
  .cmn_reason .cmn_reason_btm_img_wrap .cmn_reason_btm_figure_desc {
    display: block;
    background: var(--cl-gray-dark);
    padding: calc(var(--var-1) * 5) 0;
    color: var(--cl-white);
    font: 700 calc(var(--var-1) * 18)/1 var(--family-en);
    text-align: center;
  }
  .cmn_reason .cmn_reason_btm_figure {
    margin-top: calc(var(--var-1) * 2);
  }
  .cmn_reason .cmn_reason_btm_img {
    width: calc(var(--var-1) * 500);
    height: calc(var(--var-1) * 320);
    -o-object-fit: cover;
       object-fit: cover;
  }
  .cmn_flow {
    padding: calc(var(--var-1) * 74) 0 calc(var(--var-1) * 90);
  }
  .cmn_flow .cmn_flow_ttl {
    background: var(--cl-blue);
    background-clip: text;
    -webkit-background-clip: text;
    color: rgba(38, 38, 42, 0.5);
  }
  .cmn_flow .cmn_flow_ttl_en {
    color: var(--cl-blue) !important;
  }
  .cmn_flow .cmn_flow_list {
    margin-top: calc(var(--var-1) * 68);
    padding: 0 calc(var(--var-1) * 20);
    counter-reset: number 0;
  }
  .cmn_flow .cmn_flow_item {
    display: inline-block;
    width: calc(var(--var-1) * 180);
  }
  .cmn_flow .cmn_flow_item:nth-child(1) .cmn_flow_figure .cmn_flow_img {
    width: calc(var(--var-1) * 75);
    height: calc(var(--var-1) * 105);
  }
  .cmn_flow .cmn_flow_item:nth-child(2) .cmn_flow_figure .cmn_flow_img {
    width: calc(var(--var-1) * 86);
    height: calc(var(--var-1) * 91);
  }
  .cmn_flow .cmn_flow_item:nth-child(3) .cmn_flow_figure .cmn_flow_img {
    width: calc(var(--var-1) * 106);
    height: calc(var(--var-1) * 108);
  }
  .cmn_flow .cmn_flow_item:nth-child(4) .cmn_flow_figure .cmn_flow_img {
    width: calc(var(--var-1) * 94);
    height: calc(var(--var-1) * 90);
  }
  .cmn_flow .cmn_flow_item:last-child .cmn_flow_figure::before {
    content: none;
  }
  .cmn_flow .cmn_flow_img_wrap .cmn_flow_figure {
    width: calc(var(--var-1) * 180);
    height: calc(var(--var-1) * 180);
    background: var(--cl-blue-light);
    border-radius: 50%;
    position: relative;
  }
  .cmn_flow .cmn_flow_img_wrap .cmn_flow_figure::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: calc(var(--var-1) * -65);
    display: block;
    width: calc(var(--var-1) * 21);
    height: calc(var(--var-1) * 38);
    background: url(../img/cmn/arw_r_b.png) no-repeat top/100%;
  }
  .cmn_flow .cmn_flow_deco {
    position: absolute;
    top: calc(var(--var-1) * -8);
    left: 0;
    color: var(--cl-blue);
    font: 700 calc(var(--var-1) * 22)/1 var(--family-en);
  }
  .cmn_flow .cmn_flow_deco::after {
    counter-increment: number 1;
    content: "0" counter(number);
    display: inline-block;
    font: 700 calc(var(--var-1) * 32)/1 var(--family-en);
  }
  .cmn_flow .cmn_flow_figure_desc {
    margin-top: calc(var(--var-1) * 20);
    font: 900 calc(var(--var-1) * 24)/1 var(--family-base);
    text-align: center;
    white-space: nowrap;
  }
  /*
  ========================================================================= */
  /* title タイトル
  ========================================================================= */
  .cmn_ttl {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: linear-gradient(135deg, rgba(92, 194, 242, 0.8) 0%, rgba(92, 194, 242, 0.8) 30%, rgba(134, 209, 108, 0.8) 60%, rgba(134, 209, 108, 0.8) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    color: rgba(38, 38, 42, 0.4);
    font: 700 calc(var(--var-1) * 38)/1 var(--family-base);
    text-align: center;
  }
  .cmn_ttl .cmn_ttl_en {
    display: inline-block;
    margin-bottom: calc(var(--var-1) * 20);
    background: linear-gradient(135deg, rgb(92, 194, 242) 0%, rgb(92, 194, 242) 30%, rgb(134, 209, 108) 60%, rgb(134, 209, 108) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    font: 700 calc(var(--var-1) * 22)/1 var(--family-en);
  }
  /*
  ========================================================================= */
  /* text テキスト
  ========================================================================= */
  /*
  ========================================================================= */
  /* list リスト
  ========================================================================= */
  /*
  ========================================================================= */
  /* table テーブル
  ========================================================================= */
  /*
  ========================================================================= */
  /* tel 電話番号
  ========================================================================= */
  .tel .tel_number {
    font: 700 calc(var(--var-1) * 27)/1 var(--family-base);
    letter-spacing: 0.04em;
  }
  .tel .tel_number em {
    font-size: calc(var(--var-1) * 17);
  }
  .tel img {
    display: block;
    width: calc(var(--var-1) * 286);
    height: calc(var(--var-1) * 16);
    margin-top: calc(var(--var-1) * 8);
  }
  /*
  ========================================================================= */
  /* times 営業時間・定休日
  ========================================================================= */
  /*
  ========================================================================= */
  /* btn ボタンの設計 
  ========================================================================= */
  .cmn_btn {
    display: block;
    padding: calc(var(--var-1) * 16) 0;
    background: var(--cl-white);
    color: var(--cl-blue);
    font: 700 calc(var(--var-1) * 17)/1 var(--family-base);
    text-align: center;
    position: relative;
  }
  .cmn_btn::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: calc(var(--var-1) * 10);
    display: block;
    width: calc(var(--var-1) * 20);
    height: calc(var(--var-1) * 20);
    background: url(../img/cmn/arw_r.png) no-repeat top/100%;
  }
}
/* //////////////////////////////////////////////////////////////////////////////////////////////////

SP

////////////////////////////////////////////////////////////////////////////////////////////////// */
@media screen and (max-width: 767px) {
  /*
  ========================================================================= */
  /*  side_btn
  ========================================================================= */
  .side_btn {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 1000;
    width: 100%;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
  }
  .side_btn .line_item {
    width: 100%;
    border-radius: calc(var(--var-1) * 30) calc(var(--var-1) * 30) 0 0;
  }
  .side_btn .line_item .line_link {
    padding: calc(var(--var-1) * 8) 0 calc(var(--var-1) * 10);
    font: 700 calc(var(--var-1) * 16)/1.2 var(--family-base);
    color: var(--cl-white);
  }
  .side_btn .line_item .line_link::before {
    content: "";
    display: inline-block;
    width: calc(var(--var-1) * 34);
    height: calc(var(--var-1) * 34);
    margin-right: calc(var(--var-1) * 12);
    background: url(../img/sns/LINE_logo.svg) no-repeat top/100%;
    transform: translateY(calc(var(--var-1) * 2));
  }
  .side_btn .line_item .line_link small {
    font-size: calc(var(--var-1) * 17);
  }
  /*
  ========================================================================= */
  /*  cmn_contact
  ========================================================================= */
  .cmn_contact {
    padding: calc(var(--var-1) * 80) 0;
  }
  .cmn_contact .cmn_contact_content {
    margin: 0 auto;
    padding: calc(var(--var-1) * 32) calc(var(--var-1) * 24);
    border-radius: 0 calc(var(--var-1) * 50) 0 calc(var(--var-1) * 50);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_txt {
    color: var(--cl-white);
    text-align: center;
  }
  .cmn_contact .cmn_contact_content .cmn_contact_txt .cmn_contact_ttl,
  .cmn_contact .cmn_contact_content .cmn_contact_txt .cmn_contact_ttl_en {
    color: var(--cl-white);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_txt .cmn_contact_desc {
    margin-top: calc(var(--var-1) * 32);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list {
    flex-direction: column;
    gap: calc(var(--var-1) * 48);
    margin-top: calc(var(--var-1) * 56);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item {
    text-align: center;
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_item_lead {
    display: inline-block;
    padding-bottom: calc(var(--var-1) * 12);
    background-image: radial-gradient(circle, #fff 1px, transparent 1px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: calc(var(--var-1) * 4) calc(var(--var-1) * 2);
    color: var(--cl-white);
    font: 700 calc(var(--var-1) * 18)/1 var(--family-base);
    position: relative;
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_item_lead::before, .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_item_lead::after {
    content: "";
    position: absolute;
    top: calc(var(--var-1) * 2);
    display: block;
    width: calc(var(--var-1) * 9);
    height: calc(var(--var-1) * 20);
    background: url(../img/cmn/side_deco.png) no-repeat top/100%;
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_item_lead::before {
    left: calc(var(--var-1) * -21);
    transform: scale(-1, 1);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_item_lead::after {
    right: calc(var(--var-1) * -21);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_tel {
    margin-top: calc(var(--var-1) * 16);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_tel .tel_number {
    color: var(--cl-white);
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_btn {
    margin-top: calc(var(--var-1) * 16);
    padding: calc(var(--var-1) * 12) 0;
    background: var(--cl-white);
    font: 700 calc(var(--var-1) * 14)/1 var(--family-base);
    position: relative;
  }
  .cmn_contact .cmn_contact_content .cmn_contact_list .cmn_contact_item .cmn_contact_btn::before {
    content: "";
    display: inline-block;
    width: calc(var(--var-1) * 34);
    height: calc(var(--var-1) * 34);
    margin-right: calc(var(--var-1) * 12);
    background: url(../img/sns/LINE_logo.svg) no-repeat top/100%;
  }
  /*
  ========================================================================= */
  /* layout レイアウト
  ========================================================================= */
  .cmn_worry {
    padding: calc(var(--var-1) * 60) 0 0;
    background: url(../img/top/worry_bg.png) no-repeat top/cover;
  }
  .cmn_worry .cmn_worry_content {
    margin: 0 auto;
    padding: calc(var(--var-1) * 32) calc(var(--var-1) * 16) calc(var(--var-1) * 50);
    background: var(--cl-white);
    position: relative;
  }
  .cmn_worry .cmn_worry_content::before {
    content: "";
    position: absolute;
    bottom: calc(var(--var-1) * -24);
    left: 0;
    right: 0;
    margin: 0 auto;
    display: block;
    width: calc(var(--var-1) * 200);
    height: calc(var(--var-1) * 50);
    background: linear-gradient(to bottom, rgba(92, 194, 242, 0) 0%, rgba(92, 194, 242, 0) 20%, rgb(238, 181, 120) 80%, rgb(238, 181, 120) 100%);
    clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  }
  .cmn_worry .cmn_worry_ttl {
    font: 700 calc(var(--var-1) * 20)/1.3 var(--family-base);
    padding-bottom: calc(var(--var-1) * 16);
    border-bottom: calc(var(--var-1) * 4) double var(--cl-gray);
    text-align: center;
    position: relative;
    z-index: 0;
  }
  .cmn_worry .cmn_worry_ttl::before {
    content: "";
    position: absolute;
    top: calc(var(--var-1) * -6);
    left: calc(var(--var-1) * 72);
    display: block;
    width: calc(var(--var-1) * 54);
    height: calc(var(--var-1) * 6);
    background: url(../img/top/worry_dot.png) no-repeat top/100%;
  }
  .cmn_worry .cmn_worry_ttl::after {
    content: "";
    position: absolute;
    top: calc(var(--var-1) * 20);
    left: calc(var(--var-1) * 64);
    z-index: -1;
    display: block;
    width: calc(var(--var-1) * 76);
    height: calc(var(--var-1) * 24);
    background: url(../img/top/worry_ttl_deco.png) no-repeat top/100%;
  }
  .cmn_worry .cmn_worry_ttl em {
    font-size: calc(var(--var-1) * 24);
  }
  .cmn_worry .cmn_worry_list {
    flex-direction: column;
    gap: calc(var(--var-1) * 24) 0;
    margin-top: calc(var(--var-1) * 32);
    padding: 0 calc(var(--var-1) * 16);
  }
  .cmn_worry .cmn_worry_item {
    font: 700 calc(var(--var-1) * 14)/1.4 var(--family-base);
    text-indent: calc(var(--var-1) * -22);
    padding-left: calc(var(--var-1) * 22);
    position: relative;
  }
  .cmn_worry .cmn_worry_item::before {
    content: "";
    display: inline-block;
    width: calc(var(--var-1) * 12);
    margin-right: calc(var(--var-1) * 4);
    height: calc(var(--var-1) * 10);
    background: url(../img/cmn/check.png) no-repeat top/100%;
  }
  .cmn_worry .cmn_worry_btm {
    text-align: center;
  }
  .cmn_worry .cmn_worry_lead {
    display: inline-block;
    margin: calc(var(--var-1) * 56) auto 0;
    color: #fff;
    font: 900 calc(var(--var-1) * 21)/1.5 var(--family-base);
    text-align: center;
    z-index: 0;
    text-shadow: 0px 0px calc(var(--var-1) * 6) rgb(51, 104, 159), 0px 0px calc(var(--var-1) * 6) rgb(51, 104, 159);
    position: relative;
  }
  .cmn_worry .cmn_worry_lead::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    display: block;
    width: 100%;
    height: calc(var(--var-1) * 8);
    background: linear-gradient(135deg, rgb(92, 194, 242) 0%, rgb(92, 194, 242) 30%, rgb(134, 209, 108) 60%, rgb(134, 209, 108) 100%);
  }
  .cmn_worry .cmn_worry_lead small {
    font-size: calc(var(--var-1) * 18);
  }
  .cmn_worry .cmn_worry_desc {
    margin-top: calc(var(--var-1) * 36);
    line-height: 1;
  }
  .cmn_service .cmn_service_ttl {
    background: var(--cl-blue);
    background-clip: text;
    -webkit-background-clip: text;
    color: rgba(38, 38, 42, 0.5);
  }
  .cmn_service .cmn_service_ttl_en {
    color: var(--cl-blue) !important;
  }
  .cmn_service .cmn_service_list {
    gap: calc(var(--var-1) * 64);
    margin-top: calc(var(--var-1) * 56);
  }
  .cmn_service .cmn_service_item {
    padding-bottom: calc(var(--var-1) * 48);
    border-bottom: 1px solid var(--cl-gray);
  }
  .cmn_service .cmn_service_item:last-child {
    padding-bottom: 0;
    border: none;
  }
  .cmn_service .cmn_service_content {
    flex-direction: column;
    gap: calc(var(--var-1) * 40);
  }
  .cmn_service .cmn_service_figure {
    flex-shrink: 0;
    width: 88%;
    margin: 0 auto;
  }
  .cmn_service .cmn_service_lead {
    color: var(--cl-blue);
    font: 700 calc(var(--var-1) * 22)/1 var(--family-base);
  }
  .cmn_service .cmn_service_desc {
    margin-top: calc(var(--var-1) * 24);
  }
  .cmn_service .cmn_service_btm_content {
    margin-top: calc(var(--var-1) * 40);
    padding: calc(var(--var-1) * 20) calc(var(--var-1) * 8) calc(var(--var-1) * 24);
    background: var(--cl-blue);
    border-radius: 0 calc(var(--var-1) * 30) 0 calc(var(--var-1) * 30);
  }
  .cmn_service .cmn_service_btm_txt {
    color: var(--cl-white);
    text-align: center;
  }
  .cmn_service .cmn_service_btm_lead {
    padding-bottom: calc(var(--var-1) * 16);
    border-bottom: 1px solid var(--cl-white);
    font: 700 calc(var(--var-1) * 18)/1 var(--family-base);
  }
  .cmn_service .cmn_service_btm_desc {
    margin-top: calc(var(--var-1) * 18);
  }
  .cmn_reason {
    background: var(--cl-blue-light);
  }
  .cmn_reason .cmn_reason_ttl {
    background: var(--cl-blue);
    background-clip: text;
    -webkit-background-clip: text;
    color: rgba(38, 38, 42, 0.5);
  }
  .cmn_reason .cmn_reason_ttl_en {
    color: var(--cl-blue) !important;
  }
  .cmn_reason .cmn_reason_list {
    gap: calc(var(--var-1) * 64);
    flex-direction: column;
    margin-top: calc(var(--var-1) * 76);
    counter-reset: number 0;
  }
  .cmn_reason .cmn_reason_item {
    position: relative;
    width: 100%;
    padding: calc(var(--var-1) * 32) calc(var(--var-1) * 24);
    background: var(--cl-white);
    border-radius: calc(var(--var-1) * 5);
  }
  .cmn_reason .cmn_reason_item::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 100%;
    height: 1px;
    background: var(--cl-gray);
  }
  .cmn_reason .cmn_reason_item:last-child::before {
    content: none;
  }
  .cmn_reason .cmn_reason_txt {
    text-align: center;
    position: relative;
  }
  .cmn_reason .cmn_reason_txt::before {
    counter-increment: number 1;
    content: "0" counter(number);
    position: absolute;
    top: calc(var(--var-1) * -54);
    left: 0;
    right: 0;
    margin: 0 auto;
    display: block;
    width: calc(var(--var-1) * 40);
    height: calc(var(--var-1) * 40);
    padding-top: calc(var(--var-1) * 8);
    background: var(--cl-blue);
    color: var(--cl-white);
    border-radius: calc(var(--var-1) * 5);
    font: 700 calc(var(--var-1) * 24)/1 var(--family-en);
    text-align: center;
  }
  .cmn_reason .cmn_reason_lead {
    display: inline-block;
    margin-top: calc(var(--var-1) * 8);
    font: 900 calc(var(--var-1) * 18)/1 var(--family-base);
    position: relative;
    z-index: 0;
  }
  .cmn_reason .cmn_reason_lead::before {
    content: "";
    position: absolute;
    bottom: calc(var(--var-1) * -4);
    left: 0;
    z-index: -1;
    display: block;
    width: 100%;
    height: calc(var(--var-1) * 4);
    background: var(--cl-blue);
    border-radius: calc(var(--var-1) * 12);
  }
  .cmn_reason .cmn_reason_desc {
    margin-top: calc(var(--var-1) * 24);
    font: 500 calc(var(--var-1) * 14)/2 var(--family-base);
    text-align: left;
  }
  .cmn_reason .cmn_reason_btm {
    margin-top: calc(var(--var-1) * 64);
  }
  .cmn_reason .cmn_reason_btm_lead {
    padding: calc(var(--var-1) * 12) 0;
    background: var(--cl-blue);
    color: var(--cl-white);
    font: 700 calc(var(--var-1) * 18)/1 var(--family-base);
    text-align: center;
  }
  .cmn_reason .cmn_reason_btm_desc {
    margin-top: calc(var(--var-1) * 16);
    font: 500 calc(var(--var-1) * 13)/1.875 var(--family-base);
    text-align: center;
  }
  .cmn_reason .cmn_reason_btm_list_wrap {
    gap: calc(var(--var-1) * 88);
    flex-direction: column;
    margin-top: calc(var(--var-1) * 40);
    position: relative;
  }
  .cmn_reason .cmn_reason_btm_list_wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    display: block;
    width: calc(var(--var-1) * 100);
    height: calc(var(--var-1) * 28);
    background: linear-gradient(to bottom, rgba(92, 194, 242, 0) 0%, rgba(92, 194, 242, 0) 20%, rgb(238, 181, 120) 80%, rgb(238, 181, 120) 100%);
    clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  }
  .cmn_reason .cmn_reason_btm_list {
    flex-direction: column;
    gap: calc(var(--var-1) * 16);
    position: relative;
  }
  .cmn_reason .cmn_reason_btm_item .cmn_reason_btm_figure_after {
    background: var(--cl-blue) !important;
  }
  .cmn_reason .cmn_reason_btm_img_wrap {
    gap: calc(var(--var-1) * 24);
  }
  .cmn_reason .cmn_reason_btm_img_wrap .cmn_reason_btm_figure_desc {
    display: block;
    background: var(--cl-gray-dark);
    padding: calc(var(--var-1) * 5) 0;
    color: var(--cl-white);
    font: 700 calc(var(--var-1) * 16)/1 var(--family-en);
    text-align: center;
  }
  .cmn_reason .cmn_reason_btm_figure {
    margin-top: calc(var(--var-1) * 2);
  }
  .cmn_reason .cmn_reason_btm_img {
    width: 100%;
    height: calc(var(--var-1) * 201.6);
    -o-object-fit: cover;
       object-fit: cover;
  }
  .cmn_flow .cmn_flow_ttl {
    background: var(--cl-blue);
    background-clip: text;
    -webkit-background-clip: text;
    color: rgba(38, 38, 42, 0.5);
  }
  .cmn_flow .cmn_flow_ttl_en {
    color: var(--cl-blue) !important;
  }
  .cmn_flow .cmn_flow_list {
    flex-wrap: wrap;
    gap: calc(var(--var-1) * 48) 0;
    margin-top: calc(var(--var-1) * 56);
    padding: 0 calc(var(--var-1) * 20);
    counter-reset: number 0;
  }
  .cmn_flow .cmn_flow_item {
    display: inline-block;
    width: calc(var(--var-1) * 120);
  }
  .cmn_flow .cmn_flow_item:nth-child(1) .cmn_flow_figure .cmn_flow_img {
    width: calc(var(--var-1) * 42.86);
    height: calc(var(--var-1) * 60);
  }
  .cmn_flow .cmn_flow_item:nth-child(2) .cmn_flow_figure .cmn_flow_img {
    width: calc(var(--var-1) * 56.7);
    height: calc(var(--var-1) * 60);
  }
  .cmn_flow .cmn_flow_item:nth-child(3) .cmn_flow_figure .cmn_flow_img {
    width: calc(var(--var-1) * 58.89);
    height: calc(var(--var-1) * 60);
  }
  .cmn_flow .cmn_flow_item:nth-child(4) .cmn_flow_figure .cmn_flow_img {
    width: calc(var(--var-1) * 60);
    height: calc(var(--var-1) * 57.45);
  }
  .cmn_flow .cmn_flow_item:nth-child(2n) .cmn_flow_figure::before {
    content: none;
  }
  .cmn_flow .cmn_flow_img_wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .cmn_flow .cmn_flow_img_wrap .cmn_flow_figure {
    width: calc(var(--var-1) * 100);
    height: calc(var(--var-1) * 100);
    background: var(--cl-blue-light);
    border-radius: 50%;
    position: relative;
  }
  .cmn_flow .cmn_flow_img_wrap .cmn_flow_figure::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: calc(var(--var-1) * -36);
    display: block;
    width: calc(var(--var-1) * 12);
    height: calc(var(--var-1) * 24);
    background: url(../img/cmn/arw_r_b.png) no-repeat top/100%;
  }
  .cmn_flow .cmn_flow_deco {
    position: absolute;
    top: calc(var(--var-1) * -8);
    left: 0;
    color: var(--cl-blue);
    font: 700 calc(var(--var-1) * 16)/1 var(--family-en);
  }
  .cmn_flow .cmn_flow_deco::after {
    counter-increment: number 1;
    content: "0" counter(number);
    display: inline-block;
    font: 700 calc(var(--var-1) * 22)/1 var(--family-en);
  }
  .cmn_flow .cmn_flow_figure_desc {
    margin-top: calc(var(--var-1) * 12);
    font: 900 calc(var(--var-1) * 16)/1.4 var(--family-base);
    text-align: center;
    white-space: nowrap;
  }
  /*
  ========================================================================= */
  /* title タイトル
  ========================================================================= */
  .cmn_ttl {
    background: linear-gradient(135deg, rgba(92, 194, 242, 0.5) 0%, rgba(92, 194, 242, 0.5) 30%, rgba(134, 209, 108, 0.5) 60%, rgba(134, 209, 108, 0.5) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    color: rgba(38, 38, 42, 0.7);
    font: 700 calc(var(--var-1) * 24)/1 var(--family-base);
    text-align: center;
  }
  .cmn_ttl .cmn_ttl_en {
    margin-bottom: calc(var(--var-1) * 14);
    background: linear-gradient(135deg, rgb(92, 194, 242) 0%, rgb(92, 194, 242) 30%, rgb(134, 209, 108) 60%, rgb(134, 209, 108) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    font: 700 calc(var(--var-1) * 16)/1 var(--family-en);
  }
  /*
  ========================================================================= */
  /* text テキスト
  ========================================================================= */
  /*
  ========================================================================= */
  /* list リスト
  ========================================================================= */
  /*
  ========================================================================= */
  /* table テーブル
  ========================================================================= */
  /*
  ========================================================================= */
  /* tel 電話番号
  ========================================================================= */
  .tel .tel_number {
    font: 700 calc(var(--var-1) * 27)/1 var(--family-base);
    letter-spacing: 0.04em;
  }
  .tel .tel_number em {
    font-size: calc(var(--var-1) * 17);
  }
  .tel img {
    display: block;
    width: calc(var(--var-1) * 286);
    height: calc(var(--var-1) * 16);
    margin-top: calc(var(--var-1) * 8);
  }
  /*
  ========================================================================= */
  /* times 営業時間・定休日
  ========================================================================= */
  /*
  ========================================================================= */
  /* btn ボタンの設計 
  ========================================================================= */
  .cmn_btn {
    display: block;
    padding: calc(var(--var-1) * 12) 0;
    background: var(--cl-white);
    color: var(--cl-blue);
    font: 700 calc(var(--var-1) * 16)/1 var(--family-base);
    text-align: center;
    position: relative;
  }
  .cmn_btn::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: calc(var(--var-1) * 8);
    display: block;
    width: calc(var(--var-1) * 18);
    height: calc(var(--var-1) * 18);
    background: url(../img/cmn/arw_r.png) no-repeat top/100%;
    transform: translateY(calc(var(--var-1) * 1));
  }
}
/* //////////////////////////////////////////////////////////////////////////////////////////////////

共通コンポーネント

////////////////////////////////////////////////////////////////////////////////////////////////// */
/*
========================================================================= */
/*  breadcrumb(パンくずリスト)
========================================================================= */
.breadcrumb {
  position: relative;
}
.breadcrumb .inner .breadcrumb_list {
  padding-top: calc(var(--var-1) * 10);
  position: absolute;
  gap: calc(var(--var-1) * 24);
  z-index: 100;
  font-size: calc(var(--var-1) * 14);
}
.breadcrumb .inner .breadcrumb_list .breadcrumb_top a {
  transition: 0.3s;
}
.breadcrumb .inner .breadcrumb_list .breadcrumb_top a:hover {
  color: var(--cl-must);
}
.breadcrumb .inner .breadcrumb_list .breadcrumb_item_secondary,
.breadcrumb .inner .breadcrumb_list .breadcrumb_third {
  color: var(--cl-must);
}
.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;
  }
  .breadcrumb .inner .breadcrumb_list {
    width: 84%;
    position: absolute;
    padding-top: calc(var(--var-1) * 10);
    gap: calc(var(--var-1) * 24);
    z-index: 100;
    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-must);
  }
  .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 {
    margin-top: calc(var(--var-1) * 40);
    font-size: calc(var(--var-1) * 30);
    font-weight: 700;
    text-align: center;
  }
}
/*
========================================================================= */
/*  copy
========================================================================= */
.copy {
  margin-top: calc(var(--var-1) * 40);
  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(--cl-blue);
}