@charset "UTF-8";
/*!
---- SWDesign Original Stylesheet Template. ----
Thema Name:     model
Description:    model
Version:        1.0.0
Last Update:    2020/2/4
Author:         Naoto Ebitani
Company URL:    https://swdesign.jp
License:        GPL
License URL:    http://www.gnu.org/licenses/gpl.html
*/
html {
  font-display: swap;
}

.ns {
  font-family: 'Noto Sans JP', sans-serif;
}

.qs {
  font-family: 'Quicksand', sans-serif;
}

.ming {
  font-family: serif;
}

select::-ms-expand {
  display: none;
}

select {
  -moz-appearance: none;
  text-indent: 0.01px;
}

address {
  margin-bottom: 0 !important;
}

ol, ul, dl {
  list-style: none;
  margin-bottom: 0 !important;
  padding-left: 0;
}

dd {
  margin-bottom: 0 !important;
  margin-left: 0 !important;
}

label {
  margin-bottom: 0 !important;
}

a:hover {
  text-decoration: none !important;
}

img {
  display: block;
  /*height: auto;
	margin: auto;
	max-width: 100%;*/
}

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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(51, 51, 51, 0);
}

@-ms-viewport {
  width: device-width;
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Helvetica Neue", Arial, Meiryo, sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.8;
  color: #333;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

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

p {
  margin-top: 0;
  margin-bottom: 0;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
}

address {
  margin-bottom: 10px;
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 10px;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: bold;
}

dd {
  margin-bottom: 5px;
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 10px;
  margin: 0 0 1rem;
}

dfn {
  font-style: italic;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: inherit;
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 10px;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 10px;
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 7.5px;
  padding-top: 0.75rem;
  padding-bottom: 7.5px;
  padding-bottom: 0.75rem;
  color: #333;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 5px;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 5px;
  margin-bottom: .5rem;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

/* スクロールCSS */
.fade-in {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  transition-duration: 500ms;
  transition-property: opacity, transform;
}

.fade-in-up {
  transform: translate(0, 80px);
}

.fade-in-down {
  transform: translate(0, -50px);
}

.fade-in-left {
  transform: translate(-80px, 0);
}

.fade-in-right {
  transform: translate(50px, 0);
}

.scroll-in {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  transform: translate(0, 0);
}

a.hov {
  display: inline-block;
  transition: all .4s;
}

a.hov:hover {
  transform: translateX(4px);
}

.icon-titleLine:before {
  position: absolute;
  content: "";
  background-image: url(../image/icon/icon_titleLine.svg);
  width: 25px;
  height: 26px;
  left: 0;
  bottom: 0;
  margin: 0px 0px 0 -24px;
}

.lsAV50 {
  letter-spacing: 0.05em;
}

.lsAV100 {
  letter-spacing: 0.1em;
}

.lhM {
  line-height: 1;
}

.lhL {
  line-height: 1.2;
}

.lhXL {
  line-height: 1.4;
}

.lhXXL {
  line-height: 1.8;
}

.lhXXXL {
  line-height: 2;
}

.normal {
  font-weight: 400;
}

.regular {
  font-weight: 500;
}

.medium {
  font-weight: 600;
}

.bold {
  font-weight: 700;
}

.black {
  color: #333;
}

.gray {
  color: #82999F;
}

.white {
  color: #fff !important;
}

.red {
  color: red;
}

.blackBg {
  background: #333;
}

.whiteBg {
  background: #fff;
}

.paleBg {
  background: #F0F0F0;
}

.sandBg {
  background: #AEA691 !important;
}

.goldBg {
  background: #D0B26E !important;
}

.greenBg {
  background: #92AA66 !important;
}

.grayBg {
  background: #82999F !important;
}

.roseBg {
  background: #DA9A7D !important;
}

.grahiteBg {
  background: #494949 !important;
}

.taL {
  text-align: left !important;
}

.taC {
  text-align: center !important;
}

.taR {
  text-align: right !important;
}

.indent {
  text-indent: -1em;
  padding-left: 1em;
}

.marker {
  background: linear-gradient(transparent 70%, #ffdcb8 0%);
  display: inline;
  padding: 0 2px 4px;
}

.objectFit {
  -o-object-fit: cover;
  object-fit: cover;
}

/*----------▼▼ centering ▼▼----------*/
.mAuto {
  margin: auto !important;
}

.clearText {
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
}

.autoImg {
  width: 100%;
  height: auto;
}

.autoImg.full {
  width: auto;
  max-width: 100%;
  height: auto;
  display: table;
  margin: 0 auto;
}

.autoImg.lg {
  width: 80%;
  margin: 0 auto;
  display: block;
}

.autoImg.md {
  width: 50%;
  margin: 0 auto;
  display: block;
}

.autoImg.sm {
  width: 30%;
  margin: 0 auto;
  display: block;
}

.hAuto {
  height: auto !important;
}

.icon {
  position: relative;
}

.icon:before, .icon:after {
  background: no-repeat center/contain;
  content: "";
  position: absolute;
}

.logo {
  position: relative;
}

.logo:before, .logo:after {
  background: no-repeat center/contain;
  content: "";
  position: absolute;
}

.dark:hover {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
  filter: brightness(80%);
}

.wedgeBtn {
  display: table;
  position: relative;
  height: 45px;
  border-radius: 3px 0 0 3px;
  background: #333;
  color: #fff;
  padding: 9px 30px;
  font-size: 14px;
  font-weight: 500;
  margin: 0 18px 0 0;
}

.wedgeBtn:before {
  content: "";
  background-color: #ccc;
  width: 20px;
  height: 1px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

.wedgeBtn:after {
  position: absolute;
  content: "";
  background-image: url(../image/icon/tri.svg);
  background-size: contain;
  background-repeat: no-repeat;
  top: 0;
  right: -14px;
  height: 45px;
  width: 15px;
}

.wedgeBtn__white {
  background: #fff;
  color: #333;
  padding: 9px 20px;
}

.wedgeBtn__white:before {
  background-color: #333;
}

.wedgeBtn__white:after {
  background-image: url(../image/icon/tri-w.svg);
}

.fixedBtn {
  position: fixed;
  top: 0px;
  right: 10px;
  width: 50px;
  padding: 6px 0px;
  margin-top: 16px;
  z-index: 50;
}

.fixedBtn li {
  margin-bottom: 2px;
}

.ovalBtn {
  background: #494949;
  color: #fff;
  padding: 20px;
  width: 700px;
  display: table;
  margin: 24px auto 0;
  border-radius: 50px;
}

.ovalBtn:hover {
  background: #92AA66;
  color: #fff;
}

.ovalBtn.disabled {
  pointer-events: none;
}

html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
}

body {
  position: relative;
}

/*----------▼▼ wrapper ▼▼----------*/
.wrapper {
  letter-spacing: 0.05em;
  overflow: hidden;
  position: relative;
  width: 100%;
}

/*----------▼▼ section ▼▼----------*/
/*
.section {
	@include sp {
		padding: 60px 0;
	};
	@include pc {
		padding: 60px 0;
	};
}
*/
/*---------- float ----------*/
.fL {
  float: left !important;
}

.fR {
  float: right !important;
}

/*----------▼▼ clearfix ▼▼----------*/
.cf:after {
  clear: both;
  content: "";
  display: block;
}

/*----------▼▼ flex-box ▼▼----------*/
/* common */
.flexBox {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

/* SP */

/* PC */

/*----------grid-box ----------*/
/* common */
.gridBox {
  display: -ms-grid;
  display: grid;
}

/* SP */

/* PC */

/*----------▼▼ content-size ▼▼----------*/
/* SP */

/* PC */

.leadBox {
  text-align: center;
  height: 200px;
  padding: 14px 0 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
}

.leadBox p {
  line-height: 3;
}

.leadBox h2 {
  font-size: 16px;
}

.leadBox__voices {
  -ms-flex-direction: column;
  flex-direction: column;
}

.leadBox__voices h2 {
  font-weight: 500;
}

.gmap {
  height: 0;
  overflow: hidden;
  position: relative;
  padding-bottom: 35%;
}

.breadcrumb > div > span {
  display: block;
  position: relative;
  padding-right: 24px;
  float: left;
  color: #666;
  font-weight: 400;
}

.breadcrumb > div > span:after {
  content: '';
  width: 8px;
  height: 8px;
  background-size: contain;
  background-image: url(../image/icon/icon_breadcrumb.svg);
  background-repeat: no-repeat;
  position: absolute;
  right: 6px;
  top: 11px;
}

.breadcrumb > div > span:last-child {
  padding-right: 0;
}

.breadcrumb > div > span:last-child:after {
  background-image: none;
}

.breadcrumb span a span {
  font-weight: 500;
  color: #333;
  transition: 0.3s;
}

.breadcrumb span a span:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  transition: 0.3s;
}

.breadcrumb span[property="name"] {
  display: inline-block;
  padding: 0;
  margin-top: 2px;
  vertical-align: middle;
  max-width: 400px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cmnTtl__type1 {
  font-size: 40px;
  font-weight: 600;
  line-height: 1;
}

.cmnTtl__type1 span {
  position: relative;
  font-size: 14px;
  font-weight: 500;
  color: #666;
  vertical-align: -120%;
  margin: 0 0px 0 12px;
  letter-spacing: 1px;
  letter-spacing: 0.1rem;
}

.cmnTtl__type2 {
  position: relative;
}

.cmnTtl__type2:before {
  content: "";
  width: 4px;
  height: 20px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 8px;
}

.cmnTtl__type3 {
  position: relative;
}

.cmnTtl__type3:after {
  content: "";
  background-color: #ccc;
  width: 70px;
  height: 1px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-left: 14px;
}

.cmnTtl__type4 {
  position: relative;
  font-weight: 600;
  color: #333;
  padding: 0 0 24px;
}

.cmnTtl__type4:after {
  content: '';
  position: absolute;
  background-color: #333;
  width: 50px;
  height: 1px;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0px auto;
}

.cmsContents img {
  width: 100%;
}

.cmsContents strong {
  font-weight: 600;
}

.cmsContents h1 {
  font-size: 32px;
  color: #000;
  line-height: 1.4;
  font-weight: 500;
  padding-bottom: 6px;
  border-bottom: 1px solid #B1AFAF;
}

.cmsContents h2 {
  color: #fff;
  margin: 32px 0 16px;
  padding: 8px 12px;
  line-height: 1.4;
  font-weight: 500;
  background: #009cff;
  position: relative;
}

.cmsContents h3 {
  color: #333;
  margin: 32px 0 16px;
  line-height: 1.4;
  font-weight: 500;
  position: relative;
}

.cmsContents h3:before {
  content: '';
  background-color: #009cff;
  display: inline-block;
  width: 5px;
  height: 25px;
  vertical-align: middle;
  margin: 0 10px 5px 0;
}

.cmsContents h4 {
  color: #333;
  margin: 32px 0 16px;
  font-weight: 500;
  line-height: 1.4;
  position: relative;
}

.cmsContents h4:before {
  content: '';
  background-color: #333;
  display: inline-block;
  width: 14px;
  height: 1px;
  vertical-align: middle;
  margin-right: 10px;
}

.cmsContents h5 {
  margin: 32px 0 16px;
  font-weight: 500;
  line-height: 1.4;
}

.cmsContents h6 {
  margin: 32px 0 16px;
  font-weight: 600;
  line-height: 1.4;
}

.cmsContents p {
  margin: 16px 0 16px;
  line-height: 1.8;
  color: #333;
  font-size: 18px;
}

.cmsContents a:hover {
  border-bottom: 2px solid #a6d8f7;
  padding-bottom: 2px;
}

.cmsContents ul {
  margin: 16px 0 16px 1.5em;
}

.cmsContents ul li {
  list-style-type: disc;
  margin-top: 8px;
}

.cmsContents ul li:first-child {
  margin-top: 0;
}

.cmsContents ul.iroha li {
  list-style-type: katakana-iroha;
}

.cmsContents ul.aiueo li {
  list-style-type: katakana;
}

.cmsContents ul.abcde li {
  list-style-type: lower-alpha;
}

.cmsContents ol {
  margin: 16px 0 16px 1.5em;
}

.cmsContents ol > li {
  list-style-type: decimal;
  margin-top: 8px;
}

.cmsContents ol > li:first-child {
  margin-top: 0;
}

.cmsContents ol > li > ol {
  margin: 16px 0;
}

.cmsContents ol > li > ol > li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  margin-top: 8px;
  position: relative;
  padding-left: 3em;
}

.cmsContents ol > li > ol > li:before {
  display: marker;
  content: "（" counter(cnt) "）";
  position: absolute;
  left: 0;
  top: 0;
}

.cmsContents ol > li > ol > li:first-child {
  margin-top: 0;
}

.cmsContents ol.kakko > li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  margin-top: 8px;
  position: relative;
  padding-left: 3em;
}

.cmsContents ol.kakko > li:before {
  display: marker;
  content: "（" counter(cnt) "）";
  position: absolute;
  left: 0;
  top: 0;
}

.cmsContents ol.kakko > li:first-child {
  margin-top: 0;
}

.cmsContents ol.iroha li {
  list-style-type: katakana-iroha;
}

.cmsContents ol.aiueo li {
  list-style-type: katakana;
}

.cmsContents ol.abcde li {
  list-style-type: lower-alpha;
}

.cmsContents dl {
  margin: 16px 0;
}

.cmsContents dl dt {
  font-weight: bold;
}

.cmsContents dl dd {
  margin-left: 8px;
  padding-left: 8px;
  margin-top: 8px;
  margin-bottom: 16px;
}

.cmsContents blockquote {
  margin: 32px 0 32px 0;
  position: relative;
}

.cmsContents blockquote:before {
  content: '“';
  position: absolute;
  top: -65px;
  left: 0px;
  font-size: 120px;
  z-index: 0;
  opacity: 0.2;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
}

.cmsContents table {
  margin: 32px 0 32px 0;
  width: 100%;
}

.cmsContents table th {
  min-width: 120px;
}

.cmsContents table th, .cmsContents table td {
  padding: 8px;
}

.cmsContents table th:first-child, .cmsContents table td:first-child {
  border-left: none;
}

.cmsContents table td > *:first-child {
  margin-top: 0;
}

.cmsContents table td > *:last-child {
  margin-bottom: 0;
}

.nav-below {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 12px 0px;
}

.nav-previous a,
.nav-next a {
  font-size: 14px;
  font-weight: 500;
  color: #ffffff;
  background: #333;
  padding: 5px 24px;
}

.nav-previous a:hover,
.nav-next a:hover {
  border-bottom: none;
  color: #aaa;
}

.wp-pagenavi {
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
}

.wp-pagenavi__wrap {
  position: relative;
  display: table;
  margin: auto;
  padding-bottom: 48px;
  z-index: 1;
}

.wp-pagenavi__wrap:before {
  content: "";
  position: absolute;
  left: 0;
  background: url(../image/icon/icon-cloud1.svg) center/contain;
  background-repeat: no-repeat;
  width: 30px;
  height: 30px;
  margin: 0px 0 0 -45px;
}

.wp-pagenavi__wrap:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  background: url(../image/icon/icon-cloud2.svg) center/contain;
  background-repeat: no-repeat;
  width: 45px;
  height: 45px;
  margin: 0px -35px 0 0;
}

.wp-pagenavi a, .wp-pagenavi span {
  border: none !important;
  height: 44px;
  line-height: 38px;
  padding: 3px 5px;
  vertical-align: top;
  margin: 3px;
  border-radius: 9999px;
}

.wp-pagenavi a {
  transition: .3s;
}

.wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink {
  background-color: #98b566;
  color: #fff;
}

.wp-pagenavi .first, .wp-pagenavi .page, .wp-pagenavi .last {
  background-color: #f0f0f0;
  color: #222;
}

.wp-pagenavi .previouspostslink, .wp-pagenavi .current, .wp-pagenavi .page, .wp-pagenavi .extend, .wp-pagenavi .nextpostslink {
  width: 25px;
}

.wp-pagenavi .first, .wp-pagenavi .previouspostslink, .wp-pagenavi .extend, .wp-pagenavi .nextpostslink, .wp-pagenavi .last {
  position: relative;
}

.wp-pagenavi .first:before, .wp-pagenavi .first:after, .wp-pagenavi .previouspostslink:before, .wp-pagenavi .previouspostslink:after, .wp-pagenavi .extend:before, .wp-pagenavi .extend:after, .wp-pagenavi .nextpostslink:before, .wp-pagenavi .nextpostslink:after, .wp-pagenavi .last:before, .wp-pagenavi .last:after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
}

