@charset "UTF-8";
.section h3:first-child {
  margin-bottom: 24px;
}

.section hr {
  margin-bottom: 60px;
  margin-top: 60px;
  max-width: 1280px;
}

@media (min-width: 768px) {
  .section hr {
    margin-bottom: 100px;
    margin-top: 100px;
  }
}
.section_bg {
  background: var(--BackGroundColor);
}

.section_bg .box_bg {
  background: #fff;
}

.section_bg .box_bg .box_bg {
  background: var(--BackGroundColor);
}

.section_bg .box_bg .box_bg .box_bg {
  background: #fff;
}

.box_bg {
  background: var(--BackGroundColor);
}

.box_bg .box_bg {
  background: #fff;
}

.box_bg .box_bg .box_bg {
  background: var(--BackGroundColor);
}

.box_border {
  border: solid 1px var(--beige-70);
}

.box_border .box_bg {
  background: var(--BackGroundColor);
}

.section_bg .box_border .box_bg {
  background: var(--BackGroundColor);
}

.box_bg,
.box_border {
  border-radius: 4px;
  margin-top: 0;
  margin-bottom: 40px;
  padding: 24px 16px;
}

.box_bg:last-child,
.box_border:last-child {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .box_bg,
  .box_border {
    margin-bottom: 50px;
    padding: 50px;
  }
}
.section .box_bg:first-child,
.section_bg .box_bg:first-child,
.section .box_border:first-child,
.section_bg .box_border:first-child {
  margin-top: 24px;
}

.box_bg ul:first-child,
.box_bg ol:first-child,
.box_bg dl:first-child,
.box_bg table:first-child,
.box_bg p:first-child,
.box_bg h3:first-child,
.box_bg h4:first-child,
.box_bg h5:first-child,
.box_bg h6:first-child,
.box_border ul:first-child,
.box_border ol:first-child,
.box_border dl:first-child,
.box_border table:first-child,
.box_border p:first-child,
.box_border h3:first-child,
.box_border h4:first-child,
.box_border h5:first-child,
.box_border h6:first-child {
  margin-top: 0;
}

.row.sp_col_2 .col_2 .box_bg,
.row.sp_col_2 .col_2 .box_border,
.row.sp_col_2 .col_3 .box_bg,
.row.sp_col_2 .col_3 .box_border,
.row.sp_col_2 .col_4 .box_bg,
.row.sp_col_2 .col_4 .box_border,
.row.sp_col_2 .col_5 .box_bg,
.row.sp_col_2 .col_5 .box_border,
.row.sp_col_2 .col_6 .box_bg,
.row.sp_col_2 .col_6 .box_border {
  height: 100%;
}

.row.sp_col_2 .col_2 .box_bg .box_bg,
.row.sp_col_2 .col_2 .box_bg .box_border,
.row.sp_col_2 .col_2 .box_border .box_bg,
.row.sp_col_2 .col_2 .box_border .box_border,
.row.sp_col_2 .col_3 .box_bg .box_bg,
.row.sp_col_2 .col_3 .box_bg .box_border,
.row.sp_col_2 .col_3 .box_border .box_bg,
.row.sp_col_2 .col_3 .box_border .box_border,
.row.sp_col_2 .col_4 .box_bg .box_bg,
.row.sp_col_2 .col_4 .box_bg .box_border,
.row.sp_col_2 .col_4 .box_border .box_bg,
.row.sp_col_2 .col_4 .box_border .box_border,
.row.sp_col_2 .col_5 .box_bg .box_bg,
.row.sp_col_2 .col_5 .box_bg .box_border,
.row.sp_col_2 .col_5 .box_border .box_bg,
.row.sp_col_2 .col_5 .box_border .box_border,
.row.sp_col_2 .col_6 .box_bg .box_bg,
.row.sp_col_2 .col_6 .box_bg .box_border,
.row.sp_col_2 .col_6 .box_border .box_bg,
.row.sp_col_2 .col_6 .box_border .box_border {
  height: auto;
}

@media (min-width: 768px) {
  .row .col_2 .box_bg,
  .row .col_2 .box_border,
  .row .col_3 .box_bg,
  .row .col_3 .box_border,
  .row .col_4 .box_bg,
  .row .col_4 .box_border,
  .row .col_5 .box_bg,
  .row .col_5 .box_border,
  .row .col_6 .box_bg,
  .row .col_6 .box_border {
    height: 100%;
  }
  .row .col_2 .box_bg .box_bg,
  .row .col_2 .box_bg .box_border,
  .row .col_2 .box_border .box_bg,
  .row .col_2 .box_border .box_border,
  .row .col_3 .box_bg .box_bg,
  .row .col_3 .box_bg .box_border,
  .row .col_3 .box_border .box_bg,
  .row .col_3 .box_border .box_border,
  .row .col_4 .box_bg .box_bg,
  .row .col_4 .box_bg .box_border,
  .row .col_4 .box_border .box_bg,
  .row .col_4 .box_border .box_border,
  .row .col_5 .box_bg .box_bg,
  .row .col_5 .box_bg .box_border,
  .row .col_5 .box_border .box_bg,
  .row .col_5 .box_border .box_border,
  .row .col_6 .box_bg .box_bg,
  .row .col_6 .box_bg .box_border,
  .row .col_6 .box_border .box_bg,
  .row .col_6 .box_border .box_border {
    height: auto;
  }
}
.googlemap,
.youtube {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: hidden;
}

.googlemap iframe,
.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.section .box_bg:first-child,
.section_bg .box_bg:first-child,
.section .box_border:first-child,
.section_bg .box_border:first-child {
  margin-top: 0;
}

div.clearfix {
  margin-bottom: 40px;
}

@media (min-width: 768px) {
  div.clearfix {
    margin-bottom: 50px;
  }
}
.link_anchor {
  padding: 35px 0 70px;
  position: relative;
  margin-bottom: 0 !important;
  border-top: dashed 1px var(--gray-60);
}

.link_anchor li a {
  font-size: 14px;
  padding: 13px 16px 3px;
  border-bottom: 1px solid var(--gray-70);
  display: block;
  position: relative;
  height: 100%;
  color: var(--textColor);
  -webkit-font-feature-settings: "palt" on;
  font-feature-settings: "palt" on;
  font-weight: 400;
  letter-spacing: 1.28px;
  text-decoration: none;
}

.link_anchor li a:hover {
  color: var(--textColor);
  cursor: pointer;
}

.link_anchor li a:after {
  content: "";
  width: 12px;
  height: 6px;
  position: absolute;
  top: 13px;
  bottom: 0;
  right: 2px;
  margin: auto;
  background: url("data:image/svg+xml,%3Csvg width='12' height='6' viewBox='0 0 12 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.2654 0.765045L6.26541 5.76505C6.1951 5.83527 6.09979 5.87472 6.00041 5.87472C5.90104 5.87472 5.80573 5.83527 5.73541 5.76505L0.735411 0.765045C0.669171 0.693958 0.63311 0.599935 0.634824 0.502784C0.636538 0.405634 0.675894 0.312941 0.744601 0.244235C0.813307 0.175528 0.906 0.136172 1.00315 0.134458C1.1003 0.132744 1.19432 0.168806 1.26541 0.235046L6.00041 4.96942L10.7354 0.235046C10.8065 0.168806 10.9005 0.132744 10.9977 0.134458C11.0948 0.136172 11.1875 0.175528 11.2562 0.244235C11.3249 0.312941 11.3643 0.405634 11.366 0.502784C11.3677 0.599935 11.3317 0.693958 11.2654 0.765045Z' fill='%23999999'/%3E%3C/svg%3E%0A") no-repeat center/contain;
}

@media (min-width: 768px) {
  .link_anchor {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 13px 30px;
  }
  .link_anchor.link_col_3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .link_anchor.link_col_4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 767px) {
  .link_anchor {
    padding: 7px 20px 40px;
    margin-left: -20px;
    margin-right: -20px;
  }
  .link_anchor li:not(:last-child) {
    margin-bottom: 2.5px;
  }
  .link_anchor li a {
    font-size: 14px;
    letter-spacing: 0.12em;
    padding: 8px 12px;
  }
  .link_anchor li a:after {
    top: 8px;
    right: 7px;
  }
}
.under_link_list li a {
  padding: 15px 14px 15px 36px;
  border-radius: 4px;
  background: var(--BackGroundColor);
  display: block;
  text-decoration: none;
  position: relative;
  color: var(--textColor);
  -webkit-font-feature-settings: "halt" on;
  font-feature-settings: "halt" on;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0.72px !important;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  border: 1px solid var(--BackGroundColor);
}

.under_link_list li a:before {
  content: "";
  width: 8px;
  height: 8px;
  background: var(--terracotta-50);
  border-radius: 50%;
  position: absolute;
  top: 24px;
  bottom: auto;
  left: 16px;
  margin: auto;
}

@media (hover: hover) and (pointer: fine) {
  .under_link_list li a:hover {
    opacity: 0.8;
  }
}
@media (max-width: 767px) {
  .under_link_list li:not(:last-child) {
    margin-bottom: 16px;
  }
  .under_link_list li a {
    font-size: 15px;
    letter-spacing: 0.12em !important;
    padding: 12px 16px 12px 36px;
  }
  .under_link_list li a:before {
    left: 15px;
    top: 18px;
    bottom: auto;
  }
}
.ul_circle li,
.ul_dot li,
.ul_check li,
.ul_triangle li,
.ol_circle li {
  position: relative;
  padding-left: 28px;
  line-height: 150%;
  letter-spacing: 0.12em;
}

.ul_circle li:not(:last-child),
.ul_dot li:not(:last-child),
.ul_check li:not(:last-child),
.ul_triangle li:not(:last-child),
.ol_circle li:not(:last-child) {
  margin-bottom: 24px;
}

@media (min-width: 768px) {
  .ul_circle li:not(:last-child),
  .ul_dot li:not(:last-child),
  .ul_check li:not(:last-child),
  .ul_triangle li:not(:last-child),
  .ol_circle li:not(:last-child) {
    margin-bottom: 16px;
  }
}
.ul_circle li:before,
.ul_dot li:before,
.ul_check li:before,
.ul_triangle li:before,
.ol_circle li:before {
  content: "";
  position: absolute;
}

.ul_circle li {
  position: relative;
}

.ul_circle li::before {
  border-radius: 8px;
  background: var(--terracotta-50);
  height: 8px;
  left: 0.3em;
  top: 0.5em;
  width: 8px;
}

.ul_dot li::before {
  border-radius: 50%;
  background: var(--terracotta-50);
  height: 5.3333333333px;
  left: 0.5em;
  top: 11.3333333333px;
  width: 5.3333333333px;
}

.ul_check li::before {
  width: 16px;
  height: 12px;
  left: 0;
  top: 7px;
  background: url("data:image/svg+xml,%3Csvg width='16' height='12' viewBox='0 0 16 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.8313 0.956276L5.83128 10.9563C5.74339 11.0441 5.62425 11.0934 5.50003 11.0934C5.37581 11.0934 5.25667 11.0441 5.16878 10.9563L0.793776 6.58128C0.710976 6.49242 0.665899 6.37489 0.668042 6.25345C0.670184 6.13201 0.719379 6.01615 0.805262 5.93026C0.891146 5.84438 1.00701 5.79519 1.12845 5.79304C1.24989 5.7909 1.36742 5.83598 1.45628 5.91878L5.50003 9.96175L15.1688 0.293777C15.2576 0.210977 15.3752 0.165899 15.4966 0.168042C15.618 0.170184 15.7339 0.21938 15.8198 0.305263C15.9057 0.391146 15.9549 0.507012 15.957 0.62845C15.9592 0.749888 15.9141 0.867417 15.8313 0.956276Z' fill='%239D754D'/%3E%3C/svg%3E%0A") no-repeat center/cover;
}

.ul_triangle li::before {
  left: 7px;
  width: 9px;
  height: 14px;
  background: url("data:image/svg+xml,%3Csvg width='9' height='14' viewBox='0 0 9 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.19219 7.4417L1.94219 13.6917C1.85478 13.7792 1.74337 13.8388 1.62207 13.863C1.50076 13.8871 1.37502 13.8747 1.26076 13.8274C1.14649 13.7801 1.04884 13.6999 0.980175 13.597C0.911506 13.4941 0.874903 13.3732 0.875 13.2495V0.749516C0.874903 0.625831 0.911506 0.504898 0.980175 0.402027C1.04884 0.299156 1.14649 0.218972 1.26076 0.171627C1.37502 0.124281 1.50076 0.111903 1.62207 0.13606C1.74337 0.160216 1.85478 0.219821 1.94219 0.307328L8.19219 6.55733C8.2503 6.61537 8.2964 6.6843 8.32785 6.76018C8.3593 6.83605 8.37549 6.91738 8.37549 6.99952C8.37549 7.08165 8.3593 7.16298 8.32785 7.23885C8.2964 7.31473 8.2503 7.38366 8.19219 7.4417Z' fill='%23756857'/%3E%3C/svg%3E%0A") no-repeat center/contain;
  top: 5px;
}

@media (max-width: 767px) {
  .ul_triangle li {
    padding-left: 26px;
  }
  .ul_triangle li:before {
    width: 7.5px;
    height: 13.75px;
  }
}
.ol_circle {
  counter-reset: ol_circle;
}

.ol_circle li {
  padding-left: 31px;
  position: relative;
  line-height: 150%;
  letter-spacing: normal;
}

.ol_circle li::before,
.ol_circle li:after {
  content: "";
  position: absolute;
}

.ol_circle li::before {
  content: counter(ol_circle, decimal-leading-zero) ". ";
  counter-increment: ol_circle;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-font-feature-settings: "palt" on;
  font-feature-settings: "palt" on;
  font-family: "rogliano", sans-serif;
  font-weight: 500;
  line-height: 150%;
  color: var(--terracotta-50);
}

@media (max-width: 767px) {
  .ol_circle li:before {
    font-size: 16px;
  }
}
.page_link_list {
  padding: 32px;
  border-radius: 8px;
  background: #000;
  width: calc(100% - 32px);
  margin: auto;
}

.page_link_list:not(:last-child) {
  margin-bottom: 50px;
}

.page_link_list li a {
  text-decoration: none;
  padding: 8px 8px 4px;
  border-bottom: 1px dashed #000;
  display: block;
  position: relative;
}

.page_link_list li a:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 8px;
  margin: auto;
  width: 8px;
  height: 4px;
  background-color: #80765c;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

