@charset "UTF-8";
/* Variables
   ========================================================================== */
/*
  英語フォント
*/
/*
  明朝体
*/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

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

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

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

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

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

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code, kbd, samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button, input, optgroup, select, textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button, input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button, select {
  /* 1 */
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button; }

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

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

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

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"], [type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

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

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

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

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

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

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

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

/* Base
   ========================================================================== */
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline; }

*, *:before, *:after {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

/*
  サイト共通の設定
*/
html {
  font-family: YakuHanJP, 'Noto Sans JP', sans-serif;
  line-height: 1.6875;
  background: #F2E9DF;
  color: #181818;
  font-size: 16px; }
  @media screen and (min-width: 0) {
    html {
      font-size: 14px; } }
  @media screen and (min-width: 768px) {
    html {
      font-size: 16px; } }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0; }

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

p {
  word-wrap: break-word;
  overflow-wrap: break-word; }

figure {
  margin: 0; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

.__cf:before, .__cf:after {
  display: table;
  content: " "; }

.__cf:after {
  clear: both; }

.__cf {
  *zoom: 1; }

a {
  color: #000000;
  transition: all 0.3s ease 0s;
  cursor: pointer;
  text-decoration: none; }

a:hover {
  /*	color: $primary-color;
  	text-decoration: underline;
  	cursor: pointer;*/ }

a:hover img {
  opacity: 0.7; }

/*a[target="_blank"] {
	&:after {

		font-family: "Font Awesome 5 Free";
		content: "\f35d";
		font-weight: 900;
	
		margin-left: 8px;
		margin-right: 8px;
		margin-top: 0;
		background: none;
		transform: translateY(-80%);
	}
}*/
.wrapper {
  overflow: hidden; }

@media (max-width: 767px) {
  .br_pc {
    display: none; } }

.br_sp {
  display: none; }
  @media (max-width: 767px) {
    .br_sp {
      display: block; } }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 0.7; }
  .hamburger.is-active:hover {
    opacity: 0.7; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #000; }

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -10px; }
  .hamburger-inner::after {
    bottom: -10px; }

/*
 * 3DX
 */
.hamburger--3dx .hamburger-box {
  perspective: 80px; }
.hamburger--3dx .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(180deg); }
  .hamburger--3dx.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dx.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * 3DX Reverse
 */
.hamburger--3dx-r .hamburger-box {
  perspective: 80px; }
.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(-180deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * 3DY
 */
.hamburger--3dy .hamburger-box {
  perspective: 80px; }
.hamburger--3dy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(-180deg); }
  .hamburger--3dy.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dy.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * 3DY Reverse
 */
.hamburger--3dy-r .hamburger-box {
  perspective: 80px; }
.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * 3DXY
 */
.hamburger--3dxy .hamburger-box {
  perspective: 80px; }
.hamburger--3dxy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg); }
  .hamburger--3dxy.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dxy.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * 3DXY Reverse
 */
.hamburger--3dxy-r .hamburger-box {
  perspective: 80px; }
.hamburger--3dxy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
.hamburger--3dxy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg); }
  .hamburger--3dxy-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dxy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
 * Arrow
 */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1); }
.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1); }

/*
 * Arrow Right
 */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1); }
.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1); }

/*
 * Arrow Alt
 */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }
.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }
.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-8px, -10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }
.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-8px, 10px, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
 * Arrow Alt Right
 */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }
.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }
.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(8px, -10px, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }
.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(8px, 10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
 * Arrow Turn
 */
.hamburger--arrowturn.is-active .hamburger-inner {
  transform: rotate(-180deg); }
  .hamburger--arrowturn.is-active .hamburger-inner::before {
    transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1); }
  .hamburger--arrowturn.is-active .hamburger-inner::after {
    transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1); }

/*
 * Arrow Turn Right
 */
.hamburger--arrowturn-r.is-active .hamburger-inner {
  transform: rotate(-180deg); }
  .hamburger--arrowturn-r.is-active .hamburger-inner::before {
    transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1); }
  .hamburger--arrowturn-r.is-active .hamburger-inner::after {
    transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1); }

/*
 * Boring
 */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none; }
.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg); }
  .hamburger--boring.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--boring.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg); }

/*
 * Collapse
 */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Collapse Reverse
 */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse-r .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse-r .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Elastic
 */
.hamburger--elastic .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic .hamburger-inner::before {
    top: 10px;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic .hamburger-inner::after {
    top: 20px;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }
.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(135deg);
  transition-delay: 0.075s; }
  .hamburger--elastic.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(-270deg);
    transition-delay: 0.075s; }

/*
 * Elastic Reverse
 */
.hamburger--elastic-r .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic-r .hamburger-inner::before {
    top: 10px;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic-r .hamburger-inner::after {
    top: 20px;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }
.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-135deg);
  transition-delay: 0.075s; }
  .hamburger--elastic-r.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(270deg);
    transition-delay: 0.075s; }

/*
 * Emphatic
 */
.hamburger--emphatic {
  overflow: hidden; }
  .hamburger--emphatic .hamburger-inner {
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::before {
      left: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::after {
      top: 10px;
      right: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
  .hamburger--emphatic.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent !important; }
    .hamburger--emphatic.is-active .hamburger-inner::before {
      left: -80px;
      top: -80px;
      transform: translate3d(80px, 80px, 0) rotate(45deg);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic.is-active .hamburger-inner::after {
      right: -80px;
      top: -80px;
      transform: translate3d(-80px, 80px, 0) rotate(-45deg);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
 * Emphatic Reverse
 */
.hamburger--emphatic-r {
  overflow: hidden; }
  .hamburger--emphatic-r .hamburger-inner {
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::before {
      left: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::after {
      top: 10px;
      right: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
  .hamburger--emphatic-r.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent !important; }
    .hamburger--emphatic-r.is-active .hamburger-inner::before {
      left: -80px;
      top: 80px;
      transform: translate3d(80px, -80px, 0) rotate(-45deg);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic-r.is-active .hamburger-inner::after {
      right: -80px;
      top: 80px;
      transform: translate3d(-80px, -80px, 0) rotate(45deg);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
 * Minus
 */
.hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
  transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear; }
.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
  opacity: 0;
  transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear; }
.hamburger--minus.is-active .hamburger-inner::before {
  top: 0; }
.hamburger--minus.is-active .hamburger-inner::after {
  bottom: 0; }

/*
 * Slider
 */
.hamburger--slider .hamburger-inner {
  top: 2px; }
  .hamburger--slider .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider .hamburger-inner::after {
    top: 20px; }
.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--slider.is-active .hamburger-inner::before {
    transform: rotate(-45deg) translate3d(-5.7142857143px, -6px, 0);
    opacity: 0; }
  .hamburger--slider.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(-90deg); }

/*
 * Slider Reverse
 */
.hamburger--slider-r .hamburger-inner {
  top: 2px; }
  .hamburger--slider-r .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider-r .hamburger-inner::after {
    top: 20px; }
.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-45deg); }
  .hamburger--slider-r.is-active .hamburger-inner::before {
    transform: rotate(45deg) translate3d(5.7142857143px, -6px, 0);
    opacity: 0; }
  .hamburger--slider-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(90deg); }

/*
 * Spin
 */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Spin Reverse
 */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin-r .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin-r .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--spin-r.is-active .hamburger-inner {
  transform: rotate(-225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Spring
 */
.hamburger--spring .hamburger-inner {
  top: 2px;
  transition: background-color 0s 0.13s linear; }
  .hamburger--spring .hamburger-inner::before {
    top: 10px;
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring .hamburger-inner::after {
    top: 20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent !important; }
  .hamburger--spring.is-active .hamburger-inner::before {
    top: 0;
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--spring.is-active .hamburger-inner::after {
    top: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 10px, 0) rotate(-45deg); }

/*
 * Spring Reverse
 */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring-r .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear; }
  .hamburger--spring-r .hamburger-inner::before {
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spring-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear; }
  .hamburger--spring-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Stand
 */
.hamburger--stand .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; }
  .hamburger--stand .hamburger-inner::before {
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand .hamburger-inner::after {
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--stand.is-active .hamburger-inner {
  transform: rotate(90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; }
  .hamburger--stand.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-45deg);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(45deg);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Stand Reverse
 */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; }
  .hamburger--stand-r .hamburger-inner::before {
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand-r .hamburger-inner::after {
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--stand-r.is-active .hamburger-inner {
  transform: rotate(-90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; }
  .hamburger--stand-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-45deg);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(45deg);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Squeeze
 */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
  .hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
  .hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
 * Vortex
 */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: 0.1s;
    transition-timing-function: linear; }
  .hamburger--vortex .hamburger-inner::before {
    transition-property: top, opacity; }
  .hamburger--vortex .hamburger-inner::after {
    transition-property: bottom, transform; }
.hamburger--vortex.is-active .hamburger-inner {
  transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
    transition-delay: 0s; }
  .hamburger--vortex.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(90deg); }

/*
 * Vortex Reverse
 */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: 0.1s;
    transition-timing-function: linear; }
  .hamburger--vortex-r .hamburger-inner::before {
    transition-property: top, opacity; }
  .hamburger--vortex-r .hamburger-inner::after {
    transition-property: bottom, transform; }
.hamburger--vortex-r.is-active .hamburger-inner {
  transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
    transition-delay: 0s; }
  .hamburger--vortex-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg); }

/*// ==========================================================================
// Layout
// ==========================================================================*/
/* header
   ========================================================================== */
#head {
  position: relative;
  width: 100%;
  z-index: 9999;
  /*box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5);*/ }

.l-header {
  width: 100%;
  top: 0;
  left: 0; }

.admin-bar .l-header {
  top: 32px; }
  @media (max-width: 767px) {
    .admin-bar .l-header {
      top: 46px; } }

/* main　　共通パーツ
   ========================================================================== */
/* テキスト装飾 */
/* 文字強調 */
.c-txt01 {
  font-weight: bold; }

/* 文字中央寄せ */
.c-center {
  text-align: center; }

.c-left {
  text-align: left; }

/* リストスタイル */
ul.c-list {
  list-style: none;
  margin: 1em 0 1em;
  padding: 0; }
  ul.c-list li {
    margin-bottom: .5em;
    margin-left: 20px;
    text-indent: -15px; }
    ul.c-list li:before {
      content: "";
      display: inline-block;
      width: 5px;
      height: 5px;
      background: #037243;
      border-radius: 50%;
      margin-right: 10px;
      transform: translateY(-50%); }
    ul.c-list li:last-child {
      margin-bottom: 0; }

ol.c-list {
  list-style: none;
  margin: 1em 0 1em;
  padding: 0;
  counter-reset: number; }

ol.c-list li {
  margin-left: 20px;
  margin-bottom: .5em;
  position: relative;
  padding: 0 0 0 5px; }
  ol.c-list li::before {
    counter-increment: number;
    /* li の数を一つずつ増加 */
    content: counter(number) ".";
    /* 数を表示 */
    color: #037243;
    /*	font-size: 12px;*/
    /*		border-radius: 50%;*/
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: end;
    left: -20px;
    top: 5px;
    width: 20px;
    height: 20px;
    /*	text-align: center;
    border: 1px solid #000000;*/ }