.wp-pagenavi .pages {
  padding: 3px 8px;
}

.wp-pagenavi .first:before, .wp-pagenavi .previouspostslink:before, .wp-pagenavi .nextpostslink:after, .wp-pagenavi .last:after {
  height: 12px;
  top: calc(50% - 6px);
  width: 12px;
}

.wp-pagenavi .first {
  padding-left: 18px;
  width: 68px;
}

.wp-pagenavi .first:before {
  background-image: url(../image/icon/icon_arrow_pager-double_black.svg);
  left: 8px;
  transform: scale(-1, 1);
}

.wp-pagenavi .previouspostslink:before {
  background-image: url(../image/icon/icon_arrow_pager-single_white.svg);
  left: calc(50% - 6px);
  transform: scale(-1, 1);
}

.wp-pagenavi .extend:before {
  background-image: url(../image/icon/icon_ellipsis_black.svg);
  height: 20px;
  left: calc(50% - 10px);
  top: calc(50% - 10px);
  width: 20px;
}

.wp-pagenavi .nextpostslink:after {
  background-image: url(../image/icon/icon_arrow_pager-single_white.svg);
  left: calc(50% - 6px);
}

.wp-pagenavi .last {
  padding-left: 10px;
  text-align: left;
  width: 68px;
}

.wp-pagenavi .last:after {
  background-image: url(../image/icon/icon_arrow_pager-double_black.svg);
  right: 10px;
}

/*.wp-pagenavi .pages, .wp-pagenavi .extend {
  background-color: #e6eae8;
  color: #222;
}*/
.wp-pagenavi .current {
  /*border: 1px solid #999 !important;*/
  position: relative;
  color: #fff;
  background: #777;
  font-weight: 700;
  line-height: 35px;
}

.swiper1, .swiper4, .swiper5 {
  /* ページネーション共通のスタイル */
  /* 現在のページネーションのスタイル */
  /* ページネーションの余白(位置) */
}

.swiper1 .swiper-wrapper, .swiper4 .swiper-wrapper, .swiper5 .swiper-wrapper {
  width: 100%;
  height: 550px !important;
  padding-bottom: 114px;
}

.swiper1 .swiper-slide, .swiper4 .swiper-slide, .swiper5 .swiper-slide {
  transition: 0.6s all;
}

.swiper1 .swiper-slide:nth-child(2n), .swiper4 .swiper-slide:nth-child(2n), .swiper5 .swiper-slide:nth-child(2n) {
  height: 95%;
}

.swiper1 .swiper__box, .swiper4 .swiper__box, .swiper5 .swiper__box {
  display: block;
  background: #494949;
  color: #fff;
  width: 100%;
  height: 100%;
  text-align: center;
  position: relative;
  padding: 10px;
  border-radius: 6px;
}

.swiper1 .swiper__box--text, .swiper4 .swiper__box--text, .swiper5 .swiper__box--text {
  padding: 0 14px 0;
}

.swiper1 .swiper__box--img, .swiper4 .swiper__box--img, .swiper5 .swiper__box--img {
  width: 100%;
  height: 350px;
  border-radius: 4px;
}

.swiper1 .swiper__box--img span, .swiper4 .swiper__box--img span, .swiper5 .swiper__box--img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: top center;
}

.swiper1 .swiper__box--icon, .swiper4 .swiper__box--icon, .swiper5 .swiper__box--icon {
  width: 65px;
  height: auto;
}

.swiper1 .swiper__box p, .swiper4 .swiper__box p, .swiper5 .swiper__box p {
  position: absolute;
  font-size: 12px;
  text-align: left;
  bottom: 30px;
}

.swiper1 .swiper__box .title, .swiper4 .swiper__box .title, .swiper5 .swiper__box .title {
  position: relative;
  font-size: 14px;
  font-weight: 500;
  text-align: left;
  margin-top: 24px;
}

.swiper1 .swiper-pagination-bullet, .swiper4 .swiper-pagination-bullet, .swiper5 .swiper-pagination-bullet {
  background-color: #333 !important;
  color: #fff;
  font-size: 16px;
  font-family: 'Quicksand', sans-serif;
  height: 24px;
  line-height: 1;
  transition: transform .2s linear;
  width: 24px;
}

.swiper1 .swiper-pagination-bullet-active, .swiper4 .swiper-pagination-bullet-active, .swiper5 .swiper-pagination-bullet-active {
  background-color: #333 !important;
  color: #fff;
  transform: scale(1.5);
}

.swiper1 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper1 .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet, .swiper4 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper4 .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet, .swiper5 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper5 .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 15px 30px !important;
}

.swiper4 .swiper-wrapper {
  width: 100%;
  height: 450px !important;
  padding-bottom: 96px;
}

.swiper4 .swiper__box--img {
  width: 100%;
  height: 250px;
  border-radius: 4px;
}

.swiper4 .swiper__box--img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: top center;
}

.swiper5Area {
  position: relative;
  margin-bottom: 32px;
  /* 前へ次への矢印カスタマイズ */
  /* 前へ次への矢印カスタマイズ */
  /* 前への矢印カスタマイズ */
  /* 次への矢印カスタマイズ */
  /* 画像サイズ調整 */
}

.swiper5Area .swiper-button-prev, .swiper5Area .swiper-button-next {
  margin: 220px auto 0;
  top: 0;
}

.swiper5Area .swiper-button-prev,
.swiper5Area .swiper-button-next {
  height: 60px;
  width: 60px;
}

.swiper5Area .swiper-button-prev:after,
.swiper5Area .swiper-button-next:after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 60px;
  margin: auto;
  width: 60px;
}

.swiper5Area .swiper-button-prev:after {
  background-image: url(../image/icon/icon_sliderNavi-prev.svg);
  margin-left: -30px;
}

.swiper5Area .swiper-button-next:after {
  background-image: url(../image/icon/icon_sliderNavi-next.svg);
  margin-right: -30px;
}

.swiper5Area .swiper-slide img {
  height: auto;
  width: 100%;
}

.swiper5 .swiper-wrapper {
  width: 100%;
  padding-bottom: 48px;
}

.swiper5 .swiper-slide:nth-child(2n) {
  height: 100%;
}

.swiper5 .swiper__box {
  padding: 3px;
  background: none;
  color: #333;
}

.swiper5 .swiper__box--text {
  padding: 0px 14px 24px;
}

.swiper5 .swiper__box--img {
  width: 100%;
  height: 500px;
}

.swiper5 .swiper__box--img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: top center;
  border-radius: 8px;
}

.swiper5 .swiper__box h3 {
  margin: 14px 0 24px;
  font-size: 16px;
}

.swiper5 .swiper__box p {
  position: initial;
  font-size: 10px;
}

/* swiper2 */
.swiper2 {
  background: #fff;
}

.swiper2 .swiper-wrapper {
  width: 100%;
  height: 180px !important;
  padding: 24px 0 96px 0;
}

.swiper2 .swiper__box {
  display: block;
  background: #fff;
  color: #fff;
  width: 100%;
  height: 100%;
  text-align: center;
  position: relative;
  padding: 0;
  border-radius: 0px;
}

.swiper2 .swiper__box--text {
  padding: 0;
}

.swiper2 .swiper__box--img {
  height: 180px;
  width: 100%;
  position: relative;
  z-index: 5;
}

.swiper2 .swiper__box--img span {
  display: block;
  height: 180px;
  background-size: cover;
  background-position: top center;
  border-radius: 100px;
}

.swiper2 .swiper__box--img .newIcon {
  position: absolute;
  top: 0;
  left: 0;
  width: 52px;
  height: 52px;
  z-index: -1;
}

.swiper2 .swiper__box--label {
  position: absolute;
  display: table;
  color: #333;
  background: #fff;
  border: 1px solid #333;
  border-radius: 30px;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 600;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto -12px;
}

.swiper2 .swiper__box--icon {
  width: 65px;
  height: auto;
}

.swiper2 .swiper__box h3 {
  color: #333;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  margin-top: 24px;
}

.swiper2 .swiper__box p {
  font-family: 'Quicksand', sans-serif;
  color: #333;
  position: relative;
  font-size: 12px;
  text-align: center;
  bottom: 0;
}

.swiper2 .swiper-slide:nth-child(2n) {
  height: 100%;
}

.swiper2Area {
  position: relative;
  max-width: 1100px;
  margin: auto;
  /* 前へ次への矢印カスタマイズ */
  /*.swiper-button-prev,
	.swiper-button-next {
		height: 60px;
		width: 60px;
	}*/
  /* 前へ次への矢印カスタマイズ */
  /* 前への矢印カスタマイズ */
  /* 次への矢印カスタマイズ */
  /* 画像サイズ調整 */
}

.swiper2Area .swiper-button-prev,
.swiper2Area .swiper-button-next {
  margin: auto;
  top: -6px;
}

.swiper2Area .swiper-button-prev {
  right: 40px;
  left: initial;
}

.swiper2Area .swiper-button-prev:after,
.swiper2Area .swiper-button-next:after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 55px;
  width: 55px;
  margin: auto;
}

.swiper2Area .swiper-button-prev:after {
  background-image: url(../image/icon/icon_sliderNavi-bk-prev.svg);
  margin-left: -30px;
}

.swiper2Area .swiper-button-next:after {
  background-image: url(../image/icon/icon_sliderNavi-bk-next.svg);
  margin-right: -30px;
}

.swiper2Area .swiper-slide img {
  height: auto;
  width: 100%;
}

/* swiper3 */
.swiper3 {
  padding: 64px 0 0;
  /* ページネーション共通のスタイル */
  /* 現在のページネーションのスタイル */
  /* ページネーションの余白(位置) */
}

.swiper3 .swiper-wrapper {
  width: 100%;
  height: 600px !important;
  padding-bottom: 80px;
  position: relative;
}

.swiper3 .swiper-slide {
  transition: 0.6s all;
}

.swiper3 .swiper__box {
  display: block;
  color: #fff;
  width: 900px;
  height: 550px;
  margin: auto;
  position: relative;
}

.swiper3 .swiper__box--img {
  width: 100%;
  height: 100%;
  border-radius: 4px;
}

.swiper3 .swiper__box--img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: top center;
  border-radius: 8px;
}

.swiper3 .swiper__box--icon {
  width: 65px;
  height: auto;
}

.swiper3 .swiper__box h3 {
  font-size: 16px;
  font-weight: 500;
  text-align: left;
  margin-top: 24px;
}

.swiper3 .swiper__box p {
  position: absolute;
  font-size: 12px;
  text-align: left;
  bottom: 30px;
}

.swiper3 .swiper-pagination {
  background: #AEA691;
  width: 370px !important;
  height: 160px;
  border-radius: 10px;
  display: table;
  right: 0 !important;
  left: initial !important;
  margin: 0 64px 14px 0;
  padding-top: 80px;
  z-index: -1;
}

.swiper3 .swiper-pagination-bullet {
  background-color: transparent !important;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  font-family: 'Quicksand', sans-serif;
  height: 24px;
  line-height: 1;
  transition: transform .2s linear;
  width: 24px;
}

.swiper3 .swiper-pagination-bullet-active {
  background-color: transparent !important;
  color: #fff;
  transform: scale(1.5);
}

.swiper3 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper3 .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 8px 14px !important;
}

.case {
  margin: auto;
}

.case.serviceList {
  width: 700px;
}

.case__wrap {
  margin: auto;
  display: -ms-grid;
  display: grid;
  gap: 30px;
  -ms-grid-columns: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  position: relative;
}

.case__wrap--img {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
}

.case__wrap--img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: top center;
  border-radius: 8px;
  transition: 0.3s;
}

.case__wrap--label {
  display: table;
  font-size: 14px;
  font-weight: 400;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto -14px;
  padding: 1px 20px;
  background: #E8D575;
  border: 1px solid #333;
  border-radius: 50px;
}

.case__wrap--title {
  text-align: center;
  margin-top: 24px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
}

