@charset "UTF-8";
/*共通部分
-----------------------------------------*/
/* reset */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, sub, sup, var, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  list-style: none;
  font-style: normal;
  font-weight: 500;
}

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

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

@blockquote :before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}
a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 0 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/* reset end */
html {
  font-size: 100%;
  margin-top: 0px !important;
}

img {
  display: block;
}

hr {
  border: none !important;
}

a {
  text-decoration: none;
  color: #000;
  cursor: pointer;
}

input[type=submit] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
}

button {
  color: #000;
  cursor: pointer;
}

html, body, header, nav, a, p {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.9;
  color: #000;
}

html {
  scroll-behavior: smooth;
}

body {
  position: relative;
}
body.active {
  overflow: hidden;
}

#wrapper {
  overflow: hidden;
  width: 100%;
}

main {
  overflow: hidden;
  width: 100%;
}

@media (max-width: 800px) {
  .sp-off {
    display: none !important;
  }
}
@media (min-width: 801px) {
  .pc-off {
    display: none !important;
  }
}
@keyframes hover_star_left {
  0% {
    transform: translateX(0%) scale(0) translateY(0%);
  }
  50% {
    transform: translateX(-60%) scale(1) translateY(-60%) rotate(180deg) rotateY(180deg);
    opacity: 1;
  }
  100% {
    transform: translateX(-120%) scale(1) translateY(-120%) rotate(360deg) rotateY(360deg);
    opacity: 0;
  }
}
@keyframes hover_star_right {
  0% {
    transform: translateX(0%) scale(0) translateY(0%);
  }
  50% {
    transform: translateX(60%) scale(1) translateY(-60%) rotate(180deg) rotateY(180deg);
    opacity: 1;
  }
  100% {
    transform: translateX(120%) scale(1) translateY(-120%) rotate(360deg) rotateY(360deg);
    opacity: 0;
  }
}
.common__bt {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  border-radius: 50px;
  text-decoration: underline;
  box-sizing: border-box;
  position: relative;
  transition: all 0.3s;
}
.common__bt img {
  display: block;
  height: 1.4em;
  width: auto;
  transition: all 0.3s;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: initial;
  right: 10px;
  margin: auto;
}
@media (max-width: 800px) {
  .common__bt img {
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: initial;
    right: 3%;
    margin: auto;
  }
}
.common__bt--big {
  width: min(250px, 100%);
  padding: 1em 0px;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
}
@media (max-width: 800px) {
  .common__bt--big {
    padding: 0.7em 4em;
    width: min(300px, 100%);
  }
}
.common__bt--modal {
  width: min(350px, 80%);
  padding: 1em 0px;
  text-align: center;
  line-height: 1.3;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
}
@media (max-width: 800px) {
  .common__bt--modal {
    padding: 0.7em 0em;
  }
}
.common__bt--footer {
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.2em 4em;
  border: solid 1px #fff;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
}
.common__bt--company {
  width: min(300px, 100%);
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  border: solid 1px #000;
  letter-spacing: 0;
  padding: 0.2em 2em;
}
.common__bt--contact {
  width: min(250px, 100%);
  padding: 0.8em 0px;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
}
@media (max-width: 800px) {
  .common__bt--contact {
    padding: 0.6em 4em;
  }
}
.common__bt--contact img {
  height: 2em;
  width: auto;
}
.common__bt--white {
  background-color: #fff;
  border: solid 1px #000;
}
.common__bt--black {
  background-color: #333333;
  color: #fff;
}
.common__bt--color01 {
  background-color: #FFEDB4;
}
.common__bt--color02 {
  background-color: #F7CF50;
}
.common__bt--color03 {
  background-color: #C3C3C3;
}
.common__bt--color04 {
  background-color: #676767;
  color: #fff;
}
.common__bt--color05 {
  background-color: #7175A3;
  color: #fff;
}
.common__bt--color06 {
  background-color: #C1EFAD;
}
.common__bt--color07 {
  background-color: #125779;
  color: #fff;
}
.common__bt--instagram {
  background-color: #4f5bd5;
  box-shadow: 0px 0px 10px #000;
  color: #fff;
  background-image: linear-gradient(45deg, #feda75 0%, #fa7e1e 25%, #d62976 50%, #962fbf 75%, #4f5bd5 100%);
}
.common__bt::before {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: -5%;
  right: initial;
  margin: auto;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  background-image: url("../img/star.svg");
  width: 1em;
  height: 1em;
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0;
}
.common__bt::after {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: initial;
  right: -5%;
  margin: auto;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  background-image: url("../img/star.svg");
  width: 1em;
  height: 1em;
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0;
}
.common__bt:hover {
  box-shadow: 0px 0px 5px #000;
  transition: all 0.3s;
  text-decoration: none;
}
.common__bt:hover::before {
  animation: hover_star_left 0.4s ease-out;
  animation-fill-mode: forwards;
  opacity: 1;
}
.common__bt:hover::after {
  animation: hover_star_right 0.4s ease-out;
  animation-fill-mode: forwards;
  opacity: 1;
}
.common__bt:hover img {
  transform: rotate(360deg);
  transition: all 0.3s;
}

.common__title {
  font-size: clamp(18px, 15.4285714286px + 0.0085714286 * 100vw, 24px);
}
.common__title h2 {
  font-weight: 600;
}
.common__title h2 span {
  display: block;
  line-height: 1;
  margin: 0 auto;
  text-align: center;
  font-weight: 600;
  font-size: clamp(24px, 22.2857142857px + 0.0057142857 * 100vw, 28px);
}
.common__title img {
  display: block;
  width: auto;
  height: 2em;
  -o-object-fit: contain;
     object-fit: contain;
}
.common__title--flex {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.3em;
}
.common__title--center img {
  margin: 0 auto;
}
.common__title--center h2 {
  text-align: center;
}
@media (max-width: 800px) {
  .common__title--spflex {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 0.3em;
  }
  .common__title--spflex img {
    margin: initial;
  }
  .common__title--spflex h2 {
    text-align: left;
  }
}

.common__title02 {
  width: min(100%, 500px);
  margin: 0 auto;
  background-color: #333333;
  line-height: 1.3;
  padding: 0.6em 0px;
  font-size: clamp(18px, 15.4285714286px + 0.0085714286 * 100vw, 24px);
  border-radius: 1em 0px 1em 0px;
}
.common__title02 h1 {
  color: #fff;
  text-align: center;
  font-weight: 500;
}
.common__title02 h1 span {
  display: block;
  font-weight: 500;
  text-align: center;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
}

.common__subtitle {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin: 0 auto;
  font-size: clamp(18px, 15.4285714286px + 0.0085714286 * 100vw, 24px);
  text-decoration: underline;
  text-decoration-thickness: 0.8em;
  text-underline-offset: -0.4em;
  text-decoration-color: #DEDEDE;
  font-weight: 700;
  margin-top: 1em;
  text-align: center;
}

.common__pagetop {
  position: relative;
  z-index: 3;
  margin-top: 50px;
  margin-bottom: 50px;
}

.common__btarea {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-top: 30px;
  margin-bottom: 30px;
}
@media (max-width: 800px) {
  .common__btarea {
    display: block;
  }
  .common__btarea .common__bt {
    margin: 0 auto !important;
    margin-bottom: 20px !important;
  }
}

.common__ul li {
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  margin-bottom: 1em;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1em;
}
@media (max-width: 800px) {
  .common__ul li {
    display: block;
  }
}
.common__ul li p {
  font-size: inherit;
}
.common__ul li p:first-child {
  display: block;
  width: 6em;
}
@media (max-width: 800px) {
  .common__ul li p:first-child {
    width: auto;
  }
}
.common__ul li p:last-child {
  display: block;
  width: calc(100% - 8em);
}
@media (max-width: 800px) {
  .common__ul li p:last-child {
    width: auto;
  }
}
.common__ul li hr {
  display: block;
  height: 1px;
  border: none;
  background-color: #000;
  width: 16px;
  margin-top: 0.3em;
  margin-bottom: 0.3em;
}

#kv {
  width: 100%;
  height: 600px;
  position: relative;
}
@media (max-width: 800px) {
  #kv {
    height: 400px;
  }
}
#kv img {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.pc__bg {
  width: 100%;
  margin: 0 auto;
  position: absolute;
  left: -10%;
  right: -10%;
  margin: auto;
  z-index: -1;
  overflow: hidden;
}
.pc__bg div {
  height: 1060px;
  position: relative;
  margin: 0 auto;
  width: min(1400px, 90%);
}
.pc__bg div img {
  width: 400px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  animation: float-drift ease-in-out 2s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  pointer-events: none;
  --duration: 6s;
  --tx1: 8px;
  --ty1: -6px;
  --r1: -2deg;
  --tx2: -6px;
  --ty2: 10px;
  --r2: 2deg;
  --tx3: 10px;
  --ty3: -8px;
  --r3: -1deg;
  animation-duration: var(--duration);
}
.pc__bg div img:nth-child(1) {
  position: absolute;
  top: 10%;
  bottom: initial;
  left: -20%;
  right: initial;
  margin: auto;
}
.pc__bg div img:nth-child(2) {
  animation-delay: 0.7s;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: initial;
  right: -20%;
  margin: auto;
}
.pc__bg div img:nth-child(3) {
  animation-delay: 1.6s;
  position: absolute;
  top: initial;
  bottom: 0px;
  left: -20%;
  right: initial;
  margin: auto;
}

