@charset "UTF-8";
/* ===============================================
# レスポンシブ
=============================================== */
.pc {
  display: block;
}
@media (width < 640px) {
  .pc {
    display: none;
  }
}

.mb {
  display: none;
}
@media (width < 640px) {
  .mb {
    display: block;
  }
}

/* ===============================================
# フォント
=============================================== */
/* ===== LINE Seed JP (日本語) ===== */
@font-face {
  font-family: "LINESeedJP";
  src: url("../fonts/LINESeedJP_OTF_Rg.woff2") format("woff2"), url("../fonts/LINESeedJP_OTF_Rg.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "LINESeedJP";
  src: url("../fonts/LINESeedJP_OTF_Bd.woff2") format("woff2"), url("../fonts/LINESeedJP_OTF_Bd.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "LINESeedJP";
  src: url("../fonts/LINESeedJP_OTF_Eb.woff2") format("woff2"), url("../fonts/LINESeedJP_OTF_Eb.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
/* ===== LINE Seed Sans (英数：Bold/ExtraBoldのみ) ===== */
@font-face {
  font-family: "LINESeedSans";
  src: url("../fonts/LINESeedSans_W_Bd.woff2") format("woff2"), url("../fonts/LINESeedSans_W_Bd.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "LINESeedSans";
  src: url("../fonts/LINESeedSans_W_XBd.woff2") format("woff2"), url("../fonts/LINESeedSans_W_XBd.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
body {
  font-family: "LINESeedJP", "Noto Sans JP", "Hiragino Sans", "Meiryo", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.en,
.number {
  font-family: "LINESeedSans", "Helvetica Neue", "Arial", sans-serif;
}

/* ===============================================
# layout
=============================================== */
.c-entry__header {
  display: none;
}

.c-section {
  padding-top: 0;
}

/* ===============================================
# button
=============================================== */
.smb-btn {
  border-bottom: 5px solid #929192;
  position: relative;
  overflow: hidden;
}
.smb-btn::after {
  -webkit-animation: 4s 0s shine linear infinite;
          animation: 4s 0s shine linear infinite;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.4) 100%);
  content: "";
  height: 100%;
  left: -100%;
  position: absolute;
  top: 0;
  transform: skewX(-25deg);
  width: 50%;
}

@-webkit-keyframes shine {
  20% {
    left: 150%;
  }
  100% {
    left: 150%;
  }
}

@keyframes shine {
  20% {
    left: 150%;
  }
  100% {
    left: 150%;
  }
}
.smb-btn:hover {
  margin-top: 3px;
  border-bottom: 2px solid #a6a6a6;
}

/* ===============================================
# section__title
=============================================== */
.section__title {
  position: relative;
  padding: 1rem;
  border-radius: 20px;
  background: repeating-linear-gradient(45deg, #dddbb3 0 3px, #fff 3px 8px);
  color: #333;
  font-weight: bold;
  font-size: 1.7rem;
  text-align: center;
}
@media (width < 1024px) {
  .section__title {
    font-size: clamp(1.35rem, 0.73rem + 1.52vw, 1.7rem);
  }
}
@media (width < 640px) {
  .section__title {
    font-size: clamp(1.25rem, 1.15rem + 0.5vw, 1.35rem);
  }
}
.section__title::before {
  position: absolute;
  bottom: -16px;
  left: calc(50% - 6px);
  transform: translateX(calc(-50% + 6px));
  height: 20px;
  width: 2px;
  background-color: #333;
  content: "";
}
.section__title::after {
  position: absolute;
  top: -6px;
  left: -6px;
  width: 100%;
  height: 100%;
  border: 2px solid #353535;
  border-radius: 20px;
  content: "";
}

/* ======================= H3 ===*/
.section__title-h3 {
  position: relative;
  padding: 0.8rem 0;
  margin-bottom: 0.2rem;
  overflow: hidden;
  color: #353535;
  font-weight: bold;
  font-size: 26px;
}
@media (width < 640px) {
  .section__title-h3 {
    font-size: 1.2rem;
  }
}

.section__title-h3:before,
.section__title-h3:after {
  position: absolute;
  width: 100%;
  bottom: 0;
  content: "";
}

.section__title-h3:before {
  border-bottom: 5px solid #ddb3b8;
}

.section__title-h3:after {
  border-bottom: 5px solid #d4d4d4;
}

/* ===============================================
# header
=============================================== */
.l-header .p-header-sub-nav {
  padding: 0;
}
.l-header .p-header-sub-nav ul {
  gap: 0;
}
.l-header .p-header-sub-nav li {
  font-size: 1.2em;
}
.l-header .p-header-sub-nav li a {
  padding: 1em 2em;
  text-decoration: none;
  color: #fff;
  font-weight: bold;
}
.l-header .p-header-sub-nav .menu-item-229 {
  background: #fed600;
  border-radius: 0 0 0 30px;
}
.l-header .p-header-sub-nav .menu-item-230 {
  background: #06c755;
  border-radius: 0 0 30px 0;
}
.l-header .nav__btn {
  display: flex;
  justify-content: center;
  align-items: center;
}
.l-header .nav__btn .fa-envelope,
.l-header .nav__btn .fa-line {
  margin-right: 0.3em;
  font-size: 1.2em;
}

#menu-item-229 {
  color: #333;
  font-weight: bold;
}

#menu-item-230 {
  background: #06c755 !important;
  font-weight: bold;
}

/* ===============================================
# SP cta__btn
=============================================== */
.p-footer-sticky-nav .menu-item-229 a,
.p-footer-sticky-nav .menu-item-230 a {
  font-size: 1rem;
  font-weight: bold;
  padding-top: 0.8em;
  padding-bottom: 0.8em;
}
.p-footer-sticky-nav .nav__btn {
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-footer-sticky-nav .nav__btn .fa-envelope,
.p-footer-sticky-nav .nav__btn .fa-line {
  margin-right: 0.3em;
  font-size: 1.2em;
}
.p-footer-sticky-nav .menu-item-229 {
  background: #fed600 !important;
}
.p-footer-sticky-nav .menu-item-229 a {
  color: #333 !important;
}
.p-footer-sticky-nav .menu-item-230 {
  background: #06c755 !important;
}

/* ===============================================
# worries
=============================================== */
@media (width < 640px) {
  .worries .c-container {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.worries .worries__wrapper {
  position: relative;
  margin-top: 3rem;
  border-radius: 100px 0 0 0;
}
.worries .worries__img {
  position: absolute;
  bottom: 0;
  right: clamp(11px, 11px + (100vw - 1024px) * 0.2403846154, 111px);
  width: min(200px, 20%);
}
@media (width < 1024px) {
  .worries .worries__img {
    width: min(200px, 25%);
    bottom: clamp(-70px, -59px + (100vw - 640px) * -0.0287206266, -59px);
  }
}
@media (width < 640px) {
  .worries .worries__img {
    width: min(125px, 37%);
  }
}
.worries .worries__item {
  padding: 2em;
}
@media (width < 640px) {
  .worries .worries__item {
    padding-left: 0;
    padding-right: 0;
  }
}
.worries .worries__item ul li {
  font-size: 1.2rem;
  font-weight: bold;
  border-bottom: 1px dotted #fff;
  line-height: 3;
}
@media (width < 1024px) {
  .worries .worries__item ul li {
    font-size: 1.05rem;
    line-height: 2;
  }
}
@media (width < 640px) {
  .worries .worries__item ul li {
    font-style: 1rem;
  }
}

/* ===============================================
# .global-nav
=============================================== */
.global-nav {
  padding-top: 3rem;
  padding-bottom: 0;
}

/* ===============================================
# deform-cause
=============================================== */
.deform-cause .c-container {
  margin-top: 3rem;
}
.deform-cause .deform-cause__wrapper {
  margin-top: 4rem;
}
@media (width < 640px) {
  .deform-cause .deform-cause__wrapper {
    margin-top: 3rem;
  }
}

/* ===============================================
# deform-decision
=============================================== */
.deform-decision {
  padding-bottom: 4rem;
}
.deform-decision .deform-decision__wrapper {
  margin-top: 4rem;
}
@media (width < 640px) {
  .deform-decision .deform-decision__wrapper {
    margin-top: 3rem;
  }
}

/* ===============================================
# helmet-therapy
=============================================== */
@media (width < 640px) {
  .helmet-therapy {
    padding-top: 0;
  }
}
@media (width < 640px) {
  .helmet-therapy .wp-block-columns {
    margin-top: 3rem;
    gap: 0;
  }
}
.helmet-therapy .c-container {
  margin-top: 2rem;
}
.helmet-therapy .helmet-therapy__features {
  margin-top: 4rem;
}
@media (width < 640px) {
  .helmet-therapy .helmet-therapy__features {
    margin-top: 2rem !important;
  }
}
.helmet-therapy .section__title-h3 {
  margin-top: 3em !important;
}
@media (width < 640px) {
  .helmet-therapy .helmet-therapy__design__container .helmet-therapy__design__container-left {
    padding: 0;
  }
}

/* ===============================================
# case
=============================================== */
.case .c-container {
  padding-left: 1rem;
  padding-right: 1rem;
}
.case .case__wrapper {
  margin-top: 2rem !important;
  background: #f7f6f5;
  border-radius: 30px;
  padding: 2em !important;
}
@media (width < 640px) {
  .case .case__wrapper {
    padding: 0.5em !important;
  }
}

/* ===============================================
# about
=============================================== */
@media (width < 640px) {
  .about .c-container {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.about .RJE_R002LP_message_accent {
  margin: 5rem 0;
}

/* ===============================================
# flow
=============================================== */
.flow {
  background-color: #ede9e1;
  opacity: 0.8;
  background-image: radial-gradient(#444cf7 0.5px, #ede9e1 0.5px);
  background-size: 10px 10px;
  padding-bottom: 10rem;
}
@media (width < 640px) {
  .flow {
    padding-bottom: 6rem;
  }
}
.flow .c-container {
  margin-top: 3rem;
}
.flow .flow__wrapper {
  margin-top: 2em !important;
  padding: 3em;
  background: #fff;
  border-radius: 30px;
}
@media (width < 640px) {
  .flow .flow__wrapper {
    padding: 1.5em;
  }
}
.flow .box {
  position: relative;
  padding: 5rem 1rem 1rem;
  background-color: #f7f7f7;
  outline: 2px solid #333;
  outline-offset: -0.5rem;
  width: min(500px, 40vw);
}
@media (width < 1024px) {
  .flow .box {
    width: min(500px, 75vw);
  }
}
.flow .box::before {
  position: absolute;
  top: 1rem;
  left: 0;
  width: 100%;
  padding: 0.5rem 0;
  background-color: rgba(6, 199, 85, 0.7);
  color: white;
  font-weight: bold;
  text-align: center;
  content: attr(data-title);
}

/* ===============================================
# attention
=============================================== */
.attention {
  padding-top: 8rem;
}
@media (width < 640px) {
  .attention {
    padding-top: 4rem;
  }
}
.attention .wp-block-cover {
  margin-top: 3em;
}
@media (width < 640px) {
  .attention .wp-block-cover {
    margin-top: 2rem !important;
  }
}
.attention .attention__wrapper .attention__item-top {
  flex-basis: 50%;
  max-width: 100%;
}
@media (width < 640px) {
  .attention .attention__wrapper .attention__item-top {
    flex-basis: 100%;
  }
}

/* ===============================================
# pricing
=============================================== */
.pricing {
  padding-bottom: 8rem;
}
@media (width < 640px) {
  .pricing {
    padding-bottom: 4rem;
  }
}
.pricing .pricing__item {
  margin-top: 3rem;
}
.pricing .pricing__item .smb-information__item__label span {
  font-size: 1.15rem;
  font-weight: bold;
}
.pricing .pricing__info {
  margin-top: 3rem !important;
  background: #fff;
}

/* ===============================================
# access
=============================================== */
.access {
  padding-top: 5rem;
}
.access .wp-block-snow-monkey-blocks-section {
  padding-bottom: 0;
}
.access .access__title__wrapper {
  margin-bottom: 2rem !important;
}
@media (width < 640px) {
  .access .access__info .c-container {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.access .smb-section__contents-wrapper {
  transform: translateY(-8rem);
}
@media (width < 640px) {
  .access .smb-section__contents-wrapper {
    transform: translateY(-4.5rem);
  }
}
.access .smb-section__contents-wrapper .access__container {
  border-radius: 30px 30px 0 0;
  padding-top: 3.5rem;
}
.access .access__item p {
  margin-top: 1em !important;
}

/* ===============================================
# faq
=============================================== */
.faq {
  padding-top: 8rem;
}
@media (width < 640px) {
  .faq {
    padding-top: 4rem;
  }
}
.faq .wp-block-snow-monkey-blocks-accordion {
  margin-top: 5rem;
}
@media (width < 640px) {
  .faq .wp-block-snow-monkey-blocks-accordion {
    margin-top: 3rem;
  }
}

/* ===============================================
# tooter__cta
=============================================== */
.footer__cta .c-container {
  padding-left: 3rem !important;
}
.footer__cta .smb-section__contents-wrapper {
  width: max(390px, 35vw);
  margin-left: 0;
}
@media (width < 640px) {
  .footer__cta .footer__cta__btn {
    flex-direction: column;
    gap: 0;
  }
}
@media (width < 640px) {
  .footer__cta .footer__cta__btn .wp-block-snow-monkey-blocks-buttons {
    margin-top: 2.5rem !important;
  }
}
/*# sourceMappingURL=style.css.map */