:root {
  --font-body: YuGothic, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  --font-mono: "Fira Mono", monospace;
  --color-blue: #0100e0;
  --fluid: .5vw;
  --spacing-inline: 20px
}
@media (min-width:781px) {
  :root {
    --spacing-inline: 50px
  }
}
html {
  font-size: calc(var(--fluid)*1px);
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility
}
body {
  background-attachment: fixed;
  background-color: #e8e8e8;
  font-family: var(--font-body);
  min-height: 100vh
}
*, body {
  margin: 0
}
* {
  padding: 0
}
a {
  color: inherit
}
a, a:hover {
  text-decoration: inherit
}
h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit
}
pre {
  background-color: #ffffff73;
  border-radius: 3px;
  box-shadow: 2px 2px 6px #ffffff40;
  color: var(--color-text);
  font-family: var(--font-mono);
  font-size: 1rem;
  overflow-x: auto;
  padding: .5em
}
.text-column {
  display: flex;
  flex: .6;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
  max-width: 48rem
}
li {
  list-style: none
}
button, input, textarea {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: innherit;
  text-decoration: inherit;
  text-transform: inherit
}
button, input, select, textarea {
  background-color: transparent;
  border: none;
  font-size: 1em;
  margin: 0;
  outline: none;
  padding: 0
}
button, input[type=button], input[type=reset], input[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}
button:focus:not(:focus-visible), input:focus:not(:focus-visible), select:focus:not(:focus-visible), textarea:focus:not(:focus-visible) {
  outline: none
}
img, svg {
  max-width: 100%;
  vertical-align: bottom
}
svg {
  overflow: visible
}
.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px
}
.anchor {
  display: block;
  height: 0;
  position: relative;
  top: -150rem
}
.pc {
  display: none
}
@media (min-width:781px) {
  .pc {
    display: unset
  }
  .sp {
    display: none !important
  }
}
header.svelte-m9wmou.svelte-m9wmou {
  left: 0;
  position: absolute;
  top: 0;
  transform: translateY(-100%);
  width: 100%;
  z-index: 16
}
header.show.svelte-m9wmou.svelte-m9wmou {
  transform: translateY(0);
  transition: transform .3s ease-out
}
.header-inner.svelte-m9wmou.svelte-m9wmou {
  align-items: center;
  border-bottom: 1px solid #fff;
  display: flex;
  height: 52px;
  justify-content: space-between;
  margin: 0 var(--spacing-inline)
}
@media (min-width:781px) {
  .header-inner.svelte-m9wmou.svelte-m9wmou {
    height: 85px
  }
}
.viewNav.svelte-m9wmou .header-inner.svelte-m9wmou {
  border-bottom-color: #c1c1c1
}
.logo.svelte-m9wmou.svelte-m9wmou {
  height: 15px
}
@media (min-width:781px) {
  .logo.svelte-m9wmou.svelte-m9wmou {
    height: 25px
  }
}
.nav-toggle.svelte-m9wmou.svelte-m9wmou {
  aspect-ratio: 1;
  cursor: pointer;
  height: 52px;
  position: fixed;
  right: var(--spacing-inline);
  top: 0;
  transform: translate(12px)
}
@media (min-width:781px) {
  .nav-toggle.svelte-m9wmou.svelte-m9wmou {
    height: 80px;
    transform: translate(24px)
  }
}
.nav-toggle.svelte-m9wmou span.svelte-m9wmou {
  aspect-ratio: 1;
  background: #0100e0;
  border-radius: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 27px
}
@media (min-width:781px) {
  .nav-toggle.svelte-m9wmou span.svelte-m9wmou {
    width: 38px
  }
}
.nav-toggle.svelte-m9wmou span.svelte-m9wmou:after, .nav-toggle.svelte-m9wmou span.svelte-m9wmou:before {
  background: #fff;
  content: "";
  height: 1px;
  left: 50%;
  position: absolute;
  top: 50%;
  width: 12px
}
@media (min-width:781px) {
  .nav-toggle.svelte-m9wmou span.svelte-m9wmou:after, .nav-toggle.svelte-m9wmou span.svelte-m9wmou:before {
    height: 2px;
    width: 21px
  }
}
.nav-toggle.svelte-m9wmou span.svelte-m9wmou:before {
  transform: translate(-50%, -50%) translateY(-2px)
}
@media (min-width:781px) {
  .nav-toggle.svelte-m9wmou span.svelte-m9wmou:before {
    transform: translate(-50%, -50%) translateY(-3px)
  }
}
.nav-toggle.svelte-m9wmou span.svelte-m9wmou:after {
  transform: translate(-50%, -50%) translateY(2px)
}
@media (min-width:781px) {
  .nav-toggle.svelte-m9wmou span.svelte-m9wmou:after {
    transform: translate(-50%, -50%) translateY(3px)
  }
}
.viewNav.svelte-m9wmou .nav-toggle span.svelte-m9wmou:before {
  transform: translate(-50%, -50%) rotate(30deg)
}
.viewNav.svelte-m9wmou .nav-toggle span.svelte-m9wmou:after {
  transform: translate(-50%, -50%) rotate(-30deg)
}
footer.svelte-u4mma6.svelte-u4mma6 {
  background: #333;
  color: #fff;
  padding: 25px 0 90px;
  position: relative
}
ul.svelte-u4mma6.svelte-u4mma6 {
  align-items: baseline;
  display: flex;
  justify-content: center
}
@media (max-width:780px) {
  ul.svelte-u4mma6.svelte-u4mma6 {
    align-items: center;
    flex-flow: column nowrap;
    gap: 30px
  }
}
li.svelte-u4mma6.svelte-u4mma6 {
  margin: 0 30px
}
li.svelte-u4mma6 a.svelte-u4mma6 {
  display: block;
  font-size: .6875rem;
  line-height: 1;
  text-align: center
}
li.svelte-u4mma6 figure.svelte-u4mma6 {
  margin-bottom: 15px
}
li.svelte-u4mma6.svelte-u4mma6:first-child {
  width: 160px
}
li.svelte-u4mma6.svelte-u4mma6:nth-child(2) {
  width: 160px;
  width: 250px
}
.address.svelte-u4mma6.svelte-u4mma6 {
  border-top: 1px solid hsla(0, 0%, 100%, .25);
  font-size: .875rem;
  line-height: 1.8;
  margin-top: 30px;
  padding-top: 15px;
  text-align: center
}
.address.svelte-u4mma6 strong.svelte-u4mma6 {
  display: block;
  font-weight: 600
}
.address.svelte-u4mma6 a.svelte-u4mma6 {
  border-bottom: 1px solid #adadad;
  color: #fff
}
.copyright.svelte-u4mma6.svelte-u4mma6 {
  color: #fff;
  font-size: .625rem;
  line-height: 1.8;
  padding: 15px;
  text-align: center
}
:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert
}
*, :after, :before {
  box-sizing: border-box
}
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none
}
a, button {
  cursor: revert
}
menu, ol, summary, ul {
  list-style: none
}
img {
  max-block-size: 100%;
  max-inline-size: 100%
}
table {
  border-collapse: collapse
}
input, textarea {
  -webkit-user-select: auto
}
textarea {
  white-space: revert
}
meter {
  -webkit-appearance: revert;
  -moz-appearance: revert;
  appearance: revert
}
:where(pre) {
  all: revert;
  box-sizing: border-box
}
::-moz-placeholder {
  color: unset
}
::placeholder {
  color: unset
}
:where([hidden]) {
  display: none
}
:where([contenteditable]:not([contenteditable=false])) {
  -webkit-line-break: after-white-space;
  overflow-wrap: break-word;
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  -webkit-user-select: auto
}
:where([draggable=true]) {
  -webkit-user-drag: element
}
:where(dialog:modal) {
  all: revert;
  box-sizing: border-box
}
::-webkit-details-marker {
  display: none
}