@charset "UTF-8";
/* =============================================== */
/* =============================================== */
/* =============================================== */
/* =============================================== */
@import url("https://fonts.googleapis.com/css2?family=Albert+Sans:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&family=Red+Rose:wght@300..700&display=swap");
.js-fade {
  opacity: 0;
  transform: translateY(15%);
  transition: opacity 1.4s, transform 1s;
}
.js-fade.is-inview {
  opacity: 1;
  transform: translateY(0);
}

#js_slash {
  position: fixed;
  left: 50%;
  top: 50%;
  width: 563px;
  height: 1000px;
  opacity: 0;
  z-index: 100;
  translate: -50% -50%;
  transition: opacity 1.6s ease;
  pointer-events: none;
  overflow: hidden;
  z-index: 100;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  #js_slash {
    width: 1920px;
    height: 1080px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1024px) and (min-width: 1200px) {
  #js_slash {
    width: 2000px;
    height: 1125px;
  }
}
#js_slash.is_visible {
  opacity: 1;
}
#js_slash .slash_inner {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  position: relative;
  background: #fff;
  z-index: 1;
  transition: opacity 1s;
  opacity: 1;
  overflow: hidden;
}
#js_slash .slash_inner.is_hidden {
  opacity: 0;
  pointer-events: none;
}
#js_slash .slash_img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
}
#js_slash .slash_img.slash_wrap {
  z-index: 4;
}
#js_slash .slash_img.up {
  z-index: 3;
}
#js_slash .slash_img.down {
  z-index: 2;
}
#js_slash .slash_img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@keyframes slashSord {
  0% {
    opacity: 1;
  }
  20% {
    opacity: 0.2;
  }
  100% {
    opacity: 1;
  }
}
@keyframes slashUp {
  0% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(-70px, 46px, 0);
  }
  70% {
    transform: translate3d(-70px, 46px, 0);
  }
  100% {
    transform: translate3d(-655px, 430px, 0);
  }
}
@keyframes slashDown {
  70% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(655px, -430px, 0);
  }
}
.slash_img_inner.is_animating {
  animation: slashSord 0.25s ease-out both;
}

.slash.is_animating .slash_wrap,
.slash.is_animating .up {
  animation: slashUp 2s ease both;
}
.slash.is_animating .down {
  animation: slashDown 2s ease both;
}

.swell-block-button > a {
  background-color: #140343;
}
.swell-block-button > a > span {
  font-style: oblique;
}

