@charset "UTF-8";
@media screen and (hover: hover) and (pointer: fine) {
  .hov {
    transition: opacity 0.3s;
  }
  @supports (filter: brightness(100%)) {
    .hov {
      transition-property: filter;
    }
  }
  .hov:hover {
    opacity: 0.8;
  }
  @supports (filter: brightness(100%)) {
    .hov:hover {
      filter: brightness(110%);
      opacity: 1;
    }
  }
}

* {
  -webkit-tap-highlight-color: transparent;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
dl,
dt,
dd,
table,
tr,
th,
td,
form,
figure {
  font-size: inherit;
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

summary {
  display: block;
}

table {
  border-collapse: collapse;
  empty-cells: show;
}

th,
td {
  text-align: left;
  vertical-align: top;
}

li {
  list-style: none;
}

img {
  vertical-align: top;
  height: auto;
}

input,
textarea,
select {
  color: inherit;
  font-family: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

textarea {
  form-sizing: content;
}

button {
  color: inherit;
  font-family: inherit;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
          appearance: textfield;
}

select::-ms-expand {
  display: none;
}

[disabled] {
  cursor: not-allowed;
}

input[type=button]:not([disabled]), input[type=submit]:not([disabled]), input[type=reset]:not([disabled]),
button[type=button]:not([disabled]),
button[type=submit]:not([disabled]),
button[type=reset]:not([disabled]) {
  cursor: pointer;
}

@media (prefers-reduced-motion: reduce) {
  * {
    -webkit-animation: none !important;
            animation: none !important;
    transition-duration: 0s !important;
    transition-delay: 0s !important;
  }
}
img,
video {
  max-width: 100%;
  height: auto;
}

:root {
  font-size: 100px;
}
@media screen and (max-width: 1600px) and (min-width: 781px) {
  :root {
    font-size: 6.25vw;
  }
}
@media screen and (max-width: 780px) {
  :root {
    font-size: 25.641025641vw;
  }
}

/*:target {
	scroll-margin-top: 1.15rem;

	@include sp {
		scroll-margin-top: .75rem;
	}
}*/
html {
  scroll-behavior: smooth;
  scrollbar-gutter: stable;
}

body {
  min-height: 100vh;
  min-height: 100dvh;
  background: #DCD8D2 url(../imgs/noise.jpg) 50% 0/0.9rem auto repeat;
  font-family: "Zen Old Mincho", "Noto Serif JP", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
  font-size: 0.16rem;
  font-feature-settings: "palt";
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  body {
    font-size: 0.14rem;
    line-height: 2;
  }
}

.wrap {
  max-width: 14rem;
  margin-inline: auto;
}
@media screen and (max-width: 780px) {
  .wrap {
    padding-inline: 0.2rem;
  }
}
.wrap--1300 {
  max-width: 13rem;
}
.wrap--1200 {
  max-width: 12rem;
}
.wrap--1100 {
  max-width: 11rem;
}
.wrap--1160 {
  max-width: 11.6rem;
}
.wrap--1000 {
  max-width: 10rem;
}
.wrap--900 {
  max-width: 9rem;
}
.wrap--800 {
  max-width: 8rem;
}

.sp {
  display: none;
}

@media screen and (max-width: 780px) {
  .pc {
    display: none;
  }
  .sp {
    display: revert;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .fadeIn {
    opacity: 0;
    transition: 0.8s 0.4s;
    transition-property: opacity;
  }
  .fadeIn.scrollIn {
    opacity: 1;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .fadeUp {
    opacity: 0;
    translate: 0 1rem 0;
    transition: 0.8s 0.4s;
    transition-property: opacity, translate;
  }
  .fadeUp.scrollIn {
    opacity: 1;
    translate: 0 0 0;
  }
}

@-webkit-keyframes ticker {
  from {
    translate: 0 0 0;
  }
  to {
    translate: -50% 0 0;
  }
}

@keyframes ticker {
  from {
    translate: 0 0 0;
  }
  to {
    translate: -50% 0 0;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.news *) .toc .list .item .image, .main:is(body.post-type-archive-info *) .toc .list .item .image, .main:is(body.event *) .toc .list .item .image, .main:is(body.blog *) .toc .list .item .image, .main:is(body.post-type-archive-blog *) .toc .list .item .image, .main:is(body.tax-blog_cat *) .toc .list .item .image, .main:is(body.post-type-archive-event *) .toc .list .item .image, .main:is(body.tax-event_cat *) .toc .list .item .image, .main:is(body.post-type-archive-works *) .toc .list .item .image, .main:is(body.tax-works_cat *) .toc .list .item .image, .main:is(body.home *) section.blog .list .item .image, .main:is(body.home *) section.voice .list .item a .image, .main:is(body.home *) section.works .list .slide a .image, .main:is(body.home *) section.column .list .item .image, .main:is(body.home *) section.event .list .item .image {
    overflow: hidden;
  }
  .main:is(body.news *) .toc .list .item:hover .image img, .main:is(body.post-type-archive-info *) .toc .list .item:hover .image img, .main:is(body.event *) .toc .list .item:hover .image img, .main:is(body.blog *) .toc .list .item:hover .image img, .main:is(body.post-type-archive-blog *) .toc .list .item:hover .image img, .main:is(body.tax-blog_cat *) .toc .list .item:hover .image img, .main:is(body.post-type-archive-event *) .toc .list .item:hover .image img, .main:is(body.tax-event_cat *) .toc .list .item:hover .image img, .main:is(body.post-type-archive-works *) .toc .list .item:hover .image img, .main:is(body.tax-works_cat *) .toc .list .item:hover .image img, .main:is(body.home *) section.blog .list .item:hover .image img, .main:is(body.home *) section.voice .list .item a:hover .image img, .main:is(body.home *) section.works .list .slide a:hover .image img, .main:is(body.home *) section.column .list .item:hover .image img, .main:is(body.home *) section.event .list .item:hover .image img {
    scale: 1.08;
  }
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.news *) .toc .list .item .image img, .main:is(body.post-type-archive-info *) .toc .list .item .image img, .main:is(body.event *) .toc .list .item .image img, .main:is(body.blog *) .toc .list .item .image img, .main:is(body.post-type-archive-blog *) .toc .list .item .image img, .main:is(body.tax-blog_cat *) .toc .list .item .image img, .main:is(body.post-type-archive-event *) .toc .list .item .image img, .main:is(body.tax-event_cat *) .toc .list .item .image img, .main:is(body.post-type-archive-works *) .toc .list .item .image img, .main:is(body.tax-works_cat *) .toc .list .item .image img, .main:is(body.home *) section.blog .list .item .image img, .main:is(body.home *) section.voice .list .item a .image img, .main:is(body.home *) section.works .list .slide a .image img, .main:is(body.home *) section.column .list .item .image img, .main:is(body.home *) section.event .list .item .image img {
    transition: scale 0.4s;
  }
}

.btn--menu {
  display: grid;
  place-items: center;
  width: 0.7rem;
  height: 0.5rem;
  cursor: pointer;
}
@media screen and (max-width: 780px) {
  .btn--menu {
    width: 0.86rem;
    height: 0.38rem;
  }
}
.btn--menu .bar {
  grid-area: 1/1;
  display: grid;
  width: 0.46rem;
  height: 0.12rem;
}
@media screen and (max-width: 780px) {
  .btn--menu .bar {
    width: 0.46rem;
    height: 0.11rem;
  }
}
.btn--menu .bar::before, .btn--menu .bar::after {
  content: "";
  display: block;
  height: 0.02rem;
  grid-area: 1/1;
  align-self: center;
  justify-self: stretch;
  transition: 0.4s;
  transition-property: translate, rotate, scale;
}
@media screen and (max-width: 780px) {
  .btn--menu .bar::before, .btn--menu .bar::after {
    height: 0.01rem;
  }
}
.btn--menu .bar::before {
  translate: 0 -0.05rem 0;
}
@media screen and (max-width: 780px) {
  .btn--menu .bar::before {
    translate: 0 -0.05rem 0;
  }
}
.btn--menu .bar::after {
  translate: 0 0.05rem 0;
  scale: 0.7173913043 1;
  transform-origin: right;
}
@media screen and (max-width: 780px) {
  .btn--menu .bar::after {
    translate: 0 0.05rem 0;
  }
}
.btn--menu .bar:is(body:has(.gMenuHelper:checked) *)::before {
  translate: 0 0 0;
  rotate: 135deg;
}
.btn--menu .bar:is(body:has(.gMenuHelper:checked) *)::after {
  translate: 0 0 0;
  rotate: 45deg;
  scale: 1 1;
  transform-origin: center;
}

.cv {
  display: flex;
}
.cv li:nth-child(n+2) {
  border-left: 0.01rem solid #fff;
}
.cv a {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: 0.01rem solid #2F406E;
  background: #2F406E;
  color: #fff;
  font-weight: 600;
  line-height: 1;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .cv a {
    transition: 0.4s;
    transition-property: background-color, color;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .cv a:hover {
    background-color: #fff;
    color: #2F406E;
  }
}
.cv a::before {
  content: "";
  display: block;
  aspect-ratio: 1;
  background: currentColor;
  -webkit-mask: center/contain no-repeat;
          mask: center/contain no-repeat;
}
.cv a.reserve {
  border-right: none;
}
.cv a.reserve::before {
  -webkit-mask-image: url(../imgs/ico-reserve.svg);
          mask-image: url(../imgs/ico-reserve.svg);
}
.cv a.request {
  border-left: none;
}
.cv a.request::before {
  -webkit-mask-image: url(../imgs/ico-request.svg);
          mask-image: url(../imgs/ico-request.svg);
}

.gHeader {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  box-sizing: border-box;
  width: 100%;
  padding: 0.4rem 0.44rem;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 8800;
}
@media screen and (max-width: 780px) {
  .gHeader {
    padding: 0.4rem 0 0.4rem 0.2rem;
  }
}
.gHeader .logo {
  margin-right: auto;
}
.gHeader .logo img {
  width: auto;
  height: 0.5rem;
}
@media screen and (max-width: 780px) {
  .gHeader .logo img {
    height: 0.3rem;
  }
}
.gHeader .cv {
  grid-area: 1/1;
  align-self: flex-start;
  justify-self: flex-end;
}
@media screen and (max-width: 780px) {
  .gHeader .cv {
    display: none;
  }
}
.gHeader .cv li {
  width: 1.4rem;
}
.gHeader .cv a {
  gap: 0.1rem;
  height: 0.5rem;
}
.gHeader .cv a::before {
  width: 0.2rem;
}
.gHeader .btn--menu .bar::before, .gHeader .btn--menu .bar::after {
  background: #2F406E;
}

.main .btn--more--01 {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: auto 0.3rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 0.05rem 0.3rem;
  padding: 0.2rem 0.35rem;
  border-radius: 0.05rem;
  box-shadow: inset 0 0 0 0.01rem #999;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main .btn--more--01 {
    grid-template-columns: auto 0.25rem;
    gap: 0.03rem 0.2rem;
    padding: 0.15rem 0.25rem;
  }
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main .btn--more--01 {
    transition: 0.4s;
    transition-property: background-color, color, box-shadow;
  }
  .main .btn--more--01::before, .main .btn--more--01::after {
    transition: 0.4s;
    transition-property: background-color, translate;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main .btn--more--01:hover::before, .main .btn--more--01:hover::after {
    translate: 50% 0 0;
  }
}
.main .btn--more--01 .ja {
  grid-row: 1/2;
  grid-column: 1/2;
  line-height: 0.23rem;
}
@media screen and (max-width: 780px) {
  .main .btn--more--01 .ja {
    line-height: 0.2rem;
  }
}
.main .btn--more--01 .en {
  grid-row: 2/3;
  grid-column: 1/2;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
  line-height: 0.17rem;
}
@media screen and (max-width: 780px) {
  .main .btn--more--01 .en {
    font-size: 0.11rem;
    line-height: 0.13rem;
  }
}
.main .btn--more--01::before, .main .btn--more--01::after {
  grid-row: 1/3;
  grid-column: 2/3;
  align-self: center;
  content: "";
  display: block;
  aspect-ratio: 1;
  border-radius: 50%;
}
.main .btn--more--01::before {
  background: currentColor;
}
.main .btn--more--01::after {
  background: #fff;
  -webkit-mask: url(../imgs/arw01.svg) center/0.1rem auto no-repeat;
          mask: url(../imgs/arw01.svg) center/0.1rem auto no-repeat;
}
.main .btn--more--02 {
  display: flex;
  align-items: center;
  gap: 0.2rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-bottom: 0.01rem solid currentColor;
  padding: 0 0 0.2rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (max-width: 780px) {
  .main .btn--more--02 {
    line-height: 2;
  }
}
.main .btn--more--02::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background: currentColor;
  -webkit-mask: url(../imgs/arw02.svg) center/contain no-repeat;
          mask: url(../imgs/arw02.svg) center/contain no-repeat;
}
@media screen and (hover: hover) and (pointer: fine) {
  .main .btn--more--02::after {
    transition: translate 0.4s;
  }
  .main .btn--more--02:hover::after {
    translate: 50% 0 0;
  }
}
.main .btn--more--02.back {
  flex-direction: row-reverse;
}
.main .btn--more--02.back::after {
  scale: -1 1;
}
@media screen and (hover: hover) and (pointer: fine) {
  .main .btn--more--02.back:hover::after {
    translate: -50% 0 0;
  }
}
.main .btn--more--02:has(.small) {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: auto 1em;
  gap: 0.1rem 0.2rem;
}
.main .btn--more--02:has(.small) .small {
  grid-row: 1/2;
  grid-column: 1/3;
  font-size: 0.13rem;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main .btn--more--02:has(.small) .small {
    font-size: 0.12rem;
  }
}
.main .btn--more--02:has(.small)::after {
  grid-row: 2/3;
  grid-column: 2/3;
}
.main .ttl--more {
  font-weight: inherit;
}
.main .ttl--more a {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 1fr auto 0.3rem;
  gap: 0 0.3rem;
  border-top: 0.01rem solid #222;
  padding: 0.3rem 0 0;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main .ttl--more a {
    grid-template-columns: 1fr auto 0.25rem;
  }
}
.main .ttl--more a::before, .main .ttl--more a::after {
  grid-row: 1/2;
  grid-column: 3/4;
  align-self: center;
  content: "";
  display: block;
  aspect-ratio: 1;
  border-radius: 50%;
}
.main .ttl--more a::before {
  background: currentColor;
}
.main .ttl--more a::after {
  background: #fff;
  -webkit-mask: url(../imgs/arw01.svg) center/0.1rem auto no-repeat;
          mask: url(../imgs/arw01.svg) center/0.1rem auto no-repeat;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main .ttl--more a {
    transition: 0.4s;
    transition-property: background-color, color, box-shadow;
  }
  .main .ttl--more a::before, .main .ttl--more a::after {
    transition: 0.4s;
    transition-property: background-color, translate;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main .ttl--more a:hover::before, .main .ttl--more a:hover::after {
    translate: 50% 0 0;
  }
}
.main .ttl--more .en {
  grid-row: 1/2;
  grid-column: 1/2;
  align-self: center;
  display: flex;
  gap: 0.05rem;
  align-items: center;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
}
@media screen and (max-width: 780px) {
  .main .ttl--more .en {
    font-size: 0.11rem;
  }
}
.main .ttl--more .en::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 50%;
}
.main .ttl--more .ja {
  grid-row: 1/2;
  grid-column: 2/3;
  font-size: 0.28rem;
  line-height: 0.3rem;
}
.main .pageHeader {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 100%;
}
.main .pageHeader .title {
  grid-column: 1/2;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  width: 100%;
  max-width: 12rem;
  margin: 0 auto;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (max-width: 780px) {
  .main .pageHeader .title {
    gap: 0;
    align-self: flex-end;
    justify-self: flex-start;
    box-sizing: border-box;
    padding: 0 0 0.3rem 0.25rem;
  }
  .main .pageHeader .title:has(.ja .small) {
    padding-bottom: 0.2rem;
  }
  .main .pageHeader .title.slim {
    padding-bottom: 0.15rem;
  }
  .main .pageHeader .title.slim .ja {
    line-height: 1.5;
  }
}
.main .pageHeader .title .en {
  display: flex;
  align-items: center;
  gap: 0.05rem;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
}
@media screen and (max-width: 780px) {
  .main .pageHeader .title .en {
    line-height: 1.5;
  }
}
.main .pageHeader .title .en::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 50%;
}
.main .pageHeader .title .ja {
  font-size: 0.36rem;
}
@media screen and (max-width: 780px) {
  .main .pageHeader .title .ja {
    font-size: 0.24rem;
    line-height: 1.8;
  }
}
.main .pageHeader .title .ja .small {
  display: block;
  font-size: 0.2rem;
  line-height: 0.5rem;
}
@media screen and (max-width: 780px) {
  .main .pageHeader .title .ja .small {
    font-size: 0.16rem;
    line-height: 1.8;
  }
}
.main .pageHeader .breadCrumb {
  grid-column: 1/2;
  display: flex;
  justify-content: flex-end;
  padding: 0.4rem 0.55rem 0.43rem;
  font-size: 0.12rem;
  line-height: 0.17rem;
}
@media screen and (max-width: 780px) {
  .main .pageHeader .breadCrumb {
    padding: 0.2rem;
  }
  .main .pageHeader .breadCrumb.slim li:nth-last-child(n+2) {
    white-space: nowrap;
  }
  .main .pageHeader .breadCrumb.slim li:last-child {
    text-align: right;
  }
}
.main .pageHeader .breadCrumb li:nth-last-child(n+2)::after {
  content: "－";
  margin: 0 0.5em;
}
.main .pageHeader .breadCrumb a {
  text-decoration: underline;
}
.main .pageHeader:has(.bg) .bg {
  grid-row: 1/2;
  grid-column: 1/2;
}
.main .pageHeader:has(.bg) .bg img {
  width: 100%;
  height: 4.8rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 780px) {
  .main .pageHeader:has(.bg) .bg img {
    height: 2.1rem;
  }
}
.main .pageHeader:has(.bg) .title {
  grid-row: 1/2;
  padding-top: 2.05rem;
  color: #fff;
}
@media screen and (max-width: 780px) {
  .main .pageHeader:has(.bg) .title {
    padding-top: 0;
  }
}
.main .pageHeader:has(.bg) .breadCrumb {
  grid-row: 2/3;
}
.main .pageHeader:not(:has(.bg)) .title {
  grid-row: 2/3;
}
@media screen and (max-width: 780px) {
  .main .pageHeader:not(:has(.bg)) .title {
    grid-row: 1/2;
    padding-top: 0.95rem;
    padding-bottom: 0;
  }
}
.main .pageHeader:not(:has(.bg)) .breadCrumb {
  grid-row: 1/2;
  padding-top: 1.6rem;
  padding-bottom: 0.25rem;
  line-height: 0.2rem;
}
@media screen and (max-width: 780px) {
  .main .pageHeader:not(:has(.bg)) .breadCrumb {
    grid-row: 2/3;
    padding-top: 0.2rem;
    padding-bottom: 0.2rem;
  }
}
.main .section.feature .title {
  font-size: 0.32rem;
  line-height: 1.3;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main .section.feature .title {
    font-size: 0.28rem;
    line-height: 1.6;
  }
}
.main .section.feature .menu.feature {
  display: flex;
  margin-top: 0.64rem;
}
@media screen and (max-width: 780px) {
  .main .section.feature .menu.feature {
    display: block;
    margin-top: 0.4rem;
    margin-inline: -0.2rem;
  }
}
.main .section.feature .menu.feature .item {
  box-sizing: border-box;
  width: 20%;
  height: 5.5rem;
  padding: 0.96rem 0 0;
  background: 0 0/cover no-repeat;
}
@media screen and (max-width: 780px) {
  .main .section.feature .menu.feature .item {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    width: auto;
    height: 1.9rem;
    padding: 0 0.7rem 0.52rem;
  }
  .main .section.feature .menu.feature .item:nth-child(odd) p {
    text-align: right;
  }
  .main .section.feature .menu.feature .item:nth-child(even) {
    flex-direction: row-reverse;
  }
}
.main .section.feature .menu.feature .item .name .ja {
  margin: 0 auto;
  writing-mode: vertical-rl;
  font-size: 0.52rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1;
}
@media screen and (max-width: 780px) {
  .main .section.feature .menu.feature .item .name .ja {
    font-size: 0.32rem;
    letter-spacing: 0.2em;
  }
}
.main .section.feature .menu.feature .item .name .en {
  margin: 0.04rem 0 0;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.1;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main .section.feature .menu.feature .item .name .en {
    margin: 0.1rem 0 0;
    font-size: 0.11rem;
    font-weight: 600;
  }
}
.main .section.feature .menu.feature .item p {
  margin: 0.52rem auto 0;
  writing-mode: vertical-rl;
  font-size: 0.18rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 0.34rem;
}
@media screen and (max-width: 780px) {
  .main .section.feature .menu.feature .item p {
    margin: 0;
    writing-mode: horizontal-tb;
    font-size: 0.13rem;
    line-height: 2;
    letter-spacing: 0;
  }
}
.main .section.feature .menu.feature .item--01 {
  background-image: url(../imgs/img-feature01.jpg);
  color: #fff;
}
@media screen and (max-width: 780px) {
  .main .section.feature .menu.feature .item--01 {
    background-image: url(../imgs/img-feature01_sp.jpg);
  }
}
.main .section.feature .menu.feature .item--02 {
  background-image: url(../imgs/img-feature02.jpg);
  color: #fff;
}
@media screen and (max-width: 780px) {
  .main .section.feature .menu.feature .item--02 {
    background-image: url(../imgs/img-feature02_sp.jpg);
  }
}
.main .section.feature .menu.feature .item--03 {
  background-image: url(../imgs/img-feature03.jpg);
  color: #fff;
}
@media screen and (max-width: 780px) {
  .main .section.feature .menu.feature .item--03 {
    background-image: url(../imgs/img-feature03_sp.jpg);
  }
}
.main .section.feature .menu.feature .item--04 {
  background-image: url(../imgs/img-feature04.jpg);
  color: #fff;
}
@media screen and (max-width: 780px) {
  .main .section.feature .menu.feature .item--04 {
    background-image: url(../imgs/img-feature04_sp.jpg);
  }
}
.main .section.feature .menu.feature .item--05 {
  background-image: url(../imgs/img-feature05.jpg);
  color: #fff;
}
@media screen and (max-width: 780px) {
  .main .section.feature .menu.feature .item--05 {
    background-image: url(../imgs/img-feature05_sp.jpg);
  }
}
.main section.contact {
  padding: 0.9rem 0;
  background: #2F406E;
  color: #fff;
}
@media screen and (max-width: 780px) {
  .main section.contact {
    padding: 0.4rem 0;
  }
}
.main section.contact .wrap {
  display: grid;
  grid-template-rows: repeat(2, auto);
  grid-template-columns: 7rem 7rem;
  gap: 0.6rem 0;
}
@media screen and (max-width: 780px) {
  .main section.contact .wrap {
    display: block;
  }
}
.main section.contact .ttl {
  grid-row: 1/2;
  grid-column: 1/2;
}
.main section.contact .ttl .en {
  display: flex;
  align-items: center;
  gap: 0.05rem;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (max-width: 780px) {
  .main section.contact .ttl .en {
    font-size: 0.11rem;
    line-height: 0.21rem;
  }
}
.main section.contact .ttl .en::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 50%;
}
.main section.contact .ttl .ja {
  display: block;
  margin: 0.1rem 0 0;
  font-size: 0.4rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 0.58rem;
}
@media screen and (max-width: 780px) {
  .main section.contact .ttl .ja {
    font-size: 0.32rem;
    line-height: 0.46rem;
  }
}
.main section.contact .text {
  color: #fdfcf8;
  letter-spacing: 0.05em;
}
.main section.contact .text--01 {
  grid-row: 1/2;
  grid-column: 2/3;
  align-self: flex-end;
  font-size: 0.18rem;
}
@media screen and (max-width: 780px) {
  .main section.contact .text--01 {
    margin: 0.4rem 0 0;
    font-size: 0.14rem;
  }
}
.main section.contact .list {
  grid-row: 2/3;
  grid-column: 1/3;
  display: flex;
}
@media screen and (max-width: 780px) {
  .main section.contact .list {
    display: block;
    margin: 0.5rem 0 0;
  }
}
.main section.contact .list li {
  width: 50%;
}
@media screen and (max-width: 780px) {
  .main section.contact .list li {
    width: auto;
  }
}
.main section.contact .list li:nth-child(n+2) a {
  border-left-style: none;
}
@media screen and (max-width: 780px) {
  .main section.contact .list li:nth-child(n+2) a {
    border-top-style: none;
    border-left-style: solid;
  }
}
.main section.contact .list a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.1rem;
  box-sizing: border-box;
  height: 1.5rem;
  border: 0.01rem solid #fff;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 780px) {
  .main section.contact .list a {
    gap: 0.08rem;
    height: auto;
    padding: 0.28rem 0;
  }
}
.main section.contact .list a .shoulder {
  font-size: 0.18rem;
  font-weight: 400;
  line-height: 0.26rem;
}
@media screen and (max-width: 780px) {
  .main section.contact .list a .shoulder {
    font-size: 0.16rem;
    line-height: 0.23rem;
  }
}
.main section.contact .list a .name {
  font-size: 0.3rem;
  font-weight: 600;
  line-height: 0.43rem;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main section.contact .list a {
    transition: 0.4s;
    transition-property: background-color, color;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main section.contact .list a:hover {
    background-color: #fff;
    color: #2F406E;
  }
}
.main .append {
  padding: 1.7rem 0;
  background: linear-gradient(180deg, #DCD8D2 0%, #D2CCC4 100%);
}
@media screen and (max-width: 780px) {
  .main .append {
    padding: 0.5rem 0 0.7rem;
  }
}
.main .append .fNav .list {
  display: flex;
  justify-content: center;
  gap: 0.66rem;
}
@media screen and (max-width: 780px) {
  .main .append .fNav .list {
    flex-wrap: wrap;
    gap: 0.26rem 0.2rem;
  }
}
.main .append .fNav .list li {
  width: 2.25rem;
}
@media screen and (max-width: 780px) {
  .main .append .fNav .list li {
    width: calc(50% - 0.1rem);
  }
}
.main .append .fNav .list li .btn {
  justify-content: space-between;
  gap: 0;
  width: 100%;
  letter-spacing: 0;
  white-space: nowrap;
}
.main .append .fNav .list li .btn.active {
  color: #999;
}
.main .append .contact {
  margin: 0.95rem 0 0;
}
@media screen and (max-width: 780px) {
  .main .append .contact {
    margin: 0.46rem 0 0;
  }
}
.main .append .contact .catch {
  font-size: 0.24rem;
  line-height: 1.3;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main .append .contact .catch {
    line-height: 1.6;
  }
}
.main .append .contact .cv {
  display: flex;
  justify-content: center;
  margin: 0.3rem 0 0;
}
.main .append .contact .cv li {
  width: 6rem;
}
@media screen and (max-width: 780px) {
  .main .append .contact .cv li {
    width: 50%;
  }
}
.main .append .contact .cv a {
  height: 0.8rem;
  font-size: 0.18rem;
}
@media screen and (max-width: 780px) {
  .main .append .contact .cv a {
    height: 0.6rem;
  }
}
.main .pagination .nav-links {
  display: flex;
  justify-content: center;
  gap: 0.1rem;
}
@media screen and (max-width: 780px) {
  .main .pagination .nav-links {
    gap: 0.05rem;
  }
}
.main .pagination .nav-links .page-numbers {
  display: grid;
  place-items: center;
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 50%;
  font-size: 0.16rem;
  box-shadow: inset 0 0 0 0.01rem #222;
}
@media screen and (max-width: 780px) {
  .main .pagination .nav-links .page-numbers {
    width: 0.44rem;
    height: 0.44rem;
    font-size: 0.14rem;
    box-shadow: inset 0 0 0 0.01rem #999;
  }
}
.main .pagination .nav-links .page-numbers.prev, .main .pagination .nav-links .page-numbers.next {
  background: url(../imgs/arw02.svg) center/0.15rem auto no-repeat;
}
.main .pagination .nav-links .page-numbers.prev {
  scale: -1 1;
}
.main .pagination .nav-links .page-numbers.dots {
  align-self: center;
  width: auto;
  height: auto;
  border-radius: 0;
  box-shadow: none;
  translate: 0 -0.2em 0;
}
.main .pagination .nav-links .page-numbers.current {
  background: #2F406E;
  color: #fff;
  box-shadow: none;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main .pagination .nav-links a.page-numbers {
    transition: background-color 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main .pagination .nav-links a.page-numbers:hover {
    background-color: #fff;
  }
}
.main .pager {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 4.4rem 3rem 4.4rem;
  gap: 0 0.6rem;
}
@media screen and (max-width: 780px) {
  .main .pager {
    grid-template-columns: 1rem 1rem 1rem;
    gap: 0 0.25rem;
  }
}
.main .pager .prev,
.main .pager .next {
  grid-row: 1/2;
  display: flex;
  align-items: center;
  gap: 0.2rem;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main .pager .prev,
.main .pager .next {
    display: block;
  }
}
.main .pager .prev .image,
.main .pager .next .image {
  width: 2.1rem;
}
@media screen and (max-width: 780px) {
  .main .pager .prev .image,
.main .pager .next .image {
    width: auto;
  }
}
.main .pager .prev .image img,
.main .pager .next .image img {
  width: 100%;
  aspect-ratio: 21/14;
  -o-object-fit: cover;
     object-fit: cover;
}
.main .pager .prev:is(body.single-works *) .title,
.main .pager .next:is(body.single-works *) .title {
  width: 2.1rem;
}
@media screen and (max-width: 780px) {
  .main .pager .prev:is(body.single-works *) .title,
.main .pager .next:is(body.single-works *) .title {
    width: auto;
    margin: 0.1rem 0 0;
    font-size: 0.12rem;
    line-height: 1.5;
  }
}
.main .pager .prev:is(body.single-blog *) .text,
.main .pager .next:is(body.single-blog *) .text {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr auto;
  gap: 0.16rem 0;
  width: 2.1rem;
}
@media screen and (max-width: 780px) {
  .main .pager .prev:is(body.single-blog *) .text,
.main .pager .next:is(body.single-blog *) .text {
    width: auto;
    display: block;
  }
}
.main .pager .prev:is(body.single-blog *) .text .category,
.main .pager .next:is(body.single-blog *) .text .category {
  grid-row: 1/2;
  grid-column: 2/3;
  display: grid;
  place-items: center;
  width: 1rem;
  height: 0.24rem;
  background: #2F406E;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.12rem;
  font-weight: 700;
}
@media screen and (max-width: 780px) {
  .main .pager .prev:is(body.single-blog *) .text .category,
.main .pager .next:is(body.single-blog *) .text .category {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 0 0.1rem;
  }
}
.main .pager .prev:is(body.single-blog *) .text .date,
.main .pager .next:is(body.single-blog *) .text .date {
  grid-row: 1/2;
  grid-column: 1/2;
  align-self: center;
  font-size: 0.14rem;
}
.main .pager .prev:is(body.single-blog *) .text .title,
.main .pager .next:is(body.single-blog *) .text .title {
  grid-row: 2/3;
  grid-column: 1/3;
  font-size: 0.14rem;
}
.main .pager .prev::after,
.main .pager .next::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  top: calc(50% - 0.5em);
  background: #999;
  -webkit-mask: url(../imgs/arw02.svg) center/contain no-repeat;
          mask: url(../imgs/arw02.svg) center/contain no-repeat;
}
@media (prefers-reduced-motion: no-preference) {
  .main .pager .prev::after,
.main .pager .next::after {
    transition: translate 0.4s;
  }
}
@media screen and (max-width: 780px) {
  .main .pager .prev::after,
.main .pager .next::after {
    position: static;
    margin: 0.18rem auto 0;
  }
}
.main .pager .prev {
  grid-column: 1/2;
}
.main .pager .prev::after {
  left: -0.5rem;
  scale: -1 1;
}
@media screen and (hover: hover) and (pointer: fine) {
  .main .pager .prev:hover::after {
    translate: -50% 0 0;
  }
}
.main .pager .next {
  grid-column: 3/4;
  flex-direction: row-reverse;
}
.main .pager .next::after {
  right: -0.5rem;
}
@media screen and (hover: hover) and (pointer: fine) {
  .main .pager .next:hover::after {
    translate: 50% 0 0;
  }
}
.main .pager .back {
  grid-row: 1/2;
  grid-column: 2/3;
  display: grid;
  place-items: center;
  border-right: 0.01rem solid #999;
  border-left: 0.01rem solid #999;
  text-decoration: underline;
}
@media screen and (max-width: 780px) {
  .main .pager .back {
    font-size: 0.12rem;
    line-height: 1.8;
    text-align: center;
  }
}
.main:is(body.home *) .hero {
  display: grid;
  height: 100vh;
  color: #fff;
}
.main:is(body.home *) .hero .bg {
  grid-area: 1/1;
  display: grid;
  width: 100%;
  overflow: hidden;
}
.main:is(body.home *) .hero .bg .slide {
  grid-area: 1/1;
  width: 100%;
  height: 100vh;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  scale: 1.08;
}
.main:is(body.home *) .hero .bg .slide.prev {
  opacity: 1;
  scale: 1;
}
.main:is(body.home *) .hero .bg .slide.current {
  z-index: 1;
  opacity: 1;
  scale: 1;
  transition: opacity 0.8s linear, scale 5s linear;
}
.main:is(body.home *) .hero .cv {
  grid-area: 1/1;
  align-self: flex-start;
  justify-self: flex-end;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .hero .cv {
    display: none;
  }
}
.main:is(body.home *) .hero .cv li {
  width: 2.2rem;
}
.main:is(body.home *) .hero .cv a {
  gap: 0.2rem;
  height: 0.9rem;
}
.main:is(body.home *) .hero .cv a::before {
  width: 0.24rem;
}
.main:is(body.home *) .hero .catch {
  grid-area: 1/1;
  align-self: center;
  justify-self: flex-start;
  margin-left: 11.4375%;
  position: relative;
  z-index: 1;
  writing-mode: vertical-rl;
  font-size: 0.56rem;
  line-height: 1rem;
  letter-spacing: 0.4em;
  translate: 0 0.48rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .hero .catch {
    justify-self: center;
    margin: 0;
    font-size: 0.3rem;
    line-height: 1.4;
    translate: 0 -1.55rem 0;
  }
}
.main:is(body.home *) .hero .logo {
  grid-area: 1/1;
  align-self: center;
  justify-self: center;
  width: 1.92rem;
  margin: 0 0 0 0.05rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .hero .logo {
    width: 0.96rem;
    margin: 0;
    translate: 0 0.4rem 0;
  }
}
.main:is(body.home *) .hero .catch-en {
  grid-area: 1/1;
  align-self: center;
  justify-self: flex-end;
  margin-right: 7.875%;
  position: relative;
  z-index: 1;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
  letter-spacing: 0.1em;
  translate: 0 0.12rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .hero .catch-en {
    justify-self: center;
    margin: 0;
    font-size: 0.11rem;
    translate: 0 1.4rem 0;
  }
}
.main:is(body.home *) .hero .scroll {
  grid-area: 1/1;
  align-self: flex-end;
  justify-self: flex-end;
  display: flex;
  align-items: center;
  gap: 0.1rem;
  margin-right: 8.6875%;
  position: relative;
  z-index: 1;
  writing-mode: vertical-rl;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .hero .scroll {
    justify-self: center;
    margin: 0;
    font-size: 0.12rem;
  }
}
.main:is(body.home *) .hero .scroll::after {
  content: "";
  display: block;
  width: 0.01rem;
  height: 0.7rem;
  background: currentColor;
  -webkit-animation: scroll 2s infinite linear;
          animation: scroll 2s infinite linear;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .hero .scroll::after {
    height: 0.5rem;
  }
}
@-webkit-keyframes scroll {
  0% {
    transform-origin: top;
    scale: 1 0;
  }
  50% {
    transform-origin: top;
    scale: 1 1;
  }
  50.1% {
    transform-origin: bottom;
    scale: 1 1;
  }
  100% {
    transform-origin: bottom;
    scale: 1 0;
  }
}
@keyframes scroll {
  0% {
    transform-origin: top;
    scale: 1 0;
  }
  50% {
    transform-origin: top;
    scale: 1 1;
  }
  50.1% {
    transform-origin: bottom;
    scale: 1 1;
  }
  100% {
    transform-origin: bottom;
    scale: 1 0;
  }
}
.main:is(body.home *) .lead {
  container-type: inline-size;
  padding: 1.92rem 0 0;
  background: url(../imgs/bg-lead.png) 0 0/100% 14.21rem no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .lead {
    padding: 0.6rem 0 0;
    background-image: url(../imgs/bg-lead_sp.png);
    background-repeat: 100% auto;
  }
}
.main:is(body.home *) .lead .wrap {
  display: grid;
  grid-template-rows: repeat(4, auto);
  grid-template-columns: 1fr auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .lead .wrap {
    grid-template-columns: auto;
  }
}
.main:is(body.home *) .lead .catch {
  grid-row: 1/4;
  grid-column: 2/3;
  margin-right: 0.91rem;
  writing-mode: vertical-rl;
  font-size: 0.52rem;
  line-height: 0.88rem;
  letter-spacing: 0.3em;
  text-indent: -1.3em;
  translate: 0 0.8rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .lead .catch {
    grid-row: 1/2;
    grid-column: 1/2;
    justify-self: flex-end;
    margin-right: 0.2rem;
    padding-top: 1.3rrm;
    font-size: 0.28rem;
    letter-spacing: 0.3em;
    line-height: 0.38rem;
    text-indent: -1.3em;
    translate: 0 0 0;
  }
}
.main:is(body.home *) .lead .catch-en {
  grid-row: 1/2;
  grid-column: 1/2;
  margin: 0.1rem 0 0 1.63rem;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .lead .catch-en {
    margin: 1.38rem 0 0;
    font-size: 0.11rem;
  }
}
.main:is(body.home *) .lead p {
  grid-row: 2/3;
  grid-column: 1/2;
  margin: 1.74rem 0 0 1.63rem;
  font-size: 0.2rem;
  letter-spacing: 0.1em;
  line-height: 2.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .lead p {
    margin: 0.12rem 0 0;
    font-size: 0.14rem;
  }
}
.main:is(body.home *) .lead .btn--more {
  grid-row: 3/4;
  grid-column: 1/2;
  margin: 0.6rem 0 0 1.63rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .lead .btn--more {
    margin: 0.3rem 0 0;
  }
}
.main:is(body.home *) .lead .image {
  grid-row: 4/5;
  grid-column: 1/3;
  display: grid;
  margin: 1.53rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .lead .image {
    grid-column: 1/2;
    margin: 0.6rem 0 0;
  }
}
.main:is(body.home *) .lead .image--01 {
  grid-area: 1/1;
  margin: 0 max(-1rem, 7rem - 50cqw) 0 1.63rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .lead .image--01 {
    margin: 0 -0.2rem 0 0;
  }
}
.main:is(body.home *) .lead .image--02 {
  grid-area: 1/1;
  width: 3.4rem;
  margin: 0 0 -1rem;
  align-self: flex-end;
  justify-self: flex-start;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .lead .image--02 {
    width: 1.2rem;
    margin: 0 0 -0.73rem -0.2rem;
  }
}
.main:is(body.home *) section.feature {
  padding: 1.2rem 0 2rem;
  background: linear-gradient(180deg, #DCD8D2 0%, #D2CCC4 100%);
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.feature {
    padding: 0.65rem 0 0;
    background: none;
  }
}
.main:is(body.home *) section.feature .wrap {
  border-top: 0.01rem solid #909090;
  padding-top: 0.7rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.feature .wrap {
    border: none;
    padding-top: 0;
  }
}
.main:is(body.home *) section.feature .ttl {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr auto;
  gap: 0.1rem 0;
  font-weight: inherit;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.feature .ttl {
    gap: 0;
    border-top: 0.01rem solid #909090;
    padding: 0.3rem 0 0;
  }
}
.main:is(body.home *) section.feature .ttl .en {
  grid-row: 1/3;
  grid-column: 1/2;
  align-self: flex-start;
  display: flex;
  align-items: center;
  gap: 0.05rem;
  margin: 0.05em 0 0;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.feature .ttl .en {
    margin: 0;
    font-size: 0.11rem;
  }
}
.main:is(body.home *) section.feature .ttl .en::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 50%;
}
.main:is(body.home *) section.feature .ttl .shoulder {
  grid-row: 1/2;
  grid-column: 2/3;
  font-size: 0.18rem;
  letter-spacing: 0.08em;
  line-height: 1.5;
  text-align: right;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.feature .ttl .shoulder {
    font-size: 0.16rem;
    line-height: 1.3;
  }
}
.main:is(body.home *) section.feature .ttl .ja {
  grid-row: 2/3;
  grid-column: 2/3;
  font-size: 0.52rem;
  letter-spacing: 0.08em;
  line-height: 1.5;
  text-align: right;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.feature .ttl .ja {
    font-size: 0.32rem;
    line-height: 1.3;
  }
}
.main:is(body.home *) section.feature .ttl .ja .num {
  font-size: 0.55rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.feature .ttl .ja .num {
    font-size: 0.36rem;
  }
}
.main:is(body.home *) section.feature .ttl .ja .small {
  font-size: 0.48rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.feature .ttl .ja .small {
    font-size: 0.3rem;
  }
}
.main:is(body.home *) section.feature .menu.feature {
  margin-top: 1.2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.feature .menu.feature {
    margin-top: 0.5rem;
  }
}
.main:is(body.home *) section.event {
  padding: 1.5rem 0 2.22rem;
  background: url(../imgs/home/bg-event.png) 50% calc(100% + 10.91rem)/100% 14.26rem no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.event {
    padding: 1.06rem 0 1.1rem;
    background-image: url(../imgs/home/bg-event_sp.png);
    background-position: 50% calc(100% + 5.27rem);
    background-size: 100% auto;
  }
}
.main:is(body.home *) section.event .wrap {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 9.93rem;
  gap: 1.08rem 0;
  box-sizing: border-box;
  padding-inline: 1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.event .wrap {
    display: block;
    padding-inline: 0.2rem;
  }
}
.main:is(body.home *) section.event .ttl {
  grid-row: 1/2;
  grid-column: 1/2;
  justify-self: flex-start;
  writing-mode: vertical-rl;
  font-size: 0.52rem;
  font-weight: inherit;
  letter-spacing: 0.22em;
  line-height: 1;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.event .ttl {
    justify-self: stretch;
    writing-mode: horizontal-tb;
    font-size: 0.28rem;
    letter-spacing: 0;
    line-height: 1.2;
    text-align: center;
  }
}
.main:is(body.home *) section.event .list {
  grid-row: 1/2;
  grid-column: 2/3;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.event .list {
    flex-direction: column;
    gap: 0.48rem;
    margin: 0.44rem 0 0;
    padding: 0 0.2rem;
  }
}
.main:is(body.home *) section.event .list .item {
  width: 4.46rem;
  display: block;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.event .list .item {
    width: auto;
  }
}
.main:is(body.home *) section.event .list .item .image img {
  width: 100%;
  aspect-ratio: 446/300;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.home *) section.event .list .item .category {
  padding: 0.1rem 0.2rem;
  position: absolute;
  top: 0;
  left: 0;
  background: #2F406E;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
  line-height: 0.19rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.event .list .item .category {
    padding: 0.08rem 0.14rem;
  }
}
.main:is(body.home *) section.event .list .item .title {
  margin: 0.3rem 0 0;
  font-size: 0.24rem;
  font-weight: 600;
  line-height: 0.35rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.event .list .item .title {
    margin: 0.2rem 0 0;
    font-size: 0.18rem;
    font-weight: 700;
    line-height: 0.26rem;
  }
}
.main:is(body.home *) section.event .list .item .summary {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  max-height: 2lh;
  margin: 0.16rem 0 0;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.event .list .item .summary {
    margin: 0.08rem 0 0;
    line-height: 0.25rem;
  }
}
.main:is(body.home *) section.event .list .item .data {
  display: grid;
  grid-template-columns: 0.9rem 1fr;
  margin: 0.2rem 0 0;
  border-top: 0.01rem solid #999;
  padding: 0.2rem 0 0;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.event .list .item .data {
    grid-template-columns: 0.85rem 1fr;
    gap: 0.03rem 0;
    margin: 0.15rem 0 0;
    padding: 0.2rem 0 0;
  }
}
.main:is(body.home *) section.event .list .item .data dt {
  display: flex;
  align-items: center;
  gap: 0.05rem;
}
.main:is(body.home *) section.event .list .item .data dt::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 50%;
}
.main:is(body.home *) section.event .btn--more {
  grid-row: 2/3;
  grid-column: 2/3;
  margin: 0 auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.event .btn--more {
    margin: 0.48rem auto 0;
  }
}
.main:is(body.home *) section.column {
  background: url(../imgs/home/bg-event.png) 50% -3.35rem/100% 14.26rem no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column {
    background-image: url(../imgs/home/bg-event_sp.png);
    background-position: 50% -1.79rem;
    background-size: 100% auto;
  }
}
.main:is(body.home *) section.column .wrap {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr auto;
  gap: 0.8rem;
  box-sizing: border-box;
  padding: 1rem;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .wrap {
    display: block;
    padding: 0.85rem 0.3rem 0.75rem;
  }
}
.main:is(body.home *) section.column .wrap::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: #F2ECE4;
  border-radius: 0.3rem;
  mix-blend-mode: multiply;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .wrap::before {
    inset: 0 0.1rem;
  }
}
.main:is(body.home *) section.column .prepend {
  grid-row: 1/2;
  grid-column: 1/2;
  position: relative;
}
.main:is(body.home *) section.column .prepend .ttl {
  font-size: 0.44rem;
  font-weight: inherit;
  line-height: 1.2;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .prepend .ttl {
    font-size: 0.28rem;
    line-height: 0.35rem;
  }
}
.main:is(body.home *) section.column .prepend .ttl span {
  font-style: italic;
}
.main:is(body.home *) section.column .prepend .catch-en {
  margin: 0.62rem 0 0;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .prepend .catch-en {
    margin: 0.4rem 0 0;
    font-size: 0.11rem;
  }
}
.main:is(body.home *) section.column .prepend p {
  margin: 0.3rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .prepend p {
    margin: 0.2rem 0 0;
  }
}
.main:is(body.home *) section.column .list {
  grid-row: 2/3;
  grid-column: 1/3;
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.6rem;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .list {
    flex-direction: column;
    gap: 0;
  }
}
.main:is(body.home *) section.column .list .item {
  display: flex;
  width: calc(50% - 0.3rem);
  gap: 0.3rem;
  padding: 0.32rem 0;
  border-bottom: 0.01rem solid #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .list .item {
    width: auto;
    gap: 0.1rem;
    padding: 0.3rem 0;
  }
}
.main:is(body.home *) section.column .list .item .image {
  width: 1.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .list .item .image {
    width: 1rem;
  }
}
.main:is(body.home *) section.column .list .item .image img {
  width: 100%;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.home *) section.column .list .item .text {
  display: grid;
  grid-template-rows: repeat(3 auto);
  grid-template-columns: auto 1fr;
  gap: 0 0.4rem;
  width: 3rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .list .item .text {
    grid-template-columns: 1fr auto;
    gap: 0;
    width: 1.8rem;
  }
}
.main:is(body.home *) section.column .list .item .text .date {
  grid-row: 1/2;
  grid-column: 1/2;
  align-self: center;
  padding-left: 0.25rem;
  background: url(../imgs/ico-time01.svg) 0.01rem 50%/0.13rem auto no-repeat;
  font-size: 0.14rem;
  line-height: 1;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .list .item .text .date {
    padding-left: 0.2rem;
    background-position: 0 50%;
    background-size: 0.15rem auto;
    font-size: 0.12rem;
    line-height: 0.22rem;
  }
}
.main:is(body.home *) section.column .list .item .text .category {
  grid-row: 1/2;
  grid-column: 2/3;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.05rem 0.1rem;
  border-radius: 0.05rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
  line-height: 0.19rem;
  box-shadow: inset 0 0 0 0.01rem #999;
  white-space: nowrap;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .list .item .text .category {
    padding: 0.03rem 0.07rem;
    font-size: 0.11rem;
    line-height: 0.16rem;
  }
}
.main:is(body.home *) section.column .list .item .text .title {
  grid-row: 2/3;
  grid-column: 1/3;
  margin: 0.08rem 0 0;
  font-size: 0.22rem;
  line-height: 0.32rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .list .item .text .title {
    margin: 0.03rem 0 0;
    font-size: 0.18rem;
    font-weight: 600;
    line-height: 0.16rem;
  }
}
.main:is(body.home *) section.column .list .item .text .summary {
  grid-row: 3/4;
  grid-column: 1/3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  max-height: 2lh;
  margin: 0.2rem 0 0;
  font-size: 0.14rem;
  line-height: 2;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .list .item .text .summary {
    margin: 0.05rem 0 0;
    font-size: 0.13rem;
    line-height: 1.8;
  }
}
.main:is(body.home *) section.column .list .item::after {
  content: "";
  display: block;
  width: 0.15rem;
  aspect-ratio: 1;
  margin-left: auto;
  background: url(../imgs/arw02.svg) center/contain no-repeat;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.home *) section.column .list .item::after {
    transition: translate 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.home *) section.column .list .item:hover::after {
    translate: 50% 0 0;
  }
}
.main:is(body.home *) section.column .btn--more {
  grid-row: 1/2;
  grid-column: 2/3;
  align-self: flex-end;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.column .btn--more {
    align-self: center;
    margin: 0.6rem auto 0;
  }
}
.main:is(body.home *) section.works {
  margin: 2rem 0 0;
  overflow: hidden;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works {
    margin: 1.2rem 0 0;
  }
}
.main:is(body.home *) section.works .wrap {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr auto;
  gap: 1.2rem;
  border-top: 0.01rem solid #6E6E6E;
  padding: 0.75rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .wrap {
    display: block;
    border-top: none;
    padding: 0 0.2rem;
  }
}
.main:is(body.home *) section.works .prepend {
  grid-row: 1/2;
  grid-column: 1/2;
  display: flex;
  align-items: flex-end;
  gap: 0.8rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .prepend {
    flex-direction: column;
    align-items: stretch;
    gap: 0.4rem;
    border-top: 0.01rem solid #6E6E6E;
    padding: 0.4rem 0 0;
  }
}
.main:is(body.home *) section.works .prepend .ttl {
  font-weight: inherit;
}
.main:is(body.home *) section.works .prepend .ttl .en {
  display: flex;
  align-items: center;
  gap: 0.05rem;
  margin: 0.05em 0 0;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .prepend .ttl .en {
    margin: 0;
    font-size: 0.11rem;
  }
}
.main:is(body.home *) section.works .prepend .ttl .en::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 50%;
}
.main:is(body.home *) section.works .prepend .ttl .shoulder {
  display: block;
  margin: 0.3rem 0 0;
  font-size: 0.18rem;
  letter-spacing: 0.08em;
  line-height: 1.5;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .prepend .ttl .shoulder {
    margin: 0.2rem 0 0;
    font-size: 0.16rem;
    line-height: 1.3;
  }
}
.main:is(body.home *) section.works .prepend .ttl .ja {
  display: block;
  margin: 0.1rem 0 0;
  font-size: 0.52rem;
  letter-spacing: 0.08em;
  line-height: 1.5;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .prepend .ttl .ja {
    margin: 0;
    font-size: 0.32rem;
    line-height: 1.3;
  }
}
.main:is(body.home *) section.works .prepend p {
  padding: 0 0 0.1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .prepend p {
    padding: 0;
  }
}
.main:is(body.home *) section.works .list {
  grid-row: 2/3;
  grid-column: 1/3;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .list {
    margin: 0.46rem 0 0;
  }
}
.main:is(body.home *) section.works .list .swiper {
  overflow: visible;
}
.main:is(body.home *) section.works .list .slide {
  box-sizing: border-box;
  width: 4.12rem;
  padding: 0 0.4rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .list .slide {
    width: 3.2rem;
    padding: 0 0.3rem 0 0;
  }
}
.main:is(body.home *) section.works .list .slide a {
  display: block;
}
.main:is(body.home *) section.works .list .slide .image img {
  width: 100%;
  aspect-ratio: 372/560;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.home *) section.works .list .slide .data {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: auto 1fr;
  gap: 0.12rem 0;
  margin: 0.2rem 0 0;
}
.main:is(body.home *) section.works .list .slide .data .category {
  grid-row: 1/2;
  grid-column: 1/2;
  align-self: center;
  padding: 0.05rem 0.1rem;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 0.05rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
  line-height: 0.19rem;
}
.main:is(body.home *) section.works .list .slide .data .area {
  grid-row: 1/2;
  grid-column: 2/3;
  justify-self: flex-end;
  font-size: 0.22rem;
  line-height: 0.32rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .list .slide .data .area {
    font-size: 0.2rem;
    line-height: 0.29rem;
  }
}
.main:is(body.home *) section.works .list .slide .data .tag {
  grid-row: 2/3;
  grid-column: 1/3;
  border-top: 0.01rem solid #999;
  padding: 0.12rem 0 0;
  font-size: 0.14rem;
  line-height: 0.2rem;
  text-align: right;
}
.main:is(body.home *) section.works .list .slide .data .tag span:nth-child(n+2)::before {
  content: "/";
  margin: 0 0.5em;
}
.main:is(body.home *) section.works .list .navigation {
  margin: 0.94rem 0 0;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .list .navigation {
    margin: 0.6rem 0 0;
  }
}
.main:is(body.home *) section.works .list .navigation .swiper-scrollbar {
  width: 12.34rem;
  height: 0.02rem;
  position: relative;
  inset: auto;
  background: #999;
  border-radius: 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .list .navigation .swiper-scrollbar {
    width: 100%;
  }
}
.main:is(body.home *) section.works .list .navigation .swiper-scrollbar-drag {
  background: #8DA363;
  border-radius: 0;
}
.main:is(body.home *) section.works .list .navigation .swiper-button-prev,
.main:is(body.home *) section.works .list .navigation .swiper-button-next {
  width: 0.28rem;
  height: 0.22rem;
  margin: 0;
  border: none;
  padding: 0;
  background: #000;
  -webkit-mask: url(../imgs/arw03.svg) center/contain no-repeat;
          mask: url(../imgs/arw03.svg) center/contain no-repeat;
  position: static;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .list .navigation .swiper-button-prev,
.main:is(body.home *) section.works .list .navigation .swiper-button-next {
    display: none;
  }
}
.main:is(body.home *) section.works .list .navigation .swiper-button-prev::after,
.main:is(body.home *) section.works .list .navigation .swiper-button-next::after {
  content: none;
}
.main:is(body.home *) section.works .list .navigation .swiper-button-prev.swiper-button-disabled,
.main:is(body.home *) section.works .list .navigation .swiper-button-next.swiper-button-disabled {
  background: #909090;
  opacity: 1;
}
.main:is(body.home *) section.works .list .navigation .swiper-button-next {
  margin-left: 0.3rem;
}
.main:is(body.home *) section.works .list .navigation .swiper-button-prev {
  margin-left: auto;
  scale: -1 1;
}
.main:is(body.home *) section.works .btn--more {
  grid-row: 1/2;
  grid-column: 2/3;
  align-self: flex-end;
  margin: 0 0 0.16rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.works .btn--more {
    margin: 0.6rem 0 0;
  }
}
.main:is(body.home *) section.voice {
  container-type: inline-size;
  margin: 2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice {
    margin: 1.1rem 0 0;
    overflow: hidden;
  }
}
.main:is(body.home *) section.voice .wrap {
  max-width: 12rem;
}
.main:is(body.home *) section.voice .prepend {
  display: grid;
  grid-template-rows: repeat(3, auto);
  grid-template-columns: auto 1fr;
}
.main:is(body.home *) section.voice .prepend .image {
  grid-row: 1/2;
  grid-column: 1/3;
  height: 6.3rem;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .prepend .image {
    grid-column: 1/2;
    width: 2.34rem;
    height: auto;
  }
}
.main:is(body.home *) section.voice .prepend .image--01 {
  width: 7.17rem;
  margin-left: max(-2rem, 6rem - 50cqw);
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .prepend .image--01 {
    width: 2.24rem;
    margin-left: -0.2rem;
  }
}
.main:is(body.home *) section.voice .prepend .image--02 {
  width: 4.77rem;
  position: absolute;
  bottom: 0;
  left: 4.53rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .prepend .image--02 {
    width: 1.19rem;
    position: static;
    margin: 0.3rem 0 0;
  }
}
.main:is(body.home *) section.voice .prepend .image--03 {
  width: 2.03rem;
  position: absolute;
  top: 1.68rem;
  right: -1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .prepend .image--03 {
    width: 0.7rem;
    top: 1.26rem;
    right: 0;
  }
}
.main:is(body.home *) section.voice .prepend .ttl {
  grid-row: 1/4;
  grid-column: 2/3;
  align-self: flex-end;
  writing-mode: vertical-rl;
  font-weight: inherit;
  line-height: 1;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .prepend .ttl {
    grid-row: 1/2;
    align-self: flex-start;
  }
}
.main:is(body.home *) section.voice .prepend .ttl .shoulder {
  display: block;
  font-size: 0.18rem;
  text-indent: 0.5em;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .prepend .ttl .shoulder {
    font-size: 0.16rem;
    text-indent: 0;
  }
}
.main:is(body.home *) section.voice .prepend .ttl .ja {
  display: block;
  margin: 0 0.24rem 0 0;
  font-size: 0.48rem;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .prepend .ttl .ja {
    margin: 0 0.15rem 0 0;
    font-size: 0.28rem;
  }
}
.main:is(body.home *) section.voice .prepend .ttl .ja strong {
  font-size: 0.52rem;
  font-weight: inherit;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .prepend .ttl .ja strong {
    font-size: inherit;
  }
}
.main:is(body.home *) section.voice .prepend .catch {
  grid-row: 2/3;
  grid-column: 1/2;
  margin: 1.58rem 0 0 -0.5em;
  font-size: 0.28rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .prepend .catch {
    grid-column: 1/3;
    margin: 0.4rem 0 0 -0.5em;
    font-size: 0.2rem;
  }
}
.main:is(body.home *) section.voice .prepend p {
  grid-row: 3/4;
  grid-column: 1/2;
  margin: 0.3rem 0 0;
  letter-spacing: 0.1em;
  line-height: 2.4;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .prepend p {
    grid-column: 1/3;
    margin: 0.1rem 0 0;
    line-height: 2;
  }
}
.main:is(body.home *) section.voice .list {
  margin: 1.2rem -0.2rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .list {
    margin: 0.38rem 0 0;
  }
  .main:is(body.home *) section.voice .list .swiper {
    overflow: visible;
  }
}
.main:is(body.home *) section.voice .list .item {
  box-sizing: border-box;
  width: calc((100% - 0.8rem) / 3);
  padding: 0 0.2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .list .item {
    width: 2.9rem;
    padding: 0 0.3rem 0 0;
  }
}
.main:is(body.home *) section.voice .list .item a {
  display: block;
}
.main:is(body.home *) section.voice .list .item .image img {
  width: 100%;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.home *) section.voice .list .item .title {
  margin: 0.2rem 0 0;
  font-size: 0.18rem;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .list .item .title {
    line-height: 0.26rem;
  }
}
.main:is(body.home *) section.voice .list .item .data {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0.22rem 0 0;
  border-top: 0.01rem solid #999;
  padding: 0.18rem 0 0;
  color: #666;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .list .item .data {
    padding: 0.22rem 0 0;
  }
}
.main:is(body.home *) section.voice .list .item .data .date {
  font-size: 0.14rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .list .item .data .date {
    line-height: 0.2rem;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .list .item .data .name {
    font-size: 0.14rem;
    line-height: 0.2rem;
  }
}
.main:is(body.home *) section.voice .list .swiper-scrollbar {
  height: 0.02rem;
  margin: 0.6rem 0 0;
  position: relative;
  inset: auto;
  background: #999;
  border-radius: 0;
}
.main:is(body.home *) section.voice .list .swiper-scrollbar-drag {
  background: #8DA363;
  border-radius: 0;
}
.main:is(body.home *) section.voice .btn--more {
  margin: 0.96rem auto 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.voice .btn--more {
    margin: 0.5rem 0 0;
  }
}
.main:is(body.home *) section.staff {
  container-type: inline-size;
  margin: 2.1rem 0 0;
  padding: 0 0 2.92rem;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff {
    margin: 1.1rem 0 0;
    padding: 0 0 0.64rem;
  }
}
.main:is(body.home *) section.staff::before {
  content: "";
  display: block;
  width: calc(50% + 6rem);
  height: 7.6rem;
  background: #F2ECE4;
  position: absolute;
  bottom: 0;
  left: 0;
  mix-blend-mode: multiply;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff::before {
    width: 3.4rem;
    height: 8rem;
  }
}
.main:is(body.home *) section.staff .wrap {
  display: grid;
  grid-template-rows: 1fr auto;
  grid-template-columns: auto 1fr 7.83rem;
  box-sizing: border-box;
  padding-left: 1rem;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff .wrap {
    grid-template-rows: repeat(3, auto);
    grid-template-columns: 1fr auto;
    padding-left: 0.2rem;
  }
}
.main:is(body.home *) section.staff .ttl {
  grid-row: 1/2;
  grid-column: 2/3;
  margin-right: 0.9rem;
  writing-mode: vertical-rl;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff .ttl {
    margin: 0;
  }
}
.main:is(body.home *) section.staff .ttl .shoulder {
  display: block;
  font-size: 0.18rem;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff .ttl .shoulder {
    text-indent: -0.2em;
    font-size: 0.16rem;
  }
}
.main:is(body.home *) section.staff .ttl .ja {
  display: block;
  margin: 0 0.24rem 0 0;
  font-size: 0.48rem;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff .ttl .ja {
    margin: 0 0.1rem 0 0;
    font-size: 0.28rem;
  }
}
.main:is(body.home *) section.staff .ttl .ja strong {
  font-size: 0.52rem;
  font-weight: inherit;
}
.main:is(body.home *) section.staff p {
  grid-row: 1/2;
  grid-column: 1/2;
  margin-left: 0.43rem;
  writing-mode: vertical-rl;
  letter-spacing: 0.12em;
  line-height: 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff p {
    margin: 0 auto;
    padding: 0.3rem 0 0 0.14rem;
    line-height: 0.34rem;
  }
}
.main:is(body.home *) section.staff .image {
  grid-row: 1/3;
  grid-column: 3/4;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff .image {
    grid-row: 2/3;
    grid-column: 1/3;
    margin: 0.52rem 0 0;
  }
}
.main:is(body.home *) section.staff .image--01 {
  margin-right: max(-1rem, 7rem - 50cqw);
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff .image--01 {
    width: 3.22rem;
    margin: 0 -0.2rem 0 auto;
  }
}
.main:is(body.home *) section.staff .image--02 {
  width: 2rem;
  position: absolute;
  bottom: -0.92rem;
  left: -1.17rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff .image--02 {
    width: 1.1rem;
    position: static;
    margin: -0.6rem 0 0;
  }
}
.main:is(body.home *) section.staff .btn--more {
  grid-row: 2/3;
  grid-column: 1/3;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.staff .btn--more {
    grid-row: 3/4;
    margin: 0.4rem 0 0;
  }
}
.main:is(body.home *) section.reform {
  display: grid;
  overflow: hidden;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform {
    display: block;
  }
}
.main:is(body.home *) section.reform .bg {
  grid-area: 1/1;
  height: 8.28rem;
  display: grid;
  background: #000;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .bg {
    display: none;
  }
}
.main:is(body.home *) section.reform .bg .item {
  grid-area: 1/1;
  opacity: 0;
}
@media (prefers-reduced-motion: no-preference) {
  .main:is(body.home *) section.reform .bg .item {
    transition: opacity 0.4s;
    mix-blend-mode: plus-lighter;
  }
}
.main:is(body.home *) section.reform .bg .item.active {
  opacity: 1;
}
.main:is(body.home *) section.reform .bg .item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.6;
  filter: blur(0.1rem);
}
.main:is(body.home *) section.reform .wrap {
  grid-area: 1/1;
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 5.6rem 1fr;
  gap: 0 1.18rem;
  width: 100%;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .wrap {
    display: block;
    box-sizing: border-box;
  }
}
.main:is(body.home *) section.reform .list {
  grid-row: 1/2;
  grid-column: 1/2;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .list {
    margin: 0 -0.2rem;
    position: relative;
  }
}
.main:is(body.home *) section.reform .list .slide img {
  width: 100%;
  height: 8.28rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .list .slide img {
    height: auto;
    aspect-ratio: 560/828;
  }
}
.main:is(body.home *) section.reform .list .swiper-pagination {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: 0.16rem;
  top: auto;
  bottom: 1.6rem;
  left: 6.78rem;
  z-index: auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .list .swiper-pagination {
    gap: 0.1rem;
    bottom: 0.28rem;
    left: 0.18rem;
    z-index: 1;
  }
}
.main:is(body.home *) section.reform .list .swiper-pagination .swiper-pagination-bullet {
  width: 0.08rem;
  height: 0.08rem;
  margin: 0;
  background-color: #fff;
  opacity: 0.3;
  transition: opacity 0.4s;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .list .swiper-pagination .swiper-pagination-bullet {
    width: 0.07rem;
    height: 0.07rem;
  }
}
.main:is(body.home *) section.reform .list .swiper-pagination .swiper-pagination-bullet-active {
  opacity: 1;
}
.main:is(body.home *) section.reform .text {
  grid-row: 1/2;
  grid-column: 2/4;
  padding: 2.48rem 0 0;
  color: #fff;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .text {
    padding: 0.35rem 0 0;
    color: #222;
  }
}
.main:is(body.home *) section.reform .text .ttl {
  font-weight: 500;
}
.main:is(body.home *) section.reform .text .ttl .shoulder {
  display: block;
  font-size: 0.2rem;
  letter-spacing: 0.05em;
  line-height: 0.22rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .text .ttl .shoulder {
    font-size: 0.14rem;
    font-weight: 600;
    line-height: 2;
  }
}
.main:is(body.home *) section.reform .text .ttl .ja {
  display: block;
  margin: 0.08rem 0 0;
  font-size: 0.4rem;
  letter-spacing: 0.08em;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .text .ttl .ja {
    margin: 0.05rem 0 0;
    font-size: 0.2rem;
  }
}
.main:is(body.home *) section.reform .text p {
  margin: 0.4rem 0 0;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .text p {
    margin: 0.2rem 0 0;
  }
}
.main:is(body.home *) section.reform .text .btn--more {
  margin: 0.38rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.reform .text .btn--more {
    margin: 0.44rem auto 0;
  }
}
.main:is(body.home *) section.plan {
  container-type: inline-size;
  margin: 2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.plan {
    margin: 1.1rem 0 0;
  }
}
.main:is(body.home *) section.plan .wrap {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 6.8rem 1fr;
  gap: 0 1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.plan .wrap {
    display: block;
  }
}
.main:is(body.home *) section.plan .image {
  grid-row: 1/2;
  grid-column: 1/2;
  display: grid;
  height: 8.58rem;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.plan .image {
    height: 4.29rem;
    margin: 0 -0.2rem;
  }
}
.main:is(body.home *) section.plan .image--01 {
  grid-area: 1/1;
  justify-self: flex-end;
  align-self: flex-start;
  width: 5.79rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.plan .image--01 {
    width: 2.9rem;
  }
}
.main:is(body.home *) section.plan .image--02 {
  grid-area: 1/1;
  justify-self: flex-start;
  align-self: flex-start;
  width: 3.67rem;
  margin: 2.63rem 0 0 max(-1rem, 7rem - 50cqw);
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.plan .image--02 {
    width: 1.84rem;
    margin: 1.32rem 0 0 -0.2rem;
  }
}
.main:is(body.home *) section.plan .image--03 {
  grid-area: 1/1;
  justify-self: flex-start;
  align-self: flex-end;
  width: 2.3rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.plan .image--03 {
    width: 1.15rem;
    margin: 0 0 0 0.3rem;
  }
}
.main:is(body.home *) section.plan .text {
  grid-row: 1/2;
  grid-column: 2/3;
  align-self: flex-end;
  padding: 0 0 1.67rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.plan .text {
    margin: 0.6rem 0 0;
    padding: 0;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.plan .text .ttl--more a {
    gap: 0 0.1rem;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.plan .text .ttl--more .ja {
    font-size: 0.24rem;
  }
}
.main:is(body.home *) section.plan .text p {
  margin: 0.4rem 0 0;
}
.main:is(body.home *) .after_news {
  margin: 2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news {
    margin: 1.06rem 0 0;
  }
}
.main:is(body.home *) .after_news .wrap {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news .wrap {
    display: block;
  }
}
.main:is(body.home *) .after_news section.afterService {
  box-sizing: border-box;
  width: 5.8rem;
  padding: 0.4rem;
  box-shadow: inset 0 0 0 0.01rem #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news section.afterService {
    width: auto;
    padding: 0.2rem;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news section.afterService .ttl {
    margin: 0.25rem 0 0;
  }
}
.main:is(body.home *) .after_news section.afterService .ttl a {
  border-top: none;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news section.afterService .ttl a {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    grid-template-rows: auto auto;
    grid-template-columns: auto 0.25rem;
    gap: 0.1rem 0.3rem;
  }
  .main:is(body.home *) .after_news section.afterService .ttl a .en {
    grid-row: 1/2;
    grid-column: 1/3;
    line-height: 1.5;
  }
  .main:is(body.home *) .after_news section.afterService .ttl a .ja {
    grid-row: 2/3;
    grid-column: 1/2;
  }
  .main:is(body.home *) .after_news section.afterService .ttl a::before, .main:is(body.home *) .after_news section.afterService .ttl a::after {
    grid-row: 2/3;
    grid-column: 2/3;
  }
}
.main:is(body.home *) .after_news section.afterService p {
  padding: 0.3rem 0 0;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news section.afterService p {
    padding: 0.2rem 0 0;
  }
}
.main:is(body.home *) .after_news section.news {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 6.8rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news section.news {
    margin: 1.1rem 0 0;
    width: auto;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news section.news .list {
    margin: 0.4rem 0 0;
  }
}
.main:is(body.home *) .after_news section.news .list li {
  border-bottom: 0.01rem solid #909090;
}
.main:is(body.home *) .after_news section.news .list a {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 0.3rem;
  gap: 0.1rem 0.3rem;
  padding: 0.2rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news section.news .list a {
    grid-template-columns: 1fr 0.45rem;
  }
}
.main:is(body.home *) .after_news section.news .list a .date {
  grid-row: 1/2;
  grid-column: 1/2;
  font-size: 0.14rem;
  line-height: 0.2rem;
}
.main:is(body.home *) .after_news section.news .list a .title {
  grid-row: 2/3;
  grid-column: 1/2;
  font-size: 0.18rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news section.news .list a .title {
    font-size: 0.16rem;
  }
}
.main:is(body.home *) .after_news section.news .list a::after {
  grid-row: 1/3;
  grid-column: 2/3;
  align-self: center;
  content: "";
  display: block;
  aspect-ratio: 1;
  background: currentColor;
  -webkit-mask: url(../imgs/arw01.svg) center/0.1rem auto no-repeat;
          mask: url(../imgs/arw01.svg) center/0.1rem auto no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .after_news section.news .list a::after {
    -webkit-mask-size: 0.15rem auto;
            mask-size: 0.15rem auto;
  }
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.home *) .after_news section.news .list a::after {
    transition: 0.4s;
    transition-property: background-color, translate;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.home *) .after_news section.news .list a:hover::after {
    translate: 50% 0 0;
  }
}
.main:is(body.home *) .message--01 {
  margin: 2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .message--01 {
    margin: 0.9rem 0 0;
  }
  .main:is(body.home *) .message--01 .image {
    margin: 0 -0.2rem;
  }
}
.main:is(body.home *) .message--01 p {
  margin: 0.6rem 0 0;
  text-align: center;
  font-size: 0.24rem;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .message--01 p {
    margin: 0.4rem 0 0;
    text-align: center;
    font-size: 0.18rem;
  }
}
.main:is(body.home *) .message--01 p strong {
  display: block;
  font-weight: inherit;
  font-size: 0.36rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .message--01 p strong {
    font-size: 0.26rem;
  }
}
.main:is(body.home *) .message--01 p strong span {
  font-size: 0.28rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .message--01 p strong span {
    font-size: 0.18rem;
  }
}
.main:is(body.home *) section.company {
  margin: 0.6rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company {
    margin: 0.4rem 0 0;
  }
}
.main:is(body.home *) section.company .wrap {
  display: grid;
  grid-template-rows: repeat(3, auto);
  grid-template-columns: 1fr 3.1rem 8.23rem;
  gap: 0 1.04rem;
  border-top: 0.01rem solid #999;
  padding: 0.8rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .wrap {
    display: block;
    border-top: none;
    padding: 0 0.2rem;
  }
}
.main:is(body.home *) section.company .ttl {
  grid-row: 1/2;
  grid-column: 1/2;
  justify-self: flex-start;
  writing-mode: vertical-rl;
  font-size: 0.44rem;
  font-weight: inherit;
  letter-spacing: 0.3em;
  line-height: 1;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .ttl {
    justify-self: stretch;
    border-top: 0.01rem solid #999;
    padding: 0.8rem 0 0;
    writing-mode: horizontal-tb;
    font-size: 0.28rem;
    text-indent: 0;
    letter-spacing: 0;
    line-height: 0.36rem;
  }
}
.main:is(body.home *) section.company .image {
  grid-row: 1/2;
  grid-column: 2/3;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .image {
    margin: 0.3rem 0 0;
  }
}
.main:is(body.home *) section.company .data {
  grid-row: 1/2;
  grid-column: 3/4;
  align-self: flex-end;
  display: grid;
  grid-template-columns: 1.9rem 1fr;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .data {
    display: block;
    margin: 0.4rem 0 0;
  }
}
.main:is(body.home *) section.company .data dt,
.main:is(body.home *) section.company .data dd {
  border-bottom: 0.01rem solid #999;
  padding: 0.3rem 0;
  letter-spacing: 0.05em;
  line-height: 0.23rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .data dt,
.main:is(body.home *) section.company .data dd {
    font-size: 0.15rem;
    line-height: 0.22rem;
  }
}
.main:is(body.home *) section.company .data dt {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .data dt {
    border-bottom: none;
    padding: 0.14rem 0;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .data dd {
    padding: 0 0 0.2rem;
  }
}
.main:is(body.home *) section.company .data .address {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  line-height: 1.8;
}
.main:is(body.home *) section.company .btn--more {
  grid-row: 2/3;
  grid-column: 2/4;
  margin: 0.6rem 0 0 auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .btn--more {
    margin: 0.4rem 0 0 auto;
  }
}
.main:is(body.home *) section.company .map {
  grid-row: 3/4;
  grid-column: 2/4;
  display: flex;
  justify-content: space-between;
  margin: 0.8rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .map {
    flex-direction: column;
    gap: 0.4rem;
    margin: 0.6rem -0.2rem 0;
  }
}
.main:is(body.home *) section.company .map figure {
  width: 5.9rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .map figure {
    width: auto;
  }
}
.main:is(body.home *) section.company .map figure iframe {
  display: block;
  width: 100%;
  height: 3rem;
  border: none;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .map figure iframe {
    height: 1.98rem;
  }
}
.main:is(body.home *) section.company .map figure figcaption {
  margin: 0.1rem 0 0;
  font-weight: 600;
  line-height: 0.29rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.company .map figure figcaption {
    padding: 0 0.2rem;
    font-size: 0.16rem;
  }
}
.main:is(body.home *) section.contact {
  margin: 2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.contact {
    margin: 1.1rem 0 0;
  }
}
.main:is(body.home *) section.contact .wrap {
  grid-template-rows: repeat(3, auto);
}
.main:is(body.home *) section.contact .text {
  color: #fdfcf8;
  letter-spacing: 0.05em;
}
.main:is(body.home *) section.contact .text--02 {
  grid-row: 3/4;
  grid-column: 1/2;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.contact .text--02 {
    margin: 0.5rem 0 0;
  }
}
.main:is(body.home *) section.contact .btn--more {
  grid-row: 3/4;
  grid-column: 2/3;
  align-self: flex-end;
  margin: 0 0 0.12rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.contact .btn--more {
    margin: 0.5rem 0 0 auto;
  }
}
.main:is(body.home *) section.blog {
  margin: 2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.blog {
    margin: 0.9rem 0 0;
  }
}
.main:is(body.home *) section.blog .wrap {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 12.36rem 1fr;
  gap: 0.6rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.blog .wrap {
    display: block;
  }
}
.main:is(body.home *) section.blog .ttl {
  grid-row: 1/3;
  grid-column: 2/3;
  writing-mode: vertical-rl;
  font-size: 0.44rem;
  font-weight: inherit;
  line-height: 1;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.blog .ttl {
    writing-mode: horizontal-tb;
    font-size: 0.28rem;
    line-height: 0.34rem;
    letter-spacing: 0;
  }
}
.main:is(body.home *) section.blog .list {
  grid-row: 2/3;
  grid-column: 1/2;
  display: flex;
  gap: 0.36rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.blog .list {
    flex-direction: column;
    gap: 0.43rem;
    width: 3rem;
    margin: 0.44rem auto 0;
  }
}
.main:is(body.home *) section.blog .list .item {
  display: block;
  width: 3.88rem;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.blog .list .item {
    width: auto;
  }
}
.main:is(body.home *) section.blog .list .item .image img {
  width: 100%;
  aspect-ratio: 388/250;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.home *) section.blog .list .item .category {
  padding: 0.1rem 0.2rem;
  position: absolute;
  top: 0;
  left: 0;
  background: #2F406E;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
  line-height: 0.19rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.blog .list .item .category {
    padding: 0.08rem 0.14rem;
  }
}
.main:is(body.home *) section.blog .list .item .date {
  margin: 0.2rem 0 0;
  font-size: 0.14rem;
  line-height: 0.2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.blog .list .item .date {
    margin: 0.15rem 0.05rem 0;
    line-height: 0.25rem;
  }
}
.main:is(body.home *) section.blog .list .item .title {
  margin: 0.1rem 0 0;
  font-size: 0.22rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.blog .list .item .title {
    margin: 0.05rem 0.05rem 0;
    font-size: 0.2rem;
    line-height: 0.29rem;
  }
}
.main:is(body.home *) section.blog .btn--more {
  grid-row: 1/2;
  grid-column: 1/2;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.blog .btn--more {
    margin: 0.68rem auto 0;
  }
}
.main:is(body.home *) section.faq {
  margin: 2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq {
    margin: 1.24rem 0 0;
  }
}
.main:is(body.home *) section.faq .wrap {
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  padding-right: 1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq .wrap {
    display: block;
    padding-right: 0.2rem;
  }
}
.main:is(body.home *) section.faq .ttl {
  grid-row: 1/3;
  grid-column: 2/3;
  margin: 0.4rem 0 0 1rem;
  writing-mode: vertical-rl;
  font-size: 0.44rem;
  font-weight: inherit;
  line-height: 1;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq .ttl {
    margin: 0;
    writing-mode: horizontal-tb;
    font-size: 0.28rem;
    line-height: 0.34rem;
    letter-spacing: 0;
    text-align: center;
  }
}
.main:is(body.home *) section.faq .list {
  width: 9.9rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq .list {
    width: auto;
    margin: 0.3rem 0 0;
  }
}
.main:is(body.home *) section.faq .list details {
  border-bottom: 0.01rem solid #999;
  padding: 0.3rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq .list details {
    padding: 0.15rem 0;
  }
}
.main:is(body.home *) section.faq .list details summary {
  padding-right: 0.8rem;
  position: relative;
  font-size: 0.22rem;
  line-height: 0.32rem;
  cursor: pointer;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq .list details summary {
    padding: 0.12rem 0.25rem 0.12rem 0;
    font-size: 0.18rem;
    line-height: 0.26rem;
  }
}
.main:is(body.home *) section.faq .list details summary::before {
  content: "Q.";
}
.main:is(body.home *) section.faq .list details summary::after {
  content: "";
  display: block;
  width: 0.12rem;
  aspect-ratio: 12/15;
  position: absolute;
  right: 0.33rem;
  top: calc(50% - 0.075rem);
  background: url(../imgs/arw04.svg) center/contain no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq .list details summary::after {
    right: 0.1rem;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .main:is(body.home *) section.faq .list details summary::after {
    transition: scale 0.4s;
  }
}
.main:is(body.home *) section.faq .list details::details-content {
  content-visibility: unset;
  display: grid;
}
@media (prefers-reduced-motion: no-preference) {
  .main:is(body.home *) section.faq .list details::details-content {
    transition: grid-template-rows 0.4s;
  }
}
.main:is(body.home *) section.faq .list details:not([open])::details-content {
  grid-template-rows: 0fr;
}
.main:is(body.home *) section.faq .list details[open] summary::after {
  scale: 1 -1;
}
.main:is(body.home *) section.faq .list details[open]::details-content {
  grid-template-rows: 1fr;
}
.main:is(body.home *) section.faq .list details .detail {
  width: 8.52rem;
  overflow: hidden;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq .list details .detail {
    width: auto;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq .list details .detail p {
    font-size: 0.15rem;
    line-height: 0.22rem;
  }
}
.main:is(body.home *) section.faq .list details .detail p:first-child {
  padding: 0.2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq .list details .detail p:first-child {
    padding: 0;
  }
}
.main:is(body.home *) section.faq .list details .detail p:first-child::before {
  content: "A.";
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) section.faq .list details .detail p:last-child {
    padding: 0 0 0.1rem;
  }
}
.main:is(body.home *) .message--02 {
  margin: 2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .message--02 {
    margin: 1.47rem 0 0;
  }
}
.main:is(body.home *) .message--02 .image img {
  width: 100%;
  height: 10.23rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .message--02 .image img {
    height: 9.4rem;
  }
}
.main:is(body.home *) .message--02 p {
  padding: 3rem 0 3.34rem;
  font-size: 0.2rem;
  letter-spacing: 0.1em;
  line-height: 2.6;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.home *) .message--02 p {
    padding: 1.5rem 0;
    font-size: 0.16rem;
    line-height: 2.6;
  }
}
.main:is(body.idea *) {
  background: url(../imgs/bg-lead.png) 0 4.8rem/100% 14.21rem no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) {
    background: url(../imgs/bg-lead_sp.png) 0 2.1rem/100% auto no-repeat;
  }
}
.main:is(body.idea *) .body {
  padding: 0.8rem 0 2rem;
  background: url(../imgs/idea/bg.png) 0 100%/100% 13.08rem no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body {
    padding: 0.33rem 0 0.8rem;
    background: url(../imgs/idea/bg_sp.png) 0 100%/100% auto no-repeat;
  }
}
.main:is(body.idea *) .body .lead .catch {
  font-size: 0.36rem;
  line-height: 2.4;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .lead .catch {
    font-size: 0.24rem;
    line-height: 0.35rem;
  }
}
.main:is(body.idea *) .body .lead .catch .small {
  display: block;
  margin: 0 0 -0.18rem;
  font-size: 0.24rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .lead .catch .small {
    margin: 0;
    font-size: 0.18rem;
    line-height: 0.26rem;
  }
}
.main:is(body.idea *) .body .section {
  container-type: inline-size;
  margin: 1.2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section {
    margin: 0.8rem 0 0;
  }
}
.main:is(body.idea *) .body .section .wrap {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section .wrap {
    display: block;
  }
}
.main:is(body.idea *) .body .section .image {
  width: 7.2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section .image {
    width: 3.6rem;
  }
}
.main:is(body.idea *) .body .section .text {
  width: 6.4rem;
  padding: 0.08rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section .text {
    width: auto;
    margin: 0.2rem 0 0;
    padding: 0 0.05rem;
  }
}
.main:is(body.idea *) .body .section .text .num {
  font-size: 0.3rem;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section .text .num {
    font-size: 0.28rem;
  }
}
.main:is(body.idea *) .body .section .text .title {
  margin: 0.22rem 0 0;
  font-size: 0.26rem;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section .text .title {
    margin: 0.2rem 0 0;
    font-size: 0.22rem;
    line-height: 1.6;
  }
}
.main:is(body.idea *) .body .section .text p {
  margin: 0.32rem 0 0;
  line-height: 0.35rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section .text p {
    margin: 0.2rem 0 0;
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.idea *) .body .section .text .btn {
  margin: 0.45rem 0 0 auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section .text .btn {
    margin: 0.2rem 0 0;
  }
}
.main:is(body.idea *) .body .section:nth-of-type(odd) .image {
  margin-left: max(-1.5rem, 6.5rem - 50cqw);
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section:nth-of-type(odd) .image {
    margin-left: -0.2rem;
  }
}
.main:is(body.idea *) .body .section:nth-of-type(even) .wrap {
  flex-direction: row-reverse;
}
.main:is(body.idea *) .body .section:nth-of-type(even) .image {
  margin-right: max(-1.5rem, 6.5rem - 50cqw);
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section:nth-of-type(even) .image {
    margin-right: -0.2rem;
    margin-left: auto;
  }
}
.main:is(body.idea *) .body .section:first-of-type {
  margin-top: 1.34rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .body .section:first-of-type {
    margin-top: 0.65rem;
  }
}
.main:is(body.idea *) .append {
  padding-top: 1.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .append {
    padding-top: 0.9rem;
  }
}
.main:is(body.idea *) .append .fNav {
  margin: 1.7rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.idea *) .append .fNav {
    margin: 0.5rem 0 0;
  }
}
.main:is(body.process *) {
  background: url(../imgs/bg-lead.png) 0 4.8rem/100% 14.21rem no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) {
    background: url(../imgs/bg-lead_sp.png) 0 2.1rem/100% auto no-repeat;
  }
}
.main:is(body.process *) .body {
  padding: 1.37rem 0 1.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body {
    padding: 0.33rem 0 0.96rem;
  }
}
.main:is(body.process *) .body .lead .wrap {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 4.96rem;
  gap: 0.4rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .lead .wrap {
    display: block;
  }
}
.main:is(body.process *) .body .lead .catch {
  grid-row: 1/2;
  grid-column: 1/2;
  font-size: 0.32rem;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .lead .catch {
    font-size: 0.22rem;
    line-height: 0.32rem;
  }
}
.main:is(body.process *) .body .lead .text {
  grid-row: 2/3;
  grid-column: 1/2;
  line-height: 2.4;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .lead .text {
    margin: 0.3rem 0 0;
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.process *) .body .lead .image {
  grid-row: 1/3;
  grid-column: 2/3;
  display: grid;
  aspect-ratio: 496/553;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .lead .image {
    margin: 0.64rem -0.2rem 0;
    aspect-ratio: 390/361;
  }
}
.main:is(body.process *) .body .lead .image--01 {
  grid-area: 1/1;
  width: 3.96rem;
  justify-self: flex-end;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .lead .image--01 {
    width: 2.66rem;
  }
}
.main:is(body.process *) .body .lead .image--02 {
  grid-area: 1/1;
  width: 2.18rem;
  align-self: flex-end;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .lead .image--02 {
    width: 1.6rem;
  }
}
.main:is(body.process *) .body .list {
  margin: 1.2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .list {
    margin: 0.9rem 0 0;
  }
}
.main:is(body.process *) .body .list ol {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .list ol {
    gap: 0.6rem;
  }
}
.main:is(body.process *) .body .list ol li {
  box-sizing: border-box;
  height: 3.2rem;
  padding: 0.2rem 0 0;
  background: linear-gradient(#222, #222) 0 0/0.33rem 0.01rem no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .list ol li {
    height: auto;
    padding: 0.15rem 0 0;
    background-size: 0.3rem 0.01rem;
  }
}
.main:is(body.process *) .body .list ol .num {
  font-size: 0.3rem;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .list ol .num {
    font-size: 0.2rem;
  }
}
.main:is(body.process *) .body .list ol .name {
  margin: 0.2rem 0 0;
  font-size: 0.26rem;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .list ol .name {
    margin: 0.1rem 0 0;
    font-size: 0.22rem;
    line-height: 1.6;
  }
}
.main:is(body.process *) .body .list ol .text {
  margin: 0.2rem 0 0;
  font-weight: 400;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.process *) .body .list ol .text {
    margin: 0.1rem 0 0;
    line-height: 0.24rem;
  }
}
.main:is(body.after_follow *) .body {
  padding: 0.5rem 0 1.64rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body {
    padding: 0.33rem 0 0.76rem;
  }
}
.main:is(body.after_follow *) .body .lead .text {
  line-height: 0.35rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .lead .text {
    margin: 0 0.05rem;
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.after_follow *) .body .lead .sNav {
  display: flex;
  justify-content: space-between;
  margin: 0.65rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .lead .sNav {
    margin: 0.3rem 0 0;
  }
}
.main:is(body.after_follow *) .body .lead .sNav li {
  width: 3.2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .lead .sNav li {
    width: 1.15rem;
  }
}
.main:is(body.after_follow *) .body .lead .sNav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 0.7rem;
  padding: 0 0.2rem 0 0.25rem;
  box-shadow: inset 0 0 0 0.01rem #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .lead .sNav a {
    flex-direction: column;
    gap: 0.07rem;
    height: auto;
    padding: 0.1rem 0;
    line-height: 0.2rem;
    border-radius: 0.05rem;
  }
}
.main:is(body.after_follow *) .body .lead .sNav a::after {
  content: "";
  display: block;
  width: 0.3rem;
  aspect-ratio: 1;
  background: currentColor url(../imgs/arw01_w.svg) center/0.12rem auto no-repeat;
  border-radius: 50%;
  rotate: 90deg;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .lead .sNav a::after {
    width: 0.2rem;
  }
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.after_follow *) .body .lead .sNav a::after {
    transition: translate 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.after_follow *) .body .lead .sNav a:hover::after {
    translate: 0 0.1rem 0;
  }
}
.main:is(body.after_follow *) .body .section .title {
  font-size: 0.36rem;
  font-weight: 500;
  line-height: 0.5rem;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .section .title {
    font-size: 0.28rem;
    line-height: 0.4rem;
  }
}
.main:is(body.after_follow *) .body .inspection {
  margin: 1.6rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .inspection {
    margin: 0.9rem 0 0;
  }
}
.main:is(body.after_follow *) .body .inspection .catch {
  font-size: 0.22rem;
  line-height: 0.5rem;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .inspection .catch {
    font-size: 0.18rem;
    line-height: 0.26rem;
  }
}
.main:is(body.after_follow *) .body .inspection p {
  margin: 0.4rem 0 0;
  font-family: 400;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .inspection p {
    margin: 0.2rem 0.05rem 0;
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.after_follow *) .body .inspection .chart {
  margin: 0.64rem 0 0;
  border-top: 0.01rem solid #999;
  border-bottom: 0.01rem solid #999;
  padding: 0.5rem 0 0.33rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .inspection .chart {
    margin: 0.5rem 0 0;
    padding: 0.3rem 0 0.24rem 0.05rem;
  }
}
.main:is(body.after_follow *) .body .inspection .chart img {
  display: block;
  width: 6.02rem;
  margin: 0 auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .inspection .chart img {
    width: 1.9rem;
    margin: 0;
  }
}
.main:is(body.after_follow *) .body .inspection .chart .note {
  margin: 0.24rem 0 0;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
  font-weight: 400;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .inspection .chart .note {
    margin: 0.3rem 0 0;
    text-align: left;
  }
}
.main:is(body.after_follow *) .body .inspection .block {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0.84rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .inspection .block {
    display: block;
    margin: 0.6rem 0 0;
  }
}
.main:is(body.after_follow *) .body .inspection .block .image {
  width: 5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .inspection .block .image {
    width: auto;
  }
}
.main:is(body.after_follow *) .body .inspection .block .text {
  width: 4.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .inspection .block .text {
    width: auto;
    margin: 0.24rem 0.05rem 0;
  }
}
.main:is(body.after_follow *) .body .inspection .block .text p {
  margin: 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .inspection .block .text p {
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.after_follow *) .body .guarantee {
  margin: 1.88rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .guarantee {
    margin: 1.1rem 0 0;
  }
}
.main:is(body.after_follow *) .body .guarantee .list {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  margin: 0.5rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .guarantee .list {
    gap: 0.7rem;
    margin: 0.3rem 0 0;
  }
}
.main:is(body.after_follow *) .body .guarantee .list .item {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .guarantee .list .item {
    display: block;
  }
}
.main:is(body.after_follow *) .body .guarantee .list .item .image {
  width: 5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .guarantee .list .item .image {
    width: auto;
  }
}
.main:is(body.after_follow *) .body .guarantee .list .item .text {
  width: 4.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .guarantee .list .item .text {
    width: auto;
    margin: 0.24rem 0.05rem 0;
  }
}
.main:is(body.after_follow *) .body .guarantee .list .item .text .name {
  font-size: 0.26rem;
  line-height: 0.35rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .guarantee .list .item .text .name {
    font-size: 0.24rem;
  }
}
.main:is(body.after_follow *) .body .guarantee .list .item .text .name .small {
  font-size: 0.18rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .guarantee .list .item .text .name .small {
    font-size: 0.16rem;
  }
}
.main:is(body.after_follow *) .body .guarantee .list .item .text .catch {
  margin: 0.2rem 0 0;
  font-size: 0.2rem;
  line-height: 1.6;
}
.main:is(body.after_follow *) .body .guarantee .list .item .text p {
  margin: 0.16rem 0 0;
  font-family: 400;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .guarantee .list .item .text p {
    margin: 0.12rem 0 0;
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.after_follow *) .body .yamorinokai {
  margin: 1.9rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .yamorinokai {
    margin: 1.1rem 0 0;
  }
}
.main:is(body.after_follow *) .body .yamorinokai .image {
  margin: 0.48rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .yamorinokai .image {
    margin: 0.3rem 0 0;
  }
}
.main:is(body.after_follow *) .body .yamorinokai .text {
  margin: 0.4rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .yamorinokai .text {
    margin: 0.38rem 0.05rem 0;
  }
}
.main:is(body.after_follow *) .body .yamorinokai .text p {
  margin: 0.34rem 0 0;
  font-weight: 400;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .yamorinokai .text p {
    margin: 0.42rem 0 0;
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.after_follow *) .body .yamorinokai .text p::first-child {
  margin: 0;
}
.main:is(body.after_follow *) .body .yamorinokai .text ul {
  display: flex;
  gap: 0.2rem;
  margin: 0.32rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .yamorinokai .text ul {
    gap: 0.15rem;
    margin: 0.4rem 0 0;
  }
}
.main:is(body.after_follow *) .body .yamorinokai .text ul li {
  border-bottom: 0.01rem solid currentColor;
  padding: 0 0 0.1rem 0.27rem;
  background: url(../imgs/check.svg) 0.05rem 0.1rem/0.14rem auto no-repeat;
  font-size: 0.18rem;
  line-height: 0.26rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.after_follow *) .body .yamorinokai .text ul li {
    font-size: 0.16rem;
    line-height: 0.24rem;
  }
}
.main:is(body.plan *) .lead {
  margin: 0.6rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .lead {
    margin: 0.33rem 0 0;
  }
}
.main:is(body.plan *) .lead .wrap {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 6.8rem;
  gap: 0.7rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .lead .wrap {
    display: block;
  }
}
.main:is(body.plan *) .lead .text {
  grid-row: 1/2;
  grid-column: 1/2;
  padding: 0.6rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .lead .text {
    padding: 0;
  }
}
.main:is(body.plan *) .lead .text .catch {
  font-size: 0.32rem;
  font-weight: 600;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .lead .text .catch {
    font-size: 0.22rem;
    font-weight: 500;
    line-height: 0.32rem;
  }
}
.main:is(body.plan *) .lead .text p {
  margin: 0.34rem 0 0;
  line-height: 2.4;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .lead .text p {
    margin: 0.2rem 0 0;
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.plan *) .lead .sNav {
  grid-row: 2/3;
  grid-column: 1/3;
  display: flex;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .lead .sNav {
    justify-content: space-between;
    margin: 0.3rem 0 0;
  }
}
.main:is(body.plan *) .lead .sNav li {
  width: 50%;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .lead .sNav li {
    width: 1.7rem;
  }
}
.main:is(body.plan *) .lead .sNav a {
  display: grid;
  place-items: center;
  height: 0.8rem;
  position: relative;
  box-shadow: inset 0 0 0 0.01rem #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .lead .sNav a {
    height: 0.5rem;
  }
}
.main:is(body.plan *) .lead .sNav a::after {
  content: "";
  display: block;
  width: 0.3rem;
  aspect-ratio: 1;
  position: absolute;
  top: calc(50% - 0.15rem);
  right: 0.4rem;
  background: currentColor url(../imgs/arw01_w.svg) center/0.12rem auto no-repeat;
  border-radius: 50%;
  rotate: 90deg;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .lead .sNav a::after {
    width: 0.2rem;
    top: calc(50% - 0.1rem);
    right: 0.1rem;
  }
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.plan *) .lead .sNav a::after {
    transition: translate 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.plan *) .lead .sNav a:hover::after {
    translate: 0 0.1rem 0;
  }
}
.main:is(body.plan *) .lead .image {
  grid-row: 1/2;
  grid-column: 2/3;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .lead .image {
    margin: 0.45rem -0.2rem 0;
  }
}
.main:is(body.plan *) .section .headline {
  display: flex;
  justify-content: space-between;
  border-bottom: 0.01rem solid #999;
  padding: 0.1rem 0 0.15rem 0.1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .headline {
    display: block;
    border-bottom: none;
    padding: 0;
  }
}
.main:is(body.plan *) .section .headline .title {
  font-size: 0.32rem;
  font-weight: inherit;
  line-height: 0.42rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .headline .title {
    border-bottom: 0.01rem solid #999;
    padding: 0.1rem 0.1rem 0.14rem;
    font-size: 0.22rem;
    line-height: 1.3;
  }
}
.main:is(body.plan *) .section .headline .sNav {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .headline .sNav {
    justify-content: space-between;
    gap: 0;
    padding: 0 0.16rem;
  }
}
.main:is(body.plan *) .section .headline .sNav a {
  display: flex;
  align-items: center;
  gap: 0.1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .headline .sNav a {
    gap: 0.07rem;
    padding: 0.2rem 0;
    font-size: 0.12rem;
  }
}
.main:is(body.plan *) .section .headline .sNav a::after {
  content: "";
  display: block;
  width: 0.3rem;
  aspect-ratio: 1;
  background: currentColor url(../imgs/arw01_w.svg) center/0.12rem auto no-repeat;
  border-radius: 50%;
  rotate: 90deg;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .headline .sNav a::after {
    width: 0.2rem;
  }
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.plan *) .section .headline .sNav a::after {
    transition: translate 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.plan *) .section .headline .sNav a:hover::after {
    translate: 0 0.1rem 0;
  }
}
.main:is(body.plan *) .section .summary {
  margin: 0.65rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .summary {
    margin: 0.1rem 0 0;
  }
}
.main:is(body.plan *) .section .summary .catch {
  margin: 0.48rem 0 0;
  font-size: 0.24rem;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .summary .catch {
    margin: 0.2rem 0 0;
    font-size: 0.2rem;
    line-height: 1.6;
  }
}
.main:is(body.plan *) .section .summary p {
  margin: 0.2rem 0 0;
  font-size: 0.15rem;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .summary p {
    margin: 0.1rem 0 0;
    font-size: 0.14rem;
    line-height: 0.24rem;
  }
}
.main:is(body.plan *) .section .summary + .detail {
  margin: 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .summary + .detail {
    margin: 0.56rem 0 0;
  }
}
.main:is(body.plan *) .section .detail {
  display: flex;
  justify-content: space-between;
  margin: 0.5rem 0 0;
  border-bottom: 0.01rem solid #999;
  padding: 1rem 0 1.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .detail {
    display: flex;
    flex-direction: column;
    margin: 0;
    border-top: 0.01rem solid #999;
    border-bottom: none;
    padding: 0.24rem 0 0.8rem;
  }
}
.main:is(body.plan *) .section .detail:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.main:is(body.plan *) .section .detail .plan {
  width: 5.6rem;
  align-self: flex-start;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .detail .plan {
    order: 2;
    width: auto;
    margin: 0.4rem 0 0;
    position: static;
  }
}
.main:is(body.plan *) .section .detail .body {
  width: 5.6rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .detail .body {
    display: contents;
  }
}
.main:is(body.plan *) .section .detail .body .name {
  font-size: 0.36rem;
  line-height: 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .detail .body .name {
    order: 0;
    font-size: 0.24rem;
  }
}
.main:is(body.plan *) .section .detail .body .data {
  border-bottom: 0.01rem solid #999;
  padding: 0.27rem 0;
  font-size: 0.15rem;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .detail .body .data {
    order: 1;
    border-bottom: none;
    padding: 0.1rem 0 0;
    line-height: 1.8;
  }
}
.main:is(body.plan *) .section .detail .body .data .size {
  display: grid;
  grid-column: auto 1fr;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.main:is(body.plan *) .section .detail .body .data .size dt {
  grid-column: 1/2;
}
.main:is(body.plan *) .section .detail .body .data .size dd {
  grid-column: 2/3;
  padding-left: 1em;
  text-align: right;
}
.main:is(body.plan *) .section .detail .body .item {
  margin: 0.6rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .detail .body .item {
    order: 3;
    margin: 0.4rem 0 0;
  }
}
.main:is(body.plan *) .section .detail .body .item .catch {
  margin: 0.2rem 0 0;
  font-size: 0.2rem;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .detail .body .item .catch {
    margin: 0.1rem 0 0;
  }
}
.main:is(body.plan *) .section .detail .body .item p {
  margin: 0.15rem 0 0;
  font-weight: 400;
  line-height: 2;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section .detail .body .item p {
    margin: 0.1rem 0 0;
    font-weight: 500;
    line-height: 0.24rem;
  }
}
.main:is(body.plan *) .section.oneStory {
  margin: 1.5rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section.oneStory {
    margin: 0.45rem 0 0;
  }
}
.main:is(body.plan *) .section.twoStories {
  margin: 1.78rem 0 1.92rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.plan *) .section.twoStories {
    margin: 1.28rem 0;
  }
}
.main:is(body.comfortable *) .body, .main:is(body.technique *) .body, .main:is(body.material *) .body, .main:is(body.flexible *) .body, .main:is(body.reform *) .body {
  padding-bottom: 1.64rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body, .main:is(body.technique *) .body, .main:is(body.material *) .body, .main:is(body.flexible *) .body, .main:is(body.reform *) .body {
    padding-bottom: 0.96rem;
  }
}
.main:is(body.comfortable *) .body .lead, .main:is(body.technique *) .body .lead, .main:is(body.material *) .body .lead, .main:is(body.flexible *) .body .lead, .main:is(body.reform *) .body .lead {
  margin: 0.5rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .lead, .main:is(body.technique *) .body .lead, .main:is(body.material *) .body .lead, .main:is(body.flexible *) .body .lead, .main:is(body.reform *) .body .lead {
    margin: 0.36rem 0.05rem 0;
  }
}
.main:is(body.comfortable *) .body .lead .catch, .main:is(body.technique *) .body .lead .catch, .main:is(body.material *) .body .lead .catch, .main:is(body.flexible *) .body .lead .catch, .main:is(body.reform *) .body .lead .catch {
  font-size: 0.28rem;
  line-height: 0.45rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .lead .catch, .main:is(body.technique *) .body .lead .catch, .main:is(body.material *) .body .lead .catch, .main:is(body.flexible *) .body .lead .catch, .main:is(body.reform *) .body .lead .catch {
    font-size: 0.24rem;
    line-height: 0.38rem;
  }
}
.main:is(body.comfortable *) .body .lead p, .main:is(body.technique *) .body .lead p, .main:is(body.material *) .body .lead p, .main:is(body.flexible *) .body .lead p, .main:is(body.reform *) .body .lead p {
  margin: 0.4rem 0 0;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .lead p, .main:is(body.technique *) .body .lead p, .main:is(body.material *) .body .lead p, .main:is(body.flexible *) .body .lead p, .main:is(body.reform *) .body .lead p {
    margin: 0.3rem 0 0;
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.comfortable *) .body .section, .main:is(body.technique *) .body .section, .main:is(body.material *) .body .section, .main:is(body.flexible *) .body .section, .main:is(body.reform *) .body .section {
  margin: 0.9rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section, .main:is(body.technique *) .body .section, .main:is(body.material *) .body .section, .main:is(body.flexible *) .body .section, .main:is(body.reform *) .body .section {
    margin: 0.65rem 0.05rem 0;
  }
}
.main:is(body.comfortable *) .body .section .wrap, .main:is(body.technique *) .body .section .wrap, .main:is(body.material *) .body .section .wrap, .main:is(body.flexible *) .body .section .wrap, .main:is(body.reform *) .body .section .wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section .wrap, .main:is(body.technique *) .body .section .wrap, .main:is(body.material *) .body .section .wrap, .main:is(body.flexible *) .body .section .wrap, .main:is(body.reform *) .body .section .wrap {
    display: block;
  }
}
.main:is(body.comfortable *) .body .section .image, .main:is(body.technique *) .body .section .image, .main:is(body.material *) .body .section .image, .main:is(body.flexible *) .body .section .image, .main:is(body.reform *) .body .section .image {
  width: 5.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section .image, .main:is(body.technique *) .body .section .image, .main:is(body.material *) .body .section .image, .main:is(body.flexible *) .body .section .image, .main:is(body.reform *) .body .section .image {
    width: auto;
  }
}
.main:is(body.comfortable *) .body .section .text, .main:is(body.technique *) .body .section .text, .main:is(body.material *) .body .section .text, .main:is(body.flexible *) .body .section .text, .main:is(body.reform *) .body .section .text {
  width: 5.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section .text, .main:is(body.technique *) .body .section .text, .main:is(body.material *) .body .section .text, .main:is(body.flexible *) .body .section .text, .main:is(body.reform *) .body .section .text {
    width: auto;
    margin: 0.2rem 0 0;
  }
}
.main:is(body.comfortable *) .body .section .text .title, .main:is(body.technique *) .body .section .text .title, .main:is(body.material *) .body .section .text .title, .main:is(body.flexible *) .body .section .text .title, .main:is(body.reform *) .body .section .text .title {
  font-size: 0.22rem;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section .text .title, .main:is(body.technique *) .body .section .text .title, .main:is(body.material *) .body .section .text .title, .main:is(body.flexible *) .body .section .text .title, .main:is(body.reform *) .body .section .text .title {
    line-height: 1.6;
  }
}
.main:is(body.comfortable *) .body .section .text p, .main:is(body.technique *) .body .section .text p, .main:is(body.material *) .body .section .text p, .main:is(body.flexible *) .body .section .text p, .main:is(body.reform *) .body .section .text p {
  margin: 0.2rem 0 0;
  font-size: 0.15rem;
  line-height: 1.6;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section .text p, .main:is(body.technique *) .body .section .text p, .main:is(body.material *) .body .section .text p, .main:is(body.flexible *) .body .section .text p, .main:is(body.reform *) .body .section .text p {
    margin: 0.15rem 0 0;
  }
}
.main:is(body.comfortable *) .body .section .text .note, .main:is(body.technique *) .body .section .text .note, .main:is(body.material *) .body .section .text .note, .main:is(body.flexible *) .body .section .text .note, .main:is(body.reform *) .body .section .text .note {
  margin: 0.2rem 0 0;
  color: #666;
  font-size: 0.12rem;
  line-height: 0.17rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section .text .note, .main:is(body.technique *) .body .section .text .note, .main:is(body.material *) .body .section .text .note, .main:is(body.flexible *) .body .section .text .note, .main:is(body.reform *) .body .section .text .note {
    margin: 0.15rem 0 0;
  }
}
.main:is(body.comfortable *) .body .section--01, .main:is(body.technique *) .body .section--01, .main:is(body.material *) .body .section--01, .main:is(body.flexible *) .body .section--01, .main:is(body.reform *) .body .section--01 {
  margin: 1.4rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section--01, .main:is(body.technique *) .body .section--01, .main:is(body.material *) .body .section--01, .main:is(body.flexible *) .body .section--01, .main:is(body.reform *) .body .section--01 {
    margin: 0.9rem 0.05rem 0;
  }
}
.main:is(body.comfortable *) .body .section--02 .wrap, .main:is(body.comfortable *) .body .section--04 .wrap, .main:is(body.comfortable *) .body .section--06 .wrap, .main:is(body.technique *) .body .section--02 .wrap, .main:is(body.technique *) .body .section--04 .wrap, .main:is(body.technique *) .body .section--06 .wrap, .main:is(body.material *) .body .section--02 .wrap, .main:is(body.material *) .body .section--04 .wrap, .main:is(body.material *) .body .section--06 .wrap, .main:is(body.flexible *) .body .section--02 .wrap, .main:is(body.flexible *) .body .section--04 .wrap, .main:is(body.flexible *) .body .section--06 .wrap, .main:is(body.reform *) .body .section--02 .wrap, .main:is(body.reform *) .body .section--04 .wrap, .main:is(body.reform *) .body .section--06 .wrap {
  flex-direction: row-reverse;
}
.main:is(body.comfortable *) .body .section--08 {
  margin: 2.12rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section--08 {
    margin: 0.94rem 0 0;
  }
}
.main:is(body.comfortable *) .body .section--08 .wrap {
  display: block;
}
.main:is(body.comfortable *) .body .section--08 .title {
  font-size: 0.32rem;
  font-weight: 500;
  line-height: 0.46rem;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section--08 .title {
    font-size: 0.28rem;
    line-height: 1.4;
  }
}
.main:is(body.comfortable *) .body .section--08 .image {
  width: 11.02rem;
  margin: 0.54rem auto 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section--08 .image {
    width: auto;
    margin: 0.27rem -0.15rem 0;
  }
}
.main:is(body.comfortable *) .body .section--08 .text {
  width: auto;
  margin: 0.7rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section--08 .text {
    margin: 0.36rem 0.05rem 0;
  }
}
.main:is(body.comfortable *) .body .section--08 .text p {
  font-size: 0.16rem;
  line-height: 0.35rem;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.comfortable *) .body .section--08 .text p {
    line-height: 0.28rem;
    text-align: left;
  }
}
.main:is(body.technique *) .body .btn--more {
  margin: 1.4rem auto 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.technique *) .body .btn--more {
    margin: 0.96rem auto 0;
  }
}
.main:is(body.material *) .body .conclusion {
  margin: 0.9rem 0 0;
  font-size: 0.24rem;
  line-height: 1.7;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.material *) .body .conclusion {
    font-size: 0.2rem;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .pageHeader .breadCrumb {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}
.main:is(body.reform *) .body .conclusion {
  margin: 1rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .body .conclusion {
    margin: 0.65rem 0.05rem 0;
  }
}
.main:is(body.reform *) .body .conclusion .inner {
  border-top: 0.01rem solid #999;
  padding: 0.5rem 0 0.6rem;
  border-bottom: 0.01rem solid #999;
  font-weight: 400;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .body .conclusion .inner {
    padding: 0.4rem 0;
  }
}
.main:is(body.reform *) .body .conclusion .catch {
  font-size: 0.2rem;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .body .conclusion .catch {
    font-size: 0.18rem;
  }
}
.main:is(body.reform *) .body .conclusion p {
  max-width: 9rem;
  margin: 0.2rem auto 0;
  font-size: 0.15rem;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .body .conclusion p {
    font-size: 0.14rem;
  }
}
.main:is(body.reform *) .body .works {
  margin: 1.72rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .body .works {
    margin: 0.65rem 0.05rem 0;
  }
}
.main:is(body.reform *) .body .works .wrap {
  display: block;
}
.main:is(body.reform *) .body .works .title {
  font-size: 0.32rem;
  font-weight: 400;
  line-height: 1.4375;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .body .works .title {
    font-size: 0.22rem;
    line-height: 1.6;
  }
}
.main:is(body.reform *) .body .works .list {
  display: flex;
  gap: 0.6rem;
  max-width: 10.2rem;
  margin: 0.68rem auto 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .body .works .list {
    flex-direction: column;
    gap: 0.32rem;
    margin: 0.4rem 0 0;
  }
}
.main:is(body.reform *) .body .works .list a {
  display: block;
  width: 4.8rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .body .works .list a {
    width: auto;
  }
}
.main:is(body.reform *) .body .works .list .image {
  width: 100%;
}
.main:is(body.reform *) .body .works .list .image img {
  aspect-ratio: 48/32;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.reform *) .body .works .list .title {
  margin: 0.2rem 0 0;
  font-size: 0.2rem;
  font-weight: 400;
  line-height: 1;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.main:is(body.reform *) .body .works .list .data {
  margin: 0.06rem 0 0;
  font-size: 0.14rem;
  line-height: 0.2rem;
}
.main:is(body.reform *) .body .works .list .data span:nth-child(n+2)::before {
  content: "/";
  margin: 0 0.5em;
}
.main:is(body.reform *) .body .works .btn--more {
  margin: 1rem auto 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .body .works .btn--more {
    margin: 0.4rem auto 0;
  }
}
.main:is(body.reform *) .append {
  padding: 0;
}
.main:is(body.reform *) .append .repair {
  padding: 1.76rem 0 1.24rem;
  background: url(../imgs/reform/bg-contact.jpg) 50% 0/cover no-repeat;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .append .repair {
    padding: 0.6rem 0;
  }
}
.main:is(body.reform *) .append .repair .text--01 {
  font-size: 0.3rem;
  font-weight: 600;
  line-height: 1.1;
}
@media screen and (max-width: 780px) {
  .main:is(body.reform *) .append .repair .text--01 {
    font-size: 0.24rem;
    line-height: 1.4;
  }
}
.main:is(body.reform *) .append .repair .text--02 {
  margin: 0.36rem 0 0;
  line-height: 2;
}
.main:is(body.reform *) .append .repair .btn--more {
  margin: 0.36rem auto 0;
}
.main:is(body.performance *) .body {
  padding-bottom: 2.08rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body {
    padding-bottom: 0.96rem;
  }
}
.main:is(body.performance *) .body .lead {
  margin: 0.5rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .lead {
    margin: 0.36rem 0.05rem 0;
  }
}
.main:is(body.performance *) .body .lead .catch {
  font-size: 0.28rem;
  line-height: 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .lead .catch {
    font-size: 0.24rem;
    line-height: 0.38rem;
  }
}
.main:is(body.performance *) .body .lead p {
  margin: 0.3rem 0 0;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .lead p {
    margin: 0.3rem 0 0;
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.performance *) .body .lead .sNav {
  display: flex;
  justify-content: center;
  gap: 0.2rem;
  margin: 1.2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .lead .sNav {
    justify-content: space-between;
    gap: 0;
    margin: 0.7rem -0.05rem 0;
  }
}
.main:is(body.performance *) .body .lead .sNav li {
  width: 3.2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .lead .sNav li {
    width: 1.15rem;
  }
}
.main:is(body.performance *) .body .lead .sNav a {
  display: grid;
  place-items: center start;
  height: 0.7rem;
  padding-left: 0.24rem;
  border-radius: 0.05rem;
  position: relative;
  font-weight: 600;
  box-shadow: inset 0 0 0 0.01rem #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .lead .sNav a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.07rem;
    height: auto;
    padding: 0.1rem 0;
  }
}
.main:is(body.performance *) .body .lead .sNav a::after {
  content: "";
  display: block;
  width: 0.3rem;
  aspect-ratio: 1;
  position: absolute;
  top: calc(50% - 0.15rem);
  right: 0.2rem;
  background: currentColor url(../imgs/arw01_w.svg) center/0.12rem auto no-repeat;
  border-radius: 50%;
  rotate: 90deg;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .lead .sNav a::after {
    width: 0.2rem;
    position: static;
  }
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.performance *) .body .lead .sNav a::after {
    transition: translate 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.performance *) .body .lead .sNav a:hover::after {
    translate: 0 0.1rem 0;
  }
}
.main:is(body.performance *) .body .section {
  margin: 1.8rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .section {
    margin: 0.65rem 0.05rem 0;
  }
}
.main:is(body.performance *) .body .section .headline {
  background: linear-gradient(#999, #999) 0 100%/0.36rem 0.01rem no-repeat;
}
.main:is(body.performance *) .body .section .headline .title {
  font-size: 0.28rem;
  font-weight: 500;
  line-height: 2.4;
}
.main:is(body.performance *) .body .section .headline .catch {
  padding: 0 0 0.24rem;
  font-size: 0.18rem;
  line-height: 1;
}
.main:is(body.performance *) .body .section .item {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .section .item {
    display: block;
  }
}
.main:is(body.performance *) .body .section .item .image {
  width: 5.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .section .item .image {
    width: auto;
  }
}
.main:is(body.performance *) .body .section .item .text {
  width: 5.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .section .item .text {
    width: auto;
    margin: 0.2rem 0 0;
  }
}
.main:is(body.performance *) .body .section .item .text .legend {
  font-size: 0.22rem;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .section .item .text .legend {
    line-height: 1.6;
  }
}
.main:is(body.performance *) .body .section .item .text p,
.main:is(body.performance *) .body .section .item .text dl {
  margin: 0.2rem 0 0;
  font-size: 0.15rem;
  line-height: 1.6;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .section .item .text p,
.main:is(body.performance *) .body .section .item .text dl {
    margin: 0.15rem 0 0;
  }
}
.main:is(body.performance *) .body .section .item .text dl dt::before {
  content: "・";
}
.main:is(body.performance *) .body .section .item .text dl dd {
  text-indent: 1em;
}
.main:is(body.performance *) .body .section .item .text .note {
  margin: 0.2rem 0 0;
  color: #666;
  font-size: 0.12rem;
  line-height: 0.17rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .section .item .text .note {
    margin: 0.15rem 0 0;
  }
}
.main:is(body.performance *) .body .section--01 {
  margin: 1.2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .body .section--01 {
    margin: 0.9rem 0.05rem 0;
  }
}
.main:is(body.performance *) .body .section--01 .summary {
  margin: 0.35rem 0 0;
  font-weight: 400;
  line-height: 2;
}
.main:is(body.performance *) .body .section--01 .item {
  margin: 0.72rem 0 0;
}
.main:is(body.performance *) .body .section--02 .primary {
  display: flex;
  flex-direction: column;
  gap: 0.56rem;
  margin: 0.5rem 0 0;
}
.main:is(body.performance *) .body .section--02 .secondary {
  display: flex;
  flex-wrap: wrap;
  gap: 0.58rem 0.4rem;
  margin: 1rem 0 0;
}
.main:is(body.performance *) .body .section--02 .secondary .item {
  display: block;
  width: 3.6rem;
}
.main:is(body.performance *) .body .section--02 .secondary .item .image {
  width: auto;
}
.main:is(body.performance *) .body .section--02 .secondary .item .text {
  width: auto;
  margin: 0.2rem 0 0;
}
.main:is(body.performance *) .body .section--02 .secondary .item .text .legend {
  text-align: center;
  line-height: 1.6;
}
.main:is(body.performance *) .body .section--02 .secondary .item .text .legend .line--01 {
  font-size: 0.16rem;
}
.main:is(body.performance *) .body .section--02 .secondary .item .text .legend .line--01::before, .main:is(body.performance *) .body .section--02 .secondary .item .text .legend .line--01::after {
  content: "│";
}
.main:is(body.performance *) .body .section--02 .secondary .item .text .legend .line--02 {
  font-size: 0.2rem;
}
.main:is(body.performance *) .body .section--02 .secondary .item .text p {
  margin: 0.12rem 0 0;
}
.main:is(body.performance *) .body .section--02 .conclusion {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin: 1.06rem 0 0;
  border-top: 0.01rem solid #999;
  border-bottom: 0.01rem solid #999;
  padding: 0.3rem 0;
}
.main:is(body.performance *) .body .section--02 .conclusion .legend {
  font-size: 0.2rem;
  font-weight: 400;
}
.main:is(body.performance *) .body .section--02 .conclusion p {
  font-size: 0.15rem;
  font-weight: 400;
  line-height: 1.8;
}
.main:is(body.performance *) .body .section--03 .list {
  display: flex;
  flex-direction: column;
  gap: 0.52rem;
  margin: 0.45rem 0 0;
}
.main:is(body.performance *) .body .section--03 .btn {
  margin: 0.72rem auto 0;
}
.main:is(body.performance *) .append .section.seminar {
  margin: 2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar {
    margin: 1rem 0 0;
    overflow: hidden;
  }
}
.main:is(body.performance *) .append .section.seminar .prepend {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 7.8rem;
  gap: 0.3rem 0;
  border-top: 0.01rem solid #6E6E6E;
  padding: 0.7rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .prepend {
    display: block;
    padding: 0.3rem 0 0;
  }
}
.main:is(body.performance *) .append .section.seminar .prepend .en {
  grid-row: 1/2;
  grid-column: 1/2;
  display: flex;
  align-items: center;
  gap: 0.05rem;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .prepend .en {
    font-size: 0.11rem;
    font-weight: 600;
    line-height: 150%;
  }
}
.main:is(body.performance *) .append .section.seminar .prepend .en::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 50%;
}
.main:is(body.performance *) .append .section.seminar .prepend .title {
  grid-row: 2/3;
  grid-column: 1/2;
  align-self: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .prepend .title {
    margin: 0.2rem 0 0;
  }
}
.main:is(body.performance *) .append .section.seminar .prepend .title .ja {
  display: block;
  font-size: 0.36rem;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .prepend .title .ja {
    font-size: 0.28rem;
    line-height: 140%;
  }
}
.main:is(body.performance *) .append .section.seminar .prepend .title .ja.small {
  font-size: 0.18rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .prepend .title .ja.small {
    font-size: 0.16rem;
  }
}
.main:is(body.performance *) .append .section.seminar .prepend .text {
  grid-row: 2/3;
  grid-column: 2/3;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .prepend .text {
    margin: 0.3rem 0 0;
  }
}
.main:is(body.performance *) .append .section.seminar .body {
  margin: 0.7rem 0 2.34rem;
  padding: 0;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .body {
    margin: 0.4rem 0 0.86rem;
  }
}
.main:is(body.performance *) .append .section.seminar .body .slider {
  margin: 0 -0.2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .body .slider {
    width: 3.35rem;
    margin: 0 auto;
    overflow: visible;
  }
}
.main:is(body.performance *) .append .section.seminar .body .slider .slide {
  box-sizing: border-box;
  width: 4.8rem;
  padding: 0 0.2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .body .slider .slide {
    width: 3.35rem;
    padding: 0 0.075rem;
  }
}
.main:is(body.performance *) .append .section.seminar .body .slider .slide .image img {
  width: 100%;
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.performance *) .append .section.seminar .body .slider .slide .text {
  display: flex;
  align-self: center;
  margin: 0.18rem 0 0;
  font-size: 0.18rem;
  font-style: normal;
  font-weight: 500;
  line-height: 0.26rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .body .slider .slide .text {
    margin: 0.1rem 0 0;
    font-size: 0.15rem;
  }
}
.main:is(body.performance *) .append .section.seminar .body .slider .slide .text .num {
  font-size: 0.14rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .body .slider .slide .text .num {
    font-size: 0.12rem;
  }
}
.main:is(body.performance *) .append .section.seminar .body .swiper-button-prev,
.main:is(body.performance *) .append .section.seminar .body .swiper-button-next {
  width: 0.26rem;
  height: 0.26rem;
  margin: 0;
  top: 1.12rem;
  border: none;
  background: transparent url(../imgs/arw03.svg) 0 50%/contain no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.performance *) .append .section.seminar .body .swiper-button-prev,
.main:is(body.performance *) .append .section.seminar .body .swiper-button-next {
    display: none;
  }
}
.main:is(body.performance *) .append .section.seminar .body .swiper-button-prev::after,
.main:is(body.performance *) .append .section.seminar .body .swiper-button-next::after {
  content: none;
}
.main:is(body.performance *) .append .section.seminar .body .swiper-button-prev {
  left: -0.5rem;
  scale: -1 1;
}
.main:is(body.performance *) .append .section.seminar .body .swiper-button-next {
  right: -0.5rem;
}
.main:is(body.company *) {
  background: url(../imgs/bg-lead.png) 0 4.8rem/100% 14.21rem no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) {
    background: url(../imgs/bg-lead_sp.png) 0 2.1rem/100% auto no-repeat;
  }
}
.main:is(body.company *) .body {
  padding-bottom: 0.97rem;
  background: url(../imgs/company/bg.png) 0 100%/100% 12.45rem no-repeat;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .body {
    padding-bottom: 0.8rem;
    background: none;
  }
}
.main:is(body.company *) .lead .catch {
  font-size: 0.24rem;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .lead .catch {
    font-size: 0.18rem;
  }
}
.main:is(body.company *) .lead .sNav {
  display: flex;
  justify-content: space-between;
  margin: 0.74rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .lead .sNav {
    margin: 0.3rem 0 0;
  }
}
.main:is(body.company *) .lead .sNav li {
  width: 3.2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .lead .sNav li {
    width: 1.15rem;
  }
}
.main:is(body.company *) .lead .sNav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 0.7rem;
  padding: 0 0.2rem 0 0.25rem;
  box-shadow: inset 0 0 0 0.01rem #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .lead .sNav a {
    flex-direction: column;
    gap: 0.07rem;
    height: auto;
    padding: 0.1rem 0;
    line-height: 0.2rem;
    border-radius: 0.05rem;
  }
}
.main:is(body.company *) .lead .sNav a::after {
  content: "";
  display: block;
  width: 0.3rem;
  aspect-ratio: 1;
  background: currentColor url(../imgs/arw01_w.svg) center/0.12rem auto no-repeat;
  border-radius: 50%;
  rotate: 90deg;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .lead .sNav a::after {
    width: 0.2rem;
  }
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.company *) .lead .sNav a::after {
    transition: translate 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.company *) .lead .sNav a:hover::after {
    translate: 0 0.1rem 0;
  }
}
.main:is(body.company *) .section {
  margin: 2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section {
    margin: 0.8rem 0 0;
  }
}
.main:is(body.company *) .section .title {
  padding: 0 0 0.1rem;
  background: linear-gradient(#999, #999) 0 100%/0.36rem 0.01rem no-repeat;
  font-size: 0.28rem;
  font-weight: 500;
  line-height: 2.4;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section .title {
    font-size: 0.2rem;
  }
}
.main:is(body.company *) .section.message {
  margin: 1.2rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.message {
    margin: 0.8rem 0 0;
  }
}
.main:is(body.company *) .section.message .list {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  margin: 0.45rem 0 0;
  padding: 0 0.06rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.message .list {
    gap: 0.4rem;
    margin: 0.3rem 0 0;
    padding: 0;
  }
}
.main:is(body.company *) .section.message .list .item {
  display: grid;
  grid-template-columns: 2.1rem 1fr;
  gap: 0.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.message .list .item {
    display: block;
  }
}
.main:is(body.company *) .section.message .list .item .image {
  grid-column: 1/2;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.message .list .item .image {
    width: 2.1rem;
    margin: 0 auto;
  }
}
.main:is(body.company *) .section.message .list .item .text {
  grid-column: 2/3;
  border-top: 0.01rem solid #999;
  padding: 0.35rem 0.45rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.message .list .item .text {
    border-top: none;
    padding: 0.3rem 0 0;
  }
}
.main:is(body.company *) .section.message .list .item .text .signature {
  margin: 0.1rem 0 0;
}
.main:is(body.company *) .section.outline {
  container-type: inline-size;
}
.main:is(body.company *) .section.outline .wrap {
  display: grid;
  grid-template-rows: auto auto auto;
  grid-template-columns: 1fr 5rem;
  gap: 0 0.6rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.outline .wrap {
    display: block;
  }
}
.main:is(body.company *) .section.outline .title {
  grid-row: 1/2;
  grid-column: 1/2;
}
.main:is(body.company *) .section.outline .data {
  grid-row: 2/3;
  grid-column: 1/2;
  display: grid;
  grid-template-columns: 1rem 1fr;
  margin: 0.33rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.outline .data {
    margin: 0.3rem 0 0;
  }
}
.main:is(body.company *) .section.outline .data dt,
.main:is(body.company *) .section.outline .data dd {
  padding: 0.2rem 0;
  border-bottom: 0.01rem solid #999;
  font-size: 0.14rem;
  line-height: 0.2rem;
}
.main:is(body.company *) .section.outline .data dt {
  grid-column: 1/2;
  font-weight: 600;
}
.main:is(body.company *) .section.outline .data dd {
  grid-column: 2/3;
}
.main:is(body.company *) .section.outline .image {
  grid-row: 2/3;
  grid-column: 2/3;
  align-self: flex-start;
  display: grid;
  margin-top: 0.63rem;
  margin-right: max(-2.5rem, 5.5rem - 50cqw);
  aspect-ratio: 750/760;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.outline .image {
    margin: 0.3rem 0 0;
  }
}
.main:is(body.company *) .section.outline .image--01 {
  grid-area: 1/1;
  justify-self: flex-end;
  width: 66.6666666667%;
}
.main:is(body.company *) .section.outline .image--02 {
  grid-area: 1/1;
  align-self: flex-end;
  width: 48%;
}
.main:is(body.company *) .section.outline .map {
  grid-row: 3/4;
  grid-column: 1/3;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  width: 100%;
  max-width: 11rem;
  margin: 1.2rem auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.outline .map {
    margin: 0.3rem 0 0;
    gap: 0.2rem;
  }
}
.main:is(body.company *) .section.outline .map figure figcaption {
  line-height: 0.23rem;
  text-align: center;
}
.main:is(body.company *) .section.outline .map figure iframe {
  width: 100%;
  height: 4rem;
  margin: 0.17rem 0 0;
  border: none;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.outline .map figure iframe {
    height: 3rem;
  }
}
.main:is(body.company *) .section.staff .wrap {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.staff .wrap {
    display: block;
  }
}
.main:is(body.company *) .section.staff .list {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  width: 7.7rem;
  padding: 0.1rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.staff .list {
    width: auto;
    margin: 0.3rem 0 0;
    padding: 0;
    gap: 0.4rem;
  }
}
.main:is(body.company *) .section.staff .list .group {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 0.7rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.staff .list .group {
    gap: 0.3rem 0.2rem;
  }
}
.main:is(body.company *) .section.staff .list .group .job {
  width: 100%;
  border-bottom: 0.01rem solid #999;
  padding: 0.08rem 0;
  line-height: 1.8;
}
.main:is(body.company *) .section.staff .list .group .job + .image {
  margin: 0.4rem 0 0;
}
.main:is(body.company *) .section.staff .list .group .item {
  width: 2.1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .section.staff .list .group .item {
    width: calc(50% - 0.1rem);
  }
}
.main:is(body.company *) .section.staff .list .group .item .text {
  margin: 0.1rem 0 0;
  line-height: 1.7;
}
.main:is(body.company *) .section.staff .list .group .item .text p {
  margin: 0.05rem 0 0;
  font-size: 0.13rem;
}
.main:is(body.company *) .gallery {
  container-type: inline-size;
  margin: 2.35rem 0 0;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .gallery {
    margin: 1rem 0 0;
  }
}
.main:is(body.company *) .gallery::before {
  content: "";
  display: block;
  width: calc(59cqw + 6rem);
  height: 5.6rem;
  position: absolute;
  top: 1.5rem;
  left: 0;
  background: #F2ECE4;
  mix-blend-mode: multiply;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .gallery::before {
    content: none;
  }
}
.main:is(body.company *) .gallery .inner {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 14rem;
  margin: 0 auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .gallery .inner {
    display: block;
  }
}
.main:is(body.company *) .gallery .inner .image--01 {
  width: 6.9rem;
  align-self: flex-start;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .gallery .inner .image--01 {
    width: auto;
  }
}
.main:is(body.company *) .gallery .inner .image--02 {
  display: grid;
  width: 6.4rem;
  margin: 2.9rem 0 0;
  aspect-ratio: 640/473;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .gallery .inner .image--02 {
    width: 3.5rem;
    margin: 0.2rem auto 0;
  }
}
.main:is(body.company *) .gallery .inner .image--02 img {
  grid-area: 1/1;
}
.main:is(body.company *) .gallery .inner .image--02 img:first-child {
  align-self: flex-end;
  width: 32.8125%;
}
.main:is(body.company *) .gallery .inner .image--02 img:last-child {
  justify-self: flex-end;
  width: 70.3125%;
}
.main:is(body.company *) .append {
  padding-top: 1.3rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.company *) .append {
    padding-top: 0.5rem;
  }
}
.main:is(body.company *) .append .contact {
  margin: 0;
}
.main:is(body.privacy-policy *) .term {
  padding: 0.8rem 0 1.88rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.privacy-policy *) .term {
    padding: 0.24rem 0 0.96rem;
  }
}
.main:is(body.privacy-policy *) .term p {
  font-weight: 400;
  line-height: 1.5;
}
.main:is(body.privacy-policy *) .term .privacyPolicy .title {
  margin: 0.45rem 0 0;
  font-size: 0.18rem;
  font-weight: 600;
}
@media screen and (max-width: 780px) {
  .main:is(body.privacy-policy *) .term .privacyPolicy .title {
    margin: 0.32rem 0 0;
    font-size: 0.16rem;
  }
}
.main:is(body.privacy-policy *) .term .privacyPolicy .title + p {
  margin: 0.1rem 0 0;
}
.main:is(body.privacy-policy *) .term .privacyPolicy .signature {
  margin: 0.45rem 0 0;
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (max-width: 780px) {
  .main:is(body.privacy-policy *) .term .privacyPolicy .signature {
    margin: 0.32rem 0 0;
  }
}
.main:is(body.privacy-policy *) .term .privacyPolicy .contact {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin: 0.45rem 0 0;
  border-top: 0.01rem solid #999;
  border-bottom: 0.01rem solid #999;
  padding: 0.3rem 0;
  font-size: 0.15rem;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.privacy-policy *) .term .privacyPolicy .contact {
    flex-direction: column;
    gap: 0.2rem;
    margin: 0.32rem 0 0;
    font-size: 0.14rem;
  }
}
.main:is(body.privacy-policy *) .term .misc .title {
  margin: 1rem 0 0;
  font-size: 0.22rem;
  font-weight: 600;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.privacy-policy *) .term .misc .title {
    margin: 0.4rem 0 0;
    font-size: 0.2rem;
  }
}
.main:is(body.privacy-policy *) .term .misc .title + p {
  margin: 0.2rem 0 0;
}
.main:is(body.contact *) .lead, .main:is(body.request *) .lead, .main:is(body.counseling *) .lead, .main:is(body.repair-request *) .lead, .main:is(body.single-event *) .lead {
  margin: 0.4rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) .lead, .main:is(body.request *) .lead, .main:is(body.counseling *) .lead, .main:is(body.repair-request *) .lead, .main:is(body.single-event *) .lead {
    margin: 0.28rem 0 0;
  }
}
.main:is(body.contact *) .lead .catch, .main:is(body.request *) .lead .catch, .main:is(body.counseling *) .lead .catch, .main:is(body.repair-request *) .lead .catch, .main:is(body.single-event *) .lead .catch {
  font-size: 0.2rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) .lead .catch, .main:is(body.request *) .lead .catch, .main:is(body.counseling *) .lead .catch, .main:is(body.repair-request *) .lead .catch, .main:is(body.single-event *) .lead .catch {
    font-size: 0.18rem;
    font-weight: 500;
  }
}
.main:is(body.contact *) section.tel, .main:is(body.request *) section.tel, .main:is(body.counseling *) section.tel, .main:is(body.repair-request *) section.tel, .main:is(body.single-event *) section.tel {
  margin: 0.8rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.tel, .main:is(body.request *) section.tel, .main:is(body.counseling *) section.tel, .main:is(body.repair-request *) section.tel, .main:is(body.single-event *) section.tel {
    margin: 0.7rem 0 0;
  }
}
.main:is(body.contact *) section.tel a, .main:is(body.request *) section.tel a, .main:is(body.counseling *) section.tel a, .main:is(body.repair-request *) section.tel a, .main:is(body.single-event *) section.tel a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.6rem;
  box-sizing: border-box;
  height: 1.3rem;
  border-top: 0.01rem solid #999;
  border-bottom: 0.01rem solid #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.tel a, .main:is(body.request *) section.tel a, .main:is(body.counseling *) section.tel a, .main:is(body.repair-request *) section.tel a, .main:is(body.single-event *) section.tel a {
    flex-direction: column;
    gap: 0.15rem;
    height: 1.6rem;
  }
}
.main:is(body.contact *) section.tel .title, .main:is(body.request *) section.tel .title, .main:is(body.counseling *) section.tel .title, .main:is(body.repair-request *) section.tel .title, .main:is(body.single-event *) section.tel .title {
  font-size: 0.2rem;
  font-weight: inherit;
  line-height: 0.24rem;
}
.main:is(body.contact *) section.tel .num, .main:is(body.request *) section.tel .num, .main:is(body.counseling *) section.tel .num, .main:is(body.repair-request *) section.tel .num, .main:is(body.single-event *) section.tel .num {
  font-size: 0.3rem;
  line-height: 1;
}
.main:is(body.contact *) section.tel .num:has(ruby), .main:is(body.request *) section.tel .num:has(ruby), .main:is(body.counseling *) section.tel .num:has(ruby), .main:is(body.repair-request *) section.tel .num:has(ruby), .main:is(body.single-event *) section.tel .num:has(ruby) {
  translate: 0 -0.1rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.tel .num:has(ruby), .main:is(body.request *) section.tel .num:has(ruby), .main:is(body.counseling *) section.tel .num:has(ruby), .main:is(body.repair-request *) section.tel .num:has(ruby), .main:is(body.single-event *) section.tel .num:has(ruby) {
    translate: 0;
  }
}
.main:is(body.contact *) section.tel .note, .main:is(body.request *) section.tel .note, .main:is(body.counseling *) section.tel .note, .main:is(body.repair-request *) section.tel .note, .main:is(body.single-event *) section.tel .note {
  font-size: 0.16rem;
  line-height: 0.24rem;
}
.main:is(body.contact *) section.tel .note .small, .main:is(body.request *) section.tel .note .small, .main:is(body.counseling *) section.tel .note .small, .main:is(body.repair-request *) section.tel .note .small, .main:is(body.single-event *) section.tel .note .small {
  font-size: 0.14rem;
  line-height: 1.5;
}
.main:is(body.contact *) section.form, .main:is(body.request *) section.form, .main:is(body.counseling *) section.form, .main:is(body.repair-request *) section.form, .main:is(body.single-event *) section.form {
  margin: 1.1rem 0 1.8rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form, .main:is(body.request *) section.form, .main:is(body.counseling *) section.form, .main:is(body.repair-request *) section.form, .main:is(body.single-event *) section.form {
    margin: 0.8rem 0 1.2rem;
  }
}
.main:is(body.contact *) section.form .title, .main:is(body.request *) section.form .title, .main:is(body.counseling *) section.form .title, .main:is(body.repair-request *) section.form .title, .main:is(body.single-event *) section.form .title {
  font-size: 0.28rem;
  font-weight: inherit;
  letter-spacing: 0.12em;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .title, .main:is(body.request *) section.form .title, .main:is(body.counseling *) section.form .title, .main:is(body.repair-request *) section.form .title, .main:is(body.single-event *) section.form .title {
    font-size: 0.24rem;
    letter-spacing: 0;
    line-height: 1.4;
  }
}
.main:is(body.contact *) section.form p, .main:is(body.request *) section.form p, .main:is(body.counseling *) section.form p, .main:is(body.repair-request *) section.form p, .main:is(body.single-event *) section.form p {
  margin: 0.3rem 0 0;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form p, .main:is(body.request *) section.form p, .main:is(body.counseling *) section.form p, .main:is(body.repair-request *) section.form p, .main:is(body.single-event *) section.form p {
    margin: 0.22rem 0 0;
    font-size: 0.16rem;
    line-height: 2;
    text-align: left;
  }
}
.main:is(body.contact *) section.form p .required, .main:is(body.request *) section.form p .required, .main:is(body.counseling *) section.form p .required, .main:is(body.repair-request *) section.form p .required, .main:is(body.single-event *) section.form p .required {
  display: inline-block;
  width: 0.5rem;
  margin-right: 0.5em;
  background: #2F406E;
  border-radius: 0.1rem;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.12rem;
  line-height: 0.2rem;
  text-align: center;
}
.main:is(body.contact *) section.form a, .main:is(body.request *) section.form a, .main:is(body.counseling *) section.form a, .main:is(body.repair-request *) section.form a, .main:is(body.single-event *) section.form a {
  text-decoration: underline;
}
.main:is(body.contact *) section.form .list, .main:is(body.request *) section.form .list, .main:is(body.counseling *) section.form .list, .main:is(body.repair-request *) section.form .list, .main:is(body.single-event *) section.form .list {
  display: grid;
  grid-template-columns: 1fr 6.7rem;
  gap: 0.3rem 0;
  margin: 0.66rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list, .main:is(body.request *) section.form .list, .main:is(body.counseling *) section.form .list, .main:is(body.repair-request *) section.form .list, .main:is(body.single-event *) section.form .list {
    display: block;
    margin: 0.24rem 0 0;
  }
}
.main:is(body.contact *) section.form .list dt, .main:is(body.request *) section.form .list dt, .main:is(body.counseling *) section.form .list dt, .main:is(body.repair-request *) section.form .list dt, .main:is(body.single-event *) section.form .list dt {
  grid-column: 1/2;
  align-self: center;
  font-weight: 600;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list dt, .main:is(body.request *) section.form .list dt, .main:is(body.counseling *) section.form .list dt, .main:is(body.repair-request *) section.form .list dt, .main:is(body.single-event *) section.form .list dt {
    display: flex;
    align-items: center;
    font-size: 0.16rem;
    height: 0.26rem;
  }
  .main:is(body.contact *) section.form .list dt:nth-child(n+2), .main:is(body.request *) section.form .list dt:nth-child(n+2), .main:is(body.counseling *) section.form .list dt:nth-child(n+2), .main:is(body.repair-request *) section.form .list dt:nth-child(n+2), .main:is(body.single-event *) section.form .list dt:nth-child(n+2) {
    margin: 0.3rem 0 0;
  }
}
.main:is(body.contact *) section.form .list dt .small, .main:is(body.request *) section.form .list dt .small, .main:is(body.counseling *) section.form .list dt .small, .main:is(body.repair-request *) section.form .list dt .small, .main:is(body.single-event *) section.form .list dt .small {
  font-size: 0.14rem;
}
.main:is(body.contact *) section.form .list dt.required, .main:is(body.request *) section.form .list dt.required, .main:is(body.counseling *) section.form .list dt.required, .main:is(body.repair-request *) section.form .list dt.required, .main:is(body.single-event *) section.form .list dt.required {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list dt.required, .main:is(body.request *) section.form .list dt.required, .main:is(body.counseling *) section.form .list dt.required, .main:is(body.repair-request *) section.form .list dt.required, .main:is(body.single-event *) section.form .list dt.required {
    height: 0.5rem;
  }
}
.main:is(body.contact *) section.form .list dt.required::after, .main:is(body.request *) section.form .list dt.required::after, .main:is(body.counseling *) section.form .list dt.required::after, .main:is(body.repair-request *) section.form .list dt.required::after, .main:is(body.single-event *) section.form .list dt.required::after {
  content: "必須";
  display: block;
  width: 0.5rem;
  margin-left: 0.5em;
  background: #2F406E;
  border-radius: 0.1rem;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.12rem;
  line-height: 0.2rem;
  text-align: center;
}
.main:is(body.contact *) section.form .list dt.file, .main:is(body.request *) section.form .list dt.file, .main:is(body.counseling *) section.form .list dt.file, .main:is(body.repair-request *) section.form .list dt.file, .main:is(body.single-event *) section.form .list dt.file {
  align-self: flex-start;
}
.main:is(body.contact *) section.form .list dd, .main:is(body.request *) section.form .list dd, .main:is(body.counseling *) section.form .list dd, .main:is(body.repair-request *) section.form .list dd, .main:is(body.single-event *) section.form .list dd {
  grid-column: 2/3;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list dd, .main:is(body.request *) section.form .list dd, .main:is(body.counseling *) section.form .list dd, .main:is(body.repair-request *) section.form .list dd, .main:is(body.single-event *) section.form .list dd {
    margin: 0.05rem 0 0;
  }
}
.main:is(body.contact *) section.form .list .radio_horizontal .wpcf7-form-control,
.main:is(body.contact *) section.form .list .checkbox_horizontal .wpcf7-form-control, .main:is(body.request *) section.form .list .radio_horizontal .wpcf7-form-control,
.main:is(body.request *) section.form .list .checkbox_horizontal .wpcf7-form-control, .main:is(body.counseling *) section.form .list .radio_horizontal .wpcf7-form-control,
.main:is(body.counseling *) section.form .list .checkbox_horizontal .wpcf7-form-control, .main:is(body.repair-request *) section.form .list .radio_horizontal .wpcf7-form-control,
.main:is(body.repair-request *) section.form .list .checkbox_horizontal .wpcf7-form-control, .main:is(body.single-event *) section.form .list .radio_horizontal .wpcf7-form-control,
.main:is(body.single-event *) section.form .list .checkbox_horizontal .wpcf7-form-control {
  display: flex;
  flex-wrap: wrap;
  gap: 0.18rem 0.3rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-weight: 400;
  line-height: 0.26rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list .radio_horizontal .wpcf7-form-control,
.main:is(body.contact *) section.form .list .checkbox_horizontal .wpcf7-form-control, .main:is(body.request *) section.form .list .radio_horizontal .wpcf7-form-control,
.main:is(body.request *) section.form .list .checkbox_horizontal .wpcf7-form-control, .main:is(body.counseling *) section.form .list .radio_horizontal .wpcf7-form-control,
.main:is(body.counseling *) section.form .list .checkbox_horizontal .wpcf7-form-control, .main:is(body.repair-request *) section.form .list .radio_horizontal .wpcf7-form-control,
.main:is(body.repair-request *) section.form .list .checkbox_horizontal .wpcf7-form-control, .main:is(body.single-event *) section.form .list .radio_horizontal .wpcf7-form-control,
.main:is(body.single-event *) section.form .list .checkbox_horizontal .wpcf7-form-control {
    flex-direction: column;
    gap: 0.15rem;
    padding: 0.1rem 0 0;
    font-size: 0.16rem;
  }
}
.main:is(body.contact *) section.form .list .radio_horizontal label,
.main:is(body.contact *) section.form .list .checkbox_horizontal label, .main:is(body.request *) section.form .list .radio_horizontal label,
.main:is(body.request *) section.form .list .checkbox_horizontal label, .main:is(body.counseling *) section.form .list .radio_horizontal label,
.main:is(body.counseling *) section.form .list .checkbox_horizontal label, .main:is(body.repair-request *) section.form .list .radio_horizontal label,
.main:is(body.repair-request *) section.form .list .checkbox_horizontal label, .main:is(body.single-event *) section.form .list .radio_horizontal label,
.main:is(body.single-event *) section.form .list .checkbox_horizontal label {
  display: flex;
  gap: 0.1rem;
  position: relative;
  cursor: pointer;
}
.main:is(body.contact *) section.form .list .radio_horizontal label input,
.main:is(body.contact *) section.form .list .checkbox_horizontal label input, .main:is(body.request *) section.form .list .radio_horizontal label input,
.main:is(body.request *) section.form .list .checkbox_horizontal label input, .main:is(body.counseling *) section.form .list .radio_horizontal label input,
.main:is(body.counseling *) section.form .list .checkbox_horizontal label input, .main:is(body.repair-request *) section.form .list .radio_horizontal label input,
.main:is(body.repair-request *) section.form .list .checkbox_horizontal label input, .main:is(body.single-event *) section.form .list .radio_horizontal label input,
.main:is(body.single-event *) section.form .list .checkbox_horizontal label input {
  position: absolute;
  top: 0;
  left: 0;
}
.main:is(body.contact *) section.form .list .radio_horizontal label::before,
.main:is(body.contact *) section.form .list .checkbox_horizontal label::before, .main:is(body.request *) section.form .list .radio_horizontal label::before,
.main:is(body.request *) section.form .list .checkbox_horizontal label::before, .main:is(body.counseling *) section.form .list .radio_horizontal label::before,
.main:is(body.counseling *) section.form .list .checkbox_horizontal label::before, .main:is(body.repair-request *) section.form .list .radio_horizontal label::before,
.main:is(body.repair-request *) section.form .list .checkbox_horizontal label::before, .main:is(body.single-event *) section.form .list .radio_horizontal label::before,
.main:is(body.single-event *) section.form .list .checkbox_horizontal label::before {
  content: "";
  display: block;
  box-sizing: border-box;
  width: 0.26rem;
  aspect-ratio: 1;
  grid-row: 1/2;
  grid-column: 1/2;
  background: #fff;
}
.main:is(body.contact *) section.form .list .radio_horizontal label::before, .main:is(body.request *) section.form .list .radio_horizontal label::before, .main:is(body.counseling *) section.form .list .radio_horizontal label::before, .main:is(body.repair-request *) section.form .list .radio_horizontal label::before, .main:is(body.single-event *) section.form .list .radio_horizontal label::before {
  border: 0.07rem solid #fff;
  border-radius: 50%;
}
.main:is(body.contact *) section.form .list .radio_horizontal label:has(input:checked)::before, .main:is(body.request *) section.form .list .radio_horizontal label:has(input:checked)::before, .main:is(body.counseling *) section.form .list .radio_horizontal label:has(input:checked)::before, .main:is(body.repair-request *) section.form .list .radio_horizontal label:has(input:checked)::before, .main:is(body.single-event *) section.form .list .radio_horizontal label:has(input:checked)::before {
  background: #2F406E;
}
.main:is(body.contact *) section.form .list .checkbox_horizontal label::before, .main:is(body.request *) section.form .list .checkbox_horizontal label::before, .main:is(body.counseling *) section.form .list .checkbox_horizontal label::before, .main:is(body.repair-request *) section.form .list .checkbox_horizontal label::before, .main:is(body.single-event *) section.form .list .checkbox_horizontal label::before {
  background-image: url(../imgs/check.svg);
  background-position: 0.26rem 50%;
  background-size: 0.13rem auto;
  background-repeat: no-repeat;
}
.main:is(body.contact *) section.form .list .checkbox_horizontal label:has(input:checked)::before, .main:is(body.request *) section.form .list .checkbox_horizontal label:has(input:checked)::before, .main:is(body.counseling *) section.form .list .checkbox_horizontal label:has(input:checked)::before, .main:is(body.repair-request *) section.form .list .checkbox_horizontal label:has(input:checked)::before, .main:is(body.single-event *) section.form .list .checkbox_horizontal label:has(input:checked)::before {
  background-position: 50% 50%;
}
.main:is(body.contact *) section.form .list .zip input[type=text], .main:is(body.request *) section.form .list .zip input[type=text], .main:is(body.counseling *) section.form .list .zip input[type=text], .main:is(body.repair-request *) section.form .list .zip input[type=text], .main:is(body.single-event *) section.form .list .zip input[type=text] {
  width: 3.25rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list .zip input[type=text], .main:is(body.request *) section.form .list .zip input[type=text], .main:is(body.counseling *) section.form .list .zip input[type=text], .main:is(body.repair-request *) section.form .list .zip input[type=text], .main:is(body.single-event *) section.form .list .zip input[type=text] {
    width: 100%;
  }
}
.main:is(body.contact *) section.form .list .date, .main:is(body.request *) section.form .list .date, .main:is(body.counseling *) section.form .list .date, .main:is(body.repair-request *) section.form .list .date, .main:is(body.single-event *) section.form .list .date {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list .date, .main:is(body.request *) section.form .list .date, .main:is(body.counseling *) section.form .list .date, .main:is(body.repair-request *) section.form .list .date, .main:is(body.single-event *) section.form .list .date {
    flex-direction: column;
    gap: 0.1rem;
  }
}
.main:is(body.contact *) section.form .list .date .wpcf7-form-control-wrap, .main:is(body.request *) section.form .list .date .wpcf7-form-control-wrap, .main:is(body.counseling *) section.form .list .date .wpcf7-form-control-wrap, .main:is(body.repair-request *) section.form .list .date .wpcf7-form-control-wrap, .main:is(body.single-event *) section.form .list .date .wpcf7-form-control-wrap {
  display: block;
  width: 3.3rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list .date .wpcf7-form-control-wrap, .main:is(body.request *) section.form .list .date .wpcf7-form-control-wrap, .main:is(body.counseling *) section.form .list .date .wpcf7-form-control-wrap, .main:is(body.repair-request *) section.form .list .date .wpcf7-form-control-wrap, .main:is(body.single-event *) section.form .list .date .wpcf7-form-control-wrap {
    width: 100%;
  }
}
.main:is(body.contact *) section.form .list .date input[type=text],
.main:is(body.contact *) section.form .list .date select, .main:is(body.request *) section.form .list .date input[type=text],
.main:is(body.request *) section.form .list .date select, .main:is(body.counseling *) section.form .list .date input[type=text],
.main:is(body.counseling *) section.form .list .date select, .main:is(body.repair-request *) section.form .list .date input[type=text],
.main:is(body.repair-request *) section.form .list .date select, .main:is(body.single-event *) section.form .list .date input[type=text],
.main:is(body.single-event *) section.form .list .date select {
  padding-left: 0.4rem;
  background-position: 0.1rem 50%, calc(100% - 0.22rem) 50%;
  background-size: 0.24rem auto, 0.08rem auto;
  background-repeat: no-repeat;
}
.main:is(body.contact *) section.form .list .date input[type=text], .main:is(body.request *) section.form .list .date input[type=text], .main:is(body.counseling *) section.form .list .date input[type=text], .main:is(body.repair-request *) section.form .list .date input[type=text], .main:is(body.single-event *) section.form .list .date input[type=text] {
  background-image: url(../imgs/ico-date.svg), url(../imgs/arw05.svg);
}
.main:is(body.contact *) section.form .list .date select, .main:is(body.request *) section.form .list .date select, .main:is(body.counseling *) section.form .list .date select, .main:is(body.repair-request *) section.form .list .date select, .main:is(body.single-event *) section.form .list .date select {
  background-image: url(../imgs/ico-time02.svg), url(../imgs/arw05.svg);
}
.main:is(body.contact *) section.form .list .date select:has(option:checked[value=""]), .main:is(body.request *) section.form .list .date select:has(option:checked[value=""]), .main:is(body.counseling *) section.form .list .date select:has(option:checked[value=""]), .main:is(body.repair-request *) section.form .list .date select:has(option:checked[value=""]), .main:is(body.single-event *) section.form .list .date select:has(option:checked[value=""]) {
  color: #ccc;
  font-size: 0.15rem;
  line-height: 1.6666666667;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list .date select:has(option:checked[value=""]), .main:is(body.request *) section.form .list .date select:has(option:checked[value=""]), .main:is(body.counseling *) section.form .list .date select:has(option:checked[value=""]), .main:is(body.repair-request *) section.form .list .date select:has(option:checked[value=""]), .main:is(body.single-event *) section.form .list .date select:has(option:checked[value=""]) {
    font-size: 15px;
  }
}
.main:is(body.contact *) section.form .list .date select option, .main:is(body.request *) section.form .list .date select option, .main:is(body.counseling *) section.form .list .date select option, .main:is(body.repair-request *) section.form .list .date select option, .main:is(body.single-event *) section.form .list .date select option {
  color: #2F406E;
  font-size: 0.16rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list .date select option, .main:is(body.request *) section.form .list .date select option, .main:is(body.counseling *) section.form .list .date select option, .main:is(body.repair-request *) section.form .list .date select option, .main:is(body.single-event *) section.form .list .date select option {
    font-size: 16px;
  }
}
.main:is(body.contact *) section.form .list .date select option[value=""], .main:is(body.request *) section.form .list .date select option[value=""], .main:is(body.counseling *) section.form .list .date select option[value=""], .main:is(body.repair-request *) section.form .list .date select option[value=""], .main:is(body.single-event *) section.form .list .date select option[value=""] {
  display: none;
}
.main:is(body.contact *) section.form .list dd.file, .main:is(body.request *) section.form .list dd.file, .main:is(body.counseling *) section.form .list dd.file, .main:is(body.repair-request *) section.form .list dd.file, .main:is(body.single-event *) section.form .list dd.file {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}
.main:is(body.contact *) section.form .list dd.file .note, .main:is(body.request *) section.form .list dd.file .note, .main:is(body.counseling *) section.form .list dd.file .note, .main:is(body.repair-request *) section.form .list dd.file .note, .main:is(body.single-event *) section.form .list dd.file .note {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.15rem;
  line-height: 0.3rem;
}
.main:is(body.contact *) section.form .list dd.file span, .main:is(body.request *) section.form .list dd.file span, .main:is(body.counseling *) section.form .list dd.file span, .main:is(body.repair-request *) section.form .list dd.file span, .main:is(body.single-event *) section.form .list dd.file span {
  display: flex;
  align-items: center;
  width: 3.25rem;
  height: 0.5rem;
  background: #fff;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list dd.file span, .main:is(body.request *) section.form .list dd.file span, .main:is(body.counseling *) section.form .list dd.file span, .main:is(body.repair-request *) section.form .list dd.file span, .main:is(body.single-event *) section.form .list dd.file span {
    width: 100%;
    height: 50px;
  }
}
.main:is(body.contact *) section.form .list dd.file input, .main:is(body.request *) section.form .list dd.file input, .main:is(body.counseling *) section.form .list dd.file input, .main:is(body.repair-request *) section.form .list dd.file input, .main:is(body.single-event *) section.form .list dd.file input {
  padding: 0.1rem;
}
.main:is(body.contact *) section.form .list dd.file input::-webkit-file-upload-button, .main:is(body.request *) section.form .list dd.file input::-webkit-file-upload-button, .main:is(body.counseling *) section.form .list dd.file input::-webkit-file-upload-button, .main:is(body.repair-request *) section.form .list dd.file input::-webkit-file-upload-button, .main:is(body.single-event *) section.form .list dd.file input::-webkit-file-upload-button {
  border: none;
  padding: 0;
  background: transparent;
  line-height: 1;
}
.main:is(body.contact *) section.form .list dd.file input::file-selector-button, .main:is(body.request *) section.form .list dd.file input::file-selector-button, .main:is(body.counseling *) section.form .list dd.file input::file-selector-button, .main:is(body.repair-request *) section.form .list dd.file input::file-selector-button, .main:is(body.single-event *) section.form .list dd.file input::file-selector-button {
  border: none;
  padding: 0;
  background: transparent;
  line-height: 1;
}
.main:is(body.contact *) section.form .list input[type=text],
.main:is(body.contact *) section.form .list input[type=tel],
.main:is(body.contact *) section.form .list input[type=email],
.main:is(body.contact *) section.form .list input[type=file],
.main:is(body.contact *) section.form .list select,
.main:is(body.contact *) section.form .list textarea, .main:is(body.request *) section.form .list input[type=text],
.main:is(body.request *) section.form .list input[type=tel],
.main:is(body.request *) section.form .list input[type=email],
.main:is(body.request *) section.form .list input[type=file],
.main:is(body.request *) section.form .list select,
.main:is(body.request *) section.form .list textarea, .main:is(body.counseling *) section.form .list input[type=text],
.main:is(body.counseling *) section.form .list input[type=tel],
.main:is(body.counseling *) section.form .list input[type=email],
.main:is(body.counseling *) section.form .list input[type=file],
.main:is(body.counseling *) section.form .list select,
.main:is(body.counseling *) section.form .list textarea, .main:is(body.repair-request *) section.form .list input[type=text],
.main:is(body.repair-request *) section.form .list input[type=tel],
.main:is(body.repair-request *) section.form .list input[type=email],
.main:is(body.repair-request *) section.form .list input[type=file],
.main:is(body.repair-request *) section.form .list select,
.main:is(body.repair-request *) section.form .list textarea, .main:is(body.single-event *) section.form .list input[type=text],
.main:is(body.single-event *) section.form .list input[type=tel],
.main:is(body.single-event *) section.form .list input[type=email],
.main:is(body.single-event *) section.form .list input[type=file],
.main:is(body.single-event *) section.form .list select,
.main:is(body.single-event *) section.form .list textarea {
  box-sizing: border-box;
  width: 100%;
  border: none;
  padding: 0.1rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  outline-color: #2F406E;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list input[type=text],
.main:is(body.contact *) section.form .list input[type=tel],
.main:is(body.contact *) section.form .list input[type=email],
.main:is(body.contact *) section.form .list input[type=file],
.main:is(body.contact *) section.form .list select,
.main:is(body.contact *) section.form .list textarea, .main:is(body.request *) section.form .list input[type=text],
.main:is(body.request *) section.form .list input[type=tel],
.main:is(body.request *) section.form .list input[type=email],
.main:is(body.request *) section.form .list input[type=file],
.main:is(body.request *) section.form .list select,
.main:is(body.request *) section.form .list textarea, .main:is(body.counseling *) section.form .list input[type=text],
.main:is(body.counseling *) section.form .list input[type=tel],
.main:is(body.counseling *) section.form .list input[type=email],
.main:is(body.counseling *) section.form .list input[type=file],
.main:is(body.counseling *) section.form .list select,
.main:is(body.counseling *) section.form .list textarea, .main:is(body.repair-request *) section.form .list input[type=text],
.main:is(body.repair-request *) section.form .list input[type=tel],
.main:is(body.repair-request *) section.form .list input[type=email],
.main:is(body.repair-request *) section.form .list input[type=file],
.main:is(body.repair-request *) section.form .list select,
.main:is(body.repair-request *) section.form .list textarea, .main:is(body.single-event *) section.form .list input[type=text],
.main:is(body.single-event *) section.form .list input[type=tel],
.main:is(body.single-event *) section.form .list input[type=email],
.main:is(body.single-event *) section.form .list input[type=file],
.main:is(body.single-event *) section.form .list select,
.main:is(body.single-event *) section.form .list textarea {
    font-size: 16px;
  }
}
.main:is(body.contact *) section.form .list input[type=text]::-moz-placeholder, .main:is(body.contact *) section.form .list input[type=tel]::-moz-placeholder, .main:is(body.contact *) section.form .list input[type=email]::-moz-placeholder, .main:is(body.contact *) section.form .list input[type=file]::-moz-placeholder, .main:is(body.contact *) section.form .list select::-moz-placeholder, .main:is(body.contact *) section.form .list textarea::-moz-placeholder, .main:is(body.request *) section.form .list input[type=text]::-moz-placeholder, .main:is(body.request *) section.form .list input[type=tel]::-moz-placeholder, .main:is(body.request *) section.form .list input[type=email]::-moz-placeholder, .main:is(body.request *) section.form .list input[type=file]::-moz-placeholder, .main:is(body.request *) section.form .list select::-moz-placeholder, .main:is(body.request *) section.form .list textarea::-moz-placeholder, .main:is(body.counseling *) section.form .list input[type=text]::-moz-placeholder, .main:is(body.counseling *) section.form .list input[type=tel]::-moz-placeholder, .main:is(body.counseling *) section.form .list input[type=email]::-moz-placeholder, .main:is(body.counseling *) section.form .list input[type=file]::-moz-placeholder, .main:is(body.counseling *) section.form .list select::-moz-placeholder, .main:is(body.counseling *) section.form .list textarea::-moz-placeholder, .main:is(body.repair-request *) section.form .list input[type=text]::-moz-placeholder, .main:is(body.repair-request *) section.form .list input[type=tel]::-moz-placeholder, .main:is(body.repair-request *) section.form .list input[type=email]::-moz-placeholder, .main:is(body.repair-request *) section.form .list input[type=file]::-moz-placeholder, .main:is(body.repair-request *) section.form .list select::-moz-placeholder, .main:is(body.repair-request *) section.form .list textarea::-moz-placeholder, .main:is(body.single-event *) section.form .list input[type=text]::-moz-placeholder, .main:is(body.single-event *) section.form .list input[type=tel]::-moz-placeholder, .main:is(body.single-event *) section.form .list input[type=email]::-moz-placeholder, .main:is(body.single-event *) section.form .list input[type=file]::-moz-placeholder, .main:is(body.single-event *) section.form .list select::-moz-placeholder, .main:is(body.single-event *) section.form .list textarea::-moz-placeholder {
  color: #ccc;
  font-size: 0.15rem;
  line-height: 1.6666666667;
}
.main:is(body.contact *) section.form .list input[type=text]::placeholder,
.main:is(body.contact *) section.form .list input[type=tel]::placeholder,
.main:is(body.contact *) section.form .list input[type=email]::placeholder,
.main:is(body.contact *) section.form .list input[type=file]::placeholder,
.main:is(body.contact *) section.form .list select::placeholder,
.main:is(body.contact *) section.form .list textarea::placeholder, .main:is(body.request *) section.form .list input[type=text]::placeholder,
.main:is(body.request *) section.form .list input[type=tel]::placeholder,
.main:is(body.request *) section.form .list input[type=email]::placeholder,
.main:is(body.request *) section.form .list input[type=file]::placeholder,
.main:is(body.request *) section.form .list select::placeholder,
.main:is(body.request *) section.form .list textarea::placeholder, .main:is(body.counseling *) section.form .list input[type=text]::placeholder,
.main:is(body.counseling *) section.form .list input[type=tel]::placeholder,
.main:is(body.counseling *) section.form .list input[type=email]::placeholder,
.main:is(body.counseling *) section.form .list input[type=file]::placeholder,
.main:is(body.counseling *) section.form .list select::placeholder,
.main:is(body.counseling *) section.form .list textarea::placeholder, .main:is(body.repair-request *) section.form .list input[type=text]::placeholder,
.main:is(body.repair-request *) section.form .list input[type=tel]::placeholder,
.main:is(body.repair-request *) section.form .list input[type=email]::placeholder,
.main:is(body.repair-request *) section.form .list input[type=file]::placeholder,
.main:is(body.repair-request *) section.form .list select::placeholder,
.main:is(body.repair-request *) section.form .list textarea::placeholder, .main:is(body.single-event *) section.form .list input[type=text]::placeholder,
.main:is(body.single-event *) section.form .list input[type=tel]::placeholder,
.main:is(body.single-event *) section.form .list input[type=email]::placeholder,
.main:is(body.single-event *) section.form .list input[type=file]::placeholder,
.main:is(body.single-event *) section.form .list select::placeholder,
.main:is(body.single-event *) section.form .list textarea::placeholder {
  color: #ccc;
  font-size: 0.15rem;
  line-height: 1.6666666667;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list input[type=text]::-moz-placeholder, .main:is(body.contact *) section.form .list input[type=tel]::-moz-placeholder, .main:is(body.contact *) section.form .list input[type=email]::-moz-placeholder, .main:is(body.contact *) section.form .list input[type=file]::-moz-placeholder, .main:is(body.contact *) section.form .list select::-moz-placeholder, .main:is(body.contact *) section.form .list textarea::-moz-placeholder, .main:is(body.request *) section.form .list input[type=text]::-moz-placeholder, .main:is(body.request *) section.form .list input[type=tel]::-moz-placeholder, .main:is(body.request *) section.form .list input[type=email]::-moz-placeholder, .main:is(body.request *) section.form .list input[type=file]::-moz-placeholder, .main:is(body.request *) section.form .list select::-moz-placeholder, .main:is(body.request *) section.form .list textarea::-moz-placeholder, .main:is(body.counseling *) section.form .list input[type=text]::-moz-placeholder, .main:is(body.counseling *) section.form .list input[type=tel]::-moz-placeholder, .main:is(body.counseling *) section.form .list input[type=email]::-moz-placeholder, .main:is(body.counseling *) section.form .list input[type=file]::-moz-placeholder, .main:is(body.counseling *) section.form .list select::-moz-placeholder, .main:is(body.counseling *) section.form .list textarea::-moz-placeholder, .main:is(body.repair-request *) section.form .list input[type=text]::-moz-placeholder, .main:is(body.repair-request *) section.form .list input[type=tel]::-moz-placeholder, .main:is(body.repair-request *) section.form .list input[type=email]::-moz-placeholder, .main:is(body.repair-request *) section.form .list input[type=file]::-moz-placeholder, .main:is(body.repair-request *) section.form .list select::-moz-placeholder, .main:is(body.repair-request *) section.form .list textarea::-moz-placeholder, .main:is(body.single-event *) section.form .list input[type=text]::-moz-placeholder, .main:is(body.single-event *) section.form .list input[type=tel]::-moz-placeholder, .main:is(body.single-event *) section.form .list input[type=email]::-moz-placeholder, .main:is(body.single-event *) section.form .list input[type=file]::-moz-placeholder, .main:is(body.single-event *) section.form .list select::-moz-placeholder, .main:is(body.single-event *) section.form .list textarea::-moz-placeholder {
    font-size: 15px;
  }
  .main:is(body.contact *) section.form .list input[type=text]::placeholder,
.main:is(body.contact *) section.form .list input[type=tel]::placeholder,
.main:is(body.contact *) section.form .list input[type=email]::placeholder,
.main:is(body.contact *) section.form .list input[type=file]::placeholder,
.main:is(body.contact *) section.form .list select::placeholder,
.main:is(body.contact *) section.form .list textarea::placeholder, .main:is(body.request *) section.form .list input[type=text]::placeholder,
.main:is(body.request *) section.form .list input[type=tel]::placeholder,
.main:is(body.request *) section.form .list input[type=email]::placeholder,
.main:is(body.request *) section.form .list input[type=file]::placeholder,
.main:is(body.request *) section.form .list select::placeholder,
.main:is(body.request *) section.form .list textarea::placeholder, .main:is(body.counseling *) section.form .list input[type=text]::placeholder,
.main:is(body.counseling *) section.form .list input[type=tel]::placeholder,
.main:is(body.counseling *) section.form .list input[type=email]::placeholder,
.main:is(body.counseling *) section.form .list input[type=file]::placeholder,
.main:is(body.counseling *) section.form .list select::placeholder,
.main:is(body.counseling *) section.form .list textarea::placeholder, .main:is(body.repair-request *) section.form .list input[type=text]::placeholder,
.main:is(body.repair-request *) section.form .list input[type=tel]::placeholder,
.main:is(body.repair-request *) section.form .list input[type=email]::placeholder,
.main:is(body.repair-request *) section.form .list input[type=file]::placeholder,
.main:is(body.repair-request *) section.form .list select::placeholder,
.main:is(body.repair-request *) section.form .list textarea::placeholder, .main:is(body.single-event *) section.form .list input[type=text]::placeholder,
.main:is(body.single-event *) section.form .list input[type=tel]::placeholder,
.main:is(body.single-event *) section.form .list input[type=email]::placeholder,
.main:is(body.single-event *) section.form .list input[type=file]::placeholder,
.main:is(body.single-event *) section.form .list select::placeholder,
.main:is(body.single-event *) section.form .list textarea::placeholder {
    font-size: 15px;
  }
}
.main:is(body.contact *) section.form .list input[type=text],
.main:is(body.contact *) section.form .list input[type=tel],
.main:is(body.contact *) section.form .list input[type=email],
.main:is(body.contact *) section.form .list select, .main:is(body.request *) section.form .list input[type=text],
.main:is(body.request *) section.form .list input[type=tel],
.main:is(body.request *) section.form .list input[type=email],
.main:is(body.request *) section.form .list select, .main:is(body.counseling *) section.form .list input[type=text],
.main:is(body.counseling *) section.form .list input[type=tel],
.main:is(body.counseling *) section.form .list input[type=email],
.main:is(body.counseling *) section.form .list select, .main:is(body.repair-request *) section.form .list input[type=text],
.main:is(body.repair-request *) section.form .list input[type=tel],
.main:is(body.repair-request *) section.form .list input[type=email],
.main:is(body.repair-request *) section.form .list select, .main:is(body.single-event *) section.form .list input[type=text],
.main:is(body.single-event *) section.form .list input[type=tel],
.main:is(body.single-event *) section.form .list input[type=email],
.main:is(body.single-event *) section.form .list select {
  height: 0.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list input[type=text],
.main:is(body.contact *) section.form .list input[type=tel],
.main:is(body.contact *) section.form .list input[type=email],
.main:is(body.contact *) section.form .list select, .main:is(body.request *) section.form .list input[type=text],
.main:is(body.request *) section.form .list input[type=tel],
.main:is(body.request *) section.form .list input[type=email],
.main:is(body.request *) section.form .list select, .main:is(body.counseling *) section.form .list input[type=text],
.main:is(body.counseling *) section.form .list input[type=tel],
.main:is(body.counseling *) section.form .list input[type=email],
.main:is(body.counseling *) section.form .list select, .main:is(body.repair-request *) section.form .list input[type=text],
.main:is(body.repair-request *) section.form .list input[type=tel],
.main:is(body.repair-request *) section.form .list input[type=email],
.main:is(body.repair-request *) section.form .list select, .main:is(body.single-event *) section.form .list input[type=text],
.main:is(body.single-event *) section.form .list input[type=tel],
.main:is(body.single-event *) section.form .list input[type=email],
.main:is(body.single-event *) section.form .list select {
    height: 50px;
  }
}
.main:is(body.contact *) section.form .list textarea, .main:is(body.request *) section.form .list textarea, .main:is(body.counseling *) section.form .list textarea, .main:is(body.repair-request *) section.form .list textarea, .main:is(body.single-event *) section.form .list textarea {
  min-height: 2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.contact *) section.form .list textarea, .main:is(body.request *) section.form .list textarea, .main:is(body.counseling *) section.form .list textarea, .main:is(body.repair-request *) section.form .list textarea, .main:is(body.single-event *) section.form .list textarea {
    min-height: 200px;
  }
}
.main:is(body.contact *) section.form .agree, .main:is(body.request *) section.form .agree, .main:is(body.counseling *) section.form .agree, .main:is(body.repair-request *) section.form .agree, .main:is(body.single-event *) section.form .agree {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.1rem;
  margin: 0.44rem 0 0;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.15rem;
  line-height: 0.26rem;
}
.main:is(body.contact *) section.form .agree label, .main:is(body.request *) section.form .agree label, .main:is(body.counseling *) section.form .agree label, .main:is(body.repair-request *) section.form .agree label, .main:is(body.single-event *) section.form .agree label {
  display: block;
  width: 0.26rem;
  height: 0.26rem;
  position: relative;
  background: #fff url(../imgs/check.svg) 0.26rem 50%/0.13rem auto no-repeat;
  cursor: pointer;
}
.main:is(body.contact *) section.form .agree label input, .main:is(body.request *) section.form .agree label input, .main:is(body.counseling *) section.form .agree label input, .main:is(body.repair-request *) section.form .agree label input, .main:is(body.single-event *) section.form .agree label input {
  position: absolute;
  top: 0;
  left: 0;
}
.main:is(body.contact *) section.form .agree label:has(input:checked), .main:is(body.request *) section.form .agree label:has(input:checked), .main:is(body.counseling *) section.form .agree label:has(input:checked), .main:is(body.repair-request *) section.form .agree label:has(input:checked), .main:is(body.single-event *) section.form .agree label:has(input:checked) {
  background-position: 50% 50%;
}
.main:is(body.contact *) section.form .policy, .main:is(body.request *) section.form .policy, .main:is(body.counseling *) section.form .policy, .main:is(body.repair-request *) section.form .policy, .main:is(body.single-event *) section.form .policy {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.14rem;
  line-height: 1.8;
}
.main:is(body.contact *) section.form input[type=submit],
.main:is(body.contact *) section.form button[type=submit], .main:is(body.request *) section.form input[type=submit],
.main:is(body.request *) section.form button[type=submit], .main:is(body.counseling *) section.form input[type=submit],
.main:is(body.counseling *) section.form button[type=submit], .main:is(body.repair-request *) section.form input[type=submit],
.main:is(body.repair-request *) section.form button[type=submit], .main:is(body.single-event *) section.form input[type=submit],
.main:is(body.single-event *) section.form button[type=submit] {
  display: block;
  box-sizing: border-box;
  width: 3.5rem;
  height: 0.7rem;
  margin: 0.4rem auto 0;
  border: 0.01rem solid #2F406E;
  position: relative;
  background: #2F406E;
  color: #fff;
  font-size: 0.16rem;
  font-weight: 600;
}
.main:is(body.contact *) section.form input[type=submit]::after,
.main:is(body.contact *) section.form button[type=submit]::after, .main:is(body.request *) section.form input[type=submit]::after,
.main:is(body.request *) section.form button[type=submit]::after, .main:is(body.counseling *) section.form input[type=submit]::after,
.main:is(body.counseling *) section.form button[type=submit]::after, .main:is(body.repair-request *) section.form input[type=submit]::after,
.main:is(body.repair-request *) section.form button[type=submit]::after, .main:is(body.single-event *) section.form input[type=submit]::after,
.main:is(body.single-event *) section.form button[type=submit]::after {
  content: "";
  display: block;
  width: 0.12rem;
  height: 0.12rem;
  position: absolute;
  top: calc(50% - 0.06rem);
  right: 0.28rem;
  background: currentColor;
  -webkit-mask: url(../imgs/arw01.svg) center/100% auto no-repeat;
          mask: url(../imgs/arw01.svg) center/100% auto no-repeat;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.contact *) section.form input[type=submit],
