@charset "UTF-8";
/* =======================================

	reset CSS

========================================== */
html {
  scroll-behavior: smooth;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
p,
blockquote,
table,
th,
td {
  padding: 0;
  margin: 0;
}

html,
body {
  background: #fff;
  color: #000;
}

body {
  font-family: "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "游ゴシック",
    "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3",
    "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo,
    "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

* html body {
  font-size: small;
}

*:first-child + html body {
  font-size: small;
}

img {
  border: 0;
  vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: 500;
}

ul,
dl,
ol {
  text-indent: 0;
}

li {
  list-style: none;
}

address,
caption,
cite,
code,
dfn,
em,
th,
var {
  font-style: inherit;
  font-weight: inherit;
}

b,
strong {
  font-weight: bold;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select,
b {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

* html input,
* html textarea,
* html select {
  font-size: 100%;
}

*:first-child + html + input,
*:first-child html + textarea,
*:first-child + html select {
  font-size: 100%;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: inherit;
}

th,
td {
  text-align: left;
  vertical-align: top;
}

caption {
  text-align: left;
}

pre,
code,
kbd,
samp,
tt {
  font-family: monospace;
}

* html pre,
* html code,
* html kbd,
* html samp,
* html tt {
  font-size: 100%;
  line-height: 100%;
}

*:first-child + html pre,
*:first-child html + code,
*:first-child html + kbd,
*:first-child + html + samp,
*:first-child + html tt {
  font-size: 108%;
  line-height: 100%;
}

input,
select,
textarea {
  font-size: 100%;
  font-family: Verdana, Helvetica, sans-serif;
}

input.long,
select.long,
textarea.message {
  width: 100% !important;
  border: 1px solid #e3e3e3;
  border-radius: 0.23em;
  padding: 5px 5px;
  background: #fbfbfb;
}

textarea.message {
  width: 100%;
  height: 20rem !important;
}

.hissu {
  padding: 3px 4px 2px 4px;
  color: #d41c1c;
  font-weight: bold;
  font-size: 11px;
}

.nini {
  padding: 3px 4px 2px 4px;
  background: #efefef;
  border: 1px solid #ccc;
  border-radius: 4px;
  display: block;
  width: 40px;
  text-align: center;
  float: right;
  color: #222;
  font-weight: bold;
  font-size: 11px;
}

.fW100 {
  font-weight: 100;
}

.fW200 {
  font-weight: 200;
}

.fW300 {
  font-weight: 300;
}

.fW400 {
  font-weight: 400;
}

.fW500 {
  font-weight: 500;
}

.fW600 {
  font-weight: 600;
}

.fW700 {
  font-weight: 700;
}

.fW800 {
  font-weight: 800;
}

.fW900 {
  font-weight: 900;
}

.ls0 {
  letter-spacing: 0;
}

.ls05 {
  letter-spacing: 0.05em;
}

.ls1 {
  letter-spacing: 0.1em;
}

.ls27 {
  letter-spacing: 0.27em;
}

.ls2 {
  letter-spacing: 0.2em;
}

.ls4 {
  letter-spacing: 0.4em;
}

.lh0 {
  line-height: 0% !important;
}

.lh90 {
  line-height: 90% !important;
}

.lh100 {
  line-height: 100% !important;
}

.lh110 {
  line-height: 110% !important;
}

.lh120 {
  line-height: 120% !important;
}

.lh130 {
  line-height: 130% !important;
}

.lh140 {
  line-height: 140% !important;
}

.lh155 {
  line-height: 155% !important;
}

.lh150 {
  line-height: 150% !important;
}

.lh160 {
  line-height: 160% !important;
}

.lh170 {
  line-height: 170% !important;
}

.lh180 {
  line-height: 180% !important;
}

.lh190 {
  line-height: 190% !important;
}

.lh200 {
  line-height: 200% !important;
}

.lh220 {
  line-height: 220% !important;
}

.lh240 {
  line-height: 240% !important;
}

/* cf
========================================== */
.cf:after {
  visibility: hidden;
  display: block;
  content: "";
  clear: both;
}

* html .cf {
  zoom: 1;
}

/* IE6 */
*:first-child + html .cf {
  zoom: 1;
}

/* IE7 */
/* =======================================

	Structure CSS

========================================== */
* {
  box-sizing: border-box;
}

.center {
  text-align: center !important;
  vertical-align: middle;
}

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

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

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.alignright {
  display: block;
  margin-left: auto;
  margin-right: 0;
}

.alignleft {
  display: block;
  margin-left: 0;
  margin-right: auto;
}

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

.bold {
  font-weight: bold !important;
}

.red {
  color: #ff610c !important;
}

.blue {
  color: #2a457f !important;
}

.black {
  color: #222 !important;
}

.black2 {
  color: #000 !important;
}

.black3 {
  color: #111 !important;
}

.brown {
  color: #645544 !important;
}

.brown2 {
  color: #9a8d7e !important;
}

.white {
  color: #fff !important;
}

.white2 {
  color: #fbf9f4 !important;
}

.grey {
  color: #676767 !important;
}

.green {
  color: #59a952 !important;
}

.orange {
  color: #f88f03 !important;
}

.float_l {
  float: left;
}

.float_r {
  float: right;
}

.rela {
  position: relative;
}

.u_l {
  text-decoration: underline;
  color: #59a952;
}

.u_l2 {
  text-decoration: underline;
  color: #222;
}

.kome li {
  text-indent: -1em;
  padding-left: 1em;
  line-height: 140%;
  margin-bottom: 10px;
}

.c_list li {
  position: relative;
  /* text-indent: -1em; */
  margin-left: 24px;
  line-height: 135%;
  margin-bottom: 10px;
}

.c_list li:before {
  content: "";
  width: 14px;
  height: 14px;
  position: absolute;
  background: linear-gradient(90deg, #ff5500, #ffd400);
  border-radius: 0.2em;
  top: 0.3em;
  left: -20px;
}

.o_02 .head {
  display: flex;
}

.o_02 .sub {
  background: #333;
  color: #fff;
  margin-right: 10px;
  display: flex;
  align-items: center;
  padding: 0 10px;
}

.o_02 .tag {
  width: 140px;
  display: inline-block;
  text-align: center;
  color: #fff;
  border-radius: 0.2em;
  font-size: 90%;
  margin-right: 15px;
  padding: 3px 0 1px;
}

.o_02 .tag01 {
  background: #4bad12;
}

.o_02 .tag02 {
  background: #2c4593;
}

.c_c_c {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

.c_y0_xc {
  position: absolute;
  top: 0%;
  left: 50%;
  transform: translateY(0%) translateX(-50%);
}

.c_yc_x0 {
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(50%) translateX(0%);
}

/*タイトル
========================================== */
.h3Tit {
  font-size: 22px;
  font-weight: 600;
  color: #0a0a0a;
  letter-spacing: 0.08em;
  line-height: 140%;
  position: relative;
  text-align: left;
  padding-left: 37px;
  margin-bottom: 15px;
}

.c_tit {
  letter-spacing: 0.07em;
  line-height: 150%;
}

/*ボタン
========================================== */
.btn01 a {
  border-radius: 50px;
  color: #fff;
  border: 1px solid #59a952;
  background: #59a952;
  padding: 8px;
  min-width: 160px;
  position: relative;
  z-index: 1;
  display: inline-block;
  overflow: hidden;
}

.btn01 a::before {
  content: "";
  width: 100%;
  height: 101%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: #fff;
  transform-origin: 100% 50%;
  transform: scaleX(0);
  transition: transform ease 0.3s;
}

.btn01 a:hover {
  opacity: 1;
}

.btn01 a:hover p {
  color: #59a952 !important;
}

.btn01 a:hover::before {
  transform-origin: 0% 50%;
  transform: scaleX(1);
}

.gaibu a {
  padding: 15px;
  min-width: 244px;
  border: 1px solid #169d1d;
  background: #169d1d;
  border-radius: 100px;
}

.gaibu a p span {
  padding-right: 2.3em;
  background: url(../img/gaibu.svg) no-repeat right center/1.2em;
}

.gaibu a:hover {
  opacity: 1;
}

.gaibu a:hover p span {
  color: #169d1d !important;
  background: url(../img/gaibu2.svg) no-repeat right center/1.2em;
}

.arrow a {
  padding: 17px;
  min-width: 306px;
  border-radius: 100px;
}

.arrow a p {
  position: relative;
  z-index: 0;
}

.arrow a p::after {
  content: "";
  position: absolute;
  display: inline-block;
  right: -0.6em;
  top: -6px;
  background: url(../img/arrow.png) no-repeat right center/100%;
  width: 2.6em;
  height: 2.6em;
}

.arrow_b a {
  padding: 17px;
  min-width: 306px;
  border-radius: 100px;
}

.arrow_b a p {
  position: relative;
  z-index: 0;
}

.arrow_b a p::after {
  content: "";
  position: absolute;
  display: inline-block;
  right: -0.6em;
  top: -6px;
  background: url(../img/arrow_b.svg) no-repeat right center/100%;
  width: 2.6em;
  height: 2.6em;
}

.btn02 a {
  border-radius: 50px;
  color: #59a952;
  border: 1px solid #59a952;
  background: #fff;
  padding: 8px;
  min-width: 160px;
  position: relative;
  z-index: 1;
  display: inline-block;
  overflow: hidden;
}

.btn02 a::before {
  content: "";
  width: 100%;
  height: 101%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: #59a952;
  transform-origin: 100% 50%;
  transform: scaleX(0);
  transition: transform ease 0.3s;
}

.btn02 a:hover {
  opacity: 1;
}

.btn02 a:hover p {
  color: #fff !important;
}

.btn02 a:hover::before {
  transform-origin: 0% 50%;
  transform: scaleX(1);
}

.btn03 a {
  border: 1px solid #fff;
  border-radius: 100px;
  background: #fff;
  padding: 17px;
  min-width: 238px;
  position: relative;
  z-index: 1;
  display: inline-block;
  overflow: hidden;
}

.btn03 a:hover {
  opacity: 0.7;
}

.btn04 {
  /* 疑似要素で “アニメーションする下線” を作る */
  /* ホバー（またはフォーカス）時に下線を全幅へ */
}

.btn04 a {
  position: relative;
  display: inline-block;
  padding: 7px 3.4em 7px 2px;
  color: #fff;
  font-weight: 70;
  text-decoration: none;
  background: url(../img/arrow_w2.svg) no-repeat right top 1px/2.4em;
}

.btn04 a::before {
  content: "";
  position: absolute;
  left: 3px;
  bottom: 3px;
  width: calc(100% - 3.5em);
  height: 1px; /* 線の太さ */
  background: #fff;
}

.btn04 a::after {
  content: "";
  position: absolute;
  left: 3px;
  bottom: 3px;
  width: calc(100% - 3.5em);
  height: 1px; /* 線の太さ */
  background: #fff;
  transform: scaleX(0); /* 初期状態＝幅 0 */
  transform-origin: left center; /* 左端を基点に伸びる */
  transition: transform 0.3s ease; /* スピードとイージングを調整 */
}

.btn04 a:hover::after,
.btn04 a:focus::after {
  transform: scaleX(1);
}

.btn04 a:hover::before {
  display: none;
}

.btn04_br {
  /* 疑似要素で “アニメーションする下線” を作る */
  /* ホバー（またはフォーカス）時に下線を全幅へ */
}

.btn04_br a {
  position: relative;
  display: inline-block;
  padding: 7px 3.4em 7px 2px;
  color: #d0b18f;
  font-weight: 70;
  text-decoration: none;
  background: url(../img/arrow_b.svg) no-repeat right top 1px/2.4em;
}

.btn04_br a::before {
  content: "";
  position: absolute;
  left: 3px;
  bottom: 3px;
  width: calc(100% - 3.5em);
  height: 1px; /* 線の太さ */
  background: #d0b18f;
}

.btn04_br a::after {
  content: "";
  position: absolute;
  left: 3px;
  bottom: 3px;
  width: calc(100% - 3.5em);
  height: 1px; /* 線の太さ */
  background: #d0b18f;
  transform: scaleX(0); /* 初期状態＝幅 0 */
  transform-origin: left center; /* 左端を基点に伸びる */
  transition: transform 0.3s ease; /* スピードとイージングを調整 */
}

.btn04_br a:hover::after,
.btn04_br a:focus::after {
  transform: scaleX(1);
}

.btn04_br a:hover::before {
  display: none;
}

.btn05 a {
  border-radius: 50px;
  color: #fff;
  border: 1px solid #eab429;
  background: #eab429;
  padding: 12px 30px;
  min-width: 160px;
  position: relative;
  z-index: 1;
  display: inline-block;
  overflow: hidden;
}

.btn05 a::before {
  content: "";
  width: 100%;
  height: 101%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: #fff;
  transform-origin: 100% 50%;
  transform: scaleX(0);
  transition: transform ease 0.3s;
}

.btn05 a:hover {
  opacity: 1;
}

.btn05 a:hover p {
  color: #eab429 !important;
}

.btn05 a:hover::before {
  transform-origin: 0% 50%;
  transform: scaleX(1);
}

.btn06 a {
  border-radius: 50px;
  color: #fff;
  border: 1px solid #d0b18f;
  background: #d0b18f;
  padding: 12px 30px;
  min-width: 160px;
  position: relative;
  z-index: 1;
  display: inline-block;
  overflow: hidden;
}

.btn06 a::before {
  content: "";
  width: 100%;
  height: 101%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: #fff;
  transform-origin: 100% 50%;
  transform: scaleX(0);
  transition: transform ease 0.3s;
}

.btn06 a:hover {
  opacity: 1;
}

.btn06 a:hover p {
  color: #d0b18f !important;
}

.btn06 a:hover::before {
  transform-origin: 0% 50%;
  transform: scaleX(1);
}

.btn01 a,
.btn02 a,
.linkBox a,
.o_02 a,
.linkBox_img a::before {
  transition: 0.3s;
}

.submit {
  border-radius: 50px;
  color: #fff;
  border: 1px solid #59a952;
  background: #59a952;
  padding: 14px 77px;
  position: relative;
  z-index: 1;
  display: inline-block;
  overflow: hidden;
  cursor: pointer !important;
  transition: 0.3s;
}

.header_nav .nav li a:hover,
.footer02_nav a:hover,
.logo:hover,
.u_l:hover,
.u_l2:hover,
.linkBox a:hover,
.o_02 a:hover,
.submit:hover,
.bnr a:hover,
.sns a:hover,
.top_news a:hover,
.totop_wrap a:hover,
.listLink li a:hover,
.bnrArea a:hover,
.previous-post a:hover,
.next-post a:hover,
.archive-news02 li a:hover {
  opacity: 0.7;
}

/*flex
========================================== */
.flex {
  display: flex;
}

.flex_nowrap {
  display: flex;
  flex-wrap: nowrap;
}

.flex_wrap {
  display: flex;
  flex-wrap: wrap;
}

.flex_space_between {
  justify-content: space-between;
}

.flex_center {
  justify-content: center !important;
}

.flex_left {
  justify-content: left;
}

.flex_right {
  justify-content: right;
}

.flex_flex_end {
  justify-content: flex-end;
}

.flex_row_reverse {
  flex-flow: row-reverse;
}

.align_items_c {
  align-items: center;
}

.align_items_e {
  align-items: flex-end;
}

.d_bl {
  display: block;
}

.poev_none {
  pointer-events: none;
}

.of_hidd {
  overflow: hidden;
}

.of_auto {
  overflow: auto;
}

.of_y {
  overflow-y: auto;
}

.of_x_hidd {
  overflow-x: hidden;
}

img {
  max-width: 100%;
  display: block;
  transition: 0.3s;
  height: auto;
}

figure {
  display: block;
  margin-block-start: 0;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 0;
  margin: 0;
  padding: 0;
}

.w_4em {
  width: 4em;
}

.w_45em {
  width: 4.5em;
}

.w_5em {
  width: 5em;
}

.w_6em {
  width: 6em;
}

.w_7em {
  width: 7em;
}

.w_8em {
  width: 8em;
}

.w_9em {
  width: 9em;
}

.f10 {
  font-size: 1rem !important;
}

.f11 {
  font-size: 1.1rem !important;
}

.f12 {
  font-size: 1.2rem !important;
}

.f13 {
  font-size: 1.3rem !important;
}

.f14 {
  font-size: 1.4rem !important;
}

.f15 {
  font-size: 1.5rem !important;
}

.f16 {
  font-size: 1.6rem !important;
}

.f17 {
  font-size: 1.7rem !important;
}

.f18 {
  font-size: 1.8rem !important;
}

.f19 {
  font-size: 1.9rem !important;
}

.f20 {
  font-size: 2rem !important;
}

.f21 {
  font-size: 2.1rem !important;
}

.f22 {
  font-size: 2.2rem !important;
}

.f23 {
  font-size: 2.3rem !important;
}

.f24 {
  font-size: 2.4rem !important;
}

.f25 {
  font-size: 2.5rem !important;
}

.f26 {
  font-size: 2.6rem !important;
}

.f27 {
  font-size: 2.7rem !important;
}

.f28 {
  font-size: 2.8rem !important;
}

.f29 {
  font-size: 2.9rem !important;
}

.f30 {
  font-size: 3rem !important;
}

.f31 {
  font-size: 3.1rem !important;
}

.f32 {
  font-size: 3.2rem !important;
}

.f33 {
  font-size: 3.3rem !important;
}

.f34 {
  font-size: 3.4rem !important;
}

.f35 {
  font-size: 3.5rem !important;
}

.f36 {
  font-size: 3.6rem !important;
}

.f37 {
  font-size: 3.7rem !important;
}

.f38 {
  font-size: 3.8rem !important;
}

.f39 {
  font-size: 3.9rem !important;
}

.f40 {
  font-size: 4rem !important;
}

.f_ps60 {
  font-size: 60% !important;
}

.f_ps65 {
  font-size: 65% !important;
}

.f_ps70 {
  font-size: 70% !important;
}

.f_ps75 {
  font-size: 75% !important;
}

.f_ps80 {
  font-size: 80% !important;
}

.f_ps85 {
  font-size: 85% !important;
}

.f_ps90 {
  font-size: 90% !important;
}

.f_ps95 {
  font-size: 95% !important;
}

.f_ps100 {
  font-size: 100% !important;
}

.f_ps105 {
  font-size: 105% !important;
}

.f_ps110 {
  font-size: 110% !important;
}

.f_ps115 {
  font-size: 115% !important;
}

.f_ps120 {
  font-size: 120% !important;
}

.f_ps125 {
  font-size: 125% !important;
}

.f_ps130 {
  font-size: 130% !important;
}

.f_ps135 {
  font-size: 135% !important;
}

.f_ps140 {
  font-size: 140% !important;
}

.f_ps145 {
  font-size: 145% !important;
}

.f_ps150 {
  font-size: 150% !important;
}

.inner {
  max-width: 1200px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_500 {
  max-width: 500px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_600 {
  max-width: 600px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_750 {
  max-width: 750px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_700 {
  max-width: 700px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_800 {
  max-width: 800px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_900 {
  max-width: 900px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_1000 {
  max-width: 1000px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_1100 {
  max-width: 1100px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_1200 {
  max-width: 1200px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_1300 {
  max-width: 1300px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_1400_w {
  max-width: 1400px !important;
  position: relative;
  width: 100%;
  margin: 0 auto;
}

.inner_1400 {
  max-width: 1400px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_1500 {
  max-width: 1500px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_1600 {
  max-width: 1600px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_1700 {
  max-width: 1700px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_1800 {
  max-width: 1800px !important;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

/* =======================================

	margin / padding

========================================== */
/*! mb */
.mA0 {
  margin: 0px !important;
}

.mA5 {
  margin: 5px !important;
}

.mA10 {
  margin: 10px !important;
}

.mA15 {
  margin: 15px !important;
}

.mA20 {
  margin: 20px !important;
}

.mA25 {
  margin: 25px !important;
}

.mA30 {
  margin: 30px !important;
}

.mA35 {
  margin: 35px !important;
}

.mA40 {
  margin: 40px !important;
}

.mA45 {
  margin: 45px !important;
}

.mA50 {
  margin: 50px !important;
}

.mA55 {
  margin: 55px !important;
}

.mA60 {
  margin: 60px !important;
}

.mA65 {
  margin: 65px !important;
}

.mA70 {
  margin: 70px !important;
}

.mA75 {
  margin: 75px !important;
}

.mA80 {
  margin: 80px !important;
}

.mA85 {
  margin: 85px !important;
}

.mA90 {
  margin: 90px !important;
}

.mA95 {
  margin: 95px !important;
}

.mA100 {
  margin: 100px !important;
}

.mA105 {
  margin: 105px !important;
}

.mA110 {
  margin: 110px !important;
}

.mA115 {
  margin: 115px !important;
}

.mA120 {
  margin: 120px !important;
}

.mA125 {
  margin: 125px !important;
}

.mA130 {
  margin: 130px !important;
}

.mA135 {
  margin: 135px !important;
}

.mA140 {
  margin: 140px !important;
}

.mA145 {
  margin: 145px !important;
}

.mA150 {
  margin: 150px !important;
}

.mT0 {
  margin-top: 0px !important;
}

.mT5 {
  margin-top: 5px !important;
}

.mT10 {
  margin-top: 10px !important;
}

.mT15 {
  margin-top: 15px !important;
}

.mT20 {
  margin-top: 20px !important;
}

.mT25 {
  margin-top: 25px !important;
}

.mT30 {
  margin-top: 30px !important;
}

.mT35 {
  margin-top: 35px !important;
}

.mT40 {
  margin-top: 40px !important;
}

.mT45 {
  margin-top: 45px !important;
}

.mT50 {
  margin-top: 50px !important;
}

.mT55 {
  margin-top: 55px !important;
}

.mT60 {
  margin-top: 60px !important;
}

.mT65 {
  margin-top: 65px !important;
}

.mT70 {
  margin-top: 70px !important;
}

.mT75 {
  margin-top: 75px !important;
}

.mT80 {
  margin-top: 80px !important;
}

.mT85 {
  margin-top: 85px !important;
}

.mT90 {
  margin-top: 90px !important;
}

.mT95 {
  margin-top: 95px !important;
}

.mT100 {
  margin-top: 100px !important;
}

.mT105 {
  margin-top: 105px !important;
}

.mT110 {
  margin-top: 110px !important;
}

.mT115 {
  margin-top: 115px !important;
}

.mT120 {
  margin-top: 120px !important;
}

.mT125 {
  margin-top: 125px !important;
}

.mT130 {
  margin-top: 130px !important;
}

.mT135 {
  margin-top: 135px !important;
}

.mT140 {
  margin-top: 140px !important;
}

.mT145 {
  margin-top: 145px !important;
}

.mT150 {
  margin-top: 150px !important;
}

.mT155 {
  margin-top: 155px !important;
}

.mB0 {
  margin-bottom: 0px !important;
}

.mB5 {
  margin-bottom: 5px !important;
}

.mB10 {
  margin-bottom: 10px !important;
}

.mB15 {
  margin-bottom: 15px !important;
}

.mB20 {
  margin-bottom: 20px !important;
}

.mB25 {
  margin-bottom: 25px !important;
}

.mB30 {
  margin-bottom: 30px !important;
}

.mB35 {
  margin-bottom: 35px !important;
}

.mB40 {
  margin-bottom: 40px !important;
}

.mB45 {
  margin-bottom: 45px !important;
}

.mB50 {
  margin-bottom: 50px !important;
}

.mB55 {
  margin-bottom: 55px !important;
}

.mB60 {
  margin-bottom: 60px !important;
}

.mB65 {
  margin-bottom: 65px !important;
}

.mB70 {
  margin-bottom: 70px !important;
}

.mB75 {
  margin-bottom: 75px !important;
}

.mB80 {
  margin-bottom: 80px !important;
}

.mB85 {
  margin-bottom: 85px !important;
}

.mB90 {
  margin-bottom: 90px !important;
}

.mB95 {
  margin-bottom: 95px !important;
}

.mB100 {
  margin-bottom: 100px !important;
}

.mB105 {
  margin-bottom: 105px !important;
}

.mB110 {
  margin-bottom: 110px !important;
}

.mB115 {
  margin-bottom: 115px !important;
}

.mB120 {
  margin-bottom: 120px !important;
}

.mB125 {
  margin-bottom: 125px !important;
}

.mB130 {
  margin-bottom: 130px !important;
}

.mB135 {
  margin-bottom: 135px !important;
}

.mB140 {
  margin-bottom: 140px !important;
}

.mB145 {
  margin-bottom: 145px !important;
}

.mB150 {
  margin-bottom: 150px !important;
}

.mL0 {
  margin-left: 0px !important;
}

.mL5 {
  margin-left: 5px !important;
}

.mL10 {
  margin-left: 10px !important;
}

.mL15 {
  margin-left: 15px !important;
}

.mL20 {
  margin-left: 20px !important;
}

.mL25 {
  margin-left: 25px !important;
}

.mL30 {
  margin-left: 30px !important;
}

.mL35 {
  margin-left: 35px !important;
}

.mL40 {
  margin-left: 40px !important;
}

.mL45 {
  margin-left: 45px !important;
}

.mL50 {
  margin-left: 50px !important;
}

.mL55 {
  margin-left: 55px !important;
}

.mL60 {
  margin-left: 60px !important;
}

.mL65 {
  margin-left: 65px !important;
}

.mL70 {
  margin-left: 70px !important;
}

.mL75 {
  margin-left: 75px !important;
}

.mL80 {
  margin-left: 80px !important;
}

.mL85 {
  margin-left: 85px !important;
}

.mL90 {
  margin-left: 90px !important;
}

.mL95 {
  margin-left: 95px !important;
}

.mL100 {
  margin-left: 100px !important;
}

.mL105 {
  margin-left: 105px !important;
}

.mL110 {
  margin-left: 110px !important;
}

.mL115 {
  margin-left: 115px !important;
}

.mL120 {
  margin-left: 120px !important;
}

.mL125 {
  margin-left: 125px !important;
}

.mL130 {
  margin-left: 130px !important;
}

.mL135 {
  margin-left: 135px !important;
}

.mL140 {
  margin-left: 140px !important;
}

.mL145 {
  margin-left: 145px !important;
}

.mL150 {
  margin-left: 150px !important;
}

.mR0 {
  margin-right: 0px !important;
}

.mR5 {
  margin-right: 5px !important;
}

.mR10 {
  margin-right: 10px !important;
}

.mR15 {
  margin-right: 15px !important;
}

.mR20 {
  margin-right: 20px !important;
}

.mR25 {
  margin-right: 25px !important;
}

.mR30 {
  margin-right: 30px !important;
}

.mR35 {
  margin-right: 35px !important;
}

.mR40 {
  margin-right: 40px !important;
}

.mR45 {
  margin-right: 45px !important;
}

.mR50 {
  margin-right: 50px !important;
}

.mR55 {
  margin-right: 55px !important;
}

.mR60 {
  margin-right: 60px !important;
}

.mR65 {
  margin-right: 65px !important;
}

.mR70 {
  margin-right: 70px !important;
}

.mR75 {
  margin-right: 75px !important;
}

.mR80 {
  margin-right: 80px !important;
}

.mR85 {
  margin-right: 85px !important;
}

.mR90 {
  margin-right: 90px !important;
}

.mR95 {
  margin-right: 95px !important;
}

.mR100 {
  margin-right: 100px !important;
}

.mR105 {
  margin-right: 105px !important;
}

.mR110 {
  margin-right: 110px !important;
}

.mR115 {
  margin-right: 115px !important;
}

.mR120 {
  margin-right: 120px !important;
}

.mR125 {
  margin-right: 125px !important;
}

.mR130 {
  margin-right: 130px !important;
}

.mR135 {
  margin-right: 135px !important;
}

.mR140 {
  margin-right: 140px !important;
}

.mR145 {
  margin-right: 145px !important;
}

.mR150 {
  margin-right: 150px !important;
}

.pB0 {
  padding-bottom: 0px !important;
}

.pB5 {
  padding-bottom: 5px !important;
}

.pB10 {
  padding-bottom: 10px !important;
}

.pB15 {
  padding-bottom: 15px !important;
}

.pB20 {
  padding-bottom: 20px !important;
}

.pB25 {
  padding-bottom: 25px !important;
}

.pB30 {
  padding-bottom: 30px !important;
}

.pB35 {
  padding-bottom: 35px !important;
}

.pB40 {
  padding-bottom: 40px !important;
}

.pB45 {
  padding-bottom: 45px !important;
}

.pB50 {
  padding-bottom: 50px !important;
}

.pB55 {
  padding-bottom: 55px !important;
}

.pB60 {
  padding-bottom: 60px !important;
}

.pB65 {
  padding-bottom: 65px !important;
}

.pB70 {
  padding-bottom: 70px !important;
}

.pB75 {
  padding-bottom: 75px !important;
}

.pB80 {
  padding-bottom: 80px !important;
}

.pB85 {
  padding-bottom: 85px !important;
}

.pB90 {
  padding-bottom: 90px !important;
}

.pB95 {
  padding-bottom: 95px !important;
}

.pB100 {
  padding-bottom: 100px !important;
}

.pB105 {
  padding-bottom: 105px !important;
}

.pB110 {
  padding-bottom: 110px !important;
}

.pB115 {
  padding-bottom: 115px !important;
}

.pB120 {
  padding-bottom: 120px !important;
}

.pB125 {
  padding-bottom: 125px !important;
}

.pB130 {
  padding-bottom: 130px !important;
}

.pB135 {
  padding-bottom: 135px !important;
}

.pB140 {
  padding-bottom: 140px !important;
}

.pB145 {
  padding-bottom: 145px !important;
}

.pB150 {
  padding-bottom: 150px !important;
}

.pT0 {
  padding-top: 0px !important;
}

.pT5 {
  padding-top: 5px !important;
}

.pT10 {
  padding-top: 10px !important;
}

.pT15 {
  padding-top: 15px !important;
}

.pT20 {
  padding-top: 20px !important;
}

.pT25 {
  padding-top: 25px !important;
}

.pT30 {
  padding-top: 30px !important;
}

.pT35 {
  padding-top: 35px !important;
}

.pT40 {
  padding-top: 40px !important;
}

.pT45 {
  padding-top: 45px !important;
}

.pT50 {
  padding-top: 50px !important;
}

.pT55 {
  padding-top: 55px !important;
}

.pT60 {
  padding-top: 60px !important;
}

.pT65 {
  padding-top: 65px !important;
}

.pT70 {
  padding-top: 70px !important;
}

.pT75 {
  padding-top: 75px !important;
}

.pT80 {
  padding-top: 80px !important;
}

.pT85 {
  padding-top: 85px !important;
}

.pT90 {
  padding-top: 90px !important;
}

.pT95 {
  padding-top: 95px !important;
}

.pT100 {
  padding-top: 100px !important;
}

.pT105 {
  padding-top: 105px !important;
}

.pT110 {
  padding-top: 110px !important;
}

.pT115 {
  padding-top: 115px !important;
}

.pT120 {
  padding-top: 120px !important;
}

.pT125 {
  padding-top: 125px !important;
}

.pT130 {
  padding-top: 130px !important;
}

.pT135 {
  padding-top: 135px !important;
}

.pT140 {
  padding-top: 140px !important;
}

.pT145 {
  padding-top: 145px !important;
}

.pT150 {
  padding-top: 150px !important;
}

.pL0 {
  padding-left: 0px !important;
}

.pL5 {
  padding-left: 5px !important;
}

.pL10 {
  padding-left: 10px !important;
}

.pL15 {
  padding-left: 15px !important;
}

.pL20 {
  padding-left: 20px !important;
}

.pL25 {
  padding-left: 25px !important;
}

.pL30 {
  padding-left: 30px !important;
}

.pL35 {
  padding-left: 35px !important;
}

.pL40 {
  padding-left: 40px !important;
}

.pL45 {
  padding-left: 45px !important;
}

.pL50 {
  padding-left: 50px !important;
}

.pL55 {
  padding-left: 55px !important;
}

.pL60 {
  padding-left: 60px !important;
}

.pL65 {
  padding-left: 65px !important;
}

.pL70 {
  padding-left: 70px !important;
}

.pL75 {
  padding-left: 75px !important;
}

.pL80 {
  padding-left: 80px !important;
}

.pL85 {
  padding-left: 85px !important;
}

.pL90 {
  padding-left: 90px !important;
}

.pL95 {
  padding-left: 95px !important;
}

.pL100 {
  padding-left: 100px !important;
}

.pL105 {
  padding-left: 105px !important;
}

.pL110 {
  padding-left: 110px !important;
}

.pL115 {
  padding-left: 115px !important;
}

.pL120 {
  padding-left: 120px !important;
}

.pL125 {
  padding-left: 125px !important;
}

.pL130 {
  padding-left: 130px !important;
}

.pL135 {
  padding-left: 135px !important;
}

.pL140 {
  padding-left: 140px !important;
}

.pL145 {
  padding-left: 145px !important;
}

.pL150 {
  padding-left: 150px !important;
}

.pL0 {
  padding-left: 0px !important;
}

.pL5 {
  padding-left: 5px !important;
}

.pL10 {
  padding-left: 10px !important;
}

.pL15 {
  padding-left: 15px !important;
}

.pL20 {
  padding-left: 20px !important;
}

.pL25 {
  padding-left: 25px !important;
}

.pL30 {
  padding-left: 30px !important;
}

.pL35 {
  padding-left: 35px !important;
}

.pL40 {
  padding-left: 40px !important;
}

.pL45 {
  padding-left: 45px !important;
}

.pL50 {
  padding-left: 50px !important;
}

.pL55 {
  padding-left: 55px !important;
}

.pL60 {
  padding-left: 60px !important;
}

.pL65 {
  padding-left: 65px !important;
}

.pL70 {
  padding-left: 70px !important;
}

.pL75 {
  padding-left: 75px !important;
}

.pL80 {
  padding-left: 80px !important;
}

.pL85 {
  padding-left: 85px !important;
}

.pL90 {
  padding-left: 90px !important;
}

.pL95 {
  padding-left: 95px !important;
}

.pL100 {
  padding-left: 100px !important;
}

.pL105 {
  padding-left: 105px !important;
}

.pL110 {
  padding-left: 110px !important;
}

.pL115 {
  padding-left: 115px !important;
}

.pL120 {
  padding-left: 120px !important;
}

.pL125 {
  padding-left: 125px !important;
}

.pL130 {
  padding-left: 130px !important;
}

.pL135 {
  padding-left: 135px !important;
}

.pL140 {
  padding-left: 140px !important;
}

.pL145 {
  padding-left: 145px !important;
}

.pL150 {
  padding-left: 150px !important;
}

.pR0 {
  padding-right: 0px !important;
}

.pR5 {
  padding-right: 5px !important;
}

.pR10 {
  padding-right: 10px !important;
}

.pR15 {
  padding-right: 15px !important;
}

.pR20 {
  padding-right: 20px !important;
}

.pR25 {
  padding-right: 25px !important;
}

.pR30 {
  padding-right: 30px !important;
}

.pR35 {
  padding-right: 35px !important;
}

.pR40 {
  padding-right: 40px !important;
}

.pR45 {
  padding-right: 45px !important;
}

.pR50 {
  padding-right: 50px !important;
}

.pR55 {
  padding-right: 55px !important;
}

.pR60 {
  padding-right: 60px !important;
}

.pR65 {
  padding-right: 65px !important;
}

.pR70 {
  padding-right: 70px !important;
}

.pR75 {
  padding-right: 75px !important;
}

.pR80 {
  padding-right: 80px !important;
}

.pR85 {
  padding-right: 85px !important;
}

.pR90 {
  padding-right: 90px !important;
}

.pR95 {
  padding-right: 95px !important;
}

.pR100 {
  padding-right: 100px !important;
}

.pR105 {
  padding-right: 105px !important;
}

.pR110 {
  padding-right: 110px !important;
}

.pR115 {
  padding-right: 115px !important;
}

.pR120 {
  padding-right: 120px !important;
}

.pR125 {
  padding-right: 125px !important;
}

.pR130 {
  padding-right: 130px !important;
}

.pR135 {
  padding-right: 135px !important;
}

.pR140 {
  padding-right: 140px !important;
}

.pR145 {
  padding-right: 145px !important;
}

.pR150 {
  padding-right: 150px !important;
}

.pA0 {
  padding: 0px !important;
}

.pA5 {
  padding: 5px !important;
}

.pA10 {
  padding: 10px !important;
}

.pA15 {
  padding: 15px !important;
}

.pA20 {
  padding: 20px !important;
}

.pA25 {
  padding: 25px !important;
}

.pA30 {
  padding: 30px !important;
}

.pA35 {
  padding: 35px !important;
}

.pA40 {
  padding: 40px !important;
}

.pA45 {
  padding: 45px !important;
}

.pA50 {
  padding: 50px !important;
}

.pA55 {
  padding: 55px !important;
}

.pA60 {
  padding: 60px !important;
}

.pA65 {
  padding: 65px !important;
}

.pA70 {
  padding: 70px !important;
}

.pA75 {
  padding: 75px !important;
}

.pA80 {
  padding: 80px !important;
}

.pA85 {
  padding: 85px !important;
}

.pA90 {
  padding: 90px !important;
}

.pA95 {
  padding: 95px !important;
}

.pA100 {
  padding: 100px !important;
}

.pA105 {
  padding: 105px !important;
}

.pA110 {
  padding: 110px !important;
}

.pA115 {
  padding: 115px !important;
}

.pA120 {
  padding: 120px !important;
}

.pA125 {
  padding: 125px !important;
}

.pA130 {
  padding: 130px !important;
}

.pA135 {
  padding: 135px !important;
}

.pA140 {
  padding: 140px !important;
}

.pA145 {
  padding: 145px !important;
}

.pA150 {
  padding: 150px !important;
}

.mB1em {
  margin-bottom: 1em !important;
}

/*! mb */
@media (max-width: 900px) and (min-width: 0px) {
  .mA0 {
    margin: 0% !important;
  }
  .mA5 {
    margin: 2.5% !important;
  }
  .mA10 {
    margin: 2.5% !important;
  }
  .mA15 {
    margin: 2.5% !important;
  }
  .mA20 {
    margin: 5% !important;
  }
  .mA25 {
    margin: 5% !important;
  }
  .mA30 {
    margin: 5% !important;
  }
  .mA35 {
    margin: 7.5% !important;
  }
  .mA40 {
    margin: 7.5% !important;
  }
  .mA45 {
    margin: 7.5% !important;
  }
  .mA50 {
    margin: 10% !important;
  }
  .mA55 {
    margin: 10% !important;
  }
  .mA60 {
    margin: 10% !important;
  }
  .mA65 {
    margin: 12.5% !important;
  }
  .mA70 {
    margin: 12.5% !important;
  }
  .mA75 {
    margin: 12.5% !important;
  }
  .mA80 {
    margin: 15% !important;
  }
  .mA85 {
    margin: 15% !important;
  }
  .mA90 {
    margin: 15% !important;
  }
  .mA95 {
    margin: 17.5% !important;
  }
  .mA100 {
    margin: 17.5% !important;
  }
  .mA105 {
    margin: 17.5% !important;
  }
  .mA110 {
    margin: 20% !important;
  }
  .mA115 {
    margin: 20% !important;
  }
  .mA120 {
    margin: 20% !important;
  }
  .mA125 {
    margin: 22.5% !important;
  }
  .mA130 {
    margin: 22.5% !important;
  }
  .mA135 {
    margin: 22.5% !important;
  }
  .mA140 {
    margin: 25% !important;
  }
  .mA145 {
    margin: 25% !important;
  }
  .mA150 {
    margin: 25% !important;
  }
  .mT10 {
    margin-top: 2.5% !important;
  }
  .mT15 {
    margin-top: 2.5% !important;
  }
  .mT20 {
    margin-top: 5% !important;
  }
  .mT25 {
    margin-top: 5% !important;
  }
  .mT30 {
    margin-top: 5% !important;
  }
  .mT35 {
    margin-top: 7.5% !important;
  }
  .mT40 {
    margin-top: 7.5% !important;
  }
  .mT45 {
    margin-top: 7.5% !important;
  }
  .mT50 {
    margin-top: 12% !important;
  }
  .mT55 {
    margin-top: 10% !important;
  }
  .mT60 {
    margin-top: 10% !important;
  }
  .mT65 {
    margin-top: 12.5% !important;
  }
  .mT70 {
    margin-top: 12.5% !important;
  }
  .mT75 {
    margin-top: 12.5% !important;
  }
  .mT80 {
    margin-top: 15% !important;
  }
  .mT85 {
    margin-top: 15% !important;
  }
  .mT90 {
    margin-top: 15% !important;
  }
  .mT95 {
    margin-top: 17.5% !important;
  }
  .mT100 {
    margin-top: 17.5% !important;
  }
  .mT105 {
    margin-top: 17.5% !important;
  }
  .mT110 {
    margin-top: 20% !important;
  }
  .mT115 {
    margin-top: 20% !important;
  }
  .mT120 {
    margin-top: 20% !important;
  }
  .mT125 {
    margin-top: 22.5% !important;
  }
  .mT130 {
    margin-top: 22.5% !important;
  }
  .mT135 {
    margin-top: 22.5% !important;
  }
  .mT140 {
    margin-top: 25% !important;
  }
  .mT145 {
    margin-top: 25% !important;
  }
  .mT150 {
    margin-top: 25% !important;
  }
  .mT155 {
    margin-top: 25.5% !important;
  }
  .mB0 {
    margin-bottom: 0% !important;
  }
  .mB5 {
    margin-bottom: 2.5% !important;
  }
  .mB10 {
    margin-bottom: 2.5% !important;
  }
  .mB15 {
    margin-bottom: 2.5% !important;
  }
  .mB20 {
    margin-bottom: 5% !important;
  }
  .mB25 {
    margin-bottom: 5% !important;
  }
  .mB30 {
    margin-bottom: 5% !important;
  }
  .mB35 {
    margin-bottom: 7.5% !important;
  }
  .mB40 {
    margin-bottom: 7.5% !important;
  }
  .mB45 {
    margin-bottom: 7.5% !important;
  }
  .mB50 {
    margin-bottom: 10% !important;
  }
  .mB55 {
    margin-bottom: 10% !important;
  }
  .mB60 {
    margin-bottom: 10% !important;
  }
  .mB65 {
    margin-bottom: 12.5% !important;
  }
  .mB70 {
    margin-bottom: 12.5% !important;
  }
  .mB75 {
    margin-bottom: 12.5% !important;
  }
  .mB80 {
    margin-bottom: 15% !important;
  }
  .mB85 {
    margin-bottom: 15% !important;
  }
  .mB90 {
    margin-bottom: 15% !important;
  }
  .mB95 {
    margin-bottom: 17.5% !important;
  }
  .mB100 {
    margin-bottom: 17.5% !important;
  }
  .mB105 {
    margin-bottom: 17.5% !important;
  }
  .mB110 {
    margin-bottom: 20% !important;
  }
  .mB115 {
    margin-bottom: 20% !important;
  }
  .mB120 {
    margin-bottom: 20% !important;
  }
  .mB125 {
    margin-bottom: 22.5% !important;
  }
  .mB130 {
    margin-bottom: 22.5% !important;
  }
  .mB135 {
    margin-bottom: 22.5% !important;
  }
  .mB140 {
    margin-bottom: 25% !important;
  }
  .mB145 {
    margin-bottom: 25% !important;
  }
  .mB150 {
    margin-bottom: 25% !important;
  }
  .mL0 {
    margin-left: 0% !important;
  }
  .mL5 {
    margin-left: 2.5% !important;
  }
  .mL10 {
    margin-left: 2.5% !important;
  }
  .mL15 {
    margin-left: 2.5% !important;
  }
  .mL20 {
    margin-left: 5% !important;
  }
  .mL25 {
    margin-left: 5% !important;
  }
  .mL30 {
    margin-left: 5% !important;
  }
  .mL35 {
    margin-left: 7.5% !important;
  }
  .mL40 {
    margin-left: 7.5% !important;
  }
  .mL45 {
    margin-left: 7.5% !important;
  }
  .mL50 {
    margin-left: 10% !important;
  }
  .mL55 {
    margin-left: 10% !important;
  }
  .mL60 {
    margin-left: 10% !important;
  }
  .mL65 {
    margin-left: 12.5% !important;
  }
  .mL70 {
    margin-left: 12.5% !important;
  }
  .mL75 {
    margin-left: 12.5% !important;
  }
  .mL80 {
    margin-left: 15% !important;
  }
  .mL85 {
    margin-left: 15% !important;
  }
  .mL90 {
    margin-left: 15% !important;
  }
  .mL95 {
    margin-left: 17.5% !important;
  }
  .mL100 {
    margin-left: 17.5% !important;
  }
  .mL105 {
    margin-left: 17.5% !important;
  }
  .mL110 {
    margin-left: 20% !important;
  }
  .mL115 {
    margin-left: 20% !important;
  }
  .mL120 {
    margin-left: 20% !important;
  }
  .mL125 {
    margin-left: 22.5% !important;
  }
  .mL130 {
    margin-left: 22.5% !important;
  }
  .mL135 {
    margin-left: 22.5% !important;
  }
  .mL140 {
    margin-left: 25% !important;
  }
  .mL145 {
    margin-left: 25% !important;
  }
  .mL150 {
    margin-left: 25% !important;
  }
  .mR0 {
    margin-right: 0% !important;
  }
  .mR5 {
    margin-right: 2.5% !important;
  }
  .mR10 {
    margin-right: 2.5% !important;
  }
  .mR15 {
    margin-right: 2.5% !important;
  }
  .mR20 {
    margin-right: 5% !important;
  }
  .mR25 {
    margin-right: 5% !important;
  }
  .mR30 {
    margin-right: 5% !important;
  }
  .mR35 {
    margin-right: 7.5% !important;
  }
  .mR40 {
    margin-right: 7.5% !important;
  }
  .mR45 {
    margin-right: 7.5% !important;
  }
  .mR50 {
    margin-right: 10% !important;
  }
  .mR55 {
    margin-right: 10% !important;
  }
  .mR60 {
    margin-right: 10% !important;
  }
  .mR65 {
    margin-right: 12.5% !important;
  }
  .mR70 {
    margin-right: 12.5% !important;
  }
  .mR75 {
    margin-right: 12.5% !important;
  }
  .mR80 {
    margin-right: 15% !important;
  }
  .mR85 {
    margin-right: 15% !important;
  }
  .mR90 {
    margin-right: 15% !important;
  }
  .mR95 {
    margin-right: 17.5% !important;
  }
  .mR100 {
    margin-right: 17.5% !important;
  }
  .mR105 {
    margin-right: 17.5% !important;
  }
  .mR110 {
    margin-right: 20% !important;
  }
  .mR115 {
    margin-right: 20% !important;
  }
  .mR120 {
    margin-right: 20% !important;
  }
  .mR125 {
    margin-right: 22.5% !important;
  }
  .mR130 {
    margin-right: 22.5% !important;
  }
  .mR135 {
    margin-right: 22.5% !important;
  }
  .mR140 {
    margin-right: 25% !important;
  }
  .mR145 {
    margin-right: 25% !important;
  }
  .mR150 {
    margin-right: 25% !important;
  }
  .pT0 {
    padding-top: 0% !important;
  }
  .pT5 {
    padding-top: 2.5% !important;
  }
  .pT10 {
    padding-top: 2.5% !important;
  }
  .pT15 {
    padding-top: 2.5% !important;
  }
  .pT20 {
    padding-top: 5% !important;
  }
  .pT25 {
    padding-top: 5% !important;
  }
  .pT30 {
    padding-top: 5% !important;
  }
  .pT35 {
    padding-top: 7.5% !important;
  }
  .pT40 {
    padding-top: 7.5% !important;
  }
  .pT45 {
    padding-top: 7.5% !important;
  }
  .pT50 {
    padding-top: 10% !important;
  }
  .pT55 {
    padding-top: 10% !important;
  }
  .pT60 {
    padding-top: 10% !important;
  }
  .pT65 {
    padding-top: 12.5% !important;
  }
  .pT70 {
    padding-top: 12.5% !important;
  }
  .pT75 {
    padding-top: 12.5% !important;
  }
  .pT80 {
    padding-top: 15% !important;
  }
  .pT85 {
    padding-top: 15% !important;
  }
  .pT90 {
    padding-top: 15% !important;
  }
  .pT95 {
    padding-top: 17.5% !important;
  }
  .pT100 {
    padding-top: 17.5% !important;
  }
  .pT105 {
    padding-top: 17.5% !important;
  }
  .pT110 {
    padding-top: 20% !important;
  }
  .pT115 {
    padding-top: 20% !important;
  }
  .pT120 {
    padding-top: 20% !important;
  }
  .pT125 {
    padding-top: 22.5% !important;
  }
  .pT130 {
    padding-top: 22.5% !important;
  }
  .pT135 {
    padding-top: 22.5% !important;
  }
  .pT140 {
    padding-top: 25% !important;
  }
  .pT145 {
    padding-top: 25% !important;
  }
  .pT150 {
    padding-top: 25% !important;
  }
  .pB0 {
    padding-bottom: 0% !important;
  }
  .pB5 {
    padding-bottom: 2.5% !important;
  }
  .pB10 {
    padding-bottom: 2.5% !important;
  }
  .pB15 {
    padding-bottom: 2.5% !important;
  }
  .pB20 {
    padding-bottom: 5% !important;
  }
  .pB25 {
    padding-bottom: 5% !important;
  }
  .pB30 {
    padding-bottom: 5% !important;
  }
  .pB35 {
    padding-bottom: 7.5% !important;
  }
  .pB40 {
    padding-bottom: 7.5% !important;
  }
  .pB45 {
    padding-bottom: 7.5% !important;
  }
  .pB50 {
    padding-bottom: 10% !important;
  }
  .pB55 {
    padding-bottom: 10% !important;
  }
  .pB60 {
    padding-bottom: 10% !important;
  }
  .pB65 {
    padding-bottom: 12.5% !important;
  }
  .pB70 {
    padding-bottom: 12.5% !important;
  }
  .pB75 {
    padding-bottom: 12.5% !important;
  }
  .pB80 {
    padding-bottom: 15% !important;
  }
  .pB85 {
    padding-bottom: 15% !important;
  }
  .pB90 {
    padding-bottom: 15% !important;
  }
  .pB95 {
    padding-bottom: 17.5% !important;
  }
  .pB100 {
    padding-bottom: 17.5% !important;
  }
  .pB105 {
    padding-bottom: 17.5% !important;
  }
  .pB110 {
    padding-bottom: 20% !important;
  }
  .pB115 {
    padding-bottom: 20% !important;
  }
  .pB120 {
    padding-bottom: 20% !important;
  }
  .pB125 {
    padding-bottom: 22.5% !important;
  }
  .pB130 {
    padding-bottom: 22.5% !important;
  }
  .pB135 {
    padding-bottom: 22.5% !important;
  }
  .pB140 {
    padding-bottom: 25% !important;
  }
  .pB145 {
    padding-bottom: 25% !important;
  }
  .pB150 {
    padding-bottom: 25% !important;
  }
  .pL0 {
    padding-left: 0% !important;
  }
  .pL5 {
    padding-left: 2.5% !important;
  }
  .pL10 {
    padding-left: 2.5% !important;
  }
  .pL15 {
    padding-left: 2.5% !important;
  }
  .pL20 {
    padding-left: 5% !important;
  }
  .pL25 {
    padding-left: 5% !important;
  }
  .pL30 {
    padding-left: 5% !important;
  }
  .pL35 {
    padding-left: 7.5% !important;
  }
  .pL40 {
    padding-left: 7.5% !important;
  }
  .pL45 {
    padding-left: 7.5% !important;
  }
  .pL50 {
    padding-left: 10% !important;
  }
  .pL55 {
    padding-left: 10% !important;
  }
  .pL60 {
    padding-left: 10% !important;
  }
  .pL65 {
    padding-left: 12.5% !important;
  }
  .pL70 {
    padding-left: 12.5% !important;
  }
  .pL75 {
    padding-left: 12.5% !important;
  }
  .pL80 {
    padding-left: 15% !important;
  }
  .pL85 {
    padding-left: 15% !important;
  }
  .pL90 {
    padding-left: 15% !important;
  }
  .pL95 {
    padding-left: 17.5% !important;
  }
  .pL100 {
    padding-left: 17.5% !important;
  }
  .pL105 {
    padding-left: 17.5% !important;
  }
  .pL110 {
    padding-left: 20% !important;
  }
  .pL115 {
    padding-left: 20% !important;
  }
  .pL120 {
    padding-left: 20% !important;
  }
  .pL125 {
    padding-left: 22.5% !important;
  }
  .pL130 {
    padding-left: 22.5% !important;
  }
  .pL135 {
    padding-left: 22.5% !important;
  }
  .pL140 {
    padding-left: 25% !important;
  }
  .pL145 {
    padding-left: 25% !important;
  }
  .pL150 {
    padding-left: 25% !important;
  }
  .pR0 {
    padding-right: 0% !important;
  }
  .pR5 {
    padding-right: 2.5% !important;
  }
  .pR10 {
    padding-right: 2.5% !important;
  }
  .pR15 {
    padding-right: 2.5% !important;
  }
  .pR20 {
    padding-right: 5% !important;
  }
  .pR25 {
    padding-right: 5% !important;
  }
  .pR30 {
    padding-right: 5% !important;
  }
  .pR35 {
    padding-right: 7.5% !important;
  }
  .pR40 {
    padding-right: 7.5% !important;
  }
  .pR45 {
    padding-right: 7.5% !important;
  }
  .pR50 {
    padding-right: 10% !important;
  }
  .pR55 {
    padding-right: 10% !important;
  }
  .pR60 {
    padding-right: 10% !important;
  }
  .pR65 {
    padding-right: 12.5% !important;
  }
  .pR70 {
    padding-right: 12.5% !important;
  }
  .pR75 {
    padding-right: 12.5% !important;
  }
  .pR80 {
    padding-right: 15% !important;
  }
  .pR85 {
    padding-right: 15% !important;
  }
  .pR90 {
    padding-right: 15% !important;
  }
  .pR95 {
    padding-right: 17.5% !important;
  }
  .pR100 {
    padding-right: 17.5% !important;
  }
  .pR105 {
    padding-right: 17.5% !important;
  }
  .pR110 {
    padding-right: 20% !important;
  }
  .pR115 {
    padding-right: 20% !important;
  }
  .pR120 {
    padding-right: 20% !important;
  }
  .pR125 {
    padding-right: 22.5% !important;
  }
  .pR130 {
    padding-right: 22.5% !important;
  }
  .pR135 {
    padding-right: 22.5% !important;
  }
  .pR140 {
    padding-right: 25% !important;
  }
  .pR145 {
    padding-right: 25% !important;
  }
  .pR150 {
    padding-right: 25% !important;
  }
  .pA0 {
    padding: 0% !important;
  }
  .pA5 {
    padding: 2.5% !important;
  }
  .pA10 {
    padding: 2.5% !important;
  }
  .pA15 {
    padding: 2.5% !important;
  }
  .pA20 {
    padding: 5% !important;
  }
  .pA25 {
    padding: 5% !important;
  }
  .pA30 {
    padding: 5% !important;
  }
  .pA35 {
    padding: 7.5% !important;
  }
  .pA40 {
    padding: 7.5% !important;
  }
  .pA45 {
    padding: 7.5% !important;
  }
  .pA50 {
    padding: 10% !important;
  }
  .pA55 {
    padding: 10% !important;
  }
  .pA60 {
    padding: 10% !important;
  }
  .pA65 {
    padding: 12.5% !important;
  }
  .pA70 {
    padding: 12.5% !important;
  }
  .pA75 {
    padding: 12.5% !important;
  }
  .pA80 {
    padding: 15% !important;
  }
  .pA85 {
    padding: 15% !important;
  }
  .pA90 {
    padding: 15% !important;
  }
  .pA95 {
    padding: 17.5% !important;
  }
  .pA100 {
    padding: 17.5% !important;
  }
  .pA105 {
    padding: 17.5% !important;
  }
  .pA110 {
    padding: 20% !important;
  }
  .pA115 {
    padding: 20% !important;
  }
  .pA120 {
    padding: 20% !important;
  }
  .pA125 {
    padding: 22.5% !important;
  }
  .pA130 {
    padding: 22.5% !important;
  }
  .pA135 {
    padding: 22.5% !important;
  }
  .pA140 {
    padding: 25% !important;
  }
  .pA145 {
    padding: 25% !important;
  }
  .pA150 {
    padding: 25% !important;
  }
}
.z-in0 {
  z-index: 0;
}

.z-in1 {
  z-index: 1;
}

.z-in2 {
  z-index: 2;
}

.z-in3 {
  z-index: 3;
}

.z-in4 {
  z-index: 4;
}

.z-in5 {
  z-index: 5;
}

.z-in6 {
  z-index: 6;
}

.z-in7 {
  z-index: 7;
}

.z-in8 {
  z-index: 8;
}

.z-in9 {
  z-index: 9;
}

.z-in10 {
  z-index: 10;
}

.visibility_hidden {
  visibility: hidden;
}

.no_link {
  color: #9a9a9a !important;
  pointer-events: none !important;
}

.po_ev_no {
  pointer-events: none !important;
}

.cl7_3,
.cl4_6,
.cl3_7_max,
.cl6_4,
.cl3_7,
.cl25,
.cl33,
.cl50,
.cl50_max {
  display: flex;
  justify-content: space-between;
}

@media (min-width: 901px) {
  .cl50_max > *,
  .cl50 > *,
  .cl33 > *,
  .cl25 > *,
  .cl3_7 > *,
  .cl7_3 > *,
  .cl4_6 > *,
  .cl3_7_max > *,
  .cl6_4 > * {
    display: block;
  }
  .cl50_max > * {
    width: 50%;
    box-sizing: border-box;
    margin-bottom: 4%;
  }
  .cl50 > * {
    width: 48%;
    margin-bottom: 4%;
    box-sizing: border-box;
  }
  .cl33 > * {
    width: 30%;
    margin-bottom: 4%;
    box-sizing: border-box;
  }
  .cl25 > * {
    width: 23%;
    margin-bottom: 4%;
    box-sizing: border-box;
  }
  .cl3_7 > *:nth-child(odd) {
    width: 30%;
  }
  .cl3_7 > *:nth-child(even) {
    width: 66%;
  }
  .cl7_3 > *:nth-child(odd) {
    width: 66%;
  }
  .cl7_3 > *:nth-child(even) {
    width: 30%;
  }
  .cl4_6 > *:nth-child(odd) {
    width: 40%;
  }
  .cl4_6 > *:nth-child(even) {
    width: 56%;
  }
  .cl3_7_max > *:nth-child(odd) {
    width: 30%;
  }
  .cl3_7_max > *:nth-child(even) {
    width: 70%;
  }
  .cl6_4 > *:nth-child(odd) {
    width: 56%;
  }
  .cl6_4 > *:nth-child(even) {
    width: 40%;
  }
}
@media (max-width: 900px) and (min-width: 0px) {
  .cl50_max,
  .cl50,
  .cl33,
  .cl25,
  .cl20,
  .cl3_7,
  .cl7_3,
  .cl4_6,
  .cl3_7_max,
  .cl6_4 {
    flex-wrap: wrap;
  }
  .cl50_max > * {
    width: 100%;
    margin-bottom: 4%;
    box-sizing: border-box;
  }
  .cl50 > * {
    width: 100%;
    margin-bottom: 4%;
    box-sizing: border-box;
  }
  .cl33 > * {
    width: 48%;
    margin-bottom: 4%;
    box-sizing: border-box;
  }
  .cl25 > *,
  .cl20 > * {
    width: 48%;
    margin-bottom: 4%;
    position: relative;
  }
  .cl3_7 > *,
  .cl7_3 > *,
  .cl4_6 > *,
  .cl3_7_max > *,
  .cl6_4 > * {
    width: 100%;
    margin-bottom: 5%;
  }
}
/* ---------------------------------------------------------------------------
  ★共通
--------------------------------------------------------------------------- */
html {
  font-size: 62.5%;
}

body {
  margin: 0 auto;
  padding: 0;
  font-size: 1.6rem;
  background: #fbf9f4;
  position: relative;
  color: #222;
  font-weight: 500;
  text-align: left;
  box-sizing: border-box;
  line-height: 1.8;
  max-width: 100%;
  font-family: "Noto Sans JP", sans-serif;
}

object {
  pointer-events: none;
}

.pc {
  display: block !important;
}

.sp,
.pc_1000 {
  display: none !important;
}

a {
  text-decoration: none;
  transition: 0.3s;
}

/* ---------------------------------------------------------------------------
  ★フォントファミリー
--------------------------------------------------------------------------- */
.mincho {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E,
    serif;
}

.gothic {
  font-family: "Hiragino Sans", "游ゴシック", "Yu Gothic", "游ゴシック体",
    "YuGothic", sans-serif;
}

.f_dm {
  font-family: "DM Sans", sans-serif;
}

.f_it {
  font-family: "Inter", sans-serif;
}

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

.f_rb {
  font-family: "Roboto", sans-serif;
}

.italic {
  font-style: italic;
}

.h2Tit_area {
  margin-left: 0.3em;
  overflow: hidden; /* アニメ外のはみ出し防止（必要に応じて） */
  position: relative;
}

.h2Tit_area img {
  width: 1.5em;
  margin-right: 0.3em;
}

.h2Tit_w {
  padding-left: 1.8em;
  background: url(../img/symbol_w.svg) no-repeat left center/1.5em;
  font-weight: 700;
}

.h2Tit {
  font-weight: 700;
}

span.h2Tit,
.h2Tit span {
  padding-left: 1.8em;
  background: url(../img/symbol.svg) no-repeat left center/1.5em;
  font-weight: 700;
}

.h2Tit_w2 span {
  padding-left: 1.8em;
  background: url(../img/symbol_w.svg) no-repeat left center/1.5em;
  font-weight: 700;
}

.marker_r {
  background: linear-gradient(transparent 70%, #f05a2d 0%);
  display: inline;
  padding: 0 1px 0px;
}

/* ---------------------------------------------------------------------------
  ★背景
--------------------------------------------------------------------------- */
.bg_br {
  background: #d0b18f;
}

.bg_br2 {
  background: #fbf9f4;
}

.bg_g {
  background: #eae9e4;
}

.bg_gr {
  background: #59a952;
}

.bg_y {
  background: #ffda37;
}

.bg_zara {
  background: url(../img/bg_zara.png) repeat center/contain;
}

/* ---------------------------------------------------------------------------
  ★LIST
--------------------------------------------------------------------------- */
.listLink li a {
  border-bottom: 1px solid #fbf9f4;
  display: inline-block;
  padding: 32px 3em 29px 20px;
  background: url(../img/arrow_w.svg) no-repeat right 22px center/1.6em;
  width: 100%;
}

.listLink li:nth-of-type(1) {
  border-top: 1px solid #fbf9f4;
}

.linkBox a {
  border: 1px solid #000;
  background: #fbf9f4;
  box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.25);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 24px;
}

.linkBox a img {
  width: 5em;
  margin: auto;
}

.linkBox2 {
  border: 1px solid #000;
  background: #fbf9f4;
  box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.25);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 24px;
}

.bgW {
  background: #fff;
  box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.25);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 24px;
}

.bgW2 {
  background: #fff;
  box-shadow: 4px 4px 0px 0px rgba(208, 177, 143, 0.25);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 24px;
}

.bgW3 {
  background: #fff;
  box-shadow: 4px 4px 0px 0px rgba(89, 169, 82, 0.25);
  padding: 24px;
}

.bgG {
  background: #eef6ed;
  border-radius: 5em;
  padding: 40px 60px;
  position: relative;
  z-index: 0;
}

.bgG::after {
  content: "";
  position: absolute;
  display: inline-block;
  left: -2%;
  top: 7%;
  background: url(../img/symbol.svg) no-repeat center/100%;
  width: 4em;
  height: 4em;
  z-index: -1;
  transform: rotate(47deg);
}

.bgB {
  background: #f0eeec;
  border-radius: 1em;
  padding: 18px;
  position: relative;
  z-index: 0;
}

.border_br {
  background: url(../img/bg_zara.png) no-repeat center/cover;
  height: 0.5vw;
  width: 100%;
}

.b_b {
  border-bottom: 1px solid #645544;
}

.b_g {
  border-bottom: 2px solid #59a952;
}

.linkBox_img a {
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
  height: 21vw;
  width: 100%;
  padding: 20px 20px;
  position: relative;
  overflow: hidden;
  z-index: 0;
}

.linkBox_img a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: url(../img/home02_photo01.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.linkBox_img a::after {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  bottom: 0%;
  background: linear-gradient(
    180deg,
    rgba(175, 175, 171, 0) 13.98%,
    rgba(81, 81, 80, 0.64) 92.41%,
    rgba(46, 46, 46, 0.88) 162.29%
  );
  background-blend-mode: multiply;
  width: 100%;
  height: 9vw;
  z-index: -1;
}

.linkBox_img a:hover::before {
  opacity: 0.8;
  transform: scale(1.1);
}

.linkBox_img1 a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: url(../img/home02_photo01.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.linkBox_img2 a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: url(../img/home02_photo02.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.linkBox_img3 a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: url(../img/home02_photo03.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.linkBox_img4 a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: url(../img/home02_photo04.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.linkBox_img5 a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: url(../img/home02_photo05.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.linkBox_img6 a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: url(../img/home02_photo06.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.linkBox_img7 a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: url(../img/home02_photo07.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.linkBox_img8 a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: url(../img/home02_photo08.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.linkBox_img9 a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: url(../img/home02_photo09.webp) no-repeat center/cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}
/* ---------------------------------------------------------------------------
  ★TOTOP
--------------------------------------------------------------------------- */
#totop {
  width: 108px;
  height: 90px;
  background: url(../img/to_top.png) no-repeat center/contain;
  display: block;
}

.totop_wrap {
  position: fixed;
  right: 3.5%;
  bottom: 6.5%;
  z-index: 11;
}

.totop_wrap .icon-totop {
  display: block;
  width: 100%;
  text-align: center;
}

.totop_wrap .icon-totop::before {
  font-size: 5rem;
  content: "";
  width: 15px;
  height: 15px;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
  margin: auto;
  transition: 0.3s;
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%) rotate(-45deg);
}

#totop span {
  display: none;
}

/* =======================================
	★mailformpro
========================================== */
/*zyuusyoBox*/
td.zyuusyoBox > div:nth-child(1) {
  margin-bottom: 6px;
}

td.zyuusyoBox > div:nth-child(1) p {
  float: left;
  padding-top: 6px;
}

td.zyuusyoBox > div:nth-child(1) input {
  width: 5.5em;
  margin-left: 5px;
}

td.zyuusyoBox > div:nth-child(2) input:nth-child(1) {
  width: 6.7em;
}

#privacyBox {
  overflow-y: scroll;
  padding: 21px;
  background: #fff;
  margin-top: 20px;
  height: 163px;
  margin-bottom: 20px;
}

#js-show-popup {
  color: #0236cb;
  text-decoration: underline;
  cursor: pointer;
}

#contact .popup {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: 0.6s;
}

#contact .popup.is-show {
  opacity: 1;
  visibility: visible;
}

#contact .popup-inner {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  max-width: 600px;
  padding: 50px;
  background-color: #fff;
  z-index: 2;
  max-height: 90vh;
  overflow-y: scroll;
}

#contact .popup-inner img {
  width: 100%;
}

#contact .close-btn {
  position: absolute;
  right: 0;
  top: 0;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  cursor: pointer;
}

#contact .close-btn i {
  font-size: 20px;
  color: #333;
}

#contact .black-background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 1;
  cursor: pointer;
}

#contact label.c_b {
  font-size: 12px;
  margin: auto;
  display: flex;
  align-items: center;
  text-align: center;
  justify-content: center;
  font-weight: bold;
}

.p_policyArea a {
  word-break: break-all;
}

input::-moz-placeholder {
  color: #a9a9a9;
}

input::placeholder {
  color: #a9a9a9;
}

input.short {
  width: 25%;
}

input.middle {
  width: 50%;
}

/* ---------------------------------------------------------------------------
  ★パーツ集:テーブル
--------------------------------------------------------------------------- */
table {
  width: 100%;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-all;
}

.c_table_01 table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: inherit;
  width: 100%;
}

.c_table_01 table tbody tr th {
  border-bottom: 2px solid #fff;
  background: #d0b18f;
  color: #fff;
  vertical-align: top;
  padding: 23px 15px;
  font-weight: 500;
  width: 13em;
  word-break: break-all;
  font-weight: 600;
  letter-spacing: 0.1em;
}

.c_table_01 table tbody tr td {
  border-bottom: 2px solid #f3ece3;
  background: #fff;
  vertical-align: top;
  padding: 23px 21px;
  word-break: break-all;
}

.c_table_02 table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: inherit;
  width: 100%;
}

.c_table_02 table tbody tr th {
  border-bottom: 2px solid #d0b18f;
  /* background: #fff; */
  vertical-align: top;
  padding: 23px 15px;
  font-weight: 500;
  width: 13em;
  word-break: break-all;
  font-weight: 600;
  letter-spacing: 0.1em;
}

.c_table_02 table tbody tr td {
  border-bottom: 2px solid #f3ece3;
  vertical-align: top;
  padding: 23px 21px;
  word-break: break-all;
}

/* =======================================
	パンくず
========================================== */
ul.pankuzu {
  display: flex;
  font-size: 14px;
  color: #222;
  letter-spacing: 0.3em;
  position: relative;
  line-height: 100%;
  align-items: center;
}

ul.pankuzu li:nth-child(1) a {
  font-family: mr-eaves-sans, sans-serif;
  font-size: 14px;
}

ul.pankuzu a {
  margin-right: 13px;
  position: relative;
  display: block;
  padding-right: 16px;
  text-decoration: none;
  color: #222;
}

ul.pankuzu a:before {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

ul.pankuzu a::before,
ul.pankuzu a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

ul.pankuzu a::before {
  right: 3px;
  width: 4px;
  height: 4px;
  border-top: 1px solid #222;
  border-right: 1px solid #222;
  transform: rotate(45deg);
}

.pankuzuArea {
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
  background: #fbf9f4;
}

/* =======================================
	ページャー
========================================== */
div#pager {
  display: flex;
  justify-content: center;
}

div#pager a,
#pager span {
  border: 1px solid #59a952;
  height: 40px;
  line-height: 36px;
  width: 40px;
  text-align: center;
  margin: 0 5px;
  color: #59a952;
  position: relative;
}

#pager span {
  background: #ea8b8b;
  color: #59a952;
}

#pager .dots {
  color: #949494;
  background: no-repeat;
  border: none;
  margin: 0;
  width: 26px;
  transform: translate(0px, 2px);
}

#pager .next:before,
#pager .prev:before {
  content: "";
  background: url(../images/arrow03.svg);
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: contain;
  top: 0;
  left: 0;
}

#pager .next {
  margin-left: 20px;
}

#pager .prev {
  margin-right: 20px;
}

#pager .next:before {
  transform: rotateY(180deg);
}

#pager {
  text-align: center;
  margin: 0 0 20px;
}

.page-numbers,
#pager .current {
  background: #fff;
  border-radius: 0;
  padding: 1px 8px 5px;
  color: #59a952;
}

#pager .current {
  background: #59a952;
  color: #fff;
}

#pager a:link,
#pager a:visited,
#pager a:hover,
#pager a:active {
  color: #59a952;
}

/* =======================================
	home
========================================== */
main {
  overflow: hidden;
}

.main {
  height: 58.6vw;
  overflow: hidden;
  position: relative;
  z-index: 2;
}

.main::after {
  position: absolute;
  z-index: 1; /* トリミングしたい画像よりも高い値 */
  top: 1px;
  right: 0;
  width: 70%;
  height: 58.6vw;
  content: "";
  display: inline-block;
  background: url(../img/fv_right.webp) no-repeat center/cover;
  -webkit-clip-path: polygon(57% 0%, 100% 0%, 100% 100%, 0% 100%);
  clip-path: polygon(57% 0%, 100% 0%, 100% 100%, 0% 100%);
  will-change: transform, opacity;
}

.main .fv_l {
  width: 70.5%;
  height: 58.6vw;
  margin-right: auto;
  margin-left: 0;
  background: url(../img/fv01.jpg) no-repeat right 6% bottom 27%/135%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.main .fv_l::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: linear-gradient(
    206deg,
    rgba(237, 237, 237, 0.06) 15.64%,
    rgba(237, 237, 237, 0.58) 80.6%
  );
  width: 100%;
  height: 100%;
  z-index: -1;
}

.main .fv_txt {
  position: absolute;
  top: 21.8vw;
  left: 0%;
  z-index: 2;
}

.main .fv_txt .h2 {
  color: #111;
  text-shadow: 0px 4px 4px rgba(255, 255, 255, 0.25);
  font-size: 6.4rem;
  font-weight: 700;
  padding-left: 7vw;
  padding-bottom: 3vw;
  line-height: 163%;
}
.main .fv_txt .h2 .rela::before {
  content: "";
  position: absolute;
  display: inline-block;
  /* background: rgba(255, 255, 255, 0.65); */
  background: url(../img/fv_h2_bg.png) no-repeat center / 100%;
  width: 10em;
  height: 4.8em;
  border-radius: 132px;
  z-index: -1;
  position: absolute;
  top: -18%;
  left: -17.5%;
  /* transform: translateY(-50%) translateX(-50%);
  -webkit-backdrop-filter: blur(5.199999809265137px);
  backdrop-filter: blur(5.199999809265137px); */
}

.main .fv_txt .h2 span {
  color: #fff;
  text-shadow: 4px 4px 0px #000;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #000;
  font-size: 9rem;
  paint-order: stroke fill;
}

.main .active .walker {
  display: inline-block;
  position: relative;
  width: 1.25em;
  /* ===== 胴体が揺れる ================ */
  /* ===== 足がスイング ================ */
}

.main .active .walker .leg {
  position: absolute;
  bottom: 0;
  transform-origin: top center;
  /* 付け根を支点に回転させる */
}

.main .active .walker .leg.right {
  right: 3px;
  /* 体の中心からの距離       */
  animation: stepRight 0.9s linear;
}

.main .active .walker .leg.right img {
  width: 0.5em;
  height: 0.5em;
  margin-bottom: 4px;
}

.main .active .walker .leg.left {
  left: 4px;
  animation: stepLeft 0.9s linear;
}

.main .active .walker .leg.left img {
  width: 0.5em;
  height: 0.5em;
}

.main .active .walker .body {
  animation: bobbing 0.9s linear;
}

@keyframes bobbing {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}
@keyframes stepRight {
  0%,
  100% {
    transform: rotate(0deg);
    top: 40px;
    right: 0;
  }
  /* 後ろに残る足          */
  50% {
    transform: rotate(106deg);
    top: 62px;
    right: 32px;
  }
  /* 前に出す足            */
}
@keyframes stepLeft {
  0%,
  100% {
    transform: rotate(0);
    top: 43px;
    left: 0;
  }
  /* 前に出す足（反転）    */
  50% {
    transform: rotate(-100deg);
    top: 60px;
    left: 32px;
  }
  /* 後ろに残る足          */
}
.main #top_slider {
  padding-top: 9vw !important;
}

.main #top_slider li::before,
.main #bottom_slider li::before {
  content: "";
  position: absolute;
  display: inline-block;
  background: rgba(255, 255, 255, 0.47);
  width: 11vw;
  height: 11vw;
  border-radius: 50%;
  z-index: -1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

.main #bottom_slider li::before {
  top: 45%;
}