@media (min-width: 768px) {
  .page_link_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
  }
  .page_link_list:not(:last-child) {
    margin-bottom: 80px;
  }
}
@media (min-width: 768px) {
  ul.list_columns_2 {
    display: grid;
    gap: 16px 24px;
    grid-template-columns: repeat(2, 1fr);
  }
  ul.under_link_list.list_columns_2 {
    gap: 24px 25.5px;
  }
  ul.list_columns_2 li {
    margin: 0 !important;
  }
  ul.list_columns_3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px 24px;
  }
  ul.under_link_list.list_columns_3 {
    gap: 24px 24px;
  }
  ul.list_columns_3 li {
    margin: 0 !important;
  }
  ul.list_columns_4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px 18px;
  }
  ul.list_columns_4 li {
    margin: 0 !important;
  }
}
table {
  width: 100%;
  border-collapse: collapse;
}

table:not(:last-child) {
  margin-bottom: 120px;
}

@media (max-width: 767px) {
  table:not(:last-child) {
    margin-bottom: 40px;
  }
}
table th,
table td {
  line-height: 1.6;
}

table.table_address {
  background: none;
}

table.table_address th,
table.table_address td {
  text-align: left;
  padding: 32px;
  border-bottom: 1px dashed var(--gray-60);
  font-weight: 400;
}

table.table_address th {
  border-bottom: 2px solid var(--gray-60);
  text-align: left;
  width: 32%;
}

@media (max-width: 767px) {
  table.table_address th,
  table.table_address td {
    padding: 15px 10px;
  }
}
table.table_timetable {
  width: 100%;
  table-layout: fixed;
  margin-bottom: 18px;
}

table.table_timetable thead th {
  color: var(--textColor);
  -webkit-font-feature-settings: "halt" on;
  font-feature-settings: "halt" on;
  font-weight: 400;
  padding: 0 0 8px 0;
  border-bottom: 1px solid var(--gray-50);
}

table.table_timetable thead th:first-child {
  width: 137px;
  color: var(--textColor);
}

@media (max-width: 767px) {
  table.table_timetable thead th:first-child {
    width: 110px;
  }
}
table.table_timetable thead th .tiem_ic {
  padding-left: 27.87px;
  position: relative;
}

table.table_timetable thead th .tiem_ic:before {
  content: "";
  width: 18px;
  height: 18px;
  background: url(../img/common/ic_time.svg) no-repeat center/cover;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

@media (max-width: 767px) {
  table.table_timetable thead th .tiem_ic {
    padding-left: 31.87px;
  }
  table.table_timetable thead th .tiem_ic:before {
    left: 6px;
  }
}
table.table_timetable tbody th,
table.table_timetable tbody td {
  -webkit-font-feature-settings: "halt" on;
  font-feature-settings: "halt" on;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0;
  border-bottom: 1px solid var(--gray-50);
}

table.table_timetable tbody th {
  color: var(--textColor);
  padding: 10px 0 13px;
  font-family: "rogliano", sans-serif;
}

@media (max-width: 767px) {
  table.table_timetable tbody th {
    padding: 14px 0 13px;
  }
}
table.table_timetable tbody td {
  color: var(--gray-40);
  padding: 10px 0 13px;
  text-align: center;
}

table.table th,
table.table td {
  font-weight: normal;
  padding: 0.75em 0.35em;
  text-align: center;
}

table.table thead th,
table.table thead td {
  padding: 15px;
  background: var(--beige-90);
  border-top: solid 1px var(--gray-70);
}

table.table thead th:not(:last-child),
table.table thead td:not(:last-child) {
  border-right: dashed 1px var(--gray-70);
}

table.table tbody tr:first-child th,
table.table tbody tr:first-child td {
  border-top: 1px solid var(--gray-70);
}

table.table tbody th {
  background: var(--beige-90);
  padding: 24px 32px;
  text-align: left;
  font-weight: 500;
}

@media (max-width: 767px) {
  table.table tbody th {
    text-align: left;
  }
}
table.table tbody td {
  text-align: left;
  padding-left: clamp(10px, 1.9vw, 24px);
}

table.table tbody th,
table.table tbody td {
  border-bottom: dashed 1px var(--gray-70);
}

table.table tbody th:not(:last-child),
table.table tbody td:not(:last-child) {
  border-right: dashed 1px var(--gray-70);
}

table.table tbody tr:last-child th,
table.table tbody tr:last-child td {
  border-bottom: solid 1px var(--gray-70);
}

@media (max-width: 767px) {
  table.table tbody th,
  table.table tbody td {
    font-size: 14px;
    letter-spacing: 0.56px;
    padding: 16px 24px;
  }
  table.table.typeA tbody th,
  table.table.typeA tbody td,
  table.table.typeA thead th,
  table.table.typeA thead td {
    font-size: 14px;
    letter-spacing: 0.56px;
    padding: 16px 24px;
  }
}
table.typeA tbody tr:nth-child(even) th,
table.typeA tbody tr:nth-child(even) td {
  background: transparent;
}

table.typeA tbody tr:nth-child(odd) th,
table.typeA tbody tr:nth-child(odd) td {
  background: var(--beige-90);
}

table.typeA.access_time_table tr th,
table.typeA.access_time_table tr td {
  border-bottom: 1px solid var(--gray-60) !important;
}

table.typeA.access_time_table tr th {
  border-right: 1px solid var(--gray-60) !important;
}

table.typeA.access_time_table tr td:not(:last-child) {
  border-right: 1px solid var(--gray-60) !important;
}

table.typeA.access_time_table tbody td {
  text-align: center;
  padding: 0.75em;
}

table.th_td_left tbody th,
table.th_td_left tbody td {
  text-align: left;
}

table.th_left tbody th {
  text-align: left;
}

table.td_left tbody td {
  text-align: left;
}

table.td_right tbody td {
  text-align: right;
}

table.td_last_right tbody td:last-child {
  text-align: right;
}

table.table_default:not(.table_fixed) tbody tr th:first-child {
  width: 34%;
}

@media (min-width: 768px) {
  table.table_default:not(.table_fixed) tbody tr th:first-child {
    width: 30.5%;
  }
}
table.table_fee tbody th {
  text-align: left;
}

table.table_fee tbody td:last-child {
  text-align: right;
}

table.table_fixed {
  table-layout: fixed;
}

@media (max-width: 767px) {
  table.table_sp_stack,
  table.table_sp_stack_noborder {
    border-bottom: 1px solid #ddd;
  }
  table.table_sp_stack thead,
  table.table_sp_stack tbody,
  table.table_sp_stack tr,
  table.table_sp_stack th,
  table.table_sp_stack td,
  table.table_sp_stack_noborder thead,
  table.table_sp_stack_noborder tbody,
  table.table_sp_stack_noborder tr,
  table.table_sp_stack_noborder th,
  table.table_sp_stack_noborder td {
    display: block;
    width: auto;
  }
  table.table_sp_stack th,
  table.table_sp_stack_noborder th {
    border-bottom: none;
  }
  table.table_sp_stack td,
  table.table_sp_stack_noborder td {
    border-bottom: none;
  }
  table.table_sp_stack_noborder th {
    border-top-color: #ddd;
    padding-bottom: 0.25em;
  }
  table.table_sp_stack_noborder td {
    border-top: none;
    padding-top: 0.25em;
  }
}
.txt_list .consul {
  padding-right: 7px;
}

.txt_list li {
  color: #242424;
  -webkit-font-feature-settings: "halt" on;
  font-feature-settings: "halt" on;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0.72px;
}

.txt_list li .color {
  color: var(--textColor);
}

@media (min-width: 768px) {
  .txt_list {
    padding-left: 16px;
  }
}
@media (max-width: 767px) {
  .txt_list li:not(:last-child) {
    margin-bottom: 4px;
  }
}
.js-scrollable,
.js-scrollable_pc {
  margin-bottom: 1em;
}

.js-scrollable table,
.js-scrollable_pc table {
  margin-bottom: 10px;
}

@media (max-width: 767px) {
  .js-scrollable table {
    width: auto;
    min-width: 870px;
    margin-bottom: 0;
  }
  .js-scrollable table.table_fixed {
    width: 100%;
  }
}
.js-scrollable_pc table {
  width: auto;
  min-width: 768px;
}

.js-scrollable_pc table.table_fixed {
  width: 100%;
}

@media (min-width: 768px) {
  .js-scrollable_pc table {
    min-width: 1300px;
  }
}
.js-scrollable.scroll-hint {
  overflow-y: hidden !important;
}

.scroll-hint-icon {
  border-radius: 50%;
  width: 96px;
  height: 96px;
  background: rgba(88, 78, 65, 0.7);
  -webkit-box-shadow: 0px 0px 40px rgba(88, 78, 65, 0.2);
          box-shadow: 0px 0px 40px rgba(88, 78, 65, 0.2);
  backdrop-filter: blur(2px);
  top: calc(50% - 40px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.scroll-hint-icon:after {
  top: 20px;
}

.scroll-hint-shadow-wrap:not(:last-child) {
  margin-bottom: 64px;
}

.scroll-hint-shadow-wrap + .scroll-hint-shadow-wrap,
.scroll-hint-shadow-wrap + table {
  margin-top: 65px;
}

@media (min-width: 768px) {
  .scroll-hint-shadow-wrap + .scroll-hint-shadow-wrap,
  .scroll-hint-shadow-wrap + table {
    margin-top: 120px;
  }
}
table + .scroll-hint-shadow-wrap,
table + table {
  margin-top: 65px;
}

@media (min-width: 768px) {
  table + .scroll-hint-shadow-wrap,
  table + table {
    margin-top: 120px;
  }
}
.box_faq:not(:last-child) {
  margin-bottom: 24px;
}

.box_faq .question,
.box_faq .answer {
  position: relative;
}

.box_faq .question::before,
.box_faq .answer::before {
  left: 0;
  letter-spacing: 0;
  line-height: 40px;
  position: absolute;
  text-align: center;
  top: 9px;
  letter-spacing: 0.04em;
  font-style: normal;
  font-weight: 400;
  font-size: 32px;
  line-height: 47px;
}

.box_faq .question::before {
  content: "Q";
  color: var(--terracotta-50);
}

.box_faq .question .faq_title {
  position: relative;
  color: var(--textColor);
  -webkit-font-feature-settings: "halt" on;
  font-feature-settings: "halt" on;
  font-weight: 400;
  font-size: 18px;
  line-height: 150%;
  letter-spacing: 0.12em;
  padding: 22.5px 72px 30px 59px;
  cursor: pointer;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  border-bottom: dashed var(--gray-60) 1px;
}

.box_faq .question .faq_title::before,
.box_faq .question .faq_title::after {
  position: absolute;
  content: "";
  top: 35px;
  right: 0;
  background: var(--gray-40);
  width: 23px;
  height: 1px;
}

.box_faq .question .faq_title::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.box_faq .answer {
  padding: 56px 56px 72px 56px;
  display: none;
}

.box_faq .answer p:not(:last-child) {
  margin-bottom: 32px;
}

.box_faq .answer * + .btnstyle {
  margin-top: 40px;
}

.box_faq.open .question .faq_title::after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

@media (max-width: 767px) {
  .box_faq:not(:last-child) {
    margin-bottom: 16px;
  }
  .box_faq .question .faq_title {
    padding: 20px 36px 20px 40px;
    font-size: 16px;
    line-height: 1.5;
  }
  .box_faq .question:before {
    font-size: 24px;
    top: 50%;
    left: 2px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .box_faq .question .faq_title:before,
  .box_faq .question .faq_title:after {
    content: "";
    top: 44px;
    width: 17.5px;
    right: 7px;
  }
  .box_faq .answer {
    padding: 24px 0 40px;
  }
  .box_faq .answer p:not(:last-child) {
    margin-bottom: 1px;
  }
  .box_faq .answer * + .btnstyle {
    margin-top: 24px;
  }
}
.flow-box {
  margin-bottom: 50px;
}

.flow-box:last-child {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .flow-box {
    margin-bottom: 40px;
  }
  .flow-box:last-child {
    margin-bottom: 0;
  }
}
.flow-block {
  margin-top: 72px;
  position: relative;
  padding-bottom: 72px;
}

@media (min-width: 768px) {
  .flow-block {
    margin-top: 97px;
    padding-bottom: 88px;
  }
}
.flow-block:first-child {
  margin-top: 0;
}

.flow-block:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}

.flow-block::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 17px;
  top: auto;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  background: url("data:image/svg+xml,%3Csvg width='390' height='17' viewBox='0 0 390 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-32.3711 1H179.19C179.743 1 180.271 1.22882 180.649 1.63212L193.598 15.4437C194.388 16.2865 195.726 16.2865 196.516 15.4437L209.464 1.63212C209.842 1.22882 210.312 1 210.865 1C225.729 1 440.453 1 421.145 1' stroke='%23B3B3B3'/%3E%3C/svg%3E%0A") repeat-x center/auto 100%;
}

@media (min-width: 768px) {
  .flow-block::after {
    background: url("data:image/svg+xml,%3Csvg width='1040' height='17' viewBox='0 0 1040 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 1H504.134C504.686 1 505.215 1.22882 505.593 1.63212L518.541 15.4437C519.331 16.2865 520.669 16.2865 521.459 15.4437L534.407 1.63212C534.785 1.22882 535.314 1 535.866 1H1040' stroke='%23B3B3B3'/%3E%3C/svg%3E%0A") no-repeat center/contain;
  }
}
.flow-block:last-child::after,
.flow-block.last::after,
.flow-block:last-child::before,
.flow-block.last::before {
  display: none;
}

.flow-block .title {
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 200%;
  letter-spacing: 0.2em;
  padding: 20px 0 24px;
  border-bottom: dashed 1px var(--gray-70);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (min-width: 768px) {
  .flow-block .title {
    font-size: 20px;
    padding: 10px 0 21px;
  }
}
.flow-block .title::after,
.flow-block .title::before {
  display: none;
}

.flow-block .title .num {
  font-family: "rogliano", sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 150%;
  letter-spacing: 0.06em;
  color: var(--beige-30);
  width: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  /* align-items: center; */
  height: 56px;
  border-radius: 4px;
  background: var(--beige-90);
  margin-right: 20px;
}

@media (min-width: 768px) {
  .flow-block .title .num {
    margin-left: 6px;
    margin-right: 23px;
  }
}
.flow-block .title .number_text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

@media (min-width: 768px) {
  .flow-block .row.col2 {
    display: grid;
    grid-template-columns: auto 360px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 40px;
  }
}
@media (max-width: 767px) {
  .flow-block .box_bg {
    padding: 32px;
  }
}
.home .footer {
  border-top: none;
}

.footer {
  padding-top: 104px;
  background: var(--beige-95);
  overflow: hidden;
}

@media (min-width: 768px) {
  .footer {
    padding-top: 120px;
  }
}
.footer .sec_logo {
  margin: 0 0 70px;
  text-align: center;
}

@media (min-width: 768px) {
  .footer .sec_logo {
    margin: 0 0 76px;
  }
}
@media (max-width: 767px) {
  .footer .row .col_2 + .col_2 {
    margin-top: 47px;
    padding-top: 54px;
    border-top: dashed var(--gray-70) 1px;
  }
}
.footer .row.row_01 {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: dashed var(--gray-70) 1px;
  position: relative;
  padding-bottom: 54px;
  margin-bottom: 50px;
}

@media (min-width: 768px) {
  .footer .row.row_01 {
    padding-bottom: 60px;
    margin-bottom: 80px;
  }
  .footer .row.row_01:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: auto;
    margin: auto;
    width: 1px;
    height: calc(100% - 60px);
    border-left: dashed var(--gray-70) 1px;
  }
}
@media (min-width: 768px) {
  .footer .row.row_01 .col_2 {
    width: 40.5%;
  }
}
.footer .row.row_01 p {
  font-size: 15px;
  line-height: 200%;
  letter-spacing: 0.2em;
}

@media (min-width: 768px) {
  .footer .row.row_01 p {
    font-size: 16px;
  }
}
.footer .row.row_01 p + p {
  margin-top: 16px;
}

.footer .row.row_01 p.footer_shop {
  text-align: center;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.8;
  text-align: center;
  letter-spacing: 0.12em;
  margin-bottom: 30px;
}

.footer .row.row_01 p.footer_shop .sub {
  font-size: 18px;
  letter-spacing: 0.4em;
  display: block;
}

@media (min-width: 768px) {
  .footer .row.row_01 p.footer_shop .sub {
    font-size: 20px;
  }
}
.footer .row.row_01 .footer_table_wrap {
  padding: 32px 10.5px;
  position: relative;
  margin: 0 -10px 0 -10px;
  margin-bottom: 26px;
}

@media (min-width: 768px) {
  .footer .row.row_01 .footer_table_wrap {
    padding: 32px 10.5px;
    margin: 0;
    margin-bottom: 36px;
  }
}
.footer .row.row_01 .footer_table_wrap:before,
.footer .row.row_01 .footer_table_wrap:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 8px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  border-left: solid 1px var(--gray-70);
  border-right: solid 1px var(--gray-70);
}

.footer .row.row_01 .footer_table_wrap:before {
  border-top: solid 1px var(--gray-70);
  top: 0;
  bottom: auto;
}

.footer .row.row_01 .footer_table_wrap:after {
  border-bottom: solid 1px var(--gray-70);
  bottom: 0;
  top: auto;
}

.footer .row.row_01 .footer_table_wrap p {
  font-weight: 400;
  font-size: 14px;
  line-height: 200%;
  letter-spacing: 0.19em;
  padding-left: 0;
}

@media (min-width: 768px) {
  .footer .row.row_01 .footer_table_wrap p {
    padding-left: 7px;
    font-size: 16px;
  }
}
.footer .row.row_02 {
  margin: 41px auto 0 auto;
  position: relative;
}

@media (min-width: 768px) {
  .footer .row.row_02 {
    padding: 41px auto 0 auto;
  }
  .footer .row.row_02:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: auto;
    margin: auto;
    width: 1px;
    height: 100%;
    border-left: dashed var(--gray-70) 1px;
  }
}
@media (min-width: 768px) {
  .footer .row.row_02 .col_2 {
    padding: 0 58px;
    margin: 0;
    width: 50%;
  }
}
@media (max-width: 767px) {
  .footer .row.row_02 .col_2 + .col_2 {
    padding-top: 39px;
  }
}
.footer .footer_access_ttl1 {
  font-weight: 400;
  line-height: 125%;
  letter-spacing: 0.2em;
  color: var(--beige-60);
  font-family: "trajan-pro-3", serif;
  margin-bottom: 20px;
  font-size: 40px;
}

