@charset "utf-8";
/*
Theme Name:mrp-child
Template:mrp
Version: 1.0.0
*/
/*
DesignCode CSS: ver 0.01
*/
/*------------------------------------------------------
Theme Material
------------------------------------------------------*/
.mr0 {
  margin-right: 0 !important;
}
.mr1 {
  margin-right: 1rem !important;
}
.mr2 {
  margin-right: 2rem !important;
}
.mr3 {
  margin-right: 3rem !important;
}
.mr4 {
  margin-right: 4rem !important;
}
.mr5 {
  margin-right: 5rem !important;
}
.mr6 {
  margin-right: 6rem !important;
}
.mr7 {
  margin-right: 7rem !important;
}
.mr8 {
  margin-right: 8rem !important;
}
.mr9 {
  margin-right: 9rem !important;
}
.mr10 {
  margin-right: 10rem !important;
}
.mr15 {
  margin-right: 15rem !important;
}
.mr16 {
  margin-right: 16rem !important;
}
@media screen and (max-width: 768px) {
  .mr1 {
    margin-right: 0.5rem !important;
  }
  .mr2 {
    margin-right: 1rem !important;
  }
  .mr3 {
    margin-right: 1.5rem !important;
  }
  .mr4 {
    margin-right: 2rem !important;
  }
  .mr5 {
    margin-right: 2.5rem !important;
  }
  .mr6 {
    margin-right: 3rem !important;
  }
  .mr7 {
    margin-right: 3.5rem !important;
  }
  .mr8 {
    margin-right: 4rem !important;
  }
  .mr9 {
    margin-right: 4.5rem !important;
  }
  .mr10 {
    margin-right: 5rem !important;
  }
  .mr15 {
    margin-right: 7.5rem !important;
  }
  .mr16 {
    margin-right: 8rem !important;
  }
}
.ml0 {
  margin-left: 0 !important;
}
.ml1 {
  margin-left: 1rem !important;
}
.ml2 {
  margin-left: 2rem !important;
}
.ml3 {
  margin-left: 3rem !important;
}
.ml4 {
  margin-left: 4rem !important;
}
.ml5 {
  margin-left: 5rem !important;
}
.ml6 {
  margin-left: 6rem !important;
}
.ml7 {
  margin-left: 7rem !important;
}
.ml8 {
  margin-left: 8rem !important;
}
.ml9 {
  margin-left: 9rem !important;
}
.ml10 {
  margin-left: 10rem !important;
}
.ml15 {
  margin-left: 15rem !important;
}
.ml16 {
  margin-left: 16rem !important;
}
@media screen and (max-width: 768px) {
  .ml1 {
    margin-left: 0.5rem !important;
  }
  .ml2 {
    margin-left: 1rem !important;
  }
  .ml3 {
    margin-left: 1.5rem !important;
  }
  .ml4 {
    margin-left: 2rem !important;
  }
  .ml5 {
    margin-left: 2.5rem !important;
  }
  .ml6 {
    margin-left: 3rem !important;
  }
  .ml7 {
    margin-left: 3.5rem !important;
  }
  .ml8 {
    margin-left: 4rem !important;
  }
  .ml9 {
    margin-left: 4.5rem !important;
  }
  .ml10 {
    margin-left: 5rem !important;
  }
  .ml15 {
    margin-left: 7.5rem !important;
  }
  .ml16 {
    margin-left: 8rem !important;
  }
}
.pr0 {
  padding-right: 0 !important;
}
.pr1 {
  padding-right: 1rem !important;
}
.pr2 {
  padding-right: 2rem !important;
}
.pr3 {
  padding-right: 3rem !important;
}
.pr4 {
  padding-right: 4rem !important;
}
.pr5 {
  padding-right: 5rem !important;
}
.pr6 {
  padding-right: 6rem !important;
}
.pr7 {
  padding-right: 7rem !important;
}
.pr8 {
  padding-right: 8rem !important;
}
.pr9 {
  padding-right: 9rem !important;
}
.pr10 {
  padding-right: 10rem !important;
}
.pr15 {
  padding-right: 15rem !important;
}
.pr16 {
  padding-right: 16rem !important;
}
@media screen and (max-width: 768px) {
  .pr1 {
    padding-right: 0.5rem !important;
  }
  .pr2 {
    padding-right: 1rem !important;
  }
  .pr3 {
    padding-right: 1.5rem !important;
  }
  .pr4 {
    padding-right: 2rem !important;
  }
  .pr5 {
    padding-right: 2.5rem !important;
  }
  .pr6 {
    padding-right: 3rem !important;
  }
  .pr7 {
    padding-right: 3.5rem !important;
  }
  .pr8 {
    padding-right: 4rem !important;
  }
  .pr9 {
    padding-right: 4.5rem !important;
  }
  .pr10 {
    padding-right: 5rem !important;
  }
  .pr15 {
    padding-right: 7.5rem !important;
  }
  .pr16 {
    padding-right: 8rem !important;
  }
}
.pl0 {
  padding-left: 0 !important;
}
.pl1 {
  padding-left: 1rem !important;
}
.pl2 {
  padding-left: 2rem !important;
}
.pl3 {
  padding-left: 3rem !important;
}
.pl4 {
  padding-left: 4rem !important;
}
.pl5 {
  padding-left: 5rem !important;
}
.pl6 {
  padding-left: 6rem !important;
}
.pl7 {
  padding-left: 7rem !important;
}
.pl8 {
  padding-left: 8rem !important;
}
.pl9 {
  padding-left: 9rem !important;
}
.pl10 {
  padding-left: 10rem !important;
}
.pl15 {
  padding-left: 15rem !important;
}
.pl16 {
  padding-left: 16rem !important;
}
@media screen and (max-width: 768px) {
  .pl1 {
    padding-left: 0.5rem !important;
  }
  .pl2 {
    padding-left: 1rem !important;
  }
  .pl3 {
    padding-left: 1.5rem !important;
  }
  .pl4 {
    padding-left: 2rem !important;
  }
  .pl5 {
    padding-left: 2.5rem !important;
  }
  .pl6 {
    padding-left: 3rem !important;
  }
  .pl7 {
    padding-left: 3.5rem !important;
  }
  .pl8 {
    padding-left: 4rem !important;
  }
  .pl9 {
    padding-left: 4.5rem !important;
  }
  .pl10 {
    padding-left: 5rem !important;
  }
  .pl15 {
    padding-left: 7.5rem !important;
  }
  .pl16 {
    padding-left: 8rem !important;
  }
}
.mb15 {
  margin-bottom: 15rem !important;
}
@media screen and (max-width: 768px) {
  .mb15 {
    margin-bottom: 7.5rem !important;
  }
}
/* font-weight */
.fw100,
.post .fw100 {
  font-weight: 100;
}
.fw200,
.post .fw200 {
  font-weight: 200;
}
.fw300,
.post .fw300 {
  font-weight: 300;
}
.fw400,
.post .fw400 {
  font-weight: 400;
}
.fw500,
.post .fw500 {
  font-weight: 500;
}
.fw600,
.post .fw600 {
  font-weight: 600;
}
.fw700,
.post .fw700 {
  font-weight: 700;
}
.fw800,
.post .fw800 {
  font-weight: 800;
}
.fw900,
.post .fw900 {
  font-weight: 900;
}
/* letter-spacing */
.letters0,
.post .letters0 {
  letter-spacing: 0em;
}
.letters20,
.post .letters20 {
  letter-spacing: 0.02em;
}
.letters30,
.post .letters30 {
  letter-spacing: 0.03em;
}
.letters40,
.post .letters40 {
  letter-spacing: 0.04em;
}
.letters50,
.post .letters50 {
  letter-spacing: 0.05em;
}
.letters60,
.post .letters60 {
  letter-spacing: 0.06em;
}
.letters70,
.post .letters70 {
  letter-spacing: 0.07em;
}

