@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/*---------------------------------------

						元css改変

---------------------------------------*/

article .entry-title {
  border-bottom: 1px solid #333;
  display: inline-block;
  margin-bottom: .5em;
  padding-bottom: .3em;
}

/* お問い合わせフォーム */
#post-31 .entry-title,
#post-275 .entry-title,
#post-273 .entry-title {
  display: none;
}

#post-31 .entry-text,
#post-275 .entry-text,
#post-273 .entry-text {
  font-size: 1em;
}

.article-inner {
  width: 1000px;
  margin: 0 auto;
  padding: 2em;
}

.article h2 {
  background-color: transparent;
}

.article h2,
.article h3,
.article h4,
.article h5,
.article h6 {
  margin: 0;
}

.article h3 {
  border: none;
  font-size: 1em;
  padding: 0;
}

.article ul li,
.article ol li {
  margin: 0;
}

#content {
  margin-top: 0;
}

#main {
  padding: 0;
}

#footer {
  border-top: 2px solid #012b0f;
  margin-top: 0;
}

#navi {
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
}

#navi ul {
  justify-content: left;
}

#navi li {
  width: auto;
}

#navi a {
  color: #555;
  font-size: 2em;
  margin-right: 2em;
}

.entry-content p {
  font-size: 1.8em;
}

.breadcrumb {
  margin-top: 0;
}

.entry-title,
.archive-title {
  margin-bottom: 0;
}

.entry-content {
  margin: 0;
}

.entry-content p {
  font-size: 1.8em;
  margin-bottom: 0;
}

.navi-menu-content {
  right: 0;
  left: auto;
  transform: translateX(105%);
}

.breadcrumb {
  margin-bottom: 0;
}

.search-edit,
input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
textarea,
select {
  border: 1px solid #555;
  border-radius: 0;
  font-size: 1em;
  width: 100%;
  padding: 0;
}

button,
input,
select,
textarea {
  background-color: #fff!important;
  border: 1px solid #555!important;
}

.top-has-sub.has-sub.has-icon {
  display: none;
}

input[type="submit"],
#bbp_reply_submit,
.bp-login-widget-register-link a {
  width: 30%;
}

table th,
table td {
  border: 1px solid #333;
}

table tr:nth-of-type(2n+1) {
  background-color: #f9f9f9;
}

.navi-in > ul li#menu-item-37 .sub-menu {
  min-width: 380px;
}

.content .wpcf7 form .wpcf7-response-output {
  font-size: 1.8rem;
  text-align: center;
  margin: 0;
  margin-top: -1rem;
}

.wpcf7-spinner {
  display: none!important;
}


@media screen and (max-width: 1200px) {
  .article-inner {
    width: auto;
  }
}

@media screen and (max-width: 834px) {
  .mobile-menu-buttons {
    z-index: 10;
  }

  .menu-content {
    max-width: 60%;
  }

  .menu-content .menu-drawer {
    font-size: 1.2em;
    font-weight: bold;
    text-align: left;
    padding: 0;
    padding-left: 1em;
  }

  .menu-drawer li {
    font-family: "Noto Serif JP", sans-serif;
    font-size: 1em;
    margin-bottom: 1em;
  }

  .menu-drawer li a {
    color: #012b0f;
    padding: 0;
  }

  .menu-drawer .sub-menu {
    padding-top: 10px;
    padding-left: 10px;
  }

  .menu-drawer .sub-menu li {
    font-size: .9em;
    text-align: left;
  }

  input[type="submit"] {
    width: 100%;
  }
}



/*!
 * ress.css • v4.0.0
 * MIT License
 * github.com/filipelinhares/ress
 */

/* # =================================================================
   # Global selectors
   # ================================================================= */

html {
  box-sizing: border-box;
  word-break: normal;

  -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS */
  -moz-tab-size: 4;
       tab-size: 4;
}

*,
::before,
::after {
  background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  margin: 0;
  padding: 0; /* Reset `padding` and `margin` of all elements */
}

/* # =================================================================
		 # General elements
		 # ================================================================= */

hr {
  color: inherit; /* Correct border color in Firefox. */
  height: 0; /* Add the correct box sizing in Firefox */
  overflow: visible; /* Show the overflow in Edge and IE */
}

details,
main {
  display: block; /* Render the `main` element consistently in IE. */
}

summary {
  display: list-item; /* Add the correct display in all browsers */
}

small {
  font-size: 80%; /* Set font-size to 80% in `small` elements */
}

[hidden] {
  display: none; /* Add the correct display in IE */
}

abbr[title] {
  border-bottom: none; /* Remove the bottom border in Chrome 57 */
  /* Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari */
  text-decoration: underline;
  text-decoration: underline dotted;
}

a {
  background-color: transparent; /* Remove the gray background on active links in IE 10 */
}

a:active,
a:hover {
  outline-width: 0; /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* Specify the font family of code elements */
}

pre {
  font-size: 1em; /* Correct the odd `em` font sizing in all browsers */
}

b,
strong {
  font-weight: bolder; /* Add the correct font weight in Chrome, Edge, and Safari */
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
  position: relative;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

table {
  border-color: inherit; /* Correct border color in all Chrome, Edge, and Safari. */
  text-indent: 0; /* Remove text indentation in Chrome, Edge, and Safari */
}

/* # =================================================================
		 # Forms
		 # ================================================================= */

input {
  border-radius: 0;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; /* Correct the cursor style of increment and decrement buttons in Chrome */
}

[type="search"] {
  -webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px; /* Correct the outline style in Safari */
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; /* Remove the inner padding in Chrome and Safari on macOS */
}

textarea {
  overflow: auto; /* Internet Explorer 11+ */
  resize: vertical; /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold; /* Restore the font weight unset by the previous rule */
}

button {
  overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

button,
select {
  text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}

/* Apply cursor pointer to button elements */
button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
  color: inherit;
  cursor: pointer;
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type="button"],
/* Prevent a WebKit bug where (2) destroys native `audio` and `video`controls in Android 4 */
	[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline-width: 0;
}

/* Style select like a standard input */
select {
     -moz-appearance: none; /* Firefox 36+ */
  -webkit-appearance: none; /* Chrome 41+ */
}

select::-ms-expand {
  display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor; /* Internet Explorer 11+ */
}

legend {
  border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
  white-space: normal; /* Correct the text wrapping in Edge and IE */
  display: table; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge 18- and IE */
}

::-webkit-file-upload-button {
  color: inherit;
  font: inherit; /* Change font properties to `inherit` in Chrome and Safari */
  /* Correct the inability to style clickable types in iOS and Safari */

  -webkit-appearance: button;
}

/* # =================================================================
		 # Specify media element style
		 # ================================================================= */

img {
  border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

/* # =================================================================
		 # Accessibility
		 # ================================================================= */

/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled="true"] {
  cursor: default;
}

/* 追記 */
body {
  font-size: 62.5%;
}

a {
  color: black;
  text-decoration: none;
}

a:hover {
  opacity: .7;
}


/*------------------ /ress.css-------------------------- */


/*------------------ style.css-------------------------- */

/*---------------------------------------

	frontpage

	---------------------------------------*/

/* perts */

body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 62.5%!important;
  min-width: 400px;
}

_:lang(x) + _:-webkit-full-screen-document,
body {
  min-width: 1%;
}

