@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
.swiper {
  top: -32px;
}
.swiper .swiper-wrapper {
  display: flex;
}
.swiper .swiper-wrapper figure {
  position: relative;
  width: 100%;
  max-height: 289px;
  height: 100%;
}
.swiper .swiper-wrapper figure img {
  max-height: 100%;
}
.swiper .swiper-wrapper figure figcaption {
  position: absolute;
  bottom: 0;
  width: 100%;
  background-color: #000000;
}
.swiper .swiper-wrapper figure figcaption span {
  display: block;
  padding: 8px;
  text-align: center;
  color: #ffffff;
}

html {
  margin: 0;
  padding: 0;
  scroll-behavior: smooth;
}

body {
  font-family: "Noto Sans", "Noto Sans JP", sans-serif;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  letter-spacing: normal;
}

.lower {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 120px;
}
.lower h2 {
  font-size: 48px;
  width: 100%;
  text-align: center;
  color: #e34808;
  border-bottom: 6px solid #e34808;
  padding-bottom: 24px;
  margin: 0;
}
.lower h3 {
  margin: 0;
  padding: 64px 0 36px;
  font-size: 32px;
}
.lower h4 {
  margin: 0;
  padding-bottom: 16px;
  font-size: 24px;
}

ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
ul li {
  margin: 0;
  padding: 0;
}

address {
  font-style: normal;
}

figure {
  margin: 0;
}

img {
  max-width: 100%;
  margin: 0;
  padding: 0;
  vertical-align: top;
}

section {
  padding-top: 120px;
}
@media screen and (max-width: 1024px) {
  section {
    padding: 64px 24px;
  }
}
@media screen and (max-width: 576px) {
  section {
    padding: 16px;
  }
}

.horizontal_content_unit {
  display: flex;
}

dl dd {
  margin: 0 0 16px 0;
}

table {
  border-top: 1px solid #cccccc;
  margin: 0;
  padding: 0;
  border-collapse: collapse;
  width: 100%;
}
table th {
  width: 25%;
}
table th,
table td {
  border-bottom: 1px solid #cccccc;
  padding: 16px 0;
  text-align: left;
}

.number_label {
  background-color: #e34808;
  color: #ffffff;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  line-height: 1.5rem;
  font-size: 14px;
  margin-bottom: 24px;
}
.number_label .number {
  font-size: 1.6rem;
  font-weight: bold;
}
@media screen and (max-width: 576px) {
  .number_label {
    width: 75px;
    height: 75px;
    margin-bottom: 0;
  }
}

.bottom_catchcopy {
  text-align: center;
}
.bottom_catchcopy p {
  font-size: 1.2rem;
  font-weight: bold;
  margin: 48px 0 0;
}
.bottom_catchcopy span {
  font-size: 1rem;
}

.category_list {
  display: flex;
  margin-bottom: 16px;
}
.category_list li {
  color: #ffffff;
  background-color: #e34808;
  padding: 8px;
  margin-right: 8px;
  border-radius: 4px;
  line-height: 0.8rem;
  font-size: 0.8rem;
}
.category_list li:last-child {
  margin-right: 0;
}

.br_SP {
  display: none;
}
@media screen and (max-width: 576px) {
  .br_SP {
    display: block;
  }
}

.round_button_area .round_button {
  display: block;
  background-color: #e34808;
  border-radius: 100vh;
  padding: 16px 24px;
  width: fit-content;
  margin: 0 auto;
  display: block;
  color: #ffffff;
  text-decoration: none;
}
.round_button_area .round_button:hover {
  opacity: 0.8;
}

/* 画面サイズが1279px以下の時はPC用メニューは非表示 */
.pc-menu {
  display: block;
}
@media screen and (max-width: 1024px) {
  .pc-menu {
    display: none;
  }
}

.sp-menu {
  display: none;
}
@media screen and (max-width: 1024px) {
  .sp-menu {
    display: block;
  }
}

header {
  width: 100%;
  color: #ffffff;
}
header .menu_header {
  display: flex;
}
header .menu_header :nth-child(1) {
  margin-right: auto;
  text-decoration: none;
}
header .menu_body {
  display: flex;
  align-items: end;
}
header .menu_body :nth-child(1) {
  margin-right: auto;
}
header h1 {
  font-size: 12px;
  font-weight: normal;
  margin: 0;
}
header .tel_number {
  font-size: 28px;
  display: block;
  clear: both;
  line-height: 1rem;
}
header .business_hour {
  font-size: 12px;
  display: block;
  text-align: right;
}
header .contact_button_wrapper:hover {
  opacity: 0.8;
}
header .contact_button_wrapper .contact_button {
  line-height: 1rem;
  letter-spacing: 1px;
  font-size: 14px;
  font-weight: bold;
  display: block;
  color: #e34808;
  padding: 16px;
  background-color: #f6c101;
  margin-left: 24px;
}

.main-menu {
  display: flex;
  background: #e34808;
}
.main-menu .logo img {
  width: 100%;
  max-width: 300px;
}

.pc-menu {
  padding: 24px 0;
  margin: 0 auto;
  width: 1280px;
}
.pc-menu .menu_wrapper {
  display: flex;
  align-items: center;
}
.pc-menu .menu_wrapper .menu_inner {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.pc-menu .menu_wrapper .menu_inner ul {
  display: flex;
  flex-wrap: nowrap;
  list-style: none;
  margin: 0;
  padding: 0;
}
.pc-menu .menu_wrapper .menu_inner ul li {
  text-align: center;
  font-size: 16px;
  padding-left: 24px;
}
.pc-menu .menu_wrapper .menu_inner ul li a {
  display: block;
  text-decoration: none;
  color: #ffffff;
  line-height: 1.25rem;
}
.pc-menu .menu_wrapper .menu_inner ul li a span {
  display: block;
  clear: both;
  font-size: 12px;
}
.pc-menu .menu_wrapper .menu_inner ul li a:hover {
  text-decoration: underline;
}

.sp-menu__box {
  position: fixed;
  top: 0;
  right: 0;
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  z-index: 90;
  background: #e34808;
}
.sp-menu__box span {
  content: "";
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background: #ffffff;
  position: absolute;
}
.sp-menu__box span:before, .sp-menu__box span:after {
  content: "";
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background: #ffffff;
  position: absolute;
}
.sp-menu__box span:before {
  bottom: 8px;
}
.sp-menu__box span:after {
  top: 8px;
}

#sp-menu__check {
  display: none;
}
#sp-menu__check:checked ~ .sp-menu__box span {
  background: rgba(255, 255, 255, 0);
}
#sp-menu__check:checked ~ .sp-menu__box span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#sp-menu__check:checked ~ .sp-menu__box span::after {
  top: 0;
  transform: rotate(-45deg);
}
@media screen and (max-width: 1024px) {
  #sp-menu__check:checked ~ .sp-menu__content {
    left: 50%;
  }
}
@media screen and (max-width: 576px) {
  #sp-menu__check:checked ~ .sp-menu__content {
    left: 0;
  }
}

