@charset "UTF-8";
:root {
  --html-font-size: 6vw;
}

* {
  box-sizing: border-box;
}

html {
  line-height: 1.7;
  font-size: clamp(12px, 1.4545454545vw, 20px);
  font-family: "Noto Sans JP", sans-serif;
  color: #333333;
  scroll-behavior: smooth;
}

#appguard {
  margin: unset;
  overflow-wrap: anywhere; /* 収まらない場合に折り返す */
  word-break: normal; /* 単語の分割はデフォルトに依存 */
  line-break: strict; /* 禁則処理を厳格に適用 */
}
#appguard img {
  display: block;
  max-width: 100%;
  height: auto;
}
#appguard a {
  color: #0996dc;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
#appguard .plist .caution {
  width: 98%;
  margin: 1cqw auto;
  padding: 0.1cqw 1cqw;
  background-color: #fffcdb;
  border-radius: 0.5cqw;
  border: 1px solid #e5e3c5;
  text-align: center;
}
#appguard .container {
  container-type: inline-size;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: clamp(375px, 100%, 1100px);
  margin: 0 auto;
  padding: clamp(8px, 1.5cqw, 16px);
}
#appguard .container h1 {
  font-size: 4cqw;
  line-height: 1;
}
@media screen and (max-width: 800px) {
  #appguard .container h1 {
    font-size: 8cqw;
  }
}
#appguard .container h1 > ruby > rt {
  font-size: 0.4em;
}
#appguard .container h2 {
  margin-top: 6cqw;
}
#appguard .container h3 {
  margin-top: unset;
}
#appguard .container > p {
  text-align: center;
}
#appguard header {
  position: relative;
  z-index: 2;
  box-shadow: 0 8px 8px rgba(51, 51, 51, 0.15);
}
#appguard header > section > .container > img {
  width: 15cqw;
}
#appguard footer > section {
  background-color: rgba(51, 51, 51, 0.01);
}
#appguard footer > section > .container > ul {
  all: unset;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 3cqw;
  margin: 3cqw auto;
}
#appguard footer > section > .container > ul > li {
  all: unset;
}
#appguard footer > section > .container > ul > li > a {
  text-decoration: unset;
}
#appguard footer > section > .container > p {
  text-align: center;
}
#appguard main {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
}
#appguard main > section#sec00 {
  height: fit-content;
}
#appguard main > section#sec00 > .container {
  align-items: flex-start;
}
#appguard main > section#sec00 > .container > * {
  width: 54cqw;
}
#appguard main > section#sec00 > .container > h2 {
  width: fit-content;
  margin-top: 2cqw;
  padding: 0.5cqw 1.5cqw;
  border: 0.4cqw solid #ffffff;
  border-radius: 1cqw;
  background-color: #ff3748;
}
#appguard main > section#sec00 > .container > h2:has(> a):hover {
  opacity: 0.8;
}
#appguard main > section#sec00 > .container > h2 > a {
  font-size: 2cqw;
  color: #ffe810;
  text-decoration: unset;
}
#appguard main > section#sec00 > .container > h2 > a > span {
  font-size: 3cqw;
  color: #ffffff;
}
#appguard main > section#sec00 > .container > p {
  text-align: left;
}
@media screen and (min-width: 1100px) {
  #appguard main > section#sec00 {
    background: transparent url(../images/logo_shop_large.webp) no-repeat right calc(-1000px + 38.4vw) top/contain;
  }
}
@media screen and (max-width: 1100px) {
  #appguard main > section#sec00 {
    background: transparent url(../images/logo_shop_large.webp) no-repeat right -38vw top/contain;
  }
}
@media screen and (max-width: 800px) {
  #appguard main > section#sec00 {
    background: transparent url(../images/logo_shop_large.webp) no-repeat right top/contain;
    padding-top: 41cqw;
  }
  #appguard main > section#sec00 > .container > * {
    width: 100%;
  }
  #appguard main > section#sec00 > .container > h1 {
    text-align: center;
  }
  #appguard main > section#sec00 > .container > h2 {
    width: fit-content;
    margin: 0 auto;
    padding-inline: 3cqw;
    text-align: center;
  }
  #appguard main > section#sec00 > .container > h2 > a > span {
    font-size: 4cqw;
  }
  #appguard main > section#sec00 > .container > p {
    text-align: center;
  }
}
#appguard main > section#sec01 {
  box-shadow: 0 -8px 8px rgba(51, 51, 51, 0.15);
}
#appguard main > section#sec01 > .container > img {
  display: block;
  max-width: 100%;
  margin-top: 32px;
}
#appguard footer svg {
  max-width: 400px;
}
#appguard footer a {
  color: white;
} /*# sourceMappingURL=appguard.css.map */




/* 2026/01/28 */
#appguard .logo img {
  width: 350px !important;
}
#appguard #section2 {
  padding: 80px 0 0 !important;
}

#appguard #section2 .warp {
  width:100%;
}

#appguard #section2 .warp .sec1 {
  font-size:16px;
}

#appguard #section2 .warp .sec2 table {
  td,th {
    padding: 24px 8px !important;
    text-align: center;
  }
}

#appguard #section2 .warp .sec3 + h3 + .sec3 {
}

#appguard #section2 .warp a img + span {
  display: none !important;
}

#appguard #section2 .warp a {
  &:hover {
    opacity:1 !important;
    cursor:default
  }
}

#appguard #requirements {
  .tab_content {
    border-radius: 6px !important;
  }
  table {
    margin-bottom: unset !important;
  }
}

.splide__pagination {
  bottom:30px;
}

main #products #section2 h3 span {
  padding-bottom: 6px !important;
}

main #products #section2 .sec1,
main #products #section2 .sec2,
main #products #section2 .sec3 {
  margin-bottom:64px !important;
}

.container-fluid.system-youken {
  margin-top:unset !important;
}

main #top-faq .toggle_title p {
  font-size: 24px !important;
  line-height: 1 !important;
}