.main:is(body.contact *) section.form button[type=submit], .main:is(body.request *) section.form input[type=submit],
.main:is(body.request *) section.form button[type=submit], .main:is(body.counseling *) section.form input[type=submit],
.main:is(body.counseling *) section.form button[type=submit], .main:is(body.repair-request *) section.form input[type=submit],
.main:is(body.repair-request *) section.form button[type=submit], .main:is(body.single-event *) section.form input[type=submit],
.main:is(body.single-event *) section.form button[type=submit] {
    transition: 0.4s;
    transition-property: background-color, color;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.contact *) section.form input[type=submit]:hover,
.main:is(body.contact *) section.form button[type=submit]:hover, .main:is(body.request *) section.form input[type=submit]:hover,
.main:is(body.request *) section.form button[type=submit]:hover, .main:is(body.counseling *) section.form input[type=submit]:hover,
.main:is(body.counseling *) section.form button[type=submit]:hover, .main:is(body.repair-request *) section.form input[type=submit]:hover,
.main:is(body.repair-request *) section.form button[type=submit]:hover, .main:is(body.single-event *) section.form input[type=submit]:hover,
.main:is(body.single-event *) section.form button[type=submit]:hover {
    background-color: #fff;
    color: #2F406E;
  }
}
.main:is(body.request *) .image {
  max-width: 6.57rem;
  margin: 0.65rem auto -0.33rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.request *) .image {
    margin: 0.4rem auto -0.4rem;
  }
}
.main:is(body.counseling *) .lead .catch {
  margin-inline: -0.2rem;
}
.main:is(body.counseling *) .lead .list {
  display: flex;
  gap: 0.2rem;
  justify-content: center;
  margin: 0.65rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.counseling *) .lead .list {
    flex-wrap: wrap;
    gap: 0.06rem;
    margin: 0.3rem -0.2rem 0;
  }
}
.main:is(body.counseling *) .lead .list .item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.15rem;
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 50%;
  box-shadow: inset 0 0 0 0.01rem #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.counseling *) .lead .list .item {
    gap: 0.1rem;
    width: 1.85rem;
    height: 1.85rem;
  }
}
.main:is(body.counseling *) .lead .list .item .legend {
  font-size: 0.2rem;
  font-weight: 600;
  line-height: 0.24rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.counseling *) .lead .list .item .legend {
    font-size: 0.16rem;
    line-height: 0.25rem;
  }
}
.main:is(body.counseling *) .lead .list .item .text {
  font-size: 0.14rem;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.counseling *) .lead .list .item .text {
    padding: 0 0 0.08rem;
    font-size: 0.115rem;
    line-height: 1.6;
  }
}
.main:is(body.counseling *) .lead p {
  margin: 0.5rem 0 0;
  font-weight: 400;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.counseling *) .lead p {
    margin: 0.34rem 0 0;
    font-size: 0.16rem;
    line-height: 0.28rem;
    text-align: left;
  }
}
.main:is(body.counseling *) .tel {
  margin: 1.4rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.counseling *) .tel {
    margin: 1.7rem 0 0;
  }
}
.main:is(body.thanks *) section.thanks, .main:is(body.event_thanks *) section.thanks {
  margin: 0.8rem 0 2rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.thanks *) section.thanks, .main:is(body.event_thanks *) section.thanks {
    margin: 0.4rem 0 0.64rem;
  }
}
.main:is(body.thanks *) section.thanks .ttl, .main:is(body.event_thanks *) section.thanks .ttl {
  font-size: 0.36rem;
  line-height: 2.4;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.thanks *) section.thanks .ttl, .main:is(body.event_thanks *) section.thanks .ttl {
    font-size: 0.24rem;
    line-height: 0.35rem;
  }
}
.main:is(body.thanks *) section.thanks p, .main:is(body.event_thanks *) section.thanks p {
  margin: 0.4rem 0 0;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .main:is(body.thanks *) section.thanks p, .main:is(body.event_thanks *) section.thanks p {
    margin: 0.3rem 0 0;
    text-align: left;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .pageHeader, .main:is(body.tax-works_cat *) .pageHeader {
    grid-template-rows: auto auto auto;
  }
}
.main:is(body.post-type-archive-works *) .pageHeader .lead, .main:is(body.tax-works_cat *) .pageHeader .lead {
  grid-row: 2/3;
  grid-column: 1/2;
  align-self: flex-end;
  width: 100%;
  max-width: 12rem;
  margin: 0 auto;
  translate: 0 0.04rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .pageHeader .lead, .main:is(body.tax-works_cat *) .pageHeader .lead {
    grid-row: 3/4;
    box-sizing: border-box;
    padding: 0.24rem 0.2rem 0;
    translate: none;
  }
}
.main:is(body.post-type-archive-works *) .pageHeader .lead p, .main:is(body.tax-works_cat *) .pageHeader .lead p {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .pageHeader .lead p, .main:is(body.tax-works_cat *) .pageHeader .lead p {
    font-size: 0.16rem;
    line-height: 0.3rem;
  }
}
.main:is(body.post-type-archive-works *) .body, .main:is(body.tax-works_cat *) .body {
  margin: 0.8rem 0 1.36rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .body, .main:is(body.tax-works_cat *) .body {
    margin: 0.4rem 0 0.56rem;
  }
}
.main:is(body.post-type-archive-works *) .sNav .list, .main:is(body.tax-works_cat *) .sNav .list {
  display: flex;
  justify-content: space-between;
}
.main:is(body.post-type-archive-works *) .sNav .list li, .main:is(body.tax-works_cat *) .sNav .list li {
  width: 2.8rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .sNav .list li, .main:is(body.tax-works_cat *) .sNav .list li {
    width: 0.8rem;
  }
}
.main:is(body.post-type-archive-works *) .sNav .list a, .main:is(body.tax-works_cat *) .sNav .list a {
  display: grid;
  place-items: center;
  height: 0.44rem;
  color: #999;
  font-size: 0.14rem;
  border-bottom: 0.01rem solid currentColor;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .sNav .list a, .main:is(body.tax-works_cat *) .sNav .list a {
    font-size: 0.13rem;
  }
}
.main:is(body.post-type-archive-works *) .sNav .list a.active, .main:is(body.tax-works_cat *) .sNav .list a.active {
  color: #222;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.post-type-archive-works *) .sNav .list a, .main:is(body.tax-works_cat *) .sNav .list a {
    transition: color 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.post-type-archive-works *) .sNav .list a:hover, .main:is(body.tax-works_cat *) .sNav .list a:hover {
    color: #222;
  }
}
.main:is(body.post-type-archive-works *) .toc, .main:is(body.tax-works_cat *) .toc {
  margin: 0.76rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .toc, .main:is(body.tax-works_cat *) .toc {
    margin: 0.66rem 0 0;
  }
}
.main:is(body.post-type-archive-works *) .toc .list, .main:is(body.tax-works_cat *) .toc .list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 0.42rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .toc .list, .main:is(body.tax-works_cat *) .toc .list {
    flex-direction: column;
    gap: 0.6rem;
    width: 2.9rem;
    margin: 0 auto;
  }
}
.main:is(body.post-type-archive-works *) .toc .list .item, .main:is(body.tax-works_cat *) .toc .list .item {
  display: block;
  width: 3.72rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .toc .list .item, .main:is(body.tax-works_cat *) .toc .list .item {
    width: auto;
  }
}
.main:is(body.post-type-archive-works *) .toc .list .item .image img, .main:is(body.tax-works_cat *) .toc .list .item .image img {
  width: 100%;
  aspect-ratio: 372/560;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.post-type-archive-works *) .toc .list .item .data, .main:is(body.tax-works_cat *) .toc .list .item .data {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: auto 1fr;
  gap: 0.12rem 0;
  margin: 0.2rem 0 0;
}
.main:is(body.post-type-archive-works *) .toc .list .item .data .category, .main:is(body.tax-works_cat *) .toc .list .item .data .category {
  grid-row: 1/2;
  grid-column: 1/2;
  align-self: center;
  padding: 0.05rem 0.1rem;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 0.05rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
  line-height: 0.19rem;
}
.main:is(body.post-type-archive-works *) .toc .list .item .data .area, .main:is(body.tax-works_cat *) .toc .list .item .data .area {
  grid-row: 1/2;
  grid-column: 2/3;
  justify-self: flex-end;
  font-size: 0.22rem;
  line-height: 0.32rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .toc .list .item .data .area, .main:is(body.tax-works_cat *) .toc .list .item .data .area {
    font-size: 0.2rem;
    line-height: 0.29rem;
  }
}
.main:is(body.post-type-archive-works *) .toc .list .item .data .tag, .main:is(body.tax-works_cat *) .toc .list .item .data .tag {
  grid-row: 2/3;
  grid-column: 1/3;
  border-top: 0.01rem solid #999;
  padding: 0.12rem 0 0;
  font-size: 0.14rem;
  line-height: 0.2rem;
  text-align: right;
}
.main:is(body.post-type-archive-works *) .toc .list .item .data .tag span:nth-child(n+2)::before, .main:is(body.tax-works_cat *) .toc .list .item .data .tag span:nth-child(n+2)::before {
  content: "/";
  margin: 0 0.5em;
}
.main:is(body.post-type-archive-works *) .toc .pagination, .main:is(body.tax-works_cat *) .toc .pagination {
  margin: 1.36rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-works *) .toc .pagination, .main:is(body.tax-works_cat *) .toc .pagination {
    margin: 0.6rem 0 0;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .pageHeader .breadCrumb {
    display: block;
    padding-top: 1rem;
  }
  .main:is(body.single-works *) .pageHeader .breadCrumb li {
    display: inline;
  }
}
.main:is(body.single-works *) .post {
  margin-top: -0.12rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post {
    margin-top: 0.16rem 0 0;
  }
}
.main:is(body.single-works *) .post .prepend .category {
  display: grid;
  gap: 0.1rem;
}
.main:is(body.single-works *) .post .prepend .category span {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.05rem 0.1rem;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 0.05rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
  line-height: 0.19rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .prepend .category span {
    font-size: 0.12rem;
    line-height: 0.16rem;
  }
}
.main:is(body.single-works *) .post .prepend .title {
  margin: 0.12rem 0 0;
  font-size: 0.36rem;
  font-weight: 400;
  line-height: 0.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .prepend .title {
    margin: 0.14rem 0 0;
    font-size: 0.24rem;
    line-height: 1.5;
  }
}
.main:is(body.single-works *) .post .prepend .data {
  margin: 0.16rem 0 0;
  color: #555;
  font-size: 0.12rem;
  line-height: 1;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .prepend .data {
    margin: 0.12rem 0 0;
  }
}
.main:is(body.single-works *) .post .body {
  margin: 0.64rem 0 2rem;
  container-type: inline-size;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body {
    margin: 0.48rem 0 0.6rem;
  }
}
.main:is(body.single-works *) .post .body .wrap {
  display: grid;
  grid-template-columns: 8.1rem 1fr;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body .wrap {
    display: flex;
    flex-direction: column;
  }
}
.main:is(body.single-works *) .post .body .wrap > * {
  grid-column: 1/3;
  margin-inline: 1.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body .wrap > * {
    margin-inline: 0;
  }
}
.main:is(body.single-works *) .post .body .image--main {
  grid-row: 1/2;
  grid-column: 1/2;
  margin-right: 0;
  margin-left: max(-1.5rem, 6.5rem - 50cqw);
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body .image--main {
    margin-inline: -0.2rem;
  }
}
.main:is(body.single-works *) .post .body .image--main + *:not(h2) {
  margin-top: 1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body .image--main + *:not(h2) {
    margin-top: 0.3rem;
  }
}
.main:is(body.single-works *) .post .body h2 {
  font-size: 0.24rem;
  font-weight: 500;
  line-height: 0.41rem;
  margin-top: 1rem;
  margin-bottom: 0.38rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body h2 {
    font-size: 0.21rem;
    line-height: 1.7;
    margin-top: 0.3rem;
    margin-bottom: 0.28rem;
  }
}
.main:is(body.single-works *) .post .body .data {
  grid-row: 1/2;
  grid-column: 2/3;
  align-self: center;
  justify-self: flex-end;
  width: 4.05rem;
  border-top: 0.01rem solid #999;
  border-bottom: 0.01rem solid #999;
  margin: 0;
  padding: 0.4rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body .data {
    width: auto;
    margin: 0.3rem 0 0;
    padding: 0.3rem 0;
  }
}
.main:is(body.single-works *) .post .body .data table {
  width: 100%;
}
.main:is(body.single-works *) .post .body .data th,
.main:is(body.single-works *) .post .body .data td {
  border: none;
  padding: 0.075rem 0;
  font-size: 0.13rem;
  font-weight: 400;
  line-height: 0.21rem;
}
.main:is(body.single-works *) .post .body .data th:first-child,
.main:is(body.single-works *) .post .body .data td:first-child {
  width: 0.85rem;
}
.main:is(body.single-works *) .post .body .gallery,
.main:is(body.single-works *) .post .body .wp-block-gallery {
  order: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 0.4rem;
  margin: 1.28rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body .gallery,
.main:is(body.single-works *) .post .body .wp-block-gallery {
    flex-direction: column;
    margin: 0.6rem 0 0;
    gap: 0.3rem;
  }
}
.main:is(body.single-works *) .post .body .gallery > div,
.main:is(body.single-works *) .post .body .gallery .wp-block-image,
.main:is(body.single-works *) .post .body .wp-block-gallery > div,
.main:is(body.single-works *) .post .body .wp-block-gallery .wp-block-image {
  display: block !important;
  width: calc(50% - 0.2rem) !important;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body .gallery > div,
.main:is(body.single-works *) .post .body .gallery .wp-block-image,
.main:is(body.single-works *) .post .body .wp-block-gallery > div,
.main:is(body.single-works *) .post .body .wp-block-gallery .wp-block-image {
    width: auto !important;
  }
}
.main:is(body.single-works *) .post .body .gallery > div::before,
.main:is(body.single-works *) .post .body .gallery .wp-block-image::before,
.main:is(body.single-works *) .post .body .wp-block-gallery > div::before,
.main:is(body.single-works *) .post .body .wp-block-gallery .wp-block-image::before {
  content: none !important;
}
.main:is(body.single-works *) .post .body .gallery img + div,
.main:is(body.single-works *) .post .body .gallery .wp-element-caption,
.main:is(body.single-works *) .post .body .wp-block-gallery img + div,
.main:is(body.single-works *) .post .body .wp-block-gallery .wp-element-caption {
  width: 100%;
  margin: 0.2rem 0 0;
  padding: 0 !important;
  position: static !important;
  background: none !important;
  color: inherit !important;
  font-size: inherit !important;
  line-height: 1.1875;
  text-align: left !important;
  text-shadow: none !important;
  overflow: visible !important;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body .gallery img + div,
.main:is(body.single-works *) .post .body .gallery .wp-element-caption,
.main:is(body.single-works *) .post .body .wp-block-gallery img + div,
.main:is(body.single-works *) .post .body .wp-block-gallery .wp-element-caption {
    margin: 0.15rem 0 0;
    font-size: 0.15rem !important;
    line-height: 1.4666666667;
  }
}
.main:is(body.single-works *) .post .body .wp-block-columns:first-of-type {
  margin-top: 1.28rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body .wp-block-columns:first-of-type {
    margin-top: 0.6rem;
  }
}
.main:is(body.single-works *) .post .body .btn--more {
  order: 1;
  margin: 0.28rem 1.5rem 0 auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .body .btn--more {
    margin: 0.3rem auto 0;
  }
}
.main:is(body.single-works *) .post .append {
  border-top: 0.01rem solid #999;
  padding: 0.5rem 0;
  background: none;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-works *) .post .append {
    padding: 0.35rem 0;
  }
}
.main:is(body.post-type-archive-event *) .body, .main:is(body.tax-event_cat *) .body {
  margin: 0.5rem 0 1.36rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .body, .main:is(body.tax-event_cat *) .body {
    margin: 0.12rem 0 0.56rem;
  }
}
.main:is(body.post-type-archive-event *) .sNav .list, .main:is(body.tax-event_cat *) .sNav .list {
  display: flex;
  justify-content: space-between;
}
.main:is(body.post-type-archive-event *) .sNav .list li, .main:is(body.tax-event_cat *) .sNav .list li {
  width: 2.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .sNav .list li, .main:is(body.tax-event_cat *) .sNav .list li {
    width: 0.8rem;
  }
}
.main:is(body.post-type-archive-event *) .sNav .list a, .main:is(body.tax-event_cat *) .sNav .list a {
  display: grid;
  place-items: center;
  height: 0.44rem;
  color: #999;
  font-size: 0.14rem;
  border-bottom: 0.01rem solid currentColor;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .sNav .list a, .main:is(body.tax-event_cat *) .sNav .list a {
    font-size: 0.13rem;
  }
}
.main:is(body.post-type-archive-event *) .sNav .list a.active, .main:is(body.tax-event_cat *) .sNav .list a.active {
  color: #222;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.post-type-archive-event *) .sNav .list a, .main:is(body.tax-event_cat *) .sNav .list a {
    transition: color 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.post-type-archive-event *) .sNav .list a:hover, .main:is(body.tax-event_cat *) .sNav .list a:hover {
    color: #222;
  }
}
.main:is(body.post-type-archive-event *) .toc, .main:is(body.tax-event_cat *) .toc {
  margin: 0.76rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .toc, .main:is(body.tax-event_cat *) .toc {
    margin: 0.66rem 0 0;
  }
}
.main:is(body.post-type-archive-event *) .toc .list, .main:is(body.tax-event_cat *) .toc .list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.68rem 1.08rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .toc .list, .main:is(body.tax-event_cat *) .toc .list {
    flex-direction: column;
    gap: 0.6rem;
    width: 3rem;
    margin: 0 auto;
  }
}
.main:is(body.post-type-archive-event *) .toc .list .item, .main:is(body.tax-event_cat *) .toc .list .item {
  width: 4.46rem;
  display: block;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .toc .list .item, .main:is(body.tax-event_cat *) .toc .list .item {
    width: auto;
  }
}
.main:is(body.post-type-archive-event *) .toc .list .item .image img, .main:is(body.tax-event_cat *) .toc .list .item .image img {
  width: 100%;
  aspect-ratio: 446/300;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.post-type-archive-event *) .toc .list .item .category, .main:is(body.tax-event_cat *) .toc .list .item .category {
  padding: 0.1rem 0.2rem;
  position: absolute;
  top: 0;
  left: 0;
  background: #2F406E;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
  line-height: 0.19rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .toc .list .item .category, .main:is(body.tax-event_cat *) .toc .list .item .category {
    padding: 0.08rem 0.14rem;
  }
}
.main:is(body.post-type-archive-event *) .toc .list .item .tag, .main:is(body.tax-event_cat *) .toc .list .item .tag {
  display: flex;
  gap: 0.12rem;
  margin: 0.3rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .toc .list .item .tag, .main:is(body.tax-event_cat *) .toc .list .item .tag {
    margin: 0.2rem 0.05rem 0;
  }
}
.main:is(body.post-type-archive-event *) .toc .list .item .tag span, .main:is(body.tax-event_cat *) .toc .list .item .tag span {
  display: grid;
  place-items: center;
  width: 0.84rem;
  height: 0.27rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.12rem;
  font-weight: 500;
  box-shadow: inset 0 0 0 0.01rem #999;
}
.main:is(body.post-type-archive-event *) .toc .list .item .title, .main:is(body.tax-event_cat *) .toc .list .item .title {
  margin: 0.16rem 0 0;
  font-size: 0.2rem;
  font-weight: 600;
  line-height: 0.29rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .toc .list .item .title, .main:is(body.tax-event_cat *) .toc .list .item .title {
    margin: 0.16rem 0.05rem 0;
    font-size: 0.18rem;
    font-weight: 700;
    line-height: 0.26rem;
  }
}
.main:is(body.post-type-archive-event *) .toc .list .item .summary, .main:is(body.tax-event_cat *) .toc .list .item .summary {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  max-height: 2lh;
  margin: 0.16rem 0 0;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .toc .list .item .summary, .main:is(body.tax-event_cat *) .toc .list .item .summary {
    margin: 0.08rem 0.05rem 0;
    line-height: 0.25rem;
  }
}
.main:is(body.post-type-archive-event *) .toc .list .item .data, .main:is(body.tax-event_cat *) .toc .list .item .data {
  display: grid;
  grid-template-columns: 0.9rem 1fr;
  margin: 0.2rem 0 0;
  border-top: 0.01rem solid #999;
  padding: 0.2rem 0 0;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .toc .list .item .data, .main:is(body.tax-event_cat *) .toc .list .item .data {
    grid-template-columns: 0.85rem 1fr;
    gap: 0.03rem 0;
    margin: 0.15rem 0.05rem 0;
    padding: 0.2rem 0 0;
  }
}
.main:is(body.post-type-archive-event *) .toc .list .item .data dt, .main:is(body.tax-event_cat *) .toc .list .item .data dt {
  display: flex;
  align-items: center;
  gap: 0.05rem;
}
.main:is(body.post-type-archive-event *) .toc .list .item .data dt::before, .main:is(body.tax-event_cat *) .toc .list .item .data dt::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 50%;
}
.main:is(body.post-type-archive-event *) .toc .list .item.ended .image, .main:is(body.tax-event_cat *) .toc .list .item.ended .image {
  position: relative;
}
.main:is(body.post-type-archive-event *) .toc .list .item.ended .image::after, .main:is(body.tax-event_cat *) .toc .list .item.ended .image::after {
  content: "イベントは終了いたしました";
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-size: 0.24rem;
  font-weight: 600;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .toc .list .item.ended .image::after, .main:is(body.tax-event_cat *) .toc .list .item.ended .image::after {
    font-size: 0.18rem;
  }
}
.main:is(body.post-type-archive-event *) .toc .pagination, .main:is(body.tax-event_cat *) .toc .pagination {
  margin: 1.36rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-event *) .toc .pagination, .main:is(body.tax-event_cat *) .toc .pagination {
    margin: 0.6rem 0 0;
  }
}
.main:is(body.post-type-archive-event *) .append, .main:is(body.tax-event_cat *) .append {
  padding: 0;
}
.main:is(body.post-type-archive-event *) .append .contact, .main:is(body.tax-event_cat *) .append .contact {
  margin: 0;
}
.main:is(body.single-event *) .pageHeader .breadCrumb {
  padding-bottom: 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .pageHeader .breadCrumb {
    display: block;
    padding-top: 1rem;
    padding-bottom: 0.2rem;
  }
  .main:is(body.single-event *) .pageHeader .breadCrumb li {
    display: inline;
  }
}
.main:is(body.single-event *) .post {
  margin-top: 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post {
    margin-top: 0.26rem 0 0;
  }
}
.main:is(body.single-event *) .post .prepend .tag {
  display: flex;
  gap: 0.1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .prepend .tag {
    gap: 0.08rem;
  }
}
.main:is(body.single-event *) .post .prepend .tag span {
  display: grid;
  place-items: center;
  width: 1.08rem;
  height: 0.3rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.14rem;
  font-weight: 700;
  box-shadow: inset 0 0 0 0.01rem #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .prepend .tag span {
    width: 0.75rem;
    height: 0.27rem;
    font-size: 0.12rem;
  }
}
.main:is(body.single-event *) .post .prepend .tag span.category {
  background: #2F406E;
  color: #fff;
  box-shadow: none;
}
.main:is(body.single-event *) .post .prepend .title {
  margin: 0.36rem 0 0;
  font-size: 0.26rem;
  font-weight: 600;
  line-height: 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .prepend .title {
    margin: 0.18rem 0 0;
    font-size: 0.22rem;
    line-height: 1.5;
  }
}
.main:is(body.single-event *) .post .prepend .data {
  margin: 0.1rem 0 0;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .prepend .data {
    margin: 0.1rem 0 0;
    font-size: 0.16rem;
  }
}
.main:is(body.single-event *) .post .body {
  margin: 0.4rem 0 1.64rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body {
    margin: 0.24rem 0 1rem;
  }
}
.main:is(body.single-event *) .post .body .wrap {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap {
    gap: 0.25rem;
  }
}
.main:is(body.single-event *) .post .body .wrap .gallery {
  position: relative;
}
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-prev,
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-next {
  width: 0.28rem;
  height: 0.28rem;
  margin: 0;
  border: none;
  padding: 0;
  top: 2.15rem;
  background: transparent url(../imgs/arw02.svg) center/100% auto no-repeat;
}
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-prev.swiper-button-disabled,
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-next.swiper-button-disabled {
  opacity: 0.3;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-prev,
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-next {
    width: 0.2rem;
    height: 0.2rem;
    top: 0.9rem;
    background-size: 0.12rem auto;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-prev,
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-next {
    transition: opacity 0.4s;
  }
}
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-prev::after,
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-next::after {
  content: none;
}
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-prev {
  left: -0.5rem;
  scale: -1 1;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-prev {
    left: -0.2rem;
  }
}
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-next {
  right: -0.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .gallery .swiper-button-next {
    right: -0.2rem;
  }
}
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-pagination {
  display: flex;
  justify-content: center;
  gap: 0.1rem;
  padding: 0.3rem 0 0;
  position: static;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .gallery .swiper-pagination {
    gap: 0.08rem;
    padding: 0.12rem 0 0;
  }
}
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-pagination .swiper-pagination-bullet {
  width: 0.05rem;
  height: 0.05rem;
  margin: 0;
  background: #999;
  opacity: 1;
}
@media (prefers-reduced-motion: no-preference) {
  .main:is(body.single-event *) .post .body .wrap .gallery .swiper-pagination .swiper-pagination-bullet {
    transition: background-color 0.4s;
  }
}
.main:is(body.single-event *) .post .body .wrap .gallery .swiper-pagination .swiper-pagination-bullet-active {
  background: #222;
}
.main:is(body.single-event *) .post .body .wrap h2 {
  order: 3;
  border-bottom: 0.01rem solid #999;
  padding: 0.4rem 0 0.2rem;
  font-size: 0.2rem;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap h2 {
    padding: 0.1rem 0 0.2rem;
    font-size: 0.2rem;
    line-height: 1.8;
  }
}
.main:is(body.single-event *) .post .body .wrap h2 ~ * {
  order: 3;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap p {
    font-size: 0.16rem;
  }
}
.main:is(body.single-event *) .post .body .wrap div:has(.image) {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 3rem 1fr;
  gap: 0.15rem 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap div:has(.image) {
    display: block;
  }
}
.main:is(body.single-event *) .post .body .wrap div:has(.image) .image {
  grid-row: 1/3;
  grid-column: 1/2;
}
.main:is(body.single-event *) .post .body .wrap div:has(.image) h3 {
  grid-row: 1/2;
  grid-column: 2/3;
  align-self: flex-end;
  font-size: 0.2rem;
  font-weight: 400;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap div:has(.image) h3 {
    margin: 0.15rem 0 0;
    line-height: 2;
  }
}
.main:is(body.single-event *) .post .body .wrap div:has(.image) p {
  grid-row: 2/3;
  grid-column: 2/3;
  align-self: flex-start;
  margin: 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap div:has(.image) p {
    margin: 0.05rem 0 0;
  }
}
.main:is(body.single-event *) .post .body .wrap .point {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .point {
    display: block;
  }
}
.main:is(body.single-event *) .post .body .wrap .point .wp-block-image {
  width: 3rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .point .wp-block-image {
    width: auto;
  }
}
.main:is(body.single-event *) .post .body .wrap .point .wp-block-group.is-vertical {
  width: calc(100% - 3.4rem);
  gap: 0.15rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .point .wp-block-group.is-vertical {
    width: auto;
    margin: 0.15rem 0 0;
  }
}
.main:is(body.single-event *) .post .body .wrap .point .wp-block-group.is-vertical h3 {
  font-size: 0.2rem;
  font-weight: 400;
}
.main:is(body.single-event *) .post .body .wrap .data {
  order: 1;
  display: grid;
  grid-template-columns: 0.9rem 1fr;
  gap: 0.05rem 0;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .data {
    display: block;
    font-size: 0.16rem;
  }
}
.main:is(body.single-event *) .post .body .wrap .data dt {
  grid-column: 1/2;
  display: flex;
  align-items: center;
  gap: 0.05rem;
}
.main:is(body.single-event *) .post .body .wrap .data dt::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background-color: currentColor;
  border-radius: 50%;
}
.main:is(body.single-event *) .post .body .wrap .data dd {
  grid-column: 2/3;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .data dd + dt {
    margin: 0.15rem 0 0;
  }
}
.main:is(body.single-event *) .post .body .wrap .btn--more {
  order: 2;
  margin: 0 auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .btn--more {
    margin: 0.2rem auto;
  }
}
.main:is(body.single-event *) .post .body .wrap .btn--more::after {
  rotate: 90deg;
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.single-event *) .post .body .wrap .btn--more:hover::before, .main:is(body.single-event *) .post .body .wrap .btn--more:hover::after {
    translate: 0 50% 0;
  }
}
.main:is(body.single-event *) .post .body .wrap .tag {
  order: 4;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  margin: 0.4rem 0 0;
  padding: 0.3rem 0.6rem;
  box-shadow: inset 0 0 0 0.01rem #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .tag {
    display: block;
    margin: 0 0.25rem;
    padding: 0.2rem 0.4rem;
    text-align: center;
  }
}
.main:is(body.single-event *) .post .body .wrap .tag .legend {
  display: grid;
  place-items: center start;
  width: 2.15rem;
  height: 0.7rem;
  border-right: 0.01rem solid #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .tag .legend {
    place-items: center;
    width: auto;
    height: auto;
    border-right: none;
    padding: 0 0 0.15rem;
    background: linear-gradient(#999, #999) 50% 100%/0.7rem 0.01rem no-repeat;
    font-size: 0.16rem;
    line-height: 1.8;
  }
}
.main:is(body.single-event *) .post .body .wrap .tag .list {
  padding: 0 0 0 0.6rem;
  font-size: 0.14rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-event *) .post .body .wrap .tag .list {
    padding: 0.15rem 0 0;
    line-height: 1.8;
  }
}
.main:is(body.single-event *) .post .body .wrap .tag .list span::before {
  content: "#";
}
.main:is(body.post-type-archive-blog *) .body, .main:is(body.tax-blog_cat *) .body {
  margin: 0.5rem 0 1.36rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-blog *) .body, .main:is(body.tax-blog_cat *) .body {
    margin: 0.12rem 0 0.56rem;
  }
}
.main:is(body.post-type-archive-blog *) .sNav .list, .main:is(body.tax-blog_cat *) .sNav .list {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-blog *) .sNav .list, .main:is(body.tax-blog_cat *) .sNav .list {
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.2rem;
  }
}
.main:is(body.post-type-archive-blog *) .sNav .list li, .main:is(body.tax-blog_cat *) .sNav .list li {
  width: 1.9rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-blog *) .sNav .list li, .main:is(body.tax-blog_cat *) .sNav .list li {
    width: calc((100% - 0.4rem) / 3);
  }
}
.main:is(body.post-type-archive-blog *) .sNav .list a, .main:is(body.tax-blog_cat *) .sNav .list a {
  display: grid;
  place-items: center;
  height: 0.44rem;
  color: #999;
  font-size: 0.14rem;
  border-bottom: 0.01rem solid currentColor;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-blog *) .sNav .list a, .main:is(body.tax-blog_cat *) .sNav .list a {
    font-size: 0.13rem;
  }
}
.main:is(body.post-type-archive-blog *) .sNav .list a.active, .main:is(body.tax-blog_cat *) .sNav .list a.active {
  color: #222;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.post-type-archive-blog *) .sNav .list a, .main:is(body.tax-blog_cat *) .sNav .list a {
    transition: color 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.post-type-archive-blog *) .sNav .list a:hover, .main:is(body.tax-blog_cat *) .sNav .list a:hover {
    color: #222;
  }
}
.main:is(body.post-type-archive-blog *) .toc, .main:is(body.tax-blog_cat *) .toc {
  margin: 0.76rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-blog *) .toc, .main:is(body.tax-blog_cat *) .toc {
    margin: 0.66rem 0 0;
  }
}
.main:is(body.post-type-archive-blog *) .toc .list, .main:is(body.tax-blog_cat *) .toc .list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 0.55rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-blog *) .toc .list, .main:is(body.tax-blog_cat *) .toc .list {
    flex-direction: column;
    gap: 0.6rem;
    width: 3rem;
    margin: 0 auto;
  }
}
.main:is(body.post-type-archive-blog *) .toc .list .item, .main:is(body.tax-blog_cat *) .toc .list .item {
  width: 3.3rem;
  display: block;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-blog *) .toc .list .item, .main:is(body.tax-blog_cat *) .toc .list .item {
    width: 100%;
  }
}
.main:is(body.post-type-archive-blog *) .toc .list .item .image img, .main:is(body.tax-blog_cat *) .toc .list .item .image img {
  width: 100%;
  aspect-ratio: 33/22;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.post-type-archive-blog *) .toc .list .item .category, .main:is(body.tax-blog_cat *) .toc .list .item .category {
  padding: 0.1rem 0.2rem;
  position: absolute;
  top: 0;
  left: 0;
  background: #2F406E;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
  line-height: 0.19rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-blog *) .toc .list .item .category, .main:is(body.tax-blog_cat *) .toc .list .item .category {
    padding: 0.08rem 0.14rem;
  }
}
.main:is(body.post-type-archive-blog *) .toc .list .item .date, .main:is(body.tax-blog_cat *) .toc .list .item .date {
  margin: 0.2rem 0 0;
  font-size: 0.14rem;
  line-height: 0.2rem;
}
.main:is(body.post-type-archive-blog *) .toc .list .item .title, .main:is(body.tax-blog_cat *) .toc .list .item .title {
  margin: 0.16rem 0 0;
  font-size: 0.18rem;
  line-height: 0.26rem;
}
.main:is(body.post-type-archive-blog *) .toc .list .item .author, .main:is(body.tax-blog_cat *) .toc .list .item .author {
  margin: 0.04rem 0 0;
  font-size: 0.14rem;
  line-height: 2;
}
.main:is(body.post-type-archive-blog *) .toc .pagination, .main:is(body.tax-blog_cat *) .toc .pagination {
  margin: 1.36rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.post-type-archive-blog *) .toc .pagination, .main:is(body.tax-blog_cat *) .toc .pagination {
    margin: 0.6rem 0 0;
  }
}
.main:is(body.post-type-archive-blog *) .append, .main:is(body.tax-blog_cat *) .append {
  padding: 0;
}
.main:is(body.post-type-archive-blog *) .append .contact, .main:is(body.tax-blog_cat *) .append .contact {
  margin: 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .pageHeader .breadCrumb {
    display: block;
    padding-top: 1rem;
  }
  .main:is(body.single-blog *) .pageHeader .breadCrumb li {
    display: inline;
  }
}
.main:is(body.single-blog *) .post {
  margin-top: 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post {
    margin-top: 0.16rem;
  }
}
.main:is(body.single-blog *) .post .prepend .category {
  display: flex;
  gap: 0.1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post .prepend .category {
    gap: 0.08rem;
  }
}
.main:is(body.single-blog *) .post .prepend .category span {
  display: grid;
  place-items: center;
  width: 1.08rem;
  height: 0.3rem;
  background: #2F406E;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.14rem;
  font-weight: 700;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post .prepend .category span {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 0 0.1rem;
    height: 0.28rem;
    font-size: 0.12rem;
  }
}
.main:is(body.single-blog *) .post .prepend .title {
  margin: 0.12rem 0 0;
  font-size: 0.26rem;
  font-weight: 400;
  line-height: 0.5rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post .prepend .title {
    margin: 0.14rem 0 0;
    font-size: 0.24rem;
    line-height: 1.5;
  }
}
.main:is(body.single-blog *) .post .body {
  margin: 0.04rem 0 1.8rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post .body {
    margin: 0 0 0.6rem;
  }
}
.main:is(body.single-blog *) .post .body .image,
.main:is(body.single-blog *) .post .body p {
  margin: 0.4rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post .body .image,
.main:is(body.single-blog *) .post .body p {
    margin: 0.25rem 0;
  }
}
.main:is(body.single-blog *) .post .body .wp-block-columns.is-layout-flex .wp-block-image,
.main:is(body.single-blog *) .post .body .wp-block-columns.is-layout-flex a {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 100%;
}
.main:is(body.single-blog *) .post .body .wp-block-columns.is-layout-flex img {
  width: 100% !important;
}
.main:is(body.single-blog *) .post .body p:has(> a > img),
.main:is(body.single-blog *) .post .body p:has(> img) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.75em 2em;
}
.main:is(body.single-blog *) .post .body p:has(> a > img) > a,
.main:is(body.single-blog *) .post .body p:has(> img) > a {
  width: calc((100% - 4em) / 3);
}
.main:is(body.single-blog *) .post .body p:has(> a > img) > a img,
.main:is(body.single-blog *) .post .body p:has(> img) > a img {
  width: 100%;
}
.main:is(body.single-blog *) .post .body p:has(> a > img) > img,
.main:is(body.single-blog *) .post .body p:has(> img) > img {
  width: calc((100% - 4em) / 3);
}
.main:is(body.single-blog *) .post .body .author {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  margin: 0.4rem 0 0;
  padding: 0.2rem 0.6rem 0.2rem 0.2rem;
  box-shadow: inset 0 0 0 0.01rem #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post .body .author {
    display: block;
    margin: 0 0.25rem;
    padding: 0.2rem 0.4rem;
    text-align: center;
  }
}
.main:is(body.single-blog *) .post .body .author .legend {
  display: grid;
  place-items: center;
  width: 1.7rem;
  height: 0.7rem;
  border-right: 0.01rem solid #999;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post .body .author .legend {
    place-items: center;
    width: auto;
    height: auto;
    border-right: none;
    padding: 0 0 0.15rem;
    background: linear-gradient(#999, #999) 50% 100%/0.7rem 0.01rem no-repeat;
    font-size: 0.16rem;
    line-height: 1.8;
  }
}
.main:is(body.single-blog *) .post .body .author .data {
  flex-grow: 1;
  display: flex;
  align-items: center;
  padding: 0 0 0 0.6rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post .body .author .data {
    justify-content: center;
    flex-wrap: wrap;
    padding: 0.15rem 0 0;
    line-height: 1.8;
  }
}
.main:is(body.single-blog *) .post .body .author .data .job {
  font-size: 0.14rem;
  margin-right: 1em;
}
.main:is(body.single-blog *) .post .body .author .data .name {
  font-size: 0.2rem;
}
.main:is(body.single-blog *) .post .body .author .data .image {
  width: 0.9rem;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post .body .author .data .image {
    margin: 0.1rem auto 0;
  }
}
.main:is(body.single-blog *) .post .body .author .data .image img {
  width: 100%;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}