.case__wrap--tag {
  font-size: 10px;
  text-align: center;
  color: #D0B26E;
}

.mosaic {
  margin-top: 64px;
  padding-bottom: 128px;
}

.mosaic__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.mosaic li {
  position: relative;
  margin-top: 64px;
  padding: 64px 0 48px;
}

.mosaic li:before {
  content: "";
  position: absolute;
  background: #f0f0f0;
  border-radius: 0 8px 8px 0;
  margin: 0;
  width: 70%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}

.mosaic li .mosaic__text {
  width: 40%;
  min-height: 500px;
  -ms-flex-order: 1;
  order: 1;
}

.mosaic li .mosaic__text--num {
  display: inline-block;
  font-size: 40px;
  font-family: 'Quicksand', sans-serif;
  color: #82999F;
}

.mosaic li .mosaic__text--num span {
  margin-left: 20px;
  border: 1px solid #82999F;
  border-radius: 30px;
  padding: 1px 18px;
  font-size: 12px;
  font-weight: 700;
  vertical-align: middle;
}

.mosaic li .mosaic__text--title {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.6;
}

.mosaic li .mosaic__text--copy {
  font-size: 24px;
  font-weight: 600;
  margin-top: 10px;
  margin-top: 1rem;
}

.mosaic li .mosaic__text--copy.smallLetter {
  font-size: 16px;
  font-weight: 500;
}

.mosaic li .mosaic__text--desc {
  margin-top: 32px;
}

.mosaic li .mosaic__img {
  width: 55%;
  height: 400px;
  -ms-flex-order: 2;
  order: 2;
}

.mosaic li .mosaic__img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: center center;
  border-radius: 8px;
}

.mosaic li:nth-child(2n) .mosaic__text {
  -ms-flex-order: 2;
  order: 2;
}

.mosaic li:nth-child(2n) .mosaic__img {
  -ms-flex-order: 1;
  order: 1;
}

.mosaic li:nth-child(2n):before {
  border-radius: 8px 0 0 8px;
  right: 0;
  left: initial;
}

.panels {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-line-pack: center;
  align-content: center;
}

.panels__img {
  width: 50%;
  height: 500px;
}

.panels__img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: center center;
}

.panels__text {
  max-width: 1200px;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
}

.panels__text--box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 0 auto;
  width: 50%;
  min-height: 400px;
  padding: 0px 32px 64px 6%;
}

.panels__text--num {
  width: 120px;
  margin-bottom: 24px;
}

.panels__text--title {
  font-size: 24px;
}

.panels__text--desc {
  margin-top: 32px;
  font-size: 16px;
}

.panels2 .panels__img {
  height: 500px;
  margin: 0 0 0 auto;
}

.panels2 .panels__text--box {
  margin: 0 auto 0 0;
  padding: 0px 6% 64px 32px;
}

.contactForm table {
  position: relative;
  width: 800px;
  margin: 64px auto 0;
  border: 7px solid #efefef;
}

.contactForm table:before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/icon-contact.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 110px;
  height: 110px;
  right: 0;
  top: 0;
  margin-top: -80px;
  z-index: 10;
}

.contactForm th {
  width: 30%;
  font-weight: 500;
  border-bottom: 1px solid red;
}

.contactForm th:first-child {
  border-top: 1px solid red;
}

.contactForm td {
  width: 70%;
  border-bottom: 1px solid #ddd;
}

.contactForm td span {
  width: 100%;
}

.contactForm td, .contactForm th {
  padding: 25px;
}

.req .formLbl, .any .formLbl {
  box-sizing: border-box;
  width: 100%;
  display: block;
  position: relative;
  padding-left: 45px;
}

.req .formLbl:before, .any .formLbl:before {
  left: 0;
}

.req .formLbl, .any .formLbl {
  position: relative;
}

.req .formLbl:before, .any .formLbl:before {
  position: absolute;
  color: #fff;
  border-radius: 3px;
  font-size: 13px;
  padding: 2px 5px;
}

.req .formLbl:before {
  content: '必須';
  background-color: #d32f2f;
}

.any .formLbl:before {
  content: '任意';
  background-color: #e7ebf4;
  color: #333;
}

.screen-reader-response {
  display: none;
}

.submitBtn {
  display: table;
  font-size: 16px;
  font-weight: 600;
  margin: 48px auto 64px;
  cursor: pointer;
  padding: 20px 90px;
  color: #fff;
  background: #333;
  border: none;
  border-radius: 6px;
}

textarea,
input[type=text],
input[type=email],
input[type=tel],
input[type=date],
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #333;
  background: none;
  border: 1px solid #ccc;
  border-radius: 6px;
  height: 100%;
  width: 100%;
  font-size: 16px;
  outline: none;
  padding: 10px;
  margin: 10px 0;
  display: block;
}

.selectarea {
  position: relative;
}

.selectarea:after {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 10px 6px 0 6px;
  border-color: #000 transparent transparent transparent;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto 0 auto 268px;
}

.areacss, .zipcode {
  width: 300px !important;
}

:-ms-input-placeholder {
  color: #aaa;
  font-size: 16px;
}

::placeholder {
  color: #aaa;
  font-size: 16px;
}

.wpcf7 form.sent .wpcf7-response-output {
  text-align: center;
  border-color: #333 !important;
  padding: 1.5em;
  font-size: 16px;
}

.wpcf7 form .wpcf7-response-output {
  margin: 2em 96px 1em !important;
  border: 3px solid #333 !important;
  border-radius: 8px;
}

.wpcf7-not-valid-tip {
  font-weight: bold !important;
  margin-top: 6px;
  text-align: right;
}

.FixedFt {
  width: 100%;
  height: 60px;
  z-index: 10;
  background-color: #eaeaea;
}

.FixedFt__top a {
  color: #fff;
  height: 60px;
  width: 60px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  float: right;
  border-radius: 50px;
  margin-right: 12px;
  /*transition: .3s;*/
  margin-bottom: 4px;
}

.Footer {
  background-color: #f0f0f0;
}

.FtSMap {
  position: relative;
  width: 1000px;
  margin: auto;
  padding: 64px 0 32px;
}

.FtSMap__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.FtSMap__logo {
  width: 30%;
}

.FtSMap__logo img {
  width: 150px;
  margin-top: 24px;
}

.FtSMap__menu {
  width: 27%;
  padding: 0 0 0 24px;
  font-size: 14px;
  list-style-image: url(../image/icon/icon_arrow.svg);
}

.FtSMap__menu li {
  margin-bottom: 4px;
}

.FtSMap__btn {
  width: 70%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.Footer__copyYearContainer {
  margin: 12px 0;
}

.Footer__copyYear {
  font-size: 10px;
}

#header {
  width: 100%;
  height: 100px;
  min-width: 1200px;
  position: fixed;
  z-index: 20;
}

.Header {
  background: #fff;
}

.Header__brandName {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  height: 100px;
  position: absolute;
}

.Header__brandName a, .Header__brandName p {
  background-image: url(../image/logo/logo.svg);
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  width: 130px;
  height: 25px;
  margin-left: 30px;
}

.GNav__menuOpenBtn {
  position: absolute;
  z-index: 50;
}

.GNav__menuOpenBtn span {
  background: #333;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  transition: .3s ease-in-out;
}

.GNav__menuBtnMenu {
  color: #fff;
}

.GNav__menuOpenBtn.js_gnavMenu-open span {
  background: #333;
}

.GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(1) {
  transform: rotate(315deg);
}

.GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(2) {
  left: 50%;
  width: 0;
}

.GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(3) {
  transform: rotate(-315deg);
}

.information__navi {
  width: 350px;
  margin: 64px auto 0;
}

.mainVisual {
  height: 100vh;
  width: 100%;
  padding-top: 100px;
  position: relative;
}

.mainVisual:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: #f0f0f0;
  width: 14%;
  height: calc(100vh - 300px);
  margin: 300px 0 0 0;
  border-radius: 0 8px 0 0;
}

.mainVisual:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  background: url(../image/logo/logo.svg) center/contain;
  background-repeat: no-repeat;
  width: 350px;
  height: 65px;
  margin: 0px 0 200px 5%;
}

.mainVisual__img {
  height: 88%;
  margin: 0 0 0 25%;
  position: relative;
  overflow: hidden;
  background: url(../image/bg/hero.svg) center/contain;
  background-repeat: no-repeat;
}

.lead {
  position: relative;
  padding-bottom: 32px;
}

.lead:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: #f0f0f0;
  width: 14%;
  height: 100%;
  z-index: -1;
}

.lead:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background: #f0f0f0;
  width: 14%;
  height: 40%;
  border-radius: 8px 0 0 0;
  z-index: -1;
}

.lead__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
}

.lead__wrap:after {
  content: "";
  background: url(../image/photo/leadImg.svg) center/cover;
  width: 175px;
  height: 200px;
  position: absolute;
  left: 250px;
  bottom: -130px;
}

.lead__text {
  width: 40%;
  padding: 0 80px 0 0;
  font-size: 18px;
  line-height: 2.3;
}

.lead__img {
  width: 60%;
}

.lead__img img {
  border-radius: 30px;
}

.pride {
  padding: 128px 0;
  position: relative;
}

.pride:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: #f0f0f0;
  width: 14%;
  height: 100%;
  z-index: -1;
}

.pride:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background: #f0f0f0;
  width: 14%;
  height: 100%;
  z-index: -1;
}

.pride h2 {
  font-size: 30px;
  font-weight: 500;
  position: relative;
}

.pride h2:before, .pride h2:after {
  content: "";
  display: inline-block;
  background: url(../image/icon/stress.svg) center/contain;
  width: 12px;
  height: 20px;
}

.pride h2:before {
  margin-right: 50px;
}

.pride h2:after {
  margin-left: 50px;
  transform: rotateX(180deg);
}

.pride h3 {
  font-size: 16px;
  font-weight: 500;
}

.pride p {
  font-size: 12px;
  font-weight: 400;
}

.pride__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  margin-top: 48px;
}

.pride__item {
  width: 24%;
  background: #333;
  color: #fff;
  height: 192px;
  border-radius: 50%;
  text-align: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
}

.service {
  position: relative;
  padding-bottom: 128px;
}

.service:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: #f0f0f0;
  width: 14%;
  height: 100%;
}

.service:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background: #f0f0f0;
  width: 14%;
  height: 100%;
  z-index: -1;
}

.service__title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.service__title:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: url(../image/icon/icon-service.svg) center/contain;
  background-repeat: no-repeat;
  width: 130px;
  height: 130px;
  margin: -80px 0 0 -128px;
}

.service h2 {
  font-size: 30px;
  font-weight: 600;
}

.service__wrap {
  margin: 48px auto 0;
  display: -ms-grid;
  display: grid;
  gap: 30px;
  -ms-grid-columns: 1fr 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  position: relative;
}

.service__item--img {
  position: relative;
}

.service__item--img img {
  aspect-ratio: 1 / 1;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  border-radius: 12px;
}

.service__item--title {
  text-align: center;
  margin-top: 24px;
}

.service__item--label {
  display: table;
  font-size: 14px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto -14px;
  padding: 1px 20px;
  background: #E8D575;
  border: 1px solid #333;
  border-radius: 50px;
}

.service__item--tag {
  font-size: 10px;
  text-align: center;
  color: #D0B26E;
}

.customerVoices {
  position: relative;
  padding-top: 80px;
  padding-bottom: 80px;
}

.customerVoices:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background: #f0f0f0;
  width: 14%;
  height: 100%;
  z-index: -1;
}

.customerVoices__wrap {
  display: block;
  position: relative;
  padding: 0 0 64px 12%;
  z-index: 5;
}

.customerVoices h2 {
  font-size: 40px;
  font-weight: 600;
  margin-bottom: 64px;
}

.customerVoices h3 {
  font-size: 28px;
  font-weight: 600;
  margin-bottom: 24px;
}

.customerVoices__text {
  padding: 0 0 0 45%;
  position: relative;
}

.customerVoices__text:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  background: url(../image/icon/icon-voices.svg) center/contain;
  background-repeat: no-repeat;
  width: 129px;
  height: 90px;
  margin: 4px 128px 0 0;
}

.customerVoices:before {
  content: "";
  position: absolute;
  background-image: url(../image/photo/dummy01.jpg);
  background-size: cover;
  border-radius: 0 8px 8px 0;
  width: 45%;
  height: 100%;
  left: 0;
  top: 0;
}

.achievement {
  padding: 128px 0 96px;
  position: relative;
}

.achievement:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background: #f0f0f0;
  width: 14%;
  height: 100%;
  z-index: -1;
}

.achievement__area {
  background: #333;
}

.achievement__title {
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -ms-flex-align: end;
  align-items: end;
  margin: auto;
}

.achievement__title--box {
  margin: 24px auto 16px;
}

.achievement__title img {
  height: 80px;
}

.achievement h2 {
  font-size: 30px;
  font-weight: 600;
  color: #fff;
}

.achievement__btn {
  margin-left: 128px;
}

.subsidy {
  padding-bottom: 64px;
}

.subsidy__wrap {
  position: relative;
}

.subsidy__wrap:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background: #f0f0f0;
  width: 14%;
  height: 100%;
  z-index: -1;
  border-radius: 0 0 0 8px;
}

.subsidy__title {
  position: relative;
}

.subsidy__title:before {
  content: "";
  display: inline-block;
  background-image: url(../image/icon/icon-subsidy.svg);
  background-size: cover;
  width: 120px;
  height: 70px;
  margin: 0 24px 0 0;
}

.subsidy__btn {
  margin: 14px 160px 0 auto;
}

.staff {
  position: relative;
  padding-bottom: 128px;
}

.staff:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: #f0f0f0;
  width: 14%;
  height: 100%;
  z-index: -1;
  border-radius: 0 8px 0 0;
}

.staff:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background: #f0f0f0;
  width: 14%;
  height: 100%;
  z-index: -1;
  border-radius: 8px 0 0 0;
}

.staff__title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.staff__title:before {
  content: "";
  display: inline-block;
  background-image: url(../image/icon/icon-staff.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 60px;
  height: 130px;
  margin: 0 14px 0 0;
}

.staff h2 {
  font-size: 30px;
  font-weight: 600;
}

.staff__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 800px;
  margin: auto;
}

.staff__item {
  width: 245px;
}