.letters80,
.post .letters80 {
  letter-spacing: 0.08em;
}

.letters90,
.post .letters90 {
  letter-spacing: 0.09em;
}

.letters100,
.post .letters100 {
  letter-spacing: 0.1em;
}
/* span */
.block,
.post .block {
  display: block;
}
.inline-block,
.post .inline-block {
  display: inline;
}

/* ルート */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Roboto:ital,wdth,wght@0,75..100,100..900;1,75..100,100..900&family=Yuji+Mai&display=swap" rel="stylesheet');
:root {
  --color-font: #333333;
  --header-color-primary: #b69e43;
  --color-background: #f7f7f7;
  --footer-background: #000000;
  --ff01: "Noto Sans JP", sans-serif;
  --ff02: "Roboto", sans-serif;
  --ff03: "Yuji Mai", serif;
}

/* ユーティリティ */
/* 見出し */
/* h1～h3 */
.post h1 {
  font-size: clamp(30px, 2.8vw, 52px);
  letter-spacing: 0.03em;
  line-height: 1;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  color: #333333;
}
.post h2 {
  letter-spacing: 0.03em;
  font-size: clamp(22px, 1.6vw, 30px);
  line-height: 1.31;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  color: #1e2124;
}
.post h3 {
  letter-spacing: 30;
  font-size: clamp(18px, 1.3vw, 24px);
  line-height: 1.63;
  font-family: "Noto Sans JP", serif;
  font-weight: 700;
  color: #1e2124;
}
/* font-family */
.noto-sans,
.post .noto-sans {
  font-family: "Noto Sans JP", serif;
}
.roboto,
.post .roboto {
  font-family: "Roboto", sans-serif;
}
.yuji-mai,
.post .yuji-mai {
  font-family: "Yuji Mai", serif;
}