.main #top_slider li {
  height: 9.6vw;
  position: relative;
  z-index: 0;
}

.main #top_slider li img {
  height: 100%;
  width: auto;
  margin: auto;
}

.main #top_slider .mv01 {
  width: 12vw;
}

.main #top_slider .mv02 {
  width: 12vw;
}

.main #top_slider .mv03 {
  width: 13vw;
}

.main #top_slider .mv04 {
  width: 12.5vw;
}

.main #top_slider .mv04 img {
  width: 100%;
  height: auto;
  margin-top: 8px;
  margin-left: 4px;
}

.main #top_slider .mv05 {
  width: 17vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-left: 3vw;
}

.main #top_slider .mv05 img {
  width: 100%;
  height: auto;
}

.main #top_slider .mv06 {
  width: 15vw;
}

.main #top_slider .mv06 img {
  width: auto;
  margin-left: 50px;
  height: 100%;
}

.main #bottom_slider {
  padding-bottom: 5vw;
}

.main #bottom_slider li {
  height: 9.6vw;
  position: relative;
  z-index: 0;
}

.main #bottom_slider li img {
  height: 100%;
  width: auto;
  margin: auto;
}

.main #bottom_slider .mv01 {
  width: 12vw;
}

.main #bottom_slider .mv01 img {
  width: 100%;
  height: auto;
}