.staff__img {
  width: 100%;
  height: 245px;
  position: relative;
}

.staff__img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: center center;
  border-radius: 8px;
}

.staff__text {
  padding: 14px 6px;
}

.staff__text--name {
  font-size: 18px;
  font-weight: 500;
}

.staff__text--desc {
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  padding-top: 10px;
  height: 60px;
}

.message {
  background: url(../image/photo/dummy01.jpg) right/cover;
  width: 100%;
  height: 500px;
  position: relative;
}

.message:before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/message.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 300px;
  height: 80px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: table;
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.message__text {
  display: -ms-flexbox;
  display: flex;
  width: 550px;
  height: 100%;
  background: #333;
  color: #fff;
  padding: 64px;
}

.message__text--box {
  margin: 24px;
}

.message__text--title {
  font-size: 12px;
  font-weight: 400;
}

.message__text--title h2 {
  font-size: 12px;
  display: inline-block;
  padding-left: 14px;
}

.message__text--name {
  font-size: 22px;
  font-weight: 500;
  margin: 64px 0 32px;
}

.message__text--desc {
  font-size: 13px;
  font-weight: 300;
}

.message__btn {
  display: block;
  color: #fff;
  font-weight: 400;
  position: relative;
}

.message__btn:before {
  content: "";
  background-color: #ccc;
  width: 20px;
  height: 1px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

.message__btn:hover {
  color: #fff;
}

.contact {
  padding: 80px 0;
}

.contact .lead {
  font-size: 24px;
  font-weight: 600;
}

.contact p {
  font-size: 14px;
  font-weight: 400;
}

.contact__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 850px;
  margin: auto;
}

.contact__item {
  width: 270px;
  height: 270px;
  background: #fff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 8px;
  line-height: 1.4;
}

.contact__item img {
  width: 110px;
  height: 105px;
}

.contact__tel {
  width: 850px;
  background: #fff;
  border-radius: 8px;
  margin: auto;
}

.contact__tel .beigeBg {
  background: #EFE8DA;
  border-radius: 8px;
}

.contact__tel--wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  padding: 14px 24px;
}

.contact__tel--text {
  margin-right: 48px;
}

.contact__tel--time {
  display: inline-block;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.1;
  text-align: center;
  border: 1px solid #333;
  border-radius: 30px;
  padding: 3px 8px;
  margin-left: 14px;
}

.contact__tel--time span {
  font-size: 10px;
}

.contact__tel p.head {
  font-size: 16px;
  font-weight: 600;
  position: relative;
  margin-bottom: 6px;
}

.contact__tel p.head:before {
  content: "";
  display: inline-block;
  background-image: url(../image/icon/telephone.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 154px;
  height: 18px;
  vertical-align: middle;
  margin: 0 14px 0 0;
}

.contact__tel a {
  font-size: 38px;
  font-weight: 600;
  position: relative;
}

.contact__tel a:before {
  content: "";
  display: inline-block;
  background-image: url(../image/icon/icon-tel.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 24px;
  height: 24px;
  vertical-align: middle;
  margin: 0 14px 0 0;
}

.childHead {
  height: calc(100vh - 300px);
  margin-top: 100px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.childHead__text {
  width: 550px;
  padding-left: 7%;
  margin-top: 10%;
}

.childHead__text h1 {
  font-size: 24px;
  font-weight: 600;
  margin-top: 32px;
  padding-right: 2em;
}

.childHead__text p {
  font-size: 56px;
  line-height: 1.2;
}

.childHead__img {
  width: calc(100% - 550px);
  background: url(../image/bg/childHeadImg.webp) center/cover;
}

.childHead__img.works_singular-hero {
  background: url(../image/bg/works_hero.webp) center/cover;
}

.childHead__img.message-hero {
  background: url(../image/bg/message_hero.webp) center/cover;
}

.childHead__img.company-hero {
  background: url(../image/bg/company_hero.webp) center/cover;
}

.childHead__img.contact-hero {
  background: url(../image/bg/contact_hero.webp) center/cover;
}

.childHead__img.staff-hero {
  background: url(../image/bg/staff_hero.webp) center/cover;
}

.childHead__img.voices-hero {
  background: url(../image/bg/voices_hero.webp) center/cover;
}

.childHead__img.recruit-hero {
  background: url(../image/bg/recruit_hero.webp) center/cover;
}

.childHead__img.pride-hero {
  background: url(../image/bg/pride_hero.webp) center/cover;
}

.childHead__img.voices_singular-hero {
  background: url(../image/bg/customerVoice_hero.webp) center/cover;
}

.childHead__img.custom-hero {
  background: url(../image/bg/custom_hero.webp) center/cover;
}

.childHead__img.reform-hero {
  background: url(../image/bg/reform_hero.webp) center/cover;
}

.childHead__img.renovation-hero {
  background: url(../image/bg/renovation_hero.webp) center/cover;
}

.childHead__img.roof-hero {
  background: url(../image/bg/roof_hero.webp) center/cover;
}

.childHead__img.wall-hero {
  background: url(../image/bg/wall_hero.webp) center/cover;
}

.childHead__img.other-hero {
  background: url(../image/bg/other_hero.webp) center/cover;
}

.childHead__img.works_archive-hero {
  background: url(../image/bg/works_hero-archive.webp) center/cover;
}

.childHead__img.subsidy-hero {
  background: url(../image/bg/subsidy_hero.webp) center/cover;
}

.servicePage {
  background: #f0f0f0;
  position: relative;
}

.servicePage p.head {
  font-size: 30px;
  font-weight: 600;
  position: relative;
  text-align: center;
}

.servicePage p.head:before {
  content: "";
  position: absolute;
  background: url(../image/icon/lineUp.svg) center/contain;
  background-repeat: no-repeat;
  width: 250px;
  height: 250px;
  top: 0;
  left: 0;
  margin: 0 0 0 -50px;
}

.servicePage__lineUp {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  margin: 32px auto 0;
}

.servicePage__item {
  margin: 0 14px 32px;
}

.servicePage__item--img {
  width: 340px;
  height: 180px;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 8px;
  position: relative;
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  transition: 0.3s all;
}

.servicePage__item--img:hover {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.servicePage__item--label {
  display: table;
  margin: 16px auto 8px;
  font-size: 12px;
  font-weight: 600;
  color: #fff;
  background: #AEA691;
  padding: 2px 30px;
  border-radius: 14px;
}

.servicePage__item--title {
  text-align: center;
  font-size: 18px;
}

.servicePage__item--tag {
  display: block;
  height: 66px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  pointer-events: none;
}

.servicePage__imgBox {
  position: relative;
  display: block;
  background: #000;
  border-radius: 8px;
}

.serviceList {
  background: #f0f0f0;
  padding-bottom: 64px;
}

.serviceList__text {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  width: 950px;
  margin: auto;
}

.serviceList__text .sticker {
  content: "";
  position: absolute;
  width: 287px;
  height: 133px;
  top: 0;
  left: 0;
  margin: -160px 0px 0 -63px;
  z-index: 5;
}

.serviceList__text--box {
  width: 62%;
  position: relative;
}

.serviceList__text--box:before {
  content: "";
  position: absolute;
  background: url(../image/icon/serviceList.svg) center/contain;
  background-repeat: no-repeat;
  width: 130px;
  height: 85px;
  top: 0;
  right: 0;
  margin: -24px -114px 0 0;
}

.serviceList__text--title {
  font-size: 30px;
  font-weight: 600;
}

.serviceList__text--desc {
  margin: 24px 0 0;
  font-size: 16px;
  font-weight: 500;
}

.serviceList__text--btn {
  width: 35%;
  margin-top: 48px;
}

.category {
  background: #fff;
  padding: 48px 0;
  height: 200px;
}

.category__category {
  text-align: center;
  font-family: 'Quicksand', sans-serif;
  font-size: 20px;
  color: #666;
}

.category li {
  position: relative;
}

.category__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 750px;
  margin: auto;
}

.category__wrap a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 110px;
  height: 40px;
  padding: 2px 14px;
  font-size: 13px;
  line-height: 1.2;
  text-align: center;
  border-radius: 30px;
  border: 1px solid #555;
  transition: 0.3s;
}

.category__wrap a.noBorder {
  border: none;
}

.category__wrap a:hover {
  transform: translateX(4px);
}

.category__wrap p {
  position: absolute;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  top: 0;
  right: 0;
  margin: -10px -10px 0 0;
  border-radius: 50px;
  font-family: 'Quicksand', sans-serif;
  font-size: 11px;
  font-weight: 600;
  color: #fff;
}

.category__wrap .order p {
  background: #AEA691;
}

.category__wrap .reform p {
  background: #D0B26E;
}

.category__wrap .manson p {
  background: #92AA66;
}

.category__wrap .roof p {
  background: #82999F;
}

.category__wrap .wall p {
  background: #DA9A7D;
}

.category__wrap .other p {
  background: #494949;
}

.point {
  background: #f0f0f0;
  padding: 32px 0 64px;
}

.point p {
  font-family: 'Quicksand', sans-serif;
  color: #AEA691;
  font-size: 34px;
}

.point h2 {
  font-size: 18px;
  font-weight: 500;
}

.point__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  margin: 48px 0 0;
}

.point__item {
  width: 31%;
  height: 750px;
  background: #AEA691;
  padding: 48px;
  color: #fff;
  border-radius: 8px;
}

.point__item--img img {
  border-radius: 8px;
  aspect-ratio: 1 / 1;
  -o-object-fit: cover;
  object-fit: cover;
}

.point__item p {
  font-family: 'Quicksand', sans-serif;
  color: #fff;
  font-size: 16px;
}

.point__item--icon {
  width: 60px;
  height: 60px;
  margin: 0 auto 32px;
}

.point__item--title {
  font-size: 20px;
  line-height: 1.4;
  margin-top: 24px;
  height: 65px;
}

.point__item--desc {
  font-size: 15px;
  margin: 24px 0 32px;
  height: 180px;
}

.point__item--img {
  border-radius: 8px;
}

.example {
  background: #f0f0f0;
}

.example__wrap {
  width: 900px;
  margin: auto;
  display: -ms-grid;
  display: grid;
  gap: 25px;
  -ms-grid-columns: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
}

.example__item {
  padding-bottom: 24px;
}

.example__img {
  width: 100%;
  height: auto;
  border-radius: 4px;
  position: relative;
}

.example__img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: center center;
  border-radius: 100px;
}

.example__img a {
  height: 180px;
  width: 100%;
  position: relative;
  display: block;
  z-index: 1;
}

.example__img .newIcon {
  position: absolute;
  top: 0;
  left: 0;
  width: 52px;
  height: 52px;
}

.example__label {
  position: absolute;
  display: table;
  color: #333;
  background: #fff;
  border: 1px solid #333;
  border-radius: 30px;
  padding: 2px 10px;
  width: 80px;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto -12px;
}

.example__text {
  text-align: center;
  margin: 24px 0 0;
}

.example__text h2 {
  font-size: 16px;
}

.others__lead {
  width: 550px;
  position: relative;
  margin: 250px auto 0;
}

.others__lead:before {
  content: "";
  position: absolute;
  background: url(../image/icon/icon-others.svg) center/contain;
  background-repeat: no-repeat;
  width: 400px;
  height: 370px;
  top: 0;
  right: 0;
  margin: -240px -240px 0 0;
}

.staffPage {
  margin-top: 114px;
  padding-bottom: 128px;
}

.staffPage__wrap {
  display: -ms-grid;
  display: grid;
  gap: 30px;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  margin: 48px 0 0;
}

.staffPage__wrap li {
  width: 90%;
  /*height: 720px;*/
  position: relative;
}

.staffPage__wrap li:after {
  content: "";
  position: absolute;
  width: 100px;
  height: 100px;
  top: 0;
  right: 0;
  margin: 570px 0px 70px 0;
}

.staffPage__wrap li:first-child:after {
  background: url(../image/icon/icon-staff01.svg) center/contain;
}

.staffPage__wrap li:nth-child(2):after {
  background: url(../image/icon/icon-staff02.svg) center/contain;
}

.staffPage__wrap li:nth-child(3):after {
  background: url(../image/icon/icon-staff03.svg) center/contain;
}

.staffPage__wrap li:nth-child(4):after {
  background: url(../image/icon/icon-staff04.svg) center/contain;
}

.staffPage__wrap li:nth-child(5):after {
  background: url(../image/icon/icon-staff01.svg) center/contain;
}

.staffPage__wrap li dl {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 24px;
  line-height: 1.4;
  font-weight: 400;
}

.staffPage__wrap li dt {
  width: 20%;
  padding: 0 20px 0 0;
  margin-top: 6px;
  text-align: right;
}

.staffPage__wrap li dt p {
  font-size: 10px;
  font-weight: 400;
  position: relative;
  border-bottom: 1px solid #333;
  display: inline-block;
}

.staffPage__wrap li dd {
  width: 70%;
  padding: 8px 0;
}

.staffPage__wrap li:nth-child(even) {
  margin-top: 90px;
}

.staffPage__label {
  background: #BFA987;
  color: #fff;
  font-size: 16px;
  line-height: 1.6;
  display: inline-block;
  padding: 2px 14px;
  width: 280px;
  border-radius: 30px;
  margin-bottom: 24px;
}

.staffPage__img {
  width: 100%;
  height: 500px;
  border-radius: 4px;
  position: relative;
}

.staffPage__img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: center center;
  border-radius: 4px;
}

.president {
  background: #BEC5C8;
  margin: 80px 0 0;
  padding: 128px 0;
}

.president__img img {
  width: 100%;
  height: 450px;
  -o-object-fit: cover;
  object-fit: cover;
}

.president__text {
  text-align: center;
  font-size: 18px;
  font-weight: 400;
  margin-top: 96px;
}

.contactForm {
  background: #fff;
  margin-top: 200px;
}

.contactForm__img {
  width: 300px;
  height: auto;
  margin: auto;
  position: relative;
}

.contactForm__img:before {
  content: "";
  position: absolute;
  background: url(../image/icon/contact-img.svg) center/contain;
  background-repeat: no-repeat;
  width: 220px;
  height: 220px;
  top: 0;
  left: 0;
  margin: -80px 0 0 -120px;
}