@keyframes float-drift {
  0% {
    transform: translate(0px, 0px) rotate(0deg) scale(1);
  }
  25% {
    transform: translate(var(--tx1, 8px), var(--ty1, -6px)) rotate(var(--r1, -2deg)) scale(1.01);
  }
  50% {
    transform: translate(var(--tx2, -6px), var(--ty2, 10px)) rotate(var(--r2, 2deg)) scale(0.995);
  }
  75% {
    transform: translate(var(--tx3, 10px), var(--ty3, -8px)) rotate(var(--r3, -1deg)) scale(1.005);
  }
  100% {
    transform: translate(0px, 0px) rotate(0deg) scale(1);
  }
}
@keyframes star {
  0% {
    transform: translate(0px, 0px) rotate(0deg) scale(1.4);
  }
  100% {
    transform: translate(0px, 0px) rotate(360deg) scale(1);
  }
}
.fr01 {
  width: min(450px, 90%);
  margin: 0 auto;
  margin-top: 30px;
  position: relative;
  z-index: 2;
}
.fr01 .fr01__star {
  position: absolute;
  top: -80%;
  bottom: initial;
  left: -20%;
  right: -20%;
  margin: auto;
  z-index: -2;
  display: block;
  width: 140%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  animation: star 50s linear infinite;
}
.fr01 .fr01__inner {
  width: 100%;
  margin-bottom: 30px;
}
.fr01 .fr01__inner a {
  display: block;
  margin-bottom: 1em;
  width: 100%;
}
.fr01 .fr01__inner a time {
  font-size: clamp(10px, 8.2857142857px + 0.0057142857 * 100vw, 14px);
}
.fr01 .fr01__inner a p {
  font-size: clamp(14px, 12.2857142857px + 0.0057142857 * 100vw, 18px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1em;
  text-decoration: underline;
  line-height: 1.3;
  font-weight: 500;
}
.fr01 .fr01__inner a p img {
  display: block;
  width: 1.2em;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  transition: transform 0.3s;
}
.fr01 .fr01__inner a:hover p {
  text-decoration: underline;
}
.fr01 .fr01__inner a:hover p img {
  transform: translateX(1em);
  transition: transform 0.3s;
}
.fr01 .common__bt {
  margin: 0 auto;
}

.fr02 {
  margin-top: 70px;
}
.fr02 .fr02__inner {
  width: 90%;
  margin: 0 auto;
}
.fr02 .fr02__inner .fr02__txt {
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  text-align: center;
  margin-top: 0.6em;
  margin-bottom: 1.3em;
}
@media (max-width: 800px) {
  .fr02 .fr02__inner .fr02__txt {
    text-align: left;
  }
}
.fr02 .fr02__inner .common__bt {
  margin: 0 auto;
}
@media (max-width: 800px) {
  .fr02--spflex {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 2%;
    padding-left: 5%;
    box-sizing: border-box;
    position: relative;
  }
  .fr02--spflex .fr02__inner {
    width: 70%;
    margin: initial;
  }
  .fr02--spflex .fr02__inner .fr02__txt {
    text-align: left;
  }
  .fr02--spflex .fr02__inner .common__bt {
    width: 100%;
  }
  .fr02--spflex .fr02__spimg {
    display: block;
    width: 58%;
    margin-right: -29%;
    -o-object-fit: contain;
       object-fit: contain;
  }
}

.fr03 {
  margin-top: 70px;
}
.fr03 .fr03__txt {
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  margin-top: 0.6em;
  margin-bottom: 1.3em;
}
.fr03 .fr03__txt--center {
  text-align: center;
}
.fr03 .fr03__flex {
  width: min(1000px, 100%);
  margin: 0 auto;
}
.fr03 .fr03__flex--start {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.fr03 .fr03__flex--end {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.fr03 .fr03__flex .fr03__left {
  display: block;
  width: 50%;
  padding: 0px 5%;
  box-sizing: border-box;
}
@media (max-width: 800px) {
  .fr03 .fr03__flex .fr03__left {
    width: 70%;
  }
}
@media (max-width: 800px) and (max-width: 800px) {
  .fr03 .fr03__flex .fr03__left {
    padding: 30px 5%;
  }
}
.fr03 .fr03__flex .fr03__left .fr03__title {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1em;
  font-size: clamp(12px, 10.2857142857px + 0.0057142857 * 100vw, 16px);
  font-weight: 600;
}
.fr03 .fr03__flex .fr03__left .fr03__subtitle {
  font-size: clamp(18px, 15.4285714286px + 0.0085714286 * 100vw, 24px);
  font-weight: 600;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  box-sizing: border-box;
  padding: 0px 0.3em;
  position: relative;
  line-height: 1.4;
}
@media (max-width: 800px) {
  .fr03 .fr03__flex .fr03__left .fr03__subtitle {
    white-space: nowrap;
  }
}
.fr03 .fr03__flex .fr03__left .fr03__subtitle::after {
  content: "";
  display: block;
  width: 100%;
  height: 0.6em;
  position: absolute;
  top: initial;
  bottom: -0.1em;
  left: 0px;
  right: 0px;
  margin: auto;
  z-index: -1;
}
.fr03 .fr03__flex .fr03__left .fr03__subtitle--yellow::after {
  background-color: #FFE087;
}
.fr03 .fr03__flex .fr03__left .fr03__subtitle--gray::after {
  background-color: #BEBEBE;
}
.fr03 .fr03__flex .fr03__left .fr03__subtitle--purple::after {
  background-color: #7175A3;
}
.fr03 .fr03__flex .fr03__img {
  display: block;
  width: 50%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 800px) {
  .fr03 .fr03__flex .fr03__img {
    width: 60%;
    margin-right: -30%;
  }
}
@media (max-width: 800px) {
  .fr03 .fr03__flex .fr03__img--left {
    width: 60%;
    margin-right: initial;
    margin-left: -30%;
  }
}

.fr04 {
  margin-top: 70px;
}

.fr04__main {
  border-radius: 100%;
  position: relative;
  width: min(500px, 90%);
  height: auto;
  aspect-ratio: 1/1;
  overflow: hidden;
  margin: 0 auto;
  margin-top: 70px;
}
.fr04__main .fr04__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto;
  z-index: -1;
}
.fr04__main h3 {
  width: 100%;
  background-color: #333333;
  text-align: center;
  padding: 1em 0px;
  color: #fff;
  font-size: clamp(14px, 9.7142857143px + 0.0142857143 * 100vw, 24px);
  line-height: 1.6;
  position: relative;
  z-index: 1;
}
.fr04__main h3 span {
  font-size: clamp(20px, 18.2857142857px + 0.0057142857 * 100vw, 24px);
}
.fr04__main .fr04__maininner {
  width: 86%;
  height: 86%;
  background-color: rgba(0, 0, 0, 0.55);
  border-radius: 100%;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto;
}
.fr04__main .fr04__maininner p {
  text-align: center;
  color: #fff;
  font-size: clamp(14px, 11.4285714286px + 0.0085714286 * 100vw, 20px);
  width: 90%;
  height: -moz-fit-content;
  height: fit-content;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto;
}
.fr04__main .fr04__maininner .common__bt {
  margin: 0 auto;
  position: absolute;
  top: initial;
  bottom: 15%;
  left: 0px;
  right: 0px;
  margin: auto;
  max-width: 90%;
}
.fr04__main .fr04__mainmodal {
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto;
  width: 100%;
  height: 100%;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  padding-top: 50px;
  border-radius: 100%;
  box-shadow: inset 0px 0px 10px #000;
}
.fr04__main .fr04__mainmodal div {
  width: 100%;
}
.fr04__main .fr04__mainmodal .common__bt {
  margin: 0 auto;
  margin-bottom: 1em;
}

.fr04__sub {
  width: min(380px, 90%);
  margin: 0 auto;
  margin-top: 30px;
}
.fr04__sub .fr04__subtitle {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
.fr04__sub .fr04__subtitle img {
  display: block;
  width: 46%;
  height: auto;
  aspect-ratio: 1/1;
}
.fr04__sub .fr04__subtitle h3 {
  text-align: center;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto;
  font-size: clamp(18px, 17.1428571429px + 0.0028571429 * 100vw, 20px);
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  font-weight: 500;
  line-height: 1.6;
  padding: 1.3em 0px;
  z-index: 1;
  text-decoration: underline;
}
.fr04__sub .fr04__subtitle h3::before, .fr04__sub .fr04__subtitle h3::after {
  content: "";
  display: block;
  width: auto;
  border-radius: 100%;
  height: 100%;
  aspect-ratio: 1/1;
  background-color: rgba(255, 255, 255, 0.7);
  z-index: -1;
}
.fr04__sub .fr04__subtitle h3::before {
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: -10%;
  right: initial;
  margin: auto;
}
.fr04__sub .fr04__subtitle h3::after {
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: initial;
  right: -10%;
  margin: auto;
}
.fr04__sub .fr04__subtxt {
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  text-align: center;
  margin-bottom: 1em;
}
.fr04__sub .common__bt {
  margin: 0 auto;
}

.sns {
  margin-top: 70px;
}
.sns .sns__inner {
  margin: 0 auto;
  margin-top: 30px;
  width: min(390px, 90%);
  height: -moz-fit-content;
  height: fit-content;
  position: relative;
}
.sns .sns__inner .sns__img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  transition: all 0.3s;
}
.sns .sns__inner .sns__img.is-hovered {
  filter: brightness(0.8) blur(3px);
  transition: all 0.3s;
}
.sns .sns__inner .common__bt {
  height: -moz-min-content;
  height: min-content;
  max-width: initial;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto;
}

.header {
  width: min(1000px, 90%);
  margin: 0 auto;
  padding: 20px 0px;
  box-sizing: border-box;
  background-color: #fff;
  position: relative;
  z-index: 1000;
}
@media (max-width: 800px) {
  .header {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
}
.header .header__logo {
  display: block;
  width: 137px;
  height: -moz-fit-content;
  height: fit-content;
}
.header .header__logo img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.header .header__logo--sp {
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto;
}
.header .header__humberger {
  width: 30px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  cursor: pointer;
  position: relative;
}
.header .header__humberger hr {
  display: block;
  height: 3px;
  border-radius: 3px;
  background-color: #000;
  width: 60%;
  transition: all 0.3s;
}
.header .header__humberger hr:first-child {
  width: 100%;
}
.header .header__humberger span {
  display: block;
  font-size: clamp(10px, 10px + 0 * 100vw, 10px);
  line-height: 1;
}
.header .header__humberger.open {
  padding-top: 1em;
}
.header .header__humberger.open hr {
  transform: rotate(45deg);
  width: 100%;
  position: absolute;
  top: 0px;
  bottom: initial;
  left: 0px;
  right: 0px;
  margin: auto;
  transition: all 0.3s;
}
.header .header__humberger.open hr:first-child {
  transform: rotate(-45deg);
}
.header .header__inner {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 800px) {
  .header .header__inner {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
  }
}
.header .header__nav {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 20px;
}
.header .header__nav .header__links {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  gap: 2em;
  flex-wrap: wrap;
  row-gap: 0.6em;
}
.header .header__nav .header__links a, .header .header__nav .header__links p {
  display: block;
  line-height: 1;
  position: relative;
  cursor: pointer;
  transition: all 0.3s;
}
.header .header__nav .header__links a:hover, .header .header__nav .header__links p:hover {
  color: #7175A3;
  transition: all 0.3s;
}
.header .header__nav .header__links a .header__submmenu, .header .header__nav .header__links p .header__submmenu {
  display: block;
  position: absolute;
  top: initial;
  bottom: 0px;
  left: -30em;
  right: -30em;
  margin: auto;
  background-color: #fff;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  width: 27em;
  padding: 0.5em 0px;
  box-shadow: 0px 5px 5px #626262;
  opacity: 0;
  visibility: hidden;
  transform: translateY(110%);
  transition: all 0.3s;
}
.header .header__nav .header__links a .header__submmenu a, .header .header__nav .header__links p .header__submmenu a {
  text-align: center;
  margin-top: 0.8em;
  margin-bottom: 0.8em;
}
.header .header__nav .header__links a .header__submmenu--open, .header .header__nav .header__links p .header__submmenu--open {
  opacity: 1;
  visibility: visible;
  transition: all 0.3s;
  transform: translateY(100%);
}
.header .header__nav .header__contact {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 9px;
}
.header .header__nav .header__contact .header__blackicon {
  display: block;
}
.header .header__nav .header__contact .header__blackicon img {
  display: block;
  width: 37px;
  height: 37px;
  border-radius: 50%;
  -o-object-fit: contain;
     object-fit: contain;
}

.spMenu {
  background-color: rgba(255, 255, 255, 0.9);
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 100;
  top: 0px;
  left: 0px;
  right: 0px;
  margin: auto;
  padding-top: 100px;
  box-sizing: border-box;
}
.spMenu .spMenu__ul li {
  padding: 1em 5%;
  box-sizing: border-box;
}
.spMenu .spMenu__ul li a {
  text-decoration: underline;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.6em;
  line-height: 1.3;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  transition: all 0.3s;
}
.spMenu .spMenu__ul li a:hover {
  color: #7175A3;
  transition: all 0.3s;
}
.spMenu .spMenu__ul li a img {
  transition: transform 0.3s;
}
.spMenu .spMenu__ul li a.active img {
  transform: rotate(90deg);
  transition: transform 0.3s;
}
.spMenu .spMenu__ul--big li {
  border-bottom: solid 1px #ACACAC;
}
.spMenu .spMenu__ul--small {
  width: 90%;
  margin: 0 auto;
  margin-top: 0.3em;
}
.spMenu .spMenu__ul--small li {
  padding: 0.2em 0px;
  border-bottom: none;
}

.phone__modal {
  position: fixed;
  top: 0px;
  right: 0px;
  bottom: 0px;
  left: 0px;
  margin: auto;
  background-color: #fff;
  width: 100%;
  height: 100%;
  aspect-ratio: 1/1;
  z-index: -1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.phone__modal div {
  width: 90%;
  margin: 0 auto;
}
.phone__modal div h2 {
  text-align: center;
  font-size: clamp(18px, 17.1428571429px + 0.0028571429 * 100vw, 20px);
  margin-bottom: 0.4em;
  margin-top: 2em;
  font-weight: 600;
}
.phone__modal div h2:first-child {
  margin-top: 0px;
}
.phone__modal div .common__bt {
  margin: 0 auto;
}

.footer__contact {
  margin-top: 70px;
  margin-bottom: 70px;
}
.footer__contact h2 {
  text-align: center;
  font-size: clamp(16px, 15.1428571429px + 0.0028571429 * 100vw, 18px);
  font-weight: 600;
  line-height: 1.6;
}
.footer__contact h2 span {
  font-size: clamp(10px, 9.1428571429px + 0.0028571429 * 100vw, 12px);
  display: block;
}
.footer__contact p {
  text-align: center;
  margin-top: 1em;
  margin-bottom: 1em;
}
.footer__contact .common__bt {
  margin: 0 auto;
}

.footer {
  background-color: #363636;
  padding: 70px 0px 30px 0px;
}
.footer h2, .footer p, .footer span {
  color: #fff;
}
.footer .footer__logo {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin: 0 auto;
}
.footer .footer__logo img {
  display: block;
  width: 140px;
  -o-object-fit: contain;
     object-fit: contain;
}
.footer .footer__nav {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  width: min(1100px, 90%);
  margin: 0 auto;
  margin-top: 40px;
}
@media (max-width: 800px) {
  .footer .footer__nav {
    margin-top: 10px;
  }
}
.footer .footer__links {
  width: min(500px, 100%);
}
@media (max-width: 800px) {
  .footer .footer__links {
    width: 100%;
  }
}
.footer .footer__links h2 {
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  margin-top: 1em;
}
@media (max-width: 800px) {
  .footer .footer__links h2 {
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
}
.footer .footer__links h2 span {
  font-size: clamp(10px, 9.1428571429px + 0.0028571429 * 100vw, 12px);
}
.footer .footer__links p {
  margin-bottom: 0.5em;
  line-height: 1.5;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  text-align: center;
}
@media (max-width: 800px) {
  .footer .footer__links p {
    text-align: left;
  }
}
.footer .footer__links .footer__btarea {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
@media (max-width: 800px) {
  .footer .footer__links .footer__btarea {
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
}
.footer .footer__sitemap {
  width: min(1000px, 90%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 1em;
  margin: 0 auto;
  margin-top: 40px;
  margin-bottom: 40px;
}
@media (max-width: 800px) {
  .footer .footer__sitemap {
    width: 100%;
    gap: 0px;
  }
}
.footer .footer__sitemap li {
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: relative;
}
@media (max-width: 800px) {
  .footer .footer__sitemap li {
    width: 100%;
    height: -moz-fit-content;
    height: fit-content;
    padding: 1em 5%;
    border-bottom: solid 1px #C3C3C3;
  }
  .footer .footer__sitemap li:first-child {
    border-top: solid 1px #C3C3C3;
  }
}
.footer .footer__sitemap li a, .footer .footer__sitemap li p {
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  color: #fff;
  font-weight: 300;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.6em;
  text-decoration: underline;
  line-height: 1;
  color: #C3C3C3;
  transition: all 0.3s;
}
.footer .footer__sitemap li a:hover, .footer .footer__sitemap li p:hover {
  color: #7175A3;
  transition: all 0.3s;
}
@media (max-width: 800px) {
  .footer .footer__sitemap li a, .footer .footer__sitemap li p {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
@media (max-width: 800px) {
  .footer .footer__sitemap li a img, .footer .footer__sitemap li p img {
    display: block;
    width: 15px;
  }
}
.footer .footer__sitemap li ul {
  border: none !important;
  margin-top: 1em;
  background: linear-gradient(to right, #363636, transparent);
  width: 300px;
  position: absolute;
  top: initial;
  bottom: initial;
  left: 0px;
  right: initial;
  margin: auto;
  padding: 1em 0px;
  border: solid 1px #fff;
  box-sizing: border-box;
}
@media (max-width: 800px) {
  .footer .footer__sitemap li ul {
    position: relative;
    width: auto;
    padding: 0px;
    background: initial;
    border-left: solid 1px #fff;
  }
}
.footer .footer__sitemap li ul li {
  border: none !important;
  width: 90%;
  margin: 0 auto;
  padding: 0.4em 0px;
}
.footer .footer__sitemap li ul li a {
  text-decoration: none;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.footer .footer__sitemap li ul li a::before {
  content: "ー";
}
.footer .footer__company {
  width: 100%;
}
.footer .footer__company h3, .footer .footer__company h4, .footer .footer__company p {
  color: #fff;
}
.footer .footer__company h3 {
  text-align: center;
  margin-bottom: 1.3em;
}
.footer .footer__company div {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
@media (max-width: 800px) {
  .footer .footer__company div {
    display: block;
  }
}
.footer .footer__company div section {
  width: min(350px, 50%);
  margin-bottom: 40px;
}
@media (max-width: 800px) {
  .footer .footer__company div section {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 20px;
  }
}
.footer .footer__company div section h4 {
  text-align: center;
}
.footer .footer__company div section .common__bt {
  margin: 0 auto;
}
.footer small {
  display: block;
  text-align: center;
  color: #fff;
  margin: 0 auto;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
}

.posts {
  width: min(800px, 90%);
  margin: 0 auto;
  margin-bottom: 50px;
}
.posts a {
  border-top: solid 1px #000;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0px;
}
.posts a:last-child {
  border-bottom: solid 1px #000;
}
.posts a .posts__thumnail {
  display: block;
  width: min(25%, 130px);
  aspect-ratio: 1/1;
  border-radius: 100%;
  box-sizing: border-box;
}
.posts a .posts__thumnail img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  border-radius: 100%;
  border: solid 3px #BEBEBE;
}
.posts .posts__content {
  width: max(70%, 100% - 130px - 5%);
}
.posts .posts__content .posts__date {
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
}
.posts .posts__content .posts__title {
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  margin-bottom: 0.6em;
  line-height: 1.4;
}
.posts .posts__content .posts__category {
  background-color: #333333;
  border-radius: 2em;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  line-height: 1;
  padding: 0.3em 1em;
  width: -moz-fit-content;
  width: fit-content;
}

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.3em;
  margin-bottom: 50px;
}
.pagination .page-numbers {
  display: block;
  width: 3em;
  height: 3em;
  aspect-ratio: 1/1;
  line-height: 1;
  background-color: #333333;
  color: #fff;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.pagination .page-numbers.current {
  background-color: #626262;
}

.category__box {
  position: relative;
  margin-top: 10px;
}
.category__box .category__bt {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background-color: #333333;
  color: #fff;
  line-height: 1;
  padding: 0.6em 1em;
  border-radius: 2em;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1em;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  cursor: pointer;
}
.category__box .category__bt div {
  width: 1.3em;
  height: 1.3em;
  background-color: #fff;
  border-radius: 1.3em;
  position: relative;
}
.category__box .category__bt div hr {
  display: block;
  width: 60%;
  height: 1px;
  background-color: #333333;
  border: none;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto;
}
.category__box .category__bt div hr:first-child {
  transform: rotate(90deg);
  transform-origin: center;
}
.category__box .category__items {
  background-color: #333333;
  width: min(600px, 90%);
  margin: 0 auto;
  padding: 2em 1em 1em 1em;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 1em;
  border-radius: 1em;
  position: absolute;
  top: 0px;
  bottom: initial;
  left: 0px;
  right: 0px;
  margin: auto;
}
.category__box .category__items a {
  color: #fff;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  cursor: pointer;
}

.single__top {
  width: min(800px, 90%);
  margin: 0 auto;
}
.single__top .single__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.single__top .single__meta time {
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
}
.single__top .single__meta p {
  background-color: #333333;
  border-radius: 2em;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  line-height: 1;
  padding: 0.3em 1em;
  width: -moz-fit-content;
  width: fit-content;
}
.single__top h1 {
  font-size: clamp(18px, 15.4285714286px + 0.0085714286 * 100vw, 24px);
  font-weight: 800;
  line-height: 1.4;
  margin-top: 0.3em;
}

.single__content {
  width: min(800px, 90%);
  margin: 0 auto;
}
.single__content .editor-styles-wrapper,
.single__content .entry-content {
  font-size: clamp(15px, 14.5714285714px + 0.0014285714 * 100vw, 16px);
  line-height: 1.8;
}
.single__content .editor-styles-wrapper p,
.single__content .entry-content p {
  margin: 0 0 1.5rem;
}
.single__content .editor-styles-wrapper h1, .single__content .editor-styles-wrapper h2, .single__content .editor-styles-wrapper h3, .single__content .editor-styles-wrapper h4, .single__content .editor-styles-wrapper h5, .single__content .editor-styles-wrapper h6,
.single__content .entry-content h1,
.single__content .entry-content h2,
.single__content .entry-content h3,
.single__content .entry-content h4,
.single__content .entry-content h5,
.single__content .entry-content h6 {
  line-height: 1.25;
  margin: 2rem 0 1rem;
  font-weight: 700;
}
.single__content .editor-styles-wrapper h1,
.single__content .entry-content h1 {
  font-size: clamp(30px, 24px + 0.02 * 100vw, 44px);
}
.single__content .editor-styles-wrapper h2,
.single__content .entry-content h2 {
  font-size: clamp(26px, 21.7142857143px + 0.0142857143 * 100vw, 36px);
}
.single__content .editor-styles-wrapper h3,
.single__content .entry-content h3 {
  font-size: clamp(22px, 19.4285714286px + 0.0085714286 * 100vw, 28px);
}
.single__content .editor-styles-wrapper h4,
.single__content .entry-content h4 {
  font-size: clamp(18px, 16.2857142857px + 0.0057142857 * 100vw, 22px);
}
.single__content .editor-styles-wrapper h5,
.single__content .entry-content h5 {
  font-size: clamp(16px, 15.1428571429px + 0.0028571429 * 100vw, 18px);
}
.single__content .editor-styles-wrapper h6,
.single__content .entry-content h6 {
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
}
.single__content .editor-styles-wrapper b, .single__content .editor-styles-wrapper strong,
.single__content .entry-content b,
.single__content .entry-content strong {
  font-weight: 700;
}
.single__content .editor-styles-wrapper em, .single__content .editor-styles-wrapper i,
.single__content .entry-content em,
.single__content .entry-content i {
  font-style: italic;
}
.single__content .editor-styles-wrapper ul, .single__content .editor-styles-wrapper ol,
.single__content .entry-content ul,
.single__content .entry-content ol {
  padding-left: 1.25em;
  margin: 0 0 1.5rem;
}
.single__content .editor-styles-wrapper ul,
.single__content .entry-content ul {
  list-style: disc;
}
.single__content .editor-styles-wrapper ol,
.single__content .entry-content ol {
  list-style: decimal;
}
.single__content .editor-styles-wrapper li,
.single__content .entry-content li {
  margin: 0 0 0.4rem;
}
.single__content .editor-styles-wrapper li > ul, .single__content .editor-styles-wrapper li > ol,
.single__content .entry-content li > ul,
.single__content .entry-content li > ol {
  margin-top: 0.4rem;
}
.single__content .editor-styles-wrapper a,
.single__content .entry-content a {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.single__content .editor-styles-wrapper a:hover,
.single__content .entry-content a:hover {
  text-decoration-thickness: 2px;
}
.single__content .editor-styles-wrapper blockquote,
.single__content .entry-content blockquote {
  margin: 2rem 0;
  padding: 1rem 1.5rem;
  border-left: 4px solid currentColor;
}
.single__content .editor-styles-wrapper blockquote p:last-child,
.single__content .entry-content blockquote p:last-child {
  margin-bottom: 0;
}
.single__content .editor-styles-wrapper blockquote cite,
.single__content .entry-content blockquote cite {
  display: block;
  margin-top: 0.6rem;
  font-style: normal;
  opacity: 0.7;
  font-size: clamp(13px, 12.5714285714px + 0.0014285714 * 100vw, 14px);
}
.single__content .editor-styles-wrapper hr,
.single__content .editor-styles-wrapper .wp-block-separator,
.single__content .entry-content hr,
.single__content .entry-content .wp-block-separator {
  border: 0;
  height: 1px;
  background: currentColor;
  opacity: 0.15;
  margin: 2rem 0;
}
.single__content .editor-styles-wrapper .wp-block-separator.is-style-wide,
.single__content .entry-content .wp-block-separator.is-style-wide {
  height: 2px;
  opacity: 0.2;
}
.single__content .editor-styles-wrapper .wp-block-separator.is-style-dots,
.single__content .entry-content .wp-block-separator.is-style-dots {
  background: none;
  text-align: center;
}
.single__content .editor-styles-wrapper .wp-block-separator.is-style-dots:before,
.single__content .entry-content .wp-block-separator.is-style-dots:before {
  content: "···";
  letter-spacing: 1em;
  opacity: 0.45;
}
.single__content .editor-styles-wrapper img, .single__content .editor-styles-wrapper video, .single__content .editor-styles-wrapper svg, .single__content .editor-styles-wrapper canvas,
.single__content .entry-content img,
.single__content .entry-content video,
.single__content .entry-content svg,
.single__content .entry-content canvas {
  max-width: 100%;
  height: auto;
}
.single__content .editor-styles-wrapper figure,
.single__content .entry-content figure {
  margin: 2rem 0;
}
.single__content .editor-styles-wrapper figure figcaption,
.single__content .entry-content figure figcaption {
  margin-top: 0.4rem;
  font-size: clamp(12px, 11.5714285714px + 0.0014285714 * 100vw, 13px);
  line-height: 1.5;
  opacity: 0.8;
  text-align: center;
}
.single__content .editor-styles-wrapper .alignnone,
.single__content .entry-content .alignnone {
  margin: 1.5rem 0;
}
.single__content .editor-styles-wrapper .aligncenter,
.single__content .editor-styles-wrapper .wp-block-image .aligncenter,
.single__content .entry-content .aligncenter,
.single__content .entry-content .wp-block-image .aligncenter {
  display: block;
  margin: 1.5rem auto;
  text-align: center;
}
.single__content .editor-styles-wrapper .alignleft,
.single__content .entry-content .alignleft {
  float: left;
  margin: 0 1.5rem 1.5rem 0;
  max-width: 50%;
}
.single__content .editor-styles-wrapper .alignright,
.single__content .entry-content .alignright {
  float: right;
  margin: 0 0 1.5rem 1.5rem;
  max-width: 50%;
}
.single__content .editor-styles-wrapper .alignwide,
.single__content .entry-content .alignwide {
  margin-left: calc(-1 * var(--wp--style--root--padding, 0));
  margin-right: calc(-1 * var(--wp--style--root--padding, 0));
}
.single__content .editor-styles-wrapper .alignfull,
.single__content .entry-content .alignfull {
  width: 100vw;
  margin-left: 50%;
  transform: translateX(-50%);
}
.single__content .editor-styles-wrapper .wp-block-button,
.single__content .entry-content .wp-block-button {
  margin: 1.5rem 0;
}
.single__content .editor-styles-wrapper .wp-block-button .wp-block-button__link,
.single__content .entry-content .wp-block-button .wp-block-button__link {
  display: inline-block;
  padding: 0.7em 1.1em;
  border-radius: 0.5rem;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
}
.single__content .editor-styles-wrapper .wp-block-button.is-style-outline .wp-block-button__link,
.single__content .entry-content .wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  border: 2px solid currentColor;
}
.single__content .editor-styles-wrapper .wp-block-pullquote,
.single__content .entry-content .wp-block-pullquote {
  margin: 3rem 0;
  padding: 1.5rem 2rem;
  border-top: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  text-align: center;
}
.single__content .editor-styles-wrapper .wp-block-pullquote blockquote,
.single__content .entry-content .wp-block-pullquote blockquote {
  border: 0;
  padding: 0;
  margin: 0;
}
.single__content .editor-styles-wrapper .wp-block-pullquote p,
.single__content .entry-content .wp-block-pullquote p {
  font-size: clamp(20px, 16.5714285714px + 0.0114285714 * 100vw, 28px);
  margin-bottom: 1rem;
}
.single__content .editor-styles-wrapper .wp-block-pullquote cite,
.single__content .entry-content .wp-block-pullquote cite {
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  opacity: 0.7;
}
.single__content .editor-styles-wrapper code, .single__content .editor-styles-wrapper kbd, .single__content .editor-styles-wrapper samp,
.single__content .entry-content code,
.single__content .entry-content kbd,
.single__content .entry-content samp {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: 0.95em;
  background: rgba(0, 0, 0, 0.05);
  padding: 0.1em 0.35em;
  border-radius: 0.35em;
}
.single__content .editor-styles-wrapper pre,
.single__content .entry-content pre {
  overflow: auto;
  padding: 1rem 1.5rem;
  margin: 2rem 0;
  line-height: 1.6;
  font-size: clamp(13px, 12.5714285714px + 0.0014285714 * 100vw, 14px);
  background: rgba(0, 0, 0, 0.05);
  border-radius: 0.5rem;
}
.single__content .editor-styles-wrapper pre code,
.single__content .entry-content pre code {
  background: transparent;
  padding: 0;
  font-size: inherit;
}
.single__content .editor-styles-wrapper table,
.single__content .entry-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 2rem 0;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
}
.single__content .editor-styles-wrapper th, .single__content .editor-styles-wrapper td,
.single__content .entry-content th,
.single__content .entry-content td {
  padding: 0.7em 0.8em;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  text-align: left;
  vertical-align: top;
}
.single__content .editor-styles-wrapper thead th,
.single__content .entry-content thead th {
  border-bottom: 2px solid rgba(0, 0, 0, 0.2);
  font-weight: 700;
}
.single__content .editor-styles-wrapper tbody tr:hover,
.single__content .entry-content tbody tr:hover {
  background: rgba(0, 0, 0, 0.03);
}
.single__content .editor-styles-wrapper .wp-block-gallery,
.single__content .entry-content .wp-block-gallery {
  gap: 1rem;
}
.single__content .editor-styles-wrapper .wp-block-gallery .blocks-gallery-item,
.single__content .entry-content .wp-block-gallery .blocks-gallery-item {
  margin: 0;
}
.single__content .editor-styles-wrapper .wp-block-gallery figcaption,
.single__content .entry-content .wp-block-gallery figcaption {
  font-size: clamp(12px, 11.5714285714px + 0.0014285714 * 100vw, 13px);
}
.single__content .editor-styles-wrapper .wp-block-embed,
.single__content .editor-styles-wrapper .wp-embed-responsive,
.single__content .entry-content .wp-block-embed,
.single__content .entry-content .wp-embed-responsive {
  margin: 2rem 0;
}
.single__content .editor-styles-wrapper .wp-block-embed .wp-block-embed__wrapper,
.single__content .editor-styles-wrapper .wp-block-embed .wp-block-embed__video,
.single__content .editor-styles-wrapper .wp-embed-responsive .wp-block-embed__wrapper,
.single__content .editor-styles-wrapper .wp-embed-responsive .wp-block-embed__video,
.single__content .entry-content .wp-block-embed .wp-block-embed__wrapper,
.single__content .entry-content .wp-block-embed .wp-block-embed__video,
.single__content .entry-content .wp-embed-responsive .wp-block-embed__wrapper,
.single__content .entry-content .wp-embed-responsive .wp-block-embed__video {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}
.single__content .editor-styles-wrapper .wp-block-embed .wp-block-embed__wrapper iframe, .single__content .editor-styles-wrapper .wp-block-embed .wp-block-embed__wrapper video,
.single__content .editor-styles-wrapper .wp-block-embed .wp-block-embed__video iframe,
.single__content .editor-styles-wrapper .wp-block-embed .wp-block-embed__video video,
.single__content .editor-styles-wrapper .wp-embed-responsive .wp-block-embed__wrapper iframe,
.single__content .editor-styles-wrapper .wp-embed-responsive .wp-block-embed__wrapper video,
.single__content .editor-styles-wrapper .wp-embed-responsive .wp-block-embed__video iframe,
.single__content .editor-styles-wrapper .wp-embed-responsive .wp-block-embed__video video,
.single__content .entry-content .wp-block-embed .wp-block-embed__wrapper iframe,
.single__content .entry-content .wp-block-embed .wp-block-embed__wrapper video,
.single__content .entry-content .wp-block-embed .wp-block-embed__video iframe,
.single__content .entry-content .wp-block-embed .wp-block-embed__video video,
.single__content .entry-content .wp-embed-responsive .wp-block-embed__wrapper iframe,
.single__content .entry-content .wp-embed-responsive .wp-block-embed__wrapper video,
.single__content .entry-content .wp-embed-responsive .wp-block-embed__video iframe,
.single__content .entry-content .wp-embed-responsive .wp-block-embed__video video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.single__content .editor-styles-wrapper .wp-block-columns,
.single__content .entry-content .wp-block-columns {
  margin: 2rem 0;
  gap: 1rem;
}
.single__content .editor-styles-wrapper .wp-block-column > *:first-child,
.single__content .entry-content .wp-block-column > *:first-child {
  margin-top: 0;
}
.single__content .editor-styles-wrapper .wp-block-column > *:last-child,
.single__content .entry-content .wp-block-column > *:last-child {
  margin-bottom: 0;
}
.single__content .editor-styles-wrapper .wp-block-image img,
.single__content .entry-content .wp-block-image img {
  border-radius: 0.5rem;
}
.single__content .editor-styles-wrapper:after,
.single__content .entry-content:after {
  content: "";
  display: block;
  clear: both;
}
@media (max-width: 640px) {
  .single__content .editor-styles-wrapper .alignleft,
  .single__content .editor-styles-wrapper .alignright,
  .single__content .entry-content .alignleft,
  .single__content .entry-content .alignright {
    float: none;
    margin: 1.5rem auto;
    max-width: 100%;
    display: block;
    text-align: center;
  }
}

@keyframes star {
  0% {
    transform: translate(0px, 0px) rotate(0deg) scale(1.4);
  }
  100% {
    transform: translate(0px, 0px) rotate(360deg) scale(1);
  }
}
.fe01 {
  width: min(90%, 800px);
  margin: 0 auto;
  margin-top: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 4%;
  position: relative;
}
.fe01 .fe01__star {
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: -10%;
  right: -10%;
  margin: auto;
  z-index: -1;
  width: 120%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  animation: star 50s linear infinite;
}
@media (max-width: 800px) {
  .fe01 .fe01__star {
    width: 200%;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: -50%;
    right: -50%;
    margin: auto;
  }
}
.fe01 .fe01__content {
  width: 48%;
}
@media (max-width: 800px) {
  .fe01 .fe01__content {
    width: 100%;
  }
}
.fe01 .fe01__content .fe01__txt {
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  margin-top: 1em;
  margin-bottom: 2em;
  text-align: center;
}
@media (max-width: 800px) {
  .fe01 .fe01__content .fe01__txt {
    text-align: center;
  }
}

.fe02 {
  width: min(90%, 800px);
  margin: 0 auto;
  margin-top: 50px;
}
.fe02 .fe02__inner {
  margin-top: 50px;
  border-bottom: solid 1px #000;
  padding-bottom: 50px;
}
@media (max-width: 800px) {
  .fe02 .fe02__inner {
    padding-bottom: none;
  }
}
.fe02 .fe02__inner .fe02__number {
  display: block;
  width: 44px;
  height: auto;
  margin: 0 auto;
}
@media (max-width: 800px) {
  .fe02 .fe02__inner .fe02__number {
    width: 38px;
  }
}
.fe02 .fe02__inner h1 {
  text-align: center;
  display: block;
  font-size: clamp(20px, 17.4285714286px + 0.0085714286 * 100vw, 26px);
  font-weight: 700;
  line-height: 1.5;
  margin-top: 0.7em;
}
.fe02 .fe02__inner h1 span {
  display: block;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  font-weight: 700;
  line-height: 1;
}
.fe02 .fe02__inner hr {
  display: block;
  height: 1px;
  width: 40px;
  border: none;
  margin: 0 auto;
  background-color: #000;
  margin-top: 20px;
  margin-bottom: 10px;
}
.fe02 .fe02__inner .common__subtitle {
  margin-top: 0px;
}
.fe02 .fe02__inner .fe02__flex {
  margin-top: 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 800px) {
  .fe02 .fe02__inner .fe02__flex {
    display: block;
  }
}
.fe02 .fe02__inner .fe02__flex .fe02__img {
  width: 50%;
  height: auto;
  aspect-ratio: 360/212;
}
@media (max-width: 800px) {
  .fe02 .fe02__inner .fe02__flex .fe02__img {
    width: min(500px, 100%);
    margin: 0 auto;
  }
}
.fe02 .fe02__inner .fe02__flex .fe02__img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.fe02 .fe02__inner .fe02__flex p {
  display: block;
  width: 46%;
  height: auto;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
}
@media (max-width: 800px) {
  .fe02 .fe02__inner .fe02__flex p {
    width: 100%;
    margin-top: 1em;
  }
  .fe02 .fe02__inner .fe02__flex p br {
    display: none;
  }
}
.fe02 .fe02__inner:nth-child(even) .fe02__flex {
  flex-direction: row-reverse;
}

.fa01 {
  width: min(800px, 90%);
  margin: 0 auto;
  margin-top: 100px;
}
.fa01:first-child {
  margin-top: 50px;
}
.fa01 .fa01__table {
  border: solid 1px #000;
}
.fa01 .fa01__table td {
  border: solid 1px #000;
}
.fa01 .fa01__caution {
  color: #FF0000;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  text-align: center;
  margin-top: 0.2em;
  margin-bottom: 1em;
}
.fa01 .fa01__table {
  width: min(600px, 100%);
  margin: 0 auto;
}
.fa01 .fa01__table tr:first-child td {
  vertical-align: middle;
}
.fa01 .fa01__table tr:first-child td p {
  display: block;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1em 0px;
  width: 90%;
  margin: 0 auto;
  font-weight: 700;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
}
.fa01 .fa01__table tr:first-child td p strong {
  font-size: clamp(16px, 13.4285714286px + 0.0085714286 * 100vw, 22px);
}
.fa01 .fa01__table tr:last-child td {
  vertical-align: middle;
}
.fa01 .fa01__table tr:last-child td p {
  text-align: center;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  line-height: 1.6;
  font-weight: 700;
  padding: 0.8em 0px;
}
.fa01 .fa01__table tr:last-child td p strong {
  font-size: clamp(16px, 13.4285714286px + 0.0085714286 * 100vw, 22px);
}
.fa01 .fa01__btarea {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-top: 30px;
  margin-bottom: 30px;
}
.fa01 .common__ul {
  margin-top: 30px;
}
.fa01 iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 360/212;
  margin-top: 30px;
}

.fa01__slider {
  margin-top: 35px;
}
.fa01__slider--main {
  width: 100%;
  height: auto;
  aspect-ratio: 360/212;
  overflow: hidden;
}
.fa01__slider--main .swiper-slide-active {
  display: block;
  width: 100%;
  height: 100%;
}
.fa01__slider--main .swiper-slide-active img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.fa01__slider--thumnail {
  margin-top: 10px;
  overflow: hidden;
}
.fa01__slider--thumnail swiper-slide {
  aspect-ratio: 83/49;
  overflow: hidden;
}
.fa01__slider--thumnail swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 83/49;
  -o-object-fit: cover;
     object-fit: cover;
}
.fa01__slider--thumnail .swiper-slide-thumb-active {
  filter: brightness(0.4);
  transition: all 0.3s;
}

.gu01 {
  width: min(800px, 90%);
  margin: 0 auto;
  margin-top: 50px;
}
.gu01 .gu01__inner {
  text-align: center;
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
}
.gu01 .common__title02 {
  margin-bottom: 30px;
}
.gu01 .common__bt {
  margin: 0 auto;
}

.gu02 {
  width: min(600px, 90%);
  margin: 0 auto;
  margin-top: 30px;
}
.gu02 .gu02__flex {
  margin-top: 20px;
  margin-bottom: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.gu02 .gu02__flex .gu02__status {
  width: min(170px, 48%);
  height: auto;
  aspect-ratio: 1/1;
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border: solid 1px #000;
}
.gu02 .gu02__flex .gu02__status div img {
  display: block;
  width: 50px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  margin: 0 auto;
}
.gu02 .gu02__flex .gu02__status div p {
  text-align: center;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  margin-top: 1em;
  font-weight: 700;
}
.gu02 .gu02__exp li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1em;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  margin-bottom: 0.5em;
}
.gu02 .gu02__exp li img {
  display: block;
  height: 1.3em;
  width: auto;
  display: block;
}
.gu02 .gu02__exp li p {
  display: block;
}

.gu03 {
  width: min(800px, 90%);
  margin: 0 auto;
  margin-top: 50px;
}
.gu03 .gu03__content {
  margin-top: 30px;
}
.gu03 .gu03__content h3 {
  text-align: center;
  font-size: clamp(18px, 15.4285714286px + 0.0085714286 * 100vw, 24px);
  margin-top: 0.3em;
}
.gu03 .gu03__content p {
  text-align: center;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  font-weight: 600;
  line-height: 1.6;
  margin-bottom: 1em;
}
.gu03 .gu03__content p span {
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  display: block;
  margin-top: 0.5em;
}
.gu03 .gu03__content p strong {
  font-weight: 600;
  color: #FF0000;
}
.gu03 .gu03__content .common__bt {
  margin: 0 auto;
}
.gu03 .gu03__content .common__btarea .common__bt {
  margin: initial;
}

.gu04 {
  border-top: solid 1px #000;
  width: min(800px, 90%);
  margin: 0 auto;
  margin-top: 50px;
}
.gu04 h3 {
  text-align: center;
  font-size: clamp(16px, 15.1428571429px + 0.0028571429 * 100vw, 18px);
  margin-top: 2em;
  margin-bottom: 1em;
}
.gu04 .gu04__table {
  margin: 0 auto;
  width: min(500px, 100%);
}
.gu04 .gu04__table td, .gu04 .gu04__table th {
  border: solid 1px #000;
  text-align: center;
  vertical-align: middle;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  padding: 0.6em 0px;
}
.gu04 .gu04__table td:first-child, .gu04 .gu04__table th:first-child {
  border-left: none;
  text-align: left;
  padding-left: 0.7em;
}
.gu04 .gu04__table td:last-child, .gu04 .gu04__table th:last-child {
  border-right: none;
}
.gu04 .gu04__table--2column td, .gu04 .gu04__table--2column th {
  width: 50%;
}
.gu04 .gu04__table--3column td, .gu04 .gu04__table--3column th {
  width: 33%;
}

.gu05 {
  border-top: solid 1px #000;
  width: min(800px, 90%);
  margin: 0 auto;
  margin-top: 50px;
}
.gu05 h3, .gu05 p {
  text-align: center;
}
.gu05 h3 {
  font-size: clamp(16px, 15.1428571429px + 0.0028571429 * 100vw, 18px);
  margin-top: 2em;
}
.gu05 p {
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  margin-top: 1em;
}

.gu06 {
  width: min(800px, 90%);
  margin: 0 auto;
  margin-top: 50px;
}
.gu06 .gu06__txt {
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  margin-top: 2em;
  margin-bottom: 2em;
}
.gu06 .gu06__txt--center {
  text-align: center;
}
.gu06 .gu06__txt--small {
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  margin-top: 0em !important;
}
.gu06 .common__btarea {
  margin-bottom: 30px;
}

.re01 {
  width: min(800px, 90%);
  margin: 0 auto;
}
.re01 .common__subtitle {
  margin-bottom: 1.5em;
}
.re01 .re01__inner {
  border-top: solid 1px #000;
  padding: 30px 0px;
}
.re01 .re01__inner:last-child {
  border-bottom: solid 1px #000;
}
.re01 .re01__inner h3 {
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  text-align: center;
  text-decoration: underline;
  margin-bottom: 1em;
}

.re02 {
  width: min(800px, 90%);
  margin: 0 auto;
  margin-top: 40px;
  margin-bottom: 50px;
}
.re02 .re02__txt {
  text-align: center;
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
}

.contact {
  width: min(600px, 90%);
  margin: 0 auto;
  margin-top: 50px;
  margin-bottom: 50px;
}
.contact .contact__title {
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  text-decoration: underline;
  margin-top: 2em;
  margin-bottom: 0.6em;
}
.contact .contact__check {
  display: block;
}
.contact .contact__check label {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.4em;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
}
.contact .contact__check label input {
  width: 1.3em;
  height: 1.3em;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: solid 1px #000;
  box-sizing: border-box;
}
.contact .contact__check label input:checked {
  position: relative;
}
.contact .contact__check label input:checked::after {
  content: "";
  position: absolute;
  top: -40%;
  bottom: initial;
  left: initial;
  right: 0px;
  margin: auto;
  width: 60%;
  height: 90%;
  border: solid 2px #000;
  border-top: none;
  border-left: none;
  transform: rotate(45deg);
}
.contact .contact__check--pp {
  margin-top: 2em;
  margin-bottom: 2em;
}
.contact .contact__check--pp label {
  display: flex;
  justify-content: center;
  align-items: center;
}
.contact .contact__text {
  width: 100%;
  margin: 0 auto;
  border-radius: 0.3em;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
  border: solid 1px #000;
  padding: 0.8em 0.6em;
  box-sizing: border-box;
}
.contact .contact__text--textarea {
  height: 150px;
  resize: none;
}
.contact .contact__select {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.contact .contact__select select {
  width: calc(33% - 2em);
  padding: 0.8em 0.6em;
  border: solid 1px #000;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("../img/ico-select_arrow.svg");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 0.5em auto;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
}
.contact .contact__select p {
  display: block;
  margin-left: 0.3em;
  margin-right: 0.7em;
}
.contact .contact__pptxt {
  font-size: clamp(12px, 11.1428571429px + 0.0028571429 * 100vw, 14px);
  padding: 1em;
  height: 14em;
  overflow-y: scroll;
  border: solid 1px #000;
  border-radius: 0.3em;
}
.contact .contact__pptxt::-webkit-scrollbar {
  -webkit-appearance: none;
          appearance: none;
}
.contact .contact__confirm {
  background: #f9f9f9;
  padding: 2em;
  border-radius: 0.5em;
  margin: 2em 0;
}
.contact .contact__confirm-item {
  margin-bottom: 1.5em;
}
.contact .contact__confirm-item:last-child {
  margin-bottom: 0;
}
.contact .contact__confirm-value {
  background: #fff;
  padding: 0.8em;
  border-radius: 0.3em;
  border: 1px solid #ddd;
  margin-top: 0.5em;
  font-size: clamp(14px, 13.1428571429px + 0.0028571429 * 100vw, 16px);
}
.contact .contact__buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  margin-top: 2em;
}
.contact .contact__success {
  text-align: center;
  padding: 3em 2em;
  background: #f0f8ff;
  border-radius: 0.5em;
  margin: 2em 0;
}
.contact .contact__success p {
  font-size: clamp(16px, 15.1428571429px + 0.0028571429 * 100vw, 18px);
  margin-bottom: 1em;
}
.contact .contact__success p:last-child {
  margin-bottom: 0;
}
.contact .common__bt {
  margin: 0 auto;
}
.contact .common__bt:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}/*# sourceMappingURL=style.css.map */