.main #bottom_slider .mv02 {
  width: 12vw;
}

.main #bottom_slider .mv02 img {
  width: 72%;
  height: auto;
  margin-left: 30px;
}

.main #bottom_slider .mv03 {
  width: 16vw;
}

.main #bottom_slider .mv04 {
  width: 13.5vw;
}

.main #bottom_slider .mv04 img {
  width: 74%;
  margin: 9px auto;
  height: auto;
}

.main #bottom_slider .mv05 {
  width: 12vw;
}

.main #bottom_slider .mv05 img {
  height: 87%;
  width: auto;
  margin: auto;
}

.main #bottom_slider .mv06 {
  width: 14vw;
}

.main #bottom_slider .mv06 img {
  width: 78%;
  height: auto;
  margin: 10px auto;
}

.main .bnr a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: #f8b700;
  width: 136px;
  height: 136px;
  border-radius: 50%;
  position: absolute;
  bottom: 4.7vw;
  right: 3.3vw;
  z-index: 3;
}

.main .bnr p {
  color: #111;
  font-weight: 700;
  padding-bottom: 1.3em;
  background: url(../img/arrow_bnr.svg) no-repeat bottom center/1em;
}

.top_news {
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
  background: #fbf9f4;
}

.top_news .day {
  width: 6.7em;
}