.sp-menu__content {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 100%;
  z-index: 80;
  background-color: #e34808;
  transition: all 0.5s;
}
@media screen and (max-width: 1024px) {
  .sp-menu__content {
    width: 50%;
  }
}
@media screen and (max-width: 576px) {
  .sp-menu__content {
    width: 100%;
  }
}
.sp-menu__content .sp-menu__content_inner {
  padding: 48px 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.sp-menu__content .sp-menu__content_inner img {
  width: 100%;
}
@media screen and (max-width: 1024px) {
  .sp-menu__content .sp-menu__content_inner img {
    max-width: 100%;
  }
}
.sp-menu__content .sp-menu__content_inner .sp-menu__list li {
  border-bottom: solid 1px #ffffff;
  list-style: none;
  margin: 0;
  padding: 0;
}
.sp-menu__content .sp-menu__content_inner .sp-menu__list li:last-child {
  border-bottom: none;
}
.sp-menu__content .sp-menu__content_inner .sp-menu__list li a {
  display: block;
  width: 100%;
  font-size: 15px;
  box-sizing: border-box;
  color: #ffffff;
  text-decoration: none;
  padding: 8px 0;
}
.sp-menu__content .sp-menu__content_inner .sp-menu__list li .social_link {
  display: flex;
  justify-content: space-between;
}
.sp-menu__content .sp-menu__content_inner .sp-menu__list li .social_link li {
  border: none;
}
.sp-menu__content .sp-menu__content_inner .sp-menu__list li .social_link li a {
  font-size: 24px;
}
.sp-menu__content .sp-menu__content_inner address {
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-align: center;
}
.sp-menu__content .sp-menu__content_inner address .contact_button {
  margin: 0;
}
.sp-menu__content .sp-menu__content_inner address .business_hour {
  text-align: center;
}

footer .content_inner {
  max-width: 1280px;
  padding: 120px 0;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  footer .content_inner {
    padding: 24px;
  }
}
@media screen and (max-width: 576px) {
  footer .content_inner {
    padding: 16px;
  }
}
footer .content_inner .message {
  text-align: center;
}
footer .estimation {
  background-color: #eeeeee;
  margin: 0;
}
footer .estimation .main_message {
  text-align: center;
  margin-bottom: 48px;
}
@media screen and (max-width: 576px) {
  footer .estimation .main_message {
    margin-bottom: 24px;
  }
}
footer .estimation .main_message span {
  color: #e34808;
  font-weight: bold;
  font-size: 1.5rem;
}
@media screen and (max-width: 576px) {
  footer .estimation .main_message span {
    font-size: 1.25rem;
  }
}
footer .estimation .main_message p {
  font-size: 1rem;
}
@media screen and (max-width: 576px) {
  footer .estimation .main_message p {
    font-size: 0.8rem;
  }
}
footer .estimation .diagnosis {
  display: flex;
  gap: 48px;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  footer .estimation .diagnosis {
    gap: 24px;
  }
}
@media screen and (max-width: 576px) {
  footer .estimation .diagnosis {
    flex-direction: column;
    column-gap: 16px;
    row-gap: 24px;
  }
}
footer .estimation .diagnosis .image_area {
  display: flex;
  width: 50%;
  gap: 24px;
}
@media screen and (max-width: 576px) {
  footer .estimation .diagnosis .image_area {
    width: 100%;
    gap: 16px;
  }
}
footer .estimation .diagnosis .sub_message {
  width: fit-content;
}
footer .estimation .diagnosis .sub_message span {
  font-size: 1.25rem;
  font-weight: bold;
}
@media screen and (max-width: 576px) {
  footer .estimation .diagnosis .sub_message span {
    display: block;
    width: 100%;
    text-align: center;
  }
}
footer .estimation .diagnosis .sub_message ul {
  list-style-type: disc;
  list-style-position: inside;
  margin: 24px 0;
}
@media screen and (max-width: 576px) {
  footer .estimation .diagnosis .sub_message ul {
    margin: 8px 0 0;
  }
}
footer .estimation .diagnosis .sub_message ul li {
  color: #e34808;
}
@media screen and (max-width: 576px) {
  footer .estimation .diagnosis .sub_message {
    width: 100%;
  }
}
footer .contact {
  background-color: #e34808;
  color: #ffffff;
  margin: 0;
  padding: 0;
}
footer .contact .content_inner {
  position: relative;
  padding-bottom: 0;
}
footer .contact .content_inner .message span {
  font-size: 1.2rem;
}
@media screen and (max-width: 576px) {
  footer .contact .content_inner .message span {
    font-size: 1rem;
  }
}
footer .contact .content_inner .message p {
  font-size: 1.5rem;
  margin: 0;
  font-weight: bold;
}
@media screen and (max-width: 576px) {
  footer .contact .content_inner .message p {
    font-size: 1.25rem;
  }
}
footer .contact .content_inner address {
  padding: 24px 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-align: center;
}
footer .contact .content_inner address:first-child {
  font-size: 1.2rem;
  font-weight: bold;
}
footer .contact .content_inner address .tel_number {
  font-size: 1.75rem;
  font-weight: bold;
}
footer .contact .content_inner .contact_area {
  display: flex;
  color: #000000;
  gap: 24px;
  padding-bottom: 120px;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  footer .contact .content_inner .contact_area {
    padding-bottom: 24px;
  }
}
@media screen and (max-width: 576px) {
  footer .contact .content_inner .contact_area {
    flex-direction: column;
  }
}
footer .contact .content_inner .contact_area .button_wrapper {
  box-sizing: border-box;
  background-color: #e34808;
  color: #ffffff;
  padding: 24px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
footer .contact .content_inner .contact_area .button_wrapper:hover {
  opacity: 0.8;
}
footer .contact .content_inner .contact_area .button_wrapper .text_area {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
footer .contact .content_inner .contact_area .button_wrapper .text_area .text_large {
  font-size: 2.75rem;
  line-height: 2rem;
  font-weight: bold;
  letter-spacing: 0;
}
footer .contact .content_inner .contact_area .button_wrapper .text_area .text_small {
  font-size: 0.8rem;
  line-height: 0.8rem;
  letter-spacing: normal;
  font-weight: normal;
}
footer .contact .content_inner .contact_area .button_wrapper .arrow {
  font-size: 2rem;
}
footer .contact .content_inner .contact_area .contact_form,
footer .contact .content_inner .contact_area .line_area {
  background-color: #ffffff;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 48px;
  box-sizing: border-box;
}
@media screen and (max-width: 576px) {
  footer .contact .content_inner .contact_area .contact_form,
  footer .contact .content_inner .contact_area .line_area {
    width: 100%;
    padding: 48px 24px;
  }
}
footer .contact .content_inner .contact_area .contact_form img,
footer .contact .content_inner .contact_area .line_area img {
  width: 150px;
}
footer .contact .content_inner .contact_area .contact_form a,
footer .contact .content_inner .contact_area .line_area a {
  text-decoration: none;
}
footer .contact .content_inner .contact_area .contact_form_description,
footer .contact .content_inner .contact_area .line_area_description {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 16px;
}
footer .contact .content_inner .contact_area .contact_form_description span,
footer .contact .content_inner .contact_area .line_area_description span {
  line-height: 1.2rem;
  font-weight: bold;
}
footer .contact .content_inner .contact_area .contact_form_description .icon,
footer .contact .content_inner .contact_area .line_area_description .icon {
  font-size: 1.75rem;
  color: #e34808;
  padding-right: 16px;
}
footer .contact .content_inner .contact_area .line_area_description .icon {
  color: #06c755;
}
footer .contact .content_inner .bg_image-crew {
  position: absolute;
  z-index: 70;
  right: 2.5%;
  bottom: 0;
}
@media screen and (max-width: 1024px) {
  footer .contact .content_inner .bg_image-crew {
    display: none;
  }
}
footer .contact .content_inner .bg_image-crew img {
  width: 65%;
}
footer .footer_wrapper {
  text-align: center;
  padding: 64px 0;
}
@media screen and (max-width: 1024px) {
  footer .footer_wrapper {
    text-align: left;
  }
}
@media screen and (max-width: 1024px) {
  footer .footer_wrapper {
    padding: 24px;
  }
}
@media screen and (max-width: 576px) {
  footer .footer_wrapper {
    padding: 16px;
  }
}
footer .footer_wrapper .footer_nav {
  margin: 0 auto 48px;
  max-width: 1280px;
}
@media screen and (max-width: 576px) {
  footer .footer_wrapper .footer_nav {
    margin-bottom: 24px;
  }
}
footer .footer_wrapper .footer_nav ul {
  display: flex;
  justify-content: center;
  padding: 0;
  align-items: top;
}
@media screen and (max-width: 1024px) {
  footer .footer_wrapper .footer_nav ul {
    flex-direction: column;
  }
}
footer .footer_wrapper .footer_nav ul li {
  padding-right: 24px;
  font-weight: bold;
}
footer .footer_wrapper .footer_nav ul li a {
  text-decoration: none;
}
footer .footer_wrapper .footer_nav ul li .footer_submenu li:not(:first-child) {
  font-weight: normal;
}
@media screen and (max-width: 1024px) {
  footer .footer_wrapper .footer_nav ul li {
    padding-right: 0;
  }
}
footer .footer_wrapper .footer_nav ul li:last-child {
  padding-right: 0;
}
footer .footer_wrapper .footer_nav ul li a {
  font-size: 16px;
  color: #000000;
}
footer .footer_wrapper .footer_nav ul li a:hover {
  text-decoration: underline;
}
footer .footer_wrapper .footer_nav ul li .footer_submenu {
  display: block;
}
footer .footer_wrapper .footer_nav ul li .footer_submenu li {
  text-align: left;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 1024px) {
  footer .footer_wrapper .footer_nav ul li .footer_submenu {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
}
@media screen and (max-width: 1024px) {
  footer .footer_wrapper .footer_nav ul li .footer_socialmenu {
    display: flex;
    flex-direction: row;
    gap: 32px;
  }
}
footer .footer_wrapper .footer_body {
  display: flex;
  justify-content: center;
  gap: 48px;
  margin-bottom: 24px;
}
@media screen and (max-width: 576px) {
  footer .footer_wrapper .footer_body {
    flex-direction: column;
    align-items: center;
    gap: 24px;
  }
}
footer .footer_wrapper .footer_body .bg_image-characer {
  width: fit-content;
}
@media screen and (max-width: 576px) {
  footer .footer_wrapper .footer_body .bg_image-characer {
    width: 60%;
    text-align: center;
  }
}
footer .footer_wrapper .footer_body .footer_info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
@media screen and (max-width: 576px) {
  footer .footer_wrapper .footer_body .footer_info {
    align-items: center;
  }
}
footer .footer_wrapper .footer_body .footer_info .catch_copy {
  font-weight: bold;
}
footer .footer_wrapper .footer_body .footer_info .tel_number {
  font-weight: bold;
  font-size: 1.75rem;
}
footer .footer_wrapper .footer_body .footer_info address {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media screen and (max-width: 576px) {
  footer .footer_wrapper .footer_body .footer_info address {
    align-items: center;
  }
}
footer .footer_wrapper .footer_body .access_map iframe {
  width: 100%;
  height: 220px;
}
footer .footer_wrapper .copyright {
  text-align: center;
}

.frontpage .hero-image {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 50px 0;
  background-image: url("../images/front/hero-image.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 1024px) {
  .frontpage .hero-image {
    padding: 80px 0;
  }
}
.frontpage .hero-image .hero-image-menu {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  background-color: #e34808;
  padding: 16px;
  display: flex;
  flex-direction: column;
  text-align: center;
  gap: 16px;
  border-radius: 10px 0 0 10px;
}
@media screen and (max-width: 1024px) {
  .frontpage .hero-image .hero-image-menu {
    display: none;
  }
}
.frontpage .hero-image .hero-image-menu a {
  color: #ffffff;
  font-size: 24px;
}
.frontpage .hero-image .content_inner {
  padding-bottom: 0;
  box-sizing: border-box;
}
@media screen and (max-width: 1024px) {
  .frontpage .hero-image .content_inner {
    width: calc(100% - 160px);
  }
}
@media screen and (max-width: 576px) {
  .frontpage .hero-image .content_inner {
    width: calc(100% - 48px);
  }
}
.frontpage .content_inner {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 120px;
}
@media screen and (max-width: 1024px) {
  .frontpage .content_inner {
    padding-bottom: 60px;
  }
}
.frontpage .content_inner .catch_copy_area {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 200px;
  color: #ffffff;
  text-shadow: 0 0 1.5em #000000;
}
@media screen and (max-width: 1024px) {
  .frontpage .content_inner .catch_copy_area {
    gap: 120px;
  }
}
@media screen and (max-width: 576px) {
  .frontpage .content_inner .catch_copy_area {
    gap: 80px;
  }
}
@media screen and (max-width: 576px) {
  .frontpage .content_inner .catch_copy_area {
    text-shadow: 0 0 0.5em #000000, 0 0 1em #000000;
  }
}
.frontpage .content_inner .catch_copy_area .catch_copy1 {
  width: 100%;
  z-index: 70;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.frontpage .content_inner .catch_copy_area .catch_copy2 {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.frontpage .content_inner .catch_copy_area P {
  margin: 0;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 150%;
}
.frontpage .content_inner .catch_copy_area .text_s {
  font-size: 2rem;
}
.frontpage .content_inner .catch_copy_area .text_l {
  font-size: 3.5rem;
}
.frontpage .content_inner .catch_copy_area .text_xl {
  font-size: 5.5rem;
}
@media screen and (max-width: 576px) {
  .frontpage .content_inner .catch_copy_area p,
  .frontpage .content_inner .catch_copy_area .text_s,
  .frontpage .content_inner .catch_copy_area .text_l,
  .frontpage .content_inner .catch_copy_area .text_xl {
    font-size: 1.5rem;
  }
}
.frontpage .reason {
  background-color: #eeeeee;
}
@media screen and (max-width: 375px) {
  .frontpage .reason {
    padding: 40px 16px 0;
  }
}
.frontpage .reason .content_inner {
  box-sizing: border-box;
  margin: 0 auto;
}
.frontpage .reason .content_inner .lead_message {
  font-size: 1.5rem;
  font-weight: bold;
  color: #e34808;
  margin-bottom: 48px;
  text-align: center;
}
@media screen and (max-width: 576px) {
  .frontpage .reason .content_inner .lead_message {
    font-size: 1rem;
    margin-bottom: 24px;
  }
}
.frontpage .reason .content_inner .sub_message {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 576px) {
  .frontpage .reason .content_inner .sub_message {
    font-size: 1rem;
  }
}
.frontpage .reason .content_inner .sub_message p {
  margin: 0;
}
.frontpage .reason .problems {
  display: flex;
  flex-wrap: nowrap;
  gap: 24px;
  margin: 0 auto 48px;
  width: fit-content;
}
@media screen and (max-width: 576px) {
  .frontpage .reason .problems {
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 24px;
  }
}
@media screen and (max-width: 1024px) {
  .frontpage .reason .problems {
    gap: 16px;
  }
}
.frontpage .reason .problems figure {
  max-width: 150px;
}
@media screen and (max-width: 576px) {
  .frontpage .reason .problems figure {
    max-width: calc(50% - 8px);
  }
}
.frontpage .reason .problems figure figcaption {
  text-align: center;
  font-weight: bold;
}
.frontpage .reason hgroup {
  display: flex;
  flex-direction: column;
  line-height: 1.25rem;
  gap: 24px;
  margin-bottom: 48px;
}
@media screen and (max-width: 1024px) {
  .frontpage .reason hgroup {
    align-items: center;
  }
}
.frontpage .reason hgroup h2 {
  font-size: 2.5rem;
  color: #e34808;
  margin: 0;
}
.frontpage .reason hgroup .headline_message {
  font-size: 1.25rem;
  font-weight: bold;
  color: #e34808;
}
.frontpage .reason hgroup .headline_english {
  font-size: 2rem;
  font-weight: bold;
}
.frontpage .reason .reason_content-block {
  position: relative;
}
@media screen and (max-width: 1024px) {
  .frontpage .reason .reason_content-block {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
}
.frontpage .reason .reason_content-block .about_us {
  width: 55%;
}
.frontpage .reason .reason_content-block .about_us span {
  display: block;
  width: 85%;
  margin-bottom: 48px;
}
@media screen and (max-width: 1024px) {
  .frontpage .reason .reason_content-block .about_us span {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .frontpage .reason .reason_content-block .about_us {
    width: 100%;
  }
}
.frontpage .reason .reason_content-block .reason_list {
  position: absolute;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2%;
  row-gap: 25.6px;
  top: 0;
  right: 0;
  width: 50%;
  border: none;
}
@media screen and (max-width: 1024px) {
  .frontpage .reason .reason_content-block .reason_list {
    position: static;
    gap: 24px;
    width: 100%;
  }
}
@media screen and (max-width: 576px) {
  .frontpage .reason .reason_content-block .reason_list {
    gap: 16px;
  }
}
.frontpage .reason .reason_content-block .reason_list .reason_list_item {
  width: 48%;
  display: flex;
  flex-direction: column;
  background-color: #ffffff;
  padding-top: 0;
  padding-bottom: 0;
  aspect-ratio: 1;
  justify-content: center;
  text-align: center;
  border: none;
  gap: 8px;
}
@media screen and (max-width: 1024px) {
  .frontpage .reason .reason_content-block .reason_list .reason_list_item {
    width: calc(50% - 12px);
  }
}
@media screen and (max-width: 576px) {
  .frontpage .reason .reason_content-block .reason_list .reason_list_item {
    width: 100%;
  }
}
.frontpage .reason .reason_content-block .reason_list .reason_list_item span:nth-child(1) {
  color: #e34808;
  font-size: 2.5rem;
}
.frontpage .reason .reason_content-block .reason_list .reason_list_item span:nth-child(2) {
  font-size: 0.8rem;
  font-weight: bold;
}
.frontpage .reason .reason_content-block .reason_list .reason_list_item span:nth-child(3) {
  color: #ffffff;
  background-color: #e34808;
  padding: 4px 8px;
  border-radius: 5px;
  font-size: 0.8rem;
  width: fit-content;
  margin: 0 auto;
}
.frontpage .reason .reason_content-block .reason_list .reason_list_item span:nth-child(4) {
  color: #e34808;
  font-size: 2rem;
  font-weight: bold;
}
.frontpage .reason .reason_content-block .button_area {
  position: absolute;
  bottom: 0;
  right: 0;
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 1024px) {
  .frontpage .reason .reason_content-block .button_area {
    position: static;
    justify-content: center;
  }
}
.frontpage .reason .reason_content-block .button_area .button_wrapper {
  width: fit-content;
  text-decoration: none;
  background-color: #e34808;
  color: #ffffff;
  padding: 24px;
  display: flex;
  align-items: center;
  gap: 48px;
}
@media screen and (max-width: 576px) {
  .frontpage .reason .reason_content-block .button_area .button_wrapper {
    width: 100%;
    justify-content: space-between;
  }
}
.frontpage .reason .reason_content-block .button_area .button_wrapper:hover {
  opacity: 0.8;
}
.frontpage .reason .reason_content-block .button_area .button_wrapper .arrow {
  font-size: 2rem;
}
.frontpage .about {
  width: 100%;
  margin: 0;
  padding: 50px 0;
  background-image: url("../images/common/about.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-color: rgba(0, 0, 0, 0.2);
  background-blend-mode: darken;
  background-size: cover;
  color: #ffffff;
}
.frontpage .about .content_inner {
  height: 500px;
}
@media screen and (max-width: 1024px) {
  .frontpage .about .content_inner {
    height: 250px;
  }
}
@media screen and (max-width: 576px) {
  .frontpage .about .content_inner {
    height: 125px;
  }
}
.frontpage .about .content_inner .commitment_message {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.frontpage .about .content_inner .commitment_message span {
  text-align: right;
  display: block;
  clear: both;
  background-color: #000000;
  color: #ffffff;
  margin-bottom: 8px;
  padding: 16px;
  width: fit-content;
  opacity: 0.8;
}
.frontpage .about_button_area_wrapper {
  position: relative;
  max-width: 1280px;
  margin: 0 auto;
  color: #ffffff;
}
.frontpage .about_button_area_wrapper .about_button_area {
  position: absolute;
  width: 100%;
  bottom: -50px;
}
@media screen and (max-width: 1024px) {
  .frontpage .about_button_area_wrapper .about_button_area {
    width: calc(100% - 48px);
    bottom: -50px;
    padding: 0 24px;
  }
}
@media screen and (max-width: 576px) {
  .frontpage .about_button_area_wrapper .about_button_area {
    width: calc(100% - 32px);
    position: static;
    color: #000000;
    padding: 0;
    margin: 16px auto 0;
  }
}
.frontpage .about_button_area_wrapper .about_button_area .headline_english {
  font-size: 2rem;
  font-weight: bold;
}
.frontpage .about_button_area_wrapper .about_button_area .button_area_container {
  margin-top: 24px;
  display: flex;
  gap: 120px;
}
@media screen and (max-width: 1024px) {
  .frontpage .about_button_area_wrapper .about_button_area .button_area_container {
    gap: 24px;
  }
}
@media screen and (max-width: 576px) {
  .frontpage .about_button_area_wrapper .about_button_area .button_area_container {
    gap: 16px;
    flex-direction: column;
  }
}
.frontpage .about_button_area_wrapper .about_button_area .button_area_container .button_area {
  width: 100%;
}
.frontpage .about_button_area_wrapper .about_button_area .button_area_container .button_area .button_wrapper {
  text-decoration: none;
  background-color: #e34808;
  color: #ffffff;
  padding: 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 48px;
  box-sizing: border-box;
}
@media screen and (max-width: 1024px) {
  .frontpage .about_button_area_wrapper .about_button_area .button_area_container .button_area .button_wrapper {
    gap: 0px;
  }
}
.frontpage .about_button_area_wrapper .about_button_area .button_area_container .button_area .button_wrapper .text_area {
  display: flex;
  flex-direction: column;
}
.frontpage .about_button_area_wrapper .about_button_area .button_area_container .button_area .button_wrapper .text_area .text_large {
  font-size: 1.5rem;
  font-weight: bold;
}
@media screen and (max-width: 1024px) {
  .frontpage .about_button_area_wrapper .about_button_area .button_area_container .button_area .button_wrapper .text_area .text_large {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 576px) {
  .frontpage .about_button_area_wrapper .about_button_area .button_area_container .button_area .button_wrapper {
    width: 100%;
    justify-content: space-between;
  }
}
.frontpage .about_button_area_wrapper .about_button_area .button_area_container .button_area .button_wrapper:hover {
  opacity: 0.8;
}
.frontpage .about_button_area_wrapper .about_button_area .button_area_container .button_area .button_wrapper .arrow {
  font-size: 2rem;
}
.frontpage .youtube {
  padding-bottom: 0;
}
.frontpage .youtube .content_inner {
  padding-bottom: 0;
}
.frontpage .youtube .content_inner .youtube_wrapper {
  margin: 0 auto;
  width: 65%;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .frontpage .youtube .content_inner .youtube_wrapper {
    width: 100%;
  }
}
.frontpage .youtube .content_inner .youtube_wrapper iframe {
  width: 100%;
  height: 500px;
}
.frontpage .works .content_inner {
  display: flex;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  .frontpage .works .content_inner {
    padding-bottom: 48px;
    flex-direction: column;
  }
}
.frontpage .works .content_inner .catchcopy {
  width: 50%;
  padding-right: 48px;
}
@media screen and (max-width: 768px) {
  .frontpage .works .content_inner .catchcopy {
    width: 100%;
    padding: 0;
  }
}
.frontpage .works .content_inner .catchcopy figure {
  position: relative;
  margin-bottom: 0;
}
.frontpage .works .content_inner .catchcopy figure figcaption {
  position: absolute;
  top: 5%;
  right: -10%;
}
@media screen and (max-width: 768px) {
  .frontpage .works .content_inner .catchcopy figure figcaption {
    right: 0;
  }
}
.frontpage .works .content_inner .catchcopy figure figcaption span {
  display: block;
  clear: both;
  background-color: #000000;
  color: #ffffff;
  margin-bottom: 8px;
  padding: 16px;
  width: fit-content;
}
@media screen and (max-width: 768px) {
  .frontpage .works .content_inner .catchcopy figure figcaption span {
    float: right;
  }
}
.frontpage .works hgroup {
  text-align: right;
  margin-top: 24px;
}
@media screen and (max-width: 768px) {
  .frontpage .works hgroup {
    text-align: center;
  }
}
.frontpage .works hgroup h2 {
  font-size: 2.5rem;
  color: #e34808;
  margin: 0;
}
.frontpage .works hgroup .headline_message {
  font-size: 1.25rem;
  font-weight: bold;
  color: #e34808;
}
.frontpage .works hgroup .headline_english {
  font-size: 2rem;
  font-weight: bold;
}
.frontpage .works hgroup P {
  margin: 48px 0 0;
}
@media screen and (max-width: 1024px) {
  .frontpage .works hgroup P {
    margin-top: 0;
  }
}
.frontpage .works .works_button_area {
  width: 100%;
  margin: 0 auto;
}
.frontpage .works .works_button_area .button_area_container {
  display: flex;
  justify-content: center;
  gap: 48px;
}
@media screen and (max-width: 576px) {
  .frontpage .works .works_button_area .button_area_container {
    flex-direction: column;
    gap: 24px;
  }
}
.frontpage .works .works_button_area .button_area_container .button_wrapper {
  width: fit-content;
  text-decoration: none;
  background-color: #e34808;
  color: #ffffff;
  padding: 24px;
  display: flex;
  align-items: center;
  gap: 48px;
  box-sizing: border-box;
}
@media screen and (max-width: 576px) {
  .frontpage .works .works_button_area .button_area_container .button_wrapper {
    width: 100%;
    justify-content: space-between;
  }
}
.frontpage .works .works_button_area .button_area_container .button_wrapper:hover {
  opacity: 0.8;
}
.frontpage .works .works_button_area .button_area_container .button_wrapper .arrow {
  font-size: 2rem;
}
.frontpage .news h2 {
  font-size: 2rem;
  text-align: center;
}
.frontpage .news .news_area {
  display: flex;
  gap: 24px;
}
.frontpage .news .news_area h3 {
  margin-bottom: 48px;
}
@media screen and (max-width: 576px) {
  .frontpage .news .news_area h3 {
    text-align: center;
  }
}
.frontpage .news .news_area .information {
  width: 50%;
}
.frontpage .news .news_area .information dl {
  margin: 0;
}
.frontpage .news .news_area .information dl dd {
  margin-bottom: 48px;
}
@media screen and (max-width: 576px) {
  .frontpage .news .news_area .information dl dd {
    margin-bottom: 24px;
  }
}
.frontpage .news .news_area .information a {
  text-decoration: none;
  color: #e34808;
}
.frontpage .news .news_area .information a:hover {
  text-decoration: underline;
}
.frontpage .news .news_area .information .read_information_list {
  float: right;
  font-weight: bold;
}
.frontpage .news .news_area .instagram {
  width: 50%;
}
@media screen and (max-width: 1024px) {
  .frontpage .news .news_area {
    flex-direction: column;
  }
  .frontpage .news .news_area .information,
  .frontpage .news .news_area .instagram {
    width: 100%;
  }
}

.works_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 48px;
}
@media screen and (max-width: 576px) {
  .works_list {
    flex-direction: column;
  }
}
.works_list li {
  width: calc(50% - 24px);
}
@media screen and (max-width: 576px) {
  .works_list li {
    width: 100%;
  }
}
.works_list li figure {
  margin-bottom: 24px;
  width: 100%;
  max-height: 353px;
  height: 100%;
}
.works_list li figure img {
  max-height: 100%;
}
.works_list li h4 {
  font-size: 1.25rem;
}
.works_list li a {
  text-decoration: none;
  color: #000000;
}

.works_detail .main_image {
  max-width: 1280px;
  margin-bottom: 24px;
}
.works_detail .main_image img {
  width: 100%;
}
.works_detail .sub_images {
  max-width: 1280px;
}
.works_detail .sub_images ul {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}
@media screen and (max-width: 576px) {
  .works_detail .sub_images ul {
    flex-direction: column;
  }
}
.works_detail .sub_images ul li {
  width: calc(50% - 12px);
}
@media screen and (max-width: 576px) {
  .works_detail .sub_images ul li {
    width: 100%;
  }
}
.works_detail .sub_images ul li figure {
  width: 100%;
  max-height: 353px;
  height: 100%;
}
.works_detail .sub_images ul li figure img {
  max-height: 100%;
}
.works_detail table th {
  text-align: left;
}

.information_list_item {
  border-top: 1px solid #cccccc;
  padding: 48px 0;
}
.information_list_item:last-child {
  border-bottom: 1px solid #cccccc;
}
.information_list_item .information_descritotion_area {
  display: flex;
  gap: 48px;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .information_list_item .information_descritotion_area {
    flex-direction: column-reverse;
    gap: 24px;
  }
}
.information_list_item .information_descritotion_area figure {
  max-width: 30%;
}
@media screen and (max-width: 768px) {
  .information_list_item .information_descritotion_area figure {
    max-width: 100%;
  }
}
.information_list_item .information_descritotion_area figure img {
  width: 100%;
  height: auto;
}
.information_list_item .information_descritotion_area .more-link {
  display: block;
  clear: both;
  float: right;
  padding-top: 2rem;
  color: #e34808;
  text-decoration: none;
  letter-spacing: normal;
  font-weight: bold;
}

.information_list_item_header {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 16px;
}
.information_list_item_header .category_list {
  margin-bottom: 0;
}

.content_inner .staff {
  display: flex;
  column-gap: 24px;
  padding: 48px 0;
  justify-content: space-between;
  border-top: 1px solid #cccccc;
}
@media screen and (max-width: 768px) {
  .content_inner .staff {
    flex-direction: column;
  }
}
.content_inner .staff figure {
  width: 40%;
}
@media screen and (max-width: 768px) {
  .content_inner .staff figure {
    width: 100%;
  }
}
.content_inner .staff figure img {
  width: 100%;
}
.content_inner .staff .staff_info {
  width: 60%;
}
@media screen and (max-width: 768px) {
  .content_inner .staff .staff_info {
    width: 100%;
  }
  .content_inner .staff .staff_info h4 {
    margin-top: 24px;
  }
}
.content_inner .staff .staff_info p:last-child {
  margin-bottom: 0;
}
.content_inner .staff:nth-child(2n) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .content_inner .staff:nth-child(2n) {
    flex-direction: column;
  }
}
.content_inner .staff:nth-child(4n) {
  border-bottom: 1px solid #cccccc;
}
.content_inner .access_map {
  width: 100%;
  max-width: 1280px;
  height: 100%;
  max-height: 720px;
  margin-bottom: 24px;
}
@media screen and (max-width: 1024px) {
  .content_inner .access_map {
    position: relative;
    width: 100%;
    padding: 56.25% 0 0;
  }
}
.content_inner .access_map iframe {
  width: 100%;
  height: 720px;
  max-height: 720px;
  border: 0;
}
@media screen and (max-width: 1024px) {
  .content_inner .access_map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
.content_inner .access th {
  width: 5%;
}

.reason_list {
  border-bottom: 1px solid #cccccc;
}
.reason_list .reason_list_item {
  display: flex;
  column-gap: 24px;
  padding: 48px 0;
  justify-content: space-between;
  border-top: 1px solid #cccccc;
}
@media screen and (max-width: 768px) {
  .reason_list .reason_list_item {
    flex-direction: column;
    row-gap: 24px;
  }
}
.reason_list .reason_list_item figure {
  width: 40%;
}
@media screen and (max-width: 768px) {
  .reason_list .reason_list_item figure {
    width: 100%;
  }
}
.reason_list .reason_list_item figure img {
  width: 100%;
}
.reason_list .reason_list_item .description_area {
  width: 60%;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .reason_list .reason_list_item .description_area {
    width: 100%;
  }
}
.reason_list .reason_list_item .description_area hgroup {
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .reason_list .reason_list_item .description_area hgroup {
    flex-direction: row;
    align-items: center;
    column-gap: 24px;
  }
  .reason_list .reason_list_item .description_area hgroup h4 {
    flex: 1;
  }
}
@media screen and (max-width: 576px) {
  .reason_list .reason_list_item .description_area hgroup {
    flex-direction: column;
    row-gap: 16px;
  }
}
.reason_list .reason_list_item .description_area p:last-child {
  margin-bottom: 0;
}
.reason_list .reason_list_item:nth-child(2n) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .reason_list .reason_list_item:nth-child(2n) {
    flex-direction: column;
    row-gap: 24px;
  }
}
.reason_list .reason_list_item:nth-child(2n) .description_area {
  align-items: end;
}
.reason_list .reason_list_item:nth-child(2n) .description_area hgroup {
  align-items: end;
}
@media screen and (max-width: 768px) {
  .reason_list .reason_list_item:nth-child(2n) .description_area {
    align-items: flex-start;
  }
  .reason_list .reason_list_item:nth-child(2n) .description_area hgroup {
    align-items: center;
  }
}
.reason_list .reason_list_item h4 {
  color: #e34808;
}

.flow_list_item {
  display: flex;
  flex-direction: column;
  margin-bottom: 48px;
}
.flow_list_item hgroup {
  display: flex;
  align-items: center;
  gap: 24px;
}
@media screen and (max-width: 576px) {
  .flow_list_item hgroup {
    gap: 16px;
  }
}
.flow_list_item hgroup h4 {
  flex: 1;
}
@media screen and (max-width: 576px) {
  .flow_list_item hgroup h4 {
    padding-bottom: 0;
  }
}
.flow_list_item .flow_description_area {
  display: flex;
  margin-left: 50px;
  border-left: 1px solid #e34808;
  padding-left: 74px;
  gap: 48px;
}
@media screen and (max-width: 768px) {
  .flow_list_item .flow_description_area {
    flex-direction: column;
  }
}
@media screen and (max-width: 576px) {
  .flow_list_item .flow_description_area {
    padding-left: 53px;
    margin-left: 37px;
    gap: 24px;
  }
}
.flow_list_item .flow_description_area p {
  margin: 0;
  width: 50%;
}
@media screen and (max-width: 768px) {
  .flow_list_item .flow_description_area p {
    width: 100%;
  }
}
.flow_list_item .flow_description_area figure {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .flow_list_item .flow_description_area figure {
    width: 100%;
  }
}
.flow_list_item:last-child .flow_description_area {
  border-left: none;
}

.faq_list {
  border-bottom: 1px solid #cccccc;
}
.faq_list .faq_list_item {
  display: flex;
  gap: 48px;
  padding: 48px 0;
  justify-content: space-between;
  border-top: 1px solid #cccccc;
}
@media screen and (max-width: 768px) {
  .faq_list .faq_list_item {
    flex-direction: column;
    gap: 24px;
  }
}
.faq_list .faq_list_item figure {
  max-width: 30%;
}
@media screen and (max-width: 768px) {
  .faq_list .faq_list_item figure {
    max-width: 100%;
  }
}
.faq_list .faq_list_item figure img {
  width: 100%;
  height: auto;
}
.faq_list .faq_list_item h4 {
  color: #e34808;
}

.recommend_point {
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  padding-top: 48px;
}
.recommend_point .recommend_point_list_item {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-bottom: 48px;
}
@media screen and (max-width: 576px) {
  .recommend_point .recommend_point_list_item {
    flex-direction: column;
  }
}
.recommend_point .recommend_point_list_item .number_label {
  margin-bottom: 0;
}
.recommend_point .recommend_point_list_item hgroup {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.recommend_point .recommend_point_list_item hgroup h4 {
  padding: 0;
  color: #e34808;
}
.recommend_point .recommend_point_list_item hgroup p {
  margin: 0;
}

.price_table_wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}
@media screen and (max-width: 576px) {
  .price_table_wrapper {
    flex-direction: column;
  }
}
.price_table_wrapper dl {
  margin: 0;
}
.price_table_wrapper dt {
  color: #ffffff;
  margin-bottom: 16px;
}
.price_table_wrapper dd {
  margin-bottom: 16px;
  background-color: #ffffff;
  border-radius: 4px;
  padding: 16px 0;
}
.price_table_wrapper dd:last-child {
  margin-bottom: 0;
}
.price_table_wrapper span {
  display: block;
  clear: both;
  color: #000000;
}
.price_table_wrapper a:hover {
  opacity: 0.8;
}

.price_detail_wrapper .price_list_item {
  padding: 24px;
  margin-bottom: 24px;
  border-radius: 7px;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .price_detail_wrapper .price_list_item {
    padding: 16px;
  }
}
.price_detail_wrapper .price_list_item .price_list_item_header .plan_catchcopy {
  display: block;
  clear: both;
  background-color: #ffffff;
  color: #e34808;
  font-weight: bold;
  width: fit-content;
  margin: 0 auto;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 0.8rem;
}
.price_detail_wrapper .price_list_item .price_list_item_header .plan_name {
  font-size: 1.2rem;
  font-weight: bold;
  color: #ffffff;
  display: block;
  margin: 8px auto 16px;
}
.price_detail_wrapper .price_list_item .price_description_area {
  box-sizing: border-box;
  background-color: #ffffff;
  border-radius: 4px;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  padding: 24px;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 576px) {
  .price_detail_wrapper .price_list_item .price_description_area {
    flex-direction: column;
  }
}
.price_detail_wrapper .price_list_item .price_description_area dl {
  width: calc(33.3% - 16px);
  background-color: #e34808;
  margin: 0;
  padding: 12px 0 16px;
  color: #ffffff;
  border-radius: 4px;
}
@media screen and (max-width: 576px) {
  .price_detail_wrapper .price_list_item .price_description_area dl {
    width: 100%;
  }
}
.price_detail_wrapper .price_list_item .price_description_area dl dd {
  margin: 0;
}
.price_detail_wrapper .price_list_item .price_description_area dl .list_item_name,
.price_detail_wrapper .price_list_item .price_description_area dl .list_item_price {
  color: #ffffff;
}
.price_detail_wrapper .price_list_item .price_description_area ul {
  width: 100%;
  text-align: left;
  list-style-type: disc;
  list-style-position: inside;
}
.price_detail_wrapper .price_list_item .price_description_area ul li {
  font-size: 1rem;
  font-weight: normal;
}
.price_detail_wrapper .price_list_item.service_plan07 dl {
  width: calc(50% - 12px);
}
@media screen and (max-width: 576px) {
  .price_detail_wrapper .price_list_item.service_plan07 dl {
    width: 100%;
  }
}
.price_detail_wrapper .price_list_item.service_plan07 .extra_plan_price_table {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  background: none;
  border-bottom: 1px solid #cccccc;
  padding: 0;
}
.price_detail_wrapper .price_list_item.service_plan07 .extra_plan_price_table dt,
.price_detail_wrapper .price_list_item.service_plan07 .extra_plan_price_table dd {
  padding: 16px 0;
  color: #000000;
  width: 50%;
  border-top: 1px solid #cccccc;
}
.price_detail_wrapper .price_list_item.service_plan07 .extra_plan_price_table dt .list_item_price,
.price_detail_wrapper .price_list_item.service_plan07 .extra_plan_price_table dd .list_item_price {
  color: #000000;
}

.price_list_item {
  width: calc(33% - 60px);
  text-align: center;
  padding: 24px;
  border-radius: 7px;
  font-size: 1.2rem;
  font-weight: bold;
  text-decoration: none;
  height: 100%;
}
@media screen and (max-width: 1024px) {
  .price_list_item {
    width: calc(33% - 14px);
    box-sizing: border-box;
  }
}
@media screen and (max-width: 576px) {
  .price_list_item {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .price_list_item {
    padding: 16px;
  }
}
.price_list_item .list_item_name {
  font-size: 0.8rem;
}
.price_list_item .list_item_price {
  color: #e34808;
}
.price_list_item small {
  font-size: 0.8rem;
}

.plan_summary {
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  padding: 24px 0;
  margin-bottom: 48px;
}

.service_plan01 {
  background-color: #00a7bb;
}
.service_plan01 .list_item_name {
  color: #00a7bb;
}

.service_plan02 {
  background-color: #a69b1a;
}
.service_plan02 .list_item_name {
  color: #a69b1a;
}

.service_plan03 {
  background-color: #569d93;
}
.service_plan03 .list_item_name {
  color: #569d93;
}

.service_plan04 {
  background-color: #7ebb68;
}
.service_plan04 .list_item_name {
  color: #7ebb68;
}

.service_plan05 {
  background-color: #b064a4;
}
.service_plan05 .list_item_name {
  color: #b064a4;
}

.service_plan06 {
  background-color: #be6d20;
}
.service_plan06 .list_item_name {
  color: #be6d20;
}

.service_plan07 {
  background-color: #a3abbd;
}
.service_plan07 .list_item_name {
  color: #a3abbd;
}

.lp section {
  width: 100%;
  padding: 150px 0;
}
@media screen and (max-width: 576px) {
  .lp section {
    padding: 60px 0;
  }
}
.lp section .content_inner {
  max-width: 1280px;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .lp section .content_inner {
    padding: 0 24px;
  }
}
.lp section hgroup {
  display: flex;
  width: fit-content;
  margin: 0 auto 120px;
  align-items: flex-end;
  justify-content: center;
  column-gap: 24px;
}
@media screen and (max-width: 576px) {
  .lp section hgroup {
    margin: 0 auto 60px;
  }
}
@media screen and (max-width: 768px) {
  .lp section hgroup {
    flex-direction: column;
    align-items: center;
    column-gap: none;
  }
  .lp section hgroup figure {
    width: fit-content;
  }
}
@media screen and (max-width: 768px) and (max-width: 576px) {
  .lp section hgroup figure {
    text-align: center;
  }
  .lp section hgroup figure img {
    width: 50%;
  }
}
.lp section h2 {
  width: fit-content;
  border-bottom: none;
  margin-bottom: 0;
  font-size: 2.4rem;
  line-height: 100%;
}
@media screen and (max-width: 576px) {
  .lp section h2 {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 375px) {
  .lp section h2 {
    font-size: 1.25rem;
  }
}
.lp section h3 {
  margin-top: 0;
}
.lp section.hero_image {
  border-top: 6px solid #e34808;
  background-image: url("../images/lp/hero-image.png");
  background-repeat: no-repeat;
  background-position: center;
  background-color: rgba(255, 255, 255, 0.5);
  background-blend-mode: lighten;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .lp section.hero_image {
    background-position: left;
  }
}
.lp section.hero_image .hero_image_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1280px;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .lp section.hero_image .hero_image_inner {
    padding: 0 24px;
    margin: 0 auto;
  }
}
.lp section.hero_image .hero_image_inner .primary_color {
  color: #e34808;
}
.lp section.hero_image .hero_image_inner small {
  display: block;
  clear: both;
  font-size: 0.8rem;
  margin-bottom: 8px;
}
.lp section.hero_image .hero_image_inner .cathc_copy_area_PC {
  display: flex;
  gap: 24px;
  align-items: center;
  font-size: 1.25rem;
}
@media screen and (max-width: 1024px) {
  .lp section.hero_image .hero_image_inner .cathc_copy_area_PC {
    font-size: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .lp section.hero_image .hero_image_inner .cathc_copy_area_PC figure {
    width: 20%;
  }
}
@media screen and (max-width: 768px) {
  .lp section.hero_image .hero_image_inner .cathc_copy_area_PC {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .lp section.hero_image .hero_image_inner .logo_area {
    margin: 0 auto;
  }
}
.lp section.hero_image .hero_image_inner .logo_area figure {
  max-width: 300px;
  margin-bottom: 24px;
}
.lp section.hero_image .hero_image_inner .logo_area .cathc_copy_area_SP {
  display: none;
}
@media screen and (max-width: 768px) {
  .lp section.hero_image .hero_image_inner .logo_area .cathc_copy_area_SP {
    display: flex;
    flex-direction: column;
    max-width: 300px;
    align-items: center;
  }
  .lp section.hero_image .hero_image_inner .logo_area .cathc_copy_area_SP figure {
    margin-bottom: 0;
  }
  .lp section.hero_image .hero_image_inner .logo_area .cathc_copy_area_SP small {
    font-size: 1rem;
  }
}
.lp section.hero_image .hero_image_inner .logo_area .panel_list {
  display: flex;
  flex-wrap: wrap;
}
.lp section.hero_image .hero_image_inner .logo_area .panel_list .panel_list_item {
  width: 33%;
  aspect-ratio: 1;
  background-color: #e34808;
  border-radius: 4px;
}
.lp section.hero_image .hero_image_inner .logo_area .panel_list .panel_list_item.blank_panel01 {
  background-color: #f6c101;
}
.lp section.hero_image .hero_image_inner .logo_area .panel_list .panel_list_item.blank_panel02 {
  background-color: #f2a201;
}
.lp section.hero_image .hero_image_inner .logo_area .panel_list .panel_list_item.blank_panel03 {
  background-color: #f67c01;
}
.lp section.hero_image .hero_image_inner .logo_area .panel_list .panel_list_item figure {
  max-width: 100px;
  margin: 0;
}
.lp section.problem {
  border-top: 6px solid #ad3a82;
}
.lp section.problem h2,
.lp section.problem h3 {
  width: fit-content;
  color: #ad3a82;
}
.lp section.problem h3 {
  margin: 0 auto;
}
.lp section.problem .message {
  width: fit-content;
  display: block;
  clear: both;
  margin: 120px auto;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 576px) {
  .lp section.problem .message {
    font-size: 1rem;
    margin: 60px auto;
  }
}
.lp section.problem .problem_case {
  display: flex;
  box-sizing: border-box;
  margin: 0 auto;
  gap: 48px;
}
@media screen and (max-width: 1024px) {
  .lp section.problem .problem_case {
    gap: 24px;
  }
}
@media screen and (max-width: 576px) {
  .lp section.problem .problem_case {
    flex-direction: column;
  }
}
.lp section.problem .problem_case .problem_case_list_item {
  width: 33%;
  display: flex;
  flex-direction: column;
  background-color: rgba(176, 100, 164, 0.05);
  border-radius: 100vh;
  aspect-ratio: 1;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 576px) {
  .lp section.problem .problem_case .problem_case_list_item {
    width: 100%;
  }
}
.lp section.problem .problem_case .problem_case_list_item figcaption {
  width: fit-content;
  margin: 0 auto;
  margin-top: 16px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #ad3a82;
}
.lp section.problem .owner_problem {
  background-color: #f7f7f7;
  width: 100%;
  margin: 0 auto;
  padding: 64px 0;
  border-radius: 7px;
  box-sizing: border-box;
}
@media screen and (max-width: 576px) {
  .lp section.problem .owner_problem {
    padding: 24px;
  }
}
.lp section.problem .owner_problem ul {
  width: fit-content;
  margin: 24px auto 0;
}
.lp section.problem .owner_problem li {
  list-style-type: none;
  list-style-position: inside;
  position: relative;
  padding: 0 0 8px 1.5rem;
}
.lp section.problem .owner_problem li:before {
  position: absolute;
  top: 0.25rem; /* 要素によって要調整 */
  left: 0;
  display: inline-block;
  font-family: "Font Awesome 6 Free";
  content: "\f058";
  font-weight: 900;
  padding-right: 1rem;
}
.lp section.solution {
  border-top: 6px solid #009f89;
}
.lp section.solution h2,
.lp section.solution h3 {
  color: #009f89;
}
.lp section.solution .number_label {
  background-color: #009f89;
}
.lp section.solution .solution_point_list .solution_point_list_item {
  display: flex;
  column-gap: 24px;
  padding: 48px 0;
  justify-content: space-between;
}
@media screen and (max-width: 576px) {
  .lp section.solution .solution_point_list .solution_point_list_item {
    flex-direction: column;
  }
}
.lp section.solution .solution_point_list .solution_point_list_item hgroup {
  width: 30%;
  display: flex;
  flex-direction: column;
  border-left: none;
  justify-content: flex-start;
  align-items: flex-start;
}
@media screen and (max-width: 576px) {
  .lp section.solution .solution_point_list .solution_point_list_item hgroup {
    flex-direction: row;
    align-items: center;
    width: 100%;
  }
  .lp section.solution .solution_point_list .solution_point_list_item hgroup h3 {
    width: 70%;
    margin-bottom: 0;
  }
}
.lp section.solution .solution_point_list .solution_point_list_item .description_area {
  width: 70%;
  display: flex;
  flex-direction: column;
  border-left: 1px solid #009f89;
  padding-left: 24px;
}
@media screen and (max-width: 576px) {
  .lp section.solution .solution_point_list .solution_point_list_item .description_area {
    width: 100%;
    border-top: 1px solid #009f89;
    border-right: none;
    border-left: none;
    padding: 24px 0 0;
  }
}
.lp section.solution .solution_point_list .solution_point_list_item .description_area p:first-child {
  margin-top: 0;
}
.lp section.solution .solution_point_list .solution_point_list_item .description_area p:last-child {
  margin-bottom: 0;
}
.lp section.solution .solution_point_list .solution_point_list_item:nth-child(2n) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 576px) {
  .lp section.solution .solution_point_list .solution_point_list_item:nth-child(2n) {
    flex-direction: column;
  }
}
.lp section.solution .solution_point_list .solution_point_list_item:nth-child(2n) hgroup {
  align-items: flex-end;
  border-right: none;
}
@media screen and (max-width: 576px) {
  .lp section.solution .solution_point_list .solution_point_list_item:nth-child(2n) hgroup {
    align-items: center;
  }
}
.lp section.solution .solution_point_list .solution_point_list_item:nth-child(2n) .description_area {
  border-left: none;
  border-right: 1px solid #009f89;
  padding-right: 24px;
  padding-left: 0;
}
@media screen and (max-width: 576px) {
  .lp section.solution .solution_point_list .solution_point_list_item:nth-child(2n) .description_area {
    border-top: 1px solid #009f89;
    border-right: none;
    border-left: none;
    padding: 24px 0 0;
  }
}
.lp section.solution .solution_point_list .solution_point_list_item h4 {
  color: #e34808;
}
.lp section.voice {
  border-top: 6px solid #3b507b;
}
.lp section.voice h2,
.lp section.voice h3 {
  color: #3b507b;
}
.lp section.voice .voice_list {
  box-sizing: border-box;
  display: flex;
  gap: 48px;
}
@media screen and (max-width: 1024px) {
  .lp section.voice .voice_list {
    gap: 24px;
  }
}
@media screen and (max-width: 576px) {
  .lp section.voice .voice_list {
    flex-direction: column;
  }
}
.lp section.voice .voice_list .voice_list_item {
  box-sizing: border-box;
  background-color: #f7f7f7;
  padding: 24px;
  width: 50%;
  border-radius: 7px;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
@media screen and (max-width: 576px) {
  .lp section.voice .voice_list .voice_list_item {
    width: 100%;
  }
}
.lp section.voice .voice_list .voice_list_item hgroup {
  align-items: flex-start;
  flex-direction: column;
  width: 100%;
  margin-bottom: 0;
}
.lp section.voice .voice_list .voice_list_item hgroup span {
  display: block;
  color: #ffffff;
  background-color: #3b507b;
  padding: 8px;
  border-radius: 4px;
  line-height: 0.8rem;
  font-size: 0.8rem;
  margin-bottom: 16px;
  width: fit-content;
}
.lp section.faq h2,
.lp section.faq h3 {
  color: #3b507b;
}
.lp section.faq .faq_list_item .answer {
  color: #e34808;
  font-weight: bold;
}
@media screen and (max-width: 576px) {
  .lp section.faq .faq_list_item {
    gap: 24px;
    flex-direction: column;
  }
  .lp section.faq .faq_list_item figure {
    max-width: 100%;
  }
}
@media screen and (max-width: 576px) {
  .lp section.faq {
    padding-bottom: 180px;
  }
}
.lp .contact_area {
  width: 100%;
  background-color: #e34808;
  position: fixed;
  bottom: 0;
  padding: 0;
}
.lp .contact_area a {
  padding: 24px 0;
  display: block;
  text-decoration: none;
  color: #ffffff;
}
.lp .contact_area a .content_inner {
  display: flex;
  gap: 48px;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 576px) {
  .lp .contact_area a .content_inner {
    flex-direction: column;
    gap: 8px;
  }
}
.lp .contact_area a .content_inner figure {
  max-width: 300px;
}
.lp .contact_area a .content_inner .button_area {
  display: flex;
  flex-direction: column;
}
.lp .contact_area a .content_inner .button_area .hour {
  background-color: #ffffff;
  color: #e34808;
  margin-top: 4px;
  display: block;
  text-align: center;
  padding: 4px;
}
@media screen and (max-width: 576px) {
  .lp .contact_area a .content_inner .button_area {
    width: 300px;
  }
}
.lp .contact_area a .content_inner .arrow {
  font-size: 1.5rem;
}
@media screen and (max-width: 576px) {
  .lp .contact_area a .content_inner .arrow {
    display: none;
  }
}
.lp .contact_area:hover {
  opacity: 0.8;
}

.notfound .message_area {
  display: flex;
  align-items: center;
  width: fit-content;
  margin: 0 auto 120px;
  gap: 80px;
}
.notfound .message_area p {
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .notfound .message_area figure {
    width: 30%;
  }
}
@media screen and (max-width: 768px) {
  .notfound .message_area {
    flex-direction: column;
    gap: 40px;
    margin: 80px auto 40px;
  }
  .notfound .message_area figure {
    text-align: center;
    width: 100%;
  }
}

.wpcf7 .lead_message_area {
  margin-top: 48px;
}
.wpcf7 .lead_message_area p {
  margin: 0;
}
.wpcf7 .lead_message_area h3 {
  margin: 48px 0 24px;
}
.wpcf7 .input_items_area dt {
  margin-bottom: 8px;
}
.wpcf7 .input_items_area dt p,
.wpcf7 .input_items_area dd p {
  font-weight: bold;
  margin: 0;
}
.wpcf7 .input_items_area.confirm dd {
  background-color: #f7f7f7;
  padding: 16px;
  border: 1px solid #eeeeee;
  border-radius: 5px;
}
.wpcf7 .input_items_area.confirm dd P {
  font-weight: normal;
  color: #888888;
}
.wpcf7 .wpcf7-list-item {
  margin: 0 0 24px 0;
}
.wpcf7 .wpcf7-list-item input[type=checkbox] {
  margin-left: 0;
}
.wpcf7 .btn_wrapper {
  text-align: center;
  display: flex;
  flex-direction: column;
}
.wpcf7 .btn_wrapper .btn_send p {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  gap: 8px;
  margin: 0;
}
.wpcf7 input[type=text],
.wpcf7 input[type=tel],
.wpcf7 input[type=email],
.wpcf7 textarea {
  box-sizing: border-box;
  padding: 16px;
  border: 1px solid #cccccc;
  border-radius: 5px;
  width: 100%;
}
.wpcf7 input[type=text]:focus-within,
.wpcf7 input[type=tel]:focus-within,
.wpcf7 input[type=email]:focus-within,
.wpcf7 textarea:focus-within {
  border: none;
}
.wpcf7 input[type=submit] {
  background: #e34808;
  color: #ffffff;
  border: none;
  border-radius: 100vh;
  padding: 16px 64px;
  width: fit-content;
  font-size: 1rem;
}
.wpcf7 input[type=submit]:hover {
  cursor: pointer;
  opacity: 0.8;
}
.wpcf7 .wpcf7-previous {
  border: none;
  background: none;
  color: #e34808;
  font-weight: bold;
  cursor: pointer;
}
.wpcf7 .wpcf7-previous:hover {
  opacity: 0.8;
}
.wpcf7 .privacypolicy {
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  margin-bottom: 24px;
  padding: 48px 24px 48px 0;
  max-height: 200px;
  overflow-y: auto;
  overflow-x: hidden;
}
.wpcf7 .privacypolicy p {
  margin: 0 0 48px;
}
.wpcf7 .privacypolicy h4 {
  padding-bottom: 8px;
}

.thanks_message_area {
  display: flex;
  align-items: center;
  width: fit-content;
  margin: 80px auto 120px;
  gap: 80px;
}
.thanks_message_area p {
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .thanks_message_area figure {
    width: 30%;
  }
}
@media screen and (max-width: 768px) {
  .thanks_message_area {
    flex-direction: column;
    gap: 40px;
    margin: 80px auto 40px;
  }
  .thanks_message_area figure {
    text-align: center;
    width: 100%;
  }
}/*# sourceMappingURL=style.css.map */