figcaption {
  font-size: 1.8em;
  font-weight: bold;
  text-align: center;
}

.sp-only {
  display: none;
}

.pc-only {
  display: block;
}

@media screen and (max-width: 960px) {
  .sp-only {
    display: block;
  }

  .pc-only {
    display: none;
  }
}

li {
  list-style: none;
}

a {
  text-decoration: none;
}

img {
  max-width: 100%;
  max-height: 100%;
}

section {
  padding: 11.5em 5em 5.75em;
}

section p {
  color: #555;
  /* font-size: 1.8em; */
  font-size: 2em;
  line-height: 1.7;
}


main {
  background-color: rgba(255, 255, 255, 0)!important;
  position: relative!important;
  z-index: 5!important;
  overflow: hidden;
}

.main-inner {
  background-color: rgba(255, 255, 255, .9);
  border-right: 2px solid #012b0f;
  border-left: 2px solid #012b0f;
  position: relative;
  z-index: 5;
}

.main {
  border: none;
}

.inner {
  width: 90%;
  margin: 0 auto;
}

.flex {
  display: flex;
}

.section-title {
  margin-bottom: 4em;
  position: relative;
}

.section-title::before {
  color: #f8d803;
  font-size: 5.5em;
  position: absolute;
  top: -.7em;
  left: -.7em;
  z-index: -1;
  opacity: .6;
}

.section-title h2 {
  color: #012b0f;
  font-family: "Noto Serif JP", sans-serif;
  font-size: 3em;
  font-weight: bold;
}

.section-while {
  background-image: url(./my-asset/img/top.jpg);
  background-size: cover;
  height: 8em;
}

.page-qa .btn-wrap {
  text-align: center;
  display: flex;
  justify-content: space-around;
  margin-bottom: 0;
}