@media (min-width: 768px) {
  .footer .footer_access_ttl1 {
    margin-bottom: 12px;
    font-size: 48px;
  }
}
.footer .footer_access_ttl2 {
  font-size: 16px;
  line-height: 200%;
  letter-spacing: 0.4em;
  color: var(--beige-30);
  margin-bottom: 14px;
}

@media (min-width: 768px) {
  .footer .footer_access_ttl2 {
    font-size: 18px;
  }
}
.footer .footer_access_icon {
  font-size: 15px;
  line-height: 150%;
  letter-spacing: 0.12em;
  padding-left: 32px;
  position: relative;
}

@media (min-width: 768px) {
  .footer .footer_access_icon {
    font-size: 16px;
  }
}
.footer .footer_access_icon + .footer_access_icon {
  margin-top: 16px;
}

.footer .footer_access_icon:before {
  content: "";
  display: block;
  position: absolute;
  width: 24px;
  height: 24px;
  top: 1px;
  bottom: auto;
  right: auto;
  left: 0;
  margin: auto;
}

@media (min-width: 768px) {
  .footer .footer_access_icon:before {
    top: 0;
    bottom: 0;
  }
}
.footer .footer_access_icon1:before {
  background: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.25 2.4375H6.75C6.00408 2.4375 5.28871 2.73382 4.76126 3.26126C4.23382 3.78871 3.9375 4.50408 3.9375 5.25V17.25C3.9375 17.9959 4.23382 18.7113 4.76126 19.2387C5.28871 19.7662 6.00408 20.0625 6.75 20.0625H7.875L6.3 22.1625C6.25568 22.2216 6.22343 22.2888 6.2051 22.3604C6.18677 22.432 6.18271 22.5064 6.19315 22.5796C6.2036 22.6527 6.22835 22.723 6.26598 22.7866C6.30362 22.8502 6.35341 22.9057 6.4125 22.95C6.47159 22.9943 6.53884 23.0266 6.6104 23.0449C6.68196 23.0632 6.75642 23.0673 6.82955 23.0568C6.90268 23.0464 6.97303 23.0217 7.03659 22.984C7.10015 22.9464 7.15568 22.8966 7.2 22.8375L9.28125 20.0625H14.7188L16.8 22.8375C16.8895 22.9568 17.0228 23.0358 17.1705 23.0568C17.3181 23.0779 17.4682 23.0395 17.5875 22.95C17.7068 22.8605 17.7857 22.7272 17.8068 22.5796C17.8279 22.4319 17.7895 22.2818 17.7 22.1625L16.125 20.0625H17.25C17.9959 20.0625 18.7113 19.7662 19.2387 19.2387C19.7662 18.7113 20.0625 17.9959 20.0625 17.25V5.25C20.0625 4.50408 19.7662 3.78871 19.2387 3.26126C18.7113 2.73382 17.9959 2.4375 17.25 2.4375ZM6.75 3.5625H17.25C17.6976 3.5625 18.1268 3.74029 18.4432 4.05676C18.7597 4.37323 18.9375 4.80245 18.9375 5.25V11.4375H5.0625V5.25C5.0625 4.80245 5.24029 4.37323 5.55676 4.05676C5.87323 3.74029 6.30245 3.5625 6.75 3.5625ZM17.25 18.9375H6.75C6.30245 18.9375 5.87323 18.7597 5.55676 18.4432C5.24029 18.1268 5.0625 17.6976 5.0625 17.25V12.5625H18.9375V17.25C18.9375 17.6976 18.7597 18.1268 18.4432 18.4432C18.1268 18.7597 17.6976 18.9375 17.25 18.9375ZM17.0625 16.125C17.0625 16.3104 17.0075 16.4917 16.9045 16.6458C16.8015 16.8 16.6551 16.9202 16.4838 16.9911C16.3125 17.0621 16.124 17.0807 15.9421 17.0445C15.7602 17.0083 15.5932 16.919 15.4621 16.7879C15.331 16.6568 15.2417 16.4898 15.2055 16.3079C15.1693 16.126 15.1879 15.9375 15.2589 15.7662C15.3298 15.5949 15.45 15.4485 15.6042 15.3455C15.7583 15.2425 15.9396 15.1875 16.125 15.1875C16.3736 15.1875 16.6121 15.2863 16.7879 15.4621C16.9637 15.6379 17.0625 15.8764 17.0625 16.125ZM8.8125 16.125C8.8125 16.3104 8.75752 16.4917 8.6545 16.6458C8.55149 16.8 8.40507 16.9202 8.23377 16.9911C8.06246 17.0621 7.87396 17.0807 7.6921 17.0445C7.51025 17.0083 7.3432 16.919 7.21209 16.7879C7.08098 16.6568 6.99169 16.4898 6.95551 16.3079C6.91934 16.126 6.93791 15.9375 7.00886 15.7662C7.07982 15.5949 7.19998 15.4485 7.35415 15.3455C7.50832 15.2425 7.68958 15.1875 7.875 15.1875C8.12364 15.1875 8.3621 15.2863 8.53791 15.4621C8.71373 15.6379 8.8125 15.8764 8.8125 16.125Z' fill='%239D754D'/%3E%3C/svg%3E%0A") no-repeat center/contain;
}

.footer .footer_access_icon2:before {
  background: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 2.4375C10.1087 2.4375 8.25991 2.99833 6.68736 4.04907C5.11482 5.09981 3.88917 6.59327 3.16541 8.34059C2.44164 10.0879 2.25227 12.0106 2.62125 13.8656C2.99022 15.7205 3.90096 17.4244 5.2383 18.7617C6.57564 20.099 8.27951 21.0098 10.1345 21.3788C11.9894 21.7477 13.9121 21.5584 15.6594 20.8346C17.4067 20.1108 18.9002 18.8852 19.9509 17.3126C21.0017 15.7401 21.5625 13.8913 21.5625 12C21.5595 9.46478 20.5511 7.03425 18.7584 5.24158C16.9658 3.44891 14.5352 2.44048 12 2.4375ZM12 20.4375C10.3312 20.4375 8.69992 19.9426 7.31238 19.0155C5.92484 18.0884 4.84339 16.7706 4.20477 15.2289C3.56616 13.6871 3.39907 11.9906 3.72463 10.3539C4.05019 8.71721 4.85379 7.21379 6.03379 6.03379C7.2138 4.85378 8.71722 4.05019 10.3539 3.72462C11.9906 3.39906 13.6871 3.56615 15.2289 4.20477C16.7706 4.84338 18.0884 5.92484 19.0155 7.31238C19.9427 8.69992 20.4375 10.3312 20.4375 12C20.435 14.237 19.5453 16.3817 17.9635 17.9635C16.3817 19.5453 14.237 20.435 12 20.4375ZM12.75 7.6875H9.75C9.60082 7.6875 9.45775 7.74676 9.35226 7.85225C9.24677 7.95774 9.1875 8.10082 9.1875 8.25V15.75C9.1875 15.8992 9.24677 16.0423 9.35226 16.1477C9.45775 16.2532 9.60082 16.3125 9.75 16.3125C9.89919 16.3125 10.0423 16.2532 10.1478 16.1477C10.2532 16.0423 10.3125 15.8992 10.3125 15.75V14.0625H12.75C13.5954 14.0625 14.4061 13.7267 15.0039 13.1289C15.6017 12.5311 15.9375 11.7204 15.9375 10.875C15.9375 10.0296 15.6017 9.21887 15.0039 8.6211C14.4061 8.02332 13.5954 7.6875 12.75 7.6875ZM12.75 12.9375H10.3125V8.8125H12.75C13.297 8.8125 13.8216 9.0298 14.2084 9.41659C14.5952 9.80339 14.8125 10.328 14.8125 10.875C14.8125 11.422 14.5952 11.9466 14.2084 12.3334C13.8216 12.7202 13.297 12.9375 12.75 12.9375Z' fill='%239D754D'/%3E%3C/svg%3E%0A") no-repeat center/contain;
}

.footer .footer_map_btn {
  margin-top: 32px;
}

.footer .footer_map_btn a {
  padding: 16px 0px 16px 32px;
  border: 1px solid var(--gray-70);
  border-radius: 2px;
  height: 48px;
  color: var(--beige-30);
  font-size: 16px;
  letter-spacing: 0.06em;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

@media (min-width: 768px) {
  .footer .footer_map_btn a {
    padding: 16px 0px;
  }
}
.footer .footer_map_btn a:hover {
  background: var(--BackGroundColor);
  border: 1px solid var(--beige-40);
}

.footer .footer_map_btn .icon_map {
  position: relative;
}

.footer .footer_map_btn .icon_map:before {
  content: "";
  display: block;
  position: absolute;
  width: 24px;
  height: 24px;
  top: 0;
  bottom: 0;
  right: auto;
  left: -32px;
  margin: auto;
  background: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.6875 7.5C10.6875 7.24041 10.7645 6.98665 10.9087 6.77081C11.0529 6.55497 11.2579 6.38675 11.4977 6.28741C11.7376 6.18807 12.0015 6.16208 12.2561 6.21272C12.5107 6.26336 12.7445 6.38837 12.9281 6.57192C13.1116 6.75548 13.2366 6.98934 13.2873 7.24394C13.3379 7.49854 13.3119 7.76244 13.2126 8.00227C13.1133 8.2421 12.945 8.44708 12.7292 8.5913C12.5133 8.73552 12.2596 8.8125 12 8.8125C11.6519 8.8125 11.3181 8.67422 11.0719 8.42808C10.8258 8.18194 10.6875 7.8481 10.6875 7.5ZM6.1875 7.5C6.1875 5.95843 6.79989 4.48 7.88994 3.38994C8.98 2.29989 10.4584 1.6875 12 1.6875C13.5416 1.6875 15.02 2.29989 16.1101 3.38994C17.2001 4.48 17.8125 5.95843 17.8125 7.5C17.8125 13.0134 12.5053 16.1091 12.2812 16.2384C12.1957 16.2878 12.0987 16.3138 12 16.3138C11.9013 16.3138 11.8043 16.2878 11.7188 16.2384C11.4947 16.1091 6.1875 13.0134 6.1875 7.5ZM7.3125 7.5C7.3125 11.6737 10.9509 14.3897 12 15.0853C13.0481 14.3897 16.6875 11.6747 16.6875 7.5C16.6875 6.2568 16.1936 5.06451 15.3146 4.18544C14.4355 3.30636 13.2432 2.8125 12 2.8125C10.7568 2.8125 9.56451 3.30636 8.68544 4.18544C7.80636 5.06451 7.3125 6.2568 7.3125 7.5ZM18.945 14.0166C18.8752 13.9883 18.8004 13.9744 18.7251 13.9756C18.6498 13.9768 18.5756 13.9931 18.5067 14.0235C18.4378 14.0539 18.3757 14.0979 18.3242 14.1528C18.2726 14.2076 18.2326 14.2723 18.2064 14.3429C18.1803 14.4135 18.1687 14.4887 18.1721 14.5639C18.1756 14.6391 18.1941 14.7129 18.2266 14.7808C18.2591 14.8487 18.305 14.9094 18.3614 14.9593C18.4178 15.0092 18.4836 15.0473 18.555 15.0712C20.2031 15.6797 21.1875 16.4944 21.1875 17.25C21.1875 18.7575 17.4141 20.4375 12 20.4375C6.58594 20.4375 2.8125 18.7575 2.8125 17.25C2.8125 16.4944 3.79688 15.6797 5.445 15.0712C5.51639 15.0473 5.58223 15.0092 5.63864 14.9593C5.69504 14.9094 5.74085 14.8487 5.77336 14.7808C5.80586 14.7129 5.8244 14.6391 5.82787 14.5639C5.83134 14.4887 5.81967 14.4135 5.79355 14.3429C5.76744 14.2723 5.72741 14.2076 5.67583 14.1528C5.62426 14.0979 5.56219 14.0539 5.49332 14.0235C5.42444 13.9931 5.35015 13.9768 5.27486 13.9756C5.19957 13.9744 5.1248 13.9883 5.055 14.0166C2.88375 14.8181 1.6875 15.9666 1.6875 17.25C1.6875 18.5006 2.82938 19.6294 4.90406 20.4263C6.80813 21.1594 9.32812 21.5625 12 21.5625C14.6719 21.5625 17.1919 21.1594 19.0959 20.4263C21.1706 19.6294 22.3125 18.5006 22.3125 17.25C22.3125 15.9666 21.1163 14.8181 18.945 14.0166Z' fill='%23584E41'/%3E%3C/svg%3E%0A") no-repeat center/contain;
}

@media (min-width: 768px) {
  .footer .footer_map_btn .icon_map:before {
    left: -40px;
  }
}
.copyright {
  text-align: left;
  font-size: 12px;
  line-height: 100%;
  letter-spacing: 0.2em;
}

@media (max-width: 767px) {
  .copyright {
    font-size: 10px;
    text-align: center;
    padding: 40px 0 80px;
  }
}
#copyright {
  margin-top: 90px;
  padding: 0 0 80px 0;
  text-align: center;
}