@media screen and (min-width: 768px) and (min-width: 1024px) {
  .p-disp--SP {
    display: none;
  }
}
.p-disp--PC {
  display: none;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  .p-disp--PC {
    display: block;
  }
}
html body.bgPurple {
  background-color: #140343;
}
html body #body_wrap {
  opacity: 0;
  transition: opacity 0.8s ease;
  background-color: white;
}
html body #body_wrap.is_visible {
  opacity: 1;
}
html body #body_wrap .menu-item .menu-item-type-taxonomy > a,
html body #body_wrap .menu-item .menu-item-type-post_type > a {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 5px;
}
html body #body_wrap .menu-item .menu-item-type-taxonomy > a::before,
html body #body_wrap .menu-item .menu-item-type-post_type > a::before {
  display: block !important;
  content: "";
  position: initial !important;
  transform: translateY(0) !important;
  width: 100%;
  height: 80px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid #140343;
}
html body #body_wrap .menu-item .menu-item-type-taxonomy > a::after,
html body #body_wrap .menu-item .menu-item-type-post_type > a::after {
  display: block;
  content: "";
  width: 5px;
  height: 5px;
  border-top: 1px solid #323232;
  border-right: 1px solid #323232;
  transform: rotate(45deg);
}
html body #body_wrap .menu-item .menu-item-type-taxonomy.cat--wordpress > a::before,
html body #body_wrap .menu-item .menu-item-type-post_type.cat--wordpress > a::before {
  background-image: url(../images/page/works/wordpress/eyecatch.jpg);
}
html body #body_wrap .menu-item .menu-item-type-taxonomy.cat--direction > a::before,
html body #body_wrap .menu-item .menu-item-type-post_type.cat--direction > a::before {
  background-image: url(../images/page/works/direction/eyecatch.jpg);
}
html body #body_wrap .menu-item .menu-item-type-taxonomy.cat--design > a::before,
html body #body_wrap .menu-item .menu-item-type-post_type.cat--design > a::before {
  background-image: url(../images/page/works/design/eyecatch.jpg);
}
html body #body_wrap .menu-item .menu-item-type-taxonomy.cat--photography > a::before,
html body #body_wrap .menu-item .menu-item-type-post_type.cat--photography > a::before {
  background-image: url(../images/page/works/photography/eyecatch.jpg);
}
html body #body_wrap .menu-item .menu-item-type-taxonomy.cat--cording > a::before,
html body #body_wrap .menu-item .menu-item-type-post_type.cat--cording > a::before {
  background-image: url(../images/page/works/coding/eyecatch.jpg);
}
html body #body_wrap .menu-item .menu-item-type-taxonomy.cat--one-man-show > a::before,
html body #body_wrap .menu-item .menu-item-type-post_type.cat--one-man-show > a::before {
  background-image: url(../images/page/business/one-operation/eyecatch.jpg);
}
html body #body_wrap .menu-item .menu-item-type-taxonomy.cat--seo-consulting > a::before,
html body #body_wrap .menu-item .menu-item-type-post_type.cat--seo-consulting > a::before {
  background-image: url(../images/page/business/seo/eyecatch.jpg);
}
html body #body_wrap #sp_menu {
  top: 48px;
  pointer-events: none;
  transition-duration: 0.2s;
  transition-delay: initial;
  opacity: 0;
}
html body #body_wrap #sp_menu .p-spMenu__inner {
  left: 0;
  right: initial;
  top: initial;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  padding-top: initial;
  box-shadow: initial;
  transform: translateX(0);
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__closeBtn {
  display: none;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body {
  padding: initial;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .c-widget__title {
  display: none;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav {
  margin-top: initial;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li:nth-child(odd) {
  background-color: rgba(233, 232, 244, 0.25);
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li > a,
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li > span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px;
  font-size: 16px;
  font-family: "shippori-mincho", sans-serif;
  border-bottom: initial;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li > a::after,
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li > span::after {
  display: block;
  content: "";
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li > a::before {
  display: none;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li > a::after {
  width: 10px;
  height: 10px;
  border-top: 1px solid #323232;
  border-right: 1px solid #323232;
  transform: rotate(45deg);
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li.menu-item-has-children > span {
  position: relative;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li.menu-item-has-children > span::before, html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li.menu-item-has-children > span::after {
  display: block;
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  width: 14px;
  height: 1px;
  background-color: #323232;
  transition: all 0.3s;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li.menu-item-has-children > span::after {
  transform: rotate(90deg);
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li.menu-item-has-children > span.is-active::after {
  transform: rotate(180deg);
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li.menu-item-has-children .sub-menu--wrap {
  display: none;
  padding: 20px;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li.menu-item-has-children .sub-menu--wrap .sub-menu {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 15px;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li.menu-item-has-children .sub-menu--wrap .sub-menu > li {
  width: calc(50% - 7.5px);
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li.menu-item-has-children .sub-menu--wrap .sub-menu > li > a {
  padding: initial;
  border: initial;
  font-size: 12px;
  text-align: center;
  font-family: "shippori-mincho", sans-serif;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li.menu-item-has-children .sub-menu--wrap .sub-menu > li > a::before {
  display: none;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li:last-child {
  margin: 20px;
  background-color: #140343;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li:last-child > a {
  justify-content: center;
  align-items: center;
  gap: 10px;
  color: white;
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li:last-child > a::before {
  display: block;
  content: "\f0e0";
  position: initial;
  font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands" !important;
  font-weight: bold;
  transform: translateY(0);
}
html body #body_wrap #sp_menu .p-spMenu__inner .p-spMenu__body .p-spMenu__nav .c-spnav > li:last-child > a::after {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  border-color: white;
}
html body #body_wrap #sp_menu .p-spMenu__overlay {
  display: none;
}
html body #body_wrap .c-gnav > li > a > span {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
html body #body_wrap .c-gnav > li:last-child {
  background-color: #140343;
}
html body #body_wrap .c-gnav > li:last-child > a > span {
  display: flex !important;
  gap: 5px;
  align-items: center;
  color: white;
}
html body #body_wrap .c-gnav > li:last-child > a > span::before {
  display: block;
  content: "\f0e0";
  font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
  font-weight: bold;
}
html body #body_wrap .c-gnav > li:not(:last-child) > a {
  padding-left: 20px;
  padding-right: 20px;
}
html body #body_wrap #header {
  box-shadow: initial;
}
html body #body_wrap #header .l-header__bar {
  display: none;
}
html body #body_wrap #header .l-header__inner {
  max-width: 100%;
  padding-left: initial;
  padding-right: initial;
}
html body #body_wrap #header .l-header__inner .l-header__logo {
  padding-left: initial;
  padding-right: initial;
}
html body #body_wrap #header .l-header__inner .l-header__logo a {
  padding-right: 5px;
  padding-left: 5px;
}
html body #body_wrap #header .l-header__inner .l-header__menuBtn {
  position: fixed;
  right: 0;
  top: 0;
  background-color: #140343;
  z-index: 10;
}
html body #body_wrap #header .l-header__inner .l-header__menuBtn > button {
  display: grid;
  place-content: center;
  place-items: center;
}
html body #body_wrap #header .l-header__inner .l-header__menuBtn > button > span {
  display: block;
  position: relative;
  width: 24px;
  height: 14px;
}
html body #body_wrap #header .l-header__inner .l-header__menuBtn > button > span > span {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 1px;
  background-color: white;
  transition: all 0.3s;
}
html body #body_wrap #header .l-header__inner .l-header__menuBtn > button > span > span:first-child {
  top: 0;
}
html body #body_wrap #header .l-header__inner .l-header__menuBtn > button > span > span:nth-child(2) {
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
}
html body #body_wrap #header .l-header__inner .l-header__menuBtn > button > span > span:last-child {
  bottom: 0;
}
html body #body_wrap #header .l-header__inner .l-header__menuBtn > button.is-active > span > span:first-child {
  top: 48%;
  transform: translateX(-50%) translateY(-48%) rotate(45deg);
}
html body #body_wrap #header .l-header__inner .l-header__menuBtn > button.is-active > span > span:nth-child(2) {
  opacity: 0;
  transform: translateX(0) translateY(-50%);
}
html body #body_wrap #header .l-header__inner .l-header__menuBtn > button.is-active > span > span:last-child {
  bottom: 48%;
  transform: translateX(-50%) translateY(-48%) rotate(-45deg);
}
html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children > a > span {
  position: relative;
  padding-right: 15px;
}
html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children > a > span::before, html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children > a > span::after {
  display: block;
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 1px;
  background-color: #323232;
  transition: all 0.3s;
}
html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children > a > span::after {
  right: 0.5px;
  margin-top: -0.5px;
  rotate: 90deg;
}
html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children .sub-menu {
  display: flex;
  gap: 30px;
  justify-content: center;
  position: fixed;
  left: 0 !important;
  top: 72px;
  width: 100% !important;
  padding: 30px 120px;
  transform: translateX(0) !important;
  box-shadow: initial;
  border-bottom: 1px solid #e9e8f4;
}
html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children .sub-menu > li {
  width: 20%;
}
html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children .sub-menu > li > a {
  padding: initial;
  font-size: 16px;
}
html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children .sub-menu > li > a::before {
  height: 200px;
  margin-bottom: 10px;
}
html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children .sub-menu > li > a::after {
  width: 8px;
  height: 8px;
  background-color: initial;
}
html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children .sub-menu > li > a:hover {
  background-color: initial;
}
html body #body_wrap #header .l-header__inner #gnav .c-gnav > li.menu-item-has-children:hover > a > span::after {
  right: 0;
  margin-top: -1px;
  rotate: 180deg;
}
html body #body_wrap #fix_header {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.05);
}
html body #body_wrap #fix_header .l-fixHeader__inner {
  max-width: 100%;
  height: 50px;
  padding-left: initial;
  padding-right: initial;
}
html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children > a > span {
  position: relative;
  padding-right: 15px;
}
html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children > a > span::before, html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children > a > span::after {
  display: block;
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 1px;
  background-color: #323232;
  transition: all 0.3s;
}
html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children > a > span::after {
  right: 0.5px;
  margin-top: -0.5px;
  rotate: 90deg;
}
html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children .sub-menu {
  display: flex;
  gap: 30px;
  justify-content: center;
  position: fixed;
  left: 0 !important;
  top: 50px;
  width: 100% !important;
  padding: 30px 120px;
  transform: translateX(0) !important;
  box-shadow: initial;
  border-bottom: 1px solid #e9e8f4;
}
html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children .sub-menu > li {
  width: 20%;
}
html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children .sub-menu > li > a {
  padding: initial;
  font-size: 16px;
}
html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children .sub-menu > li > a::before {
  height: 200px;
  margin-bottom: 10px;
}
html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children .sub-menu > li > a::after {
  width: 8px;
  height: 8px;
  background-color: initial;
}
html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children .sub-menu > li > a:hover {
  background-color: initial;
}
html body #body_wrap #fix_header .l-fixHeader__inner .l-fixHeader__gnav .c-gnav > li.menu-item-has-children:hover > a > span::after {
  right: 0;
  margin-top: -1px;
  rotate: 180deg;
}
html body #body_wrap #footer .l-footer__inner {
  display: flex;
  flex-direction: column;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap #footer .l-footer__inner {
    flex-direction: initial;
    justify-content: space-between;
  }
}
html body #body_wrap #footer .l-footer__inner .l-footer__widgetArea .l-container .w-footer__box {
  padding: initial;
}
html body #body_wrap #footer .l-footer__inner .l-footer__widgetArea .l-container .w-footer__box .widget_media_image {
  text-align: center;
}
html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container {
  padding: initial;
}
html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container .l-footer__nav {
  gap: 15px;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container .l-footer__nav {
    gap: 30px;
    padding-left: initial;
    padding-right: initial;
  }
}
html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container .l-footer__nav li a {
  border: initial;
  padding: initial;
}
html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container .l-footer__nav > li {
  width: calc(50% - 7.5px);
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container .l-footer__nav > li {
    width: auto;
  }
}
html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container .l-footer__nav > li > a {
  font-size: 14px;
}
html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container .l-footer__nav .sub-menu > li {
  line-height: 1.8;
}
html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container .l-footer__nav .sub-menu > li > a {
  justify-content: flex-start;
  font-size: 0.65em;
  opacity: 0.75;
}
html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container .l-footer__nav .sub-menu > li > a::before {
  display: inline-block;
  content: "-";
  margin-right: 5px;
  width: auto;
  height: auto;
  background-image: initial;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap #footer .l-footer__inner .l-footer__foot .l-container .copyright {
    text-align: right;
  }
}
html body #body_wrap #content {
  padding-left: initial;
  padding-right: initial;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section h2 {
  background-color: initial;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section h2::before {
  display: none;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section h2.pageTitle {
  font-weight: normal;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  letter-spacing: 0.05em;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section h2.sectionTitle {
  display: flex;
  gap: 20px;
  flex-direction: column;
  padding-left: initial;
  padding-right: initial;
  padding-top: initial;
  padding-bottom: initial;
  font-size: clamp(12px, 1.58311346vw, 14px);
  color: #323232;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section h2.sectionTitle strong {
  display: flex;
  gap: 10px;
  flex-direction: column;
  font-size: 2em;
  font-family: "Albert Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  letter-spacing: 0.075em;
  color: #140343;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section h2.sectionTitle strong::after {
  display: block;
  content: "";
  width: 20px;
  height: 2px;
  background-color: #140343;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section h2.sectionTitle.has-text-align-center strong::after {
  margin-left: auto;
  margin-right: auto;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section h3 {
  padding: initial;
  border-bottom: initial;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section h3::before {
  display: none;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section h4 {
  border-left: initial;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section .wp-block-group.alignfull .wp-block-group__inner-container {
  max-width: 100%;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section.news {
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section.news {
    padding-left: initial;
    padding-right: initial;
  }
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section.company {
  padding-left: 20px;
  padding-right: 20px;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section.company .wp-block-table {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section.company .wp-block-table .has-fixed-layout tbody tr td {
  display: block;
  width: 100%;
  max-width: initial;
  padding: 20px;
  text-align: center;
  border-top: initial !important;
  border-left: initial !important;
  border-right: initial !important;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section.company .wp-block-table .has-fixed-layout tbody tr td {
    display: table-cell;
    padding: 20px;
    text-align: left;
  }
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section.company .wp-block-table .has-fixed-layout tbody tr td:nth-child(1) {
  padding: 20px 0 0;
  border-bottom: initial;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section.company .wp-block-table .has-fixed-layout tbody tr td:nth-child(1) {
    width: 200px;
    border: var(--table-border);
  }
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section.company .wp-block-table .has-fixed-layout tbody tr:last-child td {
  border-bottom: initial;
}
html body #body_wrap #content #main_content .l-mainContent__inner .post_content > section.contact {
  padding-top: 6em;
  padding-bottom: 6em;
}
html body #body_wrap.home #main_visual {
  position: relative;
  margin-bottom: 6em;
  padding-bottom: 30%;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #main_visual {
    padding-bottom: 10%;
  }
}
html body #body_wrap.home #main_visual::before {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: calc(100% - 60px);
  height: 60%;
  background-color: #e9e8f4;
}
html body #body_wrap.home #main_visual .p-mainVisual__inner {
  width: calc(100% - 60px);
  margin-left: auto;
  margin-right: initial;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #main_visual .p-mainVisual__inner {
    width: calc(100% - 200px);
  }
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
html body #body_wrap.home #main_visual .p-mainVisual__inner .swiper-slide-active .swiper-img,
html body #body_wrap.home #main_visual .p-mainVisual__inner .swiper-slide-duplicate-active .swiper-img,
html body #body_wrap.home #main_visual .p-mainVisual__inner .swiper-slide-prev .swiper-img {
  animation: zoomUp 7s linear 0s normal both;
}
html body #body_wrap.home #main_visual .p-mainVisual__inner .swiper-slide img {
  height: auto;
  width: 100%;
}
html body #body_wrap.home #main_visual .w-frontTop {
  position: absolute;
  left: 5%;
  bottom: 10%;
  z-index: 1;
}
html body #body_wrap.home #main_visual .w-frontTop h1 > span {
  display: inline-block;
  font-size: clamp(20px, 2.60416667vw, 40px);
  background-color: white;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: normal;
  margin-bottom: 10px;
}
html body #body_wrap.home #main_visual .w-frontTop h1 > span > strong {
  font-family: "sicyubi-futofuder", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.5em;
  font-weight: 700;
  font-style: normal;
  color: #140343;
}
html body #body_wrap.home #main_visual .l-hero__scroller {
  position: absolute;
  right: -25px;
  bottom: 10px;
  rotate: 90deg;
  width: 110px;
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 0.15em;
  overflow: hidden;
  z-index: 10;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #main_visual .l-hero__scroller {
    right: 100px;
    bottom: 0;
    bottom: -5px;
  }
}
html body #body_wrap.home #main_visual .l-hero__scroller::after {
  display: block;
  content: "";
  width: 100%;
  height: 0.5px;
  margin-top: 5px;
  background-color: #140343;
  animation-name: scroller;
  animation-duration: 1.75s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: both;
  animation-iteration-count: infinite;
}
@keyframes scroller {
  from {
    translate: -100%;
  }
  to {
    translate: 100%;
  }
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro {
  position: relative;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro {
    margin-bottom: 18em !important;
  }
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro::before {
  display: block;
  content: "";
  position: absolute;
  right: 0;
  bottom: -25%;
  width: calc(100% - 130px);
  height: 100%;
  background-color: #e9e8f4;
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock {
  gap: 20px !important;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock {
    gap: 60px !important;
  }
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock .about--intro__columnBlock__imgs {
  display: flex;
  position: relative;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock .about--intro__columnBlock__imgs {
    display: block;
  }
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock .about--intro__columnBlock__imgs > figure {
  flex: 1;
  margin: initial;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock .about--intro__columnBlock__imgs > figure {
    position: absolute;
  }
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock .about--intro__columnBlock__imgs > figure:first-child {
  right: 0;
  top: 0;
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock .about--intro__columnBlock__imgs > figure:last-child {
  left: 0;
  bottom: -40%;
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock .about--intro__columnBlock__texts {
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock .about--intro__columnBlock__texts {
    padding-left: initial;
    padding-right: initial;
  }
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--intro .about--intro__columnBlock .about--intro__columnBlock__texts .about--intro__columnBlock__texts__titleSub {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: normal;
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--detail {
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--detail {
    padding-left: initial;
    padding-right: initial;
  }
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.about--detail .about--detail__columnBlock .about--detail__columnBlock__item h3 {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: normal;
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.works {
  position: relative;
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.works::before {
  display: block;
  content: "";
  position: absolute;
  right: 0;
  bottom: 2.5%;
  width: calc(100% - 50px);
  height: 60%;
  background-color: #e9e8f4;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.works::before {
    bottom: -7.5%;
    height: 60%;
    width: calc(100% - 200px);
  }
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.works .wp-block-heading {
  padding-left: 20px;
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.works .wp-block-group .works__list .swiper-wrapper {
  transition-timing-function: linear;
  gap: 10px !important;
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.works .wp-block-group .works__list .swiper-wrapper .swiper-slide {
  width: 66.6666666667%;
  margin: initial;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.works .wp-block-group .works__list .swiper-wrapper .swiper-slide {
    width: 25%;
  }
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.works .wp-block-group .works__list .swiper-wrapper .swiper-slide > a {
  display: block;
  width: 100%;
  height: 100%;
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.works .wp-block-group .works__list .swiper-wrapper .swiper-slide > a .p-postList__thumb {
  margin-bottom: 10px;
}
html body #body_wrap.home #content #main_content .l-mainContent__inner .post_content section.works .wp-block-group .works__list .swiper-wrapper .swiper-slide > a .p-postList__title {
  margin-bottom: 10px !important;
  font-size: clamp(13px, 1.6927vw, 15px);
}
html body #body_wrap.page #content {
  max-width: 100%;
  margin-bottom: initial;
  padding-top: initial;
}
html body #body_wrap.page #content #main_content {
  max-width: 100%;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .c-pageTitle {
  position: absolute;
  left: 30px;
  top: 180px;
  border-bottom: initial;
  z-index: 2;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.page #content #main_content .l-mainContent__inner .c-pageTitle {
    top: 370px;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .c-pageTitle .c-pageTitle__inner {
  display: inline-block;
  font-family: "shippori-mincho", sans-serif;
  font-weight: normal;
  letter-spacing: 0.05em;
  border-bottom: initial;
  background-color: white;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .p-articleThumb {
  width: calc(100% - 65px);
  height: 200px;
  margin-left: auto;
  margin-bottom: 10em;
  overflow: hidden;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.page #content #main_content .l-mainContent__inner .p-articleThumb {
    width: calc(100% - 130px);
    height: 400px;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .p-articleThumb::before {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  top: 70px;
  width: calc(100% - 60px);
  height: 200px;
  background-color: #e9e8f4;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.page #content #main_content .l-mainContent__inner .p-articleThumb::before {
    height: 400px;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .p-articleThumb img {
  position: relative;
  box-shadow: initial;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  z-index: 1;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .w-pageTop {
  margin-top: -80px;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .w-pageTop .l-hero__scroller {
  rotate: 90deg;
  width: 110px;
  margin-left: auto;
  margin-right: -20px;
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 0.15em;
  overflow: hidden;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.page #content #main_content .l-mainContent__inner .w-pageTop .l-hero__scroller {
    margin-right: 50px;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .w-pageTop .l-hero__scroller::after {
  display: block;
  content: "";
  width: 100%;
  height: 0.5px;
  margin-top: 5px;
  background-color: #140343;
  animation-name: scroller;
  animation-duration: 1.75s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: both;
  animation-iteration-count: infinite;
}
@keyframes scroller {
  from {
    translate: -100%;
  }
  to {
    translate: 100%;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.intro {
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.intro {
    order: inherit;
    padding-left: initial;
    padding-right: initial;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns {
  gap: 20px !important;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns {
    gap: 60px !important;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns .wp-block-column .points__columnBlock__title {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: normal;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns .wp-block-column .points__columnBlock__list {
  margin: initial;
  padding: initial;
  list-style-type: none;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns .wp-block-column .points__columnBlock__list li {
  display: flex;
  gap: 5px;
  align-items: center;
  line-height: 1.8;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns .wp-block-column .points__columnBlock__list li::before {
  display: block;
  content: "\f058";
  font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
  font-weight: bold;
  color: #5188C0;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns .wp-block-column .points__columnBlock__hr {
  max-width: 100%;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns .wp-block-column.is-vertically-aligned-center {
  order: 2;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns .wp-block-column.is-vertically-aligned-center {
    order: inherit;
    padding-left: initial;
    padding-right: initial;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns .wp-block-column:not(.is-vertically-aligned-center) {
  order: 1;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.points .points__columnBlock .wp-block-columns .wp-block-column:not(.is-vertically-aligned-center) {
    order: inherit;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.price {
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.price {
    padding-left: initial;
    padding-right: initial;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.price .price__columnBlock .price__columnBlock__item {
  border-radius: 10px;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.price .price__columnBlock .price__columnBlock__item .price__columnBlock__item__formula {
  gap: initial !important;
  justify-content: center !important;
  padding: 20px;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.price .price__columnBlock .price__columnBlock__item .price__columnBlock__item__formula .wp-block-column:nth-child(2) {
  width: auto !important;
  flex: 0.25 !important;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.price .price__columnBlock .price__columnBlock__item .price__columnBlock__item__formula .wp-block-column:nth-child(1), html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.price .price__columnBlock .price__columnBlock__item .price__columnBlock__item__formula .wp-block-column:nth-child(3) {
  width: 100% !important;
  flex: 1 !important;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.price .price__columnBlock .price__columnBlock__item .price__columnBlock__item__recommend h4 {
  display: flex;
  gap: 5px;
  padding: initial;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.price .price__columnBlock .price__columnBlock__item .price__columnBlock__item__recommend h4::before {
  display: block;
  content: "\f058";
  font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
  font-weight: bold;
  color: #5188C0;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.faq {
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width: 768px) and (min-width: 1024px) {
  html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.faq {
    padding-left: initial;
    padding-right: initial;
  }
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content section.articleList {
  padding-left: 20px;
  padding-right: 20px;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 120px !important;
  padding-left: 20px;
  padding-right: 20px;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector .wpcf7 form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector .wpcf7 form > dl > dt > p {
  font-size: 14px;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector .wpcf7 form > dl > dd > p > span {
  display: block;
  width: 100%;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector .wpcf7 form > dl > dd > p > span input,
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector .wpcf7 form > dl > dd > p > span textarea {
  display: block;
  width: 100%;
  border: initial;
  font-size: 16px;
  background-color: #e9e8f4;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector .wpcf7 form > dl.required > dt > p {
  display: flex;
  gap: 5px;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector .wpcf7 form > dl.required > dt > p::after {
  display: block;
  content: "*";
  color: red;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector .wpcf7 form > p {
  text-align: center;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector .wpcf7 form > p .form__submit {
  display: inline-block;
  padding: 20px 40px;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.05em;
  color: white;
  border-radius: 40px;
  border: initial;
  background-color: #140343;
}
html body #body_wrap.page #content #main_content .l-mainContent__inner .post_content .wp-block-contact-form-7-contact-form-selector .wpcf7 form > p .wpcf7-spinner {
  display: none;
}
html body #body_wrap.archive #content {
  max-width: 1200px !important;
}
html body #body_wrap.archive #content #main_content {
  max-width: 100% !important;
  padding-left: 20px;
  padding-right: 20px;
}
html body #body_wrap.archive #content #main_content .l-mainContent__inner .c-pageTitle .c-pageTitle__inner small {
  display: none;
}
html body #body_wrap.single #content {
  max-width: 1200px !important;
}
html body #body_wrap.single #content #main_content {
  max-width: 100% !important;
  padding-left: 20px;
  padding-right: 20px;
}
html[data-spmenu=opened] body #body_wrap #sp_menu {
  opacity: 1;
  pointer-events: visible;
}
html[data-spmenu=closed] body #body_wrap #sp_menu {
  opacity: 0;
  pointer-events: none;
}/*# sourceMappingURL=style.css.map */