/* font-size */
/* font-size */
.font11,
.post .font11 {
  font-size: clamp(8px, 0.6vw, 11px);
}

.font16,
.post .font16 {
  font-size: clamp(14px, 0.9vw, 16px);
  line-height: 1.75;
}

.font16-line-height26,
.post .font16-line-height26 {
  font-size: clamp(14px, 0.9vw, 16px);
  line-height: 1.63;
}

.font18,
.post .font18 {
  font-size: clamp(16px, 1vw, 18px);
  line-height: 1.8;
}

.font20,
.post .font20 {
  font-size: clamp(16px, 1.1vw, 20px);
  line-height: 1.45;
}

.font22,
.post .font22 {
  font-size: clamp(16px, 1.2vw, 22px);
  line-height: 1.46;
}

.font24,
.post .font24 {
  font-size: clamp(18px, 1.3vw, 24px);
  line-height: 1.63;
}

.font26,
.post .font26 {
  font-size: clamp(18px, 1.4vw, 26px);
}

.font30,
.post .font30 {
  font-size: clamp(22px, 1.6vw, 30px);
}

.font32,
.post .font32 {
  font-size: clamp(20px, 1.6vw, 32px);
  line-height: 1.44;
}

.font34,
.post .font34 {
  font-size: clamp(20px, 1.8vw, 34px);
}

.font35,
.post .font35 {
  font-size: clamp(20px, 1.9vw, 35px);
}

.font38,
.post .font38 {
  font-size: clamp(22px, 2.1vw, 38px);
}

.font40,
.post .font40 {
  font-size: clamp(24px, 2.2vw, 40px);
}

.font48,
.post .font48 {
  font-size: clamp(26px, 2.5vw, 48px);
}

.font49,
.post .font49 {
  font-size: clamp(28px, 2.6vw, 49px);
}

.font52,
.post .font52 {
  font-size: clamp(28px, 2.8vw, 52px);
  line-height: unset;
}

.font55,
.post .font55 {
  font-size: clamp(28px, 3vw, 55px);
}

.font85,
.post .font85 {
  font-size: clamp(40px, 4.5vw, 85px);
}

.font90,
.post .font90 {
  font-size: clamp(34px, 4.7vw, 90px);
  line-height: 1.5;
}

