@charset "UTF-8";
/* Style CSS */
/* _setting CSS */
/* Base CSS */
/*
HTML5 reset (base style: html5doctor.com Reset v1.6.1) 
UPDATE 2025.09.04
AUTHOR Aradas Kusumoto
 */
html,
body,
span,
object,
iframe,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
hgroup,
menu,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent;
}

div,
h1,
h2,
h3,
h4,
h5,
h6,
footer,
header,
dl,
dt,
dd,
ol,
ul,
li,
p {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
}

body {
  line-height: 1;
  letter-spacing: 0.05em;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol {
  list-style: none;
}

ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/* _______________________form setting  */
input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input,
textarea,
select {
  *font-size: 100%;
}

input,
textarea,
select,
option,
optgroup {
  vertical-align: middle;
  letter-spacing: 0em;
}

select {
  min-width: 2em;
}

option,
optgroup {
  padding-right: 0.4em;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html,
body {
  background-color: #fff;
  font-size: 62.5%;
}

/* ___________________Font */
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
  font-family: メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Osaka, sans-serif;
}

/* ___________________Link */
a {
  color: #000;
  text-decoration: none;
}
a:hover img {
  opacity: 0.8;
}

body {
  background-image: url(../images/bg_beige.jpg);
  background-repeat: repeat;
}

.ux_btn:hover {
  opacity: 0.8;
  cursor: pointer;
}

/* SP */
@media screen and (max-width: 780px) {
  .pc {
    display: none;
  }

  .common_inner {
    width: 88.60759vw;
    margin: 0 auto;
  }

  #header {
    background-color: #8DC020;
  }
  #header .title {
    font-size: 3.79747vw;
    font-weight: bold;
    line-height: 1.2;
    color: #fff;
    padding: 2.02532vw 2.53165vw 1.51899vw;
  }

  .container {
    min-height: 100vh;
  }

  .step .step_head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding-top: 5.06329vw;
    margin-bottom: 10.12658vw;
  }
  .step .step_head .flow {
    margin-bottom: 15.18987vw;
  }
  .step .step_head .flow .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .step .step_head .flow .item {
    position: relative;
    width: 14.68354vw;
    height: 14.68354vw;
    background-color: #fff;
    border-radius: 50%;
    padding-top: 3.79747vw;
    margin-right: 2.53165vw;
  }
  .step .step_head .flow .item:before, .step .step_head .flow .item:after {
    position: absolute;
    content: '';
    top: calc(50% - 0.5vw);
    right: -1.26582vw;
    width: 1.51899vw;
    height: 1.01266vw;
    background-color: #fff;
  }
  .step .step_head .flow .item:after {
    left: -1.26582vw;
  }
  .step .step_head .flow .item:first-child:after {
    display: none;
  }
  .step .step_head .flow .item:last-child {
    margin-right: 0;
  }
  .step .step_head .flow .item:last-child:before {
    display: none;
  }
  .step .step_head .flow .item span {
    display: block;
    font-size: 3.03797vw;
    font-weight: bold;
    text-align: center;
    color: #8DC020;
  }
  .step .step_head .flow .item .number {
    font-size: 4.55696vw;
    margin-top: 1.26582vw;
  }
  .step .step_head .flow .item.active {
    background-color: #8DC020;
  }
  .step .step_head .flow .item.active span {
    color: #fff;
  }
  .step .step_head .flow .item.active:before, .step .step_head .flow .item.active:after {
    background-color: #8DC020;
  }
  .step .step_head .step_info .name_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .step .step_head .step_info .name_wrap .name_eng {
    display: inline-block;
    font-size: 3.5443vw;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    text-align: center;
    background-color: #8DC020;
    padding: 2.53165vw 2.53165vw 2.02532vw;
    margin-right: 5.06329vw;
  }
  .step .step_head .step_info .name_wrap .name {
    font-size: 7.59494vw;
    font-weight: bold;
    line-height: 1.2;
    padding-top: 1.51899vw;
  }
  .step .step_head .step_info .name_wrap .name_large {
    line-height: 1.4;
    padding-top: 0;
  }
  .step .step_head .step_info .name_wrap .description {
    font-size: 4.05063vw;
    line-height: 1.3;
    color: #7b7b7b;
    margin-top: 2.53165vw;
  }
  .step .step_head .step_info .step_selects {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 7.59494vw;
    gap: 2.53165vw;
  }
  .step .step_head .step_info .step_selects .step_select {
    font-size: 4.05063vw;
    font-weight: bold;
    line-height: 1;
    color: #54A734;
    border: 0.50633vw solid #54A734;
    background-color: #fff;
    padding: 2.53165vw 2.53165vw 2.02532vw;
  }
  .step .step_body {
    padding-bottom: 15.18987vw;
  }
  .step .step_body .choices {
    margin-bottom: 10.12658vw;
  }
  .step .step_body .choices .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2.53165vw;
  }
  .step .step_body .choices .list.list_col2 .item {
    width: 48%;
  }
  .step .step_body .choices .list.list_col2 .btn {
    padding: 1.51899vw 6.32911vw;
  }
  .step .step_body .choices .list .item {
    width: 83.5443vw;
  }
  .step .step_body .choices .list .btn {
    display: block;
    width: 100%;
    height: 100%;
    border: none;
    outline: none;
    padding: 0;
    margin: 0;
    border-radius: 10.12658vw;
    padding: 2.78481vw 6.32911vw;
    background-color: #54A734;
    border: 1.01266vw solid #fff;
    text-align: left;
    -webkit-box-shadow: 0 1.01266vw 0 rgba(56, 125, 30, 0.4);
            box-shadow: 0 1.01266vw 0 rgba(56, 125, 30, 0.4);
  }
  .step .step_body .choices .list .num {
    display: inline-block;
    font-size: 4.05063vw;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    margin-right: 2.53165vw;
  }
  .step .step_body .choices .list .name {
    display: inline-block;
    font-size: 5.06329vw;
    font-weight: bold;
    color: #fff;
  }
  .step .step_body .map {
    position: relative;
    text-align: center;
  }
  .step .step_body .map .image {
    width: 100%;
    height: 100%;
  }
  .step .step_body .map .image .map_img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
  }
  .step .step_body .map .image .marker {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .step .step_body .map .image .marker img {
    position: absolute;
    display: block;
    width: 7.59494vw;
    height: 7.59494vw;
  }
  .step .step_body .map .image .marker_img1 {
    bottom: 2.27848vw;
    right: 5.06329vw;
  }
  .step .step_body .map .image .marker_img2 {
    bottom: 12.65823vw;
    right: 18.22785vw;
  }
  .step .step_body .map .image .marker_img3 {
    bottom: 23.79747vw;
    left: 36.4557vw;
  }
  .step .step_body .map .image .marker_img4 {
    bottom: 41.51899vw;
    right: 28.35443vw;
  }
  .step .step_body .map .image .marker_img5 {
    bottom: 38.48101vw;
    left: 7.59494vw;
  }
  .step .step_body .map .image .marker_img6 {
    bottom: 32.91139vw;
    left: 23.79747vw;
  }
  .step .step_body .map .image .marker_img7 {
    bottom: 13.67089vw;
    left: 36.4557vw;
  }
  .step .step_body .map .image .marker_img8 {
    bottom: 26.83544vw;
    right: 5.56962vw;
  }
  .step .step_body .map .image .marker_img9 {
    top: 4.55696vw;
    right: 33.41772vw;
  }
  .step .step_body .filtered_products .item {
    background-color: #fff;
    width: 86.07595vw;
    border-radius: 5.06329vw;
    padding: 7.59494vw;
    margin-bottom: 8.86076vw;
    -webkit-box-shadow: 0 1.01266vw 0 rgba(56, 125, 30, 0.4);
            box-shadow: 0 1.01266vw 0 rgba(56, 125, 30, 0.4);
  }
  .step .step_body .filtered_products .item .name {
    font-size: 5.06329vw;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.07em;
    color: #444;
    margin-bottom: 6.32911vw;
  }
  .step .step_body .filtered_products .item .image {
    margin: 0 auto;
    width: 45.56962vw;
    aspect-ratio: 1 / 1;
    margin-bottom: 6.32911vw;
  }
  .step .step_body .filtered_products .item .image img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .step .step_body .filtered_products .item .info .description {
    font-size: 4.05063vw;
    line-height: 1.6;
    color: #444;
    margin-bottom: 5.06329vw;
  }
  .step .step_body .product_detail .info {
    margin-bottom: 15.18987vw;
  }
  .step .step_body .product_detail .description {
    font-size: 5.06329vw;
    line-height: 1.6;
    margin-top: 6.32911vw;
  }
  .step .step_body .product_detail .image {
    margin-bottom: 7.59494vw;
  }
  .step .step_body .product_detail .image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .step .step_body .tags {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2.53165vw;
  }
  .step .step_body .tags .tag {
    font-size: 3.5443vw;
    font-weight: bold;
    line-height: 1;
    color: #54A734;
    background-color: #EDF7D8;
    padding: 1.51899vw 2.02532vw;
  }
  .step .step_body .links {
    margin-bottom: 22.78481vw;
  }
  .step .step_body .links .btn {
    display: block;
    width: 83.5443vw;
    margin: 3.79747vw auto;
    height: 100%;
    border: 1.01266vw solid #fff;
    border-radius: 10.12658vw;
    overflow: hidden;
    -webkit-box-shadow: 0 1.01266vw 0 rgba(56, 125, 30, 0.4);
            box-shadow: 0 1.01266vw 0 rgba(56, 125, 30, 0.4);
  }
  .step .step_body .links .btn.btn_gr a {
    background-color: #54A734;
  }
  .step .step_body .links .btn.btn_lgr a {
    background-color: #8DC020;
  }
  .step .step_body .links .btn a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    font-size: 4.55696vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding: 6.07595vw 7.59494vw 5.56962vw;
  }
  .step .step_body .links .btn a::after {
    content: '';
    display: block;
    position: absolute;
    top: calc(50% - 1.8vw);
    right: 5.06329vw;
    width: 5.56962vw;
    height: 4.05063vw;
    background: url(../images/arrow_white.svg) center center/100% no-repeat;
  }
  .step .step_footer .nav_btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 5.06329vw;
    padding-bottom: 5.06329vw;
  }
  .step .step_footer .nav_btns .nav_btn {
    position: relative;
    display: block;
    font-size: 4.05063vw;
    line-height: 1;
    color: #666;
    background-color: #fff;
    border-radius: 2.53165vw;
    padding: 4.55696vw 5.56962vw 4.05063vw 13.16456vw;
    border: none;
  }
  .step .step_footer .nav_btns .nav_btn::after {
    content: '';
    display: block;
    position: absolute;
    top: calc(50% - 1.8vw);
    left: 5.06329vw;
    width: 5.56962vw;
    height: 4.05063vw;
    background: url(../images/arrow.svg) center center/100% no-repeat;
  }
  .step .step_footer .nav_btns .is_disabled {
    opacity: 0.5;
    pointer-events: none;
  }
}
/* PC */
@media screen and (min-width: 781px) {
  .sp {
    display: none;
  }

  /* TAB */
  .common_inner {
    margin: 0 auto;
    padding: 0 20px;
    max-width: 900px;
    width: 100%;
  }

  #header {
    background-color: #8DC020;
  }
  #header .header_inner {
    margin: 0 auto;
    max-width: 1200px;
    width: 100%;
  }
  #header .title {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.2;
    color: #fff;
    padding: 10px;
  }

  .container {
    min-height: 100vh;
  }

  .step {
    padding: 80px 0 160px 0;
  }
  .step .step_head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 20px;
    padding-bottom: 80px;
  }
  .step .step_head .flow .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .step .step_head .flow .item {
    position: relative;
    width: 68px;
    height: 68px;
    background-color: #fff;
    border-radius: 50%;
    padding-top: 15px;
    margin-right: 10px;
  }
  .step .step_head .flow .item:before, .step .step_head .flow .item:after {
    position: absolute;
    content: '';
    top: 50%;
    right: -5px;
    width: 6px;
    height: 4px;
    background-color: #fff;
  }
  .step .step_head .flow .item:after {
    left: -5px;
  }
  .step .step_head .flow .item:first-child:after {
    display: none;
  }
  .step .step_head .flow .item:last-child {
    margin-right: 0;
  }
  .step .step_head .flow .item:last-child:before {
    display: none;
  }
  .step .step_head .flow .item span {
    display: block;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    color: #8DC020;
  }
  .step .step_head .flow .item .number {
    font-size: 18px;
    margin-top: 5px;
  }
  .step .step_head .flow .item.active {
    background-color: #8DC020;
  }
  .step .step_head .flow .item.active span {
    color: #fff;
  }
  .step .step_head .flow .item.active:before, .step .step_head .flow .item.active:after {
    background-color: #8DC020;
  }
  .step .step_head .step_info .name_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .step .step_head .step_info .name_wrap .name_eng {
    display: inline-block;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    text-align: center;
    background-color: #8DC020;
    padding: 10px;
    margin-right: 20px;
  }
  .step .step_head .step_info .name_wrap .name {
    font-size: 38px;
    font-weight: bold;
    line-height: 1.2;
    padding-top: 6px;
  }
  .step .step_head .step_info .name_wrap .name_large {
    line-height: 1.4;
    padding-top: 0;
  }
  .step .step_head .step_info .name_wrap .description {
    width: 100%;
    font-size: 16px;
    line-height: 1.3;
    color: #7b7b7b;
    margin-top: 10px;
  }
  .step .step_head .step_info .step_selects {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
    width: 100%;
  }
  .step .step_head .step_info .step_selects .step_select {
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    color: #54A734;
    border: 1px solid #54A734;
    background-color: #fff;
    padding: 10px;
  }
  .step .step_body {
    position: relative;
  }
  .step .step_body .choices {
    position: relative;
    z-index: 1;
  }
  .step .step_body .choices .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 20px;
  }
  .step .step_body .choices .list.list_col2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    /* 左右2列 */
    width: 100%;
    gap: 20px 0;
    /* 縦の間隔（必要に応じて調整） */
    list-style: none;
    padding: 0;
    margin: 0;
  }
  .step .step_body .choices .list.list_col2 .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: auto;
  }
  .step .step_body .choices .list.list_col2 .item:nth-child(-n+4) {
    grid-column: 1;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .step .step_body .choices .list.list_col2 .item:nth-child(n+6) {
    grid-column: 2;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .step .step_body .choices .list.list_col2 .item.item_order1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .step .step_body .choices .list.list_col2 .item.item_order2 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .step .step_body .choices .list.list_col2 .item.item_order3 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5;
  }
  .step .step_body .choices .list.list_col2 .item.item_order4 {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7;
  }
  .step .step_body .choices .list.list_col2 .item.item_order5 {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9;
  }
  .step .step_body .choices .list.list_col2 .item.item_order6 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .step .step_body .choices .list.list_col2 .item.item_order7 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  .step .step_body .choices .list.list_col2 .item.item_order8 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6;
  }
  .step .step_body .choices .list.list_col2 .item.item_order9 {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8;
  }
  .step .step_body .choices .list.list_col2 .btn {
    padding: 12px 0 12px 25px;
    width: 190px;
  }
  .step .step_body .choices .list .item {
    width: calc( 50% - 10px );
  }
  .step .step_body .choices .list .btn {
    display: block;
    width: 100%;
    height: 100%;
    border: none;
    outline: none;
    padding: 0;
    margin: 0;
    border-radius: 9999px;
    padding: 24px 0 24px 40px;
    background-color: #54A734;
    border: 2px solid #fff;
    text-align: left;
    -webkit-box-shadow: 0 4px 0 rgba(56, 125, 30, 0.4);
            box-shadow: 0 4px 0 rgba(56, 125, 30, 0.4);
  }
  .step .step_body .choices .list .num {
    display: inline-block;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    margin-right: 10px;
  }
  .step .step_body .choices .list .num.num_flat {
    font-size: 24px;
  }
  .step .step_body .choices .list .name {
    display: inline-block;
    font-size: 26px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
  }
  .step .step_body .map {
    z-index: 10;
    width: 51%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    text-align: center;
  }
  .step .step_body .map .image {
    position: relative;
    margin: 0 auto;
    width: 100%;
    height: 100%;
  }
  .step .step_body .map .image .map_img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
  }
  .step .step_body .map .image .marker {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .step .step_body .map .image .marker img {
    position: absolute;
    display: block;
    width: 7%;
    aspect-ratio: 1 / 1;
  }
  .step .step_body .map .image .marker_img1 {
    top: 80%;
    left: 83%;
  }
  .step .step_body .map .image .marker_img2 {
    top: 68%;
    left: 70%;
  }
  .step .step_body .map .image .marker_img3 {
    top: 50%;
    left: 42%;
  }
  .step .step_body .map .image .marker_img4 {
    top: 26%;
    left: 56%;
  }
  .step .step_body .map .image .marker_img5 {
    top: 34%;
    left: 9%;
  }
  .step .step_body .map .image .marker_img6 {
    top: 43%;
    left: 26%;
  }
  .step .step_body .map .image .marker_img7 {
    top: 66%;
    left: 42%;
  }
  .step .step_body .map .image .marker_img8 {
    top: 49%;
    left: 83%;
  }
  .step .step_body .map .image .marker_img9 {
    top: 8%;
    left: 53%;
  }
  .step .step_body .filtered_products .list_wrap {
    padding-right: 35px;
  }
  .step .step_body .filtered_products .list {
    padding-bottom: 10px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
        flex-flow: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 25px;
  }
  .step .step_body .filtered_products .item {
    background-color: #fff;
    width: calc(50% - 13px);
    border-radius: 10px;
    padding: 30px;
    -webkit-box-shadow: 0 4px 0 rgba(56, 125, 30, 0.4);
            box-shadow: 0 4px 0 rgba(56, 125, 30, 0.4);
  }
  .step .step_body .filtered_products .item .name {
    font-size: 22px;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.07em;
    color: #444;
    margin-bottom: 30px;
  }
  .step .step_body .filtered_products .item .image {
    float: left;
    display: block;
    margin-right: 30px;
    margin-bottom: 20px;
    width: 40%;
    aspect-ratio: 1 / 1;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
  .step .step_body .filtered_products .item .image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .step .step_body .filtered_products .item .info .description {
    font-size: 16px;
    line-height: 1.6;
    color: #444;
    margin-bottom: 10px;
  }
  .step .step_body .filtered_products .item .info .tags {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 5px;
  }
  .step .step_body .filtered_products .item .info .tags .tag {
    background-color: #EDF7D8;
    padding: 6px 8px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    color: #54A734;
  }
  .step .step_body .product_detail .image {
    float: left;
    margin-right: 60px;
    margin-bottom: 30px;
    width: 284px;
    height: 280px;
  }
  .step .step_body .product_detail .image img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
  .step .step_body .product_detail .info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    margin-bottom: 80px;
  }
  .step .step_body .product_detail .info .tags {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 20px;
  }
  .step .step_body .product_detail .info .tags .tag {
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    color: #54A734;
    background-color: #EDF7D8;
    padding: 6px 8px;
  }
  .step .step_body .product_detail .description {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.6;
    margin-top: 25px;
  }
  .step .step_body .links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    gap: 16px;
  }
  .step .step_body .links .btn {
    display: block;
    width: 250px;
    height: 100%;
    border: 2px solid #fff;
    border-radius: 99999px;
    overflow: hidden;
    -webkit-box-shadow: 0 4px 0 rgba(56, 125, 30, 0.4);
            box-shadow: 0 4px 0 rgba(56, 125, 30, 0.4);
  }
  .step .step_body .links .btn.btn_gr a {
    background-color: #54A734;
  }
  .step .step_body .links .btn.btn_lgr a {
    background-color: #8DC020;
  }
  .step .step_body .links .btn a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding: 24px 50px 24px 30px;
  }
  .step .step_body .links .btn a::after {
    content: '';
    display: block;
    position: absolute;
    top: calc( 50% - 10px );
    right: 30px;
    width: 20px;
    height: 20px;
    background: url(../images/arrow_white.svg) center center/100% no-repeat;
  }
  .step .step_footer {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 100;
  }
  .step .step_footer .nav_btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 20px;
    padding-bottom: 20px;
    padding-left: 20px;
  }
  .step .step_footer .nav_btns .nav_btn {
    position: relative;
    display: block;
    font-size: 16px;
    line-height: 1;
    color: #666;
    background-color: #fff;
    border-radius: 10px;
    padding: 16px 20px 16px 50px;
    border: none;
  }
  .step .step_footer .nav_btns .nav_btn:hover {
    opacity: 0.8;
  }
  .step .step_footer .nav_btns .nav_btn::after {
    content: '';
    display: block;
    position: absolute;
    top: calc(50% - 10px);
    left: 20px;
    width: 20px;
    height: 20px;
    background: url(../images/arrow.svg) center center/100% no-repeat;
  }
  .step .step_footer .nav_btns .is_disabled {
    opacity: 0.5;
    pointer-events: none;
  }
}