.top_news .cat {
  width: 7.4em;
}

.top_news .cat span {
  padding: 3px 13px;
  color: #fff;
  border-radius: 100px;
  background: #59a952;
}

.top_news .tit {
  width: calc(100% - 14.1em);
  padding-right: 3em;
  background: url(../img/arrow_b.svg) no-repeat right center/2em;
}

.home01 {
  position: relative;
  z-index: 0;
}

.home01::before {
  content: "About Us";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #9a9a9a;
  right: 0.6%;
  top: 9%;
  line-height: 100%;
  letter-spacing: 0.062em;
  font-size: 21rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: -1;
  color: #eae9e4;
  paint-order: stroke fill;
}

.home01 h3 {
  writing-mode: vertical-rl;
}

.home01 .h2Tit {
  padding-left: 0.3em;
}

.home02 .inner_1400_w {
  position: relative;
  z-index: 0;
}

.home02 .inner_1400_w::before {
  content: "Products";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #eae9e4;
  left: -0.4%;
  top: 0;
  line-height: 63%;
  letter-spacing: 0.062em;
  font-size: 21rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: -1;
  color: #eae9e4;
  paint-order: stroke fill;
}

.home02 .cl25 > * {
  width: 24.3%;
  margin-bottom: 0.5%;
}

.home02 .arrow a {
  min-width: 460px;
}