/* color*/
/* フォントカラー */
.black,
.post .black {
  color: #333333;
}
.white,
.post .white {
  color: #fff;
}
.blue,
.post .blue {
  color: #4678c4;
}
.gold,
.post .gold {
  color: #b69e43;
}
/* バックグラウンドカラー */
.bg-white,
.post .bg-white {
  background: #f7f7f7;
}
.bg-black,
.post .bg-black {
  background: #1e2124;
}
.bg-blue,
.post .bg-blue {
  background: #4678c4;
}
.bg-green,
.post .bg-green {
  background: #1d9f76;
}
.bg-gray,
.post .bg-grey {
  background: #f7f7f7;
}
/* イレギュラー */
.pusedo-relative,
.post .pusedo-relative {
  position: relative;
  z-index: 0;
}
.pusedo-white::before,
.post .pusedo-white::before {
  background: white;
}
.pusedo-black::before,
.post .pusedo-black::before {
  background: #333333;
}
.pusedo-blue::before,
.post .pusedo-blue::before {
  background: #6896d90d;
}
.pusedo-green::before,
.post .pusedo-green::before {
  background: #1d9f76;
}
.pusedo-glay::before,
.post .pusedo-glay::before {
  color: #cecece;
  opacity:.16;
  /* color: red; */
}
.pusedo-bg-white::before,
.post .pusedo-bg-white::before {
  background: white;
}
.pusedo-bg-black::before,
.post .pusedo-bg-black::before {
  background: #000;
}
.pusedo-bg-blue::before,
.post .pusedo-bg-blue::before {
  background: #6896d90d;
}
.pusedo-bg-green::before,
.post .pusedo-bg-green::before {
  background: #1d9f76;
}
.left-line::before,
.post .left-line::before {
  position: absolute;
  content: "";
  width: 3em;
  height: 3px;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.text-decoration_underline,
.post .text-decoration_underline {
  text-decoration: underline;
}
.underline::before,
.post .underline::before {
  position: absolute;
  content: "";
  bottom: -0.3em;
  left: 0;
  width: 40px;
  max-width: 40px;
  max-height: 2.5px;
  height: 100%;
}
.border-bottom,
.post .border-bottom {
  border-bottom: 1px solid #c4c4c4;
  /* margin-bottom: 1rem; */
}
.border-left,
.post .border-left {
  border-left: 5px solid #6896d9;
}

.behind-text::before, .post .behind-text::before {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -84%;
  line-height: 1.32;
  font-size: clamp(50px, 7.4vw, 142px);
  width: 100%;
  font-family: var(--ff02);
  font-weight: 700;
  z-index: -1;
  white-space: nowrap;
}

.behind-text.our-service::before {
  content: "OUR SERVICE";
}
.behind-text.features::before {
  content: "FEATURES";
}
.behind-text.greeting::before {
  content: "GREETING";
}
.behind-text.company::before {
  content: "COMPANY";
}
.marker,
.post .marker {
  background: linear-gradient(transparent 60%, #edf4ff 60%);
  display: inline-block;
}

/* 書き変え系 */
/* SP用フッター */
#MESY_FTMFM_footer_bar-wrapper ul#MESY_FTMFM_footer_bar li.mail a {
  background: #1E2124;
}

#MESY_FTMFM_footer_bar-wrapper ul#MESY_FTMFM_footer_bar li.mail p.icon {
  color: #B69E43;
}

#MESY_FTMFM_footer_bar-wrapper ul#MESY_FTMFM_footer_bar li.mail p.menu_name {
  color: #B69E43;
}

#MESY_FTMFM_footer_bar-wrapper ul#MESY_FTMFM_footer_bar li.tel p.icon {
  color: #6896d9;
}

#MESY_FTMFM_footer_bar-wrapper ul#MESY_FTMFM_footer_bar li.tel p.menu_name {
  color: #6896d9;
}
/* FOOTER */
footer#footer {
  padding-top: 0;
}

