@charset "UTF-8";
/*
Theme Name: 株式会社懸け橋(TwentyTwenty-Fiveの子テーマ)
Template: twentytwentyfive
Text Domain: kakehashi-exe.com
Author: https://kakehashi-exe.com
Author URI: https://kakehashi-exe.com
Version: xxx
*/
.wp-site-blocks > :not(.wp-block-post-title),
.entry-content > :not(.wp-block-post-title),
.editor-styles-wrapper .block-editor-block-list__layout > :not(.wp-block-post-title),
.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull):not(.wp-block-post-title)) {
  margin: 0 auto !important;
  width: 100% !important;
  max-width: 1000px !important;
}

.wp-site-blocks,
.editor-styles-wrapper {
  background: #ffffff !important;
  font-family: "Yu Mincho", "YuMincho", "Noto Serif JP";
  font-size: 15px !important;
  line-height: 1.6 !important;
  text-align: center !important;
}
.wp-site-blocks a,
.editor-styles-wrapper a {
  text-decoration: none !important;
}
.wp-site-blocks a:focus,
.editor-styles-wrapper a:focus {
  outline: 1px solid transparent !important;
  transition: none !important;
}
.wp-site-blocks h1,
.editor-styles-wrapper h1 {
  padding: 0 50px !important;
  position: relative !important;
  display: inline-block !important;
  font-size: 36px !important;
  font-weight: bold !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks h1,
  .editor-styles-wrapper h1 {
    padding: 0 25px !important;
    font-size: 26px !important;
  }
}
.wp-site-blocks h1::before, .wp-site-blocks h1::after,
.editor-styles-wrapper h1::before,
.editor-styles-wrapper h1::after {
  width: 40px !important;
  height: 1px !important;
  top: 50% !important;
  content: "" !important;
  position: absolute !important;
  display: inline-block !important;
  background: #372612 !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks h1::before, .wp-site-blocks h1::after,
  .editor-styles-wrapper h1::before,
  .editor-styles-wrapper h1::after {
    width: 20px !important;
  }
}
.wp-site-blocks h1::before,
.editor-styles-wrapper h1::before {
  left: 0 !important;
}
.wp-site-blocks h1::after,
.editor-styles-wrapper h1::after {
  right: 0 !important;
}
.wp-site-blocks h2,
.editor-styles-wrapper h2 {
  font-size: 26px !important;
  font-weight: bold !important;
  margin: 0 !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks h2,
  .editor-styles-wrapper h2 {
    font-size: 18px !important;
  }
}
.wp-site-blocks h3,
.editor-styles-wrapper h3 {
  font-size: 18px !important;
  font-weight: bold !important;
  margin: 0 !important;
}
.wp-site-blocks h4,
.editor-styles-wrapper h4 {
  font-size: 15px !important;
  font-weight: bold !important;
  margin: 0 !important;
}
.wp-site-blocks header,
.editor-styles-wrapper header {
  top: 0 !important;
  background: #ffffff !important;
  position: sticky !important;
  z-index: 999 !important;
}
.wp-site-blocks header .wp-block-template-part,
.editor-styles-wrapper header .wp-block-template-part {
  margin: 0 auto !important;
  padding: 0 !important;
}
.wp-site-blocks main .wp-block-post-content,
.editor-styles-wrapper main .wp-block-post-content {
  margin: 0 auto !important;
  padding: 10px !important;
}
.wp-site-blocks footer .wp-block-template-part,
.editor-styles-wrapper footer .wp-block-template-part {
  margin: 0 auto !important;
  padding: 0 !important;
}
.wp-site-blocks .menu-area,
.editor-styles-wrapper .menu-area {
  margin: 0 auto !important;
  padding: 10px !important;
  border-bottom: solid 1px #372612 !important;
  display: flex !important;
  position: relative !important;
  justify-content: space-between !important;
  align-items: center !important;
}
.wp-site-blocks .menu-area .menu-area-img,
.editor-styles-wrapper .menu-area .menu-area-img {
  margin: 0 !important;
  padding: 0 !important;
  width: 50px !important;
  flex-shrink: 0 !important;
}
.wp-site-blocks .menu-area .menu-area-img img,
.editor-styles-wrapper .menu-area .menu-area-img img {
  width: 100% !important;
  height: auto !important;
  -o-object-fit: contain !important;
     object-fit: contain !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__responsive-container-open,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__responsive-container-open {
    display: flex !important;
  }
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__responsive-container,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__responsive-container {
    margin: 0 !important;
    padding: 10px 0 !important;
  }
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__responsive-container:not(.is-menu-open),
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none !important;
  }
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__responsive-container.is-menu-open,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__responsive-container.is-menu-open {
    width: 100% !important;
    height: 100% !important;
    background: #ffffff !important;
    display: flex !important;
    position: fixed !important;
    flex-direction: column !important;
    z-index: 1000 !important;
  }
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
    display: flex !important;
    top: 16px !important;
    left: 50% !important;
  }
}
.wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container,
.editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container {
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  justify-content: flex-end;
  align-items: center !important;
  gap: 25px !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container {
    width: 100% !important;
    flex-direction: column !important;
    gap: 16px !important;
  }
}
.wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item,
.editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item {
  position: static !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item {
    width: 100% !important;
    display: block !important;
    text-align: center !important;
  }
}
.wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item:hover .wp-block-navigation__submenu-container,
.editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item:hover .wp-block-navigation__submenu-container {
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
  opacity: 1 !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item.current-menu-item,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item.current-menu-item {
    width: 100% !important;
    background: #03a5f0 !important;
  }
}
.wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::before,
.editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::before {
  content: "" !important;
  width: 36px !important;
  height: 36px !important;
  top: 50% !important;
  left: 50% !important;
  background: #03a5f0 !important;
  border-radius: 50% !important;
  position: absolute !important;
  transform: translate(-50%, -50%) !important;
  z-index: -1 !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::before,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::before {
    display: none !important;
  }
}
.wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-item__content,
.editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-item__content {
  padding: 8px 0 !important;
  font-weight: bold !important;
  display: inline-block !important;
  position: relative !important;
  white-space: nowrap !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-item__content,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-item__content {
    font-size: 18px !important;
  }
}
.wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-item__content::after,
.editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-item__content::after {
  content: "" !important;
  width: 0 !important;
  height: 1px !important;
  bottom: 0 !important;
  left: 50% !important;
  background: #03a5f0 !important;
  position: absolute !important;
  transform: translateX(-50%);
  transition: width 0.5s ease !important;
}
.wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-item__content:hover::after,
.editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation-item__content:hover::after {
  width: 95% !important;
}
.wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container,
.editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container {
  margin: 0 !important;
  padding: 10px 0 !important;
  width: 100% !important;
  top: 95% !important;
  left: 0 !important;
  background: #ffffff !important;
  border: solid 1px #372612 !important;
  border-radius: 3px !important;
  display: flex !important;
  visibility: visible !important;
  position: absolute !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 30px !important;
  transform: translateY(-8px) !important;
  transition: opacity 0.25s ease, transform 0.25s ease !important;
  pointer-events: none !important;
  opacity: 0 !important;
  z-index: 1000 !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    border: none !important;
    position: static !important;
    flex-direction: column !important;
    gap: 0px !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    opacity: 1 !important;
  }
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item {
    margin: 0 !important;
    padding: 0 !important;
  }
  .wp-site-blocks .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content,
  .editor-styles-wrapper .menu-area .menu-area-nav .wp-block-navigation__container .wp-block-navigation-item .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 15px !important;
    font-weight: normal !important;
  }
}
.wp-site-blocks .top-first-area,
.editor-styles-wrapper .top-first-area {
  margin: 20px 0 0 !important;
  padding: 0 !important;
  text-align: left !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 30px !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .top-first-area,
  .editor-styles-wrapper .top-first-area {
    flex-direction: column-reverse !important;
    gap: 20px !important;
  }
}
.wp-site-blocks .top-first-area .top-first-area-text,
.editor-styles-wrapper .top-first-area .top-first-area-text {
  margin: 0 !important;
  padding: 0 !important;
  flex: 1 !important;
}
.wp-site-blocks .top-first-area .top-first-area-text p,
.editor-styles-wrapper .top-first-area .top-first-area-text p {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 2 !important;
  overflow-wrap: anywhere !important;
}
.wp-site-blocks .top-first-area .top-first-area-img,
.editor-styles-wrapper .top-first-area .top-first-area-img {
  margin: 0 !important;
  padding: 0 !important;
  width: 250px !important;
  flex-shrink: 0 !important;
}
.wp-site-blocks .top-first-area .top-first-area-img img,
.editor-styles-wrapper .top-first-area .top-first-area-img img {
  width: 100% !important;
  height: auto !important;
  -o-object-fit: contain !important;
     object-fit: contain !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .top-first-area .top-first-area-img img,
  .editor-styles-wrapper .top-first-area .top-first-area-img img {
    width: 200px !important;
    height: auto !important;
  }
}
.wp-site-blocks .top-message-area,
.editor-styles-wrapper .top-message-area {
  margin: 60px 0 0 !important;
  padding: 0 !important;
  text-align: left !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 30px !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .top-message-area,
  .editor-styles-wrapper .top-message-area {
    flex-direction: column-reverse !important;
    gap: 0 !important;
  }
}
.wp-site-blocks .top-message-area .top-message-area-img,
.editor-styles-wrapper .top-message-area .top-message-area-img {
  margin: 0 !important;
  padding: 0 !important;
  width: 250px !important;
  flex-shrink: 0 !important;
}
.wp-site-blocks .top-message-area .top-message-area-img img,
.editor-styles-wrapper .top-message-area .top-message-area-img img {
  width: 100% !important;
  height: auto !important;
  border-radius: 10px !important;
  -o-object-fit: cover !important;
     object-fit: cover !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .top-message-area .top-message-area-img img,
  .editor-styles-wrapper .top-message-area .top-message-area-img img {
    width: 200px !important;
    height: 200px !important;
    border-radius: 50% !important;
    -o-object-position: center top !important;
       object-position: center top !important;
  }
}
.wp-site-blocks .top-message-area .top-message-area-text,
.editor-styles-wrapper .top-message-area .top-message-area-text {
  margin: 0 !important;
  padding: 0 !important;
  flex: 1 !important;
}
.wp-site-blocks .top-message-area .top-message-area-text h2,
.editor-styles-wrapper .top-message-area .top-message-area-text h2 {
  margin: 0 0 20px !important;
  padding: 0 0 5px 0 !important;
  position: relative !important;
}
.wp-site-blocks .top-message-area .top-message-area-text h2::after,
.editor-styles-wrapper .top-message-area .top-message-area-text h2::after {
  content: "" !important;
  width: 100% !important;
  height: 7px !important;
  bottom: 0 !important;
  left: 0 !important;
  border-top: solid 3px #372612 !important;
  border-bottom: solid 1px #372612 !important;
  position: absolute !important;
  box-sizing: border-box !important;
}
.wp-site-blocks .top-message-area .top-message-area-text p,
.editor-styles-wrapper .top-message-area .top-message-area-text p {
  margin: 0 0 1.2em 0 !important;
  padding: 0 !important;
  overflow-wrap: anywhere !important;
}
.wp-site-blocks .top-message-area .top-message-area-text p:last-child,
.editor-styles-wrapper .top-message-area .top-message-area-text p:last-child {
  margin: 0 !important;
  text-align: right !important;
  font-weight: bold !important;
}
.wp-site-blocks .company-philosophy-area,
.editor-styles-wrapper .company-philosophy-area {
  margin: 30px 0 !important;
  padding: 15px 0 !important;
  text-align: left !important;
}
.wp-site-blocks .company-philosophy-area .company-philosophy-container,
.editor-styles-wrapper .company-philosophy-area .company-philosophy-container {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 20px !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  border: solid 1px #372612 !important;
  border-radius: 5px !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .company-philosophy-area .company-philosophy-container,
  .editor-styles-wrapper .company-philosophy-area .company-philosophy-container {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
    gap: 15px !important;
  }
}
.wp-site-blocks .company-philosophy-area .company-philosophy-container .company-philosophy-container-item,
.editor-styles-wrapper .company-philosophy-area .company-philosophy-container .company-philosophy-container-item {
  margin: 0 !important;
  padding: 0 !important;
  min-width: 0 !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
}
.wp-site-blocks .company-philosophy-area .company-philosophy-container .company-philosophy-container-item h3,
.editor-styles-wrapper .company-philosophy-area .company-philosophy-container .company-philosophy-container-item h3 {
  margin: 0 0 20px !important;
  padding: 0 10px 10px 30px !important;
  position: relative !important;
  display: inline-block !important;
  box-sizing: border-box !important;
  border-bottom: solid 1px #e70012 !important;
}
.wp-site-blocks .company-philosophy-area .company-philosophy-container .company-philosophy-container-item h3:before, .wp-site-blocks .company-philosophy-area .company-philosophy-container .company-philosophy-container-item h3:after,
.editor-styles-wrapper .company-philosophy-area .company-philosophy-container .company-philosophy-container-item h3:before,
.editor-styles-wrapper .company-philosophy-area .company-philosophy-container .company-philosophy-container-item h3:after {
  content: "" !important;
  position: absolute !important;
  border-radius: 50% !important;
}
.wp-site-blocks .company-philosophy-area .company-philosophy-container .company-philosophy-container-item h3:before,
.editor-styles-wrapper .company-philosophy-area .company-philosophy-container .company-philosophy-container-item h3:before {
  width: 18px !important;
  height: 18px !important;
  top: 3px !important;
  left: 3px !important;
  background: #03a5f0 !important;
}
.wp-site-blocks .company-philosophy-area .company-philosophy-container .company-philosophy-container-item h3:after,
.editor-styles-wrapper .company-philosophy-area .company-philosophy-container .company-philosophy-container-item h3:after {
  width: 13px !important;
  height: 13px !important;
  top: 13px !important;
  left: 13px !important;
  background: #ffd205 !important;
}
.wp-site-blocks .company-information-area,
.editor-styles-wrapper .company-information-area {
  margin: 30px 0 !important;
  padding: 15px 0 !important;
  text-align: left !important;
}
.wp-site-blocks .company-information-area .company-information-container,
.editor-styles-wrapper .company-information-area .company-information-container {
  margin: 0 !important;
  padding: 20px !important;
  box-sizing: border-box !important;
  border: solid 1px #372612 !important;
  border-radius: 5px !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .company-information-area .company-information-container,
  .editor-styles-wrapper .company-information-area .company-information-container {
    padding: 10px !important;
  }
}
.wp-site-blocks .company-information-area .company-information-container > ul,
.editor-styles-wrapper .company-information-area .company-information-container > ul {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .company-information-area .company-information-container > ul,
  .editor-styles-wrapper .company-information-area .company-information-container > ul {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
}
.wp-site-blocks .company-information-area .company-information-container > ul li,
.editor-styles-wrapper .company-information-area .company-information-container > ul li {
  list-style: none !important;
}
.wp-site-blocks .company-information-area .company-information-container > ul > li,
.editor-styles-wrapper .company-information-area .company-information-container > ul > li {
  margin: 0 !important;
  padding: 15px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
  border-bottom: solid 0.5px #372612 !important;
  font-weight: bold !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .company-information-area .company-information-container > ul > li,
  .editor-styles-wrapper .company-information-area .company-information-container > ul > li {
    padding: 8px 0 !important;
  }
}
.wp-site-blocks .company-information-area .company-information-container > ul > li > *,
.editor-styles-wrapper .company-information-area .company-information-container > ul > li > * {
  font-weight: 100 !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .company-information-area .company-information-container > ul > li > *,
  .editor-styles-wrapper .company-information-area .company-information-container > ul > li > * {
    text-align: right !important;
  }
}
.wp-site-blocks .company-history-area,
.editor-styles-wrapper .company-history-area {
  margin: 30px 0 !important;
  padding: 15px 0 !important;
  text-align: left !important;
}
.wp-site-blocks .company-history-area .company-history-container,
.editor-styles-wrapper .company-history-area .company-history-container {
  margin: 0 !important;
  padding: 30px 20px 20px !important;
  box-sizing: border-box !important;
  border: solid 1px #372612 !important;
  border-radius: 5px !important;
}
.wp-site-blocks .company-history-area .company-history-container ul,
.wp-site-blocks .company-history-area .company-history-container li,
.editor-styles-wrapper .company-history-area .company-history-container ul,
.editor-styles-wrapper .company-history-area .company-history-container li {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}
.wp-site-blocks .company-history-area .company-history-container > ul,
.editor-styles-wrapper .company-history-area .company-history-container > ul {
  position: relative !important;
  display: block !important;
}
.wp-site-blocks .company-history-area .company-history-container > ul:before,
.editor-styles-wrapper .company-history-area .company-history-container > ul:before {
  content: "" !important;
  position: absolute !important;
  top: 8px !important;
  bottom: 0 !important;
  left: 115px !important;
  width: 1px !important;
  background: #372612 !important;
  z-index: 0 !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .company-history-area .company-history-container > ul:before,
  .editor-styles-wrapper .company-history-area .company-history-container > ul:before {
    left: 95px !important;
  }
}
.wp-site-blocks .company-history-area .company-history-container > ul > li,
.editor-styles-wrapper .company-history-area .company-history-container > ul > li {
  position: relative !important;
  display: block !important;
  margin-bottom: 24px !important;
  padding-left: 0 !important;
  font-weight: bold !important;
  line-height: 1.5 !important;
  width: 100% !important;
  min-height: 24px !important;
}
.wp-site-blocks .company-history-area .company-history-container > ul > li:before,
.editor-styles-wrapper .company-history-area .company-history-container > ul > li:before {
  content: "" !important;
  position: absolute !important;
  left: 110px !important;
  top: 6px !important;
  width: 11px !important;
  height: 11px !important;
  background: #03a5f0 !important;
  border-radius: 50% !important;
  z-index: 1 !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .company-history-area .company-history-container > ul > li:before,
  .editor-styles-wrapper .company-history-area .company-history-container > ul > li:before {
    left: 90px !important;
  }
}
.wp-site-blocks .company-history-area .company-history-container > ul > li > ul,
.editor-styles-wrapper .company-history-area .company-history-container > ul > li > ul {
  display: block !important;
  margin-top: -1.5em !important;
  padding-left: 140px !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .company-history-area .company-history-container > ul > li > ul,
  .editor-styles-wrapper .company-history-area .company-history-container > ul > li > ul {
    padding-left: 115px !important;
  }
}
.wp-site-blocks .company-history-area .company-history-container > ul > li > ul > li,
.editor-styles-wrapper .company-history-area .company-history-container > ul > li > ul > li {
  font-weight: normal !important;
  margin: 0 0 4px 0 !important;
  line-height: 1.6 !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
}
.wp-site-blocks .service-band,
.editor-styles-wrapper .service-band {
  position: relative !important;
  display: inline-block !important;
  line-height: 20px !important;
  background: #372612 !important;
  color: #ffffff !important;
}
.wp-site-blocks .service-band::before, .wp-site-blocks .service-band::after,
.editor-styles-wrapper .service-band::before,
.editor-styles-wrapper .service-band::after {
  width: 0px !important;
  height: 0px !important;
  top: 0 !important;
  content: "" !important;
  position: absolute !important;
  border-color: #372612 transparent !important;
  border-style: solid !important;
}
.wp-site-blocks .service-band::before,
.editor-styles-wrapper .service-band::before {
  left: -15px !important;
  border-width: 10px 0px 10px 15px !important;
}
.wp-site-blocks .service-band::after,
.editor-styles-wrapper .service-band::after {
  right: -15px !important;
  border-width: 10px 15px 10px 0px !important;
}
.wp-site-blocks .service-introduce-area,
.editor-styles-wrapper .service-introduce-area {
  margin: 30px 0 !important;
  padding: 15px 0 !important;
}
.wp-site-blocks .service-introduce-area .service-introduce-containers,
.editor-styles-wrapper .service-introduce-area .service-introduce-containers {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .service-introduce-area .service-introduce-containers,
  .editor-styles-wrapper .service-introduce-area .service-introduce-containers {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .service-introduce-area .service-introduce-containers,
  .editor-styles-wrapper .service-introduce-area .service-introduce-containers {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
}
.wp-site-blocks .service-introduce-area .service-introduce-containers .service-introduce-container,
.editor-styles-wrapper .service-introduce-area .service-introduce-containers .service-introduce-container {
  margin: 0 !important;
  padding: 15px !important;
  min-height: 200px !important;
  box-sizing: border-box !important;
  background: rgba(3, 165, 240, 0.1) !important;
  border: solid 1px #372612 !important;
  border-radius: 5px !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .service-introduce-area .service-introduce-containers .service-introduce-container,
  .editor-styles-wrapper .service-introduce-area .service-introduce-containers .service-introduce-container {
    min-height: 150px !important;
  }
}
.wp-site-blocks .service-introduce-area .service-introduce-containers .service-introduce-container h3,
.editor-styles-wrapper .service-introduce-area .service-introduce-containers .service-introduce-container h3 {
  margin: 0 0 10px !important;
  padding: 10px 0 !important;
  text-align: center !important;
  border-bottom: solid 1px #372612 !important;
}
.wp-site-blocks .service-introduce-area .service-introduce-containers .service-introduce-container .service-introduce-container-item,
.editor-styles-wrapper .service-introduce-area .service-introduce-containers .service-introduce-container .service-introduce-container-item {
  text-align: left !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem 1.5rem !important;
}
.wp-site-blocks .service-agency-area,
.editor-styles-wrapper .service-agency-area {
  margin: 30px 0 !important;
  padding: 15px 0 !important;
}
.wp-site-blocks .service-agency-area .service-agency-containers,
.editor-styles-wrapper .service-agency-area .service-agency-containers {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .service-agency-area .service-agency-containers,
  .editor-styles-wrapper .service-agency-area .service-agency-containers {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
}
.wp-site-blocks .service-agency-area .service-agency-containers .service-agency-container,
.editor-styles-wrapper .service-agency-area .service-agency-containers .service-agency-container {
  margin: 0 !important;
  padding: 15px !important;
  min-height: 200px !important;
  box-sizing: border-box !important;
  background: rgba(231, 0, 18, 0.1) !important;
  border: solid 1px #372612 !important;
  border-radius: 5px !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .service-agency-area .service-agency-containers .service-agency-container,
  .editor-styles-wrapper .service-agency-area .service-agency-containers .service-agency-container {
    min-height: 150px !important;
  }
}
.wp-site-blocks .service-agency-area .service-agency-containers .service-agency-container h3,
.editor-styles-wrapper .service-agency-area .service-agency-containers .service-agency-container h3 {
  margin: 0 0 10px !important;
  padding: 10px 0 !important;
  text-align: center !important;
  border-bottom: solid 1px #372612 !important;
}
.wp-site-blocks .service-agency-area .service-agency-containers .service-agency-container .service-agency-container-item,
.editor-styles-wrapper .service-agency-area .service-agency-containers .service-agency-container .service-agency-container-item {
  text-align: left !important;
  display: grid !important;
  grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  gap: 1rem 1.5rem !important;
}
.wp-site-blocks .jobs-area,
.editor-styles-wrapper .jobs-area {
  margin: 30px 0 !important;
  padding: 15px 0 !important;
  text-align: left;
}
.wp-site-blocks .jobs-area .jobs-container,
.editor-styles-wrapper .jobs-area .jobs-container {
  margin: 0 0 20px !important;
  padding: 20px !important;
  min-height: 200px !important;
  box-sizing: border-box !important;
  border: solid 1px #372612 !important;
  border-radius: 5px !important;
}
.wp-site-blocks .jobs-area .jobs-container h2,
.editor-styles-wrapper .jobs-area .jobs-container h2 {
  margin: 0 0 20px !important;
  padding: 5px 5px 8px !important;
  position: relative !important;
  box-sizing: border-box !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .jobs-area .jobs-container h2,
  .editor-styles-wrapper .jobs-area .jobs-container h2 {
    margin: 0 0 5px !important;
  }
}
.wp-site-blocks .jobs-area .jobs-container h2::after,
.editor-styles-wrapper .jobs-area .jobs-container h2::after {
  content: "" !important;
  width: 100% !important;
  height: 7px !important;
  bottom: 0 !important;
  left: 0 !important;
  position: absolute !important;
  box-sizing: border-box !important;
  border-top: solid 3px #372612 !important;
  border-bottom: solid 1px #372612 !important;
}
.wp-site-blocks .jobs-area .jobs-container .jobs-container-items,
.editor-styles-wrapper .jobs-area .jobs-container .jobs-container-items {
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 30px !important;
}
@media screen and (max-width: 800px) {
  .wp-site-blocks .jobs-area .jobs-container .jobs-container-items,
  .editor-styles-wrapper .jobs-area .jobs-container .jobs-container-items {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
    gap: 30px !important;
  }
}
.wp-site-blocks .jobs-area .jobs-container .jobs-container-items .jobs-container-item,
.editor-styles-wrapper .jobs-area .jobs-container .jobs-container-items .jobs-container-item {
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: flex-start !important;
  box-sizing: border-box !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .jobs-area .jobs-container .jobs-container-items .jobs-container-item,
  .editor-styles-wrapper .jobs-area .jobs-container .jobs-container-items .jobs-container-item {
    flex-direction: column !important;
  }
}
.wp-site-blocks .jobs-area .jobs-container .jobs-container-items .jobs-container-item h4,
.editor-styles-wrapper .jobs-area .jobs-container .jobs-container-items .jobs-container-item h4 {
  margin: 0 10px 0 0 !important;
  padding: 0 30px 0 0 !important;
  width: 100px !important;
  flex-shrink: 0 !important;
  border-bottom: solid 1px #372612 !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .jobs-area .jobs-container .jobs-container-items .jobs-container-item h4,
  .editor-styles-wrapper .jobs-area .jobs-container .jobs-container-items .jobs-container-item h4 {
    margin: 20px 0 10px 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
}
.wp-site-blocks .jobs-area .jobs-container .jobs-container-items .jobs-container-item .jobs-container-item-text,
.editor-styles-wrapper .jobs-area .jobs-container .jobs-container-items .jobs-container-item .jobs-container-item-text {
  margin: 0 !important;
  padding: 0 !important;
  flex: 1 !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .jobs-area .jobs-container .jobs-container-items .jobs-container-item .jobs-container-item-text,
  .editor-styles-wrapper .jobs-area .jobs-container .jobs-container-items .jobs-container-item .jobs-container-item-text {
    text-align: right !important;
  }
}
.wp-site-blocks .privacy-policy-area,
.editor-styles-wrapper .privacy-policy-area {
  text-align: left !important;
}
.wp-site-blocks .privacy-policy-area .privacy-policy-container,
.editor-styles-wrapper .privacy-policy-area .privacy-policy-container {
  padding: 30px 0 !important;
}
.wp-site-blocks .contact-area,
.editor-styles-wrapper .contact-area {
  max-width: 600px !important;
  margin: 0 auto !important;
  text-align: left !important;
}
@media screen and (max-width: 600px) {
  .wp-site-blocks .contact-area,
  .editor-styles-wrapper .contact-area {
    width: 100% !important;
  }
}
.wp-site-blocks .contact-area input[type=text],
.wp-site-blocks .contact-area input[type=tel],
.wp-site-blocks .contact-area input[type=email],
.editor-styles-wrapper .contact-area input[type=text],
.editor-styles-wrapper .contact-area input[type=tel],
.editor-styles-wrapper .contact-area input[type=email] {
  width: 98% !important;
  line-height: 2em !important;
  border: solid 1px !important;
  border-radius: 5px !important;
  padding: 5px !important;
}
.wp-site-blocks .contact-area input[type=checkbox],
.editor-styles-wrapper .contact-area input[type=checkbox] {
  width: 1.2em !important;
  height: 1.2em !important;
}
.wp-site-blocks .contact-area input[type=submit],
.editor-styles-wrapper .contact-area input[type=submit] {
  width: 100% !important;
  height: 3em !important;
  background: #ffffff !important;
  color: #372612 !important;
  border: solid 1px #372612 !important;
  border-radius: 10px !important;
  box-shadow: 0 5px 0 #372612 !important;
  transition: 0.3s !important;
}
.wp-site-blocks .contact-area input[type=submit]:hover,
.editor-styles-wrapper .contact-area input[type=submit]:hover {
  background: #372612 !important;
  color: #ffffff !important;
  box-shadow: 0 0 0 #372612 !important;
}
.wp-site-blocks .contact-area a,
.editor-styles-wrapper .contact-area a {
  font-weight: bold;
  background: linear-gradient(transparent 65%, #ffd205 65%) !important;
}
.wp-site-blocks .contact-area textarea,
.editor-styles-wrapper .contact-area textarea {
  width: 98% !important;
  line-height: 1.2em !important;
  border: solid 1px !important;
  border-radius: 5px !important;
  padding: 5px !important;
}
.wp-site-blocks .contact-area .contact-area-required,
.editor-styles-wrapper .contact-area .contact-area-required {
  margin: 0 5px !important;
  padding: 3px !important;
  font-size: 15px !important;
  color: #e70012 !important;
  background: linear-gradient(transparent 80%, #e70012 80%) !important;
}
.wp-site-blocks .contact-area .contact-area-sent,
.editor-styles-wrapper .contact-area .contact-area-sent {
  opacity: 0.5 !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
  width: 100% !important;
  height: 3.5em !important;
  background: #372612 !important;
  color: #ffffff !important;
  border: solid 1px #372612 !important;
  border-radius: 10px !important;
  box-shadow: 0 0 0 #372612 !important;
  transition: 0.3s !important;
}
.wp-site-blocks .contact-area .contact-area-sent:hover,
.editor-styles-wrapper .contact-area .contact-area-sent:hover {
  background: #ffffff !important;
  color: #372612 !important;
  box-shadow: 0 5px 0 #372612 !important;
}
.wp-site-blocks .contact-area .contact-area-sent:focus,
.editor-styles-wrapper .contact-area .contact-area-sent:focus {
  outline: none !important;
}
.wp-site-blocks .contact-area form.wpcf7-form,
.editor-styles-wrapper .contact-area form.wpcf7-form {
  display: flex !important;
  flex-direction: column !important;
  /* 直下の全要素を初期状態 order: 1 に設定 */
}
.wp-site-blocks .contact-area form.wpcf7-form > *,
.editor-styles-wrapper .contact-area form.wpcf7-form > * {
  order: 1 !important;
}
.wp-site-blocks .contact-area form.wpcf7-form,
.editor-styles-wrapper .contact-area form.wpcf7-form {
  /* エラー・完了メッセージをボタンより上に配置 (order: 2) */
}
.wp-site-blocks .contact-area form.wpcf7-form .wpcf7-response-output,
.editor-styles-wrapper .contact-area form.wpcf7-form .wpcf7-response-output {
  order: 2 !important;
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}
.wp-site-blocks .contact-area form.wpcf7-form,
.editor-styles-wrapper .contact-area form.wpcf7-form {
  /* 送信ボタンの親ブロック（pタグなど）またはボタン自体を一番下に配置 (order: 3) */
}
.wp-site-blocks .contact-area form.wpcf7-form .contact-area-sent,
.wp-site-blocks .contact-area form.wpcf7-form p:has(.contact-area-sent),
.wp-site-blocks .contact-area form.wpcf7-form input[type=submit],
.wp-site-blocks .contact-area form.wpcf7-form p:has(input[type=submit]),
.editor-styles-wrapper .contact-area form.wpcf7-form .contact-area-sent,
.editor-styles-wrapper .contact-area form.wpcf7-form p:has(.contact-area-sent),
.editor-styles-wrapper .contact-area form.wpcf7-form input[type=submit],
.editor-styles-wrapper .contact-area form.wpcf7-form p:has(input[type=submit]) {
  order: 3 !important;
}
.wp-site-blocks .contact-area,
.editor-styles-wrapper .contact-area {
  /* チェックボックス活性化制御 */
}
.wp-site-blocks .contact-area:has(input[name="acceptance[]"]:checked) .contact-area-sent, .wp-site-blocks .contact-area:has(input[name="acceptance[]"]:checked) input[type=submit],
.editor-styles-wrapper .contact-area:has(input[name="acceptance[]"]:checked) .contact-area-sent,
.editor-styles-wrapper .contact-area:has(input[name="acceptance[]"]:checked) input[type=submit] {
  opacity: 1 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}
.wp-site-blocks .contact-area,
.editor-styles-wrapper .contact-area {
  /* スピナー */
}
.wp-site-blocks .contact-area .wpcf7-spinner,
.editor-styles-wrapper .contact-area .wpcf7-spinner {
  display: block !important;
  margin: 8px auto !important;
}
.wp-site-blocks .contact-area,
.editor-styles-wrapper .contact-area {
  /* メッセージの見た目調整 */
}
.wp-site-blocks .contact-area .wpcf7-response-output,
.editor-styles-wrapper .contact-area .wpcf7-response-output {
  position: relative !important;
  margin: 0 !important;
  padding: 25px 5px !important;
  border-color: transparent !important;
  border-top: solid 1px #372612 !important;
  border-bottom: solid 1px #372612 !important;
  background: linear-gradient(to top, transparent 5%, #ffffff 0%);
  text-align: center !important;
}
.wp-site-blocks .contact-area .wpcf7-response-output::before, .wp-site-blocks .contact-area .wpcf7-response-output::after,
.editor-styles-wrapper .contact-area .wpcf7-response-output::before,
.editor-styles-wrapper .contact-area .wpcf7-response-output::after {
  position: absolute;
  left: 50%;
  content: "";
  height: 0;
  width: 0;
}
.wp-site-blocks .contact-area .wpcf7-response-output::before,
.editor-styles-wrapper .contact-area .wpcf7-response-output::before {
  top: 100%;
  border: 9px solid;
  border-color: transparent;
  border-top-color: #372612;
  margin-left: -9px;
}
.wp-site-blocks .contact-area .wpcf7-response-output::after,
.editor-styles-wrapper .contact-area .wpcf7-response-output::after {
  top: 99%;
  border: 8px solid;
  border-color: transparent;
  border-top-color: #ffffff;
  margin-left: -8px;
}
.wp-site-blocks .contact-complete-area,
.editor-styles-wrapper .contact-complete-area {
  text-align: center !important;
}