.main:is(body.single-blog *) .post .append {
  border-top: 0.01rem solid #999;
  padding: 0.5rem 0;
  background: none;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .post .append {
    padding: 0.35rem 0;
  }
}
.main:is(body.single-blog *) .append {
  display: grid;
  padding: 0;
  background: none;
}
.main:is(body.single-blog *) .append::before {
  content: "";
  grid-area: 1/1;
  background: #F2ECE4;
  mix-blend-mode: multiply;
}
.main:is(body.single-blog *) .append section.event {
  grid-area: 1/1;
  padding: 1.15rem 0 1rem;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event {
    padding: 0.64rem 0;
  }
}
.main:is(body.single-blog *) .append section.event .wrap {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: auto 1fr auto;
  gap: 0.5rem 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .wrap {
    display: block;
  }
}
.main:is(body.single-blog *) .append section.event .ttl {
  grid-row: 1/2;
  grid-column: 1/2;
}
.main:is(body.single-blog *) .append section.event .ttl .en {
  display: flex;
  align-items: center;
  gap: 0.05rem;
  font-family: "Lato", sans-serif;
  font-size: 0.14rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .ttl .en {
    font-size: 0.11rem;
    line-height: 0.21rem;
  }
}
.main:is(body.single-blog *) .append section.event .ttl .en::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 50%;
}
.main:is(body.single-blog *) .append section.event .ttl .ja {
  display: block;
  margin: 0.1rem 0 0;
  font-size: 0.4rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 0.58rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .ttl .ja {
    font-size: 0.32rem;
    line-height: 0.46rem;
  }
}
.main:is(body.single-blog *) .append section.event .text {
  grid-row: 1/2;
  grid-column: 2/3;
  align-self: flex-end;
  margin: 0 0 0.1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .text {
    margin: 0.2rem 0 0;
  }
}
.main:is(body.single-blog *) .append section.event .item {
  grid-row: 2/3;
  grid-column: 1/4;
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 4.8rem 1fr;
  gap: 0.6rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .item {
    display: block;
    margin: 0.2rem 0 0;
    position: relative;
  }
}
.main:is(body.single-blog *) .append section.event .item .image {
  grid-row: 1/2;
  grid-column: 1/2;
}
.main:is(body.single-blog *) .append section.event .item .image img {
  width: 100%;
  aspect-ratio: 48/32;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.single-blog *) .append section.event .item .category {
  grid-row: 1/2;
  grid-column: 1/2;
  align-self: flex-start;
  justify-self: flex-start;
  display: flex;
  gap: 0.1rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .item .category {
    gap: 0.08rem;
    position: absolute;
    top: 0;
    left: 0;
  }
}
.main:is(body.single-blog *) .append section.event .item .category span {
  display: grid;
  place-items: center;
  width: 1.08rem;
  height: 0.4rem;
  background: #2F406E;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .item .category span {
    width: 0.75rem;
    height: 0.27rem;
    font-size: 0.12rem;
  }
}
.main:is(body.single-blog *) .append section.event .item .text {
  grid-row: 1/2;
  grid-column: 2/3;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: calc(100% - 5.4rem);
  margin: 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .item .text {
    width: auto;
    margin: 0.2rem 0 0;
  }
}
.main:is(body.single-blog *) .append section.event .item .text .tag {
  display: flex;
  gap: 0.12rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .item .text .tag {
    gap: 0.08rem;
  }
}
.main:is(body.single-blog *) .append section.event .item .text .tag span {
  display: grid;
  place-items: center;
  width: 0.84rem;
  height: 0.27rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.12rem;
  font-weight: 500;
  box-shadow: inset 0 0 0 0.01rem #999;
}
.main:is(body.single-blog *) .append section.event .item .text .title {
  margin: 0.24rem 0 0;
  font-size: 0.24rem;
  font-weight: 600;
  line-height: 0.35rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .item .text .title {
    margin: 0.16rem 0 0;
    font-size: 0.18rem;
    font-weight: 700;
    line-height: 0.26rem;
  }
}
.main:is(body.single-blog *) .append section.event .item .text .summary {
  margin: 0.1rem 0 0;
  font-size: 0.14rem;
}
@media screen and (min-width: 781px) {
  .main:is(body.single-blog *) .append section.event .item .text .summary {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .item .text .summary {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    margin: 0.08rem 0 0;
    max-height: 2lh;
    line-height: 0.25rem;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
  }
}
.main:is(body.single-blog *) .append section.event .item .text .data {
  display: grid;
  grid-template-columns: 0.9rem 1fr;
  margin: 0.15rem 0 0;
  border-top: 0.01rem solid #999;
  padding: 0.15rem 0 0;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .item .text .data {
    grid-template-columns: 0.9rem 1fr;
    gap: 0.03rem 0;
    margin: 0.15rem 0.05rem 0;
    padding: 0.2rem 0 0;
  }
}
.main:is(body.single-blog *) .append section.event .item .text .data dt {
  display: flex;
  align-items: center;
  gap: 0.05rem;
}
.main:is(body.single-blog *) .append section.event .item .text .data dt::before {
  content: "";
  display: block;
  width: 0.05rem;
  aspect-ratio: 1;
  background: currentColor;
  border-radius: 50%;
}
.main:is(body.single-blog *) .append section.event .item .text .btn--more {
  margin: auto auto 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .item .text .btn--more {
    margin: 0.2rem 0 0 auto;
  }
}
.main:is(body.single-blog *) .append section.event .btn--more {
  grid-row: 1/2;
  grid-column: 3/4;
  align-self: flex-end;
  margin: 0 0 0.06rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-blog *) .append section.event .btn--more {
    margin: 0.5rem auto 0;
  }
}
.main:is(body.news *) .body, .main:is(body.post-type-archive-info *) .body, .main:is(body.event *) .body, .main:is(body.blog *) .body {
  margin: 0.5rem 0 1.36rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.news *) .body, .main:is(body.post-type-archive-info *) .body, .main:is(body.event *) .body, .main:is(body.blog *) .body {
    margin: 0.12rem 0 0.56rem;
  }
}
.main:is(body.news *) .sNav .list, .main:is(body.post-type-archive-info *) .sNav .list, .main:is(body.event *) .sNav .list, .main:is(body.blog *) .sNav .list {
  display: flex;
  justify-content: space-between;
}
.main:is(body.news *) .sNav .list li, .main:is(body.post-type-archive-info *) .sNav .list li, .main:is(body.event *) .sNav .list li, .main:is(body.blog *) .sNav .list li {
  width: 2.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.news *) .sNav .list li, .main:is(body.post-type-archive-info *) .sNav .list li, .main:is(body.event *) .sNav .list li, .main:is(body.blog *) .sNav .list li {
    width: 0.8rem;
  }
}
.main:is(body.news *) .sNav .list a, .main:is(body.post-type-archive-info *) .sNav .list a, .main:is(body.event *) .sNav .list a, .main:is(body.blog *) .sNav .list a {
  display: grid;
  place-items: center;
  height: 0.44rem;
  color: #999;
  font-size: 0.14rem;
  border-bottom: 0.01rem solid currentColor;
}
@media screen and (max-width: 780px) {
  .main:is(body.news *) .sNav .list a, .main:is(body.post-type-archive-info *) .sNav .list a, .main:is(body.event *) .sNav .list a, .main:is(body.blog *) .sNav .list a {
    font-size: 0.13rem;
  }
}
.main:is(body.news *) .sNav .list a.active, .main:is(body.post-type-archive-info *) .sNav .list a.active, .main:is(body.event *) .sNav .list a.active, .main:is(body.blog *) .sNav .list a.active {
  color: #222;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .main:is(body.news *) .sNav .list a, .main:is(body.post-type-archive-info *) .sNav .list a, .main:is(body.event *) .sNav .list a, .main:is(body.blog *) .sNav .list a {
    transition: color 0.4s;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.news *) .sNav .list a:hover, .main:is(body.post-type-archive-info *) .sNav .list a:hover, .main:is(body.event *) .sNav .list a:hover, .main:is(body.blog *) .sNav .list a:hover {
    color: #222;
  }
}
.main:is(body.news *) .toc, .main:is(body.post-type-archive-info *) .toc, .main:is(body.event *) .toc, .main:is(body.blog *) .toc {
  margin: 0.76rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.news *) .toc, .main:is(body.post-type-archive-info *) .toc, .main:is(body.event *) .toc, .main:is(body.blog *) .toc {
    margin: 0.46rem 0 0;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.news *) .toc .list, .main:is(body.post-type-archive-info *) .toc .list, .main:is(body.event *) .toc .list, .main:is(body.blog *) .toc .list {
    width: 3rem;
    margin: 0 auto;
  }
}
.main:is(body.news *) .toc .list .item, .main:is(body.post-type-archive-info *) .toc .list .item, .main:is(body.event *) .toc .list .item, .main:is(body.blog *) .toc .list .item {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 2.1rem 1fr;
  gap: 0.5rem;
  border-bottom: 0.01rem solid #999;
  padding: 0.3rem 0.84rem 0.3rem 0;
  position: relative;
}
@media screen and (max-width: 780px) {
  .main:is(body.news *) .toc .list .item, .main:is(body.post-type-archive-info *) .toc .list .item, .main:is(body.event *) .toc .list .item, .main:is(body.blog *) .toc .list .item {
    display: block;
    padding: 0.3rem 0;
  }
}
.main:is(body.news *) .toc .list .item .image, .main:is(body.post-type-archive-info *) .toc .list .item .image, .main:is(body.event *) .toc .list .item .image, .main:is(body.blog *) .toc .list .item .image {
  grid-row: 1/2;
  grid-column: 1/2;
}
.main:is(body.news *) .toc .list .item .image img, .main:is(body.post-type-archive-info *) .toc .list .item .image img, .main:is(body.event *) .toc .list .item .image img, .main:is(body.blog *) .toc .list .item .image img {
  width: 100%;
  aspect-ratio: 21/14;
  -o-object-fit: cover;
     object-fit: cover;
}
.main:is(body.news *) .toc .list .item .text, .main:is(body.post-type-archive-info *) .toc .list .item .text, .main:is(body.event *) .toc .list .item .text, .main:is(body.blog *) .toc .list .item .text {
  grid-row: 1/2;
  grid-column: 2/3;
  align-self: center;
}
.main:is(body.news *) .toc .list .item .text .category, .main:is(body.post-type-archive-info *) .toc .list .item .text .category, .main:is(body.event *) .toc .list .item .text .category, .main:is(body.blog *) .toc .list .item .text .category {
  display: grid;
  place-items: center;
  width: 0.84rem;
  height: 0.27rem;
  background: #2F406E;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.12rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.news *) .toc .list .item .text .category, .main:is(body.post-type-archive-info *) .toc .list .item .text .category, .main:is(body.event *) .toc .list .item .text .category, .main:is(body.blog *) .toc .list .item .text .category {
    position: absolute;
    top: 0.3rem;
    left: 0;
  }
}
.main:is(body.news *) .toc .list .item .text .date, .main:is(body.post-type-archive-info *) .toc .list .item .text .date, .main:is(body.event *) .toc .list .item .text .date, .main:is(body.blog *) .toc .list .item .text .date {
  margin: 0.14rem 0 0;
  font-size: 0.14rem;
  line-height: 0.2rem;
}
.main:is(body.news *) .toc .list .item .text .title, .main:is(body.post-type-archive-info *) .toc .list .item .text .title, .main:is(body.event *) .toc .list .item .text .title, .main:is(body.blog *) .toc .list .item .text .title {
  margin: 0.16rem 0 0;
  font-size: 0.18rem;
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 780px) {
  .main:is(body.news *) .toc .list .item .text .title, .main:is(body.post-type-archive-info *) .toc .list .item .text .title, .main:is(body.event *) .toc .list .item .text .title, .main:is(body.blog *) .toc .list .item .text .title {
    padding-right: 0.4rem;
    font-size: 0.16rem;
  }
}
.main:is(body.news *) .toc .list .item::after, .main:is(body.post-type-archive-info *) .toc .list .item::after, .main:is(body.event *) .toc .list .item::after, .main:is(body.blog *) .toc .list .item::after {
  content: "";
  display: block;
  width: 0.15rem;
  height: 0.2rem;
  position: absolute;
  top: calc(50% - 0.1rem);
  right: 0.19rem;
  background: url(../imgs/arw02.svg) 0 50%/100% auto no-repeat;
}
@media (prefers-reduced-motion: no-preference) {
  .main:is(body.news *) .toc .list .item::after, .main:is(body.post-type-archive-info *) .toc .list .item::after, .main:is(body.event *) .toc .list .item::after, .main:is(body.blog *) .toc .list .item::after {
    transition: translate 0.4s;
  }
}
@media screen and (max-width: 780px) {
  .main:is(body.news *) .toc .list .item::after, .main:is(body.post-type-archive-info *) .toc .list .item::after, .main:is(body.event *) .toc .list .item::after, .main:is(body.blog *) .toc .list .item::after {
    top: auto;
    bottom: 0.3rem;
    right: 0;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .main:is(body.news *) .toc .list .item:hover::after, .main:is(body.post-type-archive-info *) .toc .list .item:hover::after, .main:is(body.event *) .toc .list .item:hover::after, .main:is(body.blog *) .toc .list .item:hover::after {
    translate: 50% 0 0;
  }
}
.main:is(body.news *) .toc .pagination, .main:is(body.post-type-archive-info *) .toc .pagination, .main:is(body.event *) .toc .pagination, .main:is(body.blog *) .toc .pagination {
  margin: 1.36rem 0 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.news *) .toc .pagination, .main:is(body.post-type-archive-info *) .toc .pagination, .main:is(body.event *) .toc .pagination, .main:is(body.blog *) .toc .pagination {
    margin: 0.6rem 0 0;
  }
}
.main:is(body.news *) .append, .main:is(body.post-type-archive-info *) .append, .main:is(body.event *) .append, .main:is(body.blog *) .append {
  padding: 0;
}
.main:is(body.news *) .append .contact, .main:is(body.post-type-archive-info *) .append .contact, .main:is(body.event *) .append .contact, .main:is(body.blog *) .append .contact {
  margin: 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-info *) .pageHeader .breadCrumb {
    display: block;
    padding-top: 1rem;
  }
  .main:is(body.single-info *) .pageHeader .breadCrumb li {
    display: inline;
  }
}
.main:is(body.single-info *) .body {
  margin: 0.4rem 0 1.48rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-info *) .body {
    margin: 0.16rem 0 0.64rem;
  }
}
.main:is(body.single-info *) .post .prepend .category {
  display: grid;
  place-items: center;
  width: 1.08rem;
  height: 0.3rem;
  background: #2F406E;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.14rem;
  font-weight: 700;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-info *) .post .prepend .category {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 0 0.1rem;
    height: 0.28rem;
    font-size: 0.12rem;
  }
}
.main:is(body.single-info *) .post .prepend .title {
  margin: 0.4rem 0 0;
  font-size: 0.28rem;
  font-weight: 600;
  line-height: 0.4rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-info *) .post .prepend .title {
    margin: 0.14rem 0 0;
    font-size: 0.24rem;
    line-height: 1.5;
  }
}
.main:is(body.single-info *) .post .body {
  margin: 0.04rem 0 0.32rem;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-info *) .post .body {
    margin: 0 0 0.4rem;
  }
}
.main:is(body.single-info *) .post .body .image,
.main:is(body.single-info *) .post .body .wp-block-image,
.main:is(body.single-info *) .post .body p {
  margin: 0.4rem 0;
}
@media screen and (max-width: 780px) {
  .main:is(body.single-info *) .post .body .image,
.main:is(body.single-info *) .post .body .wp-block-image,
.main:is(body.single-info *) .post .body p {
    margin: 0.25rem 0;
  }
}
.main:is(body.single-info *) .post .append {
  display: block;
}
.main:is(body.single-info *) .post .append .btn--more {
  margin: 0 auto;
}
.main:is(body.single-info *) .append {
  display: grid;
  margin: 0;
  padding: 0;
  background: none;
}
.main:is(body.single-info *) .append::before {
  content: "";
  grid-area: 1/1;
  background: #F2ECE4;
  mix-blend-mode: multiply;
}
.main:is(body.single-info *) .append section.contact {
  margin: 0;
}