/* コピーライト */
#copyright {
  margin: var(--px12) auto 0;
}
/* 投稿 リスト */
.postlist li:first-child {
  border-top: none;
  border-top: 1px solid #ddd;
}
.postlist li {
  border-bottom: 1px solid #ddd;
}
/* 投稿 ブロック */
/* 見出しの打ち消し */
.post2b h2,
.post4b h2,
.post2b h2 a,
.post4b h2 a {
  font-family: unset;
  font-size: unset;
  font-weight: unset;
  letter-spacing: unset;
  line-height: unset;
  color: unset;
}
.post .time,
.postlist .time,
.post2b .time,
.post4b .time {
  background: #B69E43;
  display: block;
  border-radius: 0px;
}
.post_link,
.post2b_link,
.post4b_link {
  color: #B69E43;
}
.post_link a,
.post2b_link a,
.post4b_link a {
  color: #B69E43;
}
/* それ以外 */
.column02 {
  width: 48%;
}
@media print, screen and (max-width: 768px) {
  .column02 {
    width: 100%;
    margin-bottom: 15px;
  }
  .column02:last-child {
    margin-bottom: 0;
  }
}
.column02-w50 {
  width: 50%;
}
@media print, screen and (max-width: 768px) {
  .column02-w50 {
    width: 100%;
    margin-bottom: 15px;
  }
  .column02-w50:last-child {
    margin-bottom: 0;
  }
}
.column03 {
  width: 32%;
}
@media print, screen and (max-width: 1024px) {
  .column03 {
    width: 48%;
    margin-bottom: 2vw;
  }
}
@media print, screen and (max-width: 768px) {
  .column03 {
    width: 100%;
    margin-bottom: 15px;
  }
  .column03:last-child {
    margin-bottom: 0;
  }
}
.column03-full {
  width: calc(100% / 3);
}
@media print, screen and (max-width: 1024px) {
  .column03-full {
    width: 50%;
  }
}
@media print, screen and (max-width: 768px) {
  .column03-full {
    width: 100%;
  }
}
.column03-flex1 {
  flex: 1;
}

@media print, screen and (max-width: 768px) {
  .column03-flex1 {
    width: 100%;
  }
}
.column04 {
  width: 23.6%;
}
@media print, screen and (max-width: 1024px) {
  .column04 {
    width: 48%;
    margin-bottom: 2vw;
  }
}
@media print, screen and (max-width: 768px) {
  .column04 {
    width: 100%;
    margin-bottom: 15px;
  }
  .column04:last-child {
    margin-bottom: 0;
  }
}
.front {
  position: relative;
  z-index: 100;
}
.relative {
  position: relative;
}
.ml-auto {
  margin-left: auto;
}
.margin0 {
  margin: 0;
}
.absolute-area {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2000;
}
.max_contents {
  width: 100vw;
  margin-left: calc(((100vw - 100%) / 2) * -1);
  margin-right: calc(((100vw - 100%) / 2) * -1);
}
.mxauto {
  margin: 0 auto;
}
.bg-img {
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}
.jc_around {
  justify-content: space-around;
}
span.privacy {
  color: #0d56ab;
}
.img-area img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.flexbox {
  flex-wrap: wrap;
}
.no-wrap {
  flex-wrap: nowrap;
}
.top-content {
  width: 100vw;
  margin-left: calc(((100vw - 100%) / 2) * -1);
  margin-right: calc(((100vw - 100%) / 2) * -1);
}
.lower-content {
  width: 100vw;
  margin-left: calc(((100vw - 100%) / 2) * -1);
  margin-right: calc(((100vw - 100%) / 2) * -1);
}
.max_w1100 {
  width: 90%;
}
.max_w1200 {
  max-width: 1200px;
  width: 90%;
}
.max_w1280 {
  max-width: 1280px;
  width: 90%;
}
/* 書き変え・お助け系 */
/* 親テーマ .news pのborder-bottomを打ち消す*/
p.time.cat-news.first {
  border-bottom: none;
}
/* 親テーマ .news pのborder-bottomを打ち消す*/
p.date {
  border-bottom: none;
}
a#scrollUp {
  background: #b69e43;
}
/* メニュー右上の色/hover時 */
#header a.head_btn.mail_btn {
  background: #000000;
  font-size: clamp(18px, 1.2vw, 22px);
  font-weight: 500;
  font-family: var(--ff02);
  padding-right: 3vw;
}
#header a.head_btn.mail_btn:hover {
  background: #000000;
  opacity: 0.7;
}
/* お問い合わせページのフッターを消す */
.page-id-21 .comon_footer {
  display: none;
}
/*お問い合わせページのボタンの色  */
.linkBtn,
.post .linkBtn {
  background: #333333;
}
.linkBtn:hover,
.post .linkBtn:hover {
  background: #333333;
  opacity: 0.7;
}
/* 代替案 検討中 */
body:not(.home) #content.wide {
  padding: 3% 0 8% 0;
}
/* お問い合わせページのボタンデザイン */
body.page-id-21 .linkBtn,
.post .linkBtn {
  padding: 0.5em 2.5em 0.5em 2.5em;
}
body.page-id-21 .post .subimitarea .linkBtn input[type="submit"] {
  padding: 20px 0;
}
/* --- */
/* h2のpaddingとmarginを消す */
.post h2 {
  padding: 0;
  margin: 0;
}
/* h2の下線を消す */
.post h2::after {
  display: none;
}
/* h3の下線を消す、paddingとmarginを消す*/
.post h3 {
  border-bottom: none;
  padding: 0;
  margin: 0;
}
.post h4 {
  margin: 0;
  padding: 0;
}
/* お問い合わせページ差し替え*/
.wpcf7-form .must {
  background: #f73737;
}
table.responsive th {
  background: transparent;
}
.post table.responsive,
.post table.responsive th,
.post table.responsive td {
  border-width: 0px;
}
table.responsive th {
  border-bottom: 1px solid #dcdddd !important;
}
table.responsive td {
  border-bottom: 1px solid #dcdddd !important;
}
.post h4::before {
  display: none;
}
/* SPユーティリティ */
@media print, screen and (max-width: 768px) {
  /* 最新	 */
  .w10,
  .w20,
  .w30,
  .w40,
  .w50,
  .w60,
  .w70,
  .w80,
  .w90 {
    margin-bottom: 0;
  }
  .sp_w_90 {
    width: 90%;
    margin: 0 auto;
  }
  .sp_txt_l {
    text-align: left !important;
  }
  .sp_w90 {
    width: 90%;
    margin: 0 auto;
  }
  /* ヘッダー */
  .mobile #header {
    background: #000;
  }
  .spmenu #menu p {
    color: #B69E43;
    width: 100%;
  }
  .spmenu #menu span,
  .spmenu #menu span:before,
  .spmenu #menu span:after {
    background: #B69E43;
  }
  div#wpadminbar {
    display: none;
  }
}

