/* トップと全下層ページで共有するデザイン。本文とページ構成はWordPressに保持。 */
body.makieng-site {
  --makieng-font-family: 'Roboto', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'Yu Gothic', Meiryo, sans-serif;
  --makieng-section-space: clamp(64px, 8vw, 120px);
  --makieng-section-edge-space: clamp(88px, 10vw, 160px);
  --makieng-ink: #31254c;
  font-family: var(--makieng-font-family);
  color: #171717;
  background: #fff;
}
body.makieng-site :is(h1,h2,h3,h4,h5,h6,input,button,select,textarea) {
  font-family: var(--makieng-font-family);
}
body.makieng-front-page .siteHeader .navbar-header {
  float: none;
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  padding-right: 64px;
}
body.makieng-front-page .siteHeader_logo a {
  display: block;
  white-space: nowrap;
}
body.makieng-front-page .siteHeader_logo {
  float: none;
  width: max-content;
  max-width: 100%;
  text-align: left;
}
body.makieng-front-page .siteHeader_logo a:focus-visible { outline: 1px solid currentColor; outline-offset: 6px; }
body.makieng-inner-page .page-header {
  margin: 0;
  padding: clamp(56px, 8vw, 112px) 0;
  background: #f7f7f7;
  color: var(--makieng-ink);
  border: 0;
  box-shadow: none;
}
body.makieng-inner-page .page-header_pageTitle {
  margin: 0;
  padding: 0;
  font-size: clamp(28px, 4vw, 52px);
  font-weight: 300;
  letter-spacing: .06em;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
body.makieng-inner-page .breadSection {
  padding: 16px 0;
  background: #fff;
  border: 0;
  color: #777;
  font-size: 12px;
}
body.makieng-inner-page .breadSection a { color: #666; }
body.makieng-inner-page .siteContent {
  padding-top: clamp(48px, 6vw, 88px);
  padding-bottom: var(--makieng-section-edge-space);
}
body.makieng-inner-page .mainSection { min-width: 0; }
body.makieng-inner-page .entry-body {
  font-size: 16px;
  line-height: 2;
  overflow-wrap: break-word;
}
body.makieng-inner-page .entry-body > .container { width: 100%; max-width: 100%; }
body.makieng-inner-page :is(.entry-body,.post_body) h2 {
  margin: clamp(48px, 6vw, 80px) 0 32px;
  padding: 0 0 20px;
  border: 0;
  border-bottom: 1px solid #ddd;
  background: transparent;
  box-shadow: none;
  color: var(--makieng-ink);
  font-size: clamp(24px, 2.6vw, 34px);
  font-weight: 400;
  line-height: 1.6;
}
body.makieng-inner-page :is(.entry-body,.post_body) h3 {
  margin: 40px 0 24px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  color: var(--makieng-ink);
  font-size: clamp(20px, 2vw, 26px);
  font-weight: 400;
  line-height: 1.6;
}
body.makieng-inner-page :is(.entry-body,.post_body) :is(h2,h3)::after { content: none; }
body.makieng-inner-page .entry-body > :first-child { margin-top: 0; }
body.makieng-inner-page .entry-body p { margin-bottom: 1.8em; }
body.makieng-inner-page .entry-body a:not(.btn):not(.btn-style1):not(.btn-style2) {
  color: var(--makieng-ink);
  text-underline-offset: 4px;
}
body.makieng-inner-page :is(.green,.servive-list i) { color: var(--makieng-ink); }
body.makieng-inner-page :is(.btn-primary,.btn-style1,.btn-style2,.wp-block-button__link) {
  padding: 12px 28px;
  border: 1px solid var(--makieng-ink);
  border-radius: 30px;
  background: var(--makieng-ink);
  box-shadow: none;
  color: #fff;
  font-size: 14px;
  line-height: 1.6;
  text-decoration: none;
  transition: background-color .2s, color .2s;
}
body.makieng-inner-page :is(.btn-primary,.btn-style1,.btn-style2,.wp-block-button__link):is(:hover,:focus-visible) {
  background: #fff;
  color: var(--makieng-ink);
}
body.makieng-inner-page :is(.like-card,.box-style1,.well) {
  height: auto;
  margin: 16px 0;
  padding: clamp(24px, 3vw, 40px);
  border: 1px solid #ddd;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
  text-align: left;
}
body.makieng-inner-page .getPostDispArea {
  padding: 0;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}
body.makieng-inner-page .getPostStringArea { padding: 24px 0; border-bottom: 1px solid #ddd; }
body.makieng-inner-page .getPostStringArea > span:first-child { color: #777; font-size: 14px; }
body.makieng-inner-page .nav-tabs > li > a { padding: 12px 24px; border: 0; background: #f7f7f7; color: #171717; }
body.makieng-inner-page .nav-tabs > li.active > a,
body.makieng-inner-page .nav-tabs > li.active > a:is(:hover,:focus) { border: 0; background: var(--makieng-ink); color: #fff; }
body.makieng-inner-page .entry-body table { width: 100%; border-collapse: collapse; font-size: 15px; }
body.makieng-inner-page .entry-body :is(th,td) {
  padding: clamp(16px, 2vw, 28px);
  border: 0;
  border-bottom: 1px solid #ddd;
  vertical-align: top;
  line-height: 1.9;
}
body.makieng-inner-page .entry-body th { background: #f7f7f7; color: var(--makieng-ink); font-weight: 400; }
body.makieng-inner-page .entry-body :is(input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]):not([type=hidden]),textarea,select) {
  max-width: 100%;
  padding: 12px 14px;
  border: 1px solid #ccc;
  border-radius: 0;
  background: #fafafa;
  box-shadow: none;
  color: #171717;
  font-size: 16px;
}
body.makieng-inner-page :is(input,textarea,select):focus-visible { outline: 2px solid var(--makieng-ink); outline-offset: 3px; }
body.makieng-inner-page .entry-body img { max-width: 100%; height: auto; }
body.makieng-inner-page .entry-body iframe { max-width: 100%; }
body.makieng-inner-page .subSection .widget { padding: 24px 0; border-top: 1px solid #ddd; }
body.makieng-inner-page .subSection :is(.subSection-title,.widget-title) {
  padding: 0 0 16px; border: 0; background: transparent; color: var(--makieng-ink); font-size: 18px; font-weight: 400;
}
body.makieng-inner-page .entry-title { color: var(--makieng-ink); font-weight: 400; line-height: 1.6; }
body.makieng-inner-page .entry-meta { color: #777; font-size: 13px; }
body.makieng-inner-page .postList > article { padding: 32px 0; border-bottom: 1px solid #ddd; box-shadow: none; }
@media (max-width: 767px) {
  body.makieng-inner-page .page-header { padding: 48px 0; }
  body.makieng-inner-page .entry-body { font-size: 15px; line-height: 1.9; }
  body.makieng-inner-page .entry-body :is(th,td) { padding: 14px 10px; }
  body.makieng-inner-page .entry-body th { white-space: normal; }
  body.makieng-inner-page .mw_wp_form :is(table,tbody,tr,th,td) { display: block; width: 100%; }
  body.makieng-inner-page .mw_wp_form input:not([type=checkbox]):not([type=radio]) { max-width: 100%; }
  body.makieng-inner-page .getPostTitle { display: block; margin: 8px 0 0; }
  body.makieng-inner-page .nav-tabs > li { padding: 0 4px; }
}
@media (prefers-reduced-motion: reduce) {
  body.makieng-inner-page :is(.btn-primary,.btn-style1,.btn-style2,.wp-block-button__link) { transition: none; }
}

/* 企業情報：ご挨拶と代表者経歴を縦に並べる。会社概要のカラムは保持する。 */
body.makieng-inner-page.page-id-26 .entry-body > .container:first-child > .row > :is(.col-sm-6, .col-sm-5) {
  float: none;
  width: 100%;
  margin-left: 0;
}

/* 企業情報：会社概要は表のみを全幅で表示する。 */
body.makieng-inner-page.page-id-26 .entry-body > #about + .row > .col-md-6:first-child {
  float: none;
  width: 100%;
}
body.makieng-inner-page.page-id-26 .entry-body > #about + .row > .col-md-6 + .col-md-6 {
  display: none;
}

/* 企業情報：代表者経歴は一時非表示。再表示する場合はこの指定を削除する。本文は保持。 */
body.makieng-inner-page.page-id-26 .entry-body > .container:first-child > .row > .col-sm-5 {
  display: none;
}