.gMenu,
.gFooter {
  color: #fff;
}
.gMenu .wrap,
.gFooter .wrap {
  max-width: 12rem;
}
.gMenu .navigation,
.gFooter .navigation {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 780px) {
  .gMenu .navigation,
.gFooter .navigation {
    display: grid;
    grid-template-rows: repeat(3, auto);
    grid-template-columns: calc(50% - 0.1rem);
    gap: 0.3rem 0.2rem;
  }
}
.gMenu .navigation .list--01, .gMenu .navigation .list--02, .gMenu .navigation .list--03, .gMenu .navigation .list--04,
.gFooter .navigation .list--01,
.gFooter .navigation .list--02,
.gFooter .navigation .list--03,
.gFooter .navigation .list--04 {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  font-size: 0.18rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 0.25rem;
}
@media screen and (max-width: 780px) {
  .gMenu .navigation .list--01, .gMenu .navigation .list--02, .gMenu .navigation .list--03, .gMenu .navigation .list--04,
.gFooter .navigation .list--01,
.gFooter .navigation .list--02,
.gFooter .navigation .list--03,
.gFooter .navigation .list--04 {
    font-size: 0.14rem;
  }
}
.gMenu .navigation .list--01,
.gFooter .navigation .list--01 {
  order: 0;
}
@media screen and (max-width: 780px) {
  .gMenu .navigation .list--01,
.gFooter .navigation .list--01 {
    grid-row: 1/2;
    grid-column: 1/2;
  }
}
.gMenu .navigation .list--02,
.gFooter .navigation .list--02 {
  order: 2;
}
@media screen and (max-width: 780px) {
  .gMenu .navigation .list--02,
.gFooter .navigation .list--02 {
    grid-row: 2/3;
    grid-column: 1/2;
  }
}
.gMenu .navigation .list--03,
.gFooter .navigation .list--03 {
  order: 1;
}
@media screen and (max-width: 780px) {
  .gMenu .navigation .list--03,
.gFooter .navigation .list--03 {
    grid-row: 1/2;
    grid-column: 2/3;
  }
}
.gMenu .navigation .list--04,
.gFooter .navigation .list--04 {
  order: 3;
}
@media screen and (max-width: 780px) {
  .gMenu .navigation .list--04,
.gFooter .navigation .list--04 {
    grid-row: 2/3;
    grid-column: 2/3;
  }
}
.gMenu .navigation .list--05,
.gFooter .navigation .list--05 {
  order: 4;
  width: 100%;
  margin: 0.5rem 0 0;
  border-top: 0.01rem solid #999;
  padding: 0.3rem 0 0;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 0.13rem;
  line-height: 0.33rem;
}
@media screen and (max-width: 780px) {
  .gMenu .navigation .list--05,
.gFooter .navigation .list--05 {
    grid-row: 3/4;
    grid-column: 1/3;
    margin: 0;
    font-size: 0.12rem;
  }
}
.gMenu .contact,
.gFooter .contact {
  display: flex;
  margin: 0.7rem 0 0;
}
@media screen and (max-width: 780px) {
  .gMenu .contact,
.gFooter .contact {
    display: block;
    margin: 0.4rem 0 0;
  }
}
.gMenu .contact li,
.gFooter .contact li {
  width: 4rem;
}
@media screen and (max-width: 780px) {
  .gMenu .contact li,
.gFooter .contact li {
    width: auto;
  }
}
.gMenu .contact li:nth-child(n+2) a,
.gFooter .contact li:nth-child(n+2) a {
  border-left-style: none;
}
@media screen and (max-width: 780px) {
  .gMenu .contact li:nth-child(n+2) a,
.gFooter .contact li:nth-child(n+2) a {
    border-top-style: none;
    border-left-style: solid;
  }
}
.gMenu .contact a,
.gFooter .contact a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: 1.2rem;
  border: 0.01rem solid #fdfcf8;
  color: #fdfcf8;
  line-height: 1.8;
}
.gMenu .contact a .name,
.gFooter .contact a .name {
  font-size: 0.22rem;
}
@media screen and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .gMenu .contact a,
.gFooter .contact a {
    transition: 0.4s;
    transition-property: background-color, color;
  }
}
@media screen and (hover: hover) and (pointer: fine) {
  .gMenu .contact a:hover,
.gFooter .contact a:hover {
    background-color: #fdfcf8;
    color: #222;
  }
}
.gMenu .company,
.gFooter .company {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  margin: 0.68rem 0 0;
}
@media screen and (max-width: 780px) {
  .gMenu .company,
.gFooter .company {
    display: block;
    margin: 0.7rem 0 0;
  }
}
.gMenu .company .logo,
.gFooter .company .logo {
  width: 0.8rem;
}
@media screen and (max-width: 780px) {
  .gMenu .company .logo,
.gFooter .company .logo {
    width: 1.1rem;
    margin: 0 auto;
  }
}
.gMenu .company .address,
.gFooter .company .address {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 0.14rem;
  letter-spacing: 0.05em;
  line-height: 1.8;
}
@media screen and (max-width: 780px) {
  .gMenu .company .address,
.gFooter .company .address {
    flex-direction: column;
    margin: 0.2rem 0 0;
    text-align: center;
  }
}
@media screen and (max-width: 780px) {
  .gMenu .company .address span,
.gFooter .company .address span {
    display: block;
  }
}
.gMenu .company .address span:nth-child(n+2)::before,
.gFooter .company .address span:nth-child(n+2)::before {
  content: "/";
  margin: 0 0.5em;
}
@media screen and (max-width: 780px) {
  .gMenu .company .address span:nth-child(n+2)::before,
.gFooter .company .address span:nth-child(n+2)::before {
    content: none;
  }
}
.gMenu .company .sns,
.gFooter .company .sns {
  width: 0.2rem;
  line-height: 1px;
}
@media screen and (max-width: 780px) {
  .gMenu .company .sns,
.gFooter .company .sns {
    margin: 0.4rem auto 0;
  }
}
.gMenu .copyright,
.gFooter .copyright {
  margin: 0.5rem 0 0;
  font-family: "Lato", sans-serif;
  font-size: 0.12rem;
  font-size: 400;
  line-height: 0.16rem;
  text-align: center;
}
@media screen and (max-width: 780px) {
  .gMenu .copyright,
.gFooter .copyright {
    margin: 0.4rem 0 0;
  }
}