.home03 {
  position: relative;
  z-index: 2;
}

.home03::before {
  content: "";
  position: absolute;
  display: inline-block;
  right: 0%;
  top: 0%;
  background: #d0b18f;
  width: 60.3%;
  height: 100%;
  z-index: -1;
}

.home03 .inner_1200 {
  position: relative;
  overflow: hidden;
  z-index: 3;
}

.home03 .inner_1200::before {
  content: "";
  position: absolute;
  display: inline-block;
  right: 0%;
  top: 0%;
  background: #d0b18f;
  width: 95.6%;
  height: 100%;
  z-index: -1;
}

.home03 .bg_hosoku {
  position: relative;
  z-index: 2;
}

.home03 .bg_hosoku::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0;
  top: 90px;
  background: #fbf9f4;
  width: 95.6%;
  height: 100%;
  z-index: -1;
}

.home03 .bg_hosoku::after {
  content: "";
  position: absolute;
  display: inline-block;
  left: 5%;
  top: 2.6em;
  background: url(../img/txt_reason.svg) no-repeat center/100%;
  width: 46.5em;
  height: 9.4em;
  z-index: 2;
}

.home03 .cl25 > * {
  width: 22.9%;
  margin-bottom: 0.5%;
}

.home03 .bgW {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 23.5vw;
  align-items: flex-start;
  padding: 0;
}