@media (min-width: 768px) {
  #copyright {
    margin-top: 120px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.list_list dd a {
  color: var(--textColor);
  text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {
  .list_list dd a:hover {
    text-decoration: underline;
  }
}
@media (max-width: 767px) {
  .list_list dt {
    padding: 0.5em 0 0;
  }
  .list_list dd {
    padding: 0 0 0.5em;
  }
}
@media (min-width: 768px) {
  .list_list dt {
    float: left;
  }
  .list_list dd {
    padding-left: 120px;
  }
}
.loopslider_wrap {
  overflow: hidden;
}

.loopslider {
  -webkit-animation: loopslider 120s linear infinite;
          animation: loopslider 120s linear infinite;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 2400px;
  height: 100%;
}

@-webkit-keyframes loopslider {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-1200px);
            transform: translateX(-1200px);
  }
}

@keyframes loopslider {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-1200px);
            transform: translateX(-1200px);
  }
}
@media (min-width: 768px) {
  .loopslider {
    -webkit-animation: loopslider 140s linear infinite;
            animation: loopslider 140s linear infinite;
    width: 3840px;
  }
  @-webkit-keyframes loopslider {
    0% {
      -webkit-transform: translateX(0);
              transform: translateX(0);
    }
    100% {
      -webkit-transform: translateX(-1920px);
              transform: translateX(-1920px);
    }
  }
  @keyframes loopslider {
    0% {
      -webkit-transform: translateX(0);
              transform: translateX(0);
    }
    100% {
      -webkit-transform: translateX(-1920px);
              transform: translateX(-1920px);
    }
  }
}
.splide__arrow {
  background: var(--beige-95);
}

.splide__arrow svg {
  fill: none;
  stroke: none;
  stroke-linecap: square;
  stroke-width: unset;
  height: auto;
  width: auto;
  vertical-align: middle;
  opacity: 1;
}