.page-qa .btn-wrap .contact-btn {
  background-image: linear-gradient(45deg,#012b0f, #246129);
  color: #fff;
  display: inline-block;
  padding: 0;
}

.page-qa .btn-wrap .contact-btn a {
  background-color: transparent;
  color: #fff;
  font-size: 1em;
  display: inline-block;
  width: 100%;
  height: 100%;
  padding: 1em 4em;
}

/* curtain */

.curtain-wrap {
  position: relative;
  overflow: hidden;
}

.curtain-wrap::before {
  background-color: #012b0f;
  content: "";
  width: 1500px;
  height: 6000px;
  position: absolute;
  top: -300px;
  left: 25%;
  z-index: 3;
  transform: rotateZ(-15deg) translateX(-80%);
}

.curtain-wrap::after {
  background-color: #012b0f;
  content: "";
  width: 1500px;
  height: 6000px;
  position: absolute;
  top: 300px;
  right: -15%;
  z-index: 1;
  transform: rotateZ(-15deg) translateX(80%);
}

@media screen and (max-width: 1440px) {
  .curtain-right {
    right: -25%;
  }
}



/* header */

.header {
  border-bottom: 1px solid #012b0f;
  position: relative;
  z-index: 10;
  overflow: hidden;
}

.header-top {
  justify-content: space-between;
  align-items: center;
}

.header-top h1 {
  color: white;
  font-family: "Noto Serif JP", sans-serif;
  display: flex;
  align-items: center;
}

.header-right {
  align-items: stretch;
}

.header-mail {
  background-color: #da4830;
  position: relative;
}

.header-phone {
  background-color: #30b8da;
  position: relative;
}

.header-mail,
.header-phone {
  color: #fff;
  font-size: 1.2em;
  padding: .2em;
  padding-left: 2.5em;
}

.header-mail::before {
  content: "\f0e0";
  font-family: "Font Awesome 5 Free";
  font-size: 1.5em;
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: .3em;
  transform: translateY(-50%);
}

.header-phone::before {
  content: "\f879";
  font-family: "Font Awesome 5 Free";
  font-size: 1.5em;
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: .4em;
  transform: translateY(-50%);
}

.header-mail-text,
.header-phone-text {
  border-left: 1px solid #fff;
  display: flex;
  align-items: center;
  height: 100%;
  padding-left: .5em;
}

.header-mail:hover,
.header-phone:hover {
  color: #fff;
}

.header-mail-text p {
  font-size: 1.3em;
  font-weight: bold;
}

.header-phone-text .phone-num {
  font-family: "Roboto", sans-serif;
  font-size: 2.2em;
  line-height: 1;
}

.header-pulldown {
  display: none;
}

.header-debt {
  background-color: #fff;
  text-align: center;
}

.header-debt i {
  font-size: .8em;
}

.header-debt-text {
  background-color: #40aa47;
  color: #fff;
}

.header-debt-text p {
  font-size: 1.5em;
}

.debt-phone-num {
  color: #fff;
  font-size: 2.5em;
  line-height: 1;
  display: block;
  padding: 0 .5em;
}

/* top */
.top {
  height: 40vh;
  position: relative;
  z-index: 2;
}

.top-bg {
  background-image: url(./my-asset/img/top.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
}

.top-title {
  background-image: url(./my-asset/img/top-logo.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 50%;
  max-width: 40%;
  height: inherit;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

/* about */

section.about {
  padding: 11.5em 4em 5.75em;
}

.about-text p {
  color: #333;
  font-family: "Noto Serif JP", sans-serif;
  line-height: 2;
}

.about-text p .nowrap {
  white-space: nowrap;
}

@media screen and (max-width: 1200px) {
  .about-text p .nowrap {
    white-space: normal;
  }
}

.about .section-title::before {
  content: "About us";
}

/* service */

#service .green {
  position: relative;
}

#service .green .service-box {
  background-color: rgba(1,43,15,.9);
}

#service .white .service-box {
  background-color: rgba(255, 255, 255, .8);
}

.service {
  padding: 0;
}

.service-title {
  margin: 0;
  position: static;
}

.service-item {
  border: 5px solid #012b0f;
  border-bottom: none;
  height: 180px;
  margin-bottom: 3em;
}

.service-flex {
  display: flex;
}

.service-flex > a {
  width: 50%;
  padding-top: 50%;
  position: relative;
}

.service-title-eng {
  background-image: linear-gradient(-45deg,#012b0f, #246129);
  font-size: 1.3em;
  width: 100%;
  padding: 1em;
  position: absolute;
  top: 0;
  left: 0;
}

.service-title-eng p {
  color: #fff;
  font-family: "Roboto", sans-serif;
}

.green .service-box {
  color: #fff;
}

.service-box {
  color: #012b0f;
  width: 100%;
  height: 100%;
  padding: 0 2em;
  padding-top: 4em;
  position: absolute;
  top: 0;
  z-index: 1;
}

.section-title.service-title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.section-title.service-title h2 {
  color: #fff;
  font-size: 5em;
}

.service-title h3 {
  font-family: "Noto Serif JP", serif;
  font-size: 3.5em;
}

.service-title h3 span {
  font-size: .6em;
}

.green .service-text p {
  color: #fff;
}

.service-text {
  display: flex;
  align-items: center;
  height: calc(100% - 12.5em);
}

.service-text p {
  color: #012b0f;
  font-family: "Noto Serif JP", serif;
  font-size: 2.5em;
  line-height: 1.7;
}

.service-link {
  text-align: center;
  width: calc(100% - 2em);
  padding: 1em 2em;
  padding-left: 0;
  position: absolute;
  bottom: 0;
}

.green .service-link p {
  border-top: #fff 1px solid;
  color: #fff;
}

.service-link p {
  border-top: #012b0f 1px solid;
  color: #012b0f;
  font-family: "Noto Serif JP", serif;
  font-size: 2.5em;
  padding-top: .3em;
}

.service-link p::after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 700;
  position: absolute;
  right: 2em;
}

/* news */

.news {
  padding: 11.5em 4em 5.75em;
}

.news .section-title::before {
  content: "News";
}

.news-wrap {
  display: flex;
}

.news-icon {
  color: #012b0f;
  font-size: 4em;
  margin-right: 1em;
}

.news-text {
  font-size: 1.8em;
  flex-grow: 1;
  margin-top: 1.5em;
}

.news-text dl {
  display: flex;
  align-items: center;
  padding-bottom: 1em;
}

.news-text dt {
  margin-right: 1.5em;
}

.news-text dt:nth-child(2) {
  background-color: #012b0f;
  color: #fff;
  line-height: 1.6;
  padding: 0 .5em;
}

.news-text dl dt:first-child {
  font-family: "Roboto", sans-serif;
}

.news-item {
  border-bottom: 1px solid #012b0f;
  width: 100%;
  margin-bottom: 1em;
}

/* footer */

.footer {
  border-top: 1px solid black;
  width: 100%;
  padding: 3em;
}

footer ul {
  padding-left: 0;
}

.footer-logo {
  margin-bottom: 3em;
}

.footer-wrap {
  display: flex;
  justify-content: space-around;
}

.footer-wrap a,
.footer-wrap p {
  color: #555;
  font-family: "Noto Serif JP", serif;
  font-size: 1.8em;
}

.footer-wrap a {
  display: block;
  margin-bottom: .5em;
}

.footer-wrap li {
  padding-left: 1em;
}

.footer-menu {
  display: flex;
}

.footer-l {
  margin-right: 5em;
}

.footer-street-address {
  margin-bottom: 3em;
}

.footer-street-address p {
  color: #012b0f;
  font-family: "Noto Sans JP", sans-serif;
}

.footer-phone {
  display: flex;
  align-items: center;
}

.footer-phone a {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}

.footer-phone i {
  color: #012b0f;
  font-size: 2em;
  margin-right: .1em;
}

.footer-phone p {
  color: #012b0f;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1em;
  text-align: center;
}

.footer-phone p .footer-phone-num {
  font-family: "Roboto", sans-serif;
  font-size: 3em;
  font-weight: bold;
  display: block;
}

.footer-phone p .footer-phone-num {
  line-height: 1;
}

.footer-copyright {
  background-color: #012b0f;
  text-align: center;
}

.footer-copyright p {
  color: #fff;
  font-size: 1.3em;
}

.footer-phone-secondary {
  text-align: center;
  margin-top: 1em;
}

.footer-phone-secondary p,
.footer-phone-secondary a {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
}

.footer-phone-secondary p {
  background-color: #012b0f;
  color: #fff;
  font-size: 2em;
}

.footer-phone-secondary a {
  color: #012b0f;
  font-size: 3em;
}



/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
@media screen and (min-width: 1200px) {
  .top-title {
    width: 50%;
  }

  .inner {
    width: 1200px;
  }
}
@media screen and (max-width: 1200px) {
  .header-inner {
    width: 100%;
  }

  .service-text p {
    font-size: 1.8em;
  }
}

/* 960px以下 */
@media screen and (max-width: 960px) {
  .header {
    overflow: visible;
  }

  .header-phone {
    padding: 2.5em;
  }

  .header-debt {
    display: none;
  }

  .curtain-wrap::after,
  .curtain-wrap::before {
    display: none;
  }

  .header-mail {
    padding: 2.5em;
  }

  .header-mail-text {
    display: none;
  }

  .header-mail::before,
  .header-phone::before {
    font-size: 2em;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .header-pulldown {
    background-color: rgba(0,0,0,.8);
    font-size: 2em;
    text-align: center;
    display: none;
    width: 100%;
    position: absolute;
    top: 3em;
    left: 0;
    z-index: 3;
  }

  .header-pulldown a,
  .header-pulldown p {
    color: #fff;
  }

  .header-pulldown a {
    display: block;
    margin: .3em 0;
    padding-left: .1em;
    position: relative;
  }

  .header-pulldown a::before {
    content: "\f879";
    font-family: "Font Awesome 5 Free";
    /* font-size: 0.9em; */
    font-size: .65em;
    font-weight: 900;
    margin-right: .2em;
    position: relative;
    top: -.17em;
  }

  .section-title.service-title h2 {
    font-size: 3em;
  }

  .service-title h3 {
    font-size: 3em;
    margin-bottom: 1em;
  }

  .service-text p {
    font-size: 1.8em;
  }

  .service-link p {
    font-size: 1.5em;
  }

  .footer-phone p .footer-phone-num {
    font-size: 2em;
  }

  .footer-phone i {
    font-size: 1.5em;
  }
}

/*834px以下*/
@media screen and (max-width: 834px) {
  .article-inner {
    width: auto;
    margin: 0 auto;
    padding: 2em 1em;
  }

  section {
    padding: 2em 2em 2em;
  }

  section p {
    font-size: 1.6em;
  }

  .section-title {
    margin: 2em 0;
  }

  .section-title::before {
    font-size: 3em;
  }

  .section-title h2 {
    font-size: 2.5em;
  }

  .section-title.service-title {
    margin: 0;
  }

  .inner {
    width: 100%;
  }

  .header-top img {
    width: 90%;
  }

  .top-title {
    width: 80%;
    max-width: 100%;
  }

  section.about {
    padding: 2em;
  }

  #service .service-flex:first-child .green .service-box {
    background-image: linear-gradient(-45deg,#012b0f, #246129);
    padding: 1em;
  }

  .service-flex {
    flex-direction: column;
  }

  .service-flex:nth-child(2n) {
    flex-direction: column-reverse;
  }

  .service-flex > a {
    width: 100%;
    padding-top: 0;
  }

  .service-title-eng {
    background-image: none;
    text-align: right;
    display: none;
    padding: 0;
  }

  .section-title.service-title {
    text-align: center;
    position: static;
    transform: none;
  }

  .service-box {
    padding: 2em;
    position: static;
  }

  .service-text {
    padding-top: 0;
  }

  .service-text p {
    font-size: 1.6em;
    margin-bottom: 1em;
  }

  .service-link {
    width: auto;
    padding-bottom: 0;
    position: static;
  }

  .service-link p {
    padding-top: 1em;
  }

  .news-wrap {
    display: block;
  }

  .news-icon {
    display: none;
  }

  .news-item {
    font-size: 1em;
    margin-bottom: 2em;
  }

  .news-text {
    font-size: 1.6em;
  }

  .news-text dl {
    display: block;
  }

  .news-text dt {
    margin-right: .8em;
  }

  .news-text .date,
  .news-text .cat {
    display: inline-block;
  }

  .footer {
    padding: 2em;
  }

  .footer-wrap {
    text-align: center;
    display: block;
  }

  .footer-wrap ul {
    text-align: left;
    display: inline-block;
    margin-bottom: 2em;
  }

  .footer-wrap ul li ul {
    margin-bottom: 0;
  }

  .footer-menu {
    justify-content: space-around;
  }

  .footer-l {
    margin-right: 0;
  }

  .footer-l ul li {
    padding-left: 1em;
  }

  .footer-wrap a,
  .footer-wrap p {
    font-size: 1.6em;
  }

  .footer-phone {
    white-space: nowrap;
    justify-content: center;
  }

  .footer-phone p {
    font-size: 1.2em;
  }

  .footer-phone i {
    margin-right: 0;
  }

  .footer-wrap li {
    padding-left: 0;
  }

  .footer-wrap li ul li {
    padding-left: 1em;
  }
}

/*---------------------------------------

下層page共通

---------------------------------------*/

.page {
  font-family: "Noto Sans JP", sans-serif;
}

.page section:first-child {
  padding-top: 0;
}

.page section {
  padding: 3em 5em 5em;
}

.page .section-title {
  background-color: transparent;
  border-bottom: 1px solid #012f0f;
  text-align: center;
  margin-bottom: 5em;
}

.page .section-title h2 {
  font-size: 4em;
  margin: 0;
}

.page-sm-wrap {
  padding-bottom: 4em;
}

.page-title {
  margin-bottom: 4em;
}

.page-title h3 {
  background-color: #012b0f;
  color: white;
  font-family: "Noto Serif JP", serif;
  font-size: 3em;
  padding: .5em 1em;
}

.page-merit ol {
  background-color: #f8f5e3;
}

.page-demerit ol {
  background-color: #e3ebf8;
}

.page-merit {
  margin-bottom: 3em;
}

.merit,
.demerit {
  font-size: 1.3em;
  text-align: center;
}

.merit {
  background-color: #f8efb1;
}

.demerit {
  background-color: #b1ccf8;
}

.merit p,
.demerit p {
  color: #333;
  font-weight: bold;
}

.page-service-child ol {
  margin-bottom: 0;
  padding: 1em;
  padding-left: 0;
}

.page-service-child ol li {
  /* font-size: 1.8em; */
  font-size: 2em;
  text-indent: -1em;
  margin-bottom: .5em;
  padding-left: 1em;
}

.page-flow tbody {
  border: 2px solid #333;
}


.page-flow tr:first-child th {
  background-color: #fff;
  color: #012f0b;
  font-family: "Noto Serif JP", serif;
  font-size: 1.4em;
  font-weight: bold;
}

.page-flow tr:nth-child(2) th:first-child {
  background-color: #b1ccf8;
}

.page-flow tr:nth-child(2) th:nth-child(2) {
  background-color: #f8efb1;
}

.page-flow table th,
.page-regene-flow table td {
  width: 50%;
}

.page-flow tr {
  background-color: #ddd;
  text-align: center;
}

.page-flow table {
  font-size: 1.8em;
  margin-bottom: 0;
}

.page-title-sm {
  margin-top: 3em;
}

.page-title-sm h4 {
  border: none;
  border-bottom: 1px solid #012b0f;
  font-size: 2.2em;
  padding: 0;
  padding-bottom: .5em;
}

.page-service-child .btn-wrap,
.page-office .btn-wrap {
  text-align: center;
  display: flex;
  justify-content: space-around;
  margin-bottom: 0;
  padding: 3em 0;
}

.page-office .btn-wrap {
  padding-top: 0;
}

.page-service-child .btn-wrap .contact-btn,
.page-service-child .btn-wrap .page-service-qa,
.btn-wrap .page-office-map,
.btn-wrap .btn-wrap-inner {
  background-image: linear-gradient(45deg,#012b0f, #246129);
  color: #fff;
  display: inline-block;
  width: fit-content;
  padding: 0;
  transition: opacity .23s ease;
}

.page-service-child .btn-wrap .contact-btn a,
.page-service-child .btn-wrap .page-service-qa a,
.btn-wrap .page-office-map a,
.btn-wrap .btn-wrap-inner a,
.btn-wrap .page-office-map .a,
.btn-wrap .btn-wrap-inner .a {
  background-color: transparent;
  color: #fff;
  font-size: 1em;
  display: inline-block;
  width: 100%;
  height: 100%;
  padding: 1em 2em;
  transition: opacity .23s ease;
}
.btn-wrap .btn-wrap-inner:hover {
  opacity: .7;
  transition: opacity .23s ease;
}

.btn-wrap.front {
  text-align: center;
}


/*---------------------------------------

page-about

---------------------------------------*/

.page-about {
  text-align: center;
}

.page-staff-title {
  margin-bottom: 1em;
}

.page-staff-title h3 {
  border-left: 5px solid #f8d803;
  color: #012b0f;
  font-family: "Noto Serif JP", serif;
  font-size: 3em;
  padding: .4em .5em;
}

.page-staff-career {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

.page-staff-career dl dd {
  font-size: 1.6em;
  margin-left: 1em;
}

.page-staff-career dl {
  display: flex;
}

.page-staff-career dt {
  border-right: #012b0f 2px solid;
  color: #012b0f;
  font-family: "Noto Serif JP", serif;
  font-size: 2.5em;
  font-weight: bold;
  padding-right: 1em;
}

.page-staff-career dd {
  margin-top: 2em;
}

.page-staff-career dd ul {
  margin: 0;
  padding-left: 0;
}

.page-staff-career li.parent-li {
  margin-bottom: 1em;
}

.page-staff-career .parent-li ul {
  padding-left: 1em;
}

/*---------------------------------------

page-service

---------------------------------------*/

.page-service-item {
  margin-bottom: 3em;
}

.page-service-item h3 {
  background-color: #012b0f;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-size: 2em;
  display: inline-block;
  padding: .5em 2em;
}

.page-service-item p {
  border: 1px solid #012b0f;
  padding: 1em;
}



/*---------------------------------------

page-office

---------------------------------------*/

.page-office-date {
  padding: 0 5em 4em;
}

.page-office-date ul {
  margin-bottom: 0;
  padding-left: 1em;
}

.page-office-date dl {
  border-bottom: 1px solid #012b0f;
  font-size: 2em;
  font-weight: bold;
  display: flex;
  margin-bottom: .5em;
  padding-right: 1em;
  padding-bottom: .5em;
  padding-left: 1em;
}

.page-office-date dt {
  width: 20%;
}

.page-office-date dd {
  /* width: 85%; */
  font-weight: lighter;
  flex-grow: 1;
  margin-left: 0;
}

.page-office-imgs {
  display: flex;
  justify-content: space-around;
  margin-bottom: 4em;
}

.page-office-img {
}

.page-office-img img {
  width: 400px;
  height: 475px;
}

.page-office-banner {
  text-align: center;
}

.page-office-access {
  text-align: center;
  height: 100%;
  margin-bottom: 5em;
}

.page-office-access a {
  background-color: #012b0f;
  color: #fff;
  font-size: 1.8em;
  padding: 1em 4em;
}

.page-service-qa {
  text-align: center;
  padding-top: 3em;
}

.page-service-qa a {
  background-color: #012b0f;
  color: #fff;
  font-size: 1.8em;
  padding: 1em 4em;
}

/*---------------------------------------

page-form

---------------------------------------*/

.page-form {
  background-color: rgba(1,43,15,.1);
  border-radius: 4px;
  font-family: "Noto Serif JP", serif;
  font-size: 1.8em;
  padding: 3em 5em;
}

.page-form dl {
  display: flex;
  margin-bottom: 3em;
}

.page-form dt {
  display: flex;
  justify-content: space-between;
  width: 45%;
}

.page-form dt span:first-child {
  font-weight: bold;
}

.page-form dd {
  width: 55%;
  margin-left: 3em;
}


.page-form .red,
.page-form .blue {
  border-radius: 8px;
  color: #fff;
  padding: 0 .5em;
}

.page-form .red {
  background-color: #af011c;
  height: fit-content;
}

.page-form .blue {
  background-color: #0148af;
}

.page-form textarea {
  padding: .5em .5em;
}

.scroll-wrap {
  background-color: #fff;
  width: 500px;
  height: 200px;
  margin: 0 auto;
  margin-bottom: 3em;
  padding: 1em;
  overflow-y: scroll;
}

.scroll-wrap p {
  font-size: 1em;
}

.scroll-wrap h3 {
  margin-bottom: 1em;
}

.scroll-wrap h4 {
  margin: 1em 0;
}

.scroll-wrap ul,
.scroll-wrap ol {
  text-indent: -1em;
  margin: 1em 0;
  padding-left: 1em;
}

.scroll-wrap li {
  margin-bottom: .5em;
}

.scroll-wrap li:last-child {
  margin-bottom: 0;
}

.page-form .submit {
  margin-bottom: 0;
}

.page-form .checkbox,
.page-form .submit {
  text-align: center;
  display: block;
}

.page-form .checkbox dd,
.page-form .submit dd {
  width: auto;
  margin-left: 0;
}

.page-form .message {
  font-size: .7em;
  display: block;
}

.wpcf7 .ajax-loader {
  display: none !important;
}

/*---------------------------------------

page-access

---------------------------------------*/

.page-access-map {
  text-align: center;
  padding: 5em;
  padding-bottom: 5em;
}

.page-access-text {
  font-family: "Noto Serif JP", serif;
  text-align: center;
  margin-top: 2em;
}

.page-access-text p {
  color: #012b0f;
}

.page-access-items ol {
  text-align: left;
  margin-bottom: 5em;
  padding-left: 0;
}

.page-access-items ol li {
  display: inline-block;
  width: 33%;
  vertical-align: top;
}

.page-access-item figure {
  text-align: center;
  width: auto;
  margin: 0 auto;
}

.page-access-img img {
  width: 300px;
  height: 350px;
}

/*---------------------------------------

page-qa

---------------------------------------*/

.page-qa-item {
  margin-bottom: 10em;
}

.page-qa-item:last-child {
  margin-bottom: 5em;
}

.page-qa-title {
  text-align: center;
  padding: 1em 0;
  position: relative;
}

.page-qa-title::before {
  background-color: #012b0f;
  content: "";
  width: calc(50% - 70px);
  height: 1px;
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 1;
}

.page-qa-title::after {
  background-color: #012b0f;
  content: "";
  width: calc(50% - 70px);
  height: 1px;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1;
}

.page-qa-title h3 {
  color: #012b0f;
  font-family: "Noto Serif JP", serif;
  font-size: 3em;
  display: inline-block;
  padding: 0 .1em;
  position: absolute;
  top: -50%;
  left: 50%;
  z-index: 2;
  transform: translateX(-50%);
}

.page-qa-item .page-qa-text:last-of-type {
  border-bottom: 1px solid #012f0b;
  padding-bottom: 3em;
}

.page-qa-item .page-qa-text:nth-of-type(2) {
  padding-top: 5em;
}

.page-qa-text {
  border: 1px solid #012b0f;
  border-top: none;
  border-bottom: none;
  padding: 3em;
  padding-bottom: 0;
}


.page-qa-text .q {
  background-color: #012b0f;
  color: #fff;
  padding: 1em;
  padding-left: 2em;
}

.page-qa-text .a {
  background-color: #f9f9f9;
  color: #555;
  padding: 1em;
  padding-left: 2em;
}

.page-qa-text span {
  font-size: 1.3em;
  font-weight: bold;
  margin-left: -.85em;
}

.page-qa-text .q span {
  color: #af011c;
}

.page-qa-text .a span {
  color: #0148af;
}


/*---------------------------------------

page-voice

---------------------------------------*/

.page-voice-item {
  box-shadow: 0 0 4px #333;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin-bottom: 5em;
}

.page-voice-title {
  display: flex;
  justify-content: space-around;
}

.page-voice-person {
  background-color: #f8efb1;
  text-align: center;
  width: 70%;
}

.page .page-voice-person p {
  font-size: 2em;
}

.page-voice-cat {
  text-align: center;
  width: 30%;
}

.page-voice-cat.blue {
  background-color: #b1ccf8;
}

.page-voice-cat.red {
  background-color: #f8b1ba;
}

.page .page-voice-cat p {
  font-size: 2em;
}

.page-voice-title .page-voice-cat p,
.page-voice-title .page-voice-person p {
  color: #333;
}

.page-voice-text {
  background-color: #f8f5e3;
  padding: 1em;
}

/*---------------------------------------

page-case

---------------------------------------*/

.page-case .page-title-sm {
  margin-top: 0;
}

.page-case .page-title-sm h4 {
  color: #012b0f;
  font-size: 2.5em;
}

.page-case-item {
  background-color: #fefefe;
  box-shadow: 0 0 4px #333;
  margin-bottom: 5em;
  padding: 1em 2em;
}

.page-case-item:last-child {
  margin-bottom: 1em;
}

.page-case-textbox {
  display: flex;
  align-items: center;
  padding: 1em;
}

.page-case-textleft {
  background-color: #f8f5e3;
  box-shadow: 0 0 3px #333;
  white-space: nowrap;
  display: flex;
  width: 40%;
  height: fit-content;
  margin-right: 1em;
  padding: 1em;
}

.page-case-textright {
  width: 100%;
  padding: 2em;
}

.case-span-red {
  color: #af011c;
  font-weight: bold;
}

.case-span-blue {
  color: #0148af;
  font-weight: bold;
}

.page-case-textleft .case-span-red {
  font-size: 1.3em;
  display: inline-block;
  margin-bottom: 1em;
}

.page-case-textleft .case-span-blue {
  font-size: 1.3em;
  display: inline-block;
  margin-top: 1em;
}

.page-case-table {
  box-shadow: 0 0 6px #ddd;
  font-size: 1.8em;
  text-align: center;
}

.page-case-table td {
  background-color: #fff;
}

.page-case-table td,
.page-case-table th {
  border: 1px solid #eee;
}

.page-case-table tr th:first-child {
  width: 25%;
}

.page-case-table tr th:nth-child(2) {
  width: 25%;
}

.page-case-table tr th:last-child {
  width: 40%;
}

.page-case-table tr td:nth-child(2),
.page-case-table tr th:nth-child(2) {
  border-right: none;
  position: relative;
}



.page-case-table table tr td:last-child,
.page-case-table table tr th:last-child {
  border-left: none;
  color: #af011c;
  text-align: center;
}

.page-case-table tr td:nth-child(2)::after {
  content: "\f101";
  color: #012b0f;
  font-family: "Font Awesome 5 Free";
  font-size: 1.8em;
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.page-case-voice {
  text-align: center;
  padding-top: 3em;
  padding-bottom: 3em;
}

.page-case-voice a {
  background-color: #012b0f;
  color: #fff;
  padding: 1em 4em;
}

/*---------------------------------------

page-any

---------------------------------------*/

.page-any-text:first-child > p {
  margin-bottom: 1em;
}

.page-any-feature ol {
  background-color: #f8f5e3;
  box-shadow: 0 0 4px #98978c;
  padding: 3em 2em;
}

.page-any-feature ol li {
  border-bottom: 1px solid #333;
  font-size: 2em;
  font-weight: bold;
  margin-bottom: 1em;
}

.page-any-img {
  text-align: center;
  margin: 3em 0 2em;
}

/*---------------------------------------

page-regene

---------------------------------------*/

.page-regene-text:first-child > p {
  margin-bottom: 1em;
}

.page-regene-text p span {
  color: #af011c;
}

.page-regene-asset table th,
.page-regene-asset table td {
  width: auto;
}

.page-regene .border-wrap {
  margin-bottom: 0;
}

.page-regene-type p span {
  color: #0148af;
}

.page-regene table {
  font-size: 1.8em;
  text-align: center;
  margin-bottom: 0;
}

.page-regene-table table tr {
  background-color: #f9f9f9;
}

.page-regene-table table tr:nth-child(2n+1) {
  background-color: #e1f5e7;
}

.page-regene-table table th {
  background-color: #012b0f;
  color: white;
}

.page-regene-table table td {
  border: 1px solid #333;
}

.page-regene .page-regene-text .center-left {
  border: 1px solid #012b0f;
  color: #333;
  text-align: center;
  display: block;
  padding: 1em 1em;
}

.page-regene-text .center-left .border-wrap {
  font-size: 2em;
  font-weight: bold;
  text-align: left;
  display: inline-block;
  margin: 0 auto;
}

.page-regene .page-regene-text .center {
  text-align: center;
}

.page-regene-text .center .border-wrap {
  border: 1px solid #012b0f;
  color: #333;
  font-size: 2em;
  font-weight: bold;
  padding: 1em 0;
}

.page-regene-asset p {
  color: #333;
  font-weight: bold;
  padding-bottom: .5em;
}

.page-regene-asset table th,
.page-regene-asset table td {
  border: 1px solid #012b0f;
}

.page-regene-asset table td {
  background-color: #e3ebf8;
}

.page-regene-asset .overflow-table table td {
  background-color: #f8f5e3;
}

.page-regene-asset tr {
  background-color: #fff;
}

.page-regene-asset table tr:nth-of-type(2n+1) {
  background-color: #fff;
}

.page-regene-asset table:nth-of-type(1) td {
  width: 20%;
}

.page-regene-asset table:nth-of-type(2) td {
  width: 50%;
}

.page-regene-asset table:nth-of-type(1) {
  margin-bottom: 2em;
}

.page-regene-text .radius {
  border: 3px solid #012f0b;
  border-radius: 48px;
  padding: 2em;
}

.page-regene-text .radius li {
  font-weight: bold;
}

/*---------------------------------------

page-bankrapt

---------------------------------------*/

.page-bankrapt-text:first-child > p {
  margin-bottom: 1em;
}

.page-bankrapt-text p span,
.page-bankrapt-type p span {
  color: #af011c;
}

.page-bankrapt .radius {
  border: 3px solid #012f0b;
  border-radius: 48px;
  font-weight: bold;
  margin-top: 1.8em;
  margin-bottom: 1.8em;
  padding: 2em;
}

.page-bankrapt table {
  font-size: 1.8em;
  text-align: center;
}

.page-bankrapt-asset p {
  color: #333;
  font-weight: bold;
  margin-bottom: .5em;
}

.page-bankrapt-asset table:nth-of-type(2) + p {
  color: #555;
  font-weight: normal;
  margin-bottom: 0;
}

.page-bankrapt-asset tr {
  background-color: #fff;
}

.page-bankrapt-asset table tr:nth-of-type(2n+1) {
  background-color: #fff;
}

.page-bankrapt-asset table:nth-of-type(1) td {
  width: 20%;
}

.page-bankrapt-asset table:nth-of-type(2) td {
  width: 50%;
}

.page-bankrapt-asset .radius {
  margin-top: 2em;
}

.page-bankrapt-asset table th,
.page-bankrapt-asset table td {
  border: 1px solid #012b0f;
}

.page-bankrapt-asset table td {
  background-color: #e3ebf8;
}

.page-bankrapt-asset .overflow-table table td {
  background-color: #f8f5e3;
}

/*---------------------------------------

page-overpayment

---------------------------------------*/


.page-overpayment-text:first-child > p {
  margin-bottom: 1em;
}


.page-overpayment-title-sm {
  margin-top: 2em;
}

.page-overpayment-title-sm h4 {
  border: none;
  border-bottom: 1px solid #012b0f;
  padding: 0;
  padding-bottom: .5em;
}

.page-overpayment-text .border-wrap li {
  font-size: 2em;
}

.page-overpayment-text .border-wrap li:last-child {
  margin-bottom: 0;
}

.page-overpayment-text .border-wrap {
  border: 1px solid #012b0f;
  color: #333;
  font-weight: bold;
  text-align: center;
  padding: 1.1em;
}

.page-overpayment .radius li:nth-of-type(2) {
  margin-bottom: 0;
}

.page-overpayment-card ul {
  font-size: 1.8em;
  margin: 0;
  padding-left: 3em;
}

.page-overpayment-card ul:nth-of-type(2) {
  margin-bottom: 1em;
}

.page-overpayment-card li {
  position: relative;
}

.page-overpayment-card li::before {
  content: "\f00c";
  color: #af011c;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0;
  left: -1.3em;
}

.page-overpayment-card li::after {
  content: "□";
  color: #333;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0;
  left: -1.3em;
  z-index: -1;
}

.page-overpayment-card .radius {
  border: 3px solid #012f0b;
  border-radius: 48px;
  color: #333;
  font-weight: bold;
  padding: 1em;
}

.page-overpayment-list ol {
  padding: 1em;
  padding-bottom: 3em;
}

.page-overpayment-list ol li {
  background-color: #0148af;
  color: #fff;
  text-align: center;
  text-indent: 0;
  margin-bottom: 2em;
  padding-left: 0;
}

.page-overpayment-list ol li:last-child {
  margin-bottom: 0;
}

.page-overpayment-list li p {
  background-color: #fbfbfb;
  color: #333;
  font-size: 1em;
  font-weight: bold;
  padding: 1em;
}

.page-overpayment-feature ol {
  background-color: #f8f5e3;
  box-shadow: 0 0 4px #98978c;
  padding: 3em 2em;
}

.page-overpayment-feature ol li {
  border-bottom: 1px solid #333;
  font-size: 2em;
  font-weight: bold;
  margin-bottom: 1em;
}

.page-overpayment-feature ol li:last-child {
  margin-bottom: 0;
}


.page-overpayment-img {
  text-align: center;
  margin: 3em 0 2em;
}

.page-overpayment td[rowspan="9"] {
  font-size: 1.5em;
}


/*---------------------------------------

page-other

---------------------------------------*/

.page-other-list ol {
  font-size: 1em;
  font-weight: bold;
  margin: 0;
  padding: 1em;
}

.page-other-list ol li {
  border-bottom: 1px solid #012b0f;
  margin-bottom: 1em;
}

.page-other-list ol li:last-child {
  margin-bottom: 0;
}



/*---------------------------------------

page-greeting

---------------------------------------*/

.page .about .section-title::before {
  content: "";
}

/*---------------------------------------

page-recruit

---------------------------------------*/

.page-recruit-text {
  text-align: center;
}

.page-recruit-text p {
  margin-bottom: 1em;
}

.page-recruit-link {
  border-bottom: 1px solid #0148af;
  color: #0148af;
  font-size: 2em;
}
/* 2023-03-08 added */
.text-inline-block {
  display: inline-block;
}
.page-recruit-wrap .page-office-date dt {
  padding: 1em .5em;
}
.page-recruit-wrap .page-office-date dd {
  width: 75%;
  padding: 1em .5em;
}
a.no-tell-link,
a.no-tell-link:hover {
  color: black;
  opacity: 1;
}
/*---------------------------------------

アーカイブページ

---------------------------------------*/

.archive-inner {
  padding: 1em;
}

.archive-inner .admin-pv {
  display: none;
}

.archive-inner .entry-card-title {
  border-bottom: 1px solid #333;
  font-size: 2.5em;
  display: inline-block;
  margin-bottom: 1em;
}

.archive-inner .entry-card-snippet {
  font-size: 2em;
}

.archive-inner .pagination-next {
  display: none;
}

.archive-inner .entry-card-thumb {
  display: none;
}

.archive-inner .entry-card-content {
  border: 2px solid #012b0f;
  margin-left: 0;
  padding: 2em;
}

.archive-inner .a-wrap {
  margin-bottom: 0;
}

.archive-inner .entry-title,
.archive-inner .archive-title {
  display: none;
}

.archive-inner .archive-title-h1 {
  font-size: 1.5em;
  text-align: center;
  margin-bottom: 3em;
}

.e-card-info > span {
  font-size: 1.4em;
}

.entry-text {
  font-size: 2em;
}

.entry-text > p {
  font-size: 1em;
  margin: 1em 0;
}

/*---------------------------------------

pageレスポンシブ

---------------------------------------*/

@media screen and (max-width: 1024px) {
  .page-form {
    font-size: 1.6em;
    padding: 1em;
  }

  .page-form dl {
    display: block;
    margin-bottom: 3em;
  }

  .page-form dt {
    justify-content: left;
    width: auto;
    margin-bottom: .5em;
  }

  .page-form dt span:first-child {
    margin-right: 1em;
  }

  .page-form dd {
    text-align: center;
    width: auto;
    margin-left: 0;
  }

  .scroll-wrap {
    width: 100%;
    margin-bottom: 1em;
  }

  .page .scroll-wrap p {
    font-size: 1em;
  }

  .page .wpcf7-list-item {
    margin: 0;
    margin-left: 1em;
  }

  .mobile-menu-buttons {
    display: flex;
    z-index: 9999;
  }

  .page-case-textbox {
    display: block;
  }

  .page-case-textleft {
    width: 100%;
  }
}
@media screen and (max-width: 960px) {
  .page-recruit-wrap .page-office-date {
    padding: 0 1em 1em;
  }
}
@media screen and (max-width: 834px) {
  .page section {
    padding: 2em 1em;
  }

  .page .section-title {
    margin-bottom: 3em;
  }

  .page .section-title h2 {
    font-size: 3em;
  }

  .page-title {
    margin-bottom: 2em;
  }

  .page-title h3 {
    font-size: 2em;
  }

  .page .entry-content p {
    font-size: 1.6em;
  }

  .page .scroll-wrap p {
    font-size: 1em;
  }

  .page-service-child ol li {
    font-size: 1.6em;
  }

  .page-title-sm h4 {
    font-size: 1.8em;
  }

  .page-sm-wrap {
    padding-bottom: 2em;
  }

  .page-staff-career {
    display: block;
  }

  .page-staff-title h3 {
    font-size: 2.5em;
  }

  .page-staff-career dl {
    display: block;
  }

  .page-staff-career dt {
    border-right: none;
    font-size: 2.3em;
  }

  .page-staff-img {
    text-align: center;
  }

  .page-service-child .btn-wrap {
    flex-direction: column;
    align-items: center;
  }

  .page-service-child .btn-wrap .page-service-qa {
    margin-top: 3em;
  }

  .page-flow tr:first-child th {
    font-size: 1.1em;
  }

  .page .page-regene-text .border-wrap {
    font-size: 1.6em;
    padding: 1em .5em;
  }

  .page-regene-text .center-left .border-wrap {
    white-space: normal;
  }

  .page .page-overpayment-list li p {
    font-size: 1em;
  }

  .overflow-table {
    overflow-x: scroll;
  }

  .page-office-date dl {
    font-size: 1.6em;
    display: block;
    padding-right: 0;
    padding-left: 0;
  }

  .page-office-date dt {
    width: 100%;
  }

  .page-office-imgs {
    text-align: center;
    display: block;
  }

  .page-office-date {
    padding: 0 1em 1em;
  }

  .page-office-access {
    margin-top: 3em;
  }

  .page-access-map {
    padding: 1em;
    padding-bottom: 5em;
  }

  .page-access-items ol {
    display: block;
    margin-bottom: 0;
  }

  .page-access-items ol li {
    width: 100%;
    margin-bottom: 2em;
  }

  .page-voice-item {
    display: block;
    margin-bottom: 5em;
  }

  .page-voice-textbox {
    padding: 0;
  }

  .page .page-voice-cat p {
    font-size: 1.8em;
  }

  .page .page-voice-person p {
    font-size: 1.8em;
  }

  .page-case .page-title-sm h4 {
    font-size: 2em;
  }

  .page-case-item {
    padding: 1em 1em;
  }

  .page-case-textleft {
    width: auto;
    height: auto;
    margin-right: 0;
    margin-bottom: 2em;
  }

  .page-case-textright {
    margin-bottom: 2em;
    padding: 0;
  }

  .page-case-table tr td:nth-child(2)::after {
    font-size: 1.3em;
    right: -5px;
  }

  .page-case-table {
    font-size: 2em;
  }

  .page-case-textleft .case-span-red {
    font-size: 1em;
    margin-bottom: .5em;
  }

  .page-case-textleft .case-span-blue {
    font-size: 1em;
    margin-top: .5em;
  }

  .archive-inner .entry-card-title {
    font-size: 1.8em;
  }

  .archive-inner .entry-card-snippet {
    font-size: 1.6em;
  }

  .archive-inner .entry-card-content {
    padding: 1em;
  }
  /* page-recruit 2023-03-08 added */
  .page-recruit-wrap .page-office-date dd {
    width: 100%;
    padding: 0 .5em 1em;
  }
}
@media screen and (max-width: 374px) {
  _:lang(x) + _:-webkit-full-screen-document,
  .page-case-table tr td:nth-child(2)::after {
    display: none;
  }
}

body:not(.page-id-31) .grecaptcha-badge {
  z-index: -999;
  opacity: 0;
  visibility: hidden;
}

/* 2022-09-27 */
.header-debt-text .phone-num {
  font-family: "Roboto", sans-serif;
}
.header-debt-text .phone-num .fas {
  font-size: .65em;
  display: inline-block;
  margin-right: .15em;
  position: relative;
  top: -.17em;
}
.footer-phone-secondary .phone-num {
  font-family: "Roboto", sans-serif;
  line-height: 1.25;
  margin: .4em 0 0;
}

/* 2023-03-09 added */
.page-recruit ul.note {
  padding: 0;
}
.page-recruit ul.note li {
  padding-left: 1em;
}
.page-recruit ul.note .kome {
  display: inline-block;
  margin-left: -1em;
}

/* 2024-02-01 added */
.page-recruit-wrap_category {
  display: flex;
  flex-flow: row;
  justify-content: space-around;
  padding: 0 0 3em 0;
}
.page-recruit-wrap_category li {
  background-color: #053916;
  color: #fff;
  font-size: 1em;
  text-align: center;
  width: 50%;
  padding: .5em 2em;
  cursor: pointer;
  transition: opacity .23s ease;
}
.page-recruit-wrap_category li:hover {
  opacity: .8;
  transition: opacity .23s ease;
}
.page-recruit-wrap_category li:not(.category-active) {
  background-color: #aec5b6;
  color: #333;
}
.page-recruit .page-office-date {
  display: none;
}
.page-recruit .page-office-date.category-active {
  display: block;
}
.body .recruit-detail .btn-wrap {
  font-size: 1em;
}
@media screen and (min-width: 480px) {
  .page-recruit-wrap_category li {
    font-size: 1.8em;
  }
}
@media screen and (min-width: 835px) {
  .page-recruit-wrap_category li {
    font-size: 2em;
  }
  .page-office-date dt {
    width: 9em;
  }
  .page-recruit-wrap .recruit-detail dt {
    padding: 2em .5em 1em;
  }
  .page-recruit-wrap .page-office-date dd {
    width: calc(100% - 9em);
  }
}
@media screen and (min-width: 960px) {
  .page-recruit-wrap_category {
    margin: 0 5em;
  }
  .page-office-date dl {
    padding-right: 3%;
    padding-left: 3%;
  }
}
@media screen and (min-width: 1100px) {
  .page-office-date dl {
    padding-right: 10%;
    padding-left: 10%;
  }
}

/**
 * 2024-06-06 無料相談会
-*/
.free-soudan a {
  text-align: center;
  display: block;
  width: 100%;
  position: relative;
}
/*  */
.entry-text .fsdn-textbox p {
  font-size: 1em;
}
.fsdn-outer {
  border: 1px solid #012b0f;
  margin: 1.25em 0 3em;
  padding: 1.5em 2.5em;
}
.fsdn-outer:last-child {
  margin-bottom: 1.5em;
}
.fsdn-box {
  background-color: #f5f5f5;
  padding: 1.5em 2.5em;
}
.fsdn-box.list {
  padding: 1.5em .5em 1.5em 2.5em;
}
.fsdn-box:nth-of-type(n+2) {
  margin-top: 1em;
}
.notice .fsdn-box {
  margin-top: 0;
  margin-bottom: 1.5em;
}
.notice .fsdn-box:last-child {
  margin-bottom: 0;
}
.fsdn-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.fsdn-list > li {
  line-height: 1.5;
  display: flex;
}
.fsdn-list > li:nth-child(n+2) {
  margin-top: .4em;
}
.fsdn-list .list-head {
  display: flex;
  justify-content: space-between;
  width: 4.1em;
}
.fsdn-list .list-delimiter {
  text-align: center;
  width: 1.4em;
}
.fsdn-list .list-body {
  width: calc(100% - 5.5em);
}
.fsdn-heading-type1,
.fsdn-heading-type2 {
  font-size: 1em;
}
.fsdn-heading-type1 {
  margin-left: -.4em;
}
.notice .fsdn-heading-type1,
.fsdn-heading-type2 {
  margin-bottom: .5em;
}
.fsdn-box + .fsdn-heading-type2 {
  margin-top: 2em;
}
.fsdn-heading-type2 + .fsdn-box {
  margin-top: 0;
}
.notice .fsdn-body {
  padding-left: 0;
}
.notice .fsdn-body .fsdn-text {
  font-size: 1em;
  display: inline-block;
  margin-right: 2em;
  margin-bottom: 0;
}
@media screen and (max-width: 575px) {
  .fsdn-outer {
    padding: 1em;
  }
  .fsdn-box {
    padding: 1em;
  }
  .fsdn-box.list {
    padding: 1em 0 1em 1em;
  }
}
@media screen and (max-width: 479px) {
  .fsdn-list .list-head {
    text-align: center;
    display: block;
    width: 2.1em;
  }
  .fsdn-list .list-body {
    width: calc(100% - 3.5em);
  }
}

/* 2025-03-27 added */
.home .section-while .text-text {
  padding: 2em;
  color: #fff;
  line-height: 1.2;
}
.home .section-while .text-text > span {
  font-size: 1.6em;
  @media screen and (min-width: 835px) {
    font-size: 1.8em;
  }
}
/* 2025-04-24 added 過去の開催部分を変更 */
.past-held-box.fsdn-box.list  {
  padding: 0;
}
.past-held-box {
  & > ul.fsdn-body {
    padding: 1em;
  }
  & > ul {
    @media screen and (min-width: 768px) {
      display: flex;
      flex-wrap: wrap;
      gap: 1em;
    }
  }
  & > ul > .list-inner {
    margin-bottom: 1.5em;
    @media screen and (min-width: 768px) {
      margin-bottom: .5em;
      width: calc(50% - .5em);
    }
  }
}
.past-held-box .accordion-box {
  display: block;
  & .accordion-inner {
    background-color: rgb(255 255 255 / 65%);
    display: none;
  }
  & .accordion-open + .accordion-inner {
    display: block;
  }
}
.past-held-box .accordion-box .list-dot {
  padding: .5em 1em .75em 3em;
  & .list-inner {
    font-size: .95em;
    line-height: 1.6;
    position: relative;
  }
  & .list-inner::before {
    content: "";
    width: .3em;
    height: .3em;
    border-radius: 50%;
    background-color: #000;
    position: absolute;
    top: .75em;
    left: -.75em;
  }
}
.past-held-box .accordion-trigger {
  border: none !important;
  background-color: #d8e2dd !important;
  cursor: pointer;
  display: block;
  text-align: justify;
  width: 100%;
  padding: .25em 2em .25em 1em;
  position: relative;
}
.past-held-box .list-inner.accordion-box .accordion-trigger {
  &::before {
    border-top: 2px solid #012b0f;
    border-left: 2px solid #012b0f;
    content: "";
    width: .6em;
    height: .6em;
    position: absolute;
    top: calc(50% - .3em);
    left: auto;
    right: 1em;
    transform: rotate(-135deg);
    transition: transform .33s ease, top .33s ease;
  }
  &.accordion-open::before {
    top: calc(50% - .15em);
    transform: rotate(45deg);
    transition: transform .33s ease, top .33s ease;
  }
}
.past-held-box .list-inner:not(.accordion-box) .accordion-trigger {
  cursor: inherit;
}
/* *** */