/* レイアウトコンポ */
/* パララックス */
.parallax-background {
  width: 100vw;
  height: 100vh;
  margin-left: calc(((100vw - 100%) / 2) * -1);
  margin-right: calc(((100vw - 100%) / 2) * -1);
  background-image: url(/wp-content/uploads/parallax-1.png);
  background-position: center;
  position: fixed;
  top: 0;
  right: 0;
  z-index: -5;
  background-repeat: no-repeat;
  background-size: cover;
}
/* TOP */
/* GREETING */
.max_w1500 {
  width: 90%;
  max-width: 1500px;
}

.absolute-img-center {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -50%;
  width: 79%;
  max-width: 1500px;
}

.pallax-area {
  padding: 10% 0;
}
/* 追記 */
.title-icon img {width: 3.1vw;min-width: 40px;}
.pd-content.greeting {
    padding-bottom: 14%;
}


/*  TOP FEATURES*/
.mt-elegular01 {
  margin-top: 4.6%;
}

@media print, screen and (max-width: 1024px) {
  .mt-elegular01 {
    margin-top: 0;
  }
}

.mt-elegular02 {
  margin-top: 10%;
}

@media print, screen and (max-width: 1024px) {
  .mt-elegular02 {
    margin-top: 0;
  }
}

.absolute-img-left {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 900px;
  width: 47%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  z-index: 0;
}

.bg-grey,
.post .bg-grey {
  background: #f7f7f7;
}
.btn-item a {
  position: relative;
  display: block;
  text-align: center;
  background: linear-gradient(90deg, #3A4149, #1e2124);
  color: #fff; /*文字と枠の色*/
  font-size: 16px; /*文字の大きさ*/
  font-weight: 700; /*文字の太さ*/
  width: 250px; /*横幅調整*/
  padding: 17px 0; /*立幅調整*/
  margin: 0 auto;
  /*border-radius: 10px;*/ /*枠線を丸くする*/
  text-decoration: none; /*文字の下線を消す*/
  transition: 0.3s;
  font-family: var(--ff02);
}
.btn-item a::before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  right: 15px;
  top: 38%;
  transition: 0.2s;
}
.btn-item a:hover::before {
  right: 10px;
}
/* 追記 */
.pd-content.features {
    padding: 3% 0;
}
/* TOP SERVICE */
.row-reverse {
  flex-direction: row-reverse;
}
.flex-elgular-img {
  width: 60%;
}


