@charset "UTF-8";
/*==================================================
reset
==================================================*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: 400;
  vertical-align: baseline;
}

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

* {
  font-size: inherit;
  line-height: inherit;
}

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

span {
  line-height: inherit;
  font-size: inherit;
  text-decoration: inherit;
  vertical-align: inherit;
  font-weight: inherit;
}

body {
  -webkit-text-size-adjust: 100%;
}

ol,
ul {
  list-style: none;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

em,
strong,
em *,
strong * {
  font-weight: bold;
}

/*--form初期化--*/
input[type=submit],
button {
  cursor: pointer;
}

button,
input[type=text],
input[type=image],
input[type=password],
input[type=file],
input[type=submit],
input[type=reset],
input[type=button],
input[type=email],
input[type=tel],
textarea {
  font-family: inherit;
}

::placeholder {
  opacity: 1;
}

::-ms-input-placeholder {
  opacity: 1;
}

:-ms-input-placeholder {
  opacity: 1;
}

a {
  transition: opacity 0.2s;
  text-decoration: none;
  border: none;
  color: inherit;
}
@media (hover: hover) and (pointer: fine) {
  a:hover {
    opacity: 0.8;
  }
}

table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  text-align: left;
}

th {
  text-align: left;
}

@media screen and (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
  }
}
@media screen and (max-width: 767px) {
  html,
  body,
  div,
  span,
  applet,
  object,
  iframe,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  blockquote,
  pre,
  a,
  abbr,
  acronym,
  address,
  big,
  cite,
  code,
  del,
  dfn,
  em,
  img,
  ins,
  kbd,
  q,
  s,
  samp,
  small,
  strike,
  strong,
  sub,
  sup,
  tt,
  var,
  b,
  u,
  i,
  center,
  dl,
  dt,
  dd,
  ol,
  ul,
  li,
  fieldset,
  form,
  label,
  legend,
  table,
  caption,
  tbody,
  tfoot,
  thead,
  tr,
  th,
  td,
  article,
  aside,
  canvas,
  details,
  embed,
  figure,
  figcaption,
  footer,
  header,
  hgroup,
  menu,
  nav,
  output,
  ruby,
  section,
  summary,
  time,
  mark,
  audio,
  video {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  button,
  input[type=text],
  input[type=image],
  input[type=password],
  input[type=file],
  input[type=submit],
  input[type=reset],
  input[type=button],
  input[type=email],
  input[type=tel] textarea {
    background: linear-gradient(to bottom, #ffffff 0%, #ffffff 100%);
    border-radius: 0;
    box-shadow: none;
    appearance: none;
  }
  textarea,
  input[type=email],
  input[type=text],
  input[type=image],
  input[type=password] {
    -webkit-appearance: none;
  }
}
/*==================================================
root
==================================================*/
:root {
  --device: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39.772 40'%3E%3Cg transform='translate(-1.461)'%3E%3Cpath d='M92.938,454.183H89.847a.972.972,0,1,0,0,1.944h3.091a.972.972,0,1,0,0-1.944Z' transform='translate(-80.585 -418.7)' fill='%23fff'/%3E%3Cpath d='M39.3,0H8.177A1.935,1.935,0,0,0,6.244,1.933V6.98a.972.972,0,1,0,1.944,0V1.944h31.1V21.849H20.155V13.669a3.349,3.349,0,0,0-3.346-3.346h-12a3.349,3.349,0,0,0-3.346,3.346V36.654A3.349,3.349,0,0,0,4.807,40h12a3.349,3.349,0,0,0,3.346-3.346V27.94a47.575,47.575,0,0,1,14.43,1.094.972.972,0,0,0,.44-1.893,49.448,49.448,0,0,0-6.477-1.059V23.793H39.3a1.935,1.935,0,0,0,1.933-1.933V1.933A1.935,1.935,0,0,0,39.3,0ZM13.95,12.267l-.206.57a.243.243,0,0,1-.228.16h-5.4a.243.243,0,0,1-.228-.16l-.206-.57Zm2.859,25.789h-12a1.4,1.4,0,0,1-1.4-1.4V13.669a1.4,1.4,0,0,1,1.4-1.4h.81L6.061,13.5a2.192,2.192,0,0,0,2.056,1.444h5.4A2.192,2.192,0,0,0,15.572,13.5l.445-1.231h.793a1.4,1.4,0,0,1,1.4,1.4V36.654a1.4,1.4,0,0,1-1.4,1.4ZM26.6,25.934a49.768,49.768,0,0,0-6.449.057v-2.2H26.6Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  --tel: url("data: image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' width='31.954' height='32' viewBox='0 0 31.954 32' %3E%3Cg id='ico-tel' transform='translate(-0.344 0)' %3E%3Cg id='グループ_69' data-name='グループ 69' transform='translate(0.344 0)' %3E%3Cpath id='パス_304' data-name='パス 304' d='M25.611,45.378a3.147,3.147,0,0,0-2.283-1.047,3.255,3.255,0,0,0-2.31,1.04L18.884,47.5c-.176-.095-.351-.182-.52-.27-.243-.122-.473-.236-.669-.358a23.2,23.2,0,0,1-5.558-5.065,13.685,13.685,0,0,1-1.824-2.877c.554-.507,1.067-1.033,1.567-1.54.189-.189.378-.385.567-.574a3.1,3.1,0,0,0,0-4.674L10.6,30.3c-.209-.209-.425-.425-.628-.642-.405-.419-.831-.851-1.27-1.256a3.2,3.2,0,0,0-2.263-.993,3.308,3.308,0,0,0-2.3.993l-.014.014-2.3,2.317A4.941,4.941,0,0,0,.372,33.869a11.84,11.84,0,0,0,.864,5.011A29.08,29.08,0,0,0,6.4,47.5a31.783,31.783,0,0,0,10.583,8.287,16.489,16.489,0,0,0,5.943,1.756c.142.007.29.014.425.014a5.089,5.089,0,0,0,3.9-1.675c.007-.014.02-.02.027-.034a15.353,15.353,0,0,1,1.182-1.222c.29-.277.588-.567.878-.871a3.369,3.369,0,0,0,1.02-2.337,3.246,3.246,0,0,0-1.04-2.317Zm2.418,7.112c-.007,0-.007.007,0,0-.263.284-.534.54-.824.824a17.762,17.762,0,0,0-1.3,1.351,3.256,3.256,0,0,1-2.539,1.074c-.1,0-.209,0-.311-.007a14.649,14.649,0,0,1-5.268-1.58,30,30,0,0,1-9.969-7.807,27.419,27.419,0,0,1-4.863-8.1A9.643,9.643,0,0,1,2.2,34.018a3.1,3.1,0,0,1,.932-2.006l2.3-2.3a1.535,1.535,0,0,1,1.027-.48,1.445,1.445,0,0,1,.986.473l.02.02c.412.385.8.783,1.216,1.209.209.216.425.432.642.655l1.844,1.844a1.289,1.289,0,0,1,0,2.094c-.2.2-.385.392-.581.581-.567.581-1.108,1.121-1.7,1.648-.014.014-.027.02-.034.034A1.378,1.378,0,0,0,8.5,39.32l.02.061a14.8,14.8,0,0,0,2.181,3.559l.007.007a24.789,24.789,0,0,0,6,5.457,9.219,9.219,0,0,0,.831.453c.243.122.473.236.669.358.027.014.054.034.081.047a1.464,1.464,0,0,0,.669.169,1.444,1.444,0,0,0,1.027-.466l2.31-2.31a1.528,1.528,0,0,1,1.02-.507,1.376,1.376,0,0,1,.973.493l.014.014,3.721,3.721A1.335,1.335,0,0,1,28.029,52.49Z' transform='translate(-0.344 -25.555)' fill='%230d7786' /%3E%3Cpath id='パス_305' data-name='パス 305' d='M245.694,87.734a8.692,8.692,0,0,1,7.078,7.078.906.906,0,0,0,.9.756,1.206,1.206,0,0,0,.155-.014.913.913,0,0,0,.75-1.054,10.51,10.51,0,0,0-8.564-8.564.917.917,0,0,0-1.054.743A.9.9,0,0,0,245.694,87.734Z' transform='translate(-228.424 -80.122)' fill='%230d7786' /%3E%3Cpath id='パス_306' data-name='パス 306' d='M263.936,14.116a17.306,17.306,0,0,0-14.1-14.1.91.91,0,1,0-.3,1.8,15.458,15.458,0,0,1,12.6,12.6.906.906,0,0,0,.9.756,1.2,1.2,0,0,0,.155-.014A.9.9,0,0,0,263.936,14.116Z' transform='translate(-231.997 0)' fill='%230d7786' /%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  --greeting: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='41' height='41' viewBox='0 0 41 41'%3E%3Cpath d='M-28.312-686.124v-5.438H-56.687v5.438A1.126 1.126 0 0 1-57.812-685a1.126 1.126 0 0 1-1.125-1.124v-5.438h-2.938A1.127 1.127 0 0 1-63-692.687v-2.5a2.38 2.38 0 0 1 2.374-2.375h36.251A2.38 2.38 0 0 1-22-695.188v2.5a1.126 1.126 0 0 1-1.124 1.125h-2.938v5.438A1.126 1.126 0 0 1-27.187-685a1.126 1.126 0 0 1-1.125-1.124Z' transform='translate(63 726)' fill='%230d7786'/%3E%3C/svg%3E");
  /*size*/
  --site-width: 1360px;
  --site-padding: 40px;
  /*color*/
  --accent-color: #FFBA00;
  --primary-color: #0D7786;
  /*font*/
  --font-color: #333;
  --font-base: 1.6rem;
  --font-large: 2.4rem;
  --font-small: 1.2rem;
  --font-jp: 'Noto Sans JP',
    sans-serif;
  --font-en: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", sans-serif;
  --base-line: 1.6;
}

@media all and (min-width: 768px) and (max-width: 1080px) {
  :root {
    /*size*/
    --site-padding: 20px;
    /*font*/
    --font-base: 1.6rem;
    --font-large: 2rem;
    --font-small: 1.1rem;
  }
}
@media all and (max-width: 767px) {
  :root {
    /*size*/
    --site-padding: 20px;
    /*font*/
    --font-base: 1.6rem;
    --font-large: 1.8rem;
    --font-small: 1em;
  }
}
/*==================================================
sp pc
==================================================*/
@media all and (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
}

@media all and (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}

@media all and (min-width: 1024px) {
  .sp-tb-only {
    display: none !important;
  }
}

@media all and (max-width: 767px) {
  .tb-only {
    display: none !important;
  }
}
@media all and (min-width: 1024px) {
  .tb-only {
    display: none !important;
  }
}

@media all and (max-width: 767px) {
  .tb-pc-only {
    display: none !important;
  }
}

/*--------------------------------------
html,body,wrapper
----------------------------------------*/
html {
  font-family: var(--font-jp);
  font-size: 62.5%;
  letter-spacing: 0.12em;
  color: var(--font-color);
  line-height: var(--base-line);
}

/*==================================================
l-header
==================================================*/
.l-header {
  position: fixed;
  z-index: 10000;
  left: 0;
  display: grid;
  grid-template-rows: 100%;
  align-items: center;
  width: calc(100% - var(--site-padding) * 2);
  max-width: 1180px;
  top: 10px;
  left: 0;
  right: 0;
  height: 60px;
  margin: auto;
  background: #fff;
  border-radius: 80px;
  font-size: var(--font-base);
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1607843137);
}
@media all and (max-width: 767px) {
  .l-header {
    height: 50px;
  }
}
@media all and (max-width: 767px) {
  .l-header-logo {
    width: 163px;
  }
}
.l-header-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px;
  gap: 20px;
}
@media all and (max-width: 767px) {
  .l-header-row {
    padding: 0 16px;
  }
}
.l-header-nav {
  display: flex;
}
@media all and (max-width: 767px) {
  .l-header-nav {
    display: none;
  }
}
.l-header-nav ul {
  display: flex;
  align-items: center;
  gap: 32px;
}
@media all and (max-width: 1023px) {
  .l-header-nav ul {
    gap: 16px;
  }
}
.l-header-nav ul a {
  color: #0D7786;
  letter-spacing: 0.05em;
}
.l-header-button {
  display: grid;
  place-items: center;
  width: 200px;
  height: 40px;
  margin-left: 60px;
  background: transparent linear-gradient(256deg, #B8D000 0%, #FFD145 100%) 0% 0% no-repeat;
  border-radius: 60px;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.01em;
}
@media all and (max-width: 1023px) {
  .l-header-button {
    width: 160px;
    margin-left: 10px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-header-button:hover {
    border: 2px solid #B8D000;
    color: #B8D000;
    background: #fff;
  }
}
.l-drawer {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  background: #0D7786 0% 0% no-repeat padding-box;
}

/*==================================================
l-nav-switch
==================================================*/
.l-nav-switch {
  position: absolute;
  right: 5px;
  top: 0;
  bottom: 0;
  width: 50PX;
  height: 50px;
  margin: auto;
  border: none;
  background: transparent;
}
.l-nav-switch__line {
  position: absolute;
  left: 0;
  right: 0;
  width: 18px;
  height: 0;
  margin: 0 auto;
  border-top: solid 3px var(--primary-color);
  transition: all 0.4s;
}
.l-nav-switch__line:nth-child(1) {
  top: calc(50% - 7px);
}
.l-nav-switch__line:nth-child(2) {
  top: 50%;
}
.l-nav-switch__line:nth-child(3) {
  top: calc(50% + 7px);
}
.l-nav-switch.show .l-nav-switch__line:nth-child(1) {
  top: 50%;
  transform: rotate(-45deg);
}
.l-nav-switch.show .l-nav-switch__line:nth-child(2) {
  display: none;
}
.l-nav-switch.show .l-nav-switch__line:nth-child(3) {
  top: 50%;
  transform: rotate(45deg);
}

/*==================================================
l-main
==================================================*/
.l-main {
  overflow: hidden;
  position: relative;
  z-index: 1;
  font-size: var(--font-base);
  line-height: 1.75;
}

/*==================================================
l-footer
==================================================*/
.l-footer {
  position: relative;
  z-index: 2;
  font-size: 1.4rem;
}
@media all and (max-width: 1023px) {
  .l-footer {
    font-size: 1.2rem;
  }
}
.l-footer-inner {
  display: flex;
  justify-content: space-between;
  max-width: var(--site-width);
  padding-inline: var(--site-padding);
  margin: 0 auto;
}
@media all and (max-width: 767px) {
  .l-footer-inner {
    display: block;
  }
}
.l-footer-body {
  display: flex;
  gap: 120px;
  justify-content: space-between;
  max-width: 800px;
  margin-left: auto;
}
@media screen and (max-width: 1366px) {
  .l-footer-body {
    gap: 20px;
  }
}
@media all and (max-width: 767px) {
  .l-footer-body {
    order: -1;
    gap: 0;
  }
}
.l-footer-wrapper {
  overflow: hidden;
  position: relative;
  z-index: 2;
  background: #fff;
}
.l-footer-bg {
  padding-top: 120px;
  background-image: linear-gradient(180deg, #0d7786 30%, rgba(13, 119, 134, 0.7) 50%, rgba(255, 255, 255, 0.7) 70%, white 80%), url("../img/common/footer-bg.webp");
  background-position: center, center bottom;
  background-repeat: no-repeat;
  background-size: auto, cover;
}
@media all and (max-width: 767px) {
  .l-footer-bg {
    padding-top: 40px;
    background-image: linear-gradient(180deg, #0d7786 20%, rgba(13, 119, 134, 0.7) 30%, rgba(255, 255, 255, 0.7) 50%, white 80%), url("../img/common/footer-bg.webp");
  }
}
.l-footer-row {
  display: grid;
  grid-template-columns: 300px 1fr;
  max-width: var(--site-width);
  margin: 0 auto;
  padding: 108px var(--site-padding) 67px var(--site-padding);
}
@media screen and (max-width: 1366px) {
  .l-footer-row {
    grid-template-columns: 250px 1fr;
    gap: 20px;
  }
}
@media all and (max-width: 767px) {
  .l-footer-row {
    padding-top: 60px;
    gap: 65px;
    grid-template-columns: 1fr;
    padding-inline: var(--site-padding);
  }
}
@media all and (max-width: 767px) {
  .l-footer-address {
    margin-top: 15px;
    text-align: center;
  }
}
.l-footer-title {
  font-size: 1.4rem;
  font-weight: 700;
  color: #234B6A;
}
@media all and (max-width: 767px) {
  .l-footer-title {
    text-align: center;
  }
}
.l-footer-title__large {
  font-size: 1.8rem;
  font-weight: inherit;
}
.l-footer-title img {
  display: block;
}
@media all and (max-width: 767px) {
  .l-footer-title img {
    margin: 10px auto;
  }
}
.l-footer-nav {
  display: flex;
  gap: 40px;
}
@media screen and (max-width: 1366px) {
  .l-footer-nav {
    gap: 20px;
  }
}
@media all and (max-width: 1023px) {
  .l-footer-nav {
    display: grid;
    gap: 0px;
  }
}
@media all and (max-width: 767px) {
  .l-footer-nav {
    display: none;
  }
}
.l-footer-nav ul,
.l-footer-nav dl {
  display: grid;
  align-content: start;
  gap: 5px;
}
.l-footer-nav a {
  font-weight: 700;
}
.l-footer-bottom {
  padding: 15px 0;
  background: var(--primary-color);
  color: #fff;
}
@media all and (max-width: 767px) {
  .l-footer-bottom {
    padding-block: 30px;
  }
}
@media all and (max-width: 767px) {
  .l-footer-copy {
    margin-top: 30px;
    text-align: center;
    font-size: 1.1rem;
  }
}
.l-footer-links {
  display: flex;
  gap: 40px;
}
@media all and (max-width: 767px) {
  .l-footer-links {
    display: grid;
    gap: 10px;
    text-align: center;
  }
}
.l-footer-links a {
  padding-right: 15px;
  background: url("../img/common/ico-arrow.svg") no-repeat right center;
}
@media all and (max-width: 767px) {
  .l-footer-links a {
    background: none;
  }
}
.l-footer-sns {
  position: relative;
  padding-right: 60px;
}
@media all and (max-width: 767px) {
  .l-footer-sns {
    padding-right: 0;
  }
}
.l-footer-sns__title {
  display: grid;
  grid-template-columns: 2px 1fr 2px;
  gap: 10px;
  width: fit-content;
  margin-right: 15px;
  margin-bottom: 10px;
  font-size: 1.8rem;
  text-align: right;
  margin-left: auto;
  font-weight: 700;
}
@media all and (max-width: 1023px) {
  .l-footer-sns__title {
    margin-right: 0;
  }
}
@media all and (max-width: 767px) {
  .l-footer-sns__title {
    margin: 0 auto 10px auto;
  }
}
.l-footer-sns__title:before, .l-footer-sns__title:after {
  content: "";
  display: block;
  width: 0;
  border-left: 2px solid #000;
}
.l-footer-sns__title:before {
  transform: rotate(-10deg);
}
.l-footer-sns__title:after {
  transform: rotate(10deg);
}
.l-footer-sns__row {
  display: flex;
  align-items: center;
}
@media all and (max-width: 1023px) {
  .l-footer-sns__row {
    display: block;
  }
}
@media all and (max-width: 767px) {
  .l-footer-sns__row {
    display: block;
  }
}
.l-footer-sns__en {
  margin-right: 25px;
}
@media all and (max-width: 1023px) {
  .l-footer-sns__en {
    margin-right: 10px;
  }
}
@media all and (max-width: 767px) {
  .l-footer-sns__en {
    margin-right: 80px;
  }
}
.l-footer-sns__account {
  color: var(--primary-color);
  font-weight: 500;
  font-size: 1.6rem;
}
@media all and (max-width: 1023px) {
  .l-footer-sns__account {
    font-size: 1.4rem;
    margin-bottom: 0.5em;
  }
}
@media all and (max-width: 767px) {
  .l-footer-sns__account {
    padding-left: 0.5em;
    font-weight: 600;
  }
}
@media all and (max-width: 1023px) {
  .l-footer-sns__account br {
    display: none;
  }
}
.l-footer-sns__list {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(2, 1fr);
  margin-top: -3px;
  margin-left: auto;
}
@media all and (max-width: 1023px) {
  .l-footer-sns__list {
    grid-template-columns: 60px 60px;
    justify-content: center;
    margin: 0;
  }
}
.l-footer-sns__list img {
  border-radius: 20px;
  box-shadow: 0px 4px 8px rgba(70, 88, 101, 0.2392156863);
}
.l-footer-sns__badge {
  transform: rotate(10deg);
  display: grid;
  place-content: center;
  position: absolute;
  right: 0;
  top: 10px;
  font-weight: 700;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: var(--accent-color);
  color: #fff;
  text-align: center;
}
@media all and (max-width: 1023px) {
  .l-footer-sns__badge {
    top: 20px;
    width: 60px;
    height: 60px;
    font-size: 1rem;
  }
}

/*==================================================
l-contact
==================================================*/
.l-contact {
  position: relative;
  padding-top: 50px;
  z-index: 2;
  color: #fff;
  font-size: 1.6rem;
}
.l-contact-box {
  width: 100%;
  max-width: 848px;
  margin-inline: auto auto;
  padding: 48px;
  border: 1px solid #fff;
  border-radius: 32px;
  background: rgba(13, 119, 134, 0.5019607843) 0% 0% no-repeat padding-box;
}
@media all and (max-width: 767px) {
  .l-contact-box {
    padding: 40px 20px;
  }
}
.l-contact-title {
  margin-bottom: 20px;
  text-align: center;
  font-size: 3.2rem;
  font-weight: 500;
}
@media all and (max-width: 767px) {
  .l-contact-title {
    margin-bottom: 30px;
    font-size: 2.4rem;
  }
}
.l-contact-lead {
  margin-bottom: 30px;
  text-align: center;
}
@media all and (max-width: 767px) {
  .l-contact-lead {
    text-align: left;
    line-height: 1.75;
    font-weight: 400;
  }
}
.l-contact-list {
  display: flex;
  justify-content: center;
  gap: 40px;
}
@media all and (max-width: 767px) {
  .l-contact-list {
    display: grid;
    grid-template-columns: 100%;
    gap: 30px;
  }
}
.l-contact-button {
  transition: background-color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: 320px;
  height: 70px;
  border-radius: 64px;
  background: #fff;
  box-shadow: 0px 8px 16px rgba(70, 88, 101, 0.2392156863);
  font-weight: 700;
  color: var(--primary-color);
}
@media all and (max-width: 1023px) {
  .l-contact-button {
    width: 260px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-contact-button:hover {
    transition: opacity 0.4s;
    background: #fff;
    color: var(--primary-color);
    opacity: 0.8;
  }
}
@media all and (max-width: 767px) {
  .l-contact-button {
    width: 100%;
  }
}
.l-contact-button--tel:before {
  content: "";
  width: 30px;
  height: 30px;
  background: var(--primary-color);
  -webkit-mask: var(--tel) no-repeat center/contain;
  mask: var(--tel) no-repeat center/contain;
}
.l-contact-button--form {
  background: var(--accent-color);
  color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .l-contact-button--form:hover {
    background: #fff;
    border: 2px solid var(--accent-color);
    color: var(--accent-color);
  }
}
.l-contact-button--form:before {
  content: "";
  width: 40px;
  height: 40px;
  background: #fff;
  -webkit-mask: var(--device) no-repeat center/contain;
  mask: var(--device) no-repeat center/contain;
}
@media (hover: hover) and (pointer: fine) {
  .l-contact-button--form:hover:before {
    background: var(--accent-color);
  }
}

/*==================================================
l-drawer
==================================================*/
.l-drawer {
  transition: opacity 0.6s;
  opacity: 0;
  pointer-events: none;
}
@media all and (max-width: 767px) {
  .l-drawer {
    overflow: scroll;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    padding: 90px var(--site-padding) 60px var(--site-padding);
    background: var(--primary-color);
    color: #fff;
  }
}
.l-drawer.show {
  opacity: 1;
  pointer-events: auto;
}
.l-drawer-contact {
  margin-bottom: 25px;
  padding: 20px 25px;
  background: rgba(13, 119, 134, 0.5019607843) 0% 0% no-repeat padding-box;
  border: 1px solid #FFFFFF;
  border-radius: 24px;
}
.l-drawer-contact__list {
  display: grid;
  gap: 20px;
}
.l-drawer-contact__title {
  margin-bottom: 15px;
  font-size: 2rem;
  text-align: center;
}
.l-drawer-contact__button {
  display: grid;
  place-content: center;
  width: 100%;
  height: 60px;
  font-size: 1.6rem;
  border-radius: 64px;
  transition: background-color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: 320px;
  height: 70px;
  border-radius: 64px;
  background: #fff;
  box-shadow: 0px 8px 16px rgba(70, 88, 101, 0.2392156863);
  font-weight: 700;
  color: var(--primary-color);
}
@media (hover: hover) and (pointer: fine) {
  .l-drawer-contact__button:hover {
    background: var(--primary-color);
    color: #fff;
  }
}
@media all and (max-width: 767px) {
  .l-drawer-contact__button {
    width: 100%;
  }
}
.l-drawer-contact__button--form {
  background: var(--accent-color);
  color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .l-drawer-contact__button--form:hover {
    background: #fff;
    border: 2px solid var(--accent-color);
    color: var(--accent-color);
  }
}
.l-drawer-nav {
  margin-bottom: 40px;
  padding: 15px 25px 25px 25px;
  background: #fff;
  border-radius: 26px;
  color: var(--primary-color);
  font-size: 1.6rem;
}
.l-drawer-nav a {
  font-weight: 600;
}
.l-drawer-nav__list-02, .l-drawer-nav__list-01 {
  border-bottom: 2px solid #e4f2f4;
  padding: 10px 20px 20px 20px;
}
.l-drawer-nav__list-02 a, .l-drawer-nav__list-01 a {
  display: block;
  padding: 7px 0;
  background: url("../img/common/arrow-down.svg") no-repeat right center;
}
.l-drawer-nav__list-01 dd a {
  display: grid;
  align-items: center;
  grid-template-columns: 1em 1fr;
  gap: 5px;
}
.l-drawer-nav__list-01 dd a:before {
  content: "";
  display: block;
  width: 1em;
  border-top: 1px solid var(--primary-color);
}
.l-drawer-nav__link {
  padding: 10px 20px 0 20px;
}
.l-drawer-nav__link a {
  display: block;
  padding: 7px 0;
  background: url("../img/common/arrow-down.svg") no-repeat right center;
}
.l-drawer-sns {
  display: flex;
  justify-content: center;
  gap: 20px;
}

/*==================================================
l-page-header
==================================================*/
.l-page-header {
  overflow: hidden;
  position: relative;
  height: 347px;
  padding-top: 95px;
  background: url("../img/business/mv.webp") no-repeat center/cover;
  color: #fff;
}
.l-page-header--category {
  height: 480px;
}
.l-page-header--assets-management {
  background-image: url("../img/business/asset-management/mv.webp");
}
.l-page-header--agefree {
  background-image: url("../img/business/agefree/mv.webp");
}
.l-page-header--building-maintenance {
  background-image: url("../img/business/building-maintenance/mv.webp");
}
.l-page-header--real-estate {
  background-image: url("../img/business/real-estate/mv.webp");
}
@media all and (max-width: 767px) {
  .l-page-header--real-estate {
    background-position: 52% center;
  }
}
@media all and (max-width: 767px) {
  .l-page-header {
    padding-top: 70px;
  }
}
.l-page-header--contact {
  height: 717px;
}
@media all and (max-width: 1023px) {
  .l-page-header--contact {
    height: 640px;
  }
}
@media all and (max-width: 767px) {
  .l-page-header--contact {
    height: 800px;
  }
}
.l-page-header__bottom {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: -24px;
}
@media all and (max-width: 767px) {
  .l-page-header__bottom {
    bottom: -16px;
  }
}
.l-page-header__bottom svg {
  background: transparent;
}

.l-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 0;
}
@media all and (max-width: 767px) {
  .l-breadcrumbs {
    flex-wrap: nowrap;
    overflow-x: auto;
    width: 100%;
    font-size: 1.4rem;
  }
}
.l-breadcrumbs li:nth-child(1) {
  padding-left: 24px;
  background: url("../img/common/ico-house.svg") no-repeat left center;
}
@media all and (max-width: 767px) {
  .l-breadcrumbs li {
    white-space: nowrap;
  }
}
.l-breadcrumbs li a {
  display: block;
  margin-right: 15px;
  padding-right: 15px;
  background: url("../img/common/breadcrumbs-arrow.svg") no-repeat right 54%;
}

.l-page-title {
  padding-top: 50px;
  text-align: center;
  font-size: 3.2rem;
  letter-spacing: 0.3em;
  line-height: 1.3;
}
@media all and (max-width: 767px) {
  .l-page-title {
    line-height: 1.3;
  }
}
@media all and (max-width: 767px) {
  .l-page-title--group {
    padding-top: 40px;
  }
}

.l-page-category {
  display: grid;
  place-items: center;
  width: 100px;
  height: 32px;
  margin-top: 5px;
  margin-inline: auto;
  background: #fff;
  border-radius: 8px;
  line-height: 1;
  color: var(--primary-color);
  font-weight: 800;
}

/*==================================================
module
==================================================*/
/*--------------------
text
--------------------*/
.m-text {
  text-align: left;
  font-size: 1.6rem;
}
* + .m-text {
  margin-top: 1.6rem;
}

.m-under {
  text-decoration: underline;
}

.m-tc {
  text-align: center;
}

.m-tr {
  text-align: right;
}

.m-tl {
  text-align: left;
}

/*--------------------
list
--------------------*/
.m-list__number {
  counter-reset: m-list-counter;
}
* + .m-list__number {
  margin-top: 1.6rem;
}
.m-list__item {
  position: relative;
  padding-left: 2.4rem;
  margin-bottom: 1.2rem;
  counter-increment: m-list-counter;
}
.m-list__item:last-child {
  margin-bottom: 0;
}
.m-list__item::before {
  content: counter(m-list-counter) ".";
  position: absolute;
  left: 0;
  color: var(--primary-color);
}
.m-list__item .m-list__number {
  counter-reset: m-list-counter-child;
  margin-top: 0.8rem;
}
.m-list__item .m-list__number .m-list__item {
  padding-left: 2.8rem;
  counter-increment: m-list-counter-child;
}
.m-list__item .m-list__number .m-list__item::before {
  content: "(" counter(m-list-counter-child) ")";
  color: var(--font-color);
}

/*--------------------
margin,padding
--------------------*/
.m-mt_xs {
  margin-top: 1rem;
}
@media all and (max-width: 767px) {
  .m-mt_xs {
    margin-top: 0.8rem;
  }
}

.m-mt_s {
  margin-top: 2rem;
}
@media all and (max-width: 767px) {
  .m-mt_s {
    margin-top: 1.5rem;
  }
}

.m-mt_m {
  margin-top: 4rem;
}
@media all and (max-width: 767px) {
  .m-mt_m {
    margin-top: 2.5rem;
  }
}

.m-mt_l {
  margin-top: 6rem;
}
@media all and (max-width: 767px) {
  .m-mt_l {
    margin-top: 4rem;
  }
}

.m-mt_xl {
  margin-top: 8rem;
}
@media all and (max-width: 767px) {
  .m-mt_xl {
    margin-top: 5rem;
  }
}

.m-mb_xs {
  margin-bottom: 1rem;
}
@media all and (max-width: 767px) {
  .m-mb_xs {
    margin-bottom: 0.8rem;
  }
}

.m-mb_s {
  margin-bottom: 2rem;
}
@media all and (max-width: 767px) {
  .m-mb_s {
    margin-bottom: 1.5rem;
  }
}

.m-mb_m {
  margin-bottom: 4rem;
}
@media all and (max-width: 767px) {
  .m-mb_m {
    margin-bottom: 2.5rem;
  }
}

.m-mb_l {
  margin-bottom: 6rem;
}
@media all and (max-width: 767px) {
  .m-mb_l {
    margin-bottom: 4rem;
  }
}

.m-mb_xl {
  margin-bottom: 8rem;
}
@media all and (max-width: 767px) {
  .m-mb_xl {
    margin-bottom: 5rem;
  }
}

.m-pt_xs {
  padding-top: 1rem;
}
@media all and (max-width: 767px) {
  .m-pt_xs {
    padding-top: 0.8rem;
  }
}

.m-pt_s {
  padding-top: 2rem;
}
@media all and (max-width: 767px) {
  .m-pt_s {
    padding-top: 1.5rem;
  }
}

.m-pt_m {
  padding-top: 4rem;
}
@media all and (max-width: 767px) {
  .m-pt_m {
    padding-top: 2.5rem;
  }
}

.m-pt_l {
  padding-top: 6rem;
}
@media all and (max-width: 767px) {
  .m-pt_l {
    padding-top: 4rem;
  }
}

.m-pt_xl {
  padding-top: 8rem;
}
@media all and (max-width: 767px) {
  .m-pt_xl {
    padding-top: 5rem;
  }
}

.m-pb_xs {
  padding-bottom: 1rem;
}
@media all and (max-width: 767px) {
  .m-pb_xs {
    padding-bottom: 0.8rem;
  }
}

.m-pb_s {
  padding-bottom: 2rem;
}
@media all and (max-width: 767px) {
  .m-pb_s {
    padding-bottom: 1.5rem;
  }
}

.m-pb_m {
  padding-bottom: 4rem;
}
@media all and (max-width: 767px) {
  .m-pb_m {
    padding-bottom: 2.5rem;
  }
}

.m-pb_l {
  padding-bottom: 6rem;
}
@media all and (max-width: 767px) {
  .m-pb_l {
    padding-bottom: 4rem;
  }
}

.m-pb_xl {
  padding-bottom: 8rem;
}
@media all and (max-width: 767px) {
  .m-pb_xl {
    padding-bottom: 5rem;
  }
}

/*--------------------
link
--------------------*/
/*--------------------
btn
--------------------*/
.m-button {
  transition: background-color 0.2s;
  display: grid;
  place-items: center;
  width: 280px;
  height: 60px;
  color: #fff;
  font-weight: 700;
  background: #fff;
  border-radius: 60px;
  color: var(--primary-color);
  letter-spacing: 0.1em;
}
@media all and (max-width: 767px) {
  .m-button {
    font-size: 1.6rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .m-button:hover {
    border: 2px solid #fff;
    background: var(--primary-color);
    color: #fff;
  }
}
.m-button--border {
  border: 2px solid var(--primary-color);
}
.m-button--center {
  margin-inline: auto auto;
}
.m-button--bg {
  background: var(--primary-color);
  color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .m-button--bg:hover {
    border: 2px solid var(--primary-color);
    background: #fff;
    color: var(--primary-color);
  }
}
@media all and (max-width: 767px) {
  .m-button--sp-center {
    margin-inline: auto auto;
  }
}
@media (hover: hover) and (pointer: fine) {
  .m-button--opacity:hover {
    transition: opacity 0.4s;
    background: #fff;
    color: var(--primary-color);
    opacity: 0.8;
  }
}
@media all and (max-width: 767px) {
  .m-button--flex {
    width: 100%;
  }
}
.m-button__map {
  display: inline-block;
  background: url("../img/company/ico-map.svg") no-repeat left center;
  padding: 10px 10px 10px 24px;
}
@media (hover: hover) and (pointer: fine) {
  .m-button:hover .m-button__map {
    background: url("../img/company/ico-map-wh.svg") no-repeat left center;
  }
}
.m-button__site {
  display: inline-block;
  background: url("../img/group/ico-site.svg") no-repeat right center;
  padding: 10px 24px 10px 0px;
}
@media (hover: hover) and (pointer: fine) {
  .m-button:hover {
    opacity: 1;
  }
  .m-button:hover .m-button__site {
    background: url("../img/group/ico-site-wh.svg") no-repeat right center;
  }
}

/*--------------------
ttl
--------------------*/
.m-section-title {
  display: grid;
  margin-bottom: 30px;
  color: var(--primary-color);
  text-align: center;
  letter-spacing: 0.2em;
  font-weight: 500;
}
@media all and (max-width: 767px) {
  .m-section-title {
    margin-bottom: 20px;
  }
}
.m-section-title__jp {
  font-size: 3.2rem;
}
@media all and (max-width: 767px) {
  .m-section-title__jp {
    font-size: 2.4rem;
  }
}

.m-block-title {
  margin-bottom: 50px;
  font-size: 4rem;
  color: var(--primary-color);
  letter-spacing: 0.2em;
  text-align: center;
}
@media all and (max-width: 1023px) {
  .m-block-title {
    line-height: 1.5;
  }
}
@media all and (max-width: 767px) {
  .m-block-title {
    margin-bottom: 25px;
    font-size: 2.4rem;
    letter-spacing: 0.1em;
  }
}

/*--------------------
inner
--------------------*/
.m-inner {
  max-width: var(--site-width);
  width: 100%;
  margin: 0 auto;
  padding-inline: var(--site-padding);
}
@media all and (max-width: 767px) {
  .m-inner {
    width: 100%;
  }
}
.m-inner--size-ss {
  max-width: 1160px;
}
.m-inner--size-s {
  max-width: 1260px;
}
.m-inner--sp-none {
  padding-inline: 0;
}
.m-inner--common_conttent {
  max-width: 880px;
}

/*==================================================
m-page-lead
==================================================*/
.m-page-lead {
  padding-bottom: 100px;
  text-align: center;
  background: #fff;
  padding-top: 40px;
}
@media all and (max-width: 767px) {
  .m-page-lead {
    padding-bottom: 60px;
  }
}
.m-page-lead--real-estate {
  padding-bottom: 50px;
}
@media all and (max-width: 767px) {
  .m-page-lead--real-estate {
    padding-bottom: 40px;
  }
}
.m-page-lead--company {
  padding-bottom: 80px;
}
@media all and (max-width: 767px) {
  .m-page-lead--company {
    padding-bottom: 60px;
  }
}
.m-page-lead--detail {
  padding-bottom: 60px;
}
@media all and (max-width: 767px) {
  .m-page-lead--detail {
    padding-bottom: 30px;
  }
}
.m-page-lead--maintenance {
  padding-bottom: 40px;
}
@media all and (max-width: 767px) {
  .m-page-lead--maintenance {
    padding-bottom: 30px;
  }
}
.m-page-lead__tagline {
  font-weight: 700;
  color: var(--primary-color);
  line-height: 2.5454545455;
  font-size: 2.2rem;
}
@media all and (max-width: 767px) {
  .m-page-lead__tagline {
    font-size: 1.6rem;
    line-height: 1.6;
  }
}
.m-page-lead__title {
  margin-bottom: 40px;
  font-size: 3.2rem;
  line-height: 1.6;
  color: var(--primary-color);
  letter-spacing: 0.2em;
  text-align: center;
}
@media all and (max-width: 767px) {
  .m-page-lead__title {
    margin-bottom: 25px;
    font-size: 2.4rem;
    letter-spacing: 0.1em;
  }
}
.m-page-lead__title--real-estate {
  font-size: 3.4rem;
}
@media all and (max-width: 767px) {
  .m-page-lead__title--real-estate {
    font-size: 2.4rem;
  }
}
@media all and (max-width: 1240px) {
  .m-page-lead__title--maintenance, .m-page-lead__title--agefree {
    font-size: 3.4rem;
  }
}
@media all and (max-width: 767px) {
  .m-page-lead__title--maintenance, .m-page-lead__title--agefree {
    font-size: 2.4rem;
  }
}
.m-page-lead__outline {
  margin-bottom: 40px;
  line-height: 1.75;
  letter-spacing: 0.08em;
}
@media all and (max-width: 1023px) {
  .m-page-lead__outline {
    text-align: left;
  }
}
@media all and (max-width: 767px) {
  .m-page-lead__outline {
    text-align: left;
  }
}
.m-page-lead__texts {
  display: grid;
  gap: 1em;
  line-height: 2;
  letter-spacing: 0.08em;
}
@media all and (max-width: 1023px) {
  .m-page-lead__texts {
    text-align: left;
  }
}
@media all and (max-width: 767px) {
  .m-page-lead__texts {
    gap: 1em;
    text-align: left;
  }
}
.m-page-lead__texts--size-l {
  font-size: 1.8rem;
}
@media all and (max-width: 767px) {
  .m-page-lead__texts--size-l {
    font-size: 1.6rem;
  }
}

.m-page-section {
  padding-bottom: 100px;
  background: #fff;
}
@media all and (max-width: 767px) {
  .m-page-section {
    padding-bottom: 60px;
  }
}

/*==================================================
m-page-nav
==================================================*/
.m-page-nav {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  max-width: 965px;
  margin-inline: auto auto;
}
@media all and (max-width: 767px) {
  .m-page-nav {
    max-width: 295px;
    margin-inline: auto auto;
    gap: 24px;
    grid-template-columns: 1fr;
  }
}
.m-page-nav--real-estate, .m-page-nav--maintenance {
  grid-template-columns: repeat(2, 1fr);
  max-width: 630px;
  margin-bottom: 30px;
}
@media all and (max-width: 767px) {
  .m-page-nav--real-estate, .m-page-nav--maintenance {
    margin-bottom: 20px;
    grid-template-columns: 1fr;
  }
}
.m-page-nav__link {
  position: relative;
  display: grid;
  place-content: start center;
  padding: 20px 20px 50px 20px;
  background: #E6F1F3 0% 0% no-repeat padding-box;
  box-shadow: 0px 8px 16px rgba(70, 88, 101, 0.2392156863);
  border: 4px solid #FFFFFF;
  border-radius: 24px;
}
@media all and (max-width: 767px) {
  .m-page-nav__link {
    padding: 20px 10px 50px 10px;
  }
}
@media all and (max-width: 767px) {
  .m-page-nav__link--no-ico {
    padding-bottom: 30px;
  }
}
.m-page-nav__link:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  display: block;
  margin-top: auto;
  width: 24px;
  height: 12px;
  margin: 20px auto 0 auto;
  background: url("../img/common/ico-page-nav.svg") no-repeat center;
}
.m-page-nav__link--another:after {
  transform: rotate(-90deg);
}
.m-page-nav__ico {
  display: block;
  margin: 0 auto 10px;
}
.m-page-nav__title {
  margin-bottom: 15px;
  bottom: 14px;
  color: var(--primary-color);
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.6;
  font-size: 2rem;
}
@media all and (max-width: 767px) {
  .m-page-nav__title {
    font-size: 1.8rem;
    letter-spacing: normal;
  }
}
.m-page-nav__text {
  display: grid;
  align-items: center;
  gap: 10px;
  grid-template-columns: 10px 1fr;
  font-size: 1.4rem;
  width: fit-content;
  color: var(--primary-color);
}
.m-page-nav__text:before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #fff;
}
.m-page-nav ul {
  text-align: left;
}
.m-page-nav ul li {
  display: grid;
  gap: 10px;
  grid-template-columns: 10px 1fr;
  align-items: center;
  color: var(--primary-color);
  font-size: 1.4rem;
}
.m-page-nav ul li:before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #fff;
}

/*==================================================
ripple
==================================================*/
.ripple-container {
  position: absolute;
  left: 0;
  width: 100%;
  height: 120px;
  z-index: 10;
}
@media all and (max-width: 767px) {
  .ripple-container {
    height: 70px;
  }
}

.ripple-svg {
  width: 100%;
  height: 100%;
  display: block;
}

.ripple-upper {
  top: -1px;
  transform: scaleY(-1);
}

.ripple-lower {
  bottom: -1px;
}

.ripple-layer > use {
  animation: ripple-flow 10s linear infinite;
}

.ripple-upper .ripple-layer > use {
  animation-delay: -3.5s;
}

.ripple-layer > use:nth-child(1) {
  fill: rgba(133, 186, 194, 0.7);
  animation-duration: 15s;
}
@media all and (max-width: 1023px) {
  .ripple-layer > use:nth-child(1) {
    animation-duration: 20s;
  }
}
@media all and (max-width: 767px) {
  .ripple-layer > use:nth-child(1) {
    animation-duration: 30s;
  }
}

.ripple-layer > use:nth-child(2) {
  fill: rgba(133, 186, 194, 0.3);
  animation-duration: 24s;
}
@media all and (max-width: 1023px) {
  .ripple-layer > use:nth-child(2) {
    animation-duration: 30s;
  }
}
@media all and (max-width: 767px) {
  .ripple-layer > use:nth-child(2) {
    animation-duration: 40s;
  }
}

.ripple-layer > use:nth-child(3) {
  fill: #fff;
  opacity: 1 !important;
  animation-duration: 33s;
}
@media all and (max-width: 1023px) {
  .ripple-layer > use:nth-child(3) {
    animation-duration: 40s;
  }
}
@media all and (max-width: 767px) {
  .ripple-layer > use:nth-child(3) {
    animation-duration: 50s;
  }
}

@keyframes ripple-flow {
  0% {
    transform: translateX(-90px);
  }
  100% {
    transform: translateX(85px);
  }
}
.ripple-layer.ripple-layer--color-dark > use:nth-child(1) {
  fill: rgba(133, 186, 194, 0.7);
}

.ripple-layer.ripple-layer--color-dark > use:nth-child(2) {
  fill: rgba(133, 186, 194, 0.3);
}

.ripple-layer.ripple-layer--color-light > use:nth-child(1) {
  fill: rgba(154, 228, 238, 0.7);
}

.ripple-layer.ripple-layer--color-light > use:nth-child(2) {
  fill: rgba(154, 228, 238, 0.3);
}

.ripple-layer.ripple-layer--color-wh > use:nth-child(1) {
  fill: rgba(255, 255, 255, 0.7);
}

.ripple-layer.ripple-layer--color-wh > use:nth-child(2) {
  fill: rgba(255, 255, 255, 0.3);
}

.ripple-layer.ripple-layer--index > use:nth-child(3) {
  fill: #FDFCF4;
}

/*==================================================
m-category-nav
==================================================*/
.m-category-nav {
  position: relative;
  z-index: 1000;
  margin-top: -40px;
  margin-bottom: 65px;
}
@media all and (max-width: 767px) {
  .m-category-nav {
    margin-bottom: 60px;
    margin-top: -8rem;
  }
}
.m-category-nav__row {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: 140px;
  gap: 24px;
}
@media all and (max-width: 1023px) {
  .m-category-nav__row {
    gap: 12px;
  }
}
@media all and (max-width: 767px) {
  .m-category-nav__row {
    grid-template-rows: 110px;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
  }
}
.m-category-nav__unit {
  transition: background-color 0.4s;
  display: grid;
  grid-template-rows: 50px 3em;
  gap: 5px;
  height: 100%;
  padding-block: 20px 20px;
  border: 3px solid #0D7786;
  border-radius: 24px;
  text-align: center;
  background: #fff;
  box-shadow: 0px 8px 16px rgba(70, 88, 101, 0.2392156863);
}
@media all and (max-width: 767px) {
  .m-category-nav__unit {
    grid-template-rows: 34px 2.8em;
    padding: 15px 5px;
    border-width: 2px;
  }
}
.m-category-nav__text {
  display: grid;
  align-items: center;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  color: var(--primary-color);
  font-weight: 700;
}
@media all and (max-width: 767px) {
  .m-category-nav__text {
    font-size: 1.2rem;
  }
}
.m-category-nav__ico {
  background: url("../img/common/category-ico-company.svg") no-repeat center/contain;
  transition: background-image 0.4s;
}
.m-category-nav__unit--compay .m-category-nav__ico {
  background-image: url("../img/common/category-ico-company.svg");
}
.m-category-nav__unit--greeting .m-category-nav__ico {
  background-image: url("../img/common/category-ico-greeting.svg");
}
.m-category-nav__unit--group .m-category-nav__ico {
  background-image: url("../img/common/category-ico-group.svg");
}
.m-category-nav__unit--history .m-category-nav__ico {
  background-image: url("../img/common/category-ico-history.svg");
}
.m-category-nav__unit--sdgs .m-category-nav__ico {
  background-image: url("../img/common/category-ico-sdgs.svg");
}
.m-category-nav__unit--access .m-category-nav__ico {
  background-image: url("../img/common/category-ico-access.svg");
}
@media (hover: hover) and (pointer: fine) {
  .m-category-nav__unit:hover {
    opacity: 1;
    background: var(--primary-color);
  }
  .m-category-nav__unit:hover .m-category-nav__text {
    color: #fff;
  }
  .m-category-nav__unit--company:hover .m-category-nav__ico {
    background-image: url("../img/common/category-ico-company-hover.svg");
  }
  .m-category-nav__unit--greeting:hover .m-category-nav__ico {
    background-image: url("../img/common/category-ico-greeting-hover.svg");
  }
  .m-category-nav__unit--group:hover .m-category-nav__ico {
    background-image: url("../img/common/category-ico-group-hover.svg");
  }
  .m-category-nav__unit--history:hover .m-category-nav__ico {
    background-image: url("../img/common/category-ico-history-hover.svg");
  }
  .m-category-nav__unit--sdgs:hover .m-category-nav__ico {
    background-image: url("../img/common/category-ico-sdgs-hover.svg");
  }
  .m-category-nav__unit--access:hover .m-category-nav__ico {
    background-image: url("../img/common/category-ico-access-hover.svg");
  }
}
.m-category-nav--greeting {
  margin-bottom: 100px;
}
@media all and (max-width: 767px) {
  .m-category-nav--greeting {
    margin-bottom: 0;
  }
}
.m-category-nav--company .m-category-nav__unit--company {
  background: var(--primary-color);
}
.m-category-nav--company .m-category-nav__unit--company .m-category-nav__ico {
  background-image: url("../img/common/category-ico-company-hover.svg");
}
.m-category-nav--company .m-category-nav__unit--company .m-category-nav__text {
  color: #fff;
}
.m-category-nav--greeting .m-category-nav__unit--greeting {
  background: var(--primary-color);
}
.m-category-nav--greeting .m-category-nav__unit--greeting .m-category-nav__ico {
  background-image: url("../img/common/category-ico-greeting-hover.svg");
}
.m-category-nav--greeting .m-category-nav__unit--greeting .m-category-nav__text {
  color: #fff;
}
.m-category-nav--history .m-category-nav__unit--history {
  background: var(--primary-color);
}
.m-category-nav--history .m-category-nav__unit--history .m-category-nav__ico {
  background-image: url("../img/common/category-ico-history-hover.svg");
}
.m-category-nav--history .m-category-nav__unit--history .m-category-nav__text {
  color: #fff;
}
.m-category-nav--sdgs .m-category-nav__unit--sdgs {
  background: var(--primary-color);
}
.m-category-nav--sdgs .m-category-nav__unit--sdgs .m-category-nav__ico {
  background-image: url("../img/common/category-ico-sdgs-hover.svg");
}
.m-category-nav--sdgs .m-category-nav__unit--sdgs .m-category-nav__text {
  color: #fff;
}
.m-category-nav--access .m-category-nav__unit--access {
  background: var(--primary-color);
}
.m-category-nav--access .m-category-nav__unit--access .m-category-nav__ico {
  background-image: url("../img/common/category-ico-access-hover.svg");
}
.m-category-nav--access .m-category-nav__unit--access .m-category-nav__text {
  color: #fff;
}
.m-category-nav--group .m-category-nav__unit--group {
  background: var(--primary-color);
}
.m-category-nav--group .m-category-nav__unit--group .m-category-nav__ico {
  background-image: url("../img/common/category-ico-group-hover.svg");
}
.m-category-nav--group .m-category-nav__unit--group .m-category-nav__text {
  color: #fff;
}

/*==================================================
.m-data
==================================================*/
.m-data {
  display: grid;
  gap: 2rem;
}
.m-data__item {
  display: grid;
  letter-spacing: 0.08em;
  grid-template-columns: 8em 1fr;
  gap: 1rem;
}
@media all and (max-width: 767px) {
  .m-data__item {
    grid-template-columns: 1fr;
  }
}
.m-data__title {
  color: var(--primary-color);
}
@media all and (max-width: 767px) {
  .m-data__text {
    padding-left: 1.5rem;
  }
}
.m-data__space {
  margin-bottom: 15px;
}
@media all and (max-width: 1023px) {
  .m-data--group .m-data__item {
    grid-template-columns: 5em 1fr;
  }
}

/*==================================================
.m-list
==================================================*/
.m-list li {
  padding-left: 1em;
  text-indent: -0.75em;
}

/*==================================================
.m-card
==================================================*/
.m-card {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  max-width: 1100px;
  margin: 0 auto 100px;
}
@media all and (max-width: 1023px) {
  .m-card {
    gap: 20px;
  }
}
@media all and (max-width: 767px) {
  .m-card {
    grid-template-columns: 1fr;
    margin-bottom: 60px;
  }
}
.m-card__unit {
  overflow: hidden;
  display: block;
  box-shadow: 0px 8px 16px rgba(70, 88, 101, 0.1607843137);
  border-radius: 24px;
}
.m-card__header {
  position: relative;
}
.m-card__img {
  object-fit: cover;
  height: 240px;
}
@media all and (max-width: 1023px) {
  .m-card__img {
    height: 180px;
  }
}
.m-card__category {
  position: absolute;
  right: 10px;
  bottom: -20px;
  display: block;
  padding: 7px 20px;
  background: #fff;
  border-radius: 8px;
  font-size: 1.4rem;
  font-weight: 600;
}
.m-card__category--bg-01 {
  color: var(--primary-color);
}
.m-card__category--bg-02 {
  color: #FFBA00;
}
.m-card__body {
  padding: 18px 20px 26px 20px;
}
.m-card__name {
  margin-bottom: 15px;
  font-size: 2.4rem;
  color: var(--primary-color);
}
.m-card__data {
  display: grid;
  grid-template-columns: 5em 1fr;
  margin-bottom: 10px;
}
.m-card__data dt {
  color: var(--primary-color);
}
.m-card__text {
  margin-bottom: 24px;
}
.m-card__button {
  transition: background-color 0.2s;
  display: grid;
  place-items: center;
  max-width: 200px;
  height: 60px;
  margin-inline: auto auto;
  background: var(--primary-color);
  color: #fff;
  border-radius: 50px;
  letter-spacing: 0.1em;
  line-height: 1;
}
@media (hover: hover) and (pointer: fine) {
  .m-card__unit:hover {
    opacity: 1;
  }
  .m-card__unit:hover .m-card__button {
    border: 2px solid var(--primary-color);
    background: #fff;
    color: var(--primary-color);
    font-weight: 700;
  }
}

/*==================================================
m-service
==================================================*/
.m-service-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}
@media all and (max-width: 1023px) {
  .m-service-row {
    gap: 60px 40px;
  }
}
@media all and (max-width: 767px) {
  .m-service-row {
    grid-template-columns: 1fr;
    gap: 50px;
  }
}
.m-service-unit__img {
  display: block;
  margin-bottom: 15px;
}
.m-service-unit__title {
  margin-bottom: 15px;
  text-align: center;
  font-size: 2.8rem;
  line-height: 1.5714285714;
}
@media all and (max-width: 767px) {
  .m-service-unit__title {
    margin-bottom: 10px;
    font-size: 2.4rem;
  }
}
.m-service-unit__text {
  margin-bottom: 24px;
}

/*==================================================
m-shop
==================================================*/
.m-shop {
  overflow: hidden;
  box-shadow: 0px 8px 16px rgba(70, 88, 101, 0.1607843137);
  border: 2px solid;
  background: #fff;
  border-radius: 24px;
}
@media all and (max-width: 767px) {
  .m-shop {
    font-size: 1.4rem;
    border-radius: 16px;
  }
}
.m-shop-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 40px;
}
@media all and (max-width: 1023px) {
  .m-shop-row {
    gap: 20px;
  }
}
@media all and (max-width: 767px) {
  .m-shop-row {
    grid-template-columns: 1fr 1fr;
    gap: 15px 10px;
  }
}
.m-shop:nth-child(1) {
  border-color: #A9D5F4;
}
.m-shop:nth-child(2) {
  border-color: #BDC4F0;
}
.m-shop:nth-child(3) {
  border-color: #A1E073;
}
.m-shop:nth-child(4) {
  border-color: #FBFCA3;
}
.m-shop:nth-child(5) {
  border-color: #FFD07E;
}
.m-shop__img {
  border-radius: 24px 24px 0 0;
}
@media all and (max-width: 767px) {
  .m-shop__img {
    border-radius: 10px 10px 0 0;
  }
}
.m-shop__body {
  position: relative;
  padding: 20px 20px;
}
@media all and (max-width: 767px) {
  .m-shop__body {
    padding: 10px 10px;
  }
}
.m-shop__name {
  margin-bottom: 10px;
  color: var(--primary-color);
  font-size: 2.4rem;
}
@media all and (max-width: 767px) {
  .m-shop__name {
    font-size: 1.8rem;
  }
}
.m-shop__row {
  display: grid;
  grid-template-columns: 1fr 60px;
  margin-bottom: 10px;
}
@media all and (max-width: 1023px) {
  .m-shop__row {
    grid-template-columns: 1fr;
  }
}
@media all and (max-width: 767px) {
  .m-shop__row {
    line-height: 1.6;
  }
}
.m-shop__map {
  display: grid;
  place-items: center;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  padding-top: 20px;
  font-size: 1.2rem;
  font-weight: 700;
  background: var(--primary-color) url("../img/business/agefree/ico-map.svg") no-repeat center 10px;
  color: #fff;
}
@media all and (max-width: 1023px) {
  .m-shop__map {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 50px;
    height: 50px;
    padding-top: 10px;
    background-position: center 5px;
    background-size: 10px auto;
  }
}
@media all and (max-width: 767px) {
  .m-shop__map {
    right: 10px;
    top: 10px;
    width: 40px;
    height: 40px;
  }
}
.m-shop__list {
  margin-bottom: 20px;
}
@media all and (max-width: 767px) {
  .m-shop__list {
    margin-bottom: 10px;
  }
}
.m-shop__button {
  transition: background-color 0.2s;
  display: grid;
  place-items: center;
  width: 200px;
  height: 60px;
  border-radius: 50px;
  margin-inline: auto;
  background: var(--primary-color);
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.1em;
}
@media all and (max-width: 767px) {
  .m-shop__button {
    width: 90%;
    height: 40px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .m-shop__button:hover {
    border: 2px solid var(--primary-color);
    background: #fff;
    color: var(--primary-color);
  }
}

/*--------------------------------------
mv
----------------------------------------*/
.mv {
  position: relative;
  height: 100vh;
}
.mv__inner {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 160px;
  width: 100%;
  max-width: var(--site-width);
  padding-inline: var(--site-padding);
  margin-inline: auto auto;
}
@media all and (max-width: 767px) {
  .mv__inner {
    position: static;
  }
}
.mv__bg {
  position: fixed;
  inset: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media all and (max-width: 767px) {
  .mv-contents {
    display: grid;
    place-content: center;
    place-items: center;
    height: 100vh;
  }
}
.mv-title {
  position: relative;
  font-weight: 700;
  font-size: 2.4rem;
  color: #fff;
  letter-spacing: 0.5em;
}
@media all and (max-width: 767px) {
  .mv-title {
    margin-bottom: 15px;
    text-align: center;
    font-size: 2.9rem;
  }
}
.mv-title__large {
  font-size: 3.2rem;
  font-weight: 700;
}
@media all and (max-width: 767px) {
  .mv-title__large {
    font-size: 3.8rem;
  }
}
.mv-tagline {
  position: relative;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 900;
  letter-spacing: 0.33em;
}
@media all and (max-width: 767px) {
  .mv-tagline {
    text-align: center;
    font-size: 1.2rem;
  }
}

/*--------------------------------------
about
----------------------------------------*/
.about {
  padding-top: 300px;
  color: #fff;
  background: transparent linear-gradient(180deg, rgba(0, 146, 151, 0) 0%, rgba(13, 119, 134, 0.7294117647) 81%, #0D7786 100%) 0% 0% no-repeat padding-box;
}
.about-title {
  margin-bottom: 40px;
  text-align: center;
  font-size: 4rem;
  line-height: 1.64;
  letter-spacing: 0.2em;
}
@media all and (max-width: 767px) {
  .about-title {
    margin-bottom: 60px;
    font-size: 3.2rem;
  }
}
.about-lead {
  max-width: 660px;
  margin: 0 auto 68px auto;
  letter-spacing: 0.08em;
  line-height: 1.75;
}
@media all and (max-width: 767px) {
  .about-lead {
    display: none;
  }
}
.about-buttons {
  display: flex;
  justify-content: center;
  gap: 32px;
  justify-content: center;
}
@media all and (max-width: 767px) {
  .about-buttons {
    display: grid;
    gap: 30px;
  }
}

/*--------------------------------------
business
----------------------------------------*/
.business {
  overflow: hidden;
  position: relative;
  padding: 80px 0 260px 0;
  background: #0D7786;
  color: #fff;
}
@media all and (max-width: 767px) {
  .business {
    padding: 130px 0 60px 0;
  }
}
.business:before {
  content: "";
  position: absolute;
  right: 50%;
  display: block;
  width: 800px;
  height: 600px;
  background: url("../img/about-map.webp") no-repeat center;
  background-size: contain;
}
@media screen and (max-width: 1600px) {
  .business:before {
    width: 50%;
    left: var(--site-padding);
    right: auto;
  }
}
@media all and (max-width: 767px) {
  .business:before {
    position: static;
    margin-left: -7vw;
    width: 118vw;
    height: 85vw;
  }
}
.business-contents {
  padding-left: 50%;
  padding-top: 80px;
}
@media all and (max-width: 767px) {
  .business-contents {
    padding-top: 30px;
    padding-left: 0;
  }
}
.business-unit {
  max-width: 520px;
  margin-inline: auto auto;
}
@media all and (max-width: 767px) {
  .business-unit {
    padding: 0 20px;
  }
}
.business-title {
  margin-bottom: 20px;
  font-size: 4rem;
  letter-spacing: 0.05em;
  font-weight: 400;
}
@media all and (max-width: 1023px) {
  .business-title {
    font-size: 3.4rem;
  }
}
@media all and (max-width: 767px) {
  .business-title {
    font-size: 2.4rem;
  }
}
.business-lead {
  margin-bottom: 30px;
}
@media all and (max-width: 767px) {
  .business-lead {
    line-height: 1.75;
  }
}

/*--------------------------------------
service
----------------------------------------*/
.service {
  padding: 60px 0 60px 0;
  background: #fff;
}
@media all and (max-width: 767px) {
  .service {
    padding: 50px 0 20px 0;
  }
}
.service-list {
  padding: 20px 0 0 0;
}
@media all and (max-width: 767px) {
  .service-list {
    padding-bottom: 20px;
  }
}
.service-list .slick-slide .service-unit__img {
  transform: scale(0.89);
  transition: transform 0.8s;
}
@media all and (max-width: 767px) {
  .service-list .slick-slide .service-unit__img {
    transform: unset;
  }
}
.service-list .slick-center .service-unit__img {
  transform: scale(1);
  transition: transform 0.8s;
}
.service-list .slick-dots li {
  width: 12px;
  height: 12px;
  margin: 0 10px;
}
@media all and (max-width: 767px) {
  .service-list .slick-dots li {
    width: 10px;
    height: 10px;
  }
}
.service-list .slick-dots button {
  width: 12px;
  height: 12px;
  background: var(--primary-color);
  border: solid 2px var(--primary-color);
}
@media all and (max-width: 767px) {
  .service-list .slick-dots button {
    width: 10px;
    height: 10px;
  }
}
.service-list .slick-active button {
  background: transparent !important;
}
.service-list__prev, .service-list__next {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 10;
  border: none;
  width: 120px;
  height: 120px;
  background: none;
}
@media all and (max-width: 767px) {
  .service-list__prev, .service-list__next {
    width: 80px;
    height: 80px;
  }
}
.service-list__prev {
  right: auto;
  left: calc(50% - 360px);
}
@media screen and (max-width: 1640px) {
  .service-list__prev {
    left: calc(50% - 27vw);
  }
}
@media all and (max-width: 767px) {
  .service-list__prev {
    left: 0;
  }
}
.service-list__next {
  right: calc(50% - 360px);
}
@media screen and (max-width: 1640px) {
  .service-list__next {
    right: calc(50% - 27vw);
  }
}
@media all and (max-width: 767px) {
  .service-list__next {
    right: 0;
  }
}
.service-unit {
  position: relative;
  display: block;
  padding: 14px;
}
@media all and (max-width: 767px) {
  .service-unit {
    padding: 0 8px;
  }
}
.service-unit__text {
  position: absolute;
  z-index: 1;
  left: 0;
  bottom: 40px;
  width: 100%;
  text-align: center;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
}
@media all and (max-width: 767px) {
  .service-unit__text {
    bottom: 10px;
    font-size: 1.4rem;
  }
}
.service-unit__img {
  display: block;
  object-fit: cover;
  width: 560px;
  height: 15vw;
  border-radius: 24px;
  box-shadow: 8px 8px 16px 0 rgba(70, 88, 101, 0.25);
}
@media screen and (max-width: 1640px) {
  .service-unit__img {
    width: 40vw;
    height: 20vw;
  }
}
@media all and (max-width: 767px) {
  .service-unit__img {
    width: 76.923vw;
    height: 71.794vw;
    border-radius: 24px;
    box-shadow: 4px 4px 8px 0 rgba(70, 88, 101, 0.25);
  }
}

/*--------------------------------------
  news
----------------------------------------*/
.news {
  padding: 60px 0;
  background: #FDFCF4;
}
.news-contents {
  display: grid;
  gap: 20px;
  max-width: 900px;
  margin: 0 auto 40px auto;
}
@media all and (max-width: 767px) {
  .news-contents {
    margin-bottom: 30px;
  }
}
.news-data {
  display: grid;
  grid-template-columns: 17em 1fr;
  gap: 1em;
  align-items: center;
}
@media all and (max-width: 767px) {
  .news-data {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.news-data dt {
  display: grid;
  grid-template-columns: 9em 7em;
  gap: 1em;
}
@media all and (max-width: 767px) {
  .news-data dt {
    grid-template-columns: 10em 120px;
    justify-content: space-between;
  }
}
.news-data__category {
  display: grid;
  place-items: center;
  width: 100%;
  height: 28px;
  border-radius: 20px;
  font-size: 1.4rem;
  color: #fff;
}
@media all and (max-width: 767px) {
  .news-data__category {
    margin-left: auto;
  }
}
.news-data__category--topics {
  background: var(--primary-color);
}
.news-data__category--recruit {
  background: var(--accent-color);
}
.news-data__body {
  line-height: 2;
}

/*--------------------------------------
 waves
----------------------------------------*/
.fade-section {
  opacity: 0;
  transition: 0.8s ease;
}

.fade-section.show {
  opacity: 1;
}

.contents-wrap {
  position: relative;
  z-index: 2;
  background: #fff;
}

/*==================================================
business-overview
==================================================*/
.business-overview {
  overflow: hidden;
  position: relative;
  padding-block: 150px;
  color: #fff;
}
.business-overview--infrastructure:before {
  content: "";
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/business/infrastructure-bg.webp") no-repeat center/cover;
}
.business-overview--living:before {
  content: "";
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../img/business/living-bg.webp") no-repeat center/cover;
}
.business-overview--maintenance, .business-overview--agefree, .business-overview--flos {
  background: transparent linear-gradient(180deg, #0D7786 0%, #00C3DD 100%) 0% 0% no-repeat padding-box;
}
@media all and (max-width: 767px) {
  .business-overview--maintenance, .business-overview--agefree, .business-overview--flos {
    padding-block: 100px;
  }
}
.business-overview-title {
  margin-bottom: 90px;
  text-align: center;
  font-size: 4rem;
  line-height: 1.6;
  letter-spacing: 0.2em;
}
@media all and (max-width: 767px) {
  .business-overview-title {
    margin-bottom: 45px;
    letter-spacing: 0.1em;
    font-size: 3rem;
  }
}
@media all and (max-width: 767px) {
  .business-overview-title--agefree {
    font-size: 2.6rem;
    letter-spacing: normal;
  }
}
.business-overview-title--real-estate {
  margin-bottom: 65px;
}
@media all and (max-width: 767px) {
  .business-overview-title--real-estate {
    margin-bottom: 45px;
    font-size: 2.6rem;
    letter-spacing: normal;
  }
}
.business-overview-row {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 0.75fr;
}
@media all and (max-width: 767px) {
  .business-overview-row {
    grid-template-columns: 1fr;
    max-width: 300px;
    margin-inline: auto auto;
  }
}
.business-overview-header {
  display: grid;
  place-content: start;
  gap: 20px;
}
@media all and (max-width: 767px) {
  .business-overview-header {
    place-content: center;
    margin-bottom: 30px;
  }
}
.business-overview-header__title {
  display: grid;
  align-items: center;
  grid-template-columns: 40px 1fr;
  gap: 10px;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}
@media all and (max-width: 767px) {
  .business-overview-header__title {
    display: block;
    font-size: 1.4rem;
    text-align: center;
    letter-spacing: 0.08em;
  }
}
@media all and (max-width: 767px) {
  .business-overview-header__title img {
    display: block;
    margin: 5px auto 0 auto;
  }
}
.business-overview-header__catch {
  font-size: 4rem;
  line-height: 1.6;
  letter-spacing: 0.2em;
}
@media all and (max-width: 767px) {
  .business-overview-header__catch {
    font-size: 2.4rem;
    line-height: 1.6666666667;
    text-align: center;
    letter-spacing: 0.1em;
  }
}
.business-overview-body__title {
  margin-bottom: 25px;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 0.0871428571;
  line-height: 1.5714285714;
}
@media all and (max-width: 767px) {
  .business-overview-body__title {
    font-size: 2rem;
    text-align: center;
  }
}
.business-overview-body__text {
  display: grid;
  gap: 10px;
  margin-bottom: 40px;
  line-height: 1.75;
  letter-spacing: 0.08em;
}

/*==================================================
m-business-section-title
==================================================*/
.business-section-title {
  margin-bottom: 80px;
  font-size: 4rem;
  text-align: center;
  color: var(--primary-color);
}
@media all and (max-width: 767px) {
  .business-section-title {
    margin-bottom: 60px;
  }
}
@media all and (max-width: 767px) {
  .business-section-title--project {
    margin-bottom: 40px;
  }
}
.business-section-title__ico {
  display: block;
  width: 40px;
  margin: 0 auto 20px;
}
@media all and (max-width: 767px) {
  .business-section-title__ico {
    margin-bottom: 20px;
  }
}
.business-section-title__text {
  font-size: 1.8rem;
  font-weight: 700;
}
@media all and (max-width: 767px) {
  .business-section-title__text {
    font-size: 1.4rem;
  }
}
.business-section-title__text--nami {
  padding-bottom: 5px;
  background: url("../img/business/asset-management/ico-nami.svg") no-repeat center bottom;
}
.business-section-title__catch {
  font-size: 4rem;
  line-height: 1.6;
  letter-spacing: 0.2em;
}
@media all and (max-width: 767px) {
  .business-section-title__catch {
    margin-top: 10px;
    font-size: 2.3rem;
    letter-spacing: 0.1em;
  }
}

/*==================================================
business-support
==================================================*/
.business-support-wrap {
  display: grid;
  gap: 80px;
}
@media all and (max-width: 767px) {
  .business-support-wrap {
    gap: 60px;
  }
}

.business-support {
  padding: 130px 0;
}
@media all and (max-width: 767px) {
  .business-support {
    padding-block: 80px;
  }
}
.business-support-row {
  display: grid;
  grid-template-columns: 1fr 0.7fr;
  gap: 50px;
  align-items: center;
  justify-content: space-between;
}
.business-support-row:nth-child(even) {
  grid-template-columns: 0.7fr 1fr;
}
@media all and (max-width: 767px) {
  .business-support-row:nth-child(even) {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
@media all and (max-width: 767px) {
  .business-support-row {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
@media all and (max-width: 767px) {
  .business-support-unit {
    order: 1;
  }
}
.business-support-unit__title {
  margin-bottom: 25px;
  color: var(--primary-color);
  font-weight: 700;
  font-size: 2.8rem;
}
@media all and (max-width: 767px) {
  .business-support-unit__title {
    text-align: center;
    font-size: 2rem;
  }
}
.business-support-unit__texts {
  display: grid;
  gap: 1em;
  margin-bottom: 40px;
}

/*==================================================
business-milestone
==================================================*/
.business-milestone {
  padding-block: 100px;
}
@media all and (max-width: 767px) {
  .business-milestone {
    padding-block: 60px;
  }
}
.business-milestone-title {
  text-align: center;
  font-size: 4rem;
  line-height: 1.6;
  letter-spacing: 0.2em;
  color: var(--primary-color);
}
@media all and (max-width: 767px) {
  .business-milestone-title {
    margin-bottom: 30px;
    font-size: 2.4rem;
    letter-spacing: 0.1em;
  }
}
.business-milestone-lead {
  margin-bottom: 60px;
  text-align: center;
  letter-spacing: 0.1em;
}
@media all and (max-width: 767px) {
  .business-milestone-lead {
    margin-bottom: 40px;
    text-align: left;
  }
}
.business-milestone-list {
  display: flex;
  justify-content: center;
  gap: 20px;
}
@media all and (max-width: 767px) {
  .business-milestone-list {
    display: grid;
  }
}

/*==================================================
contact
==================================================*/
.contact {
  padding: 20px;
  border-radius: 24px;
  text-align: center;
  border: 1px solid #C9E5EA;
}
.contact-section {
  padding-block: 100px;
}
@media all and (max-width: 1023px) {
  .contact-section {
    padding-block: 40px;
  }
}
@media all and (max-width: 767px) {
  .contact-section {
    padding-block: 60px;
  }
}
.contact-lead {
  margin-top: 60px;
  margin-bottom: 40px;
  text-align: center;
  font-size: 2rem;
  letter-spacing: 0.2em;
}
@media all and (max-width: 767px) {
  .contact-lead {
    margin-top: 30px;
    margin-bottom: 20px;
    font-size: 1.8rem;
  }
}
.contact-nav {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(5, 1fr);
  text-align: center;
}
@media all and (max-width: 1023px) {
  .contact-nav {
    gap: 10px;
  }
}
@media all and (max-width: 767px) {
  .contact-nav {
    grid-template-columns: repeat(2, 1fr);
  }
}
.contact-nav__link {
  display: grid;
  grid-template-rows: 110px 3em;
  padding: 40px 20px;
  border: 4px solid #fff;
  border-radius: 24px;
  background: #fff;
  color: var(--primary-color);
}
@media all and (max-width: 1023px) {
  .contact-nav__link {
    grid-template-rows: 80px auto;
    padding: 15px 5px;
  }
}
@media all and (max-width: 767px) {
  .contact-nav__link {
    grid-template-rows: auto auto;
    width: 100%;
    padding: 15px;
  }
}
.contact-nav__ico {
  display: block;
  width: 100%;
  height: 110px;
  margin: 0 auto 20px auto;
  background: no-repeat center;
}
@media all and (max-width: 1023px) {
  .contact-nav__ico {
    height: 70px;
    background-size: contain;
  }
}
@media all and (max-width: 767px) {
  .contact-nav__ico {
    height: 60px;
    margin: 0 auto;
    background-size: contain;
  }
}
.contact-nav__ico--asset {
  background-image: url("../img/contact/ico-asset.svg");
}
@media all and (max-width: 1023px) {
  .contact-nav__ico--asset {
    width: 70px;
  }
}
@media all and (max-width: 767px) {
  .contact-nav__ico--asset {
    width: 60px;
  }
}
.contact-nav__ico--heart {
  background-image: url("../img/contact/ico-heart.svg");
}
@media all and (max-width: 1023px) {
  .contact-nav__ico--heart {
    width: 70px;
  }
}
@media all and (max-width: 767px) {
  .contact-nav__ico--heart {
    width: 60px;
  }
}
.contact-nav__ico--estate {
  background-image: url("../img/contact/ico-estate.svg");
}
@media all and (max-width: 1023px) {
  .contact-nav__ico--estate {
    width: 60px;
  }
}
@media all and (max-width: 767px) {
  .contact-nav__ico--estate {
    width: 50px;
  }
}
.contact-nav__ico--maintenance {
  background-image: url("../img/contact/ico-maintenance.svg");
}
@media all and (max-width: 1023px) {
  .contact-nav__ico--maintenance {
    width: 70px;
  }
}
@media all and (max-width: 767px) {
  .contact-nav__ico--maintenance {
    width: 60px;
  }
}
.contact-nav__ico--mail {
  background-image: url("../img/contact/ico-mail.svg");
}
@media all and (max-width: 1023px) {
  .contact-nav__ico--mail {
    width: 60px;
  }
}
@media all and (max-width: 767px) {
  .contact-nav__ico--mail {
    width: 50px;
  }
}
.contact-nav__text {
  display: grid;
  place-content: center;
  margin-top: auto;
  height: 4em;
  font-weight: 700;
}
@media all and (max-width: 1023px) {
  .contact-nav__text {
    font-size: 1.2rem;
    letter-spacing: 0;
  }
}
.contact-nav label {
  cursor: pointer;
  display: block;
  position: relative;
}
@media (hover: hover) and (pointer: fine) {
  .contact-nav label:hover .contact-nav__link {
    border-color: #C9E5EA;
  }
}
.contact-nav__radio {
  cursor: pointer;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.contact-nav__radio:checked + .contact-nav__link {
  border-color: #FFBA00 !important;
  color: #FFBA00;
}
.contact-nav__radio:checked + .contact-nav__link .contact-nav__ico--asset {
  background-image: url("../img/contact/ico-asset-select.svg");
}
.contact-nav__radio:checked + .contact-nav__link .contact-nav__ico--heart {
  background-image: url("../img/contact/ico-heart-select.svg");
}
.contact-nav__radio:checked + .contact-nav__link .contact-nav__ico--estate {
  background-image: url("../img/contact/ico-estate-select.svg");
}
.contact-nav__radio:checked + .contact-nav__link .contact-nav__ico--maintenance {
  background-image: url("../img/contact/ico-maintenance-select.svg");
}
.contact-nav__radio:checked + .contact-nav__link .contact-nav__ico--mail {
  background-image: url("../img/contact/ico-mail-select.svg");
}
.contact-title {
  margin-bottom: 60px;
  text-align: center;
  font-size: 4rem;
  letter-spacing: 0.1em;
  color: var(--primary-color);
}
@media all and (max-width: 767px) {
  .contact-title {
    margin-bottom: 30px;
    font-size: 2.6rem;
  }
}
.contact-row {
  display: grid;
  grid-template-columns: 0.7fr 1fr;
  gap: 80px;
}
@media all and (max-width: 1023px) {
  .contact-row {
    gap: 30px;
  }
}
@media all and (max-width: 767px) {
  .contact-row {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.contact-data {
  display: grid;
}
.contact-data dt {
  margin-bottom: 5px;
}
.contact-data dd {
  margin-bottom: 24px;
}
.contact-tel {
  margin-bottom: 24px;
}
.contact-tel__unit {
  display: grid;
  place-content: center;
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
  height: fit-content;
  margin-bottom: 20px;
  text-align: center;
  border: 4px solid #C9E5EA;
  border-radius: 24px;
}
@media all and (max-width: 767px) {
  .contact-tel__unit {
    padding: 10px 10px 15px 10px;
  }
}
.contact-tel__title {
  color: var(--primary-color);
  font-size: 2rem;
  font-weight: 500;
}
.contact-tel__num {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--primary-color);
  font-size: 4rem;
  line-height: 1.4;
}
@media all and (max-width: 1023px) {
  .contact-tel__num {
    font-size: 3rem;
  }
}
@media all and (max-width: 767px) {
  .contact-tel__num {
    font-size: 3.6rem;
    line-height: 1.4;
  }
}
.contact-tel__num img {
  display: inline-block;
  margin-bottom: 10px;
}
@media all and (max-width: 1023px) {
  .contact-tel__num img {
    width: 26px;
    margin-bottom: 5px;
  }
}
@media all and (max-width: 767px) {
  .contact-tel__num img {
    width: 34px;
    margin-bottom: 5px;
  }
}
.contact-tel__day {
  font-size: 1.6rem;
}
.contact-tel__day + .contact-tel__title {
  margin-top: 2rem;
}
.contact-tel__texts {
  display: grid;
  gap: 1em;
  padding: 0 1em;
}
@media all and (max-width: 767px) {
  .contact-tel__texts {
    padding: 0;
  }
}
.contact-input {
  width: 360px;
  height: 50px;
  padding: 0 20px;
  border-radius: 8px;
  border: solid 2px #e7f7fa;
  background: #E7F7FA !important;
}
@media all and (max-width: 767px) {
  .contact-input {
    width: 100%;
    border-radius: 8px !important;
  }
}
.contact-input:focus {
  border: var(--primary-color) solid 2px;
  outline: none;
}
.contact-input::placeholder {
  color: rbga(#3F3A39, 0.3);
}
.contact-input--error {
  border-color: #FF7E7E;
}
.contact-textarea {
  width: 100%;
  height: 233px;
  padding: 20px;
  background: #E7F7FA;
  border-radius: 12px;
  border: none;
  border: solid 2px #e7f7fa;
}
.contact-textarea:focus {
  border: var(--primary-color) solid 2px;
  outline: none;
}
.contact-textarea::placeholder {
  color: rbga(#3F3A39, 0.3);
}
.contact-textarea--error {
  border-color: #FF7E7E;
}
.contact-required {
  display: inline-block;
  text-align: center;
  width: 57px;
  margin-right: 5px;
  background: #FF7272;
  color: #fff;
  border-radius: 40px;
  font-size: 1.2rem;
}
.contact-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 360px;
  height: 70px;
  background: transparent linear-gradient(256deg, #B8D000 0%, #FFD145 100%) 0% 0% no-repeat padding-box;
  border: none;
  box-shadow: 0px 8px 16px rgba(70, 88, 101, 0.2392156863);
  border-radius: 54px;
  opacity: 1;
  color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .contact-button:hover {
    border: 2px solid #B8D000;
    color: #B8D000;
    background: #fff;
  }
}
@media all and (max-width: 767px) {
  .contact-button {
    width: 100%;
  }
}
.contact-button__mail {
  padding-left: 40px;
  background: url("../img/contact/ico-mail-wh.svg") no-repeat left center;
}
@media (hover: hover) and (pointer: fine) {
  .contact-button:hover .contact-button__mail {
    background-image: url("../img/contact/ico-mail-color.svg");
  }
}
.contact-error-text {
  margin-top: 5px;
  color: #FF7272;
}
.contact-checkbox {
  position: relative;
}
.contact-checkbox input[type=checkbox] {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
}
.contact-checkbox__ico {
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 3px;
  border: 2px solid var(--primary-color);
  background: #fff;
}
@media all and (max-width: 1023px) {
  .contact-checkbox__ico {
    width: 24px;
    height: 24px;
  }
}
input[type=checkbox]:checked + .contact-checkbox__ico {
  background: var(--primary-color) url("../img/contact/ico-check.svg") no-repeat center;
}
.contact-line {
  display: flex;
  align-items: center;
  margin-top: 10px;
  flex-wrap: wrap;
}

input[type=checkbox] {
  width: 2em;
  height: 2em;
  accent-color: var(--primary-color);
  border-radius: 8px;
}

/*==================================================
project
==================================================*/
.project {
  padding-top: 130px;
  background: url("../img/business/asset-management/project-bg.webp") no-repeat left top/contain;
}
@media all and (max-width: 767px) {
  .project {
    padding-top: 40px;
  }
}
.project-row {
  display: grid;
  grid-template-columns: 1fr 0.75fr;
  gap: 60px;
  margin-bottom: 80px;
}
@media all and (max-width: 1023px) {
  .project-row {
    gap: 30px;
    margin-bottom: 60px;
  }
}
@media all and (max-width: 767px) {
  .project-row {
    grid-template-columns: 1fr;
    margin-bottom: 40px;
  }
}
@media all and (max-width: 767px) {
  .project-row__img {
    margin-bottom: 30px;
  }
}
.project-title {
  margin-bottom: 25px;
  font-size: 2.8rem;
  line-height: 1.5714285714;
  letter-spacing: 0.08em;
}
.project-lead {
  display: grid;
  gap: 1em;
  margin-bottom: 40px;
}
.project-lead p {
  letter-spacing: 0.08em;
}
.project-data {
  display: grid;
  gap: 50px;
  padding: 0 1em;
}
@media all and (max-width: 767px) {
  .project-data {
    gap: 25px;
    padding: 0;
  }
}
.project-data__title {
  margin-bottom: 10px;
  color: var(--primary-color);
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
.project-data dd {
  letter-spacing: 0.08em;
}
.project-bnr {
  text-align: center;
}

/*==================================================
outlook
==================================================*/
.outlook {
  padding: 60px 0 130px 0;
}
@media all and (max-width: 1023px) {
  .outlook {
    padding: 60px 0;
  }
}
@media all and (max-width: 767px) {
  .outlook {
    padding: 60px 0;
  }
}
.outlook-title {
  margin-bottom: 25px;
  text-align: center;
  color: var(--primary-color);
  font-size: 2.8rem;
  line-height: 1.5714285714;
  letter-spacing: 0.1em;
}
.outlook-row {
  display: flex;
  justify-content: center;
  gap: 45px;
}
@media all and (max-width: 1023px) {
  .outlook-row {
    gap: 30px;
  }
}
@media all and (max-width: 767px) {
  .outlook-row {
    display: grid;
    grid-template-columns: 1fr;
  }
}
.outlook-unit {
  text-align: center;
}
.outlook-unit__img {
  display: block;
  margin: 0 auto 16px;
}
.outlook-unit__title {
  margin-bottom: 9px;
  font-weight: 700;
  font-size: 1.8rem;
}
/*==================================================
flos
==================================================*/
.flos-contents {
  display: grid;
  gap: 60px;
}
@media all and (max-width: 1023px) {
  .flos-contents {
    gap: 30px;
  }
}
.flos-row {
  display: grid;
  grid-template-columns: 1fr 0.75fr;
  align-items: center;
  gap: 60px;
}
@media all and (max-width: 1023px) {
  .flos-row {
    gap: 30px;
  }
}
@media all and (max-width: 767px) {
  .flos-row {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.flos-row:nth-child(even) {
  grid-template-columns: 0.75fr 1fr;
}
@media all and (max-width: 767px) {
  .flos-row:nth-child(even) {
    grid-template-columns: 1fr;
  }
}
@media all and (max-width: 767px) {
  .flos-integration {
    order: -1;
  }
}
.flos-integration__lead {
  margin-bottom: 24px;
}
.flos-integration__wrap {
  display: grid;
  gap: 10px;
}
.flos-integration__data {
  padding: 18px 15px;
  background: rgba(255, 255, 255, 0.3215686275) 0% 0% no-repeat padding-box;
  border-radius: 24px;
}
.flos-integration__data dt {
  margin-bottom: 5px;
  font-weight: 600;
}
.flos-shape__title {
  margin-bottom: 25px;
  font-size: 2.8rem;
  text-align: center;
}
@media all and (max-width: 767px) {
  .flos-shape__title {
    font-size: 2rem;
  }
}
.flos-shape__text {
  text-align: center;
}
@media all and (max-width: 767px) {
  .flos-shape__text {
    text-align: left;
  }
}
.flos-title {
  margin-bottom: 25px;
  font-size: 2.8rem;
  line-height: 1.5714285714;
  letter-spacing: 0.08em;
}
@media all and (max-width: 767px) {
  .flos-title {
    font-size: 2rem;
  }
}
.flos-texts {
  display: grid;
  gap: 1em;
}
.flos-bnr {
  box-shadow: 0px 0px 4px 4px rgba(70, 88, 101, 0.25);
}

/*==================================================
compnay
==================================================*/
.company {
  padding-block: 80px;
  background: #FDFCF4;
}
@media all and (max-width: 767px) {
  .company {
    padding-block: 60px;
  }
}
.company-title {
  margin-bottom: 55px;
  text-align: center;
  font-size: 4rem;
  letter-spacing: 0.2em;
  color: var(--primary-color);
}
@media all and (max-width: 767px) {
  .company-title {
    margin-bottom: 30px;
    font-size: 2.4rem;
  }
}
.company-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}
@media all and (max-width: 767px) {
  .company-row {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.company-unit {
  display: grid;
  gap: 30px;
  font-feature-settings: "palt";
}

/*==================================================
greeting
==================================================*/
.greeting {
  margin-bottom: 10rem;
}
@media all and (max-width: 767px) {
  .greeting {
    margin-bottom: 4rem;
  }
}
.greeting-lead {
  aspect-ratio: 1770/660;
  display: flex;
  align-items: center;
  background: url("../img/greeting/person.webp") no-repeat center bottom/contain;
}
@media all and (max-width: 767px) {
  .greeting-lead {
    aspect-ratio: 750/660;
    margin-top: 40px;
    display: flex;
    align-items: center;
    background-size: 100% auto;
    background-image: url("../img/greeting/sp-person.webp");
    background-position: center top;
    padding-top: 0;
    padding-left: 20px;
  }
}
@media all and (max-width: 767px) {
  .greeting-lead .m-inner {
    padding-inline: unset;
  }
}
.greeting-title {
  margin-bottom: 25px;
  font-size: 4rem;
  letter-spacing: 0.2em;
  line-height: 1.775;
  color: var(--primary-color);
}
@media all and (max-width: 767px) {
  .greeting-title {
    margin-bottom: 20px;
    font-size: 2.2rem;
    line-height: 1.64;
  }
}
.greeting-sign {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  color: var(--primary-color);
}
@media all and (max-width: 767px) {
  .greeting-sign {
    font-size: 1.1rem;
  }
}
.greeting-sign__company {
  margin-bottom: 5px;
  font-weight: 700;
}
.greeting-sign__row {
  display: flex;
  align-items: center;
  gap: 10px;
  line-height: 1.4;
}
.greeting-sign__job {
  font-weight: 700;
}
.greeting-sign__name {
  font-size: 2.4rem;
  letter-spacing: 0.2em;
}
@media all and (max-width: 767px) {
  .greeting-sign__name {
    font-size: 1.8rem;
  }
}
.greeting-row {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 80px;
  padding-block: 60px 100px;
}
@media all and (max-width: 1023px) {
  .greeting-row {
    gap: 40px;
  }
}
@media all and (max-width: 767px) {
  .greeting-row {
    gap: 40px;
    grid-template-columns: 1fr;
    padding-block: 50px 60px;
  }
}
.greeting-row__img {
  align-self: end;
  margin-bottom: -8rem;
  border-radius: 2.4rem;
}
@media all and (max-width: 1023px) {
  .greeting-row__img {
    align-self: end;
  }
}
@media all and (max-width: 767px) {
  .greeting-row__img {
    order: 2;
    padding-top: 0;
    aspect-ratio: 16/9;
    overflow: hidden;
    margin-bottom: unset;
  }
  .greeting-row__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 30%;
  }
}
.greeting-row__texts {
  display: grid;
  place-content: start;
  padding-right: 40px;
  gap: 1.5em;
  line-height: 1.75;
  letter-spacing: 0.08em;
}
@media all and (max-width: 767px) {
  .greeting-row__texts {
    padding-right: 0;
    order: 1;
  }
}

/*==================================================
property
==================================================*/
.property {
  padding-bottom: 100px;
}
@media all and (max-width: 767px) {
  .property {
    padding-bottom: 40px;
  }
}
.property-row {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 60px;
}
@media all and (max-width: 1023px) {
  .property-row {
    gap: 40px;
  }
}
@media all and (max-width: 767px) {
  .property-row {
    grid-template-columns: 1fr;
  }
}
.property-body {
  position: relative;
}
.property-subtitle {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  margin-bottom: 20px;
  font-size: 1.8rem;
}
.property-subtitle::after {
  content: "";
  flex: 1;
  height: 1px;
  background: #C9E5EA;
}
.property-main {
  width: 100%;
  aspect-ratio: 5/3;
  background: #E4EFEC;
  border-radius: 24px;
  margin-bottom: 24px;
}
@media all and (max-width: 767px) {
  .property-main {
    margin-bottom: 10px;
    border-radius: 16px;
  }
}
.property-main__img {
  display: block;
  height: 100%;
  margin-inline: auto auto;
}
.property-pos {
  position: relative;
}
@media all and (max-width: 767px) {
  .property-pos {
    display: flex;
    justify-content: center;
  }
}
.property-pos__next, .property-pos__prev {
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
  width: 100px;
  height: 100px;
  margin: auto;
  border: none;
  padding: 0;
}
@media all and (max-width: 767px) {
  .property-pos__next, .property-pos__prev {
    display: none;
  }
}
.property-pos__prev {
  left: 0;
  background: url("../img/business/asset-management/detail/ico-prev.svg") no-repeat center/contain;
}
.property-pos__next {
  right: 0;
  background: url("../img/business/asset-management/detail/ico-next.svg") no-repeat center/contain;
}
.property-thumbs {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
  max-width: 530px;
  margin-inline: auto auto;
}
@media all and (max-width: 1023px) {
  .property-thumbs {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media all and (max-width: 767px) {
  .property-thumbs {
    display: flex;
    flex-wrap: wrap;
    width: fit-content;
  }
}
.property-thumbs__item {
  overflow: hidden;
  position: relative;
  width: 80px;
  height: 60px;
  border-radius: 16px;
  background: #E4EFEC;
  cursor: pointer;
}
@media all and (max-width: 767px) {
  .property-thumbs__item {
    width: 60px;
    height: 45px;
    border-radius: 12px;
  }
}
.property-thumbs__item.is-active:before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: 16px;
  border: 4px solid var(--primary-color);
}
@media all and (max-width: 767px) {
  .property-thumbs__item.is-active:before {
    border-width: 2px;
    border-radius: 12px;
  }
}
.property-thumbs__item img {
  display: block;
  width: 80px;
  height: 60px;
  object-fit: cover;
}
@media all and (max-width: 767px) {
  .property-thumbs__item img {
    width: 60px;
    height: 45px;
  }
}
.property-info {
  padding-bottom: 100px;
}
@media all and (max-width: 767px) {
  .property-info {
    padding-bottom: 60px;
  }
}

/*==================================================
agefree
==================================================*/
.agefree-contents {
  display: grid;
  gap: 60px;
}
@media all and (max-width: 1023px) {
  .agefree-contents {
    gap: 40px;
  }
}
@media all and (max-width: 767px) {
  .agefree-contents {
    gap: 40px;
  }
}
.agefree-row {
  display: grid;
  grid-template-columns: 1fr 0.75fr;
  align-items: center;
  gap: 60px;
}
@media all and (max-width: 1023px) {
  .agefree-row {
    gap: 30px;
  }
}
@media all and (max-width: 767px) {
  .agefree-row {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.agefree-row:nth-child(even) {
  grid-template-columns: 0.75fr 1fr;
}
@media all and (max-width: 767px) {
  .agefree-row:nth-child(even) {
    grid-template-columns: 1fr;
  }
}
@media all and (max-width: 767px) {
  .agefree-row__img {
    order: 1;
  }
}
.agefree-title {
  margin-bottom: 25px;
  font-size: 2.8rem;
  line-height: 1.5714285714;
  letter-spacing: 0.08em;
}
@media all and (max-width: 1023px) {
  .agefree-title {
    font-size: 2.6rem;
  }
}
@media all and (max-width: 767px) {
  .agefree-title {
    font-size: 2.2rem;
  }
}
.agefree-title__support {
  display: block;
  font-size: 1.6rem;
}
@media all and (max-width: 767px) {
  .agefree-title__support {
    font-size: 1.3rem;
  }
}
.agefree-texts {
  display: grid;
  gap: 1em;
  line-height: 1.625;
}
.agefree-service {
  padding-block: 60px 100px;
}
@media all and (max-width: 767px) {
  .agefree-service {
    padding-block: 30px 50px;
  }
}
.agefree-area {
  padding-block: 100px;
  background: #FDFCF4;
}
@media all and (max-width: 767px) {
  .agefree-area {
    padding-block: 60px;
  }
}
.agefree-map {
  margin-bottom: 40px;
  border-radius: 24px;
}
@media all and (max-width: 767px) {
  .agefree-map {
    margin-bottom: 30px;
  }
}
@media all and (max-width: 767px) {
  .agefree-map__inner {
    width: 800px;
  }
}
.agefree-map__body {
  padding: 25px 20px;
}

/*==================================================

==================================================*/
.maintenance-contents {
  display: grid;
  gap: 60px;
}
@media all and (max-width: 1023px) {
  .maintenance-contents {
    gap: 40px;
  }
}
@media all and (max-width: 767px) {
  .maintenance-contents {
    gap: 40px;
  }
}
.maintenance-row {
  display: grid;
  grid-template-columns: 1fr 0.75fr;
  align-items: center;
  gap: 60px;
}
@media all and (max-width: 1023px) {
  .maintenance-row {
    gap: 30px;
  }
}
@media all and (max-width: 767px) {
  .maintenance-row {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.maintenance-row:nth-child(even) {
  grid-template-columns: 0.75fr 1fr;
}
@media all and (max-width: 767px) {
  .maintenance-row:nth-child(even) {
    grid-template-columns: 1fr;
  }
}
@media all and (max-width: 767px) {
  .maintenance-row__img {
    order: 1;
  }
}
.maintenance-title {
  margin-bottom: 25px;
  font-size: 2.8rem;
  line-height: 1.5714285714;
  letter-spacing: 0.08em;
}
@media all and (max-width: 1023px) {
  .maintenance-title {
    font-size: 2.6rem;
  }
}
@media all and (max-width: 767px) {
  .maintenance-title {
    font-size: 2.2rem;
  }
}
.maintenance-texts {
  display: grid;
  gap: 1em;
  line-height: 1.625;
}

.maintenance-service {
  padding-block: 60px 100px;
}
@media all and (max-width: 767px) {
  .maintenance-service {
    padding-block: 60px;
  }
}
.maintenance-service-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 60px 80px;
  max-width: 1130px;
  margin: 0 auto 60px;
}
@media all and (max-width: 1023px) {
  .maintenance-service-row {
    gap: 30px;
  }
}
@media all and (max-width: 767px) {
  .maintenance-service-row {
    display: grid;
    grid-template-columns: 1fr;
  }
}
.maintenance-service-unit__img {
  display: block;
  margin-bottom: 16px;
}
.maintenance-service-unit__title {
  margin-bottom: 9px;
  font-weight: 700;
  font-size: 1.8rem;
  text-align: center;
  color: var(--primary-color);
}
.maintenance-service-unit__text {
  font-size: 1.4rem;
}

.maintenance-items {
  padding: 40px 50px;
  background: #FDFCF4;
}
@media all and (max-width: 767px) {
  .maintenance-items {
    padding: 30px 20px;
  }
}
.maintenance-items__title {
  margin-bottom: 40px;
  text-align: center;
  color: var(--primary-color);
  font-size: 2.8rem;
  line-height: 1.5714285714;
}
@media all and (max-width: 767px) {
  .maintenance-items__title {
    font-size: 2rem;
  }
}
.maintenance-items__list {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, 1fr);
  color: var(--primary-color);
}
@media all and (max-width: 1240px) {
  .maintenance-items__list {
    width: fit-content;
    margin-inline: auto;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media all and (max-width: 767px) {
  .maintenance-items__list {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.maintenance-items__list li {
  font-weight: 600;
  padding-left: 1em;
  text-indent: -1.2em;
}
/*==================================================
history
==================================================*/
.history-page {
  padding-bottom: 100px;
}
@media all and (max-width: 1023px) {
  .history-page {
    padding-bottom: 60px;
  }
}
.history-table {
  width: 100%;
  max-width: 980px;
  margin-inline: auto;
  line-height: 2;
}
.history-table__year {
  width: 140px;
  color: var(--primary-color);
  padding-left: 40px;
}
@media all and (max-width: 767px) {
  .history-table__year {
    width: 100px;
    padding-left: 10px;
  }
}
.history-table__month {
  width: 60px;
  color: var(--primary-color);
}
@media all and (max-width: 767px) {
  .history-table__month {
    width: 50px;
  }
}
.history-table__description {
  padding-right: 40px;
}
@media all and (max-width: 767px) {
  .history-table__description {
    padding-right: 10px;
  }
}
.history-table__line {
  border-top: 1px solid #C9E5EA;
}
.history-table__line td {
  padding-block: 30px;
}
@media all and (max-width: 767px) {
  .history-table__line td {
    padding-block: 20px;
  }
}
.history-table:not(.history-table__line) td {
  padding-bottom: 30px;
}
@media all and (max-width: 767px) {
  .history-table:not(.history-table__line) td {
    padding-bottom: 20px;
  }
}
.history-table tr:first-child {
  border: none;
}
.history-table tr:first-child td {
  padding-top: 0;
}
.history-table tr:last-child {
  border-bottom: 1px solid #C9E5EA;
}

/*==================================================
sdgs
==================================================*/
.sdgs-section {
  padding-bottom: 100px;
}
@media all and (max-width: 767px) {
  .sdgs-section {
    padding-bottom: 60px;
  }
}
.sdgs-positive {
  margin-top: 60px;
  padding: 40px;
  background: #FDFCF4;
}
@media all and (max-width: 767px) {
  .sdgs-positive {
    margin-top: 30px;
    padding: 30px 20px;
  }
}
.sdgs-positive__title {
  margin-bottom: 20px;
  font-size: 2.8rem;
  color: var(--primary-color);
}
@media all and (max-width: 767px) {
  .sdgs-positive__title {
    font-size: 2.2rem;
  }
}
.sdgs-positive__text {
  max-width: 880px;
  margin: 0 auto 25px;
  text-align: left;
}
.sdgs-title {
  margin-bottom: 20px;
  color: var(--primary-color);
  font-size: 2.8rem;
  text-align: center;
}
.sdgs-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px 45px;
  margin: 0 auto 90px;
}
@media all and (max-width: 1023px) {
  .sdgs-row {
    gap: 30px;
  }
}
@media all and (max-width: 767px) {
  .sdgs-row {
    display: grid;
    margin-bottom: 20px;
    gap: 15px;
    grid-template-columns: 1fr 1fr;
  }
}
.sdgs-unit {
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 16px;
}
.sdgs-unit dl {
  display: grid;
  grid-template-rows: 1fr 80px;
  gap: 10px;
}
.sdgs-unit__img {
  display: block;
}
.sdgs-unit__title {
  display: grid;
  place-items: center;
  margin-bottom: 9px;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  text-align: center;
}
@media all and (max-width: 767px) {
  .sdgs-unit__title {
    font-size: 1.4rem;
  }
}
.sdgs-unit__items {
  display: flex;
  justify-content: center;
  gap: 10px;
}
.sdgs-unit__items img {
  width: 80px;
}
@media all and (max-width: 1023px) {
  .sdgs-unit__items img {
    width: 50px;
    height: 50px;
  }
}
.sdgs-unit__small {
  font-size: 1.6rem;
  display: block;
  margin-top: 5px;
}
@media all and (max-width: 767px) {
  .sdgs-unit__small {
    font-size: 1.2rem;
  }
}
.sdgs-message {
  text-align: center;
  font-size: 1.8rem;
  line-height: 2;
}
@media all and (max-width: 767px) {
  .sdgs-message {
    font-size: 1.6rem;
    text-align: left;
  }
}
.sdgs-message strong {
  color: var(--primary-color);
  font-weight: inherit;
}

/*==================================================
access
==================================================*/
.access-nav {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  max-width: 940px;
  margin: 0 auto 100px auto;
}
@media all and (max-width: 767px) {
  .access-nav {
    grid-template-columns: repeat(2, 1fr);
    gap: 0 10px;
    margin-bottom: 60px;
  }
}
.access-nav__col {
  padding-bottom: 16px;
}
@media all and (max-width: 767px) {
  .access-nav__col {
    padding-bottom: 12px;
  }
}
.access-nav__unit {
  position: relative;
  display: grid;
  grid-template-rows: 120px 1fr;
  gap: 10px;
  box-shadow: 0px 8px 16px rgba(70, 88, 101, 0.2392156863);
  border-radius: 24px;
  height: 100%;
  padding: 35px 20px 30px 20px;
}
@media all and (max-width: 767px) {
  .access-nav__unit {
    grid-template-rows: 90px 1fr;
    padding: 15px 10px 15px 10px;
    box-shadow: 0px 4px 8px rgba(70, 88, 101, 0.2392156863);
  }
}
@media (hover: hover) and (pointer: fine) {
  .access-nav__unit:hover {
    opacity: 1;
  }
}
.access-nav__unit:before {
  content: "";
  transition: transform 0.6s, opacity 0.4s;
  transform: scale(1.01);
  opacity: 0;
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 4px solid #C9E5EA;
  border-radius: inherit;
}
@media (hover: hover) and (pointer: fine) {
  .access-nav__unit:hover:before {
    opacity: 1;
    transform: scale(1);
  }
}
.access-nav__ico {
  display: grid;
  align-items: center;
}
.access-nav__ico img {
  display: block;
  margin-inline: auto;
}
.access-nav__name {
  display: grid;
  align-items: center;
  color: var(--primary-color);
  text-align: center;
  font-weight: 600;
  line-height: 1.6;
}
@media all and (max-width: 1023px) {
  .access-nav__name {
    line-height: 1.4;
  }
}
.access-contents {
  display: grid;
  gap: 100px;
  padding-bottom: 100px;
}
@media all and (max-width: 767px) {
  .access-contents {
    gap: 70px;
    padding-bottom: 70px;
  }
}
.access-title {
  margin-bottom: 40px;
  text-align: center;
  font-size: 3.6rem;
}
@media all and (max-width: 767px) {
  .access-title {
    margin-bottom: 20px;
    font-size: 2.4rem;
    line-height: 1.6;
  }
}
.access-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}
@media all and (max-width: 1023px) {
  .access-row {
    gap: 30px;
  }
}
@media all and (max-width: 767px) {
  .access-row {
    gap: 20px;
  }
}
@media all and (max-width: 767px) {
  .access-row {
    grid-template-columns: 1fr;
  }
}
.access-row__body {
  display: grid;
  gap: 30px;
}
.access-data {
  display: grid;
  place-content: start;
  gap: 15px;
}
@media all and (max-width: 767px) {
  .access-data {
    gap: 5px;
  }
}
.access-data__title {
  color: var(--primary-color);
  font-size: 2.8rem;
  font-weight: 600;
}
@media all and (max-width: 767px) {
  .access-data__title {
    font-size: 2rem;
  }
}
.access-map {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
}
.access-text {
  margin-bottom: 40px;
  text-align: center;
}
@media all and (max-width: 767px) {
  .access-text {
    margin-bottom: 30px;
    text-align: left;
  }
}

/*==================================================
group
==================================================*/
.group-contents {
  display: grid;
  gap: 100px;
  padding-bottom: 100px;
}
@media all and (max-width: 767px) {
  .group-contents {
    gap: 70px;
    padding-bottom: 60px;
  }
}
.group-row {
  display: grid;
  align-items: center;
  grid-template-columns: 65fr 48fr;
  gap: 60px;
}
@media all and (max-width: 1023px) {
  .group-row {
    grid-template-columns: 1fr;
    gap: 30px;
    max-width: 600px;
    margin-inline: auto;
  }
}
@media all and (max-width: 767px) {
  .group-row {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
@media all and (max-width: 1023px) {
  .group-row__img {
    order: 1;
  }
}
@media all and (max-width: 1023px) {
  .group-row__body {
    order: 2;
  }
}
.group-section:nth-child(even) .group-row {
  grid-template-columns: 48fr 65fr;
}
@media all and (max-width: 1023px) {
  .group-section:nth-child(even) .group-row {
    grid-template-columns: 1fr;
  }
}
@media all and (max-width: 767px) {
  .group-section:nth-child(even) .group-row {
    grid-template-columns: 1fr;
  }
}
.group-subtitle {
  display: grid;
  grid-template-columns: 4em 1fr;
  gap: 10px;
  align-items: center;
  margin-bottom: 20px;
  font-size: 1.8rem;
}
.group-subtitle:after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background: #C9E5EA;
}
.group-button-area {
  margin-top: 30px;
}

/*==================================================
real-estate
==================================================*/
.real-estate-row {
  display: grid;
  grid-template-columns: 64fr 48fr;
  align-items: center;
  gap: 60px;
  margin-bottom: 60px;
}
@media all and (max-width: 1023px) {
  .real-estate-row {
    gap: 30px;
    margin-bottom: 40px;
  }
}
@media all and (max-width: 767px) {
  .real-estate-row {
    grid-template-columns: 1fr;
    gap: 30px;
    margin-bottom: 30px;
  }
}
@media all and (max-width: 767px) {
  .real-estate-row__img {
    order: -1;
  }
}
.real-estate-texts {
  display: grid;
  gap: 1em;
  font-size: 1.6rem;
}
.real-estate-about {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
@media all and (max-width: 1023px) {
  .real-estate-about {
    grid-template-columns: repeat(2, 1fr);
    max-width: 600px;
    margin-inline: auto;
  }
}
@media all and (max-width: 767px) {
  .real-estate-about {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.real-estate-about__unit {
  display: grid;
  grid-template-rows: 110px 1fr;
  padding: 34px 25px;
  gap: 10px;
  place-items: start;
  border-radius: 24px;
  background: #fff;
  color: #3F3A39;
}
@media all and (max-width: 767px) {
  .real-estate-about__unit {
    padding: 25px 15px;
  }
}
.real-estate-about__ico {
  display: block;
  margin: auto;
}
.real-estate-about__title {
  margin-bottom: 10px;
  text-align: center;
  font-weight: 600;
  font-size: 1.8rem;
}
@media all and (max-width: 767px) {
  .real-estate-about__text {
    font-size: 1.4rem;
  }
}
.real-estate-unit {
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 16px;
}
.real-estate-unit dl {
  display: grid;
  grid-template-rows: 4em auto;
  gap: 10px;
}
@media all and (max-width: 767px) {
  .real-estate-unit dl {
    grid-template-rows: auto auto;
  }
}
.real-estate-unit__img {
  display: block;
}
.real-estate-unit__title {
  display: grid;
  place-items: center;
  margin-bottom: 9px;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  text-align: center;
  color: var(--primary-color);
}
@media all and (max-width: 767px) {
  .real-estate-unit__title {
    margin-bottom: 0;
  }
}
.real-estate-unit__items {
  font-size: 1.4rem;
  line-height: 2;
}
.real-estate-unit__small {
  font-size: 1.6rem;
  display: block;
  margin-top: 5px;
}
@media all and (max-width: 767px) {
  .real-estate-unit__small {
    font-size: 1.2rem;
  }
}
.real-estate-unit__list li {
  display: grid;
  grid-template-columns: 20px 1fr;
}
.real-estate-unit__list li:before {
  content: "";
  display: block;
  margin-top: 10px;
  width: 8px;
  height: 8px;
  background: var(--primary-color);
  border-radius: 50%;
}
.real-estate-unit__space {
  margin-bottom: 1em;
}
.real-estate-business {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 75px 80px;
  max-width: 1130px;
  margin-inline: auto;
}
@media all and (max-width: 1023px) {
  .real-estate-business {
    gap: 20px;
  }
}
@media all and (max-width: 767px) {
  .real-estate-business {
    gap: 40px;
    margin-bottom: 20px;
    grid-template-columns: 1fr;
  }
}
.real-estate-section {
  padding-block: 60px;
}
@media all and (max-width: 767px) {
  .real-estate-section {
    padding-bottom: 30px;
  }
}

/*--------------------------------------
securitysign
----------------------------------------*/
.securitysign-content {
  max-width: 880px;
  margin: 0 auto;
  text-align: left;
}
.securitysign-content .m-data__item {
  grid-template-columns: 12em 1fr;
}
@media all and (max-width: 767px) {
  .securitysign-content .m-data__item {
    grid-template-columns: unset;
  }
}

/*JS*/
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-slider * {
  outline: none;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 50px;
  width: 50px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev {
  left: -20px;
}

.slick-next {
  right: -20px;
}

.slick-dots {
  position: absolute;
  bottom: -20px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: red;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  padding: 5px;
  border-radius: 50%;
  cursor: pointer;
}
.slick-dots li button:focus, .slick-dots li button:hover {
  outline: none;
}
.slick-dots li.slick-active button {
  background: blue;
}

/*SASS MODULE*//*# sourceMappingURL=style.css.map */