.splide__arrow svg path {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.splide__arrow:hover:not(:disabled) {
  opacity: 1;
}

.splide__arrow:hover:not(:disabled) path {
  fill: var(--terracotta-70);
}

.img_slider {
  max-width: 1040px;
  margin: auto;
}

.img_slider .item img {
  width: 100%;
}

.img_slider .img_slide_thumb {
  margin-top: 55px;
}

.img_slider .img_slide_thumb .splide__track--nav > .splide__list > .splide__slide {
  border: 0;
}

.img_slider .img_slide_thumb img {
  padding: 0 2px;
}

.img_slider .img_slide_main .img_slider_title {
  color: var(--Text-Black);
  -webkit-font-feature-settings: "halt" on;
  font-feature-settings: "halt" on;
  font-size: 16px;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0.64px;
  padding-top: 24px;
  display: inline-block;
}

.img_slider .splide__arrow {
  padding: 0 30px;
  height: 48px;
}

.img_slider .splide__arrow--prev,
.img_slider .splide__arrow--next {
  top: calc(100% - 9px);
  opacity: 1;
}

.img_slider .splide__arrow--prev img,
.img_slider .splide__arrow--next img {
  border-radius: 4px !important;
}

.img_slider .splide__arrow--prev {
  left: auto;
  right: 77px;
}

.img_slider .splide__arrow--next {
  right: 0;
  border-left: solid 1px var(--beige-80);
}

.img_slider .splide__arrow--next img {
  -webkit-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

@media (max-width: 767px) {
  .img_slider .splide__arrow {
    top: calc(100% - 10px);
    padding: 0 27px;
    height: 52px;
  }
  .img_slider .splide__arrow img {
    width: 17px;
  }
  .img_slider .splide__arrow--prev {
    right: 69px;
  }
  .img_slider .img_slide_thumb {
    margin-top: 58px;
  }
  .img_slider .img_slide_main .img_slider_title {
    font-size: 14px;
    letter-spacing: 0.56px;
  }
}
@media (min-width: 768px) {
  .container.w-min {
    width: 1200px;
    max-width: 100%;
  }
}
.container.wide {
  width: 100%;
  max-width: 100%;
}

p.mb_text01 {
  margin-bottom: 39px;
}

p.mb_text02 {
  margin-bottom: 74px;
}

h2.ttl_top {
  padding-top: 0;
  margin: 0;
  text-align: left;
}

h2.ttl_top:before {
  content: none;
}

h2.ttl_top .ja {
  display: block;
}

h2.ttl_top .en {
  font-family: "trajan-pro-3", serif;
}

h2.ttl_fadeup {
  color: var(--terracotta-50);
  position: relative;
  margin: 0 -20px 0 -20px;
  padding: 0 20px;
}

@media (min-width: 768px) {
  h2.ttl_fadeup {
    padding: 0;
    margin: 0;
  }
}
h2.ttl_fadeup:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  z-index: -1;
  -webkit-animation-delay: 0.001s;
          animation-delay: 0.001s;
  max-width: 100%;
  background: none;
}

@media (min-width: 768px) {
  h2.ttl_fadeup:before {
    max-width: none;
  }
}
h2.ttl_fadeup .en {
  font-style: normal;
  font-weight: 400;
  font-size: 64px;
  line-height: 125%;
  font-family: "trajan-pro-3", serif;
  font-size: 48px;
  letter-spacing: 0.17em;
}

@media (min-width: 768px) {
  h2.ttl_fadeup .en {
    font-size: 64px;
  }
}
h2.ttl_fadeup .ja {
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 200%;
  letter-spacing: 0.2em;
  margin-top: 15px;
}

@media (min-width: 768px) {
  h2.ttl_fadeup .ja {
    margin-top: 27px;
  }
}
h2.ttl_fadeup.animated:before {
  -webkit-animation: showTitleFromBottom 1s ease-out;
          animation: showTitleFromBottom 1s ease-out;
}

h2.ttl_fadeup.animation-item:not(.animated):before {
  opacity: 0;
}

.ttl_top.animation-item:not(.animated) span:not([class]) {
  opacity: 0;
}

.ttl_top.animation-item.animated span:not([class]) {
  display: inline-block;
  -webkit-animation: showTextFromBottom 1s backwards;
          animation: showTextFromBottom 1s backwards;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(1) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(2) {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(3) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(4) {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(5) {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(6) {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(7) {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(8) {
  -webkit-animation-delay: 0.9s;
          animation-delay: 0.9s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(9) {
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(10) {
  -webkit-animation-delay: 1.1s;
          animation-delay: 1.1s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(11) {
  -webkit-animation-delay: 1.2s;
          animation-delay: 1.2s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(12) {
  -webkit-animation-delay: 1.3s;
          animation-delay: 1.3s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(13) {
  -webkit-animation-delay: 1.4s;
          animation-delay: 1.4s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(14) {
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(15) {
  -webkit-animation-delay: 1.6s;
          animation-delay: 1.6s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(16) {
  -webkit-animation-delay: 1.7s;
          animation-delay: 1.7s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(17) {
  -webkit-animation-delay: 1.8s;
          animation-delay: 1.8s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(18) {
  -webkit-animation-delay: 1.9s;
          animation-delay: 1.9s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(19) {
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
}

.ttl_top.animation-item.animated .en span:not([class]):nth-child(20) {
  -webkit-animation-delay: 2.1s;
          animation-delay: 2.1s;
}

figure.animation-item:not(.animated) img {
  opacity: 0;
}

figure.animation-item.animated img {
  -webkit-animation: showImageFromBottom 1s ease-out;
          animation: showImageFromBottom 1s ease-out;
}

@-webkit-keyframes showTextFromBottom {
  0% {
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@keyframes showTextFromBottom {
  0% {
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes showTitleFromBottom {
  0% {
    -webkit-transform: translateY(80px);
            transform: translateY(80px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@keyframes showTitleFromBottom {
  0% {
    -webkit-transform: translateY(80px);
            transform: translateY(80px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes showImageFromBottom {
  0% {
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@keyframes showImageFromBottom {
  0% {
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
.sec_news {
  padding: 100px 0 0;
}

@media (min-width: 768px) {
  .sec_news {
    padding: clamp(110px, 8.3333333333vw, 160px) 0 clamp(82.5px, 6.25vw, 120px);
  }
}
@media (max-width: 767px) {
  .sec_news .container {
    max-width: calc(100% - 64px);
  }
}
@media (min-width: 768px) {
  .sec_news .row {
    gap: 2%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (min-width: 768px) {
  .sec_news .row .con_ttl {
    width: 23.5%;
  }
}
.sec_news .row .con_post {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .sec_news .row .con_post {
    margin-top: 0;
    width: 74.5%;
  }
}
.sec_news .con_ttl_inner {
  display: table;
}

@media (min-width: 768px) {
  .sec_news .con_ttl_inner {
    margin: 0 auto 0 50px;
  }
}
.sec_news .ttl_news {
  color: var(--beige-40);
  margin-bottom: 33px;
}

.sec_news .ttl_news .en {
  font-style: normal;
  font-weight: 400;
  font-size: 40px;
  line-height: 100%;
  letter-spacing: 0.16em;
  font-size: 35px;
}

.sec_news .ttl_news .ja {
  font-weight: 400;
  font-size: 18px;
  line-height: 200%;
  letter-spacing: 0.2em;
  margin-top: 5px;
}

.sec_news .btnstyle a {
  font-family: "rogliano", sans-serif;
  color: var(--beige-40) !important;
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 19px;
  border: solid 1px var(--beige-60);
  border-radius: 50vw;
  text-align: left;
  padding: 15px 21px;
  position: relative;
  width: 160px;
  letter-spacing: 0.01em;
}

@media (min-width: 768px) {
  .sec_news .btnstyle a {
    padding: 8px 16px;
    width: 140px;
  }
}
.sec_news .btnstyle a:after {
  content: "";
  display: block;
  position: absolute;
  width: 6px;
  height: 6px;
  right: 21.5px;
  top: 0;
  bottom: 0;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
  left: auto;
  margin: auto;
  border-radius: 50%;
  background: var(--beige-60);
}

@media (min-width: 768px) {
  .sec_news .btnstyle a:after {
    width: 5px;
    height: 5px;
    right: 14.5px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .sec_news .btnstyle a:hover {
    border: solid 1px var(--beige-40);
    color: var(--beige-30) !important;
    background: var(--beige-90);
  }
  .sec_news .btnstyle a:hover:after {
    background: var(--beige-40);
    width: 9px;
    height: 9px;
  }
}
.sec_news .list_list li a {
  border-bottom: solid 1px;
  border-color: var(--gray-80);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 10px 0;
  color: var(--textColor);
  text-decoration: none;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

@media (hover: hover) and (pointer: fine) {
  .sec_news .list_list li a:hover {
    color: var(--terracotta-50);
    border-color: var(--terracotta-50);
  }
}
.sec_news .list_list li a:hover .cat_name:before,
.sec_news .list_list li a:hover .cat_name:after {
  background: var(--terracotta-50);
}

@media (min-width: 768px) {
  .sec_news .list_list li a {
    display: grid;
    padding: 11px 32px 11px 16px;
    grid-template-columns: 81px 146px 1fr;
    grid-template-rows: 1fr;
    gap: 32px;
  }
}
.sec_news .list_list .date {
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  letter-spacing: 0.06em;
  text-align: center;
  font-family: "rogliano", sans-serif;
}

.sec_news .list_list .cat_name {
  text-align: center;
  position: relative;
}

@media (max-width: 767px) {
  .sec_news .list_list .cat_name {
    width: 100px;
    margin-left: 32px;
  }
}
.sec_news .list_list .cat_name:before,
.sec_news .list_list .cat_name:after {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  height: 16px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  background: var(--gray-70);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.sec_news .list_list .cat_name:before {
  left: 0;
  right: auto;
}

.sec_news .list_list .cat_name:after {
  right: 0;
  left: auto;
}

@media (max-width: 767px) {
  .sec_news .list_list .ttl {
    width: 100%;
  }
}
.sec_concept {
  padding: 80px 0 80px;
}

@media (min-width: 768px) {
  .sec_concept {
    padding: clamp(55px, 4.1666666667vw, 80px) 0 0;
  }
}
.sec_concept .row {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .sec_concept .row_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 24px;
  }
  .sec_concept .row_flex > * {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
            flex: 1 0 0%;
    margin: 0;
  }
  .sec_concept .row_flex .pc_col_1 {
    width: 78px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_2 {
    width: 180px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_3 {
    width: 282px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_4 {
    width: 384px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_5 {
    width: 486px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_6 {
    width: 588px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_7 {
    width: 690px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_8 {
    width: 792px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_9 {
    width: 894px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_10 {
    width: 996px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_11 {
    width: 1098px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .sec_concept .row_flex .pc_col_12 {
    width: 1200px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
}
.sec_concept .row_01 .col_02 {
  margin-top: 52px;
}

.sec_concept .row_01 .col_03 {
  margin-top: 65px;
}

@media (min-width: 768px) {
  .sec_concept .row_01 .col_01 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .sec_concept .row_01 .col_02 {
    margin: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .sec_concept .row_01 .col_03 {
    margin: 0;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.sec_concept .row_02 {
  margin-top: 40px;
}

.sec_concept .row_02 .col_02 {
  margin-top: 76px;
}

.sec_concept .row_02 .col_03 {
  margin-top: 58px;
}

@media (min-width: 768px) {
  .sec_concept .row_02 {
    display: grid;
    gap: 24px;
    grid-template-columns: 588px 420px;
    grid-template-rows: 1fr auto;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: -60px;
  }
  .sec_concept .row_02 > * {
    margin: 0;
    width: auto;
  }
  .sec_concept .row_02 .col_01 {
    grid-area: 1/2/2/3;
  }
  .sec_concept .row_02 .col_02 {
    grid-area: 1/1/3/2;
    padding-top: 212px;
    margin-top: 0;
  }
  .sec_concept .row_02 .col_03 {
    grid-area: 2/2/3/3;
    position: relative;
    margin-top: 0;
  }
}
.sec_concept .row_03 {
  margin-top: 45px;
}

@media (min-width: 768px) {
  .sec_concept .row_03 {
    margin-top:100px;
  }
}
@media (min-width: 768px) {
  .sec_concept .row_03 .col_01 {
    padding-top: 105px;
  }
}
@media (max-width: 767px) {
  .sec_concept .row_03 .col_02 {
    margin-top: 88px;
    width: 89%;
  }
}
.sec_concept .ttl_fadeup {
  padding-top: 145px;
}

@media (min-width: 768px) {
  .sec_concept .ttl_fadeup {
    padding-top: 50px;
  }
}
.sec_concept .ttl_fadeup .ja {
  padding-right: 8px;
}

.sec_concept .ttl_fadeup:before {
  background: url(../img/top/sp_top_ttl_bg01.png) no-repeat center top/contain;
  right: auto;
  bottom: auto;
  top: 0;
  left: 0;
  right: 0;
  width: 780px;
  height: 1120px;
}

@media (min-width: 768px) {
  .sec_concept .ttl_fadeup:before {
    width: 880px;
    height: 560px;
    left: -136px;
    top: -86px;
    right: auto;
    background: url(../img/top/top_ttl_bg01.png) no-repeat center;
  }
}
.sec_concept .ttl_concept {
  font-style: normal;
  font-weight: 400;
  font-size: 23px;
  letter-spacing: 0.2em;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  color: var(--beige-40);
  padding: 0;
  border: none;
  text-align: left;
  margin: 0 auto;
  line-height: 2.1;
  white-space: nowrap;
  -webkit-font-feature-settings: "vhal";
          font-feature-settings: "vhal";
}

@media (min-width: 768px) {
  .sec_concept .ttl_concept {
    font-size: 28px;
  }
}
.sec_concept .ttl_concept.ttl_concept01 {
  padding-right: 5px;
  letter-spacing: 0.15em;
  line-height: 2.1;
}

@media (min-width: 768px) {
  .sec_concept .ttl_concept.ttl_concept01 {
    padding-top: 184px;
    padding-right: 32px;
  }
}
.sec_concept .ttl_concept.ttl_concept02 {
  margin: 64px auto auto;
  padding-right: 10px;
  padding-left: 0;
  letter-spacing: 0.15em;
}

@media (min-width: 768px) {
  .sec_concept .ttl_concept.ttl_concept02 {
    margin: 180px 0 0 0;
    padding-left: 20px;
    letter-spacing: 0.2em;
  }
}
.sec_concept .concept_img01 img {
  max-width: 48%;
  width: 336px;
}

@media (min-width: 768px) {
  .sec_concept .concept_img01 img {
    max-width: 360px;
    width: 360px;
    margin-left: -190px;
  }
}
@media (max-width: 767px) {
  .sec_concept .concept_img02 img {
    margin-left: auto;
    margin-right: -20px;
    width: 84%;
    max-width: 588px;
  }
}
@media (min-width: 768px) {
  .sec_concept .concept_img03 {
    position: absolute;
    right: -32px;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    width: 200px;
    top: 255px;
  }
}
@media (max-width: 767px) {
  .sec_concept .concept_img03 img {
    width: 37%;
    padding-right: 2%;
    max-width: 200px;
  }
}
@media (min-width: 768px) {
  .sec_concept .concept_img04 img {
    max-width: 480px;
    margin-left: -94px;
  }
}
.sec_concept .concept_img05 {
  width: 43%;
  margin: 70px 0 0 auto;
}

@media (min-width: 768px) {
  .sec_concept .concept_img05 {
    width: 240px;
    margin: -120px -40px 0 auto;
  }
}
.sec_concept .name_text {
  font-weight: 400;
  font-size: 12px;
  line-height: 150%;
  letter-spacing: 0.12em;
  text-align: right;
  margin-top: 17px;
  line-height: 2.1;
}

@media (min-width: 768px) {
  .sec_concept .name_text {
    font-size: 14px;
  }
}
.sec_concept .name_text .representative {
  display: block;
}

@media (max-width: 767px) {
  .sec_concept .name_text .representative {
    margin-top: -4px;
  }
}
.sec_concept .name_text .name {
  font-size: 18px;
  margin-left: 10px;
}

@media (min-width: 768px) {
  .sec_concept .name_text .name {
    font-size: 20px;
    margin-left: 8px;
  }
}
.sec_about {
  background: -webkit-gradient(linear, left top, left bottom, from(#f2f0ed), color-stop(50.32%, #fbfaf9));
  background: linear-gradient(180deg, #f2f0ed 0%, #fbfaf9 50.32%);
  position: relative;
  z-index: 0;
}

.sec_about .container + .container {
  margin-top: 160px;
}

@media (min-width: 768px) {
  .sec_about .container + .container {
    margin-top: 240px;
  }
}
.sec_about .ttl_fadeup {
  padding-top: 157px;
  margin-bottom: 64px;
}

@media (min-width: 768px) {
  .sec_about .ttl_fadeup {
    padding: 156px 0 0 0;
    margin-bottom: 98px;
  }
}
.sec_about .ttl_fadeup:before {
  background: url(../img/top/sp_top_ttl_bg02.png) no-repeat center top/100%;
  right: auto;
  bottom: auto;
  top: 0;
  left: 0;
  right: 0;
  width: 780px;
  height: 1280px;
  z-index: -1;
}

@media (min-width: 768px) {
  .sec_about .ttl_fadeup:before {
    width: 920px;
    height: 600px;
    top: 0;
    left: -265px;
    right: auto;
    background: url(../img/top/top_ttl_bg02.png) no-repeat center;
  }
}
.sec_about .ttl_point {
  margin-top: 105px;
  margin-bottom: 56px;
  border: none;
  padding: 0;
  text-align: center;
  color: var(--terracotta-50);
}

@media (min-width: 768px) {
  .sec_about .ttl_point {
    margin-top: 126px;
    margin-bottom: 40px;
  }
}
.sec_about .ttl_point .ttl_point_text {
  margin-top: 16px;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 200%;
  letter-spacing: 0.2em;
  display: block;
}

.sec_about .ttl_point_num {
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 200%;
  letter-spacing: 0.2em;
  padding: 0;
  border: none;
  text-align: center;
  margin: 34px 0 34px 0;
}

@media (min-width: 768px) {
  .sec_about .ttl_point_num {
    margin: 16px 0 40px;
    text-align: left;
    font-size: 22px;
  }
}
.sec_about .ttl_point_num .num {
  font-family: "rogliano", sans-serif;
  font-size: 16px;
  line-height: 150%;
  letter-spacing: 0.06em;
  display: block;
  color: var(--terracotta-50);
  margin-bottom: 5px;
}

.sec_about .ttl_point_num:before {
  content: none;
}

.sec_about .row_01 {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

@media (min-width: 768px) {
  .sec_about .row_01 .col_01 {
    padding-left: 147px;
    padding-bottom: 22px;
    width: 68%;
  }
}
.sec_about .row_01 .col_02 {
  margin-top: 102px;
}

@media (min-width: 768px) {
  .sec_about .row_01 .col_02 {
    margin-top: 0;
    width: 28%;
  }
}
@media (min-width: 768px) {
  .sec_about .row_01 .btnstyle a {
    max-width: 318px;
  }
}
@media (min-width: 768px) {
  .sec_about .row_02 {
    width: 900px;
    margin: 0 auto;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.sec_about .row_02 .col_2 {
  margin: 0;
  text-align: left;
}

@media (min-width: 768px) {
  .sec_about .row_02 .col_2 {
    width: 370px;
  }
}
@media (max-width: 767px) {
  .sec_about .row_02 .col_2:not(:first-of-type) {
    margin-top: 40px;
  }
}
.sec_about .row_02 figure {
  text-align: center;
}

@media (max-width: 767px) {
  .sec_about .row_02 figure img {
    max-width: 80%;
  }
}
.sec_about .ul_point li {
  font-style: normal;
  font-weight: 400;
  font-size: 15px;
  line-height: 150%;
  letter-spacing: 0.12em;
  position: relative;
  padding-left: 39px;
}

@media (min-width: 768px) {
  .sec_about .ul_point li {
    font-size: 16px;
    padding-left: 36px;
  }
}
.sec_about .ul_point li:before {
  content: "";
  display: block;
  position: absolute;
  width: 19px;
  height: 14px;
  top: 0;
  bottom: 0;
  right: auto;
  left: 13px;
  margin: auto;
  background: url("data:image/svg+xml,%3Csvg width='19' height='14' viewBox='0 0 19 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.196 0.945969L6.19597 12.946C6.0905 13.0513 5.94753 13.1105 5.79847 13.1105C5.64941 13.1105 5.50644 13.0513 5.40097 12.946L0.150969 7.69597C0.0516087 7.58934 -0.00248353 7.4483 8.76355e-05 7.30258C0.0026588 7.15685 0.0616926 7.01781 0.164752 6.91475C0.267812 6.81169 0.406851 6.75266 0.552577 6.75009C0.698303 6.74752 0.839338 6.80161 0.945969 6.90097L5.79847 11.7525L17.401 0.150969C17.5076 0.0516094 17.6486 -0.00248353 17.7944 8.76344e-05C17.9401 0.0026588 18.0791 0.0616933 18.1822 0.164753C18.2852 0.267813 18.3443 0.406852 18.3469 0.552578C18.3494 0.698303 18.2953 0.839338 18.196 0.945969Z' fill='%239D754D'/%3E%3C/svg%3E%0A") no-repeat center/contain;
}

@media (min-width: 768px) {
  .sec_about .ul_point li:before {
    left: 3px;
  }
}
.sec_about .ul_point li + li {
  margin-top: 16px;
}

.sec_about .splide + .splide {
  margin-top: 20px;
}

@media (min-width: 768px) {
  .sec_about .splide + .splide {
    margin-top: 22px;
  }
}
.sec_about .loopsliderright img {
  width: 4333px !important;
}

@media (min-width: 768px) {
  .sec_about .loopsliderright img {
    width: 5923px !important;
  }
}
.sec_about .loopsliderleft img {
  width: 4372px !important;
}

@media (min-width: 768px) {
  .sec_about .loopsliderleft img {
    width: 5975px !important;
  }
}
.sec_about .loopsliderright2 img {
  width: 3991px !important;
}

@media (min-width: 768px) {
  .sec_about .loopsliderright2 img {
    width: 5454px !important;
  }
}
.sec_signature {
  position: relative;
  z-index: 0;
  background: var(--BackGroundColor);
}

@media (min-width: 768px) {
  .sec_signature {
    padding-bottom: clamp(82.5px, 6.25vw, 120px);
  }
}
@media (min-width: 768px) {
  .sec_signature .container {
    max-width: 1280px;
  }
}
@media (min-width: 768px) {
  .sec_signature .row {
    gap: clamp(75.625px, 5.7291666667vw, 110px);
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .sec_signature .row .con_text {
    padding: 0;
    padding-left: 0;
    width: auto;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin: 0;
  }
  .sec_signature .row .con_img {
    margin: 0;
    width: 37.5%;
  }
  .sec_signature .row.reverse .con_text {
    padding-left: 80px;
    padding-right: 0;
  }
  .sec_signature .row:has(.btnstyle) {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.sec_signature .row .con_text {
  padding: 0 10px;
}

@media (max-width: 767px) {
  .sec_signature .row .con_text p {
    letter-spacing: 0.1em;
    line-height: 260%;
  }
}
.sec_signature .row:not(:last-child) {
  margin-bottom: 120px;
}

@media (min-width: 768px) {
  .sec_signature .row:not(:last-child) {
    margin-bottom: 160px;
  }
}
.sec_signature .ttl_fadeup {
  padding-top: 200px;
  margin-bottom: 64px;
}

@media (min-width: 768px) {
  .sec_signature .ttl_fadeup {
    padding: 200px 0 0 43px;
    margin-bottom: 48px;
  }
}
.sec_signature .ttl_fadeup:before {
  background: url(../img/top/sp_top_ttl_bg03.png) no-repeat center top/100%;
  right: auto;
  bottom: auto;
  top: 0;
  left: 0;
  right: 0;
  width: 780px;
  height: 814px;
  z-index: -1;
}

@media (min-width: 768px) {
  .sec_signature .ttl_fadeup:before {
    width: 880px;
    height: 480px;
    top: 0;
    left: -160px;
    right: auto;
    background: url(../img/top/top_ttl_bg03.png) no-repeat center top;
  }
}
.sec_signature .ttl_signature {
  padding: 0;
  border: none;
  text-align: left;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 200%;
  letter-spacing: 0.2em;
  margin-bottom: 50px;
  margin-top: 53px;
}

@media (min-width: 768px) {
  .sec_signature .ttl_signature {
    margin-top: 0;
    margin-bottom: 80px;
    font-size: 24px;
  }
}
.sec_signature .ttl_signature_num {
  color: var(--terracotta-50);
  display: block;
  font-family: "rogliano", sans-serif;
  font-size: 14px;
  line-height: 150%;
  letter-spacing: 0.06em;
  margin-bottom: 16px;
}

@media (min-width: 768px) {
  .sec_signature .ttl_signature_num {
    font-size: 16px;
  }
}
.sec_signature .ttl_signature .num {
  margin-right: 16px;
}

@media (min-width: 768px) {
  .sec_signature .ttl_signature .num {
    margin-right: 24px;
  }
}
.sec_signature .btnstyle {
  margin-top: 48px;
}

@media (min-width: 768px) {
  .sec_signature .btnstyle {
    margin-top: 80px;
  }
}
.sec_menu {
  position: relative;
  z-index: 0;
  padding-top: 221px;
  padding-bottom: 40px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbfaf9), to(#f2f0ed));
  background: linear-gradient(180deg, #fbfaf9 0%, #f2f0ed 100%);
}

@media (min-width: 768px) {
  .sec_menu {
    padding-top: 280px;
    padding-bottom: 80px;
  }
}
@media (min-width: 768px) {
  .sec_menu .container {
    max-width: 1280px;
  }
}
@media (min-width: 768px) {
  .sec_menu .container.w-trouble {
    max-width: 1044px;
  }
}
@media (min-width: 768px) {
  .sec_menu .row_01 {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .sec_menu .row_01 .con_img,
  .sec_menu .row_01 .con_text {
    width: 50%;
    margin: 0;
  }
  .sec_menu .row_01 .con_text {
    padding-right: 40px;
    padding-left: 11px;
    padding-bottom: 24px;
  }
}
@media (max-width: 767px) {
  .sec_menu .row_01 .menu_img01 {
    max-width: 87%;
  }
}
@media (max-width: 767px) {
  .sec_menu .row_01 p {
    font-size: 14px;
    line-height: 250%;
    letter-spacing: 0.12em;
  }
}
.sec_menu .row_01 .btnstyle {
  margin-top: 62px;
}

@media (min-width: 768px) {
  .sec_menu .row_01 .btnstyle {
    margin-top: 74px;
  }
}
.sec_menu .row_01 .btnstyle + .btnstyle {
  margin-top: 32px;
}

.sec_menu .row_02 {
  margin-top: 79px;
}

@media (min-width: 768px) {
  .sec_menu .row_02 {
    margin-top: 120px;
  }
}
.sec_menu .ttl_fadeup {
  margin-bottom: 64px;
}

@media (min-width: 768px) {
  .sec_menu .ttl_fadeup {
    margin-bottom: 32px;
    margin-top: -12px;
  }
}
.sec_menu .ttl_fadeup:before {
  background: url(../img/top/sp_top_ttl_bg04.png) no-repeat center top/100%;
  right: auto;
  bottom: auto;
  top: -221px;
  left: 0;
  right: 0;
  width: 780px;
  height: 814px;
  z-index: -1;
}

@media (min-width: 768px) {
  .sec_menu .ttl_fadeup:before {
    width: 880px;
    height: 480px;
    top: -240px;
    right: -200px;
    left: auto;
    background: url(../img/top/top_ttl_bg04.png) no-repeat center top;
  }
}
@media (max-width: 767px) {
  .sec_menu .ttl_fadeup .en {
    letter-spacing: 0.13em;
  }
}
.sec_menu .ttl_menu {
  text-align: left;
  border: none;
  padding: 0;
  font-style: normal;
  font-size: 22px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 0.2em;
  margin-top: 47px;
  margin-bottom: 39px;
}

@media (min-width: 768px) {
  .sec_menu .ttl_menu {
    margin: 0;
    font-size: 28px;
    margin-bottom: 64px;
  }
}
.sec_menu .ttl_menu .en {
  display: block;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0.06em;
  font-family: "rogliano", sans-serif;
  color: var(--beige-60);
  margin-bottom: 5px;
  font-size: 14px;
}

@media (min-width: 768px) {
  .sec_menu .ttl_menu .en {
    margin-bottom: 6px;
    font-size: 16px;
  }
}
.sec_menu .bnr_menu {
  background: var(--BackGroundColor);
  border-radius: 4px;
  padding: 24px 24px 36px 32px;
  display: grid;
  margin-bottom: 16px;
  -webkit-transform: translateY(16px);
          transform: translateY(16px);
  text-decoration: none;
  color: var(--textColor);
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  gap: 39px 0;
  -webkit-transition: all 0.45s;
  transition: all 0.45s;
  position: relative;
}

@media (min-width: 768px) {
  .sec_menu .bnr_menu {
    padding: 24px 24px 32px 27px;
    gap: 45px 0;
  }
}
.sec_menu .bnr_menu:after {
  content: "";
  display: block;
  position: absolute;
  width: 12px;
  height: 12px;
  top: auto;
  bottom: 32px;
  right: 32px;
  left: auto;
  margin: auto;
  background: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='3' cy='2' r='2' fill='%23333333'/%3E%3Ccircle cx='9' cy='6' r='2' fill='%23333333'/%3E%3Ccircle cx='3' cy='10' r='2' fill='%23333333'/%3E%3C/svg%3E%0A") no-repeat center/contain;
  -webkit-transition: all 0.45s;
  transition: all 0.45s;
}

@media (hover: hover) and (pointer: fine) {
  .sec_menu .bnr_menu:hover {
    color: var(--terracotta-50);
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
    background: var(--white);
  }
  .sec_menu .bnr_menu:hover:after {
    background: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='3' cy='2' r='2' fill='%239D754D'/%3E%3Ccircle cx='9' cy='6' r='2' fill='%239D754D'/%3E%3Ccircle cx='3' cy='10' r='2' fill='%239D754D'/%3E%3C/svg%3E%0A") no-repeat center/contain;
  }
  .sec_menu .bnr_menu:hover img {
    opacity: 1;
  }
  .sec_menu .bnr_menu:hover .num {
    color: var(--terracotta-50);
  }
  .sec_menu .bnr_menu:hover .bnr_menu_ttl .en {
    color: var(--terracotta-50);
  }
}
.sec_menu .bnr_menu .num {
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 150%;
  letter-spacing: 0.06em;
  font-family: "rogliano", sans-serif;
  color: var(--beige-50);
}

.sec_menu .bnr_menu img {
  border-radius: 4px;
}

.sec_menu .bnr_menu .bnr_menu_ttl {
  grid-area: 2/1/3/3;
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 200%;
  letter-spacing: 0.4em;
  display: block;
}

@media (min-width: 768px) {
  .sec_menu .bnr_menu .bnr_menu_ttl {
    letter-spacing: 0.2em;
    font-size: 20px;
  }
}
.sec_menu .bnr_menu .bnr_menu_ttl small {
  font-size: 12px;
  line-height: 200%;
  letter-spacing: 0.2em;
  margin-top: 4px;
}

@media (min-width: 768px) {
  .sec_menu .bnr_menu .bnr_menu_ttl small {
    margin-top: 0;
    font-size: 14px;
  }
}
.sec_menu .bnr_menu .bnr_menu_ttl .en {
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0.12em;
  color: var(--beige-40);
  display: block;
}

.sec_menu .ttl_trouble {
  margin-bottom: 22px;
  padding: 0;
  border: none;
  margin-top: 96px;
  color: var(--beige-40);
  text-align: center;
}

@media (min-width: 768px) {
  .sec_menu .ttl_trouble {
    margin-top: 160px;
  }
}
.sec_menu .ttl_trouble img {
  margin-bottom: 3px;
}

@media (min-width: 768px) {
  .sec_menu .ttl_trouble img {
    margin-bottom: 5px;
  }
}
.sec_menu .ttl_trouble .ttl_trouble_text {
  font-style: normal;
  font-weight: 400;
  font-size: 22px;
  line-height: 200%;
  letter-spacing: 0.2em;
  display: block;
}

@media (min-width: 768px) {
  .sec_menu .ttl_trouble .ttl_trouble_text {
    font-size: 28px;
  }
}
.sec_menu .tab_wrap {
  margin-top: 57px;
}

@media (min-width: 768px) {
  .sec_menu .tab_wrap {
    margin-top: 67px;
  }
}
.sec_menu .tab_wrap .tab_btn_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 80px;
}

@media (max-width: 767px) {
  .sec_menu .tab_wrap .tab_btn_wrap {
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 48px;
  }
}
.sec_menu .tab_wrap .tab_btn_wrap:before,
.sec_menu .tab_wrap .tab_btn_wrap:after {
  position: static;
  content: "";
  width: auto;
  height: 1px;
  background: #c0b4a5;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.sec_menu .tab_wrap .tab_btn_wrap .tab_btn {
  width: 160px;
  font-size: 16px;
  line-height: 150%;
  letter-spacing: 0.12em;
  text-align: center;
  color: var(--beige-60);
  padding: 26px 0 20px;
  position: relative;
  border: solid 1px transparent;
  border-bottom: solid 1px #c0b4a5;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  border-radius: 16px 16px 0 0;
}

@media (min-width: 768px) {
  .sec_menu .tab_wrap .tab_btn_wrap .tab_btn {
    width: 384px;
    font-size: 20px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .sec_menu .tab_wrap .tab_btn_wrap .tab_btn:hover {
    cursor: pointer;
    color: var(--beige-40);
  }
}
.sec_menu .tab_wrap .tab_btn_wrap .tab_btn.active {
  border: solid 1px #c0b4a5;
  border-bottom: solid 1px transparent;
  color: var(--beige-30);
}

.sec_menu .tab_wrap .tab_btn_wrap .tab_btn:not(:first-child) {
  margin-left: 8px;
  position: relative;
}

@media (min-width: 768px) {
  .sec_menu .tab_wrap .tab_btn_wrap .tab_btn:not(:first-child) {
    margin-left: 24px;
  }
}
.sec_menu .tab_wrap .tab_btn_wrap .tab_btn:not(:first-child):before {
  content: "";
  display: block;
  position: absolute;
  width: 9px;
  height: 1px;
  bottom: -1px;
  left: -9px;
  margin: auto;
  background: #c0b4a5;
}

@media (min-width: 768px) {
  .sec_menu .tab_wrap .tab_btn_wrap .tab_btn:not(:first-child):before {
    width: 25px;
    left: -25px;
  }
}
.sec_menu .tab_wrap .tab_content {
  padding: 0 17px;
}

@media (min-width: 768px) {
  .sec_menu .tab_wrap .tab_content {
    padding: 0 24px;
  }
}
.sec_menu .tab_wrap .tab_content .tab_item {
  display: none;
}

.sec_menu .tab_wrap .tab_content .tab_item.active {
  display: block;
}

.sec_menu .tab_wrap .tab_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 16px 24px;
}

@media (min-width: 768px) {
  .sec_menu .tab_wrap .tab_list {
    gap: 25px 24px;
  }
}
.sec_menu .tab_wrap .tab_list li {
  width: 100%;
}

@media (min-width: 768px) {
  .sec_menu .tab_wrap .tab_list li {
    width: calc((100% - 48px) / 3);
  }
}
.sec_menu .tab_wrap .tab_list li a {
  display: block;
  text-decoration: none;
  border-radius: 4px;
  position: relative;
  color: var(--textColor);
  padding: 20px 23px;
  font-weight: 400;
  font-size: 16px;
  line-height: 150%;
  letter-spacing: 0.12em;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  background: var(--white);
}

@media (min-width: 768px) {
  .sec_menu .tab_wrap .tab_list li a {
    padding: 20px 32px;
    background: var(--BackGroundColor);
    font-size: 18px;
  }
}
.sec_menu .tab_wrap .tab_list li a:after {
  content: "";
  display: block;
  position: absolute;
  width: 8px;
  height: 8px;
  top: 0;
  bottom: 0;
  right: 28px;
  margin: auto;
  background: var(--beige-70);
  border-radius: 50%;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

@media (hover: hover) and (pointer: fine) {
  .sec_menu .tab_wrap .tab_list li a:hover {
    color: var(--terracotta-50);
    background: var(--white);
  }
  .sec_menu .tab_wrap .tab_list li a:hover:after {
    width: 12px;
    height: 12px;
    background: var(--terracotta-60);
  }
}
.sec_voice {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(251, 250, 249, 0)), color-stop(30%, #fbfaf9));
  background: linear-gradient(180deg, rgba(251, 250, 249, 0) 0%, #fbfaf9 30%);
  padding: 118px 0 72px;
}

@media (min-width: 768px) {
  .sec_voice {
    padding: 180px 0 104px;
  }
}
@media (max-width: 767px) {
  .sec_voice .ttl_fadeup {
    padding-left: 40px;
  }
  .sec_voice .ttl_fadeup .en {
    font-size: 40px;
  }
  .sec_voice .ttl_fadeup .ja {
    font-size: 18px;
  }
}
.sec_voice .sliderVoice {
  margin-top: 60px;
}

@media (min-width: 768px) {
  .sec_voice .sliderVoice {
    margin-top: 80px;
  }
}
.sec_voice .ttl_fadeup:before {
  content: none;
}

.sec_voice .splide__arrow {
  padding: 0 30px;
  height: 48px;
  background: none;
}

.sec_voice .splide__arrow--prev,
.sec_voice .splide__arrow--next {
  top: -105px;
  opacity: 1;
}

.sec_voice .splide__arrow--prev img,
.sec_voice .splide__arrow--next img {
  border-radius: 4px !important;
}

.sec_voice .splide__arrow--prev {
  left: auto;
  right: calc(50% - 640px + 100px);
}

.sec_voice .splide__arrow--next {
  right: calc(50% - 640px + 17px);
  border-left: solid 1px var(--beige-80);
}

.sec_voice .splide__arrow--next img {
  -webkit-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

@media (max-width: 767px) {
  .sec_voice .splide__arrow {
    top: -35px;
    padding: 0 27px;
    height: 48px;
  }
  .sec_voice .splide__arrow svg {
    width: 13.33px;
    height: 16px;
  }
  .sec_voice .splide__arrow--prev {
    right: 84px;
  }
  .sec_voice .splide__arrow--next {
    right: 18px;
  }
}
a.voice_parts {
  color: var(--textColor);
  display: block;
  text-decoration: none;
  -webkit-transition: all 0.45s ease-out;
  transition: all 0.45s ease-out;
}

.voice_parts {
  text-decoration: none;
  border-radius: 6px;
  position: relative;
  width: 100%;
  background: url(../img/common/voice_parts_bg.jpg);
  margin-bottom: 63px;
  -webkit-transform: translateY(16px);
          transform: translateY(16px);
  padding: 32px 36px 68px 40px;
  max-width: 330px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media (min-width: 768px) {
  .voice_parts {
    max-width: 384px;
    padding: 36px 48px 54px;
  }
}
.voice_parts:after {
  content: "";
  display: block;
  position: absolute;
  width: 48px;
  height: 48px;
  bottom: -40px;
  right: 100px;
  margin: auto;
  background: url(../img/common/voice_parts_arrow.png) no-repeat center/contain;
}

@media (min-width: 768px) {
  .voice_parts:after {
    width: 56px;
    height: 56px;
    bottom: -47px;
    right: 80px;
  }
}
.voice_parts:before {
  content: "";
  display: block;
  position: absolute;
  width: 12px;
  height: 12px;
  top: auto;
  bottom: 56px;
  right: 40px;
  left: auto;
  margin: auto;
  background: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='3' cy='2' r='2' fill='%239D754D'/%3E%3Ccircle cx='9' cy='6' r='2' fill='%239D754D'/%3E%3Ccircle cx='3' cy='10' r='2' fill='%239D754D'/%3E%3C/svg%3E%0A") no-repeat center/contain;
  -webkit-transition: all 0.45s ease-out;
  transition: all 0.45s ease-out;
}

@media (min-width: 768px) {
  .voice_parts:before {
    bottom: 40px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .voice_parts:hover {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  .voice_parts:hover p {
    color: var(--terracotta-50) !important;
  }
  .voice_parts:hover .voice_parts_text .dotted {
    background: repeating-linear-gradient(to right, var(--terracotta-50) 0 1px, transparent 1px 2px);
    background-repeat: repeat-x;
    background-size: auto 1px;
    /* 高さ1px */
    background-position: 0 100%;
    /* 下端に配置 */
    background-origin: content-box;
    padding-bottom: 2px;
  }
}
.voice_parts p {
  -webkit-transition: all 0.45s ease-out;
  transition: all 0.45s ease-out;
  margin-bottom: 0;
}

.voice_parts_person {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 20px;
}

.voice_parts_person img {
  width: 72px;
}

@media (min-width: 768px) {
  .voice_parts_person img {
    width: 80px;
  }
}
.voice_parts_gender {
  margin-right: 10px;
}

.voice_parts_name {
  font-size: 24px;
  line-height: 100%;
  letter-spacing: 0.2em;
  color: var(--beige-40);
  margin-bottom: 0 !important;
}

@media (max-width: 767px) {
  .voice_parts_name .sama {
    font-size: 18px;
  }
}
.voice_parts_text {
  /* splideの中でdotがうまく表示されないため疑似要素にて */
  font-size: 16px;
  line-height: 250%;
  letter-spacing: 0.2em;
}

@media (max-width: 767px) {
  .voice_parts_text {
    font-weight: 400;
    font-size: 15px;
    line-height: 250%;
    letter-spacing: 0.2em;
  }
}
.voice_parts_text .dotted {
  display: inline;
  /* inline-blockでもOK */
  position: relative;
  background: repeating-linear-gradient(to right, var(--textColor) 0 1px, transparent 1px 2px);
  background-repeat: repeat-x;
  background-size: auto 1px;
  /* 高さ1px */
  background-position: 0 100%;
  /* 下端に配置 */
  background-origin: content-box;
  padding-bottom: 2px;
}

.voice_parts_info {
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0.2em;
  margin-top: 30px !important;
}

@media (max-width: 767px) {
  .voice_parts_info {
    font-size: 15px;
  }
}
.voice_parts_tag {
  display: block;
  letter-spacing: 0.12em;
  margin-top: 16px;
}

.sec_reserve {
  padding: 40px 0 120px 20px;
  background: var(--BackGroundColor);
}

@media (min-width: 768px) {
  .sec_reserve {
    padding: 80px 0 160px;
  }
}
@media (min-width: 768px) {
  .sec_reserve .container {
    width: 790px;
  }
  .sec_reserve .row {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .sec_reserve .row .con_btn {
    padding-bottom: 14px;
    margin-top: 0;
  }
}
.sec_reserve .row .con_btn {
  margin-top: 64px;
}

@media (max-width: 767px) {
  .sec_reserve .btnstyle a {
    padding-left: 5px;
    letter-spacing: 0.2em;
  }
  .sec_reserve .btnstyle + .btnstyle {
    margin-top: 38px;
  }
}
.sec_reserve .ttl_fadeup {
  margin: 0;
  padding: 0;
  margin-bottom: 58px;
}

@media (min-width: 768px) {
  .sec_reserve .ttl_fadeup {
    margin-bottom: 47px;
  }
}
.sec_reserve .ttl_fadeup .en {
  font-size: 48px;
  line-height: 125%;
  letter-spacing: 0.2em;
}

.sec_reserve .ttl_fadeup .ja {
  font-size: 20px;
  line-height: 200%;
  letter-spacing: 0.2em;
  margin-top: 10px;
}

@media (max-width: 767px) {
  .sec_reserve .ttl_fadeup .en {
    font-size: 40px;
  }
  .sec_reserve .ttl_fadeup .ja {
    font-size: 18px;
  }
}
.sec_verticalslider {
  background: -webkit-gradient(linear, left top, left bottom, from(#fbfaf9), to(#f2f0ed));
  background: linear-gradient(180deg, #fbfaf9 0%, #f2f0ed 100%);
}

@media (max-width: 767px) {
  .sec_verticalslider .slider_img {
    display: block;
    position: relative;
    overflow: hidden;
    padding-top: 600px;
  }
  .sec_verticalslider .slider_img img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    -o-object-fit: contain;
       object-fit: contain;
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    width: 100% !important;
    height: 100% !important;
    font-family: "object-fit: cover;";
  }
}
.sec_verticalslider .container {
  max-width: 100%;
  width: 100%;
}

@media (min-width: 1320px) {
  .sec_verticalslider .container {
    padding: 0 clamp(20.625px, 1.5625vw, 30px) 0 clamp(20.625px, 1.5625vw, 30px);
  }
}
.sec_verticalslider .splide__list img {
  width: 100%;
}

.sec_verticalslider .splide__pagination {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0;
  bottom: 21px;
  padding: 0 0 0 17px;
}

.sec_verticalslider .splide__pagination__page {
  width: 6px;
  height: 6px;
  margin: 3px;
  opacity: 1;
  background: var(--beige-40);
}

.sec_verticalslider .splide__pagination__page.is-active {
  background: var(--white);
}

.two_column_design:not(:last-child) {
  margin-bottom: 120px;
}

@media (max-width: 767px) {
  .two_column_design:not(:last-child) {
    margin-bottom: 64px;
  }
  .two_column_design img {
    margin: 0 auto 32px;
    display: block;
  }
  .two_column_design * + h4 {
    margin-top: 20px;
  }
}
@media (min-width: 768px) {
  .two_column_design {
    display: grid;
    grid-template-columns: 507px 485px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .two_column_design.reverse {
    grid-template-columns: 485px 507px;
  }
  .two_column_design.reverse .col:nth-child(1) {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .two_column_design.reverse .col:nth-child(2) {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .two_column_design * + h4 {
    margin-top: 30px;
  }
}
p + .card_design,
ul + .card_design,
ol + .card_design,
table + .card_design {
  margin-top: 80px;
}

@media (max-width: 767px) {
  p + .card_design,
  ul + .card_design,
  ol + .card_design,
  table + .card_design {
    margin-top: 40px;
  }
}
.card_design {
  padding: 40px 32px;
  border-radius: 4px;
  background: var(--BackGroundColor);
  overflow: hidden;
}

@media (min-width: 768px) {
  .card_design {
    padding: 24px;
  }
}
.card_design:not(:last-child) {
  margin-bottom: 64px;
}

.card_design h4 {
  padding-bottom: 26px !important;
  margin-bottom: 15px !important;
  overflow: hidden;
}

@media (min-width: 768px) {
  .card_design h4 {
    padding-bottom: 12px !important;
    padding-bottom: 18px !important;
  }
}
.card_design img + h4 {
  margin-top: 0 !important;
}

.card_design .box_bg {
  background: #fff;
}

.card_design .box_bg * + h4,
.card_design .box_bg * + h5 {
  margin-top: 30px;
}

@media (min-width: 768px) {
  .card_design {
    padding: 40px;
  }
  .card_design:not(:last-child) {
    margin-bottom: 80px;
  }
  .card_design img {
    margin-bottom: 0;
  }
  .card_design .alignright {
    max-width: 36%;
  }
  .card_design .box_bg * + h4,
  .card_design .box_bg * + h5 {
    margin-top: 50px;
  }
}
@media (min-width: 768px) {
  .row.col2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
  .row.col2 .col {
    margin: 0;
  }
  .row.col2.reverse .col:nth-child(1) {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .row.col2.reverse .col:nth-child(2) {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .row.col3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
  }
  .row.col3 .col {
    margin: 0;
  }
  .row.col3 .col.card_design {
    padding: 30px;
  }
  .row.col4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
  }
  .row.col4 .col {
    margin: 0;
  }
  .row.col4 .col.card_design {
    padding: 20px;
  }
}
.mce-content-body .feature_parts {
  padding: 64px 16px;
  position: relative;
}

.mce-content-body .feature_parts:before,
.mce-content-body .feature_parts:after {
  content: "";
  display: block;
  position: absolute;
  width: 8px;
  height: 100%;
  top: 0;
  bottom: 0;
  margin: auto;
  border-top: solid 1px var(--gray-60);
  border-bottom: solid 1px var(--gray-60);
}

@media (max-width: 767px) {
  .mce-content-body .feature_parts:before,
  .mce-content-body .feature_parts:after {
    width: 100%;
    height: 8px;
  }
}
.mce-content-body .feature_parts:before {
  right: auto;
  left: 0;
  border-left: solid 1px var(--gray-60);
}

@media (max-width: 767px) {
  .mce-content-body .feature_parts:before {
    top: 0;
    bottom: auto;
    left: 0;
    right: 0;
    border-right: solid 1px var(--gray-60);
    border-bottom: none;
  }
}
.mce-content-body .feature_parts:after {
  right: 0;
  left: auto;
  border-right: solid 1px var(--gray-60);
}

@media (max-width: 767px) {
  .mce-content-body .feature_parts:after {
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    border-left: solid 1px var(--gray-60);
    border-top: none;
  }
}
.mce-content-body .feature_parts:not(:last-child) {
  margin-bottom: 80px;
}

.mce-content-body .feature_parts .num {
  color: var(--terracotta-50);
  font-family: "rogliano", sans-serif;
  margin-bottom: 16px;
  font-size: 14px;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .mce-content-body .feature_parts .num {
    margin-bottom: 16px;
    font-size: 16px;
  }
}
.mce-content-body .feature_parts h3,
.mce-content-body .feature_parts .ttl {
  padding: 0 0 32px;
  margin-top: 0;
  border-bottom: 1px solid var(--gray-70);
  border-top: 0;
  text-align: left;
  margin-bottom: 32px;
  font-size: 16px !important;
  line-height: 200%;
  letter-spacing: 0.2em;
}

@media (min-width: 768px) {
  .mce-content-body .feature_parts h3,
  .mce-content-body .feature_parts .ttl {
    font-size: 20px !important;
    padding: 0 0 20px;
  }
}
.mce-content-body .feature_parts h3:before,
.mce-content-body .feature_parts h3:after,
.mce-content-body .feature_parts .ttl:before,
.mce-content-body .feature_parts .ttl:after {
  display: none;
}

.mce-content-body .feature_parts h3 .num,
.mce-content-body .feature_parts .ttl .num {
  display: block;
}

.mce-content-body .feature_parts h4 {
  margin-bottom: 13px;
}

.mce-content-body .feature_parts .box_bg {
  background: var(--BackGroundColor);
  border-radius: 4px;
}

.mce-content-body .feature_parts p + .box_bg {
  margin-top: 48px;
}

.mce-content-body .feature_parts .row.col2 h4 {
  padding-bottom: 9px;
}

.mce-content-body .feature_parts .row.col2 h4:before {
  top: 12px;
}

@media (max-width: 767px) {
  .mce-content-body .feature_parts:not(:last-child) {
    margin-bottom: 64px;
  }
  .mce-content-body .feature_parts h3,
  .mce-content-body .feature_parts .ttl {
    font-size: 20px;
    letter-spacing: 1.2px;
  }
  .mce-content-body .feature_parts .box_bg {
    padding: 40px 32px 48px;
    width: calc(100% + 32px);
    margin-left: -16px;
    margin-right: -16px;
  }
  .mce-content-body .feature_parts .box_bg:not(:last-child) {
    margin-bottom: 26px;
  }
  .mce-content-body .feature_parts .box_bg h4 {
    padding: 0 0 20px 30px;
    margin-bottom: 24px;
  }
  .mce-content-body .feature_parts .box_bg h4:before {
    left: 4px;
  }
  .mce-content-body .feature_parts p + .box_bg {
    margin-top: 24px;
  }
}
@media (min-width: 768px) {
  .mce-content-body .feature_parts {
    padding: 32px 88px 40px;
  }
  .mce-content-body .feature_parts.image_layout .row {
    display: grid;
    grid-template-columns: 456px 360px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
@media (max-width: 767px) {
  .mce-content-body .feature_parts.image_layout .row .col + .col {
    margin-top: 32px;
  }
}
body:not(.home) section a {
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  color: var(--textColor);
}

body:not(.home) section a:hover {
  color: var(--textColor);
  text-decoration: none;
}

body:not(.home) section .marker {
  background: var(--terracotta-90);
}

body:not(.home) section .note {
  color: var(--terracotta-50);
}

.btnset {
  border-left: 1px solid #e9e5e2;
  border-bottom: 1px solid #e9e5e2;
  border-radius: 6px;
  /* filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.05)); */
  -webkit-box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  overflow: hidden;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 767px) {
  .btnset {
    max-width: 100%;
    border-left: none;
    border-bottom: none;
    border-top: 1px solid #f2f2f2;
    border-radius: unset;
    /* filter: drop-shadow(0 0 0 rgba(0,0,0,0)); */
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}
.btnset .item {
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .btnset .item {
    width: 33.3333333333%;
    /* width: 50%; */
  }
  .btnset .item.monsin {
    background: #fff;
  }
  .btnset .item.shourei {
    background: #c5b9b1;
  }
  .btnset .item.lineyoyaku {
    background-color: #ffffff;
  }
  .btnset .item.webyoyaku {
    background-color: #b9b7a1;
  }
}
.btnset .item a,
.btnset .item a picture {
  display: block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
}

@media screen and (max-width: 767px) {
  .btnset .item a {
    padding: 16px 0 16px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.btnset .item a picture::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #239191;
  top: 0;
  left: 0;
  opacity: 0;
  mix-blend-mode: plus-lighter;
  display: block;
  -webkit-transition: inherit;
  transition: inherit;
  position: absolute;
  z-index: 1;
}

.btnset .item a img {
  vertical-align: bottom;
  -webkit-transition: inherit;
  transition: inherit;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .btnset .item a:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    /* filter: brightness(120%); */
  }
}
@media screen and (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .btnset .item a:hover picture::before {
    opacity: 0.2;
  }
}
.btnset {
  max-width: 361px;
}

.btnset .tel {
  width: 100%;
}

.btnset .tel a {
  padding: 1em;
  text-align: center;
  background: var(--beige-40);
  color: var(--white);
  width: 100%;
  display: block;
  text-decoration: none;
}

a.bnr_cta {
  background: var(--BackGroundColor);
  border-radius: 4px;
  padding: 21px 20px 36px 32px;
  display: grid;
  margin-bottom: 16px;
  -webkit-transform: translateY(16px);
          transform: translateY(16px);
  text-decoration: none;
  color: var(--textColor);
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  gap: 29px 0;
  -webkit-transition: all 0.45s ease-out;
  transition: all 0.45s ease-out;
  position: relative;
  text-decoration: none;
  max-width: 330px;
  margin: 0 auto;
}

@media (min-width: 768px) {
  a.bnr_cta {
    padding: 19px 22px 34px 32px;
    gap: 40px 0;
    margin-bottom: 0;
  }
}
a.bnr_cta:after {
  content: "";
  display: block;
  position: absolute;
  width: 12px;
  height: 12px;
  top: auto;
  bottom: 32px;
  right: 32px;
  left: auto;
  margin: auto;
  background: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='3' cy='2' r='2' fill='%23333333'/%3E%3Ccircle cx='9' cy='6' r='2' fill='%23333333'/%3E%3Ccircle cx='3' cy='10' r='2' fill='%23333333'/%3E%3C/svg%3E%0A") no-repeat center/contain;
  -webkit-transition: all 0.45s ease-out;
  transition: all 0.45s ease-out;
}

a.bnr_cta .cta_img {
  border-radius: 4px;
  background: var(--beige-90);
  width: 64px;
  height: 64px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 0;
  margin-left: auto;
  -webkit-transition: all 0.45s ease-out;
  transition: all 0.45s ease-out;
}

a.bnr_cta .cta_img svg,
a.bnr_cta .cta_img path {
  -webkit-transition: all 0.45s ease-out;
  transition: all 0.45s ease-out;
}

@media (hover: hover) and (pointer: fine) {
  a.bnr_cta:hover {
    color: var(--terracotta-50) !important;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
    background: var(--white);
  }
  a.bnr_cta:hover:after {
    background: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='3' cy='2' r='2' fill='%239D754D'/%3E%3Ccircle cx='9' cy='6' r='2' fill='%239D754D'/%3E%3Ccircle cx='3' cy='10' r='2' fill='%239D754D'/%3E%3C/svg%3E%0A") no-repeat center/contain;
  }
  a.bnr_cta:hover .bnr_cta_ttl .en {
    color: var(--terracotta-50);
  }
  a.bnr_cta:hover .cta_img {
    background: var(--terracotta-50);
  }
  a.bnr_cta:hover .cta_img path {
    fill: var(--white);
  }
}
a.bnr_cta .bnr_cta_ttl {
  grid-area: 2/1/3/3;
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 200%;
  letter-spacing: 0.4em;
  display: block;
  text-align: left;
}

@media (min-width: 768px) {
  a.bnr_cta .bnr_cta_ttl {
    letter-spacing: 0.2em;
    font-size: 20px;
  }
}
a.bnr_cta .bnr_cta_ttl small {
  font-size: 12px;
  line-height: 200%;
  letter-spacing: 0.2em;
  margin-top: 4px;
}

@media (min-width: 768px) {
  a.bnr_cta .bnr_cta_ttl small {
    margin-top: 0;
    font-size: 14px;
  }
}
a.bnr_cta .bnr_cta_ttl .en {
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0.12em;
  color: var(--beige-40);
  display: block;
}

.list_cta {
  margin: 64px 0 32px;
  border-top: 1px var(--terracotta-70) dashed;
  border-bottom: 1px var(--terracotta-70) dashed;
  padding: 51px 20px 50px;
  margin: 54px 0 32px !important;
  text-align: center;
}

@media (min-width: 768px) {
  .list_cta {
    margin: 84px 0 32px !important;
    padding: 21px 0 21px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.list_cta li {
  color: var(--beige-30);
  line-height: 1;
  font-size: 16px;
}

@media (min-width: 768px) {
  .list_cta li {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding: 0 40px;
    text-align: left;
  }
}
@media (min-width: 768px) {
  .list_cta li:first-child {
    text-align: right;
    border-right: 1px var(--terracotta-70) dashed;
  }
}
@media (max-width: 767px) {
  .list_cta li:has(.tel_cta) {
    background: var(--BackGroundColor);
    border-radius: 4px;
    padding: 27px;
    margin-top: 29px;
  }
}
a.tel_cta {
  font-weight: 400;
  font-size: 24px;
  line-height: 1;
  letter-spacing: 0.12em;
  color: var(--beige-30);
  padding-left: 44px;
  position: relative;
  text-decoration: none;
}

@media (min-width: 768px) {
  a.tel_cta {
    font-size: 28px;
  }
}
a.tel_cta:before {
  content: "";
  display: block;
  position: absolute;
  width: 32px;
  height: 32px;
  top: 0;
  bottom: 0;
  right: auto;
  left: 0;
  margin: auto;
  background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='32' height='32' rx='16' fill='%23B38C65'/%3E%3Cg clip-path='url(%23clip0_4579_134)'%3E%3Cpath d='M12.2836 14.8304L17.2169 19.7636C17.6535 20.2003 18.3615 20.2003 18.7981 19.7636L19.988 18.5738C20.5872 17.9746 21.5584 17.9746 22.1576 18.5738L23.5549 19.9711C24.1465 20.5627 24.1492 21.5225 23.5585 22.115C23.5548 22.1187 23.5512 22.1224 23.5475 22.1261C19.7717 25.9019 16.145 23.4067 12.3692 19.6309C8.59335 15.855 6.09816 12.2284 9.87398 8.45258C9.87764 8.44891 9.88131 8.44525 9.88503 8.44158C10.4776 7.85091 11.4373 7.85352 12.0289 8.44514L13.4735 9.88968C14.0726 10.4888 14.0726 11.4601 13.4735 12.0592L12.2836 13.2491C11.8469 13.6858 11.8469 14.3938 12.2836 14.8304Z' fill='%23F2EBE4'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_4579_134'%3E%3Crect width='16' height='16' fill='white' transform='translate(8 8)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
}

.text_cta {
  color: var(--beige-30);
  font-size: 14px;
  letter-spacing: 0.08em;
  line-height: 200%;
}

@media (min-width: 768px) {
  .text_cta {
    display: table;
    margin: 0 auto;
    font-size: 13px;
    line-height: 2.2;
    letter-spacing: 0.15em;
  }
}
.mce-content-body {
  /* 月間予約カレンダー、複合カレンダー、時間割カレンダー、リストカレンダー、ミックスカレンダー、月リストカレンダー */
  /* 指定日予約状況表示 */
  /* ミックスカレンダーデイリー */
  /* 予約フォーム */
  /* Ver.1.34.2 オプション選択肢料金非表示設定 */
  /* 予約フォーム料金表 */
  /* 予約フォーム　同意書　送信ボタン */
  /* 予約フォーム オプション表示項目 */
  /* 予約確認 キャンセル */
}

.mce-content-body .list-monthly-calendar,
.mce-content-body .mix-calendar,
.mce-content-body .list-calendar,
.mce-content-body .timetbale-calendar,
.mce-content-body .multiple-calendar,
.mce-content-body .monthly-calendar {
  margin-bottom: 1.5em;
}

.mce-content-body .list-calendar h3,
.mce-content-body .timetable-calendar h3,
.mce-content-body .multiple-calendar h3,
.mce-content-body .monthly-calendar h3 {
  font-size: 1.1em;
  margin: 0.5em 0;
}

.mce-content-body .calendar-caption {
  font-size: 1.2em;
}

.mce-content-body .mix-calendar th,
.mce-content-body .timetable-calendar th,
.mce-content-body .multiple-calendar th,
.mce-content-body .monthly-calendar th {
  font-size: 1.1em;
}

.mce-content-body .monthly-prev-next {
  font-size: 1em;
}

.mce-content-body .calendar-time-mark,
.mce-content-body .calendar-mark,
.mce-content-body .calendar-time-disable {
  font-size: 1.4em;
}

.mce-content-body .calendar-time-mark {
  line-height: 1.5em;
}

.mce-content-body .calendar-time-mark .time-string,
.mce-content-body .calendar-mark .article-name {
  font-size: 0.8em;
}

.mce-content-body .day-calendar {
  margin-bottom: 1.5em;
}

.mce-content-body .day-calendar h3 {
  font-size: 1.1em;
}

.mce-content-body .day-calendar th,
.mce-content-body .day-calendar td {
  font-size: 1em;
}

.mce-content-body th.day-left {
  line-height: 2.5em;
}

.mce-content-body td.day-right {
  font-size: 1.5em;
}

.mce-content-body .day-mix-calendar {
  margin-bottom: 1.5em;
}

.mce-content-body .day-mix-calendar th,
.mce-content-body .day-mix-calendar td {
  font-size: 1em;
}

.mce-content-body .mix-dayrow.space-line {
  height: 1em;
}

.mce-content-body .content-form {
  margin-bottom: 1em;
}

.mce-content-body .content-form .form-message {
  margin-bottom: 1em;
  padding: 0.5em;
}

.mce-content-body .content-form fieldset {
  margin: 0 0 1.5em 0;
}

.mce-content-body .content-form legend {
  font-size: 1.1em;
}

.mce-content-body .content-form th {
  font-size: 1em;
  line-height: 2.2em;
}

.mce-content-body .content-form td {
  font-size: 0.9em;
}

.mce-content-body .content-form input,
.mce-content-body .content-form textarea {
  font-size: 1em;
}

.mce-content-body .content-text.small {
  width: 3em;
}

.mce-content-body .input-number {
  margin-right: 1em;
}

.mce-content-body .content-form .booking-seimei {
  width: 3em;
}

.mce-content-body .bill-details td {
  padding-right: 0.5em;
}

.mce-content-body .bill-total,
.mce-content-body .bill-tax {
  padding-right: 1.5em;
}

.mce-content-body #terms-conditions,
.mce-content-body #accedence-box,
.mce-content-body #button-message {
  margin: 1em 0;
}

.mce-content-body .content-form input.booking-option-number {
  width: 3em;
}

.mce-content-body .content-form label.field-item {
  margin-right: 0.4em;
}

.mce-content-body .content-form label.field-item input {
  margin-right: 0.15em;
}

.mce-content-body .content-form select {
  font-size: 1em;
  padding: 0.1em 0.15em;
}

.mce-content-body .subscription-title {
  font-size: 1.2em;
}

.author-box {
  padding: 160px 0;
}
.author-box .author_ttl {
  text-align: center;
  color: #4C4C4C;
  font-size: 28px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 5.6px;
  position: relative;
  padding: 87px 0 0 5px;
  margin-bottom: 120px;
}
.author-box .author_ttl:before {
  content: "";
  width: 104px;
  height: 64px;
  background: url(../img/common/ic_author.svg) no-repeat center/cover;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.author-box .author_h3 {
  color: #4C4C4C;
  font-size: 18px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 3.6px;
  padding: 0 0 15px 36px;
  border-bottom: 1px dashed #B3B3B3;
  margin-bottom: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}
.author-box .author_h3:before {
  content: "";
  width: 28px;
  height: 28px;
  background: url(../img/common/ic_author_h3.svg) no-repeat center/cover;
  position: absolute;
  top: 4px;
  left: 0;
}
.author-box .author_h3 .en {
  width: 76px;
  -webkit-transform: translate(1px, -9px);
          transform: translate(1px, -9px);
}
.author-box h4 {
  color: #584E41;
  font-size: 24px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 4.8px;
  padding: 3px 0 0 0;
  margin-bottom: 20px;
}
.author-box h4 small {
  padding-left: 7px;
  color: #584E41;
  font-size: 16px;
  line-height: 150%;
  letter-spacing: 1.92px;
}
.author-box h5 {
  color: #584E41;
  font-size: 16px;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 1.92px;
  margin-bottom: 10px;
  border-bottom: 1px dashed #CCC;
  padding-bottom: 4px;
}
.author-box .profile-details {
  position: relative;
  margin-bottom: 24px;
}
.author-box .profile-details:before, .author-box .profile-details:after {
  content: "";
  position: absolute;
  border: solid 1px #ccc;
}
.author-box .ul_circle li {
  padding-left: 22px;
  color: #333;
  font-size: 14px;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 1.68px;
}
.author-box .ul_circle li:not(:last-child) {
  margin-bottom: 4px;
}
.author-box .ul_circle li:before {
  background: #C0B4A5;
  width: 6px;
  height: 6px;
  left: 5px;
}
.author-box .btnstyle a {
  max-width: calc(100% - 4px);
  color: #584E41 !important;
  font-size: 16px;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 1.92px;
  text-align: center;
  background: #FBFAF9;
  border: solid 1px #FBFAF9 !important;
  border: 0;
  padding: 0;
  min-height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: 0.2s ease;
  transition: 0.2s ease;
}
.author-box .btnstyle a:after {
  background: url(../img/common/ic_link.svg) no-repeat center/cover;
  right: 17px;
}
@media (hover: hover) and (pointer: fine) {
  .author-box .btnstyle a:hover {
    border-color: #CCC !important;
    background: transparent;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .author-box .btnstyle a:hover:after {
    right: 14px;
    -webkit-transition: 0.2s ease;
    transition: 0.2s ease;
  }
}
@media (max-width: 767px) {
  .author-box {
    padding: 80px 0;
  }
  .author-box .container {
    max-width: calc(100% - 40px) !important;
  }
  .author-box .author_ttl {
    font-size: 20px;
    line-height: 200%;
    letter-spacing: 4px;
    padding-top: 71px;
    margin-bottom: 64px;
  }
  .author-box .author_ttl:before {
    width: 91px;
    height: 56px;
  }
  .author-box .author_h3 {
    font-size: 16px;
    line-height: 200%;
    letter-spacing: 3.2px;
    padding-bottom: 11px;
    margin-bottom: 36px;
  }
  .author-box .author_h3:before {
    top: 2px;
  }
  .author-box h4 {
    font-size: 20px;
    line-height: 200%;
    letter-spacing: 4px;
    text-align: center;
  }
  .author-box h4 small {
    font-size: 14px;
    line-height: 150%;
    letter-spacing: 1.68px;
  }
  .author-box h5 {
    margin-bottom: 18px;
  }
  .author-box figure {
    text-align: center;
    margin-bottom: 13px;
  }
  .author-box .ul_circle li:before {
    left: 7px;
  }
  .author-box .profile-details {
    padding: 44px 15px;
    margin-bottom: 36px;
  }
  .author-box .profile-details:before, .author-box .profile-details:after {
    width: 100%;
    height: 8px;
    left: 0;
    right: 0;
    margin: auto;
  }
  .author-box .profile-details:before {
    border-bottom: 0;
    top: 12px;
  }
  .author-box .profile-details:after {
    border-top: 0;
    bottom: 3px;
  }
  .author-box .profile-details .box:not(:last-child) {
    margin-bottom: 24px;
  }
  .author-box .btnstyle a {
    min-height: 56px;
    max-width: 100%;
  }
}
@media (min-width: 768px) {
  .author-box .container {
    max-width: 1068px !important;
    padding-right: 28px;
  }
  .author-box .row {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 56px;
  }
  .author-box .profile-details {
    padding: 0 48px;
    display: grid;
    grid-template-columns: 278px 1fr;
    gap: 47px;
    margin-right: 4px;
  }
  .author-box .profile-details:before, .author-box .profile-details:after {
    width: 8px;
    height: 100%;
    top: 0;
  }
  .author-box .profile-details:before {
    border-right: 0;
    left: 4px;
  }
  .author-box .profile-details:after {
    border-left: 0;
    right: 4px;
  }
}/*# sourceMappingURL=bond.css.map */