@media print, screen and (max-width: 768px) {
  .flex-elgular-img {
    width: 100%;
  }
}

.flex-elgular-text {
  width: 39%;
  padding: 5%;
}

@media print, screen and (max-width: 768px) {
  .flex-elgular-text {
    width: 100%;
  }
}

/* flex1 */
.column03-flex1 {
  flex: 1;
  display: block;
}

@media print, screen and (max-width: 768px) {
  .column03-flex1 {
    width: 100%;
  }
}

.flex1-img.relative::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000000;
  opacity: 0.66;
  z-index: 1500;
}
.btn-item02 {
  position: relative;
  display: block;
  text-align: center;
  background: linear-gradient(90deg, #3A4149, #1e2124);
  color: #fff; /*文字と枠の色*/
  font-size: 16px; /*文字の大きさ*/
  font-weight: 700; /*文字の太さ*/
  width: 250px; /*横幅調整*/
  padding: 15px 0; /*立幅調整*/
  /* border: 2px solid; */
  /*border-radius: 10px;*/ /*枠線を丸くする*/
  text-decoration: none; /*文字の下線を消す*/
  transition: 0.3s;
  font-family: var(--ff02);
}
.btn-item02::before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  right: 15px;
  top: 38%;
  transition: 0.2s;
}
/* 追記 */
.bg-fff {
    background: #fff;
}
/* TOP COMPANY */
.btn-item.left a {
  position: relative;
  display: block;
  text-align: center;
  background: linear-gradient(90deg, #3A4149, #1e2124);
  color: #fff; /*文字と枠の色*/
  font-size: 16px; /*文字の大きさ*/
  font-weight: 700; /*文字の太さ*/
  width: 250px; /*横幅調整*/
  padding: 17px 0; /*立幅調整*/
  /*border-radius: 10px;*/ /*枠線を丸くする*/
  text-decoration: none; /*文字の下線を消す*/
  transition: 0.3s;
  font-family: var(--ff02);
  margin: 0;
}
.btn-item.left a::before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  right: 15px;
  top: 38%;
  transition: 0.2s;
}
.btn-item.left a:hover::before {
  right: 10px;
}
/* WORKS */

/* FOOTER */
.bg-black,
.post .bg-black {
  background: #1e2124;
}
/* 追記 */
#footer .footer__logo:not(:last-child) {
    text-align: left;
}

.pd-content.footer {
    padding: 3% 0px;
}
#footer {
    text-align: left;
}
/* SERVICE */
.bg-service01 {
  background-image: url(https://kg-project1.com/wp-content/uploads/service1.png);
}
.bg-service02 {
  background-image: url(https://kg-project1.com/wp-content/uploads/service6.png);
}
.bg-service03 {
  background-image: url(https://kg-project1.com/wp-content/uploads/service10.png);
}
.bg-service::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #0f0f0f;
  opacity: 0.74;
}

.sec02 {
  margin-top: -7%;
  position: relative;
  padding-bottom: 3%;
}

.service-container {
  background: #fff;
  padding: 5% 0 2% 0;
}

.black-box {
  background: #333333;
  text-align: center;
}
/*  追記*/
.pd-content.our-service {
    padding: 5% 0;
}

.gap50px {
    gap: 50px;
}

.bg-service01::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #0F0F0F;
    opacity: 0.74;
}
.bg-service02::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #0F0F0F;
    opacity: 0.74;
}
.bg-service03::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #0F0F0F;
    opacity: 0.74;
}

.pd-content.service {
    padding: 5% 0 13% 0;
}
/* FEATURES */
/* WORKS */
/* 追記 */
.pd-content.works {
    padding: 4% 0;
}
/* COMPANY */
.bg-company {
  background-image: url(https://kg-project1.com/wp-content/uploads/company1.png);
}

.bg-company::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #080808;
  opacity: 0.73;
}