.home03 .bgW > div {
  position: relative;
  z-index: 0;
}

.home03 .bgW > div::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  border-radius: 0px 0px 14px 0px;
  background: #59a952;
  width: 4.2em;
  height: 4.4em;
  z-index: -1;
}

.home03 .bgW img {
  margin: 0 auto 35px;
}

.home03 .bgW h3 {
  width: 100%;
}

.home03 .h2Tit {
  padding-left: 0.3em;
}

.home03 .arrow a {
  min-width: 315px;
}

.home04 .inner_1400_w {
  position: relative;
  z-index: 0;
}

.home04 .inner_1400_w::before {
  content: "Company";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fbf9f4;
  left: -1%;
  top: 0;
  line-height: 74%;
  letter-spacing: 0.062em;
  font-size: 20rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: -1;
  color: #fbf9f4;
  paint-order: stroke fill;
}

.home04 .arrow a {
  min-width: 275px;
}

.home05 .cl50_max > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 30.8vw;
  margin-bottom: 0;
}

.home05 .cl50_max > div:nth-of-type(1) {
  background: url(../img/home05_photo01.webp) no-repeat center/cover;
}

.home05 .cl50_max > div:nth-of-type(2) {
  background: #59a952;
}

.home06 {
  position: relative;
  z-index: 2;
}