.gMenu {
  box-sizing: border-box;
  width: 100%;
  height: 100vh;
  padding: 1rem 0;
  position: fixed;
  top: 0;
  left: 0;
  background: #2F406E;
  z-index: 8900;
  overflow-y: scroll;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
          clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}
@media (prefers-reduced-motion: no-preference) {
  .gMenu {
    transition: -webkit-clip-path 0.4s;
    transition: clip-path 0.4s;
    transition: clip-path 0.4s, -webkit-clip-path 0.4s;
  }
}
.gMenu:is(body:has(.gMenuHelper:checked) *) {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.gMenu .btn--menu {
  position: fixed;
  top: 0.4rem;
  right: 0.44rem;
}
@media screen and (max-width: 780px) {
  .gMenu .btn--menu {
    right: 0;
  }
}
.gMenu .btn--menu .bar::before, .gMenu .btn--menu .bar::after {
  background: #fff;
}
.gMenu .gMenuHelper {
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
}

.gFooter {
  padding: 1rem 0 0.54rem;
  background: #000;
}
@media screen and (max-width: 780px) {
  .gFooter {
    padding: 0.64rem 0 1rem;
  }
}
.gFooter .cv {
  display: none;
}
@media screen and (max-width: 780px) {
  .gFooter .cv {
    display: flex;
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 8000;
  }
  .gFooter .cv li {
    width: 50%;
  }
  .gFooter .cv a {
    height: 0.7rem;
    gap: 0.1rem;
  }
  .gFooter .cv a::before {
    width: 0.2rem;
  }
}
/*# sourceMappingURL=common.css.map */