.table-item tr td {
  font-size: 16px;
  font-weight: 500;
  padding: 13px 3%;
  vertical-align: middle;
  line-height: 2;
}
.table-item td.cell_01 {
  width: 19%;
  border-bottom: 2px solid #B69E43;
  color: #B69E43;
}
.table-item td.cell_02 {
  border-bottom: 2px solid #BCBCBC;
}
.table-item tr.head td.cell_01 {
  border-top: 2px solid #B69E43;
}
.table-item tr.head td.cell_02 {
  border-top: 2px solid #BCBCBC;
}
.table-item table,
.table-item table th,
.table-item table td {
  border-width: 0px;
}
@media print, screen and (max-width: 768px) {
  .table-item tr.head td.cell_02 {
    border-top: none;
  }

  .table-item td.cell_01 {
    border-bottom: 2px solid #9f9f9f;
  }
  .table-item tr td {
    display: block;
    width: 100% !important;
  }
  .table-item td.cell_02 {
    /* text-align: center; */
    border-bottom: 2px solid #B69E43;
  }
}
/* 追記 */
.pd-content.company01 {
    padding: 5% 0;
}

.font12,
.post .font12 {
    font-size: clamp(10px, 0.7vw, 12px);
    line-height: 1.42;
}


.pd-content.company02 {
    padding-top: 5%;
}
.behind-text.ex::before, .post .behind-text.ex::before {
    bottom: -150%;
}
/* 投稿詳細 */
.post-container {
  background: #fff;
  padding: 2%;
}
/*追記  */
.type-post {
    max-width: 1100px;
}
#thumbImg::before, header#h1Header::before {
    background: #000000;
    opacity: .6;
}
header#h1Header h1.title.first span {
    font-size: clamp(30px, 2.8vw, 52px);
    font-family: var(--ff02);
    font-weight: 700;
}
/*--メディアクエリ--------------------------------------------*/
@media (min-width: 769px) and (max-width: 1024px) {
}
@media print, screen and (min-width: 1024px) {
  header#header {
    background: #000000;
    height: 100px;
  }

  nav#mainNav ul li a b {
    color: #fff;
    font-weight: 400;
    font-family: var(--ff02);
    font-size: clamp(18px, 1.2vw, 22px);
  }

  #header a.head_btn {
    flex-direction: row;
  }

  #header a.head_btn::before {
    font-size: 1em;
    margin-right: 1em;
  }

  nav#mainNav ul li a:active,
  nav#mainNav ul li a:hover,
  nav#mainNav ul li.current-menu-ancestor a,
  nav#mainNav ul li.current-menu-item a,
  nav#mainNav ul li.current-menu-parent a {
    background: transparent;
  }

  .sticky-header #header > .inner {
    background: #000000;
  }

  .sticky-header #header-layout {
    height: 100px;
  }

  #header .logo img {
    max-width: 290px;
    width: 100%;
    max-height: 80px;
  }

  #header .logo {
    padding-left: 4vw;
  }
}
@media print, screen and (max-width: 1024px) {
}
@media print, screen and (min-width: 769px) {
}
@media print, screen and (max-width: 768px) {
	.pd-content.features {
    padding: 10% 0;
}

.pd-content.works {
    padding: 10% 0;
}
	.img-area img {
    height: 180px;
}
	.mobile #header {
    background: #000;
}
	.pd-content.footer {
    padding: 10% 0;
}
	#thumbImg, header#h1Header {
    height: 150px;
}

.flexbox.jc_center.gap50px .btn-item {
    margin-bottom: 1em;
}
	.black-box {
    padding: 2%;
}
	.behind-text::before, .post .behind-text::before {
    top: -25%;
}
	.pd-content.company01 {
    padding: 10% 0;
}
	.pd-content.company02 {
    padding: 10% 0;
}
	.page-id-21 #footer .inner {
    padding-top: 2.5rem;
}
	.behind-text.ex::before, .post .behind-text.ex::before {
    top: unset;
    bottom: -70%;
}
	.service-container {
    padding: 10% 0;
}

.sec02 {
    padding-bottom: 10%;
}
}