/* テーブルスタイル */
.c-table {
  margin: 30px 0;
  border-collapse: collapse;
  width: 100%;
  border-top: solid 1px #998675; }
  @media (max-width: 767px) {
    .c-table {
      width: 100%; } }

.c-table tr th {
  padding: 15px 18px;
  border-bottom: solid 1px #998675;
  color: #037243;
  text-align: left;
  vertical-align: top; }
  @media (max-width: 767px) {
    .c-table tr th {
      padding: 5px 0;
      display: block;
      border-bottom: none;
      padding-bottom: 0; } }

.c-table tr td {
  padding: 15px 18px;
  border-bottom: solid 1px #998675; }
  @media (max-width: 767px) {
    .c-table tr td {
      padding: 5px 0;
      display: block; } }

/*
スライダー 左右ボタンあり
*/
.c-slider01 img {
  object-fit: cover; }
.c-slider01 .slick-arrow {
  display: block;
  width: 49px;
  height: 48px;
  background: #037243;
  border: 2px solid #fff;
  /*transform: translateY(-110%);*/
  border-radius: 50%;
  position: absolute;
  top: 50%;
  z-index: 100; }
  @media (max-width: 767px) {
    .c-slider01 .slick-arrow {
      width: 28px;
      height: 28px;
      top: 50%; } }
  .c-slider01 .slick-arrow:hover, .c-slider01 .slick-arrow:focus {
    background: #037243; }
.c-slider01 .slick-prev {
  left: -24px; }
  @media (max-width: 767px) {
    .c-slider01 .slick-prev {
      left: -10px; } }
  .c-slider01 .slick-prev:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f053";
    opacity: 1; }
    @media (max-width: 767px) {
      .c-slider01 .slick-prev:before {
        font-size: 12px; } }
.c-slider01 .slick-next {
  right: -24px; }
  @media (max-width: 767px) {
    .c-slider01 .slick-next {
      right: -10px; } }
  .c-slider01 .slick-next:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f054";
    opacity: 1; }
    @media (max-width: 767px) {
      .c-slider01 .slick-next:before {
        font-size: 12px; } }

/*
カルーセル
*/
.c-img-carousel li {
  padding-right: 20px;
  margin-bottom: 0; }
.c-img-carousel img {
  /*	max-width: 315px;
  @media (max-width: $screen-xs-max) {
  	max-width: 170px;
  }*/ }

/* アコーディオン */
.c-accordion {
  margin-bottom: 40px; }

.c-accordion-ttl {
  font-weight: 700;
  font-size: 1.25rem;
  text-align: center;
  padding: 14px 60px 14px 20px;
  color: #fff;
  background: #037243;
  position: relative;
  margin: 0; }
  @media (max-width: 767px) {
    .c-accordion-ttl {
      padding-right: 50px;
      padding: 8px 50px 8px 14px;
      font-size: 1.142857143rem; } }
  .c-accordion-ttl:hover {
    cursor: pointer; }
  .c-accordion-ttl:after {
    font-family: "Font Awesome 5 Free";
    content: "\f078";
    font-weight: 900;
    display: block;
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    transition: 0.2s; }
    @media (max-width: 767px) {
      .c-accordion-ttl:after {
        right: 20px; } }
  .c-accordion-ttl.active:after {
    transform: rotate(180deg) translateY(50%); }

.c-accordion-box {
  display: none;
  padding: 50px;
  background: #F2E9DF; }
  @media (max-width: 767px) {
    .c-accordion-box {
      padding: 15px; } }

/* page 個別ページタイトル
   ========================================================================== */
.l-main {
  background: url("../img/common/img-header_left.png") no-repeat left calc(50% - 580px) top 60px, url("../img/common/img-header_right.png") no-repeat right calc(50% - 540px) top 80px; }
  @media (max-width: 1080px) {
    .l-main {
      background: url("../img/common/img-header_left.png") no-repeat left -176px top 60px, url("../img/common/img-header_right.png") no-repeat right -25px top 80px; } }
  @media (max-width: 767px) {
    .l-main {
      background: url("../img/common/img-header_left.png") no-repeat left -46px top 20px, url("../img/common/img-header_right.png") no-repeat right 12px top 20px;
      background-size: 152px 151px, 90px 63px; } }

.l-page-head {
  position: relative;
  color: #037243; }

.l-page-head__title {
  font-weight: 900;
  font-size: 2.5rem;
  line-height: 1.5;
  /*margin-bottom: 2.5rem;*/ }
  @media (max-width: 767px) {
    .l-page-head__title {
      font-size: 1.714285714rem; } }

.l-page-head__inner {
  width: calc(100% - 30px);
  /*min-height: 120px;*/
  max-width: 1080px;
  margin: 0 auto 70px;
  /*	display: flex;
  justify-content: flex-start;
  align-items: flex-start;*/ }
  @media (max-width: 767px) {
    .l-page-head__inner {
      /*min-height: 50px;*/
      margin: 0 auto 18px; } }

/* footer
   ========================================================================== */
.l-footer {
  position: relative; }

/*// -----------------------------------------------------------------
// Component
// -----------------------------------------------------------------*/
/* container
   ========================================================================== */
.c-container {
  margin: 0 auto;
  max-width: 1080px;
  position: relative; }
  @media (max-width: 1080px) {
    .c-container {
      width: calc(100% - 30px); } }

/* コンテンツ幅を保って横100% */
.c-fullwidth {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding: 0px calc(50vw - 50%); }
  @media (max-width: 767px) {
    .c-fullwidth {
      padding: 0px calc(50vw - 50%); } }

/* スライダー用横100％ */
.c-fullwidth__slider {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw); }

/* 濃い緑の背景 */
.c-bg01 {
  background: #037243;
  color: #ffffff; }

/* 白の背景 */
.c-bg02 {
  background: #ffffff; }

/* header
   ========================================================================== */
.c-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin: 0 auto;
  position: relative;
  min-height: 95px; }
  @media (max-width: 991px) {
    .c-header {
      min-height: 52px;
      align-items: center; } }

@media (max-width: 991px) {
  .c-header__ttl {
    position: relative;
    z-index: 100; } }

.c-header__logo {
  line-height: 1;
  padding: 18px 0;
  margin: 0;
  font-size: 1rem; }
  .c-header__logo img {
    width: 190px; }
  @media (max-width: 991px) {
    .c-header__logo {
      padding: 6px 0; } }

.c-header__right--col {
  font-size: 1.0625rem;
  font-weight: 700;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px; }
  @media (max-width: 991px) {
    .c-header__right--col {
      display: none; } }
  .c-header__right--col .c-header__global-nav ul {
    display: flex; }
    .c-header__right--col .c-header__global-nav ul li {
      margin-left: 30px; }
      .c-header__right--col .c-header__global-nav ul li a {
        padding-bottom: 3px;
        color: #007544; }
      .c-header__right--col .c-header__global-nav ul li a:hover, .c-header__right--col .c-header__global-nav ul li .__current {
        border-bottom: 2px solid #037243;
        color: #037243;
        transition: none; }
  .c-header__right--col .c-header__recruit--btn {
    margin: 0 0 0 28px; }
    .c-header__right--col .c-header__recruit--btn a {
      text-decoration: none;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 10px;
      color: #007544;
      background: #ffffff;
      line-height: 1;
      text-align: center;
      padding: 10px 16px 10px 20px;
      position: relative; }
      .c-header__right--col .c-header__recruit--btn a:after {
        font-family: "Font Awesome 5 Free";
        content: "\f35d";
        font-weight: 900;
        margin-left: 10px; }
      .c-header__right--col .c-header__recruit--btn a:hover {
        opacity: 0.8; }
      .c-header__right--col .c-header__recruit--btn a:hover:after {
        transition: 0.2s; }

/* SPナビ */
.c-header__nav--sp {
  margin-right: -15px;
  display: none;
  color: #037243;
  padding: 10px 3px 18px 5px;
  height: 70px;
  width: 70px; }
  @media (max-width: 991px) {
    .c-header__nav--sp {
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      z-index: 100; } }
  .c-header__nav--sp a {
    display: block; }

.c-header__nav--sp__menu {
  display: table-cell; }
  .c-header__nav--sp__menu .hamburger {
    padding: 5px;
    display: block;
    width: 100%;
    height: 100%; }
    .c-header__nav--sp__menu .hamburger:hover {
      opacity: 1; }
    .c-header__nav--sp__menu .hamburger .hamburger-inner, .c-header__nav--sp__menu .hamburger .hamburger-inner::after, .c-header__nav--sp__menu .hamburger .hamburger-inner::before {
      background-color: #037243;
      height: 2px; }
    .c-header__nav--sp__menu .hamburger .hamburger-label {
      font-size: 9px;
      display: block;
      width: 100%;
      bottom: -20px;
      position: absolute;
      text-align: center;
      font-weight: 700; }
      .c-header__nav--sp__menu .hamburger .hamburger-label:before {
        content: "メニュー"; }
    .c-header__nav--sp__menu .hamburger.is-active .hamburger-label:before {
      content: "閉じる"; }

.c-header-sp__nav {
  z-index: 10;
  position: absolute;
  top: 0;
  left: -15px;
  width: calc(100% + 30px);
  height: 100vh;
  display: none;
  background: url("../img/common/bg-sp-menu.png") no-repeat left bottom #F2E9DF;
  background-size: cover;
  padding: 20vh 0 30px;
  overflow: hidden; }

.c-header-sp__nav--list {
  padding: 0;
  list-style: none; }

.c-header-sp__nav--item {
  width: 100%;
  padding: 0 20px; }
  .c-header-sp__nav--item a {
    text-align: center;
    display: block;
    font-size: 1.121428571rem;
    padding: 16px 20px;
    font-weight: 700;
    color: #007544; }

/* スマホ採用サイトリンクボタン */
.c-header__recruit--btn-sp {
  width: 130px;
  margin: 22px auto; }
  .c-header__recruit--btn-sp a {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #ffffff;
    background: #007544;
    line-height: 1;
    text-align: center;
    padding: 10px 16px 10px 20px;
    position: relative; }
    .c-header__recruit--btn-sp a:after {
      font-family: "Font Awesome 5 Free";
      content: "\f35d";
      font-weight: 900;
      margin-left: 10px; }
    .c-header__recruit--btn-sp a:hover {
      opacity: 0.8; }
    .c-header__recruit--btn-sp a:hover:after {
      transition: 0.2s; }

/* footer
   ========================================================================== */
/* フッターエリア */
.c-footer {
  padding-top: 30px;
  font-size: 0.875rem;
  padding-bottom: 12px;
  background: #ffffff;
  color: #007544;
  font-weight: 600; }
  @media (max-width: 767px) {
    .c-footer {
      flex-direction: column;
      padding-bottom: 30px; } }
  .c-footer .c-footer__inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start; }
    @media (max-width: 991px) {
      .c-footer .c-footer__inner {
        display: block;
        margin: 0 auto; } }

.c-footer__information {
  margin-right: 22px; }
  @media (max-width: 991px) {
    .c-footer__information {
      display: table;
      margin: 0 0 23px; } }

.c-footer__logo {
  margin: 0 0 22px; }
  .c-footer__logo img {
    max-width: 340px; }
    @media (max-width: 767px) {
      .c-footer__logo img {
        max-width: 200px;
        width: 60%; } }

.c-footer__navigation {
  display: flex;
  justify-content: space-between;
  flex-direction: column; }
  @media (max-width: 767px) {
    .c-footer__navigation {
      width: auto;
      border-top: 1px solid #998675;
      padding-top: 23px; } }
  .c-footer__navigation .c-footer__global-nav {
    display: flex; }
    @media (max-width: 767px) {
      .c-footer__navigation .c-footer__global-nav {
        display: block; } }
  .c-footer__navigation .c-footer__global-nav ul:not(:last-child) {
    margin-right: 32px; }
  .c-footer__navigation .c-footer__global-nav ul li {
    margin-bottom: 12px; }
    .c-footer__navigation .c-footer__global-nav ul li a {
      color: #007544;
      font-size: 1.0625rem; }
    .c-footer__navigation .c-footer__global-nav ul li a:hover {
      text-decoration: underline; }

.c-footer__recruit--btn {
  width: 130px; }
  .c-footer__recruit--btn a {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #ffffff;
    background: #007544;
    line-height: 1;
    text-align: center;
    padding: 10px 16px 10px 20px;
    position: relative; }
    .c-footer__recruit--btn a:after {
      font-family: "Font Awesome 5 Free";
      content: "\f35d";
      font-weight: 900;
      margin-left: 10px; }
    .c-footer__recruit--btn a:hover {
      opacity: 0.8; }
    .c-footer__recruit--btn a:hover:after {
      transition: 0.2s; }

.c-footer__copyright {
  text-align: left;
  margin-top: 22px; }
  @media (max-width: 991px) {
    .c-footer__copyright {
      clear: both;
      text-align: center; } }

/* forms
   ========================================================================== */
/* pagetop
   ========================================================================== */
/* TOPへ戻るボタン */
.c-pagetop {
  position: fixed;
  bottom: 2%;
  right: 5%;
  z-index: 1000;
  width: 80px;
  height: auto; }
  @media (max-width: 767px) {
    .c-pagetop {
      bottom: 15px;
      width: 60px;
      height: auto; } }
  .c-pagetop:hover {
    opacity: 0.8; }

/* breadcrumb
   ========================================================================== */
.c-breadcrumb {
  padding: 50px 0 70px; }
  @media (max-width: 767px) {
    .c-breadcrumb {
      padding: 20px 0 18px;
      font-size: 0.857142857rem; } }

.c-breadcrumb__box {
  max-width: 1080px;
  margin: 0 auto;
  width: calc(100% - 30px);
  color: #775E47; }
  .c-breadcrumb__box a {
    color: #037243;
    text-decoration: underline; }

.c-breadcrumb__partition:before {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  font-weight: 700;
  opacity: 0.5;
  color: #775E47;
  font-size: 10px;
  display: inline-block;
  margin: 0 10px;
  transform: translateY(-5%); }

/* entries
   ========================================================================== */
/* お知らせカテゴリーリンク */
.c-entries__nav {
  margin: 0 0 60px; }

.c-entries__nav .c-entries__nav--list {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .c-entries__nav .c-entries__nav--list {
      flex-wrap: wrap; } }

.c-entries__nav .c-entries__nav--list-item {
  width: 17.892%; }
  @media (max-width: 767px) {
    .c-entries__nav .c-entries__nav--list-item {
      width: 23.25%; } }
  .c-entries__nav .c-entries__nav--list-item a {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px 10px;
    border: 2px solid #775E47;
    border-radius: 10px;
    font-size: 1.125rem;
    font-weight: 700;
    color: #775E47; }
    @media (max-width: 767px) {
      .c-entries__nav .c-entries__nav--list-item a {
        font-size: 1rem;
        padding: 7px 5px; } }
    .c-entries__nav .c-entries__nav--list-item a:hover {
      background: #775E47;
      color: #ffffff; }
  .c-entries__nav .c-entries__nav--list-item.all-category {
    margin-bottom: 12px; }
    @media (max-width: 767px) {
      .c-entries__nav .c-entries__nav--list-item.all-category {
        width: 100%;
        flex-shrink: 0; } }
  .c-entries__nav .c-entries__nav--list-item.current-category a, .c-entries__nav .c-entries__nav--list-item.current-cat a {
    background: #775E47;
    color: #ffffff; }

/* お知らせアーカイブ */
.c-entries__archive--list {
  margin-bottom: 50px;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .c-entries__archive--list {
      margin-bottom: 30px; } }

.c-entries__archive--list-item {
  border-left: 3px solid #775E47;
  padding-left: 11px;
  margin-right: 36px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2; }
  .c-entries__archive--list-item a {
    color: #775E47; }
    .c-entries__archive--list-item a:hover {
      text-decoration: underline; }

/* おしらせ記事一覧 */
.c-entries__list {
  list-style: none;
  padding: 0;
  margin: 0 0 0 0; }

.c-entries__item {
  margin-bottom: 30px; }
  @media (max-width: 767px) {
    .c-entries__item {
      border-bottom: 1px solid #998675;
      padding-bottom: 30px; } }

.c-entries__item--link {
  text-decoration: none;
  display: grid;
  grid-template-columns: [left] 35.185% [right] 59.259% [end];
  grid-template-rows: [top] max-content [center] 1fr [bottom];
  column-gap: 5.556%;
  row-gap: 20px; }
  @media (max-width: 767px) {
    .c-entries__item--link {
      row-gap: 0px; } }
  .c-entries__item--link:hover {
    opacity: 0.7; }
    .c-entries__item--link:hover img {
      opacity: 1; }

.c-entries__item--figure {
  grid-column-start: left;
  grid-row-start: top;
  grid-row-end: bottom; }
  @media (max-width: 767px) {
    .c-entries__item--figure {
      grid-row-end: center;
      margin-bottom: 0; } }
  .c-entries__item--figure img {
    aspect-ratio: 3 / 2;
    object-fit: cover; }

.c-entries__item--summary {
  grid-column-start: right;
  grid-row-start: top;
  grid-row-end: center; }

.c-entries__item--excerpt {
  grid-column-start: right;
  grid-row-start: center;
  grid-row-end: bottom; }
  @media (max-width: 767px) {
    .c-entries__item--excerpt {
      grid-column-start: left;
      grid-column-end: end;
      grid-row-start: bottom; } }

.c-entries__item--excerpt-more {
  text-align: right; }

/* 一覧　記事カテゴリー・投稿日 */
.c-entries__item--meta {
  display: flex;
  align-items: center;
  margin: 0 0 18px; }
  @media (max-width: 767px) {
    .c-entries__item--meta {
      margin: 0 0 2px;
      flex-wrap: wrap; } }

.c-entries__cate--list {
  margin-right: 10px;
  display: flex;
  flex-wrap: wrap; }

.c-entries__cate--list-item {
  background: #037243;
  color: #ffffff;
  font-size: 0.9375rem;
  padding: 2px 12px;
  margin: 0;
  border-radius: 5px; }

.c-entries__date {
  font-size: 0.9375rem;
  margin: 0 20px 0 0;
  color: #037243; }

/* 一覧タイトル */
.c-entries__item--ttl {
  font-size: 1.375rem;
  font-weight: 700;
  color: #037243; }
  @media (max-width: 767px) {
    .c-entries__item--ttl {
      font-size: 1.142857143rem; } }

/* entry
   ========================================================================== */
/* editor
   ========================================================================== */
/* Markup */
.c-editor h2 {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  margin: 1em 0;
  color: #037243;
  border-left: 4px solid #037243;
  padding-left: 16px; }
  @media (max-width: 767px) {
    .c-editor h2 {
      font-size: 1.375em; } }

.c-editor h3 {
  font-size: 1.375em;
  position: relative;
  font-weight: 700;
  margin: 1em 0;
  color: #037243; }
  @media (max-width: 767px) {
    .c-editor h3 {
      font-size: 1.25em; } }

.c-editor h4 {
  font-size: 1.125em;
  font-weight: 700;
  margin: 1em 0;
  color: #775E47; }
  @media (max-width: 767px) {
    .c-editor h4 {
      font-size: 1.125em; } }

.c-editor h5 {
  font-size: 1em;
  margin: 1em 0;
  font-weight: 700; }

.c-editor h6 {
  font-size: 0.85rem;
  margin: 1em 0;
  font-weight: 700; }

.c-editor p {
  margin: 0 0 1em; }

.c-editor a {
  color: #037243;
  text-decoration: underline; }
  .c-editor a:hover {
    text-decoration: none; }

/* 外部リンク */
.c-editor a[target="_blank"]:after {
  font-family: "Font Awesome 5 Free";
  content: "\f35d";
  font-weight: 900;
  margin-left: 8px;
  margin-right: 8px;
  margin-top: 0;
  background: none;
  transform: translateY(-80%); }

/* 外部リンク */
.c-editor a[href$=".pdf"]:after {
  font-family: "Font Awesome 5 Free";
  content: "\f1c1";
  font-weight: normal;
  margin-left: 8px;
  margin-right: 8px;
  margin-top: 0;
  background: none;
  font-size: 1.125rem;
  transform: translateY(-50%); }
  @media (max-width: 767px) {
    .c-editor a[href$=".pdf"]:after {
      right: 24px; } }

.c-editor strong {
  font-weight: 700; }

.c-editor b {
  font-weight: 700; }

.c-editor em {
  font-weight: 700; }

.c-editor hr {
  border: none;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #775E47;
  margin: 40px 0; }

.c-editor ul {
  list-style: none;
  margin: 1em 0 1em;
  padding: 0; }
  .c-editor ul li {
    margin-bottom: .5em;
    margin-left: 20px;
    text-indent: -15px; }
    .c-editor ul li:before {
      content: "";
      display: inline-block;
      width: 5px;
      height: 5px;
      background: #037243;
      border-radius: 50%;
      margin-right: 10px;
      transform: translateY(-50%); }
    .c-editor ul li:last-child {
      margin-bottom: 0; }

.c-editor ol {
  list-style: none;
  margin: 1em 0 1em;
  padding: 0;
  counter-reset: number; }

.c-editor ol li {
  margin-left: 20px;
  margin-bottom: .5em;
  position: relative;
  padding: 0 0 0 5px; }
  .c-editor ol li::before {
    counter-increment: number;
    /* li の数を一つずつ増加 */
    content: counter(number) ".";
    /* 数を表示 */
    color: #037243;
    /*	font-size: 12px;*/
    /*		border-radius: 50%;*/
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: end;
    left: -20px;
    top: 5px;
    width: 20px;
    height: 20px;
    /*	text-align: center;
    border: 1px solid #000000;*/ }

.c-editor table {
  margin: 30px 0;
  border-collapse: collapse;
  width: 100%;
  border-top: solid 1px #998675; }
  @media (max-width: 767px) {
    .c-editor table {
      width: 100%; } }

.c-editor table tr th {
  padding: 15px 18px;
  border-bottom: solid 1px #998675;
  color: #037243;
  text-align: left;
  vertical-align: top; }
  @media (max-width: 767px) {
    .c-editor table tr th {
      padding: 10px 0;
      display: block;
      border-bottom: none;
      padding-bottom: 0; } }

.c-editor table tr td {
  padding: 15px 18px;
  border-bottom: solid 1px #998675; }
  @media (max-width: 767px) {
    .c-editor table tr td {
      padding: 10px 0;
      display: block; } }

.c-editor blockquote {
  border-radius: 10px;
  background: #fff;
  opacity: 0.8;
  padding: 30px 100px;
  position: relative;
  z-index: 1;
  margin: 2em 0; }
  @media (max-width: 767px) {
    .c-editor blockquote {
      padding: 49px 15px; } }

.c-editor blockquote:before {
  font-size: 2.5em;
  line-height: 1;
  color: #775e47;
  position: absolute;
  z-index: -1;
  font-family: "Font Awesome 5 Free";
  content: "\f10d";
  font-weight: 900;
  left: 30px;
  top: 30px; }
  @media (max-width: 767px) {
    .c-editor blockquote:before {
      font-size: 1.5em;
      left: 15px;
      top: 15px; } }

.c-editor blockquote:after {
  font-size: 2.5em;
  line-height: 1;
  color: #775e47;
  position: absolute;
  z-index: -1;
  font-family: FontAwesome;
  font-family: "Font Awesome 5 Free";
  content: "\f10e";
  font-weight: 900;
  right: 30px;
  bottom: 30px; }
  @media (max-width: 767px) {
    .c-editor blockquote:after {
      font-size: 1.5em;
      right: 15px;
      bottom: 15px; } }

.c-editor blockquote p {
  display: inline; }

.c-editor img {
  max-width: 100%;
  height: auto;
  padding: 0;
  vertical-align: bottom; }

.c-editor img.aligncenter {
  display: block;
  margin: 0 auto; }

.c-editor img.alignright {
  display: inline;
  float: right; }

.c-editor img.alignleft {
  display: inline;
  float: left; }

.c-editor a:hover img {
  display: block; }

.c-editor pre {
  white-space: pre-wrap;
  border-radius: 10px;
  width: 100%;
  background: #333333;
  padding: 20px;
  color: #ffffff;
  font-size: 0.9375rem; }

/* コンポーネント */
.wpac-alert {
  display: block;
  border: 1px solid #FDF5E7;
  background: #FDF5E7;
  border-radius: 3px;
  color: #FF0000;
  padding: .9rem;
  font-weight: bold; }

.wpac-columns {
  margin: 10px 0; }

.wpac-columns__row {
  display: flex;
  flex-wrap: wrap; }

.wpac-columns__row {
  display: flex;
  flex-wrap: wrap; }

.wpac-columns__col {
  padding-right: .9rem;
  padding-left: .9rem;
  margin-bottom: 1.8rem; }

.wpac-columns__col--1-1 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 50%; }

@media (max-width: 767px) {
  .wpac-columns__col--1-1 {
    width: 100%; } }
.wpac-columns__col--1-2 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 50%; }

.wpac-columns__col--lg-1-3 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 33.3333%; }

@media (min-width: 768px) and (max-width: 991px) {
  .wpac-columns__col--1-1.wpac-columns__col--lg-1-3 {
    width: 100%; } }
@media (max-width: 767px) {
  .wpac-columns__col--lg-1-3 {
    width: 100%; } }
.wpac-columns__col--1-3 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 33.3333%; }

.wpac-columns__col--lg-1-4 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 25%; }

@media (min-width: 768px) and (max-width: 991px) {
  .wpac-columns__col--1-1.wpac-columns__col--lg-1-4 {
    width: 100%; } }
@media (max-width: 767px) {
  .wpac-columns__col--1-1.wpac-columns__col--lg-1-4 {
    width: 100%; } }
.wpac-columns__col--1-4 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 25%; }

@media (max-width: 767px) {
  .wpac-columns__col--1-2.wpac-columns__col--lg-1-4 {
    width: 50%; } }
.wpac-highlighter {
  background: linear-gradient(transparent 60%, #ff6 60%); }

.wpac-read {
  border: 4px solid #ffffff;
  border-radius: 10px;
  padding: 45px 40px; }
  @media (max-width: 767px) {
    .wpac-read {
      padding: 30px 16px; } }

/* heading
   ========================================================================== */
.c-ttl01 {
  font-size: 2.5rem;
  /* 40px */
  margin: 0 0 2rem;
  line-height: 1.35;
  font-weight: 900;
  color: #037243;
  text-align: center; }
  @media (max-width: 767px) {
    .c-ttl01 {
      font-size: 2.285714285rem;
      /* 32px */ } }
  .c-ttl01 span {
    font-size: 1.125rem;
    display: block;
    line-height: 1; }
    @media (max-width: 767px) {
      .c-ttl01 span {
        font-size: 1.142857143rem; } }
  .c-ttl01 .__english-txt {
    font-family: 'Montserrat', sans-serif;
    font-weight: 900; }

/* 背景色濃い緑の時は白文字 */
.c-ttl01.__white {
  color: #ffffff; }

.c-ttl02 {
  font-size: 1.5rem;
  color: #037243;
  margin: 0 0 2rem; }
  .c-ttl02.bb {
    padding-bottom: 14px;
    border-bottom: 1px solid #037243; }

.c-ttl03 {
  font-size: 1.25rem;
  color: #037243;
  margin: 1.5rem 0;
  font-weight: 700; }
  .c-ttl03.bb {
    padding-bottom: 14px;
    border-bottom: 1px solid #037243; }

/* txt
   ========================================================================== */
/* btn
   ========================================================================== */
.c-btn01 {
  margin: 0 auto;
  display: table;
  min-width: 60%;
  /* 戻るボタン用(矢印逆)
  */ }
  @media (max-width: 767px) {
    .c-btn01 {
      min-width: inherit;
      width: auto; } }
  .c-btn01 a {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 40px;
    background: #775E47;
    color: #ffffff;
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    padding: 29px 96px 29px 66px;
    position: relative; }
    @media (max-width: 991px) {
      .c-btn01 a {
        text-decoration: none;
        border-radius: 30px;
        font-size: 1.125rem;
        font-weight: 700;
        padding: 21px 56px 21px 40px;
        min-width: 280px; } }
    .c-btn01 a:after {
      font-family: "Font Awesome 5 Free";
      content: "\f054";
      display: block;
      color: #ffffff;
      margin-left: 11px;
      position: absolute;
      right: 36px;
      top: 50%;
      transform: translateY(-46%); }
      @media (max-width: 991px) {
        .c-btn01 a:after {
          right: 26px; } }
    .c-btn01 a:hover {
      opacity: 0.7; }
  .c-btn01.__back-btn a {
    padding: 29px 66px 29px 66px; }
    @media (max-width: 767px) {
      .c-btn01.__back-btn a {
        padding: 21px 40px 21px 40px; } }
    .c-btn01.__back-btn a:before {
      font-family: "Font Awesome 5 Free";
      content: "\f053";
      display: block;
      color: #ffffff;
      margin-right: 11px;
      position: absolute;
      left: 36px;
      top: 50%;
      transform: translateY(-46%); }
      @media (max-width: 767px) {
        .c-btn01.__back-btn a:before {
          left: 26px; } }
    .c-btn01.__back-btn a:after {
      display: none; }

/* 外部リンク */
.c-btn01 a[target="_blank"]:after {
  font-family: "Font Awesome 5 Free";
  content: "\f35d";
  font-weight: 900;
  margin-left: 8px;
  margin-right: 8px;
  margin-top: 0;
  background: none;
  transform: translateY(-50%); }

/* 外部リンク */
/*.c-btn01 a[href$=".pdf"] {
	padding-right: 50px;
		&:after {
			content: "";
			background: url("../img/common/icn-pdf.png") no-repeat left top;
			background-size: contain;
			width: 21px;
			height: 24px;
			display: block;
			position: absolute;
			right: 12px;
			top: 50%;
			transform: translateY(-50%);
			@media (max-width: $screen-xs-max) {
				right: 24px;
			}
		}
}*/
/* ボタン右寄せ */
.c-btn01.tr {
  margin-right: 0; }
  @media (max-width: 767px) {
    .c-btn01.tr {
      margin-right: auto; } }

/* ボタン左寄せ */
.c-btn01.tl {
  margin-left: 0; }
  @media (max-width: 767px) {
    .c-btn01.tl {
      margin-left: auto; } }

/* 電話リンク */
/*.c-tel-btn {
	display: table;
	@media (max-width: $screen-xs-max) {
		margin: 0 auto;
		display: block;
	}
	a {
		text-decoration: none;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		border-radius: 27px;
		background: $primary-color;
		font-size: 2.25rem;
		font-weight: 700;
		text-align: center;
		padding: 8px 26px 8px 0px;
		position: relative;
		background: none;
		pointer-events: none;
		@media (max-width: $screen-sm-max) {
			background: $primary-color;
			pointer-events: auto;
			color: #ffffff;
			padding: 4px 26px 4px 26px;
			font-size: 1.85714rem;
			justify-content: center;
		}
		&:hover {
			opacity: 1;
			cursor: default;
			@media (max-width: $screen-xs-max) {
				opacity: 0.7;
				cursor: pointer;
			}
		}
		&:before {
			content: "";
			display: block;
			color: #ffffff;
			margin-right: 12px;
			background: url("../img/common/icn-contact-tel.png") no-repeat center center $primary-color;
			background-size: 28px 28px;
			width: 48px;
			height: 48px;
			border-radius: 50%;
			@media (max-width: $screen-sm-max) {
				background: url("../img/common/icn-contact-tel.png") no-repeat center center;
				background-size: cover;
				width: 22px;
				height: 22px;
			}
		}
		&:after {
			content: "";
			display: none;
		}
	}
}*/
/* LINEリンク */
/*.c-line-btn {
	display: none;
	@media (max-width: $screen-xs-max) {
		margin: 0 auto;
		display: block;
	}
	a {
		text-decoration: none;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		color: #ffffff;
		border-radius: 27px;
		background: #06C755;
		font-size: 2.25rem;
		font-weight: 700;
		text-align: center;
		padding: 8px 26px 8px 0px;
		position: relative;
		@media (max-width: $screen-sm-max) {
			padding: 6px 26px 6px 26px;
			font-size: 1.285714286rem;
			justify-content: center;
		}
		&:after {
			content: "▶";
			color: #ffffff;
			font-size: 1.142857143rem;
			margin-left: 10px;
		}
	}
}*/
/* 小さめのボタン */
.c-btn02 {
  display: table;
  margin: 1.5rem 0; }
  .c-btn02 a {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
    background: #775E47;
    color: #ffffff;
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    padding: 21px 56px 21px 40px;
    position: relative;
    min-width: 280px; }
    .c-btn02 a:after {
      font-family: "Font Awesome 5 Free";
      content: "\f054";
      display: block;
      color: #ffffff;
      margin-left: 11px;
      position: absolute;
      right: 26px;
      top: 50%;
      transform: translateY(-46%); }
    .c-btn02 a:hover {
      opacity: 0.7; }

.c-btn01.__white a, .c-btn02.__white a {
  background: #ffffff;
  color: #037243; }
  .c-btn01.__white a:after, .c-btn02.__white a:after {
    color: #037243; }

/* block カラムレイアウト
   ========================================================================== */
/* 2カラム */
.c-col2-wrap {
  display: flex;
  /*justify-content: space-between;*/
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .c-col2-wrap {
      flex-direction: column; } }

.c-col2-item {
  flex-basis: 49%; }
  @media (max-width: 767px) {
    .c-col2-item {
      flex-basis: auto;
      margin-right: auto; } }
  .c-col2-item:not(:nth-child(2n)) {
    margin-right: 2%; }
    @media (max-width: 767px) {
      .c-col2-item:not(:nth-child(2n)) {
        margin-left: auto;
        margin-right: auto; } }

/* 3カラム */
.c-col3-wrap {
  display: flex;
  /*justify-content: space-between;*/
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .c-col3-wrap {
      flex-direction: column; } }

.c-col3-item {
  flex-basis: 30%;
  /*	*/ }
  @media (max-width: 767px) {
    .c-col3-item {
      flex-basis: auto;
      margin-left: auto;
      margin-right: auto; } }
  .c-col3-item:not(:nth-child(3n)) {
    margin-right: auto; }
    @media (max-width: 767px) {
      .c-col3-item:not(:nth-child(3n)) {
        margin-right: auto; } }

/* 4カラム */
.c-col4-wrap {
  display: flex;
  /*justify-content: space-between;*/
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .c-col4-wrap {
      flex-direction: column; } }

.c-col4-item {
  flex-basis: 23.5%; }
  @media (max-width: 767px) {
    .c-col4-item {
      flex-basis: auto;
      margin-left: auto;
      margin-right: auto; } }
  .c-col4-item:not(:nth-child(4n)) {
    margin-right: 2%; }
    @media (max-width: 767px) {
      .c-col4-item:not(:nth-child(4n)) {
        margin-right: auto; } }

/* cta
   ========================================================================== */
/* リクルートのみ */
.c-cta__main {
  padding: 80px 90px;
  background: url("../img/common/img-cta01-02.png") no-repeat right 50px top 80px #037243;
  border-radius: 30px;
  margin: 100px 0; }
  @media (max-width: 1080px) {
    .c-cta__main {
      margin-right: calc(50% - 50vw);
      margin-left: calc(50% - 50vw);
      padding: 40px 15px;
      background-image: none;
      border-radius: 0; } }

.c-cta__main--main-ttl {
  text-align: left; }
  @media (max-width: 1080px) {
    .c-cta__main--main-ttl {
      text-align: center; } }

.c-cta__main--box {
  max-width: 59.259%;
  margin: 0 0 50px; }
  @media (max-width: 1080px) {
    .c-cta__main--box {
      margin: 0 auto 40px;
      max-width: inherit;
      text-align: center; } }

.c-cta__main--box-img {
  display: none;
  text-align: center; }
  @media (max-width: 1080px) {
    .c-cta__main--box-img {
      margin-top: 40px;
      display: block;
      margin: 0 auto; } }

.c-cta__main--copy {
  font-weight: 700;
  font-size: 1.5rem;
  color: #F2E9DF; }

@media (max-width: 1080px) {
  .c-cta__main--copy-img {
    margin: 20px 0; } }

/* お問い合わせ＆リクルート */
.c-cta02 {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .c-cta02 {
      margin-right: calc(50% - 50vw);
      margin-left: calc(50% - 50vw);
      background: #037243;
      flex-direction: column; } }

.c-cta02-item {
  padding: 50px 30px;
  background: #037243;
  border-radius: 30px;
  margin: 100px 0;
  text-align: center;
  width: 48%; }
  @media (max-width: 767px) {
    .c-cta02-item {
      width: auto;
      margin: 0;
      border-radius: 0; }
      .c-cta02-item:last-child {
        border-top: 1px solid #F2E9DF; } }
  .c-cta02-item.recruit-box {
    background: url("../img/common/bg-cta02-recruit.png") no-repeat center top 20% #037243;
    background-size: contain; }

.c-cta02--main-ttl {
  font-size: 2rem; }
  .c-cta02--main-ttl .__english-txt {
    font-size: 1.125rem; }

.c-cta02--copy {
  font-weight: 700;
  font-size: 1.125rem;
  color: #F2E9DF; }

.c-cta02--box-btn {
  max-width: 90%; }

.c-cta02--box-btn a {
  font-size: 1.25rem;
  padding: 15px 66px 15px 46px; }

/* pagenavi
   ========================================================================== */
.c-pagenavi .wp-pagenavi {
  margin: 40px 0 100px;
  border: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative; }
  @media (max-width: 767px) {
    .c-pagenavi .wp-pagenavi {
      /*justify-content: space-around;*/ } }

.c-pagenavi .wp-pagenavi .pages {
  display: none; }

.c-pagenavi .previouspostslink, .c-pagenavi .nextpostslink {
  display: flex;
  /*	flex-wrap: wrap;*/
  justify-content: center;
  align-items: center;
  border: 2px solid #775E47;
  height: 38px;
  padding: 0 33px 3px;
  border-radius: 24px;
  margin: 0 10px 20px;
  color: #775E47;
  position: relative; }
  .c-pagenavi .previouspostslink:hover, .c-pagenavi .nextpostslink:hover {
    background: #775E47;
    color: #ffffff; }
  @media (max-width: 767px) {
    .c-pagenavi .previouspostslink, .c-pagenavi .nextpostslink {
      margin: 0 0 20px; } }
@media (max-width: 767px) {
  .c-pagenavi .previouspostslink {
    margin-right: 5px; } }
.c-pagenavi .previouspostslink:before {
  font-family: "Font Awesome 5 Free";
  content: "\f053";
  font-weight: bold;
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-47%);
  font-size: 0.75rem; }
@media (max-width: 767px) {
  .c-pagenavi .nextpostslink {
    margin-left: 5px; } }
.c-pagenavi .nextpostslink::after {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  font-weight: bold;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-47%);
  font-size: 0.75rem; }
.c-pagenavi .page, .c-pagenavi .current {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 10px 20px;
  text-decoration: none;
  color: #775E47;
  width: 38px;
  height: 38px;
  padding-bottom: 3px;
  border-radius: 50%;
  border: 2px solid #775E47; }
  @media (max-width: 767px) {
    .c-pagenavi .page, .c-pagenavi .current {
      margin: 0 5px 20px; } }
.c-pagenavi .page:hover {
  background: #775E47;
  border: 2px solid #775E47;
  color: #ffffff; }
.c-pagenavi .extend {
  display: none; }
.c-pagenavi .current {
  border: 2px solid #775E47;
  background: #775E47;
  color: #ffffff; }
.c-pagenavi .first {
  display: none; }
.c-pagenavi .last {
  display: none; }

/**
 * 詳細ページング
 */
.c-backnumber {
  margin-bottom: 46px; }
  @media (max-width: 767px) {
    .c-backnumber {
      margin-bottom: 10px; } }

.c-backnumber__inner {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .c-backnumber__inner {
      flex-direction: column; } }

.c-backnumber__block {
  margin-bottom: 20px;
  width: 47.2222%;
  /*	&.__index {
  	margin: 0 auto;
  }*/ }
  @media (max-width: 767px) {
    .c-backnumber__block {
      width: auto; } }
  .c-backnumber__block.__next {
    margin-left: auto; }

.c-backnumber__link {
  display: flex;
  justify-content: space-between; }
  .c-backnumber__link:hover {
    opacity: 0.7; }
    .c-backnumber__link:hover img {
      opacity: 1; }

.c-backnumber__img {
  width: 45.098%; }

.c-backnumber__data {
  width: 50.980%; }
  .c-backnumber__data .c-entries__item--meta {
    margin-bottom: 8px; }
  .c-backnumber__data .c-entries__cate--list-item {
    padding: 0 6px; }

.c-backnumber__ttl {
  font-size: 1rem;
  color: #037243; }

/*// -----------------------------------------------------------------
// Project
// -----------------------------------------------------------------*/
/* TOPページ
   ========================================================================== */
/* クラスはWPで追加する */
body.home {
  background: url("../img/common/bg-header.png") no-repeat center top; }
  @media (max-width: 767px) {
    body.home {
      background: url("../img/common/bg-header_sp.png") no-repeat center top;
      background-size: 100% auto; } }

/* メインビジュアル */
.p-toppage__mainvisual {
  position: relative;
  padding-top: 65px; }
  @media (max-width: 767px) {
    .p-toppage__mainvisual {
      min-height: inherit;
      margin-top: 0;
      padding-top: 25px; } }

.p-toppage__mainvisual--slide-box {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  min-height: 711px; }
  @media (max-width: 991px) {
    .p-toppage__mainvisual--slide-box {
      min-height: 570px; } }
  @media (max-width: 767px) {
    .p-toppage__mainvisual--slide-box {
      min-height: inherit; } }

.p-toppage__mainvisual--slide-wrap {
  position: absolute;
  top: 0;
  left: 42%;
  width: 88%; }
  @media (max-width: 767px) {
    .p-toppage__mainvisual--slide-wrap {
      position: inherit;
      top: inherit;
      left: inherit;
      width: 120%;
      margin: 0 -10%; } }

.p-toppage__mainvisual--slide img {
  /*width: 100%;
  height: auto;
  object-fit: cover;*/ }
  @media (max-width: 767px) {
    .p-toppage__mainvisual--slide img {
      /*		min-height: inherit;*/ } }

.p-toppage__mainvisual .slide-txt-lead {
  font-size: 1.375rem;
  padding-top: 20px;
  font-weight: 700;
  width: 37.039%; }
  @media (max-width: 767px) {
    .p-toppage__mainvisual .slide-txt-lead {
      font-size: 1.285714286rem;
      width: auto;
      text-align: center;
      margin: 0 auto 20px; } }

.p-toppage__mainvisual .slide-txt-ttl {
  width: 37.039%; }
  @media (max-width: 767px) {
    .p-toppage__mainvisual .slide-txt-ttl {
      margin: 0 auto 25px;
      width: 57.3333%; } }

.p-toppage__mainvisual .slide-txt-btn01 {
  width: 37.039%; }
  @media (max-width: 767px) {
    .p-toppage__mainvisual .slide-txt-btn01 {
      width: 70%;
      margin: 0 auto 30px; } }

/* モリチップのしごと */
.p-toppage__what {
  margin-top: 110px;
  padding: 75px 0 51px;
  position: relative; }
  @media (max-width: 991px) {
    .p-toppage__what {
      margin-top: 160px; } }
  @media (max-width: 767px) {
    .p-toppage__what {
      padding: 30px 0 47px;
      margin-top: 80px; } }
  .p-toppage__what:before {
    content: "";
    display: block;
    position: absolute;
    background: url("../img/index/bg-what.png") no-repeat left top;
    width: 791px;
    height: 190px;
    top: -185px;
    left: -10%; }
    @media (max-width: 991px) {
      .p-toppage__what:before {
        background-size: 632px 152px;
        width: 632px;
        height: 152px;
        top: -147px; } }
    @media (max-width: 767px) {
      .p-toppage__what:before {
        background-size: 296px 70px;
        width: 296px;
        height: 70px;
        top: -65px;
        left: -8%; } }

.p-toppage__what--main-ttl {
  text-align: left; }
  @media (max-width: 767px) {
    .p-toppage__what--main-ttl {
      text-align: center; } }
  .p-toppage__what--main-ttl:before {
    content: "";
    display: block;
    background: url("../img/index/icn-what-ttl.png") no-repeat left top;
    width: 65px;
    height: 68px;
    float: left;
    margin-right: 19px; }
    @media (max-width: 767px) {
      .p-toppage__what--main-ttl:before {
        background-size: 48px 49px;
        width: 48px;
        height: 49px;
        float: none;
        margin: 0 auto 5px; } }

.p-toppage__what--box {
  display: flex;
  justify-content: space-between;
  margin: 52px 0 0; }
  @media (max-width: 767px) {
    .p-toppage__what--box {
      display: block; } }

.p-toppage__what--box .about__main-img {
  width: 48.15%; }
  @media (max-width: 767px) {
    .p-toppage__what--box .about__main-img {
      width: 75%;
      margin: 0 auto 49px; } }

.p-toppage__what--box .about__main-txt {
  width: 43.083%; }
  @media (max-width: 767px) {
    .p-toppage__what--box .about__main-txt {
      width: auto; } }

.p-toppage__what--box-ttl {
  margin-bottom: 50px; }
  @media (max-width: 767px) {
    .p-toppage__what--box-ttl {
      margin-bottom: 34px; } }

.p-toppage__what--box-btn {
  margin-top: 70px; }
  @media (max-width: 767px) {
    .p-toppage__what--box-btn {
      margin: 50px auto 0; } }

/* お知らせ */
.p-toppage__information {
  padding: 50px 0 107px; }
  @media (max-width: 767px) {
    .p-toppage__information {
      padding: 40px 0 40px; } }

.p-toppage__information--inner {
  background: #F2E9DF;
  padding: 74px;
  border-radius: 30px 0px 0px 30px;
  margin-right: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  margin-left: -67px;
  padding-left: 67px;
  display: flex;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .p-toppage__information--inner {
      display: block;
      margin-left: calc(50% - 50vw);
      padding-left: calc(50vw - 50%);
      padding-top: 38px;
      border-radius: 0px 0px 0px 0px; } }

.p-toppage__information--ttl-box {
  margin-right: 5%; }
  .p-toppage__information--ttl-box .p-toppage__information--btn {
    display: table; }
  @media (max-width: 767px) {
    .p-toppage__information--ttl-box {
      margin-right: 0; }
      .p-toppage__information--ttl-box .p-toppage__information--btn {
        display: none; } }

.p-toppage__information--main-ttl {
  position: relative;
  padding: 63px 0 0 64px; }
  @media (max-width: 767px) {
    .p-toppage__information--main-ttl {
      padding: 22px 0 0 46px;
      text-align: left;
      width: max-content;
      margin-left: auto;
      margin-right: auto; } }
  .p-toppage__information--main-ttl:before {
    content: "";
    display: block;
    background: url("../img/index/icn-information-ttl.png") no-repeat left top;
    width: 98px;
    height: 99px;
    position: absolute;
    left: 0;
    top: 0; }
    @media (max-width: 767px) {
      .p-toppage__information--main-ttl:before {
        background-size: 74px 75px;
        width: 74px;
        height: 75px;
        left: -40px; } }

.p-toppage__information--btn {
  display: none; }
  @media (max-width: 767px) {
    .p-toppage__information--btn {
      display: table;
      margin: 50px auto 0; } }

.p-toppage__information--list {
  margin: 0 0;
  border-top: 1px solid #998675;
  flex-grow: 1; }

.p-toppage__information--list-item {
  padding: 28px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #998675;
  flex-wrap: wrap; }
  @media (max-width: 767px) {
    .p-toppage__information--list-item {
      padding: 14px 0; } }

.p-toppage__information--list-item a:hover {
  text-decoration: underline; }

.p-toppage__information--list-ttl {
  flex-basis: 100%;
  margin: 10px 0 0; }
  @media (max-width: 767px) {
    .p-toppage__information--list-ttl {
      margin: 14px 0 0; } }

.p-toppage__information--list-cate {
  background: #037243;
  border-radius: 3px;
  padding: 3px 14px;
  position: relative;
  white-space: nowrap;
  color: #ffffff;
  margin: 0 19px; }
  @media (max-width: 767px) {
    .p-toppage__information--list-cate {
      padding: 2px 12px; } }

.p-toppage__information--list-date {
  margin: 0;
  color: #037243; }

/* 正社員募集 */
.p-toppage__recruit {
  padding: 0 0 50px;
  background: url("../img/index/bg-recruit.png") no-repeat center top #037243; }
  @media (max-width: 1080px) {
    .p-toppage__recruit {
      padding: 0 0 40px;
      background-image: none; } }

.p-toppage__recruit--box {
  max-width: 59.259%;
  margin: 0 auto 60px; }
  @media (max-width: 1080px) {
    .p-toppage__recruit--box {
      margin: 0 auto 40px;
      max-width: inherit; } }

.p-toppage__recruit--box-img {
  display: none;
  text-align: center; }
  @media (max-width: 1080px) {
    .p-toppage__recruit--box-img {
      margin-top: 40px;
      display: block;
      margin: 0 auto; } }

.p-toppage__recruit--copy {
  text-align: center;
  margin: 50px 70px; }
  @media (max-width: 767px) {
    .p-toppage__recruit--copy {
      margin: 10px 20px 20px; } }

.p-toppage__recruit--photo {
  margin: 60px auto; }
  @media (max-width: 767px) {
    .p-toppage__recruit--photo {
      margin: 40px auto; } }

/* 会社案内 */
.p-toppage__about {
  background: url("../img/index/bg-about.png") repeat left top #F2E9DF;
  padding: 120px 0 150px; }
  @media (max-width: 767px) {
    .p-toppage__about {
      padding: 60px 0 0; } }

.p-toppage__about--box {
  text-align: center; }

.p-toppage__about--box-txt {
  margin: 50px 0; }
  @media (max-width: 767px) {
    .p-toppage__about--box-txt {
      margin: 40px 0;
      text-align: left; } }

.p-toppage__about--box-img {
  margin: 0 0 70px; }
  @media (max-width: 767px) {
    .p-toppage__about--box-img {
      margin: 0 0 50px; } }

/* ギャラリー */
.p-toppage__about--gallery {
  margin: 200px auto 120px;
  background: #6FC044;
  padding: 50px 60px;
  border-radius: 30px 30px 30px 30px;
  position: relative; }
  @media (max-width: 767px) {
    .p-toppage__about--gallery {
      margin-top: 100px;
      margin-right: calc(50% - 50vw);
      padding-right: calc(50vw - 50%);
      margin-left: calc(50% - 50vw);
      padding-left: calc(50vw - 50%);
      border-radius: 0px 0px 0px 0px;
      margin-bottom: 0; } }
  .p-toppage__about--gallery:before {
    content: url("../img/index/bg-gallery-top.png");
    position: absolute;
    left: 44px;
    top: -70px; }

.p-toppage__about--gallery-ttl {
  text-align: left; }
  @media (max-width: 767px) {
    .p-toppage__about--gallery-ttl {
      text-align: center; } }

.p-toppage__about--gallery-sp-img {
  display: none;
  text-align: center; }
  @media (max-width: 767px) {
    .p-toppage__about--gallery-sp-img {
      display: block;
      width: 90%;
      margin: 40px auto 0; } }

/* 自社開発商品 一覧　詳細
   ========================================================================== */
/* 一覧・詳細　共通 */
.p-information .l-page-head {
  background: url("../img/item/img-header.jpg");
  background-size: cover; }
  @media (max-width: 767px) {
    .p-information .l-page-head {
      background: url("../img/item/img-header_sp.jpg");
      background-size: cover; } }

.p-information__main {
  margin-bottom: 100px; }
  @media (max-width: 767px) {
    .p-information__main {
      margin-bottom: 70px; } }

/* 社員インタビュー */
.p-information__main--staff-profile {
  margin-bottom: 40px;
  display: flex;
  flex-wrap: nowrap;
  border-radius: 30px;
  background: #fff;
  padding: 40px;
  flex-direction: row-reverse;
  align-items: center; }
  @media (max-width: 767px) {
    .p-information__main--staff-profile {
      margin-bottom: 30px;
      flex-direction: column;
      padding: 15px;
      border-radius: 10px; } }

.p-information__main--staff-profile-photo {
  flex-basis: 37.037%;
  flex-shrink: 0;
  margin: 0 0 0 7.4%; }
  @media (max-width: 767px) {
    .p-information__main--staff-profile-photo {
      flex-basis: auto;
      margin: 0 0 15px; } }
  .p-information__main--staff-profile-photo img {
    aspect-ratio: 3 / 2;
    object-fit: cover; }

.p-information__main--staff-profile-txt {
  flex-basis: auto;
  flex-grow: 1; }
  .p-information__main--staff-profile-txt p {
    margin-top: 0; }
  @media (max-width: 767px) {
    .p-information__main--staff-profile-txt {
      width: 100%; } }
  .p-information__main--staff-profile-txt .profile-copy {
    font-size: 1.5625rem;
    color: #037243;
    /*margin-bottom: 41px;*/
    font-weight: 700; }
    @media (max-width: 767px) {
      .p-information__main--staff-profile-txt .profile-copy {
        font-size: 1.142857143rem;
        margin-bottom: 11px; } }
  .p-information__main--staff-profile-txt .profile-ttl {
    color: #ffffff;
    font-size: 0.750rem;
    padding: 2px 32px 2px 12px;
    margin: 0 16px 10px 0;
    border-radius: 5px;
    width: max-content;
    background: url("../img/information/icn-profile.png") no-repeat right 5px center #037243;
    background-size: auto 50%; }
    @media (max-width: 767px) {
      .p-information__main--staff-profile-txt .profile-ttl {
        margin-bottom: 5px;
        padding: 2px 22px 2px 10px; } }
  .p-information__main--staff-profile-txt .profile-name {
    font-size: 1.25rem;
    color: #037243;
    margin-bottom: 20px;
    font-weight: 700; }

.p-information__main--staff-contents {
  margin-bottom: 40px;
  display: flex;
  flex-wrap: nowrap;
  border-bottom: solid 1px #998675;
  padding-bottom: 40px; }
  @media (max-width: 767px) {
    .p-information__main--staff-contents {
      margin-bottom: 30px;
      flex-direction: column-reverse; } }
  .p-information__main--staff-contents:nth-child(odd) {
    flex-direction: row-reverse; }
    @media (max-width: 767px) {
      .p-information__main--staff-contents:nth-child(odd) {
        flex-direction: column-reverse;
        flex-basis: auto; } }
    .p-information__main--staff-contents:nth-child(odd) .p-information__main--staff-contents-photo {
      margin: 0 0 0 7.4%; }
      @media (max-width: 767px) {
        .p-information__main--staff-contents:nth-child(odd) .p-information__main--staff-contents-photo {
          margin: 0; } }

.p-information__main--staff-contents-photo {
  flex-basis: 37.037%;
  flex-shrink: 0;
  margin: 0 7.4% 0 0; }
  @media (max-width: 767px) {
    .p-information__main--staff-contents-photo {
      flex-basis: auto;
      margin: 0; } }

.p-information__main--staff-contents-txt {
  flex-basis: auto; }

.p-information__main--staff-contents-ttl {
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  margin: 1em 0;
  color: #037243;
  border-left: 4px solid #037243;
  padding-left: 16px; }
  @media (max-width: 767px) {
    .p-information__main--staff-contents-ttl {
      font-size: 1.375em; } }

/* 一覧へ戻るボタン */
.p-information__btn {
  margin-top: 110px; }
  @media (max-width: 767px) {
    .p-information__btn {
      margin-top: 50px; } }

/* カテゴリーリンク　アーカイブなどナビゲーション */
.p-information__sub {
  margin-bottom: 120px; }
  @media (max-width: 767px) {
    .p-information__sub .c-entries__nav {
      margin-bottom: 30px; } }

.p-information__sub-ttl {
  font-size: 1.625rem;
  font-weight: 700;
  margin: 0 0 35px;
  color: #037243; }
  @media (max-width: 767px) {
    .p-information__sub-ttl {
      font-size: 1.285714286rem;
      text-align: center;
      margin: 0 0 20px; } }

/* 会社案内
   ========================================================================== */
/* メインビジュアル */
.p-company__mainvisual--box {
  background: url("../img/company/bg-mainvisual.jpg") no-repeat left top;
  background-size: cover;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  /*height: 1000px;*/ }
  @media (max-width: 767px) {
    .p-company__mainvisual--box {
      height: 70vh; } }

.p-company__mainvisual--copy {
  text-align: center;
  padding: 0 15px;
  color: #ffffff; }

.p-company__mainvisual--ttl {
  margin: 0 auto 44px; }
  @media (max-width: 767px) {
    .p-company__mainvisual--ttl {
      width: 61.3333%; } }

.p-company__mainvisual--sub-ttl {
  font-size: 1.125rem; }
  @media (max-width: 767px) {
    .p-company__mainvisual--sub-ttl {
      font-size: 1.142857143rem; } }

.p-company__mainvisual--txt {
  font-size: 1.5rem;
  font-weight: 700; }
  @media (max-width: 767px) {
    .p-company__mainvisual--txt {
      font-size: 1.285714286rem; } }

.p-company__mainvisual--carousel {
  margin-top: -78px; }

/* 代表メッセージ */
.p-company__message {
  padding: 50px 0 100px; }
  @media (max-width: 767px) {
    .p-company__message {
      padding-bottom: 50px; } }

.p-company__message--ttl {
  margin-bottom: 50px; }

.p-company__message--txt p {
  margin: 0 0 40px; }

.p-company__message--img {
  text-align: center; }

.p-company__message--lead {
  font-size: 1.375rem; }

.p-company__message--txt .p-company__message--name {
  font-weight: 700;
  text-align: center;
  margin: 0 0 80px; }

/* 事業⽅針 */
.p-company__management-policy {
  padding: 120px 0 60px; }
  @media (max-width: 767px) {
    .p-company__management-policy {
      padding: 60px 0 30px; } }

.p-company__management-policy--txt {
  font-weight: 700;
  color: #037243;
  font-size: 1.5rem;
  margin: 75px 0; }
  @media (max-width: 767px) {
    .p-company__management-policy--txt {
      font-size: 1.121428571rem;
      margin: 40px 0; } }
  .p-company__management-policy--txt li {
    margin-bottom: 25px;
    padding-left: 2em;
    position: relative; }
    .p-company__management-policy--txt li span {
      position: absolute;
      left: 0; }

/* モリチップの特長 */
.p-company__feature {
  padding: 120px 0 80px; }
  @media (max-width: 767px) {
    .p-company__feature {
      padding: 60px 0 40px; } }
  .p-company__feature .c-ttl03 {
    border-bottom: 1px solid #037243;
    display: flex; }
    .p-company__feature .c-ttl03:before {
      content: url("../img/company/icn-feature-ttl.png");
      margin-right: 10px; }

.p-company__feature--box {
  overflow: hidden; }

.p-company__feature--map {
  text-align: center;
  padding-bottom: 30px; }

.p-company__feature--box-layout02 {
  display: grid;
  grid-template-columns: [left] 69.915% [right] 27.63% [end];
  grid-template-rows: [top] 1fr [center] 1fr [bottom];
  column-gap: 2.455%; }

.p-company__feature--box.no04 {
  grid-column-start: left;
  grid-row-start: top;
  grid-row-end: center; }
  @media (max-width: 767px) {
    .p-company__feature--box.no04 {
      grid-column-start: left;
      grid-column-end: end;
      grid-row-start: top;
      grid-row-end: center; } }

.p-company__feature--box.no05 {
  grid-column-start: left;
  grid-row-start: center;
  grid-row-end: bottom; }
  @media (max-width: 767px) {
    .p-company__feature--box.no05 {
      grid-column-start: left;
      grid-column-end: end;
      grid-row-start: center;
      grid-row-end: bottom; } }

.p-company__feature--truck {
  grid-column-start: right;
  grid-row-start: top;
  grid-row-end: bottom;
  align-self: center; }
  @media (max-width: 767px) {
    .p-company__feature--truck {
      grid-column-start: left;
      grid-column-end: end;
      grid-row-start: bottom;
      grid-row-end: end;
      margin: 30px auto;
      text-align: center; } }

.p-company__feature--mark-wrap {
  background: #ffffff;
  border-radius: 10px;
  padding: 20px;
  text-align: center;
  margin: 30px 0 60px;
  display: flex;
  justify-content: center; }
  @media (max-width: 767px) {
    .p-company__feature--mark-wrap {
      flex-wrap: wrap; } }
  .p-company__feature--mark-wrap li {
    margin: 0 10px; }
    @media (max-width: 767px) {
      .p-company__feature--mark-wrap li {
        max-width: 32%;
        margin: 0;
        text-align: center;
        align-self: center; } }

/* 会社概要 */
.p-company__outline {
  padding: 120px 0 80px; }
  @media (max-width: 767px) {
    .p-company__outline {
      padding: 60px 0 40px; } }

.p-company__outline--box {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .p-company__outline--box {
      display: block; } }

.p-company__outline--img {
  width: 44.444%; }
  @media (max-width: 767px) {
    .p-company__outline--img {
      text-align: center;
      width: auto;
      margin-bottom: 20px; } }

.p-company__outline--txt {
  width: 50.926%; }
  .p-company__outline--txt .c-table {
    margin-top: 0; }
  @media (max-width: 767px) {
    .p-company__outline--txt {
      width: auto; } }

/* 主な社内保有資格 */
.p-company__license {
  padding: 120px 0 80px; }
  @media (max-width: 767px) {
    .p-company__license {
      padding: 60px 0 40px; } }

.p-company__license--box {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .p-company__license--box {
      display: block; } }

.p-company__license--inner {
  width: 47.222%; }
  @media (max-width: 767px) {
    .p-company__license--inner {
      width: auto;
      margin-bottom: 20px; } }
  .p-company__license--inner .c-table th {
    text-align: center;
    background: #e3d8cd; }
    @media (max-width: 767px) {
      .p-company__license--inner .c-table th {
        border-bottom: solid 1px #998675;
        padding: 5px 0; } }

/* 事務所‧⼯場へのアクセス */
.p-company__access {
  padding: 120px 0 80px; }
  @media (max-width: 767px) {
    .p-company__access {
      padding: 60px 0; } }

.p-company__access--place-ttl {
  border-radius: 0px 10px 10px 0px;
  background: #037243;
  color: #ffffff;
  padding: 5px 20px;
  font-size: 1.75rem;
  width: max-content;
  transform: translateY(50%);
  position: relative;
  z-index: 1; }
  @media (max-width: 767px) {
    .p-company__access--place-ttl {
      font-size: 1.428571429rem; } }

.p-company__access--slider-wrap {
  position: relative; }
  @media (max-width: 767px) {
    .p-company__access--slider-wrap {
      /*padding: 0 10px;*/ } }

.p-company__access--slider-copy {
  position: absolute;
  left: 0;
  top: 52px;
  border-radius: 0px 10px 10px 0px;
  background: #ffffff;
  color: #037243;
  padding: 5px 20px;
  font-size: 1.125rem;
  font-weight: 700;
  width: max-content; }
  @media (max-width: 1080px) {
    .p-company__access--slider-copy {
      position: relative;
      left: inherit;
      top: inherit;
      padding: 5px 5px;
      width: 100%;
      border-radius: 0;
      background: #F2E9DF;
      width: 100%; } }
  @media (max-width: 767px) {
    .p-company__access--slider-copy {
      font-size: 1.142857143rem; } }

.p-company__access--slider-address {
  position: absolute;
  right: 0;
  bottom: 0;
  border-radius: 10px 0px 0px 0px;
  background: #ffffff;
  padding: 5px 20px;
  font-size: 0.9375rem;
  width: max-content; }
  @media (max-width: 1080px) {
    .p-company__access--slider-address {
      position: relative;
      right: inherit;
      bottom: inherit;
      padding: 5px 5px 30px;
      border-radius: 0;
      background: #F2E9DF;
      width: 100%; } }
  @media (max-width: 767px) {
    .p-company__access--slider-address {
      font-size: 1rem; } }
  .p-company__access--slider-address .googlemap_link {
    color: #037243;
    text-decoration: underline;
    padding-left: 20px;
    position: relative; }
    .p-company__access--slider-address .googlemap_link:before {
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      content: "\f3c5";
      opacity: 1;
      position: absolute;
      left: 7px; }
    .p-company__access--slider-address .googlemap_link:hover {
      text-decoration: none; }

.p-company__access--route .c-col2-item {
  margin-bottom: 30px; }
  @media (max-width: 767px) {
    .p-company__access--route .c-col2-item {
      margin: 0 auto 30px; } }
.p-company__access--route figure {
  display: flex;
  flex-direction: column;
  height: 100%; }
.p-company__access--route figure img {
  width: 100%;
  height: auto; }
.p-company__access--route figurecaption {
  font-weight: 700;
  color: #037243;
  margin-bottom: 10px;
  display: inline-block;
  flex-grow: 1; }
.p-company__access--route .access--route-ttl {
  display: flex;
  align-items: center;
  font-size: 1.375rem;
  color: #037243; }
  @media (max-width: 767px) {
    .p-company__access--route .access--route-ttl {
      font-size: 1.142857143rem; } }
  .p-company__access--route .access--route-ttl:after {
    content: "";
    display: block;
    flex-grow: 1;
    height: 1px;
    background: #998675;
    margin-left: 20px; }

/* 沿革 */
.p-company__history {
  padding: 120px 0 80px; }
  @media (max-width: 767px) {
    .p-company__history {
      padding: 60px 0 0; } }
  .p-company__history .c-cta__main {
    margin-bottom: 0; }

.p-company__history--box {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .p-company__history--box {
      display: block; } }

.p-company__history--img {
  width: 44.444%; }
  @media (max-width: 767px) {
    .p-company__history--img {
      width: auto;
      margin-bottom: 20px;
      text-align: center; } }

.p-company__history--txt {
  width: 50.926%; }
  .p-company__history--txt .c-table {
    margin-top: 0; }
    .p-company__history--txt .c-table th {
      white-space: nowrap; }
  @media (max-width: 767px) {
    .p-company__history--txt {
      width: auto; } }

/* モリチップのしごと
   ========================================================================== */
/* Q&Aで分かるモリチップのしごと */
.p-about__whats {
  padding: 0 0 100px; }
  @media (max-width: 767px) {
    .p-about__whats {
      padding-bottom: 50px; } }

.p-about__whats--main-ttl {
  margin-bottom: 70px;
  text-align: left; }
  @media (max-width: 767px) {
    .p-about__whats--main-ttl {
      margin-bottom: 20px; } }

.p-about__whats--main-img {
  margin-bottom: 30px;
  background: url("../img/about/img-faq-main.jpg") no-repeat center bottom;
  height: 100vh;
  background-size: cover; }
  @media (max-width: 767px) {
    .p-about__whats--main-img {
      height: 30vh; } }

.p-about__whats--question-box {
  background: #037243;
  border-radius: 10px;
  padding: 10px 40px;
  margin-bottom: 30px; }
  @media (max-width: 767px) {
    .p-about__whats--question-box {
      padding: 15px;
      margin-bottom: 12px; } }

.p-about__whats--question-ttl {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  color: #ffffff;
  font-size: 1.625rem;
  line-height: 1.35; }
  @media (max-width: 767px) {
    .p-about__whats--question-ttl {
      font-size: 1.142857143rem; } }
  .p-about__whats--question-ttl span {
    font-size: 1.75rem;
    display: flex;
    width: 43px;
    height: 43px;
    padding-bottom: 5px;
    line-height: 1;
    justify-content: center;
    align-items: center;
    align-self: flex-start;
    color: #037243;
    background: #ffffff;
    border-radius: 50%;
    margin-right: 12px;
    flex-shrink: 0; }
    @media (max-width: 767px) {
      .p-about__whats--question-ttl span {
        font-size: 1.071428571rem;
        width: 24px;
        height: 24px; } }

.p-about__whats--answer-box {
  margin-bottom: 70px;
  border-radius: 10px;
  border: 2px solid #037243;
  background: #ffffff;
  padding: 30px 38px; }
  @media (max-width: 767px) {
    .p-about__whats--answer-box {
      padding: 15px;
      margin-bottom: 30px; } }

.p-about__whats--answer-ttl {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  color: #037243;
  font-size: 1.375rem;
  font-weight: 700; }
  @media (max-width: 767px) {
    .p-about__whats--answer-ttl {
      font-size: 1rem; } }
  .p-about__whats--answer-ttl span {
    font-size: 1.75rem;
    display: flex;
    width: 43px;
    height: 43px;
    padding-bottom: 5px;
    line-height: 1;
    justify-content: center;
    align-items: center;
    background: #037243;
    color: #ffffff;
    border-radius: 50%;
    margin-right: 12px;
    flex-shrink: 0; }
    @media (max-width: 767px) {
      .p-about__whats--answer-ttl span {
        font-size: 1.071428571rem;
        width: 24px;
        height: 24px; } }

.p-about__whats--type-list {
  display: flex;
  align-items: flex-start;
  text-align: center;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 40px; }

.p-about__whats--type-list-item {
  width: 20%;
  margin: 0 1%; }
  @media (max-width: 767px) {
    .p-about__whats--type-list-item {
      width: 46%;
      margin: 0 2%; } }
  .p-about__whats--type-list-item .type-name {
    color: #037243;
    font-weight: 700;
    font-size: 1.125rem;
    margin: 1em 0; }
    @media (max-width: 767px) {
      .p-about__whats--type-list-item .type-name {
        font-size: 1.142857143rem; } }

.p-about__whats--make-list {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 40px; }
  @media (max-width: 767px) {
    .p-about__whats--make-list {
      flex-direction: column;
      margin-top: 20px; } }

.p-about__whats--make-list-item {
  width: 30%;
  margin: 0 1%; }
  @media (max-width: 767px) {
    .p-about__whats--make-list-item {
      width: auto;
      margin: 0; }
      .p-about__whats--make-list-item:not(:last-child) {
        margin-bottom: 15px; } }

/* ウッドチップができるまで */
.p-about__work-flow {
  padding: 120px 0 60px; }
  @media (max-width: 767px) {
    .p-about__work-flow {
      padding: 60px 0 30px; } }

.p-about__work-flow--wrap {
  margin-bottom: 100px; }
  @media (max-width: 767px) {
    .p-about__work-flow--wrap {
      margin-bottom: 40px; } }
  .p-about__work-flow--wrap .c-ttl02 {
    margin: 70px 0; }
    @media (max-width: 767px) {
      .p-about__work-flow--wrap .c-ttl02 {
        margin: 40px 0px; } }

.p-about__work-flow-box {
  margin-top: -30px; }
  .p-about__work-flow-box.step-arrow:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: 25px solid transparent;
    border-top: 25px solid #037243;
    margin: 0 auto 40px; }
    @media (max-width: 767px) {
      .p-about__work-flow-box.step-arrow:after {
        margin: 0 auto 10px;
        border-width: 15px; } }
  .p-about__work-flow-box .box-ttl {
    border-radius: 10px;
    background: #037243;
    color: #ffffff;
    text-align: center;
    padding: 10px 40px;
    max-width: 600px;
    margin: 0 auto;
    transform: translateY(50%);
    position: relative;
    z-index: 1;
    font-size: 1.625rem;
    line-height: 1.35; }
    @media (max-width: 767px) {
      .p-about__work-flow-box .box-ttl {
        font-size: 1.428571429rem;
        padding: 10px 10px;
        max-width: 82%; } }
  .p-about__work-flow-box .box-inner {
    background: #F2E9DF;
    border-radius: 10px;
    padding: 30px 50px 60px;
    margin-bottom: 40px; }
    @media (max-width: 767px) {
      .p-about__work-flow-box .box-inner {
        padding: 27px 15px 40px;
        margin-bottom: 20px; } }
    .p-about__work-flow-box .box-inner .c-ttl03 {
      margin-top: 40px; }
      @media (max-width: 767px) {
        .p-about__work-flow-box .box-inner .c-ttl03 {
          margin-top: 20px;
          font-size: 1rem; } }

.p-about__work-flow-step1-list {
  display: flex;
  align-items: flex-start;
  text-align: center;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 40px; }

.p-about__work-flow-step1-list-item {
  width: 20%;
  margin: 0 1%; }
  @media (max-width: 767px) {
    .p-about__work-flow-step1-list-item {
      width: 46%;
      margin: 0 2%; } }
  .p-about__work-flow-step1-list-item .type-name {
    color: #037243;
    font-weight: 700;
    font-size: 1.125rem;
    margin: 1em 0; }
    @media (max-width: 767px) {
      .p-about__work-flow-step1-list-item .type-name {
        font-size: 1.142857143rem; } }
    .p-about__work-flow-step1-list-item .type-name span {
      font-weight: normal;
      display: block;
      color: #181818; }

.p-about__work-flow-img-wrap {
  position: relative;
  margin: 40px 0 0; }
  @media (max-width: 767px) {
    .p-about__work-flow-img-wrap {
      margin: 20px 0 0; } }

.p-about__work-flow-img-icn {
  position: absolute;
  left: 30px;
  top: 30px;
  margin: 0; }
  @media (max-width: 767px) {
    .p-about__work-flow-img-icn {
      left: 10px;
      top: 10px; }
      .p-about__work-flow-img-icn img {
        width: 60px;
        height: 60px; } }

.p-about__work-flow-step4-list {
  border-top: 1px solid #998675;
  margin-top: 40px; }
  @media (max-width: 767px) {
    .p-about__work-flow-step4-list {
      margin-top: 20px; } }

.p-about__work-flow-step4-list-item {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #998675;
  padding: 20px 50px; }
  @media (max-width: 767px) {
    .p-about__work-flow-step4-list-item {
      padding: 12px 0; } }
  .p-about__work-flow-step4-list-item .product-img {
    width: 20%;
    /*flex-shrink: 0;*/ }
  .p-about__work-flow-step4-list-item .product-txt {
    width: 76%; }
    .p-about__work-flow-step4-list-item .product-txt .c-ttl03 {
      margin: 0; }

.p-about__work-flow-nouhin-list-item:not(:last-child) {
  border-bottom: 1px solid #998675;
  padding-bottom: 40px;
  margin-bottom: 40px;
  text-align: center; }
  @media (max-width: 767px) {
    .p-about__work-flow-nouhin-list-item:not(:last-child) {
      padding-bottom: 20px;
      margin-bottom: 20px; } }

/* モリチップ豆知識 */
.p-about__faq {
  padding: 120px 0 100px; }
  @media (max-width: 767px) {
    .p-about__faq {
      padding: 90px 0 50px; } }

.p-about__faq--main-ttl {
  margin-bottom: 70px; }
  @media (max-width: 767px) {
    .p-about__faq--main-ttl {
      margin-bottom: 20px; } }

.p-about__faq--question-box {
  background: #037243;
  border-radius: 10px;
  padding: 10px 70px 10px 40px; }
  @media (max-width: 767px) {
    .p-about__faq--question-box {
      padding: 15px 15px 25px 15px; } }
  .p-about__faq--question-box .open-arrow {
    font-size: 1rem;
    position: absolute;
    right: 16px;
    top: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 43px;
    height: 43px;
    border-radius: 50%;
    border: 1px solid #ffffff;
    background: #037243;
    transform: translateY(-50%); }
    @media (max-width: 767px) {
      .p-about__faq--question-box .open-arrow {
        /*			width: 28px;
        height: 28px;*/
        right: 50%;
        top: 100%;
        transform: translate(50%, -50%); } }
  .p-about__faq--question-box .open-arrow:before {
    font-family: "Font Awesome 5 Free";
    content: "\f078";
    font-weight: 900;
    display: block;
    transition: 0.2s;
    font-size: 1.15rem;
    line-height: 0.5;
    margin-top: 10px; }
  .p-about__faq--question-box.active .open-arrow:before {
    transform: rotate(180deg) translateY(50%); }
  .p-about__faq--question-box .open-arrow:after {
    content: "回答";
    font-size: 10px;
    /* Chrome表示可能最小サイズ */
    transform: scale(85%);
    /*white-space: nowrap;*/ }
  .p-about__faq--question-box.active .open-arrow:after {
    content: "閉じる"; }
  .p-about__faq--question-box:after {
    display: none; }

.p-about__faq--question-ttl {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  color: #ffffff;
  font-size: 1.375rem;
  line-height: 1.35;
  position: relative;
  text-align: left; }
  @media (max-width: 767px) {
    .p-about__faq--question-ttl {
      font-size: 1rem; } }
  .p-about__faq--question-ttl span {
    align-self: flex-start;
    font-size: 1.75rem;
    display: flex;
    width: 43px;
    height: 43px;
    padding-bottom: 5px;
    line-height: 1;
    justify-content: center;
    align-items: center;
    color: #037243;
    background: #ffffff;
    border-radius: 50%;
    margin-right: 12px;
    flex-shrink: 0; }
    @media (max-width: 767px) {
      .p-about__faq--question-ttl span {
        font-size: 1.071428571rem;
        width: 24px;
        height: 24px; } }

.p-about__faq--answer-box {
  margin-bottom: 70px;
  border-radius: 0 0 10px 10px;
  border: 2px solid #037243;
  border-top: none;
  background: #ffffff;
  padding: 40px 38px 30px;
  margin-top: -10px; }
  @media (max-width: 767px) {
    .p-about__faq--answer-box {
      padding: 35px 11px 15px;
      margin-bottom: 30px; } }

.p-about__faq--answer-box-inner {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; }
  .p-about__faq--answer-box-inner span {
    font-size: 1.75rem;
    display: flex;
    width: 43px;
    height: 43px;
    padding-bottom: 5px;
    line-height: 1;
    justify-content: center;
    align-items: center;
    background: #037243;
    color: #ffffff;
    border-radius: 50%;
    margin-right: 12px;
    flex-shrink: 0; }
    @media (max-width: 767px) {
      .p-about__faq--answer-box-inner span {
        font-size: 1.071428571rem;
        width: 24px;
        height: 24px; } }

.p-about__faq--answer-txt {
  color: #037243;
  font-size: 1.125rem;
  font-weight: 700; }
  @media (max-width: 767px) {
    .p-about__faq--answer-txt {
      font-size: 1rem; } }
  .p-about__faq--answer-txt p {
    margin-top: 0; }

/* 納品まで自社で責任を持って対応しています */
.p-about__slogan--ttl {
  width: 60%;
  margin: 0 auto -10px;
  text-align: center; }

.p-about__slogan--carousel {
  background: linear-gradient(transparent 0, transparent 90%, #6FC044 90%, #6FC044 100%); }

/* モリチップで働く⼈ */
.p-about__staff {
  padding: 120px 0 80px; }
  @media (max-width: 767px) {
    .p-about__staff {
      padding: 60px 0; } }

.p-about__staff--photo-list {
  display: flex;
  justify-content: space-between;
  margin: 70px 0; }
  @media (max-width: 767px) {
    .p-about__staff--photo-list {
      margin: 40px 0 20px;
      flex-wrap: wrap; } }
  .p-about__staff--photo-list li {
    width: 24%; }
    @media (max-width: 767px) {
      .p-about__staff--photo-list li {
        width: 48%;
        margin-bottom: 20px; } }

.p-about__staff--post-list .p-information__main--staff-profile {
  background: #F2E9DF; }

/* お問い合わせ
   ========================================================================== */
/* メールフォーム */
.p-contact__mailform label {
  cursor: pointer; }

.p-contact__mailform--ttl {
  font-weight: 700;
  font-size: 1.5rem;
  text-align: left;
  color: #037243;
  padding-left: 13px;
  border-left: 2px solid #037243;
  margin: 30px 0 20px; }
  @media (max-width: 767px) {
    .p-contact__mailform--ttl {
      font-size: 1.142857143rem; } }

.p-contact__mailform--table {
  margin: 12px auto 67px;
  width: 100%; }

.p-contact__mailform--table table {
  width: 100%;
  margin: 0 auto;
  border-collapse: collapse;
  border-top: 1px solid #998675; }
  .p-contact__mailform--table table th {
    border-bottom: 1px solid #998675;
    padding: 16px 20px;
    font-size: 1.125rem;
    color: #037243;
    text-align: left;
    vertical-align: top;
    width: 28%; }
    @media (max-width: 767px) {
      .p-contact__mailform--table table th {
        border-bottom: none;
        display: block;
        width: 100%;
        padding: 12px 12px 0;
        font-size: 1rem; } }
  .p-contact__mailform--table table td {
    border-bottom: 1px solid #998675;
    padding: 16px 20px; }
    @media (max-width: 767px) {
      .p-contact__mailform--table table td {
        display: block;
        width: 100%;
        padding: 12px;
        font-size: 1rem; } }
    .p-contact__mailform--table table td h3 {
      margin: 1em 0; }
    .p-contact__mailform--table table td p {
      margin: 0 0 12px; }
      @media (max-width: 767px) {
        .p-contact__mailform--table table td p {
          margin: 0 0 4px; } }
    .p-contact__mailform--table table td .error {
      color: #ff0000; }
    .p-contact__mailform--table table td input[type="text"], .p-contact__mailform--table table td input[type="tel"], .p-contact__mailform--table table td input[type="email"] {
      background: #fff;
      border: 1px solid #037243;
      border-radius: 5px;
      padding: 5px 10px;
      width: 100%;
      display: inline-block;
      margin-bottom: 5px; }
      @media (max-width: 767px) {
        .p-contact__mailform--table table td input[type="text"], .p-contact__mailform--table table td input[type="tel"], .p-contact__mailform--table table td input[type="email"] {
          width: 100%;
          font-size: 1.142857143rem; } }
      .p-contact__mailform--table table td input[type="text"].short-area, .p-contact__mailform--table table td input[type="tel"].short-area, .p-contact__mailform--table table td input[type="email"].short-area {
        max-width: 25%;
        margin-bottom: 10px; }
        @media (max-width: 767px) {
          .p-contact__mailform--table table td input[type="text"].short-area, .p-contact__mailform--table table td input[type="tel"].short-area, .p-contact__mailform--table table td input[type="email"].short-area {
            max-width: 30%; } }
    .p-contact__mailform--table table td input[type="checkbox"] {
      border: 1px solid #037243;
      border-radius: 5px; }
      @media (max-width: 767px) {
        .p-contact__mailform--table table td input[type="checkbox"] {
          font-size: 1.142857143rem; } }
    .p-contact__mailform--table table td textarea {
      background: #fff;
      border: 1px solid #037243;
      border-radius: 5px;
      padding: 5px 10px;
      width: 100%;
      min-height: 150px; }
      @media (max-width: 767px) {
        .p-contact__mailform--table table td textarea {
          font-size: 1.142857143rem; } }
    .p-contact__mailform--table table td select {
      border: 1px solid #037243;
      border-radius: 5px;
      background: #fff;
      padding: 5px 30px 5px 10px;
      /*			option[value~="高知県"]{
      			background:#6FC044;	
      			}*/ }
      @media (max-width: 767px) {
        .p-contact__mailform--table table td select {
          font-size: 1.142857143rem; } }

.__txt-required {
  font-weight: bold;
  font-size: 0.875rem;
  color: #ffffff;
  padding: 0 12px 2px;
  background: #037243;
  display: inline-block;
  border-radius: 3px;
  margin-left: 10px; }
  @media (max-width: 767px) {
    .__txt-required {
      font-size: 0.75rem;
      padding: 0 6px 2px; } }

.__txt-supplement {
  font-size: 0.8125rem;
  display: block;
  font-weight: normal; }
  @media (max-width: 767px) {
    .__txt-supplement {
      font-size: 0.857142857rem; } }

.privacy-txt {
  text-align: center;
  line-height: 1.7;
  margin: 70px 0; }
  @media (max-width: 767px) {
    .privacy-txt {
      margin: 30px 0; } }
  .privacy-txt a {
    text-decoration: underline;
    color: #037243; }
    .privacy-txt a:hover {
      text-decoration: none; }
  @media (max-width: 767px) {
    .privacy-txt {
      text-align: left; } }

.submit-btn {
  margin: 30px auto;
  position: relative;
  text-align: center;
  max-width: 60%; }
  .submit-btn input[type="submit"] {
    width: calc(100% - 6px);
    height: 100%;
    min-height: 3.5rem;
    border: 2px solid #775E47;
    height: 70px;
    border-radius: 35px;
    background: #775E47;
    margin: 3px;
    font-weight: 700;
    font-size: 1.375rem;
    color: #ffffff; }
    @media (max-width: 767px) {
      .submit-btn input[type="submit"] {
        height: 60px;
        border-radius: 30px; } }
  .submit-btn:before {
    font-weight: 700;
    font-family: "Font Awesome 5 Free";
    content: "\f054";
    display: block;
    color: #ffffff;
    font-size: 1.375rem;
    position: absolute;
    right: 37px;
    top: 50%;
    z-index: 2;
    transform: translateY(-50%); }
  .submit-btn:hover {
    cursor: pointer; }
    .submit-btn:hover input[type="submit"] {
      color: #037243;
      cursor: pointer;
      opacity: 0.7;
      color: #ffffff;
      /*transition: .2s;
      background: #ffffff;*/ }

/* 初期値リセット */
.mwform-radio-field {
  display: block;
  margin-left: 0 !important;
  margin-bottom: 12px; }

.mw_wp_form .vertical-item + .vertical-item {
  margin-top: 0 !important; }

/* 確認画面時「例」非表示 */
.mw_wp_form_confirm.mw_wp_form_preview .p-contact__mailform--table td p {
  display: none; }

/* 送信完了画面 */
.p-contact__mailform .complete-box {
  margin: 100px auto;
  max-width: 80%; }
  @media (max-width: 767px) {
    .p-contact__mailform .complete-box {
      margin: 50px 0;
      max-width: none; } }
  .p-contact__mailform .complete-box .complete-btn {
    margin-top: 40px; }

/* 個人情報保護方針
   ========================================================================== */
.p-policy__main {
  margin-bottom: 150px; }
  @media (max-width: 767px) {
    .p-policy__main {
      margin-bottom: 60px; } }

.c-policy__ttl {
  font-weight: 700;
  font-size: 1.5rem;
  text-align: left;
  border-bottom: 1px solid #037243;
  margin: 3em 0 1em;
  color: #037243;
  padding-bottom: 6px; }
  @media (max-width: 767px) {
    .c-policy__ttl {
      font-size: 1.428571429rem; } }

.c-policy__ttl:first-child {
  margin-top: 0; }
@charset "UTF-8";

/* 共通 */

.l-page-head__inner{
    margin: 0 auto 65px;
}
@media (max-width: 767px) {
    .l-page-head__inner {
        margin: 0 auto 20px;
    }
}
.c-breadcrumb__box a {
    color: #775E47;;
    text-decoration: none;
}
.c-breadcrumb__box a:hover {
    text-decoration: underline;
}

@media (max-width: 767px) {
    .c-cta02--box-btn a {
        font-size: 1.25rem;
        padding: 15px 20px 15px 20px;
    }
}


/*TOP*/

.home .l-main {
    background:none !important;
}



@media (max-width: 767px) {
    .p-toppage__about {
        overflow: hidden;
    }
}



/*お知らせ*/

.c-entries__nav .c-entries__nav--list {
    display: flex;
    justify-content: flex-start;
}
@media (max-width: 767px) {
    .c-entries__nav .c-entries__nav--list {
        display: flex;
        justify-content: space-between;
    }
}
.c-entries__nav .c-entries__nav--list li {
    margin-left: 25px;
}
@media (max-width: 767px) {
    .c-entries__nav .c-entries__nav--list li {
        margin-left: 0;
    }
}
.c-entries__nav .c-entries__nav--list li:first-child {
    margin-left: 0;
}



@media (max-width: 767px) {
    .c-pagenavi .previouspostslink {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .c-pagenavi .nextpostslink {
        margin-left: 0;
    }
}

.c-entries__item--link .__hover {
    color: #775E47;
}

.c-entries__item--link:hover .__hover {
    text-decoration: underline;
}


@media (max-width: 767px) {
    .c-entries__cate--list-item {
        font-size: 0.857142857rem;
    }
}




/*会社案内*/
.p-company__mainvisual--ttl {
    margin: 0 auto 0;
}

@media (max-width: 767px) {
    .c-table.__pattern1 tr th {
        padding: 8px 0;
        display: block;
        border-bottom: none;
        padding-bottom: 0;
    }
}


@media (max-width: 767px) {
    .c-table.__pattern1 tr td {
        padding: 0px 0 8px;
        display: block;
    }
}

.p-company__history--img p {
    margin-top: 0;
}

@media (max-width: 767px) {
    .p-company__access--place {
        margin-right: calc(50% - 50vw);
        margin-left: calc(50% - 50vw);
        padding: 0 15px;
        background: #F2E9DF;
    }
}

@media (max-width: 1080px) {
    .p-company__access--slider-copy {
        position: relative;
        left: inherit;
        top: inherit;
        padding: 5px 15px 5px 15px;
        width: 100%;
        border-radius: 0px 10px 10px 0px;
        background: #fff;
        width: 100%;
        margin-left: calc(50% - 50vw);
        margin-top: 20px;
    }
    .p-company__access--slider-address {
        margin-right: calc(50% - 50vw);
        margin-top: 20px;
        border-radius: 10px 0px 0px 0px;
        width: auto;
        padding: 5px 15px 5px 15px;
        background: #fff;
    }

    .p-company__access--route.c-accordion{
        margin-right: calc(50% - 50vw);
        margin-left: calc(50% - 50vw);
    }
}


@media (max-width: 767px) {
    .p-company__access--place .c-accordion-ttl {
        padding: 8px 0 8px 0;
    }
    .p-company__access--place.__end {
        padding-bottom: 20px;
    }
}

/*モリチップのしごと*/
.p-information__main--staff-profile-txt .profile-name {
    margin-bottom: 0;
}
@media (max-width: 767px) {
    .p-about__work-flow-img-wrap {
        margin: 25px 0 0;
    }
}

@media (max-width: 767px) {
    .p-about__work-flow-step1-list{
        margin-top: 20px;
    }
}

.p-about__work-flow-step4-list-item .product-txt p {
    margin: 0;
}

.p-about__work-flow-step4-list-item .product-img{
    margin: 0;
}



.p-about__staff .c-btn01.__back-btn a::before {
    font-family: "Font Awesome 5 Free";
    content: "\f054";
    position: absolute;
    right: 37px;
    top: 50%;
    transform: translateY(-50%);
    left: auto;
}

.p-about__staff--post-list a .__hover {
    color: #775E47;
}

.p-about__staff--post-list a:hover .__hover {
    text-decoration: underline;
}




/*お問い合わせ*/
.__txt-required {
    vertical-align: middle;
    margin-top: -4px;
}

@media (max-width: 991px) {
    .c-btn01 a {
        font-size: 1.25rem;
    }
}