.company__wrap {
  background: #E0E7E7;
  border-radius: 14px;
  padding-bottom: 64px;
  margin-top: 200px;
}

.company__profile {
  display: -ms-flexbox;
  display: flex;
  padding: 64px 64px 48px;
}

.company__profile--head {
  width: 20%;
}

.company__profile--label {
  color: #52727A;
  background: #fff;
  font-size: 12px;
  padding: 4px 14px;
  border-radius: 30px;
  display: inline-block;
}

.company__profile--title {
  margin-top: 24px;
}

.company__profile--list {
  width: 80%;
}

.company__profile--list div {
  border-bottom: 1px solid #82999F;
  padding: 24px 0;
  display: -ms-flexbox;
  display: flex;
}

.company__profile--list dt {
  width: 20%;
  color: #52727A;
  padding: 0 0 0 32px;
}

.company__profile--list dt h2 {
  font-size: 16px;
}

.company__profile--list dd {
  width: 80%;
}

.company__map {
  padding: 32px 64px 0;
  height: 400px;
}

.recruitPage .leadBox {
  -ms-flex-direction: column;
  flex-direction: column;
}

.recruitPage__img {
  width: 300px;
  height: auto;
  margin: auto;
}

.jobBox {
  margin: 48px 0 96px;
}

.jobBox__wrap {
  border-radius: 14px;
  margin-bottom: 48px;
  background: #E0E7E7;
}

.jobBox__wrap:nth-child(even) {
  background: #EFE8DA;
}

.jobBox__wrap:nth-child(even)__profile--list dt {
  color: #D0B26E;
}

.jobBox__profile {
  display: -ms-flexbox;
  display: flex;
  padding: 64px 64px 48px;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.jobBox__profile--head {
  width: 16%;
  position: relative;
}

.jobBox__profile--head:before {
  content: "";
  position: absolute;
  background: url(../image/icon/icon-subsidy.svg) center/contain;
  width: 100px;
  height: 50px;
  top: 0;
  left: 0;
  margin: 100px 0 0 -10px;
}

.jobBox__profile--label {
  color: #52727A;
  background: #fff;
  font-size: 12px;
  padding: 4px 14px;
  border-radius: 30px;
  display: table;
  margin: auto;
}

.jobBox__profile--title {
  margin-top: 24px;
  font-size: 16px;
  text-align: center;
}

.jobBox__profile--list {
  width: 80%;
}

.jobBox__profile--list div {
  border-bottom: 1px solid #82999F;
  padding: 24px 0;
  display: -ms-flexbox;
  display: flex;
}

.jobBox__profile--list div:last-child {
  border-bottom: none;
}

.jobBox__profile--list dt {
  width: 22%;
  color: #52727A;
  padding: 0 0 0 20px;
}

.jobBox__profile--list dt h3 {
  font-size: 16px;
}

.jobBox__profile--list dd {
  width: 78%;
}

.jobBox__map {
  padding: 32px 64px 0;
  height: 400px;
}

.entry__phoneWrap {
  background: #F0F0F0;
  border-radius: 8px;
  margin: 14px 2.5%;
  padding: 32px 0;
}

.entry__phone {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 0 0 0px;
}

.entry__phone--head {
  position: relative;
  font-weight: 600;
  padding-left: 84px;
}

.entry__phone--head img {
  width: 70%;
  margin-top: 6px;
}

.entry__phone--head:before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/tel.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 90px;
  height: 90px;
  top: 0;
  left: 0;
  margin: -17px 0 0 -16px;
}

.entry__phone--num {
  font-size: 30px;
  position: relative;
}

.entry__phone--num:before {
  content: "";
  display: inline-block;
  position: relative;
  background-image: url(../image/icon/icon-entry_phone.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 40px;
  height: 15px;
  vertical-align: middle;
  margin-right: 24px;
}

.entry__phone--label {
  font-size: 10px;
  line-height: 1.3;
  text-align: center;
  border: 1px solid #333;
  padding: 1px 5px;
  border-radius: 30px;
  display: table;
}

.entry__mailWrap {
  background: #F0F0F0;
  border-radius: 8px;
  margin: 14px 2.5%;
  padding: 32px 0;
}

.entry__mail {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: start;
  align-items: flex-start;
  padding-left: 80px;
}

.entry__mail--head {
  width: 25%;
  position: relative;
}

.entry__mail--head:before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/icon-entry_mail.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 56px;
  height: 40px;
  top: 0;
  left: 0;
  margin: 6px 0 0 -75px;
}

.entry__mail--head img {
  width: 22%;
  margin-top: 6px;
}

.entry__mail--head p {
  font-size: 12px;
  line-height: 1.6;
  margin-top: 12px;
}

.entry__mail--form {
  width: 70%;
}

.entry__mail--form table {
  width: 100%;
}

.entry__mail--form .formBox {
  display: inline-block;
  position: relative;
}

.entry__mail--form .formBox:before {
  content: "";
  position: absolute;
  background-color: #ccc;
  width: 20px;
  height: 1px;
  top: 0;
  bottom: 0;
  margin: auto 0 auto 24px;
  display: block;
}

.entry__mail--form .formBox:after {
  position: absolute;
  content: "";
  background-image: url(../image/icon/tri.svg);
  background-size: contain;
  background-repeat: no-repeat;
  top: 0;
  right: -14px;
  height: 45px;
  width: 15px;
}

.entry__mail--form input[type="submit"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  display: table;
  height: 45px;
  width: 150px;
  border-radius: 3px 0 0 3px;
  background: #333;
  color: #fff;
  padding: 9px 20px 9px 32px;
  font-size: 14px;
  font-weight: 500;
  outline: none;
  border: none;
  margin: 0;
}

.entry__mail--form textarea,
.entry__mail--form input[type=text],
.entry__mail--form input[type=email],
.entry__mail--form input[type=tel],
.entry__mail--form input[type=date],
.entry__mail--form select {
  border: none;
  border-radius: initial;
  font-size: 16px;
  padding: 14px;
  margin: 10px 0;
}

.entry__mail--form :-ms-input-placeholder {
  color: #aaa;
  font-size: 14px;
}

.entry__mail--form ::placeholder {
  color: #aaa;
  font-size: 14px;
}

.entry__mail--form span.wpcf7-spinner {
  display: none;
}

.entry__mail--form .wpcf7-form-control-wrap {
  position: relative;
  background: #fff;
  display: block;
}

.works {
  background: #333;
  position: relative;
  padding: 0 0 160px;
}

.works:before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/icon-works.svg);
  background-size: cover;
  width: 550px;
  height: 175px;
  top: 0;
  left: 0;
  margin: -174px 0 0;
}

.works__list {
  display: -ms-grid;
  display: grid;
  gap: 20px;
  -ms-grid-columns: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  margin: 24px 0;
}

.works__card {
  background: #494949;
  color: #fff;
  padding: 14px;
  border-radius: 8px;
}

.works__card--img {
  width: 100%;
  height: auto;
  border-radius: 4px;
  position: relative;
}

.works__card--img span {
  display: block;
  height: 420px;
  background-size: cover;
  background-position: center center;
  border-radius: 8px;
}

.works__card a {
  height: 450px;
  width: 100%;
  position: relative;
  display: block;
  z-index: 1;
}

.works__card--desc {
  margin-top: 0px;
  font-size: 16px;
}

.works__card--date {
  font-size: 12px;
  font-weight: 400;
  color: #aaa;
  margin: 24px 0 20px;
}

.worksDetail {
  background: #333;
  padding-bottom: 80px;
  position: relative;
}

.worksDetail:before {
  content: "";
  position: absolute;
  background-image: url(../image/icon/icon-works.svg);
  background-size: cover;
  width: 550px;
  height: 175px;
  top: 0;
  left: 0;
  margin: -174px 0 0;
}

.worksDetail__wrap {
  padding: 0 48px 80px;
}

.worksDetail__img {
  width: 100%;
  height: 500px;
  position: relative;
}

.worksDetail__img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: center center;
}

.worksDetail__text {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  color: #fff;
  margin-top: 64px;
  font-weight: 400;
}

.worksDetail__text dt {
  width: 25%;
  margin-bottom: 14px;
}

.worksDetail__text dt h3 {
  font-size: 16px;
  font-weight: 500;
}

.worksDetail__text dd {
  width: 75%;
}

.worksDetail__btn {
  background: #494949;
  color: #fff;
  padding: 20px;
  width: 500px;
  display: table;
  margin: 24px auto 0;
  border-radius: 50px;
}

.worksDetail__btn:hover {
  background: #92AA66;
  color: #fff;
}

.worksDetail__titleBar {
  width: 900px;
  margin: auto;
  padding: 0 10px;
  border-top: 1px solid #777;
  border-bottom: 1px solid #777;
  height: 64px;
  margin-bottom: 64px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: end;
  align-items: flex-end;
}

.worksDetail__titleBar p {
  color: #fff;
  font-size: 14px;
  position: relative;
  /*&:before {
				content: "";
			    display: inline-block;
			    background-image: url(../image/icon/icon-oh.svg);
			    background-size: cover;
			    width: 57px;
			    height: 32px;
			    vertical-align: bottom;
    			margin-right: 16px;
			}
			span {
				font-size: 14px;;
				color: #777;
				margin-left: 18px;
			}*/
}

.worksDetail__titleBar .shareBox a {
  display: inline-block;
  margin: 0 6px 14px;
}

.worksDetail__titleBar .shareBox div {
  display: inline;
  color: #777;
  font-size: 12px;
}

.pridePage__leadBox {
  margin: 128px auto 0;
  width: 1200px;
}

.pridePage__wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

.pridePage__wrap--text {
  width: 75%;
}

.pridePage__wrap--img {
  padding: 48px;
}

.voicesDetail {
  background: #f0f0f0;
  padding-bottom: 96px;
}

.voicesDetail__num {
  display: inline-block;
  font-size: 40px;
  font-family: 'Quicksand', sans-serif;
  color: #82999F;
}

.voicesDetail__num span {
  margin-left: 20px;
  border: 1px solid #82999F;
  border-radius: 30px;
  padding: 1px 18px;
  font-size: 12px;
  font-weight: 700;
  vertical-align: middle;
}

.voicesDetail__title {
  font-size: 20px;
}

.voicesDetail__copy {
  font-size: 24px;
  font-weight: 600;
  margin-top: 10px;
  margin-top: 1rem;
}

.voicesPoint {
  background: #fff;
  margin: 96px 32px 0 0;
  padding: 80px 0;
  border-radius: 0 8px 8px 0;
}

.voicesPoint__wrap {
  display: -ms-grid;
  display: grid;
  gap: 64px;
  -ms-grid-columns: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  padding: 0 0px 0 32px;
}

.voicesPoint__wrap--item {
  -ms-grid-row: span 4;
  grid-row: span 4;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: subgrid;
  grid-template-rows: subgrid;
  gap: 10px;
  gap: 1rem;
}

.voicesPoint__wrap--num {
  padding: 0 64px 14px;
}

.voicesPoint__wrap--title {
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.6;
}

.voicesPoint__wrap--img span {
  display: block;
  background-size: cover;
  background-position: center center;
  border-radius: 8px;
  aspect-ratio: 1 / 1;
  -o-object-fit: cover;
  object-fit: cover;
}

.voicesPoint__wrap--desc {
  font-size: 14px;
  padding-top: 8px;
}

.otherVoice {
  background: #f0f0f0;
  padding-bottom: 32px;
}

.otherVoice__other {
  text-align: center;
  font-size: 26px;
  color: #D0B26E;
}

.subsidyPage {
  padding-bottom: 64px;
}

.subsidyPage__lead {
  width: 400px;
  position: relative;
  margin: 250px auto 0;
}

.subsidyPage__lead:before {
  content: "";
  position: absolute;
  background: url(../image/icon/subsidy-img.svg) center/contain;
  background-repeat: no-repeat;
  width: 350px;
  height: 400px;
  top: 0;
  right: 0;
  margin: -150px -300px 0 0;
}

.subsidyPage__lead img {
  aspect-ratio: 1/1;
  -o-object-fit: cover;
  object-fit: cover;
}

.subsidyPage__wrap {
  position: relative;
  display: -ms-grid;
  display: grid;
  gap: 14px;
  -ms-grid-columns: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  margin-top: 48px;
}

.subsidyPage__item {
  background: #E8D575;
  padding: 24px 14px 14px;
  border-radius: 8px;
}

.subsidyPage__item--title {
  text-align: center;
  font-size: 16px;
  font-weight: 500;
}

.subsidyPage__item--img {
  height: 200px;
  margin: 14px 0;
}

.subsidyPage__item--img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: center center;
  border-radius: 8px;
}

.subsidyPage__year {
  position: absolute;
  left: -140px;
  border: 1px solid #aeaeae;
  padding: 24px;
  font-size: 14px;
}

.subsidyDetail {
  padding-bottom: 80px;
}

.subsidyDetail__wrap {
  padding: 0 48px 64px;
}

.subsidyDetail__img {
  width: 100%;
  height: 500px;
  position: relative;
}

.subsidyDetail__img span {
  display: block;
  height: 100%;
  background-size: cover;
  background-position: center center;
}

.subsidyDetail__text {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 64px;
  font-weight: 400;
}

.subsidyDetail__text dt {
  width: 23%;
  margin-bottom: 24px;
}

.subsidyDetail__text dt h2 {
  font-size: 16px;
  font-weight: 500;
}

.subsidyDetail__text dd {
  width: 77%;
  padding-bottom: 14px;
}

.subsidyDetail__text dd li {
  padding-bottom: 24px;
}

.otherPage {
  padding-bottom: 128px;
  /*&__wrap {
		display: grid;
		gap: 14px;
 		grid-template-columns: 1fr 1fr 1fr;
 		margin-top: 48px;	
	}
	&__item {
		background: #E8D575;
	    padding: 24px 14px 14px;
	    border-radius: 8px;
		&--title {
			text-align: center;
		}
		&--img {
			height: 200px;
			margin: 14px 0;
			span {
				display: block;
				height: 100%;
				background-size: cover;
				background-position: center center;
				border-radius: 8px;
			}
		}
	}*/
}

.otherPage__lead {
  width: 400px;
  position: relative;
  margin: 150px auto 0;
}