.home06::before,
.home06::after {
  content: "Instagram";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fbf9f4;
  left: -3%;
  top: 34px;
  line-height: 74%;
  letter-spacing: 0.082em;
  font-size: 20rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: 2;
  color: #fbf9f4;
  paint-order: stroke fill;
}

.home06::after {
  left: 109rem;
}

.home06 .h2Tit_w {
  margin-left: 3.4vw;
}

.home06 .h2_txt {
  margin-left: 8.7vw;
}

.home06 .arrow a {
  min-width: 246px;
}

#sb_instagram .sb_instagram_header .sbi_header_text,
.sb_instagram_header .sbi_header_text,
#sb_instagram #sbi_load,
#sb_instagram .sb_instagram_header,
.sb_instagram_header {
  display: none !important;
}

.home07 .cl4_6 > *:nth-child(odd) {
  width: 35%;
}

.home07 .cl4_6 > *:nth-child(even) {
  width: 62.5%;
}

/* =======================================
	共通
========================================== */
.main_inpages .fE {
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fbf9f4;
  font-size: 21rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  color: #fbf9f4;
  paint-order: stroke fill;
  text-align: center;
  z-index: 0;
  position: relative;
}

/* ---------------------------------------------------------------------------
  事業案内
--------------------------------------------------------------------------- */
.business01 h3 {
  writing-mode: vertical-rl;
}

.business02 .inner_1400_w::before {
  content: "Data";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fbf9f4;
  left: -1%;
  top: 0;
  line-height: 74%;
  letter-spacing: 0.062em;
  font-size: 20rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: -1;
  color: #fbf9f4;
  paint-order: stroke fill;
}

.business02 .bgW h5 span {
  font-size: 12rem;
}

.business02 .bgW img {
  position: absolute;
  bottom: 0em;
  right: 0em;
  width: 10em;
  opacity: 0.5;
  z-index: 0;
}

.business02 .bgW:nth-of-type(1) img {
  width: 8em;
}

.business03 .bg {
  position: relative;
  z-index: 0;
}

.business03 .bg::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  background: #fbf9f4;
  width: 50%;
  height: 100%;
  z-index: -1;
}

.business03 .bg::after {
  content: "";
  position: absolute;
  display: inline-block;
  right: 0%;
  top: 0%;
  background: #eae9e4;
  width: 50%;
  height: 100%;
  z-index: -1;
}

.business03 .linkBox_img a {
  height: 7vw;
  padding: 20px 20px 10px 20px;
  min-height: 115px;
}

.business03 .cl50 > * {
  margin-bottom: 2%;
}

.business03 .cl50 > div:nth-of-type(1) {
  padding-right: 2vw;
}

.business03 .cl50 > div:nth-of-type(2) {
  padding-left: 2vw;
}

.business03 .cl50 > div:nth-of-type(2) .linkBox_img a {
  height: 14.4vw;
  min-height: 237px;
}

.business04 aside {
  width: 280px;
  flex-shrink: 0;
  z-index: 0;
  overflow-y: scroll;
  scrollbar-color: #d0b18f #f1e8dd;
  scrollbar-width: thin;
}

.business04 aside .listLink li,
.business04 aside .listLink li a {
  border-color: #d0b18f;
}

.business04 aside .listLink li a {
  display: inline-block;
  padding: 18px 2em 16px 16px;
  background: url(../img/arrow_w.svg) no-repeat right 22px center/1.6em;
  width: 100%;
}

.business04 .contentArea {
  width: calc(100% - 360px);
}

.business04 .bnr {
  border: 1px solid #59a952;
}

.business04 .bnr > div:nth-of-type(1) {
  background: #59a952;
}

.business04 .bnr > div {
  padding: 1em;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.business04 .tab-button {
  border-radius: 50px;
  color: #59a952;
  border: 1px solid #59a952;
  background: #fff;
  padding: 8px;
  min-width: 160px;
  position: relative;
  z-index: 1;
  display: inline-block;
  overflow: hidden;
  text-align: center;
  cursor: pointer;
}

.business04 .tab-button::after {
  content: "";
  width: 1.5em;
  height: 1.5em;
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 0;
  background: url(../img/arrow_g.svg) no-repeat center/100%;
  transform: rotate(90deg);
  transition: transform ease 0.3s;
}

.business04 .tab-button:hover::before {
  transform-origin: 0% 50%;
  transform: scaleX(1);
}

.business04 .tab-content {
  display: none;
}

.business04 .tab-content.is-active {
  display: block;
}

.business04 .tab-button.is-active {
  border-radius: 50px;
  color: #fff;
  border: 1px solid #59a952;
  background: #59a952;
  padding: 8px;
  min-width: 160px;
  position: relative;
  z-index: 1;
  display: inline-block;
  overflow: hidden;
}

.business04 .tab-buttons > * {
  margin-bottom: 2%;
  width: 32%;
}

.business04 .bgW {
  padding: 40px 56px;
}

.business04 .cl33 {
  justify-content: flex-start;
  gap: 2%;
}

/* ---------------------------------------------------------------------------
  代表挨拶
--------------------------------------------------------------------------- */
.message02 .bgW {
  display: block;
}

.message02 .bg_zara {
  padding: 50px 50px 25px;
}

.message02 .cl33 {
  gap: 2%;
}

.message02 .cl33 > li {
  margin-bottom: 2%;
}

.message02 .cl33 > li:nth-of-type(4),
.message02 .cl33 > li:nth-of-type(5) {
  width: 34%;
}

.link_area .btn02 a {
  width: 100%;
  padding: 24px;
  border: 2px solid #fff;
}

.link_area .arrow a p::after {
  width: 1.6em;
}

/* ---------------------------------------------------------------------------
  会社概要
--------------------------------------------------------------------------- */
.overview01 span {
  position: relative;
  z-index: 0;
}

.overview01 span::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 50%;
  transform: translateY(-50%);
  background: #645544;
  width: 0.5em;
  height: 1px;
  z-index: -1;
}

.overview01 .c_table_01 .cl50 > li {
  margin-bottom: 0;
}

.overview02 .inner_1400_w::before {
  content: "Group";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fbf9f4;
  left: -1%;
  top: 0;
  line-height: 74%;
  letter-spacing: 0.062em;
  font-size: 20rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: -1;
  color: #fbf9f4;
  paint-order: stroke fill;
}

.overview02 .bgG {
  border-radius: 1em;
  padding: 12px 18px;
}

.overview02 .bgG::after {
  display: none;
}

.overview02 .bgG span {
  position: relative;
  z-index: 0;
}

.overview02 .bgG span::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 1.2rem;
  background: #645544;
  width: 0.4em;
  height: 1px;
  z-index: -1;
}

.overview02 .bgW {
  display: block;
}

.overview03 img {
  margin: auto;
}

/* ---------------------------------------------------------------------------
  沿革
--------------------------------------------------------------------------- */
.history ul {
  display: flex;
  flex-wrap: wrap;
}

.history ul li::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #645544;
  left: -18px;
  top: 7px;
  position: absolute;
}

.history ul li {
  border-left: solid 3px #9a8d7e;
  position: relative;
  width: 100%;
}

.history ul li .brown {
  width: 7em;
}

.history ul li .txt {
  position: relative;
  z-index: 0;
}

.history ul li .txt::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 1.5rem;
  background: #645544;
  width: 2em;
  height: 1px;
  z-index: -1;
}

.history03 .inner_1400_w::before {
  content: "Movie";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fbf9f4;
  left: -1%;
  top: 0;
  line-height: 74%;
  letter-spacing: 0.062em;
  font-size: 20rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: -1;
  color: #fbf9f4;
  paint-order: stroke fill;
}

.y_tube {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 70.8%;
}

.y_tube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ---------------------------------------------------------------------------
  ESGの取り組み
--------------------------------------------------------------------------- */
.esg02 .inner_1400_w::before,
.esg03 .inner_1400_w::before,
.esg04 .inner_1400_w::before {
  content: "Environment";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #9a9a9a;
  left: -1%;
  top: 1%;
  line-height: 74%;
  letter-spacing: 0.062em;
  font-size: 20rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: -1;
  color: #eae9e4;
  paint-order: stroke fill;
}

.esg02 .bgW3,
.esg03 .bgW3,
.esg04 .bgW3 {
  padding: 0;
  width: 32%;
  margin-bottom: 2%;
}

.esg02 .bgW3 div,
.esg03 .bgW3 div,
.esg04 .bgW3 div {
  padding: 20px;
}

.esg02 .cl33,
.esg03 .cl33,
.esg04 .cl33 {
  justify-content: flex-start;
  gap: 2%;
}

.esg03 .inner_1400_w::before {
  content: "Social";
  -webkit-text-stroke-color: #d0b18f;
  color: #fbf9f4;
}

.esg03 .bgG {
  border-radius: 1em;
}

.esg03 .bgG span {
  position: relative;
  z-index: 0;
}

.esg03 .bgG::after {
  display: none;
}

.esg03 .bgG span::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 1.2rem;
  background: #645544;
  width: 0.4em;
  height: 1px;
  z-index: -1;
}

.esg04 .inner_1400_w::before {
  content: "Governance";
}

.sdgsArea {
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
}

.sdgsArea > li {
  width: 80px;
  margin-right: 10px;
  margin-bottom: 8px;
  gap: 8px;
}

/* ---------------------------------------------------------------------------
  保有設備
--------------------------------------------------------------------------- */
.equipment02 .inner_1400_w::before,
.equipment03 .inner_1400_w::before,
.equipment04 .inner_1400_w::before {
  content: "Machine";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #d0b18f;
  left: -1%;
  top: 0;
  line-height: 74%;
  letter-spacing: 0.062em;
  font-size: 20rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: -1;
  color: #fbf9f4;
  paint-order: stroke fill;
}

