@charset "UTF-8";
/* html */
/* ローディング画面 */
#loading {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 9999;
  display: flex;
  justify-content: center;
}

.loaded {
  transition: opacity 0.5s ease-out;
  display: none !important;
}

.sk-cube-grid {
  width: 40px;
  height: 40px;
}

.sk-cube-grid .sk-cube {
  width: 33%;
  height: 33%;
  background-color: var(--main-color);
  float: left;
  -webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
  animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
}

.sk-cube-grid .sk-cube1 {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.sk-cube-grid .sk-cube2 {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.sk-cube-grid .sk-cube3 {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
}

.sk-cube-grid .sk-cube4 {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}

.sk-cube-grid .sk-cube5 {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.sk-cube-grid .sk-cube6 {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.sk-cube-grid .sk-cube7 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.sk-cube-grid .sk-cube8 {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}

.sk-cube-grid .sk-cube9 {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

@-webkit-keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
    transform: scale3D(1, 1, 1);
  }
  35% {
    -webkit-transform: scale3D(0, 0, 1);
    transform: scale3D(0, 0, 1);
  }
}
@keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
    transform: scale3D(1, 1, 1);
  }
  35% {
    -webkit-transform: scale3D(0, 0, 1);
    transform: scale3D(0, 0, 1);
  }
}
@media (768px < width) {
  body {
    background-image: var(--horiz-bg-gradient);
    position: relative;
    z-index: 1;
  }
}

@media (768px < width) {
  .container.group > * {
    inline-size: calc(100% - var(--gutter-outer) * 2);
    max-inline-size: min(1520px, 100%);
  }
}

main.contents.index__contents + .illust-wrapper {
  --_fluid-ratio: calc(1 / var(--pc-layout-width) * 100vw);
  position: relative;
  z-index: calc(-infinity);
  display: none;
}
@media (768px < width) {
  main.contents.index__contents + .illust-wrapper {
    display: block;
  }
}

.bg-illust {
  inline-size: 100vw;
  block-size: 1600px;
  position: fixed;
  top: 0;
  left: 0;
}
.bg-illust > img {
  inline-size: calc(var(--_width) * var(--_fluid-ratio));
  position: absolute;
  left: calc(var(--_x, 0) * var(--_fluid-ratio));
  top: calc(var(--_y, 0) * var(--_fluid-ratio));
  object-fit: cover;
}
.bg-illust > img:nth-of-type(1) {
  --_width: 729;
  --_x: -95;
  --_y: 0;
}
.bg-illust > img:nth-of-type(2) {
  --_width: 624;
  --_x: 1545;
  --_y: 442;
}
.bg-illust > img:nth-of-type(3) {
  --_width: 412;
  --_x: -35;
  --_y: 1071;
}

span.bg-ball, span.bg-ball::before, span.bg-ball::after {
  display: block;
  inline-size: calc(var(--_width) * var(--_fluid-ratio));
  aspect-ratio: 1;
  position: fixed;
  left: calc(var(--_x, 0) * var(--_fluid-ratio));
  top: calc(var(--_y, 0) * var(--_fluid-ratio));
  background-image: var(--vert-bg-gradient);
  border-radius: 50%;
}
span.bg-ball::before, span.bg-ball::after {
  content: "";
}
span.bg-ball {
  --_width: 469;
  --_x: 1610;
  --_y: 1310;
}
span.bg-ball::before {
  --_width: 330;
  --_x: 1680;
  --_y: -48;
}
span.bg-ball::after {
  --_width: 248;
  --_x: 121;
  --_y: 672;
}

hgroup.section__title {
  margin-block-end: 16px;
}
@media (768px < width) {
  hgroup.section__title {
    margin-block-end: 68px;
  }
}

.section__subtitle {
  color: var(--main-color);
  font-weight: bold;
  font-size: clamp(1.1875rem, 0.6059751973rem + 2.3675310034vw, 2.5rem);
  word-break: keep-all;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

.section__desc {
  color: var(--body-fg-light);
  font-weight: bold;
  font-size: clamp(0.75rem, 0.5284667418rem + 0.9019165727vw, 1.25rem);
  line-height: 1.75;
}

.nowrap {
  white-space: nowrap;
}

.btn-group {
  inline-size: fit-content;
  display: block flex;
  flex-direction: column;
  row-gap: clamp(0.625rem, 0.3480834273rem + 1.1273957159vw, 1.25rem);
}

.btn-arrow {
  font-size: clamp(0.6875rem, 0.2998167982rem + 1.5783540023vw, 1.5625rem);
  min-block-size: 35px;
  max-block-size: 70px;
  --_btn-pad-x-st: clamp(1.0625rem, 0.7025084555rem + 1.4656144307vw, 1.875rem);
  --_btn-pad-x-ed: clamp(0.5625rem, 0.4240417136rem + 0.5636978579vw, 0.875rem);
  --_btn-pad-y: clamp(0.53125rem, 0.2127959414rem + 1.2965050733vw, 1.25rem);
  --_append-spacing: clamp(1.25rem, 1.1807708568rem + 0.281848929vw, 1.40625rem);
  --_circle-size: clamp(1.125rem, 0.7927001127rem + 1.3528748591vw, 1.875rem);
  --_arrow-size:clamp(0.78125rem, 0.5735625705rem + 0.8455467869vw, 1.25rem);
  display: block grid;
  grid-template: "text after"/1fr auto;
  align-items: center;
  padding: var(--_btn-pad-y) var(--_btn-pad-x-ed) var(--_btn-pad-y) var(--_btn-pad-x-st);
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  border-radius: calc(infinity * 1px);
}
.btn-arrow.btn--filled {
  text-align: revert;
}
.btn-arrow.btn--filled::after {
  grid-area: after;
  content: "";
  display: block flow;
  inline-size: var(--_circle-size);
  block-size: var(--_circle-size);
  margin-inline-start: var(--_append-spacing);
  border-radius: calc(infinity * 1px);
  background: #fff url("/anp@2x.png") no-repeat center/var(--_arrow-size);
}
.btn-arrow.btn--outlined {
  text-align: revert;
}
.btn-arrow.btn--outlined::after {
  grid-area: after;
  content: "";
  display: block flow;
  inline-size: var(--_circle-size);
  block-size: var(--_circle-size);
  margin-inline-start: var(--_append-spacing);
  border-radius: calc(infinity * 1px);
  background: var(--main-color) url("/anf@2x.png") no-repeat center/var(--_arrow-size);
}

.btn--filled {
  background: var(--main-color);
  color: #fff;
  transition: background-color 0.3s;
}
.btn--filled:disabled, .btn--filled[aria-disabled=true] {
  background-color: oklch(from var(--main-color) calc(l + 0.2) calc(c - 0.1) h);
}
@media (any-hover: hover) {
  .btn--filled:not(:disabled, [aria-disabled=true]):hover {
    background-color: color-mix(in srgb, var(--main-color) 70%, #fff);
  }
}

.btn--outlined {
  color: var(--main-color);
  box-shadow: inset 0 0 0 2px currentColor;
  background-color: #fff;
  transition: background-color 0.3s;
}
.btn--outlined:disabled, .btn--outlined[aria-disabled=true] {
  color: oklch(from var(--main-color) calc(l + 0.2) calc(c - 0.1) h);
}
@media (any-hover: hover) {
  .btn--outlined:not(:disabled, [aria-disabled=true]):hover {
    background-color: color-mix(in srgb, var(--main-color) 15%, #fff);
  }
}

section.kv {
  display: block grid;
  grid-template: "stack";
}
section.kv > video#video {
  grid-area: stack;
  inline-size: 100%;
}
section.kv .banner-area {
  grid-area: stack;
  align-self: end;
  justify-self: end;
  display: inline flex;
  column-gap: clamp(0.8125rem, -0.40625rem + 2.5390625vw, 1.625rem);
  padding-inline: clamp(1.6875rem, -0.84375rem + 5.2734375vw, 3.375rem);
  translate: 0 43px;
}
@media (1300px >= width) {
  section.kv .banner-area {
    translate: 0 100px;
  }
}
@media (768px >= width) {
  section.kv .banner-area {
    display: none;
  }
}
section.kv .banner {
  display: inline grid;
  grid-template: "img title" 1fr "img subtitle"/minmax(96px, 180fr) minmax(192px, 220fr);
  column-gap: 15px;
  padding: 10.5px 12.5px;
  border: 2px solid #fff;
  box-shadow: 0 5px 5px rgb(from #333 r g b/0.3);
  transition: box-shadow 0.1s, translate 0.1s;
}
section.kv .banner.renewal {
  background-image: linear-gradient(90deg, #00A499, #A0D884);
}
section.kv .banner.reform {
  background-image: linear-gradient(90deg, #0086D1, #4AC9E3);
}
@media (any-hover: hover) {
  section.kv .banner:hover {
    box-shadow: 0 5px 25px 0.5px rgb(from #333 r g b/0.3);
    translate: 0 -5px;
  }
}
section.kv .banner__img {
  grid-area: img;
}
section.kv .banner__img > img {
  inline-size: 100%;
  block-size: 100%;
}
section.kv .banner__title {
  grid-area: title;
  align-self: center;
  color: #fff;
  font-weight: bold;
  font-size: clamp(1rem, 0.625rem + 0.78125vw, 1.25rem);
}
section.kv .banner__subtitle {
  grid-area: subtitle;
  font-size: clamp(0.75rem, 0.375rem + 0.78125vw, 1rem);
  display: inline grid !important;
  display: block grid;
  grid-template: "text after"/1fr auto;
  align-items: center;
  padding: unset;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
section.kv .banner__subtitle {
  text-align: revert;
}
section.kv .banner__subtitle::after {
  grid-area: after;
  content: "";
  display: block flow;
  inline-size: 30px;
  block-size: 30px;
  margin-inline-start: 8px;
  border-radius: calc(infinity * 1px);
  background: #fff url("/anp@2x.png") no-repeat center/20px;
}
section.kv .banner__subtitle > span {
  justify-self: start;
  display: inline flow-root;
  padding: 8.5px 10px;
  background-color: #fff;
  border-radius: calc(infinity * 1px);
}

section.about-us {
  background-image: var(--vert-bg-gradient);
  --_over-kv-height: 60;
  --_fluid-ratio: calc(1 / var(--sp-layout-width) * (100vw - var(--scrollbar-width)));
  margin-block-start: calc(-1 * var(--_over-kv-height) * var(--_fluid-ratio));
  padding-block-start: calc(var(--_over-kv-height) * var(--_fluid-ratio) + 42px);
  padding-block-end: clamp(1.9375rem, 1.1898252537rem + 3.0439684329vw, 3.625rem);
}
@media (768px < width) {
  section.about-us {
    background-image: unset;
    margin-block-start: 127px;
    padding-block-start: unset;
  }
}
section.about-us h3.section__subtitle {
  margin-block-end: clamp(0.9375rem, 0.2729002255rem + 2.7057497182vw, 2.4375rem);
}
section.about-us p.section__desc {
  word-break: keep-all;
  overflow-wrap: anywhere;
  margin-block-end: clamp(2.0625rem, 1.2594419391rem + 3.2694475761vw, 3.875rem);
}

section.about-us .container__inner {
  display: block grid;
  grid-auto-flow: row;
}
section.about-us .container__inner .section__body,
section.about-us .container__inner .btn-group {
  padding-inline: var(--gutter-inner);
}
section.about-us .container__inner .section__body {
  grid-row: 1/2;
}
section.about-us .container__inner .btn-group {
  grid-row: 3/4;
}
section.about-us .container__inner .image-wrapper {
  grid-row: 2/3;
}
@media (768px < width) {
  section.about-us .container__inner {
    grid-template-columns: 1fr 1fr;
    column-gap: 40px;
  }
  section.about-us .container__inner .section__body,
  section.about-us .container__inner .btn-group {
    padding-inline: 0;
  }
  section.about-us .container__inner .section__body {
    grid-row: 1/2;
    grid-column: 1/2;
  }
  section.about-us .container__inner .btn-group {
    grid-row: 2/3;
    grid-column: 1/2;
  }
  section.about-us .container__inner .image-wrapper {
    grid-row: 1/3;
    grid-column: 2/3;
  }
}

section.about-us .image-wrapper {
  margin-block-end: clamp(0rem, -0.4430665163rem + 1.8038331454vw, 1rem);
  --_layout-width: calc(var(--sp-layout-width) - var(--gt-outer) * 2);
  --_layout-height: 304;
  --_fluid-ratio: calc(1 / var(--_layout-width) * 100cqi);
  block-size: calc(var(--_layout-height) * var(--_fluid-ratio));
  container-type: inline-size;
  position: relative;
}
@media (768px < width) {
  section.about-us .image-wrapper {
    margin-block-end: revert;
    block-size: unset;
  }
}
@media (768px < width) and (1280px < width) {
  section.about-us .image-wrapper {
    --_layout-width: 530;
  }
}
section.about-us .image-wrapper .image--gradient-bg {
  inline-size: calc(var(--_width) * var(--_fluid-ratio));
  position: absolute;
  left: calc(var(--_x, 0) * var(--_fluid-ratio) - var(--gutter-outer));
  top: calc((var(--_y, 0) - 562) * var(--_fluid-ratio));
}
section.about-us .image-wrapper .image--gradient-bg:nth-of-type(1) {
  --_width: 129;
  --_x: -8;
  --_y: 583;
}
section.about-us .image-wrapper .image--gradient-bg:nth-of-type(2) {
  --_width: 263;
  --_x: 178;
  --_y: 562;
}
section.about-us .image-wrapper .image--gradient-bg:nth-of-type(3) {
  --_width: 145;
  --_x: 56;
  --_y: 765;
}
section.about-us .image-wrapper .image--gradient-bg:nth-of-type(4) {
  --_width: 186;
  --_x: 228;
  --_y: 751;
}
@media (1280px < width) {
  section.about-us .image-wrapper .image--gradient-bg {
    --_fluid-ratio: calc(1 / var(--_layout-width) * 100cqi);
    left: calc((var(--_x, 0) - 980) * var(--_fluid-ratio));
    top: calc((var(--_y, 0) - 1127) * var(--_fluid-ratio));
  }
  section.about-us .image-wrapper .image--gradient-bg:nth-of-type(1) {
    --_width: 256;
    --_x: 1043;
    --_y: 1161;
  }
  section.about-us .image-wrapper .image--gradient-bg:nth-of-type(2) {
    --_width: 520;
    --_x: 1413;
    --_y: 1121;
  }
  section.about-us .image-wrapper .image--gradient-bg:nth-of-type(3) {
    --_width: 284;
    --_x: 1171;
    --_y: 1523;
  }
  section.about-us .image-wrapper .image--gradient-bg:nth-of-type(4) {
    --_width: 371;
    --_x: 1510;
    --_y: 1486;
  }
}
section.about-us .image-wrapper .image--gradient-bg::after {
  background-image: var(--vert-bg-gradient);
  display: block;
  inline-size: 100%;
  block-size: 100%;
  position: absolute;
  top: -20px;
  left: 15px;
  z-index: -1;
}
@media (768px < width) {
  section.about-us .image-wrapper .image--gradient-bg::after {
    content: "";
  }
}
section.about-us .image-wrapper .image--gradient-bg > img {
  inline-size: 100%;
}
section.about-us .image-wrapper .image--gradient-bg::after, section.about-us .image-wrapper .image--gradient-bg > img {
  border-radius: var(--border-radius-md);
}

section.news {
  background-color: rgb(from #fff r g b/0.6);
  padding-block: 75px;
}
section.news .section__body,
section.news .btn-group {
  padding-inline: var(--gutter-inner);
}
section.news .btn-group {
  margin-inline: auto;
}
section.news .btn-arrow {
  min-inline-size: 129px;
}
section.news .news-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  min-height: clamp(18.75rem, 18.75rem + 0vw, 18.75rem);
  margin-bottom: 40px;
  /* 各ニュース項目 */
}
section.news .news-container .news-item {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  border-bottom: 1px solid #e0e0e0; /* 下線 */
  padding: 10px 0;
  width: 100%;
  height: auto;
  min-height: 80px;
  /* 日付部分 */
  /* カテゴリ部分 */
}
@media (768px > width) {
  section.news .news-container .news-item {
    row-gap: 16px;
    padding: 10px 15px 15px 0;
    margin-inline-end: 10px;
    margin-bottom: 15px;
    flex-wrap: wrap;
  }
}
section.news .news-container .news-item .news-date {
  font-size: clamp(0.875rem, 0.5642265193rem + 1.3259668508vw, 1.625rem);
  color: #333333;
  width: clamp(3.75rem, 1.8335635359rem + 8.1767955801vw, 8.375rem);
  margin: 0 40px 0 0;
  line-height: 0.8;
}
section.news .news-container .news-item .news-category {
  background-color: #0086D1;
  color: #ffffff;
  font-size: clamp(0.875rem, 0.7196132597rem + 0.6629834254vw, 1.25rem);
  font-weight: bold;
  padding: clamp(0.25rem, 0.2241022099rem + 0.1104972376vw, 0.3125rem) 10px;
  border-radius: 5px;
  text-align: center;
  width: clamp(6.25rem, 4.7479281768rem + 6.408839779vw, 9.875rem);
  height: clamp(1.5rem, 1.2669198895rem + 0.9944751381vw, 2.0625rem);
  margin: 0 20px 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
section.news .news-container .news-item .news-category.all {
  background-color: #FF7BAC;
}
section.news .news-container .news-item .news-category.info {
  background-color: #0086D1;
}
section.news .news-container .news-item .news-category.event {
  background-color: #FF8F1C;
}
section.news .news-container .news-item .news-category.achive {
  background-color: #00A499;
}
section.news .news-container .news-item .news-content {
  font-size: clamp(1rem, 0.8964088398rem + 0.4419889503vw, 1.25rem);
  font-weight: bold;
  word-break: break-word;
  flex: 1;
}
section.news .news-container .news-item .news-content a.permalink:hover {
  color: var(--main-color);
}
@media (768px > width) {
  section.news .news-container .news-item .news-content {
    min-width: calc(clamp(23.4375rem, 0rem + 100vw, 48rem) - 50px);
  }
}
@media (768px < width) {
  section.news {
    padding-block: 126px 74px;
  }
  section.news .section__body,
  section.news .btn-group {
    padding-inline: 0;
  }
  section.news .btn-arrow {
    min-inline-size: 267px;
  }
}

@media (768px >= width) {
  section.service .container__inner {
    padding-block: 33px 44px;
    background-image: var(--vert-bg-gradient);
    inline-size: calc(100% - var(--gutter-outer));
    padding-inline-start: var(--gutter-inner);
    padding-inline-end: calc(var(--gutter-inner) + var(--gutter-outer));
    margin-inline-end: calc(-1 * var(--gutter-outer));
    --_fluid-ratio: calc(1 / var(--sp-layout-width) * (100vw - var(--scrollbar-width)));
    --_radius: 50;
    --_r: calc(var(--_radius) * var(--_fluid-ratio));
    border-radius: var(--_r) 0 0 var(--_r);
  }
}
section.service .section__body h3.section__subtitle {
  margin-block-end: 15px;
}
section.service .section__body p.section__desc {
  margin-block-end: 62px;
}
section.service .btn-group {
  margin-inline: auto;
}
section.service .btn-arrow {
  min-inline-size: 129px;
}
@media (768px < width) {
  section.service {
    padding-block: 206px 99px;
  }
  section.service .section__body h3.section__subtitle {
    margin-block-end: 48px;
  }
  section.service .section__body p.section__desc {
    margin-block-end: 93px;
  }
  section.service .btn-arrow {
    min-inline-size: 285px;
  }
}

section.service .subsection {
  --_hdg-before-w: 0.3em;
}
section.service .subsection h4.service-hdg {
  margin-block-end: 16.5px;
  position: relative;
}
section.service .subsection h4.service-hdg::before {
  content: "";
  background-color: currentColor;
  display: block;
  inline-size: var(--_hdg-before-w);
  block-size: 100%;
  position: absolute;
  left: calc(-1 * (var(--gutter-inner) - var(--_hdg-before-w)) / 2);
  top: 1px;
}
section.service .subsection .section__desc {
  margin-block-end: 23px;
}
section.service .subsection1 {
  margin-block-end: 55.5px;
}
@media (768px < width) {
  section.service .subsection {
    --_box-over-padding-x: 50px;
    padding-inline: calc(var(--_box-over-padding-x));
    background-color: #fff;
    border-radius: var(--border-radius-md);
  }
}
@media (768px < width) and (1280px < width) {
  section.service .subsection {
    margin-inline: calc(-1 * var(--_box-over-padding-x));
  }
}
@media (768px < width) {
  section.service .subsection h4.service-hdg::before {
    left: 0;
  }
  section.service .subsection h4.service-hdg, section.service .subsection h4.service-hdg + p.section__desc {
    padding-inline-start: calc(var(--_hdg-before-w) + 17px);
  }
  section.service .subsection h4.section__subtitle.service-hdg {
    margin-block-end: 48px;
  }
  section.service .subsection1 {
    padding-block: 60px 30px;
    margin-block-end: 82px;
  }
  section.service .subsection1 p.section__desc {
    margin-block-end: 54px;
  }
  section.service .subsection2 {
    padding-block: 73px 63px;
  }
  section.service .subsection2 p.section__desc {
    margin-block-end: 41px;
  }
}

.service__image-list {
  margin-block-end: 38px;
  display: block grid;
  grid-auto-columns: minmax(min(340px, 100%), 530px);
  justify-content: center;
  gap: 18px;
  color: #fff;
}
@media (1280px < width) {
  .service__image-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 40px;
  }
}
.service__image-list [class$=-title] {
  text-align: center;
  color: #fff;
  font-weight: bold;
  font-size: clamp(0.75rem, 0.4177001127rem + 1.3528748591vw, 1.5rem);
}
@media (1280px < width) {
  .service__image-list [class$=-title] {
    font-size: clamp(1.5rem, 0.75rem + 0.9375vw, 1.875rem);
  }
}
.service__image-list-item {
  display: block grid;
  grid-template: "stack";
  aspect-ratio: 530/340;
}
.service__image-list-item::before, .service__image-list-item-image, .service__image-list-item-title, .service__image-list-item-details {
  grid-area: stack;
}
.service__image-list-item::before, .service__image-list-item-image, .service__image-list-item-details {
  inline-size: 100%;
  block-size: 100%;
}
.service__image-list-item::before {
  z-index: 20;
  content: "";
  display: block flow;
  background-image: linear-gradient(180deg, transparent 65%, #000);
}
.service__image-list-item-image {
  z-index: 10;
}
.service__image-list-item-image > img {
  inline-size: 100%;
  block-size: 100%;
}
.service__image-list-item-title {
  z-index: 30;
  align-self: end;
  margin-bottom: 1em;
}
.service__image-list-item-details {
  display: none;
  grid-template-rows: auto 1fr;
  row-gap: clamp(0.375rem, 0.2196132597rem + 0.6629834254vw, 0.75rem);
  padding-block: clamp(0.5rem, 0.2928176796rem + 0.8839779006vw, 1rem);
  padding-inline: clamp(0.75rem, 0.5428176796rem + 0.8839779006vw, 1.25rem);
  position: relative;
  z-index: 120;
}
.service__image-list-item-details-title {
  padding-bottom: clamp(0.375rem, 0.2196132597rem + 0.6629834254vw, 0.75rem);
  border-bottom: 2px solid currentColor;
}
@media (1280px < width) {
  .service__image-list-item-details {
    row-gap: clamp(0.75rem, -0.875rem + 2.03125vw, 1.5625rem);
    padding-block: clamp(1rem, -1rem + 2.5vw, 2rem);
    padding-inline: clamp(0.75rem, -0.875rem + 2.03125vw, 1.5625rem);
  }
  .service__image-list-item-details-title {
    padding-bottom: clamp(0.75rem, -0.875rem + 2.03125vw, 1.5625rem);
  }
}
.service__image-list-item-details-link {
  /* border: 5px solid red; */
}
@media (any-hover: hover) {
  .service__image-list-item-details-link {
    display: block flow;
    inline-size: 100%;
    block-size: 100%;
    position: absolute;
    inset: 0;
    z-index: 200;
    cursor: pointer;
  }
  .service__image-list-item-details-link .visually-touch-only {
    display: none;
  }
}
@media (any-hover: none) {
  .service__image-list-item-details-link {
    justify-self: end;
    padding: 0.5em 1em;
    text-decoration-line: underline;
  }
}
.service__image-list-item-details-desc {
  z-index: 100;
  font-size: clamp(0.5625rem, 0.3812154696rem + 0.773480663vw, 1rem);
  line-height: 1.75;
}
.service__image-list-item:hover::before {
  background-image: linear-gradient(180deg, var(--body-fg) 0 0);
  background-blend-mode: multiply;
  opacity: 0.8;
}
.service__image-list-item:hover .service__image-list-item-title {
  display: none;
}
.service__image-list-item:hover .service__image-list-item-details {
  display: block grid;
}

.service__card-list {
  display: block grid;
  grid-template-columns: repeat(auto-fit, minmax(192px, 1fr));
  gap: clamp(1.125rem, 0.51578354rem + 2.480270575vw, 2.5rem);
}
.service__card-list-item {
  inline-size: 100%;
  block-size: 100%;
  aspect-ratio: 1;
  background-color: var(--main-color);
  color: #fff;
  border-radius: var(--border-radius-sm);
  padding: clamp(0.625rem, 0.3660220994rem + 1.1049723757vw, 1.25rem);
  display: block grid;
  place-items: center;
  row-gap: clamp(0.625rem, 0.3660220994rem + 1.1049723757vw, 1.25rem);
  position: relative;
  background: var(--main-color);
  color: #fff;
  transition: background-color 0.3s;
}
.service__card-list-item:disabled, .service__card-list-item[aria-disabled=true] {
  background-color: oklch(from var(--main-color) calc(l + 0.2) calc(c - 0.1) h);
}
@media (any-hover: hover) {
  .service__card-list-item:not(:disabled, [aria-disabled=true]):hover {
    background-color: color-mix(in srgb, var(--main-color) 70%, #fff);
  }
}
.service__card-list-item-image > img {
  object-fit: contain;
  inline-size: 100%;
  block-size: 100%;
  mix-blend-mode: lighten;
}
.service__card-list-item:nth-child(1) .service__card-list-item-image {
  inline-size: 88.5833333333%;
}
.service__card-list-item:nth-child(2) .service__card-list-item-image {
  inline-size: 73.6666666667%;
}
.service__card-list-item:nth-child(3) .service__card-list-item-image {
  inline-size: 80.4166666667%;
}
.service__card-list-item-text {
  align-self: end;
  font-weight: bold;
  font-size: clamp(1rem, 0.8892333709rem + 0.4509582864vw, 1.25rem);
  text-align: center;
  word-break: keep-all;
  overflow-wrap: anywhere;
  text-wrap-style: balance;
}
@media (any-hover: none) {
  .service__card-list-item-link {
    text-decoration-line: underline;
  }
}
.service__card-list-item-link::before {
  content: "";
  display: block flow;
  inline-size: 100%;
  block-size: 100%;
  position: absolute;
  inset: 0;
  z-index: 100;
  cursor: pointer;
}
@media (768px < width) {
  .service__card-list {
    grid-template-columns: repeat(3, 1fr);
  }
  .service__card-list-item {
    grid-row: span 2;
    grid-template-rows: subgrid;
    border-radius: var(--border-radius-md);
  }
}

section.works {
  padding-block-start: 102px;
}
section.works .section__subtitle {
  margin-block-end: 21px;
}
section.works .section__body {
  margin-block-end: 30px;
}
@media (768px < width) {
  section.works {
    background-color: rgb(from #fff r g b/0.6);
    padding-block-start: 136px;
  }
  section.works .section__title {
    margin-block-end: 45px;
  }
  section.works .section__subtitle {
    margin-block-end: 48px;
  }
  section.works .section__body {
    margin-block-end: 79px;
  }
}

.works__list {
  display: block grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: repeat(12, auto);
  row-gap: 0;
  column-gap: clamp(1.25rem, 0.7320441989rem + 2.2099447514vw, 2.5rem);
}
.works__list-item {
  display: block grid;
  grid-template-columns: subgrid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  row-gap: clamp(0.5rem, 0.3061583991rem + 0.7891770011vw, 0.9375rem);
  margin-block-end: clamp(1.125rem, -0.3149661781rem + 5.8624577227vw, 4.375rem);
}
.works__list-item:nth-last-child(3) ~ .works__list-item {
  margin-block-end: 0;
}
.works__list-item:first-child {
  grid-row: span 8;
}
.works__list-item:first-child .works__list-item-link {
  grid-row: 1/span 5;
}
.works__list-item-title {
  font-size: clamp(0.6875rem, 0.4382750846rem + 1.0146561443vw, 1.25rem);
  font-weight: bold;
  color: var(--main-color);
  display: block flex;
  column-gap: clamp(0.25rem, 0.0838500564rem + 0.6764374295vw, 0.625rem);
  align-items: center;
}
.works__list-item-subtitle {
  font-size: clamp(0.6875rem, 0.4936583991rem + 0.7891770011vw, 1.125rem);
  line-height: 1.3333333333;
}
.works__list-item-tags {
  display: block flex;
  flex-wrap: wrap;
  gap: clamp(0.25rem, 0.0838500564rem + 0.6764374295vw, 0.625rem);
}
.works__list-item-tags > li {
  font-size: clamp(0.5rem, 0.2230834273rem + 1.1273957159vw, 1.125rem);
  padding-block: clamp(0.34375rem, 0.1499083991rem + 0.7891770011vw, 0.78125rem);
  padding-inline: clamp(0.46875rem, 0.3995208568rem + 0.281848929vw, 0.625rem);
  border-radius: 6px;
  border: 1px solid currentColor;
}
.works__list-item-link {
  grid-row: 1/2;
  border-radius: var(--border-radius-md);
  overflow: clip;
  position: relative;
}
.works__list-item-link > img {
  block-size: 100%;
  inline-size: 100%;
}
.works__list-item-link::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgb(from #fff r g b/0.3);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
@media (any-hover: hover) {
  .works__list-item-link:hover::after {
    opacity: 1;
  }
}

.works__group-title {
  display: block flex;
  align-items: center;
  column-gap: clamp(0.5rem, 0.3338500564rem + 0.6764374295vw, 0.875rem);
  font-size: clamp(1.25rem, 0.9730834273rem + 1.1273957159vw, 1.875rem);
  font-weight: bold;
  color: var(--main-color);
  margin-block-start: clamp(1.875rem, 1.0442502818rem + 3.3821871477vw, 3.75rem);
  margin-block-end: clamp(1.25rem, 0.6961668546rem + 2.2547914318vw, 2.5rem);
}
.works__group-title:first-of-type {
  margin-block-start: 0;
}
.works__group-title::before {
  content: "";
  flex-shrink: 0;
  inline-size: clamp(0.3125rem, 0.2294250282rem + 0.3382187148vw, 0.5rem);
  block-size: 1em;
  background-color: var(--main-color);
}

.works__list:not(.works__list--reform) .works__list-item {
  margin-block-end: 0;
}
.works__list:not(.works__list--reform) .works__list-item:nth-child(2) {
  margin-block-end: clamp(1.125rem, -0.3149661781rem + 5.8624577227vw, 4.375rem);
}

.works__list--reform .works__list-item {
  margin-block-end: 0;
}
.works__list--reform .works__list-item:first-child {
  grid-row: span 4;
}
.works__list--reform .works__list-item:first-child .works__list-item-link {
  grid-row: 1/2;
}

.works__more {
  margin-block-start: clamp(1.875rem, 1.0442502818rem + 3.3821871477vw, 3.75rem);
  margin-inline: auto;
}

section.company {
  padding-block-start: clamp(6.375rem, 1.3074267193rem + 20.6313416009vw, 17.8125rem);
}
section.company .section__subtitle {
  margin-block-end: clamp(1.1875rem, 0.6336668546rem + 2.2547914318vw, 2.4375rem);
}
section.company .section__body {
  margin-block-end: clamp(1.78125rem, 1.324337655rem + 1.8602029312vw, 2.8125rem);
}
section.company .btn-group {
  margin-block-end: clamp(1.125rem, 0.6127043405rem + 2.0856820744vw, 2.28125rem);
}
section.company .image-wrapper {
  margin-block-end: clamp(0.9375rem, -2.1085822999rem + 12.4013528749vw, 7.8125rem);
}
@media (768px < width) {
  section.company {
    background-color: rgb(from #fff r g b/0.6);
  }
  section.company .section__title {
    margin-block-end: 39px;
  }
}

section.company .container__inner {
  position: relative;
  z-index: 10;
  --_fluid-ratio: calc(1 / var(--sp-layout-width) * (100vw - var(--scrollbar-width)));
  --_w: 971.6;
  --_h: 403;
}
@media (425px < width) {
  section.company .container__inner {
    --_fluid-ratio: calc(1 / 1100 * 100%);
    --_w: 2160;
    --_h: 896.5;
  }
}
section.company .container__inner::before {
  content: "";
  background-image: var(--service-bg-gradient);
  border-top-left-radius: 50% 100%;
  border-top-right-radius: 50% 100%;
  display: block;
  inline-size: calc(var(--_w) * var(--_fluid-ratio));
  block-size: calc(var(--_h) * var(--_fluid-ratio));
  position: absolute;
  left: calc(50% - var(--_w) * var(--_fluid-ratio) / 2);
  bottom: 0;
  z-index: -10;
}
section.company .image-wrapper {
  --_col-gap: clamp(0.9375rem, 0.2900552486rem + 2.7624309392vw, 2.5rem);
  inline-size: max-content;
  overflow-x: clip;
  display: block flex;
  column-gap: var(--_col-gap);
  margin-inline-start: calc(-1 * var(--gutter-outer));
}
@media (768px < width) {
  section.company .image-wrapper {
    margin-inline-start: calc(50% - (100vw - var(--scrollbar-width)) / 2);
  }
}
section.company .slider {
  --_fluid-ratio: calc(1 / var(--sp-layout-width) * (100vw - var(--scrollbar-width)));
  --_h: 137.5;
  --_w: 1290.78125;
  inline-size: calc(var(--_w) * var(--_fluid-ratio));
  block-size: calc(var(--_h) * var(--_fluid-ratio));
  display: block grid;
  grid-template-columns: 295fr 560fr 295fr 560fr 455fr 560fr 295fr 455fr;
  grid-template-rows: 1fr 1fr;
  grid-auto-flow: column;
  row-gap: calc(var(--_col-gap) * 34 / 40);
  column-gap: var(--_col-gap);
  animation: infinity-slider 30s infinite linear 0s both;
}
@media (768px < width) {
  section.company .slider {
    --_fluid-ratio: calc(1 / var(--pc-layout-width) * (100vw - var(--scrollbar-width)));
    --_h: 400;
    --_w: 3755;
  }
}
section.company .slider__item {
  grid-row: span 2;
}
section.company .slider__item:nth-child(1), section.company .slider__item:nth-child(3), section.company .slider__item:nth-child(8) {
  padding-block: calc(var(--_col-gap) * 38.5 / 40);
}
section.company .slider__item:nth-child(5), section.company .slider__item:nth-child(6), section.company .slider__item:nth-child(9), section.company .slider__item:nth-child(10) {
  grid-row: span 1;
}
section.company .slider__item > img {
  inline-size: 100%;
  block-size: 100%;
  border-radius: 10px;
}

@keyframes infinity-slider {
  from {
    translate: calc(-100% - var(--_col-gap)) 0;
  }
  to {
    translate: 0% 0;
  }
}
section.recruit {
  background-color: var(--main-color);
}
section.recruit .section__title,
section.recruit .section__title.hdg1 > h2,
section.recruit .section__subtitle,
section.recruit .section__desc {
  color: #fff;
}
section.recruit .section__title {
  margin-block-start: clamp(2.5625rem, 0.1394799887rem + 9.8647125141vw, 8.03125rem);
}
section.recruit .section__subtitle {
  margin-block-end: clamp(0.875rem, -0.0665163472rem + 3.833145434vw, 3rem);
  line-height: 1.5;
}
section.recruit .section__body {
  margin-block-end: clamp(1.78125rem, 1.5181792559rem + 1.0710259301vw, 2.375rem);
}
section.recruit .btn-group {
  margin-block-end: clamp(2.03125rem, 0.6051296505rem + 5.8060879369vw, 5.25rem);
}
@media (768px < width) {
  section.recruit .section__title {
    margin-block-end: 44.5px;
  }
}

section.recruit .container__inner {
  display: block grid;
  grid-auto-flow: row;
}
section.recruit .container__inner .section__body,
section.recruit .container__inner .btn-group {
  padding-inline: var(--gutter-inner);
}
section.recruit .container__inner .section__body {
  grid-row: 1/2;
}
section.recruit .container__inner .btn-group {
  grid-row: 2/3;
  margin-inline: auto;
}
section.recruit .container__inner .image-wrapper {
  grid-row: 3/4;
}
@media (768px < width) {
  section.recruit .container__inner {
    grid-template-columns: 1fr 40px 1fr;
  }
  section.recruit .container__inner .section__body,
  section.recruit .container__inner .btn-group {
    padding-inline: 0;
  }
  section.recruit .container__inner .section__body {
    grid-row: 1/2;
    grid-column: 1/3;
    display: block grid;
    grid-template-columns: subgrid;
    grid-auto-flow: row;
  }
  section.recruit .container__inner .section__body .section__subtitle {
    grid-column: span 2;
    word-break: keep-all;
    overflow-wrap: anywhere;
  }
  section.recruit .container__inner .btn-group {
    grid-row: 2/3;
    grid-column: 1/2;
    margin-inline: unset;
  }
  section.recruit .container__inner .image-wrapper {
    grid-row: 1/3;
    grid-column: 3/4;
  }
}
section.recruit .btn-group .btn-arrow.btn--filled {
  background: #fff;
  color: var(--main-color);
  transition: background-color 0.3s;
}
section.recruit .btn-group .btn-arrow.btn--filled:disabled, section.recruit .btn-group .btn-arrow.btn--filled[aria-disabled=true] {
  background-color: oklch(from #fff calc(l + 0.2) calc(c - 0.1) h);
}
@media (any-hover: hover) {
  section.recruit .btn-group .btn-arrow.btn--filled:not(:disabled, [aria-disabled=true]):hover {
    background-color: color-mix(in srgb, #fff 70%, var(--main-color));
  }
}
section.recruit .btn-group .btn-arrow.btn--filled {
  text-align: revert;
}
section.recruit .btn-group .btn-arrow.btn--filled::after {
  grid-area: after;
  content: "";
  display: block flow;
  inline-size: var(--_circle-size);
  block-size: var(--_circle-size);
  margin-inline-start: var(--_append-spacing);
  border-radius: calc(infinity * 1px);
  background: var(--main-color) url("/anf@2x.png") no-repeat center/var(--_arrow-size);
}
section.recruit .image-wrapper {
  position: relative;
  overflow-y: clip;
  --_shift-x: 5.5px;
  --_shift-y: 6.5px;
}
section.recruit .image-wrapper > div {
  inline-size: calc(100% - var(--_shift-x));
  block-size: 100%;
  display: block flex;
  column-gap: calc(20px + var(--_shift-x));
}
section.recruit .image-wrapper > div .image--recruit-bg {
  block-size: fit-content;
  position: relative;
}
section.recruit .image-wrapper > div .image--recruit-bg::before {
  content: "";
  display: block;
  inline-size: 100%;
  position: absolute;
  left: var(--_shift-x);
  z-index: 40;
}
section.recruit .image-wrapper > div .image--recruit-bg > img {
  inline-size: 100%;
  block-size: 100%;
  position: relative;
  z-index: 50;
}
section.recruit .image-wrapper > div .image--recruit-bg:nth-child(2n-1) {
  --_bottom: 19.5px;
  padding-block-end: calc(var(--_shift-y) + var(--_bottom));
}
@media (768px < width) {
  section.recruit .image-wrapper > div .image--recruit-bg:nth-child(2n-1) {
    --_bottom: 49px;
  }
}
section.recruit .image-wrapper > div .image--recruit-bg:nth-child(2n-1)::before {
  background-color: var(--recruit-accent-color);
  block-size: calc(100% - var(--_bottom));
  top: 0;
}
section.recruit .image-wrapper > div .image--recruit-bg:nth-child(2n-1)::before, section.recruit .image-wrapper > div .image--recruit-bg:nth-child(2n-1) > img {
  border-end-start-radius: var(--border-radius-md);
  border-end-end-radius: var(--border-radius-md);
}
section.recruit .image-wrapper > div .image--recruit-bg:nth-child(2) {
  align-self: end;
}
section.recruit .image-wrapper > div .image--recruit-bg:nth-child(2)::before {
  background-color: #fff;
  block-size: calc(100% - var(--_shift-y));
  top: var(--_shift-y);
}
section.recruit .image-wrapper > div .image--recruit-bg:nth-child(2)::before, section.recruit .image-wrapper > div .image--recruit-bg:nth-child(2) > img {
  border-start-start-radius: var(--border-radius-md);
  border-start-end-radius: var(--border-radius-md);
}
@media (768px < width) {
  section.recruit .image-wrapper {
    --_shift-x: 14px;
    --_shift-y: 16px;
    --_layout-width: 960;
    --_fluid-ratio: calc(1 / var(--_layout-width) * (100vw - var(--scrollbar-width)) / 2);
  }
  section.recruit .image-wrapper > div {
    inline-size: calc((100vw - var(--scrollbar-width)) / 2 - (60px + var(--_shift-x)));
    max-inline-size: calc(960px - (60px + var(--_shift-x)));
    justify-content: end;
  }
  section.recruit .image-wrapper > div .image--recruit-bg {
    --_width: 242;
    inline-size: calc(var(--_width) * var(--_fluid-ratio));
  }
}

section.group {
  background-image: linear-gradient(127deg, var(--service-bg), var(--accent-bg));
  --_img-over-height: 80;
  --_fluid-ratio: calc(1 / var(--sp-layout-width) * (100vw - var(--scrollbar-width)));
  margin-block-start: calc(var(--_img-over-height) * var(--_fluid-ratio) + 95px);
}
section.group .container__inner {
  padding-inline: var(--gutter-inner);
}
section.group .image-wrapper {
  margin-block-end: 37.5px;
}
section.group .section__title {
  margin-block-end: 23px;
}
section.group .section__body {
  margin-block-end: 29px;
}
section.group .btn-group {
  margin-inline: auto;
  margin-block-end: 32.5px;
}
@media (768px < width) {
  section.group {
    background-image: unset;
    background-color: rgb(from #fff r g b/0.6);
    --_fluid-ratio: calc(1 / var(--pc-layout-width) * (100vw - var(--scrollbar-width)));
    margin-block-start: unset;
    padding-block-start: 154px;
    padding-block-end: 153.5px;
  }
  section.group .container__inner {
    padding-inline: unset;
  }
  section.group .image-wrapper {
    margin-block-end: unset;
  }
  section.group .section__title {
    margin-block-end: 34px;
  }
  section.group .section__body {
    margin-block-end: 34px;
  }
  section.group .btn-group {
    margin-inline: unset;
    margin-block-end: unset;
  }
}

section.group .container__inner {
  margin-block-start: calc(-1 * var(--_img-over-height) * var(--_fluid-ratio));
  display: block grid;
}
section.group .container__inner .image-wrapper {
  order: -1;
  justify-self: end;
  --_width: 412;
}
section.group .container__inner .image-wrapper > img {
  inline-size: calc(var(--_width) * var(--_fluid-ratio));
  max-inline-size: none;
  border-radius: var(--border-radius-md);
}
@media (768px < width) {
  section.group .container__inner {
    margin-block-start: unset;
    grid-template-columns: 1fr 1fr;
  }
  section.group .container__inner .image-wrapper {
    grid-row: 1/span 2;
    grid-column: 1;
    align-self: center;
    --_width: 1030;
  }
  section.group .container__inner .image-wrapper > img {
    max-inline-size: revert;
    border-radius: calc(40 * var(--_fluid-ratio));
  }
  section.group .container__inner .section__body,
  section.group .container__inner .btn-group {
    grid-column: 2;
    margin-inline-start: calc(72 * var(--_fluid-ratio));
  }
  section.group .container__inner .section__body {
    grid-row: 1;
    align-self: end;
  }
}
section.group .section__body .section__title {
  font-weight: bold;
  font-size: clamp(1.1875rem, 0.6059751973rem + 2.3675310034vw, 2.5rem);
}
section.group .section__body .section__title span.line2 {
  display: inline flex;
  align-items: center;
}
@media (768px < width) {
  section.group .section__body .section__title span.line2 {
    align-items: normal;
  }
}
section.group .section__body .section__title span.line2 span.keiyo-gas-group {
  color: var(--main-color);
  content: url("/image/index__group_logo.svg");
  block-size: calc(1em + 12px);
  min-block-size: 37px;
  padding-block: 6px;
  padding-inline-end: 8px;
}
@media (768px < width) {
  section.group .section__body .section__title span.line2 span.keiyo-gas-group {
    content: revert;
    flex: 1 0 auto;
    padding: 0;
  }
}
section.group .section__body .section__title span.line2 span.desu {
  white-space: nowrap;
  display: inline flow-root;
}

section.contact {
  padding-block: 45.5px;
}
section.contact .container__inner {
  padding-inline: var(--gutter-inner);
}
section.contact .section__title {
  margin-block-end: 17px;
}
section.contact .section__body {
  margin-block-end: 38px;
}
@media (768px >= width) {
  section.contact {
    background-color: var(--main-color);
  }
  section.contact .section__title,
  section.contact .section__title.hdg1 > h2,
  section.contact .section__subtitle,
  section.contact .section__desc {
    color: #fff;
  }
}
@media (768px < width) {
  section.contact {
    padding-block-start: 108px;
    padding-block-end: 83px;
  }
  section.contact .container__inner {
    padding-inline: 0;
  }
  section.contact .section__title {
    margin-block-end: 45px;
  }
  section.contact .section__body {
    margin-block-end: 64px;
  }
}

section.contact .contact__list {
  display: block grid;
  --_min-cell-width: 290px;
  grid-template-columns: repeat(auto-fit, minmax(min(var(--_min-cell-width), 100%), 380px));
  justify-content: center;
  gap: 25px;
  /*
  @media (1280px < width) {
    margin-inline: -60px;
  }
  */
}
section.contact .contact__list-item {
  display: block grid;
  grid-template-rows: subgrid;
  grid-row: span 5;
  justify-items: center;
  row-gap: 0px;
  padding-block: 20px;
  padding-inline: 13px;
  background-color: #fff;
  border-radius: var(--border-radius-md);
}
section.contact .contact__list-item-icon {
  order: -1;
  object-fit: contain;
  margin-block: 25.5px;
  inline-size: clamp(4.5rem, 3.7246335964rem + 3.1567080045vw, 6.25rem);
  aspect-ratio: 1;
}
section.contact .contact__list-item-title {
  margin-block-end: 17.5px;
  font-weight: bold;
  font-size: clamp(1rem, 0.8892333709rem + 0.4509582864vw, 1.25rem);
  color: var(--main-color);
}
section.contact .contact__list-item-tel {
  margin-block-end: 11px;
  --_before-img: url("/image/phone_black.png");
  --_before-w: clamp(2.25rem, 2.0838500564rem + 0.6764374295vw, 2.625rem);
  --_before-h: clamp(1.625rem, 1.4865417136rem + 0.5636978579vw, 1.9375rem);
  font-weight: bold;
  font-size: clamp(2.125rem, 1.9588500564rem + 0.6764374295vw, 2.5rem);
  letter-spacing: -1.2px;
  white-space: nowrap;
  display: inline flex;
  align-items: center;
  column-gap: clamp(0.5625rem, 0.3294198895rem + 0.9944751381vw, 1.125rem);
  /*
  &.freedial {
    column-gap: function.rclamp(7, 11, var.$minViewport, var.$maxViewport);
    --_before-img: url("/image/free_dial.png");
    --_before-w: clamp(3.1875rem, 2.9521209132rem + 0.9582863585vw, 3.71875rem);
    --_before-h: clamp(1.875rem, 1.7365417136rem + 0.5636978579vw, 2.1875rem);
  }
  */
  /*
  ruby {
    ruby-align: center;

    rt {
      letter-spacing: normal;
      font-weight: 500;
      font-size: var(--_ruby-font-size);
    }
  }
  */
}
section.contact .contact__list-item-tel::before {
  content: "";
  display: block;
  inline-size: var(--_before-w);
  block-size: var(--_before-h);
  background: var(--_before-img) no-repeat center/contain;
}
section.contact .contact__list-item-note {
  margin-block-end: 19px;
  font-size: clamp(0.8125rem, 0.7294250282rem + 0.3382187148vw, 1rem);
}
section.contact .contact__list-item-btn .btn-arrow.contact {
  white-space: nowrap;
  font-size: clamp(1rem, 0.7507750846rem + 1.0146561443vw, 1.5625rem);
  min-block-size: 51px;
  --_btn-pad-x-st: clamp(1.0625rem, 0.7025084555rem + 1.4656144307vw, 1.875rem);
  --_btn-pad-x-ed:clamp(1.0625rem, 1.1455749718rem + -0.3382187148vw, 0.875rem);
  --_btn-pad-y: clamp(0.78125rem, 0.5735625705rem + 0.8455467869vw, 1.25rem);
  --_append-spacing: clamp(1.25rem, 1.1807708568rem + 0.281848929vw, 1.40625rem);
  --_circle-size: clamp(1.59375rem, 1.4691375423rem + 0.5073280722vw, 1.875rem);
  --_arrow-size:clamp(0.8125rem, 0.6186583991rem + 0.7891770011vw, 1.25rem);
  --_prepend-w: clamp(1.375rem, 0.9042418264rem + 1.916572717vw, 2.4375rem);
  --_prepend-h: clamp(0.9375rem, 0.63289177rem + 1.2401352875vw, 1.625rem);
  --_prepend-spacing: clamp(0.625rem, 0.6416149944rem + -0.067643743vw, 0.5875rem);
}
section.contact .contact__list-item-btn .btn-arrow.contact {
  grid-template: "before text after"/auto 1fr auto;
}
section.contact .contact__list-item-btn .btn-arrow.contact::before {
  grid-area: before;
  content: "";
  display: block flow;
  inline-size: var(--_prepend-w);
  block-size: var(--_prepend-h);
  margin-inline-end: var(--_prepend-spacing);
  background: url("/auc@2x.png") no-repeat center/contain;
}
@media (768px < width) {
  section.contact .contact__list {
    --_min-cell-width: 360px;
    gap: 40px;
  }
  section.contact .contact__list-item {
    padding-inline: 20px;
    border: 2px solid var(--main-color);
  }
  section.contact .contact__list-item-title {
    margin-block-end: 20px;
  }
  section.contact .contact__list-item-tel {
    margin-block-end: 13px;
    column-gap: 10px;
    /*
    &.freedial {
      column-gap: 3px;
    }
    */
  }
  section.contact .contact__list-item-note {
    margin-block-end: 17px;
  }
  section.contact .contact__list-item-btn {
    margin-block-end: 15px;
  }
}