.otherPage__lead:before {
  content: "";
  position: absolute;
  background: url(../image/icon/other-img.svg) center/contain;
  background-repeat: no-repeat;
  width: 400px;
  height: 400px;
  top: 0;
  right: 0;
  margin: -150px -300px 0 0;
}

.otherPage__lead img {
  aspect-ratio: 1/1;
  -o-object-fit: cover;
  object-fit: cover;
}

.messagePage__lead {
  font-size: 16px;
  font-weight: 500;
  line-height: 3;
}

@media screen and (max-width: 767px) {
  .mtXS, .mtXSSp {
    margin-top: 4px !important;
  }
  .mtS, .mtSSp {
    margin-top: 8px !important;
  }
  .mtM, .mtMSp {
    margin-top: 16px !important;
  }
  .mtL, .mtLSp {
    margin-top: 32px !important;
  }
  .mtXL, .mtXLSp {
    margin-top: 48px !important;
  }
  .mtXXL, .mtXXLSp {
    margin-top: 64px !important;
  }
  .mbXS, .mbXSSp {
    margin-bottom: 4px !important;
  }
  .mbS, .mbSSp {
    margin-bottom: 8px !important;
  }
  .mbM, .mbMSp {
    margin-bottom: 16px !important;
  }
  .mbL, .mbLSp {
    margin-bottom: 32px !important;
  }
  .mbXL, .mbXLSp {
    margin-bottom: 48px !important;
  }
  .mbXXL, .mbXXLSp {
    margin-bottom: 64px !important;
  }
  .mlXS, .mlXSSp {
    margin-left: 4px !important;
  }
  .mlS, .mlSSp {
    margin-left: 8px !important;
  }
  .mlM, .mlMSp {
    margin-left: 16px !important;
  }
  .mlL, .mlLSp {
    margin-left: 32px !important;
  }
  .mlXL, .mlXLSp {
    margin-left: 48px !important;
  }
  .mrXS, .mrXSSp {
    margin-right: 4px !important;
  }
  .mrS, .mrSSp {
    margin-right: 8px !important;
  }
  .mrM, .mrMSp {
    margin-right: 16px !important;
  }
  .mrL, .mrLSp {
    margin-right: 32px !important;
  }
  .mrXL, .mrXLSp {
    margin-right: 48px !important;
  }
  .ptXS, .ptXSSp {
    padding-top: 4px !important;
  }
  .ptS, .ptSSp {
    padding-top: 8px !important;
  }
  .ptM, .ptMSp {
    padding-top: 16px !important;
  }
  .ptL, .ptLSp {
    padding-top: 32px !important;
  }
  .ptXL, .ptXLSp {
    padding-top: 48px !important;
  }
  .pbXS, .pbXSSp {
    padding-bottom: 4px !important;
  }
  .pbS, .pbSSp {
    padding-bottom: 8px !important;
  }
  .pbM, .pbMSp {
    padding-bottom: 16px !important;
  }
  .pbL, .pbLSp {
    padding-bottom: 32px !important;
  }
  .pbXL, .pbXLSp {
    padding-bottom: 48px !important;
  }
  .pbXXL, .pbXXLSp {
    padding-bottom: 64px !important;
  }
  body {
    line-height: 1.6 !important;
  }
  .hideSp {
    display: none !important;
  }
  .textXS, .textXSSp {
    font-size: 1.2rem;
  }
  .textS, .textSSp {
    font-size: 1.4rem;
  }
  .textM, .textMSp {
    font-size: 1.6rem;
  }
  .textL, .textLSp {
    font-size: 1.8rem;
  }
  .textXL, .textXLSp {
    font-size: 2.2rem;
  }
  .textXXL, .textXXLSp {
    font-size: 2.4rem;
  }
  .taLSp {
    text-align: left !important;
  }
  .taCSp {
    text-align: center !important;
  }
  .taRSp {
    text-align: right !important;
  }
  .wedgeBtn {
    height: 35px;
    padding: 4px 18px;
    color: #fff;
  }
  .wedgeBtn:after {
    height: 35px;
  }
  .wedgeBtn__white {
    color: #333;
  }
  .fixedBtn {
    top: 60px;
    right: 5px;
    padding: 4px 0;
  }
  .ovalBtn {
    width: 100%;
    margin: 14px auto 0;
    padding: 14px;
  }
  .fLSp {
    float: left;
  }
  .fRSp {
    float: right;
  }
  .flexBoxSp {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .gridBoxSp {
    display: -ms-grid;
    display: grid;
  }
  .contentBox, .contentBoxSp,
  .contentBoxS, .contentBoxSSp,
  .contentBoxM, .contentBoxMSp,
  .contentBoxL, .contentBoxLSp {
    margin-left: 3.5% !important;
    margin-right: 3.5% !important;
  }
  .leadBox {
    height: 120px;
    padding: 0 24px;
  }
  .leadBox p {
    font-size: 14px;
    line-height: 1.6;
  }
  .breadcrumb {
    display: none;
  }
  .cmnTtl__type1 {
    font-size: 26px;
  }
  .cmnTtl__type1 span {
    font-size: 12px;
  }
  .cmnTtl__type4 {
    font-size: 18px;
    padding: 0 0 14px;
  }
  .cmnTtl__type4:after {
    width: 40px;
  }
  .cmsContents h1 {
    font-size: 2.4rem;
  }
  .cmsContents h2 {
    font-size: 1.8rem;
  }
  .cmsContents h3 {
    font-size: 1.8rem;
  }
  .cmsContents h4 {
    font-size: 1.6rem;
  }
  .cmsContents h5 {
    font-size: 16px;
  }
  .cmsContents h6 {
    font-size: 1.6rem;
  }
  .cmsContents p {
    font-size: 16px;
  }
  .cmsContents ul {
    font-size: 1.6rem;
  }
  .cmsContents ol {
    font-size: 1.6rem;
  }
  .cmsContents dl {
    font-size: 1.6rem;
  }
  .cmsContents blockquote {
    padding: 24px 16px;
  }
  .cmsContents table {
    font-size: 1.6rem;
  }
  .nav-below {
    padding: 0;
    margin-bottom: 16px;
  }
  .nav-next {
    text-align: right;
  }
  .wp-pagenavi {
    margin-top: 32px;
  }
  .wp-pagenavi a, .wp-pagenavi span {
    height: 36px;
    line-height: 28px;
  }
  .wp-pagenavi .current {
    line-height: 27px;
  }
  .swiper1, .swiper4, .swiper5 {
    /* ページネーションの余白(位置) */
  }
  .swiper1 .swiper-wrapper, .swiper4 .swiper-wrapper, .swiper5 .swiper-wrapper {
    height: 370px !important;
    padding-bottom: 94px;
  }
  .swiper1 .swiper__box, .swiper4 .swiper__box, .swiper5 .swiper__box {
    padding: 14px;
  }
  .swiper1 .swiper__box--text, .swiper4 .swiper__box--text, .swiper5 .swiper__box--text {
    padding: 14px 10px;
  }
  .swiper1 .swiper__box--img, .swiper4 .swiper__box--img, .swiper5 .swiper__box--img {
    height: 200px;
  }
  .swiper1 .swiper__box--icon, .swiper4 .swiper__box--icon, .swiper5 .swiper__box--icon {
    width: 50px;
  }
  .swiper1 .swiper__box h3, .swiper4 .swiper__box h3, .swiper5 .swiper__box h3 {
    margin-top: 14px;
  }
  .swiper1 .swiper__box p, .swiper4 .swiper__box p, .swiper5 .swiper__box p {
    bottom: 14px;
  }
  .swiper1 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper1 .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet, .swiper4 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper4 .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet, .swiper5 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper5 .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 5px 30px !important;
  }
  .swiper4 .swiper-wrapper {
    height: 320px !important;
    padding-bottom: 24px;
  }
  .swiper4 .swiper__box--img {
    height: 150px;
  }
  .swiper4 .swiper__box h3 {
    font-size: 14px;
    margin-top: 14px;
  }
  .swiper4 .swiper__box--icon {
    width: 40px;
  }
  .swiper4 .swiper__box p {
    font-size: 10px;
    bottom: 14px;
  }
  .swiper5Area .swiper-button-prev, .swiper5Area .swiper-button-next {
    margin: 80px auto 0;
  }
  .swiper5Area .swiper-button-prev,
  .swiper5Area .swiper-button-next {
    height: 40px;
    width: 40px;
  }
  .swiper5Area .swiper-button-prev:after,
  .swiper5Area .swiper-button-next:after {
    height: 40px;
    width: 40px;
  }
  .swiper5Area .swiper-button-prev:after {
    margin-left: 0;
  }
  .swiper5Area .swiper-button-next:after {
    margin-right: 0;
  }
  .swiper5 .swiper-wrapper {
    padding-bottom: 48px;
    height: 300px !important;
  }
  .swiper5 .swiper__box--img {
    height: 200px;
  }
  .swiper5 .swiper__box h3 {
    margin: 14px 0;
    font-size: 14px;
    line-height: 1.6;
  }
  .swiper5 .swiper__box p {
    line-height: 1.4;
  }
  .swiper2 .swiper-wrapper {
    height: 180px !important;
    padding: 24px 0 96px 0;
  }
  .swiper2 .swiper__box {
    padding: 0;
  }
  .swiper2 .swiper__box--text {
    padding: 0;
  }
  .swiper2 .swiper__box--icon {
    width: 65px;
    height: auto;
  }
  .swiper2 .swiper__box h3 {
    margin-top: 24px;
  }
  .swiper2 .swiper__box p {
    bottom: 0;
  }
  .swiper2 .swiper-slide:nth-child(2n) {
    height: 100%;
  }
  .swiper2Area .swiper-button-prev, .swiper2Area .swiper-button-next {
    margin: 80px auto 0;
  }
  .swiper2Area .swiper-button-prev,
  .swiper2Area .swiper-button-next {
    height: 40px;
    width: 40px;
  }
  .swiper2Area .swiper-button-prev:after,
  .swiper2Area .swiper-button-next:after {
    height: 40px;
    width: 40px;
  }
  .swiper2Area .swiper-button-prev:after {
    margin-left: 0;
  }
  .swiper2Area .swiper-button-next:after {
    margin-right: 0;
  }
  .swiper3 {
    padding: 32px 0 0;
  }
  .swiper3 .swiper-wrapper {
    height: 250px !important;
    padding-bottom: 80px;
  }
  .swiper3 .swiper__box {
    width: 100%;
  }
  .swiper3 .swiper__box--text {
    padding: 14px 10px;
  }
  .swiper3 .swiper__box--img {
    height: 250px;
  }
  .swiper3 .swiper__box--img span {
    border-radius: 8px 8px 0 8px;
  }
  .swiper3 .swiper__box--icon {
    width: 50px;
  }
  .swiper3 .swiper__box h3 {
    margin-top: 14px;
  }
  .swiper3 .swiper__box p {
    bottom: 14px;
  }
  .swiper3 .swiper-pagination {
    width: 67% !important;
    height: 100px;
    margin: 0 0 14px 0;
    padding-top: 100px;
  }
  .swiper3 .swiper-pagination-bullet {
    font-size: 15px;
    height: 20px;
    width: 20px;
  }
  .case {
    margin: auto;
  }
  .case.serviceList {
    width: 100%;
  }
  .case__wrap {
    gap: 14px;
  }
  .case__wrap--label {
    font-size: 12px;
    padding: 1px 14px;
    width: 94px;
    text-align: center;
  }
  .case__wrap--title {
    margin-top: 20px;
  }
  .mosaic {
    margin-top: 0;
    padding-bottom: 14px;
  }
  .mosaic__wrap {
    display: block;
  }
  .mosaic li {
    margin: 0 0 32px;
    padding: 14px 0 24px;
  }
  .mosaic li:before {
    width: 80%;
  }
  .mosaic li .mosaic__text {
    width: 100%;
    min-height: initial;
  }
  .mosaic li .mosaic__text--title {
    font-size: 18px;
  }
  .mosaic li .mosaic__text--copy {
    font-size: 22px;
  }
  .mosaic li .mosaic__text--desc {
    margin-top: 24px;
  }
  .mosaic li .mosaic__img {
    width: 78%;
    height: 300px;
    margin-top: 24px;
  }
  .mosaic li:nth-child(2n) .mosaic__img {
    margin: 24px 0 0 auto;
  }
  .panels {
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .panels__img {
    width: 100%;
    height: 250px;
    -ms-flex-order: 2;
    order: 2;
    margin-top: 14px;
  }
  .panels__text {
    -ms-flex-order: 1;
    order: 1;
    max-width: initial;
    position: relative;
  }
  .panels__text--box {
    width: 100%;
    padding: 0 32px;
  }
  .panels__text--num {
    width: 90px;
    margin-bottom: 14px;
  }
  .panels__text--title {
    font-size: 22px;
    line-height: 1.6;
  }
  .panels__text--desc {
    margin-top: 14px;
  }
  .panels2 .panels__img {
    height: 250px;
    margin: 0 0 0 auto;
  }
  .panels2 .panels__text--box {
    height: auto;
    margin: auto;
    padding: 14px 8%;
  }
  .contactForm table {
    width: 100%;
  }
  .contactForm table:before {
    width: 100px;
    height: 100px;
  }
  .contactForm th {
    padding: 15px 0px 5px 10px;
    display: block;
    width: 100%;
    border: none;
  }
  .contactForm th:first-child {
    border-top: none;
  }
  .contactForm td {
    padding: 0px 14px 6px;
    width: 100%;
    height: auto;
    display: block;
  }
  .contactForm td.textArea {
    padding: 10px 14px 8px;
  }
  .submitBtn {
    margin: 32px auto 0px;
    padding: 15px 64px;
  }
  .FixedFt__top a {
    height: 45px;
    width: 45px;
  }
  .Footer {
    padding-top: 48px;
  }
  .FtSMap {
    width: 100%;
    padding: 0px 5% 32px;
  }
  .FtSMap__wrap {
    display: block;
  }
  .FtSMap__logo {
    width: 100%;
    line-height: 1.6;
    margin-bottom: 20px;
  }
  .FtSMap__logo img {
    margin-top: 14px;
  }
  .FtSMap__menu {
    width: 100%;
    padding: 0 0 0 14px;
  }
  .FtSMap__btn {
    width: initial;
  }
  #header {
    height: 60px;
    min-width: initial;
  }
  .Header {
    background: none;
  }
  .Header__brandName {
    height: 60px;
    width: 100%;
    background: #fff;
    opacity: 0.8;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    z-index: 10;
  }
  .Header__brandName a, .Header__brandName p {
    width: 110px;
    height: 22px;
    margin: auto;
  }
  .GNav__menuOpenBtn {
    height: 60px;
    right: 0;
    top: 0;
    width: 60px;
  }
  .GNav__menuOpenBtn span {
    height: 2px;
    left: calc(50% - 12px);
  }
  .GNav__menuOpenBtn span:nth-child(1) {
    top: 22px;
    width: 24px;
  }
  .GNav__menuOpenBtn span:nth-child(2) {
    top: 28px;
    width: 24px;
  }
  .GNav__menuOpenBtn span:nth-child(3) {
    top: 34px;
    width: 24px;
  }
  .GNav__menuBtnMenu {
    bottom: 4px;
    font-size: 10px;
    position: absolute;
    text-align: center;
    width: 100%;
  }
  .GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(1) {
    top: 28px;
    width: 24px;
    left: 18px;
  }
  .GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(3) {
    top: 28px;
    width: 24px;
    left: 18px;
  }
  .GNav__menuCloseBtn {
    height: 60px;
    right: 0;
    top: 0;
    width: 60px;
    position: absolute;
    z-index: 50;
  }
  .GNav__menu {
    display: none;
    height: 100vh;
    overflow-y: scroll;
    background-color: #fff;
  }
  .GNav__menu .mainMenu {
    margin-top: 64px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -ms-flex-direction: column;
    flex-direction: column;
    align-items: center;
  }
  .GNav__menu .mainMenu__list {
    position: relative;
  }
  .GNav__menu .mainMenu__list > a {
    display: block;
    text-align: center;
    cursor: pointer;
    font-weight: 500;
    font-size: 18px;
    padding: 20px 18px;
  }
  .GNav__menu .mainMenu__list > a span {
    font-size: 12px;
    color: #333;
    font-family: 'Quicksand';
  }
  .GNav__menu .mainMenu__list > a.number {
    line-height: 1;
  }
  .GNav__menu .mainMenu__list:after {
    content: '';
    background-color: #ccc;
    position: absolute;
    display: block;
    width: 30px;
    height: 1px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 14px auto 0px;
  }
  .GNav__menu .mainMenu .topMenu > .toggleBtn {
    position: absolute;
    display: block;
    width: 135px;
    height: 35px;
    top: 22px;
    right: 0;
  }
  .GNav__menu .mainMenu .topMenu > .toggleBtn:before {
    content: '';
    width: 25px;
    height: 25px;
    background-image: url(../image/icon/icon_arrow-dn.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    transition: 0.3s;
    top: 0;
    bottom: 0;
    right: 0;
  }
  .GNav__menu .mainMenu .topMenu > .toggleBtn.active:before {
    background-image: url(../image/icon/icon_arrow-dn.svg);
    transform: rotate(180deg);
    transition: 0.3s;
    right: 0;
  }
  .GNav__menuLink {
    font-size: 12px;
    font-weight: 500;
    padding-top: 24px;
    display: block;
  }
  .toggleContents {
    display: none;
    background: #e6eae8;
    margin-top: -5px;
    width: 250px;
  }
  .toggleContents li {
    border-bottom: 1px solid #fff;
  }
  .toggleContents li a {
    font-size: 14px;
    display: block;
    padding: 14px 20px;
    text-align: center;
  }
  .toggleContents li:last-child {
    border-bottom: none;
  }
  .hoverArea {
    width: 230px;
  }
  .mainVisual {
    height: calc(100vh - 120px);
    padding-top: 0;
    margin-top: 70px;
  }
  .mainVisual:after {
    width: 230px;
    height: 60px;
    margin: 0px 0 48px 7%;
    top: initial;
    bottom: 0;
  }
  .mainVisual__img {
    background-size: cover;
    margin: auto;
    height: 85%;
  }
  .lead__wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
  }
  .lead__wrap:after {
    width: 100px;
    height: 115px;
    bottom: -30px;
    left: 270px;
  }
  .lead__text {
    width: 270px;
    padding: 0;
    font-size: 15px;
    line-height: 1.8;
  }
  .lead__img {
    width: calc(100% - 240px);
    margin-top: -24px;
  }
  .lead__img img {
    border-radius: 3px;
  }
  .pride {
    padding: 80px 0 48px;
  }
  .pride h2 {
    font-size: 22px;
  }
  .pride h2:before {
    margin-right: 32px;
  }
  .pride h2:after {
    margin-left: 32px;
    transform: rotateX(180deg);
  }
  .pride__wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 24px;
  }
  .pride__item {
    height: 150px;
    width: 150px;
    margin: 5px;
  }
  .service {
    padding-bottom: 64px;
  }
  .service__title {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .service__title a {
    margin: 6px 6% 0 auto;
  }
  .service h2 {
    font-size: 28px;
  }
  .service__wrap {
    margin: 24px auto 0;
    display: -ms-grid;
    display: grid;
    gap: 24px;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    position: relative;
  }
  .service__item {
    padding-bottom: 0;
  }
  .customerVoices {
    padding-top: 0px;
    padding-bottom: 230px;
  }
  .customerVoices__wrap {
    padding: 0;
  }
  .customerVoices h2 {
    font-size: 28px;
    margin-bottom: 14px;
  }
  .customerVoices h3 {
    font-size: 20px;
    margin-bottom: 14px;
  }
  .customerVoices__text {
    padding: 0;
  }
  .customerVoices__text:after {
    left: 0;
    right: initial;
    width: 120px;
    height: 95px;
    margin: -48px 0 0 160px;
  }
  .customerVoices__text a {
    margin: 6px 6% 0 auto;
  }
  .customerVoices:before {
    background-position: center;
    border-radius: 0;
    width: 100%;
    height: 200px;
    top: initial;
    bottom: 0;
  }
  .achievement {
    padding: 0px 0 48px;
    position: relative;
  }
  .achievement:after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    background: #f0f0f0;
    width: 14%;
    height: 100%;
    z-index: -1;
  }
  .achievement__area {
    padding: 14px 0;
  }
  .achievement__title {
    width: 100%;
    margin-bottom: 14px;
  }
  .achievement__title img {
    display: none;
  }
  .achievement h2 {
    font-size: 26px;
    margin-bottom: 14px;
  }
  .subsidy {
    padding-bottom: 32px;
  }
  .subsidy__title {
    line-height: 1.6;
  }
  .staff {
    padding-bottom: 32px;
  }
  .staff__title {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .staff__title a {
    margin: 6px 6% 0 auto;
  }
  .staff__title:before {
    display: none;
  }
  .staff h2 {
    font-size: 26px;
    padding-left: 64px;
    position: relative;
  }
  .staff h2:before {
    content: "";
    position: absolute;
    background-image: url(../image/icon/icon-staff.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 60px;
    height: 95px;
    left: 0;
    top: 0;
    margin-top: -14px;
  }
  .staff__wrap {
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
  }
  .staff__item {
    width: 245px;
  }
  .staff__item img {
    width: 100%;
    height: 245px;
    border-radius: 8px;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .staff__text {
    padding: 14px;
  }
  .staff__text--name {
    font-size: 18px;
    font-weight: 500;
  }
  .staff__text--desc {
    font-size: 13px;
    font-weight: 400;
    line-height: 1.6;
    padding-top: 10px;
  }
  .message {
    background: url(../image/photo/dummy01.jpg);
    background-size: 100% 50%;
    height: 600px;
  }
  .message:before {
    margin: 24px auto 0;
    bottom: initial;
  }
  .message__text {
    position: absolute;
    width: 100%;
    height: 300px;
    padding: 0;
    bottom: 0;
  }
  .message__text--box {
    margin: 24px;
  }
  .message__text--name {
    font-size: 18px;
    margin: 14px 0 14px;
  }
  .message__btn {
    font-size: 14px;
    font-weight: 500;
  }
  .contact {
    padding: 48px 0 0;
  }
  .contact h2 {
    font-size: 24px;
    line-height: 1.6;
  }
  .contact__wrap {
    width: 100%;
  }
  .contact__wrap a {
    width: 32%;
  }
  .contact__item {
    width: 100%;
    height: 200px;
  }
  .contact__item img {
    width: 80px;
  }
  .contact__tel {
    width: 100%;
    margin: auto;
  }
  .contact__tel--wrap {
    padding: 14px 24px 4px;
  }
  .contact__tel--text {
    margin-right: 0;
    margin-bottom: 14px;
  }
  .contact__tel--time {
    display: table;
    margin: auto;
  }
  .contact__tel h3 {
    font-size: 18px;
    line-height: 1.3;
    margin: 24px 0 0;
    padding-top: 14px;
  }
  .contact__tel h3:before {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    margin: -16px auto 0;
  }
  .contact__tel a {
    text-align: center;
    margin: auto;
    display: block;
  }
  .childHead {
    height: 400px;
    margin-top: 60px;
    position: relative;
  }
  .childHead__text {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 6px 14px 12px 32px;
    background: #fff;
    border-radius: 0 6px 6px 0;
    position: absolute;
    bottom: 0;
    left: 0;
    margin: 0 0 64px 0;
  }
  .childHead__text h1 {
    font-size: 28px;
    line-height: 1.4;
    letter-spacing: 0;
    padding-right: 0;
  }
  .childHead__text p {
    font-size: 18px;
    font-weight: 500;
    margin-top: 0;
  }
  .childHead__img {
    width: 80%;
    height: 400px;
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    border-radius: 8px 0 0 0;
  }
  .servicePage p.head {
    font-size: 24px;
    padding-left: 24px;
  }
  .servicePage p.head:before {
    width: 110px;
    height: 110px;
    margin: -16px 0 0 -10px;
  }
  .servicePage h2 {
    font-size: 26px;
  }
  .servicePage h2:before {
    width: 100px;
    height: 100px;
    margin: -30px 0 0 -20px;
  }
  .servicePage__lineUp {
    margin: 24px auto 0;
  }
  .servicePage__item {
    margin: 0 6px;
    width: 32%;
  }
  .servicePage__item--img {
    width: 100%;
    height: 110px;
  }
  .servicePage__item--label {
    margin: 10px auto 8px;
    font-size: 11px;
    padding: 2px 14px;
    white-space: nowrap;
  }
  .servicePage__item--title {
    font-size: 13px;
    line-height: 1.6;
  }
  .servicePage__item--tag {
    width: 80px;
  }
  .serviceList {
    padding-bottom: 0;
  }
  .serviceList__wrap {
    padding-bottom: 32px;
  }
  .serviceList__text {
    display: block;
    width: 100%;
  }
  .serviceList__text .sticker {
    width: 100px;
    height: 50px;
    margin: -75px 0px 0 4px;
  }
  .serviceList__text--box {
    width: 100%;
  }
  .serviceList__text--box:before {
    right: initial;
    bottom: 0;
    top: initial;
    margin: 0 0 -60px 250px;
    width: 80px;
  }
  .serviceList__text--title {
    font-size: 26px;
  }
  .serviceList__text--btn {
    width: 100%;
    margin-top: 24px;
  }
  .category {
    padding: 24px 0;
  }
  .category li {
    margin-bottom: 20px;
  }
  .category__wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    width: 95%;
  }
  .category__wrap a {
    width: 105px;
  }
  .point {
    padding: 32px 0;
  }
  .point__wrap {
    -ms-flex-flow: column;
    flex-flow: column;
    margin: 24px 0 0;
  }
  .point__item {
    width: 100%;
    height: auto;
    padding: 32px;
    margin-bottom: 24px;
  }
  .point__item--icon {
    width: 70px;
    height: 70px;
  }
  .point__item--title {
    font-size: 18px;
    margin-top: 20px;
    height: auto;
  }
  .point__item--desc {
    margin: 14px 0;
    height: auto;
  }
  .example__wrap {
    width: 100%;
    gap: 20px;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
  .example__img a {
    height: auto;
    width: auto;
    aspect-ratio: 1 / 1;
  }
  .staffPage {
    margin-top: 0;
    padding-bottom: 32px;
  }
  .staffPage__wrap {
    display: block;
    margin: 0;
  }
  .staffPage__wrap li {
    width: 100%;
    padding: 24px;
  }
  .staffPage__wrap li dl {
    margin-top: 0;
  }
  .staffPage__wrap li:nth-child(2n) {
    margin-top: 0;
  }
  .staffPage__label {
    font-size: 14px;
    padding: 0 24px;
    width: auto;
    margin-bottom: 0;
  }
  .staffPage__img {
    padding: 24px;
  }
  .staffPage__img img {
    height: initial;
    aspect-ratio: 1 / 1;
  }
  .president {
    margin: 0;
    padding: 48px;
  }
  .president__img img {
    height: initial;
    aspect-ratio: 1/1;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 8px;
  }
  .president__text {
    text-align: left;
    font-size: 14px;
    margin-top: 32px;
  }
  .contactForm {
    margin-top: 120px;
  }
  .contactForm__img {
    width: 300px;
    height: auto;
    margin: auto;
    position: relative;
  }
  .contactForm__img:before {
    width: 150px;
    height: 150px;
    margin: -100px 0 0 -40px;
  }
  .company__wrap {
    padding-bottom: 24px;
    margin-top: 80px;
  }
  .company__profile {
    display: block;
    padding: 14px 32px;
  }
  .company__profile--head {
    width: 100%;
  }
  .company__profile--title {
    display: inline-block;
    margin-left: 14px;
  }
  .company__profile--label {
    padding: 2px 10px;
  }
  .company__profile--list {
    width: 100%;
  }
  .company__profile--list div {
    display: block;
  }
  .company__profile--list dt {
    width: 100%;
    padding: 0;
  }
  .company__profile--list dd {
    width: 100%;
  }
  .company__map {
    padding: 24px 0 0;
    height: 500px;
  }
  .jobBox {
    margin: 32px 0 96px;
  }
  .jobBox__wrap {
    margin-bottom: 24px;
  }
  .jobBox__profile {
    display: block;
    padding: 14px 32px;
  }
  .jobBox__profile--head {
    width: 100%;
    position: relative;
  }
  .jobBox__profile--head:before {
    left: initial;
    right: 0;
    margin: 10px 0 0 0;
  }
  .jobBox__profile--label {
    padding: 2px 10px;
  }
  .jobBox__profile--title {
    display: inline-block;
    margin-left: 14px;
  }
  .jobBox__profile--list {
    width: 100%;
  }
  .jobBox__profile--list div {
    display: block;
  }
  .jobBox__profile--list dt {
    width: 100%;
    padding: 0;
  }
  .jobBox__profile--list dd {
    width: 100%;
  }
  .jobBox__map {
    padding: 32px 64px 0;
    height: 400px;
  }
  .entry__mail--form .formBox {
    margin: 32px auto 0px;
  }
  .entry__phone {
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .entry__phone--head {
    position: relative;
    font-weight: 600;
    padding-left: 84px;
  }
  .entry__phone--head img {
    width: 70%;
    margin-top: 6px;
  }
  .entry__phone--head:before {
    content: "";
    position: absolute;
    background-image: url(../image/icon/tel.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 90px;
    height: 90px;
    top: 0;
    left: 0;
    margin: -17px 0 0 -16px;
  }
  .entry__phone--num {
    font-size: 30px;
    position: relative;
  }
  .entry__phone--num:before {
    content: "";
    display: inline-block;
    position: relative;
    background-image: url(../image/icon/icon-entry_phone.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 40px;
    height: 15px;
    vertical-align: middle;
    margin-right: 24px;
  }
  .entry__phone--label {
    font-size: 10px;
    line-height: 1.3;
    text-align: center;
    border: 1px solid #333;
    padding: 1px 5px;
    border-radius: 30px;
    display: table;
  }
  .entry__mailWrap {
    padding: 14px 0 24px;
  }
  .entry__mail {
    -ms-flex-direction: column;
    flex-direction: column;
    padding-left: 0;
  }
  .entry__mail--head {
    width: auto;
    text-align: center;
    font-weight: 600;
    margin: auto;
  }
  .entry__mail--head:before {
    width: 32px;
    height: 24px;
    margin: 14px 0 0 -6px;
  }
  .entry__mail--head img {
    width: 20%;
    margin: 6px auto;
  }
  .entry__mail--head p {
    margin-bottom: 14px;
  }
  .entry__mail--form {
    width: 100%;
  }
  .entry__mail--form ul {
    padding-left: 0;
  }
  .entry__mail--form li {
    background: #fff;
    margin-bottom: 14px;
    height: 55px;
    padding: 14px;
  }
  .entry__mail--form .wedgeBtn {
    margin-left: 0;
  }
  .works {
    padding: 0 0 48px;
  }
  .works:before {
    width: 90%;
    height: 100px;
    left: initial;
    right: 0;
    margin: -74px 0 0;
  }
  .works__list {
    gap: 10px;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    margin: 0;
  }
  .works__card {
    padding: 6px;
  }
  .works__card a {
    height: 180px;
  }
  .works__card--img span {
    height: 180px;
  }
  .works__card--desc {
    margin: 14px 10px 0;
    font-size: 14px;
    line-height: 1.6;
  }
  .works__card--date {
    font-size: 11px;
    margin: 14px 10px 6px;
  }
  .worksDetail {
    padding-bottom: 48px;
  }
  .worksDetail:before {
    width: 250px;
    height: 95px;
    left: initial;
    right: 0;
    margin: -64px 0 0;
  }
  .worksDetail__wrap {
    padding: 14px 0 32px;
  }
  .worksDetail__img {
    height: 400px;
  }
  .worksDetail__img span {
    border-radius: 8px;
  }
  .worksDetail__text {
    margin-top: 24px;
    font-size: 15px;
  }
  .worksDetail__text dt {
    width: 22%;
    font-size: 14px;
  }
  .worksDetail__text dd {
    width: 78%;
  }
  .worksDetail__btn {
    width: 85%;
    padding: 14px;
  }
  .pridePage__leadBox {
    margin: 48px auto 0;
    width: 100%;
  }
  .pridePage__wrap {
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 24px 24px;
  }
  .pridePage__wrap--text {
    width: 100%;
    -ms-flex-order: 2;
    order: 2;
  }
  .pridePage__wrap--img {
    width: 35%;
    padding: 0;
    margin: 0 0 0 auto;
    -ms-flex-order: 1;
    order: 1;
  }
  .voicesDetail {
    padding-bottom: 24px;
    margin-top: 48px;
  }
  .voicesDetail__title {
    line-height: 1.6;
  }
  .voicesPoint {
    margin: 24px 14px;
    padding: 32px 0;
    border-radius: 8px;
  }
  .voicesPoint__wrap {
    gap: 10px;
    padding: 0;
  }
  .voicesPoint__wrap--num {
    padding: 0 24px;
  }
  .voicesPoint__wrap--title {
    font-size: 14px;
  }
  .voicesPoint__wrap--desc {
    padding-top: 0;
  }
  .otherVoice {
    padding-bottom: 0;
  }
  .subsidyPage {
    padding-bottom: 48px;
  }
  .subsidyPage__lead {
    width: 60%;
    margin: 200px auto 0;
  }
  .subsidyPage__lead:before {
    width: 200px;
    height: 240px;
    margin: -190px -90px 0 0;
  }
  .subsidyPage__wrap {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    margin: 24px 0 48px;
  }
  .subsidyPage__item {
    padding: 14px 14px 6px;
  }
  .subsidyPage__item--title {
    font-size: 14px;
  }
  .subsidyPage__item--img {
    height: initial;
  }
  .subsidyPage__item--img span {
    height: initial;
    aspect-ratio: 1 / 1;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .subsidyDetail {
    padding-bottom: 0;
  }
  .subsidyDetail__wrap {
    padding: 0;
  }
  .subsidyDetail__img {
    height: 300px;
  }
  .subsidyDetail__text {
    display: block;
    margin-top: 0;
    padding: 24px 14px 0;
  }
  .subsidyDetail__text dt {
    width: 100%;
    margin-bottom: 0;
  }
  .subsidyDetail__text dd {
    width: 100%;
    padding-bottom: 14px;
    font-size: 14px;
  }
  .subsidyDetail__text dd li {
    padding-bottom: 14px;
    line-height: 1.4;
    text-indent: -2.4em;
    padding-left: 2.4em;
  }
  .otherPage {
    padding-bottom: 48px;
    /*&__wrap {
	 		grid-template-columns: 1fr 1fr;
	 		margin: 24px 0 48px;	
		}
		&__item {
		    padding: 14px 14px 6px;
			&--title {
				font-size: 14px;
			}
			&--img {
				height: initial;
				span {
					height: initial;
			        aspect-ratio: 1 / 1;
			        object-fit: cover;
				}
			}
		}*/
  }
  .otherPage__lead {
    width: 60%;
    margin: 200px auto 0;
  }
  .otherPage__lead:before {
    width: 200px;
    height: 240px;
    margin: -190px -90px 0 0;
  }
}

@media screen and (min-width: 768px) {
  .mtXS, .mtXSPc {
    margin-top: 8px !important;
  }
  .mtS, .mtSPc {
    margin-top: 16px !important;
  }
  .mtM, .mtMPc {
    margin-top: 32px !important;
  }
  .mtL, .mtLPc {
    margin-top: 48px !important;
  }
  .mtXL, .mtXLPc {
    margin-top: 64px !important;
  }
  .mtXXL, .mtXXLPc {
    margin-top: 80px !important;
  }
  .mtXXXLPc {
    margin-top: 128px !important;
  }
  .mbXS, .mbXSPc {
    margin-bottom: 8px !important;
  }
  .mbS, .mbSPc {
    margin-bottom: 16px !important;
  }
  .mbM, .mbMPc {
    margin-bottom: 32px !important;
  }
  .mbL, .mbLPc {
    margin-bottom: 48px !important;
  }
  .mbXL, .mbXLPc {
    margin-bottom: 64px !important;
  }
  .mbXXL, .mbXXLPc {
    margin-bottom: 80px !important;
  }
  .mlXS, .mlXSPc {
    margin-left: 8px !important;
  }
  .mlS, .mlSPc {
    margin-left: 16px !important;
  }
  .mlM, .mlMPc {
    margin-left: 32px !important;
  }
  .mlL, .mtlPc {
    margin-left: 48px !important;
  }
  .mlXL, .mlXLPc {
    margin-left: 64px !important;
  }
  .mrXS, .mrXSSPc {
    margin-right: 8px !important;
  }
  .mrS, .mrSPc {
    margin-right: 16px !important;
  }
  .mrM, .mrMPc {
    margin-right: 32px !important;
  }
  .mrL, .mrLPc {
    margin-right: 48px !important;
  }
  .mrXL, .mrXLPc {
    margin-right: 64px !important;
  }
  .ptXS, .ptXSPc {
    padding-top: 8px !important;
  }
  .ptS, .ptSPc {
    padding-top: 16px !important;
  }
  .ptM, .ptMPc {
    padding-top: 32px !important;
  }
  .ptL, .ptLPc {
    padding-top: 48px !important;
  }
  .ptXL, .ptXLPc {
    padding-top: 64px !important;
  }
  .pbXS, .pbXSPc {
    padding-bottom: 8px !important;
  }
  .pbS, .pbSPc {
    padding-bottom: 16px !important;
  }
  .pbM, .pbMPc {
    padding-bottom: 32px !important;
  }
  .pbL, .pbLPc {
    padding-bottom: 48px !important;
  }
  .pbXL, .pbXLPc {
    padding-bottom: 64px !important;
  }
  .pbXXL, .pbXXLPc {
    padding-bottom: 80px !important;
  }
  .hidePc {
    display: none !important;
  }
  .textXS, .textXSPc {
    font-size: 1.2rem;
  }
  .textS, .textSPc {
    font-size: 1.4rem;
  }
  .textM, .textMPc {
    font-size: 1.8rem;
  }
  .textL, .textLPc {
    font-size: 2rem;
  }
  .textXL, .textXLPc {
    font-size: 2.4rem;
  }
  .textXXL, .textXXLPc {
    font-size: 3rem;
  }
  .taLPc {
    text-align: left !important;
  }
  .taCPc {
    text-align: center !important;
  }
  .taRPc {
    text-align: right !important;
  }
  .fLPc {
    float: left;
  }
  .fRPc {
    float: right !important;
  }
  .flexBoxPc {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .gridBoxPc {
    display: -ms-grid;
    display: grid;
  }
  .contentBox, .contentBoxPc {
    max-width: 1100px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 2.5%;
    padding-right: 2.5%;
  }
  .contentBoxS, .contentBoxSPc {
    width: 800px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0;
  }
  .contentBoxM, .contentBoxMPc {
    width: 900px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 2.5%;
    padding-right: 2.5%;
  }
  .contentBoxL, .contentBoxLPc {
    max-width: 1200px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 2%;
    padding-right: 2%;
  }
  .breadcrumb {
    height: 25px;
    font-size: 12px;
    padding: 64px 0 0 0;
  }
  .cmnTtl__type4 {
    font-size: 26px;
  }
  .cmsContents h2 {
    font-size: 2.4rem;
  }
  .cmsContents h3 {
    font-size: 2.2rem;
  }
  .cmsContents h4 {
    font-size: 2.0rem;
  }
  .cmsContents h5 {
    font-size: 18px;
  }
  .cmsContents h6 {
    font-size: 16px;
  }
  .cmsContents ul {
    font-size: 1.8rem;
  }
  .cmsContents ol {
    font-size: 1.8rem;
  }
  .cmsContents dl {
    font-size: 1.8rem;
  }
  .cmsContents blockquote {
    padding: 24px 32px;
  }
  .cmsContents blockquote p {
    font-size: 16px;
  }
  .cmsContents table {
    font-size: 1.8rem;
  }
  .GNav__menuOpenBtn {
    display: none;
  }
  .GNav__menu {
    display: block;
    width: 100%;
  }
  .GNav__menu .mainMenu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 75%;
    padding-left: 3%;
    margin: auto 80px auto auto;
  }
  .GNav__menu .mainMenu__list {
    position: relative;
  }
  .GNav__menu .mainMenu__list.current a:after,
  .GNav__menu .mainMenu__list a:hover:after {
    transform: scale(1, 1);
  }
  .GNav__menu .mainMenu__list a {
    position: relative;
    height: 100px;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.5;
    white-space: nowrap;
    /*padding: 0px 18px;*/
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .GNav__menu .mainMenu__list a:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 10%;
    margin: 0 0 18px 0;
    width: 80%;
    height: 2px;
    background: #666;
    transition: all .3s;
    transform: scale(0, 1);
    transform-origin: center top;
  }
  .GNav__menu .mainMenu__tel {
    position: relative;
  }
  .GNav__menu .mainMenu__tel:before {
    content: '';
    width: 20px;
    height: 15px;
    background-image: url(../image/icon/icon-telephone.svg);
    background-repeat: no-repeat;
    margin: 0 6px 0 0;
    display: inline-block;
  }
  .GNav__menu .mainMenu__tel a {
    position: relative;
    font-size: 24px;
    font-weight: 600;
    color: #D0B26E;
    letter-spacing: 0;
    white-space: nowrap;
  }
  .hoverContent {
    display: none;
    position: absolute;
    background: #e6eae8;
    border-bottom: 1px solid #ddd;
    z-index: 5;
    right: 0;
  }
  .hoverContent li {
    border-top: 1px solid #ddd;
    position: relative;
  }
  .hoverContent li a {
    height: 70px;
    width: 150px;
    font-size: 13px;
    text-align: left;
    background-color: #e6eae8;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    padding: 20px;
  }
  .hoverContent li a:hover {
    background-color: #fff;
  }
}

@media (hover: hover) {
  a:hover {
    color: inherit;
    text-decoration: none;
  }
  a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]) :hover {
    color: inherit;
    text-decoration: none;
  }
  .wedgeBtn:hover {
    background: #98B566;
    color: #fff;
  }
  .wedgeBtn:hover:after {
    background-image: url(../image/icon/tri-g.svg);
  }
  .wedgeBtn__white:hover:before {
    background-color: #FFF;
  }
  .wedgeBtn__white:hover:after {
    background-image: url(../image/icon/tri-g.svg);
  }
}


/*# sourceMappingURL=style.css.map */