.equipment02 .img_zoom,
.equipment03 .img_zoom,
.equipment04 .img_zoom {
  position: relative;
  display: inline-block;
  overflow: hidden;
  z-index: 0;
}

.equipment02 .img_zoom::after,
.equipment03 .img_zoom::after,
.equipment04 .img_zoom::after {
  content: "";
  position: absolute;
  display: inline-block;
  right: 4.5%;
  bottom: 2%;
  background: url(../img/zoom.svg) no-repeat center/100%;
  width: 2em;
  height: 3em;
}

.equipment02 .img_zoom::before,
.equipment03 .img_zoom::before,
.equipment04 .img_zoom::before {
  content: "";
  position: absolute;
  display: inline-block;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.2);
  width: 4em;
  height: 4em;
}

.equipment03 .inner_1400_w::before {
  content: "Warehouse";
  -webkit-text-stroke-color: #9a9a9a;
  color: #eae9e4;
}

.equipment03 .arrow a,
.question05 .arrow a {
  padding: 6px;
  min-width: 160px;
}

.equipment03 .arrow a p::after,
.question05 .arrow a p::after {
  top: 1px;
  width: 1.6em;
  height: 1.6em;
}

.equipment04 .inner_1400_w::before {
  content: "Vehicle";
}

#equipment .cl50 > * {
  margin-bottom: 2%;
}

#equipment .bgW {
  display: block;
}

/* ---------------------------------------------------------------------------
  よくある質問
--------------------------------------------------------------------------- */
dt.plus {
  position: relative;
  background: rgba(154, 141, 126, 0.2);
  border-radius: 0.2em;
  padding: 18px 3.5em 18px 1.5em;
  font-weight: bold;
  color: #645544;
  letter-spacing: 0.1em;
  margin-bottom: 20px;
  cursor: pointer;
}

dt.plus:before {
  content: "";
  position: absolute;
  right: 30px;
  top: 0;
  bottom: 0;
  width: 1.5em;
  height: 1.5em;
  background: url(../img/arrow_b.svg) no-repeat center/100%;
  margin: auto;
  transition: 0.2s;
}

dt.active:before {
  transform: rotate(135deg);
}

.accordion dd {
  width: calc(100% - 3em);
  margin: 13px auto 23px;
  line-height: 140%;
}

.question02 .btn06 a {
  width: 100%;
  min-width: 100%;
  padding: 18px 10px;
}

.question02 .arrow_b a p::after {
  right: 0;
  top: 3px;
  width: 1.6em;
  height: 1.6em;
}

.question02 .cl25 > li {
  margin-bottom: 2%;
}

/* ---------------------------------------------------------------------------
  採用情報
--------------------------------------------------------------------------- */
#recruit .link_area .cl33 > * {
  margin-bottom: 1%;
}

#recruit .link_area .cl33 > * .arrow a p::after {
  transform: rotate(90deg);
}

.recruit02 .bgW3 {
  display: block;
  padding: 0;
  width: 31%;
}

.recruit02 .bgW3 > div {
  padding: 24px;
}

.recruit03::before {
  content: "Job description";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fbf9f4;
  left: -1%;
  top: 0;
  width: 100%;
  line-height: 74%;
  letter-spacing: 0.062em;
  font-size: 20rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: 1;
  color: #fbf9f4;
  paint-order: stroke fill;
  white-space: nowrap;
}

.recruit03 .bgW {
  display: block;
}

.recruit03 .bgW .cl50 > * {
  margin-bottom: 0;
}

.recruit03 ul.cl50 {
  gap: 2%;
  justify-content: center;
}

.recruit03 ul.cl50 > * {
  margin-bottom: 2%;
}

.recruit03 h4 {
  background: #59a952;
}

.recruit03 .cl50 .cl3_7 > div:nth-of-type(1) {
  aspect-ratio: 1/1;
  overflow: hidden;
}

.recruit04 .inner_1400_w::before {
  content: "Numbers";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fbf9f4;
  left: -1%;
  top: 0;
  line-height: 74%;
  letter-spacing: 0.062em;
  font-size: 20rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: -1;
  color: #fbf9f4;
  paint-order: stroke fill;
}

.recruit04 .bgW {
  width: 24%;
}

.recruit04 .bgW h5 span {
  font-size: 7rem;
}

.recruit04 .bgW .ls {
  letter-spacing: -0.02em;
}

.recruit04 .bgW img {
  width: 8em;
  margin: 0 auto 20px;
}

.recruit05::before {
  content: "Interview";
  position: absolute;
  display: inline-block;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #d0b18f;
  left: 2%;
  top: 2%;
  line-height: 74%;
  letter-spacing: 0.062em;
  font-size: 20rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
  z-index: -1;
  color: #fbf9f4;
  paint-order: stroke fill;
}

.recruit05 .bgW2 {
  display: block;
  padding: 0;
}

.recruit05 h5 {
  background: #59a952;
}

.recruit05 h6 {
  background: #eef6ed;
  padding: 10px 20px;
  font-weight: bold;
  border-radius: 0.5em;
}

/* ---------------------------------------------------------------------------
  選ばれる理由
--------------------------------------------------------------------------- */
.reason01 h3 {
  writing-mode: vertical-rl;
}

.reason01 .imgArea {
  height: 30vw;
}

.reason01 .imgArea img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  object-position: 50% 70%;
}

.reason02 .bgW {
  display: block;
  padding: 24px 40px 60px;
  position: relative;
  z-index: 0;
}

.reason02 .bgW::after {
  content: "";
  position: absolute;
  display: inline-block;
  top: 2%;
  right: 4%;
  background: url(../img/home03_icon1.svg) no-repeat center/100%;
  width: 20em;
  height: 20em;
  z-index: 0;
  opacity: 0.1;
}

.reason02 .bgW .pointArea {
  position: absolute;
  left: 0;
  top: 0;
}

.reason02 .bgW .pointArea .point {
  position: relative;
  z-index: 0;
}

.reason02 .bgW .pointArea .point::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0%;
  top: 0%;
  border-radius: 0px 0px 14px 0px;
  background: #59a952;
  width: 6.2em;
  height: 5.4em;
  z-index: -1;
}

.reason02 .bgW:nth-of-type(2)::after {
  background: url(../img/home03_icon2.svg) no-repeat center/100%;
}

.reason02 .bgW:nth-of-type(3)::after {
  background: url(../img/home03_icon3.svg) no-repeat center/100%;
}

.reason02 .bgW:nth-of-type(4)::after {
  top: 5%;
  background: url(../img/home03_icon4.svg) no-repeat center/100%;
}

.reason03 .elem.isAnimate .fade-in-rotate {
  width: 200px; /* 任意のサイズ */
}

.star {
  opacity: 0;
  transition: 0.3s;
}

.elem.isAnimate.star {
  position: absolute;
  width: 5em;
  height: 5em;
  position: absolute;
  display: inline-block;
  left: 0;
  top: -8%;
  opacity: 1;
}

.elem.isAnimate .image-wrapper {
  overflow: hidden; /* アニメ外のはみ出し防止（必要に応じて） */
  position: relative;
}

.elem.isAnimate .fade-in-rotate {
  width: 1.5em; /* 任意のサイズ */
  transform: translateY(100px) rotate(0deg);
  animation: fadeInRotate 0.6s ease-out forwards;
  opacity: 1;
}

.fade-in-rotate {
  opacity: 0;
}

@keyframes fadeInRotate {
  0% {
    opacity: 0;
    transform: translateY(100px) rotate(0deg);
  }
  100% {
    opacity: 1;
    transform: translateY(0) rotate(360deg);
  }
}
/* ---------------------------------------------------------------------------
  お知らせ
--------------------------------------------------------------------------- */
body.information .archive-news01 .cl25 > li.btn01 a {
  color: #59a952;
  border: 1px solid #59a952;
  background: #fff;
}

body.information .archive-news01 .cl25 > li.btn01 a::before {
  background: #59a952;
}

body.information .archive-news01 .cl25 > li.btn01 a:hover p {
  color: #fff !important;
}

body.information .archive-news01 .cl25 > li:nth-of-type(2).btn02 a {
  color: #fff;
  border: 1px solid #59a952;
  background: #59a952;
}

body.information .archive-news01 .cl25 > li:nth-of-type(2).btn02 a::before {
  background: #fff;
}

body.information .archive-news01 .cl25 > li:nth-of-type(2).btn02 a:hover p {
  color: #59a952 !important;
}

.archive-news01 .cl25 {
  justify-content: center;
  gap: 2%;
}

.archive-news01 .btn02 a,
.archive-news01 .btn01 a {
  width: 100%;
  min-width: 100%;
  padding: 18px 10px;
}

.archive-news01 .arrow_b a p::after {
  right: 0;
  top: 3px;
  width: 1.6em;
  height: 1.6em;
}

.archive-news02 p.cont {
  color: #222;
}
.archive-news02 .btn04_br > div {
  position: relative;
  display: inline-block;
  padding: 7px 3.4em 7px 2px;
  color: #d0b18f;
  font-weight: 70;
  text-decoration: none;
  background: url(../img/arrow_b.svg) no-repeat right top 1px/2.4em;
}
.archive-news02 .btn04_br > div::before {
  content: "";
  position: absolute;
  left: 3px;
  bottom: 3px;
  width: calc(100% - 3.5em);
  height: 1px; /* 線の太さ */
  background: #d0b18f;
}
.archive-news02 .btn04_br > div::after {
  content: "";
  position: absolute;
  left: 3px;
  bottom: 3px;
  width: calc(100% - 3.5em);
  height: 1px; /* 線の太さ */
  background: #d0b18f;
  transform: scaleX(0); /* 初期状態＝幅 0 */
  transform-origin: left center; /* 左端を基点に伸びる */
  transition: transform 0.3s ease; /* スピードとイージングを調整 */
}

.archive-news02 li,
.single-news01 li {
  border-bottom: 1px solid #222;
}

.archive-news02 .day,
.single-news01 .day {
  width: 6.7em;
}

.archive-news02 .cat a,
.single-news01 .cat a {
  display: inline-block;
  padding: 3px 13px;
  min-width: 120px;
  color: #fff;
  border-radius: 100px;
  background: #59a952;
}

.archive-news02 .tit,
.single-news01 .tit {
  width: calc(100% - 14.1em);
}

#single-news img {
  height: auto !important;
}

#single-news .aligncenter {
  text-align: center;
  margin: auto;
}

#single-news .alignright {
  text-align: right;
  margin-right: 0;
  margin-left: auto;
}

#single-news .txtArea h1 {
  font-size: 160%;
}

#single-news .txtArea h2 {
  font-size: 150%;
}

#single-news .txtArea h3 {
  font-size: 140%;
}

#single-news .txtArea h4 {
  font-size: 130%;
}

#single-news .txtArea h5 {
  font-size: 120%;
}

#single-news .txtArea h6 {
  font-size: 110%;
}

#single-news .warning {
  color: red;
  font-weight: bold;
}

#single-news .official-sites {
  background-color: #d4d4d4;
  padding: 10px;
  margin: 10px 0;
}

#single-news .official-sites a {
  color: #000;
  text-decoration: none;
}

/* 詳細ページページャー */
.previous-post a,
.next-post a {
  color: #222 !important;
}

.next-post a {
  padding-right: 1.5em;
  position: relative;
  z-index: 0;
}

.next-post a::after {
  content: "";
  position: absolute;
  display: inline-block;
  background: url(../img/arrow.png) no-repeat center/100%;
  width: 1.2em;
  height: 1.2em;
  right: 0;
  top: 0.2em;
}

.previous-post a {
  padding-left: 1.5em;
  position: relative;
  z-index: 0;
}

.previous-post a::after {
  content: "";
  position: absolute;
  display: inline-block;
  background: url(../img/arrow.png) no-repeat center/100%;
  transform: rotate(180deg);
  width: 1.2em;
  height: 1.2em;
  left: 0;
  top: 0.2em;
}

/* ---------------------------------------------------------------------------
  お問い合わせ
--------------------------------------------------------------------------- */
.contact01 .linkBox a {
  height: 100%;
  justify-content: space-between;
}

.contact01 .linkBox a img {
  margin: 2% auto;
}

.contact01 .linkBox2 {
  padding: 24px 24px 20px;
}

.contact01 .linkBox2 .cl3_7 > *:nth-child(odd) {
  width: 20%;
}

.contact01 .linkBox2 .cl3_7 > *:nth-child(even) {
  width: 75%;
}

.contact01 .linkBox2 .arrow a {
  padding: 8px;
}

.contact02 .c_table_02 table tbody tr th {
  width: 15em;
}

.contact02 .bgW {
  padding: 34px 6%;
}

/* =======================================
    404エラー error
========================================== */
#error .detail {
  background: rgba(103, 103, 103, 0.1019607843);
  padding: 20px;
} /*# sourceMappingURL=common.css.map */

/* 2025.6.11 追記 */
.archive-news02 .thumbnail {
  width: 30%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.archive-news02 .thumbnail img {
  width: 100%;
  object-fit: cover;
}

.business04 #item02 .tab-content:nth-of-type(1) img,
.business04 #item02 .tab-content:nth-of-type(3) img,
.business04 #item02 .tab-content:nth-of-type(6) img {
  width: 70%;
  margin-inline: auto;
}
