@charset "UTF-8";
/*
Theme Name: swell_child
Template: swell
*/
/* =====================================================
  01. 表示切替（PC / SP）
===================================================== */
._sp {
  display: none;
}
@media (max-width: 765px) {
  ._sp {
    display: block;
  }
}

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

[class*=is-style-btn_] {
  --the-min-width: 0;
}

body {
  letter-spacing: 1.5px;
}

.wp-block-group.is-stack {
  display: flex;
}

@media (max-width: 767px) {
  .brsp {
    display: block;
  }
}
/* 右下TOPページへジャンプアイコン */
.p-fixBtnWrap .c-fixBtn {
  border: 1px solid #F0ECE2;
  color: #F0ECE2;
}
.p-fixBtnWrap .c-fixBtn:hover {
  color: #F0ECE2;
  border: 1px solid #A68B65;
}
.p-fixBtnWrap .hov-bg-main {
  background-color: #A68B65 !important;
}
.p-fixBtnWrap .hov-bg-main:hover {
  color: #A68B65 !important;
  background-color: #F0ECE2 !important;
}

/* 個別ページのタイトルや余白の削除*/
#content {
  padding-top: 0;
}
#content h1 {
  display: none;
}
#content .post_content {
  margin: 0;
}

.l-content {
  margin: 0 auto;
}

/* パンくず*/
.p-breadcrumb.-bg-on {
  background: #2A4C3E;
  color: #FFF;
}
.p-breadcrumb.-bg-on .p-breadcrumb__list {
  align-items: center;
  display: flex;
  font-size: 10px;
  gap: 0.5em;
  list-style: none;
  overflow: hidden;
  padding: 70px 2% 0px;
  width: 100%;
}

/* =========================
   Footer CTA Button
========================= */
.cta-btn {
  font-weight: bold;
  width: 180px;
  height: 50px;
  margin: 50px 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #A68B65;
  background-color: #F0ECE2;
  border-radius: 50px;
  transition: background-color 0.4s ease, color 0.4s ease, opacity 0.4s ease;
}
.cta-btn:hover {
  color: #F0ECE2;
  border: 2px solid #F0ECE2;
  background-color: #A68B65;
}

/* =====================================================
  04. MOREボタン（ブロックスタイル）
===================================================== */
.more-btn a {
  font-family: "Anton", sans-serif;
  color: #A68B65 !important;
  border: 1px solid #A68B65;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 12px 24px -12px rgba(0, 0, 0, 0.2);
  opacity: 1;
  transition: background-color 0.4s ease, color 0.4s ease, opacity 0.4s ease;
}
.more-btn a:hover {
  color: #F0ECE2 !important;
  border: 1px solid #FFFFFE;
  background-color: #A68B65;
}

.more-btn2 a {
  font-family: "Anton", sans-serif;
  background-color: #fafaf8 !important;
  color: #2A4C3E !important;
  border: 1px solid #2A4C3E;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 12px 24px -12px rgba(0, 0, 0, 0.2);
  opacity: 1;
  transition: background-color 0.4s ease, color 0.4s ease, opacity 0.4s ease;
}
.more-btn2 a:hover {
  color: #FFFFFE !important;
  border: 1px solid #FFFFFE;
  background-color: #2A4C3E !important;
}

.contact-btn {
  max-width: 360px;
  width: 100%;
}

.contact-btn a {
  max-width: 360px;
  width: 100%;
  font-family: "Anton", sans-serif;
  color: #F0ECE2 !important;
  border: 1px solid #F0ECE2;
  background-color: #A68B65;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 12px 24px -12px rgba(0, 0, 0, 0.2);
  opacity: 1;
  transition: background-color 0.4s ease, color 0.4s ease, opacity 0.4s ease;
}
.contact-btn a:hover {
  color: #A68B65 !important;
  border: 1px solid #A68B65;
  background-color: #F0ECE2;
}

@media (max-width: 767px) {
  .contact-btn {
    max-width: 200px;
    width: 100%;
  }
  .contact-btn a {
    max-width: 200px;
    width: 100%;
    font-size: 12px !important;
  }
}
/* =====================================================
  05. セクションタイトル（ブロックエディタ）
===================================================== */
.section-title {
  font-family: "League Gothic", sans-serif;
  align-items: flex-start;
}
.section-title span {
  letter-spacing: 0px;
}

.section-title2 {
  font-family: "League Gothic", sans-serif;
  align-items: center;
}
.section-title2 span {
  letter-spacing: 0px;
}

@media (max-width: 767px) {
  .section-title p span {
    font-size: 10px !important;
  }
  .section-title span {
    font-size: 34px !important;
  }
  .section-title2 p span {
    font-size: 10px !important;
  }
  .section-title2 span {
    font-size: 34px !important;
    letter-spacing: 0px;
  }
}
/* =====================================================
  Contact -お問い合わせ-  
===================================================== */
.contact-block {
  padding: 10% 4% !important;
}
.contact-block__inner {
  width: 80%;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 15px;
  padding: 6% 4% !important;
}
.contact-block__inner .section-title2 {
  align-items: center;
}
.contact-block__inner .line_block {
  width: 90%;
  display: flex;
  align-items: center;
  border-radius: 15px;
  justify-content: center;
  gap: 0px;
  border: 1px solid #A68B65;
  padding: 10%;
}

@media (max-width: 767px) {
  .contact-block {
    padding: 10% 0% !important;
  }
  .contact-block__inner {
    width: 100%;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    border-radius: 15px;
    padding: 10% 4% !important;
  }
  .contact-block__inner .section-title2 {
    align-items: center;
  }
  .contact-block__inner .line_block {
    width: 100%;
    display: flex;
    align-items: center;
    border-radius: 15px;
    justify-content: center;
    gap: 0px;
    border: 1px solid #A68B65;
    padding: 15% 4%;
  }
}
/* =====================================================
  下層ページヒーロー 
===================================================== */
.hero_pc__block {
  font-family: "League Gothic", sans-serif !important;
}
.hero_pc__block .logo img {
  width: 60px;
}
.hero_pc__block .main_text {
  text-align: center;
}
@media (max-width: 767px) {
  .hero_pc__block .main_text .swl-fz {
    font-size: 36px !important;
  }
}

/* 
SWELLでサイドバーを表示可にして
コードで制御し、メインコンテンツ幅を100％にする
以下ページに適用
*/
body .id_18 aside,
body .id_19 aside,
body .id_20 aside,
body .id_21 aside,
body .id_22 aside,
body .id_42 aside,
body .id_23 aside,
body .id_1125 aside,
body .id_3 aside {
  display: none;
}
body .id_18 .l-topTitleArea,
body .id_19 .l-topTitleArea,
body .id_20 .l-topTitleArea,
body .id_21 .l-topTitleArea,
body .id_22 .l-topTitleArea,
body .id_42 .l-topTitleArea,
body .id_23 .l-topTitleArea,
body .id_1125 .l-topTitleArea,
body .id_3 .l-topTitleArea {
  display: none;
}
body .id_18 #content,
body .id_19 #content,
body .id_20 #content,
body .id_21 #content,
body .id_22 #content,
body .id_42 #content,
body .id_23 #content,
body .id_1125 #content,
body .id_3 #content {
  margin: -114px 0 0; /* TOPとNEWS以外のページコンテンツをあげている */
}
body .id_18 #content .post_content,
body .id_19 #content .post_content,
body .id_20 #content .post_content,
body .id_21 #content .post_content,
body .id_22 #content .post_content,
body .id_42 #content .post_content,
body .id_23 #content .post_content,
body .id_1125 #content .post_content,
body .id_3 #content .post_content {
  padding: 0;
}
body .id_18 .l-mainContent,
body .id_19 .l-mainContent,
body .id_20 .l-mainContent,
body .id_21 .l-mainContent,
body .id_22 .l-mainContent,
body .id_42 .l-mainContent,
body .id_23 .l-mainContent,
body .id_1125 .l-mainContent,
body .id_3 .l-mainContent {
  width: 100% !important;
}
body .id_18 .l-content,
body .id_19 .l-content,
body .id_20 .l-content,
body .id_21 .l-content,
body .id_22 .l-content,
body .id_42 .l-content,
body .id_23 .l-content,
body .id_1125 .l-content,
body .id_3 .l-content {
  padding: 0;
}
body .id_18 .l-content .alignfull,
body .id_19 .l-content .alignfull,
body .id_20 .l-content .alignfull,
body .id_21 .l-content .alignfull,
body .id_22 .l-content .alignfull,
body .id_42 .l-content .alignfull,
body .id_23 .l-content .alignfull,
body .id_1125 .l-content .alignfull,
body .id_3 .l-content .alignfull {
  margin: 0;
}
body .id_18 #content.l-content.l-container,
body .id_19 #content.l-content.l-container,
body .id_20 #content.l-content.l-container,
body .id_21 #content.l-content.l-container,
body .id_22 #content.l-content.l-container,
body .id_42 #content.l-content.l-container,
body .id_23 #content.l-content.l-container,
body .id_1125 #content.l-content.l-container,
body .id_3 #content.l-content.l-container {
  max-width: 100% !important;
}

/* =====================================================
  06. ヘッダー（SPオーバーレイ / フロント専用）
===================================================== */
/* ---------- SWELL側（フロント専用） ---------- */
#content .post_content {
  margin: -148px auto 0;
}

/* ヘッダーロゴ余白 */
.l-header__logo {
  margin: 0 !important;
  padding: 10px 0 !important;
  margin: 0 25px;
}

.l-header {
  background: rgba(145, 145, 145, 0) !important;
  left: 0;
  top: 0;
  z-index: 100;
}

/* SPヘッダー：左側カスタムボタン非表示 */
.l-header__customBtn {
  display: none;
}

/* ヘッダー内側padding / SPは下線追加 */
.l-header__inner {
  padding: 0 2%;
  font-weight: bold;
  max-width: 1700px;
  width: 100%;
}

.l-fixHeader__inner {
  align-items: stretch;
  color: var(--color_header_text);
  display: flex;
  padding: 0;
  position: relative;
  z-index: 1;
}

.l-fixHeader:before {
  background: rgba(223, 223, 223, 0.4078431373);
  display: block;
}

/* ロゴリンクの余白削除 */
.-img .c-headLogo__link {
  padding: 0;
}

.c-gnav {
  align-items: center;
}
.c-gnav a {
  font-weight: bold;
}
.c-gnav a::after {
  display: none !important;
}
.c-gnav > .menu-item {
  position: relative;
  height: 98%;
  overflow: visible;
}
.c-gnav > .menu-item > .sub-menu {
  position: absolute;
  z-index: 9999;
}
.c-gnav > .menu-item > a {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 25px;
  margin: 0;
  z-index: 2;
  color: #A68B65;
}
.c-gnav > .menu-item > a :hover {
  color: #F4F2ED;
  -webkit-text-stroke: 1px #A68B65;
}

/* =====================================================
   SPメニュー（List menu）
===================================================== */
@media (max-width: 960px) {
  .l-header {
    background: rgba(223, 223, 223, 0.4078431373);
  }
}
.l-header__inner {
  display: flex;
  justify-content: space-between;
}

.l-header.-t-fff {
  --swl-color_top_header: #A68B65;
}

.p-spMenu__body .c-listMenu {
  text-align: left;
}

/* =====================================================
   カスタムSPメニュー：サービスのサブメニュー常時表示
===================================================== */
.p-spMenu__body {
  background-color: #2A4C3E;
  color: #A68B65;
}
.p-spMenu__body .spxMenuNav__services > .sub-menu {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  height: auto !important;
  max-height: none !important;
  position: static !important;
  transform: none !important;
}
.p-spMenu__body .spxMenuNav__services {
  /* サブメニュー a の余白 */
}
.p-spMenu__body .spxMenuNav__services > .sub-menu > li > a {
  display: block;
  padding: 1.15em 1.25em;
}
.p-spMenu__body .spxMenuNav__services {
  /* サブメニュー：ホバー背景（白素材） */
}
.p-spMenu__body .spxMenuNav__services > .sub-menu > li.menu-item {
  position: relative;
  overflow: hidden;
}
.p-spMenu__body .spxMenuNav__services > .sub-menu > li.menu-item > a {
  position: relative;
  z-index: 1;
}
.p-spMenu__body .spxMenuNav__services > .sub-menu > li.menu-item:hover::before {
  opacity: 1;
}
.p-spMenu__body .spxMenuNav__services > .sub-menu > li.menu-item:hover > a {
  color: #000 !important;
}

.p-spMenu__inner::before {
  background: #2A4C3E;
  opacity: 1;
}

.c-widget__title.-spmenu {
  padding: 0.5em 0.75em;
  border-radius: var(--swl-radius--2, 0px);
  background: #2A4C3E;
  color: #A68B65;
}

.c-listMenu a:hover {
  color: #FCF9F2;
}

.icon-close-thin:before {
  content: "\e920";
  color: #A68B65;
}

/* =====================================================
   SPメニュー：区切り線（下線）を消す
===================================================== */
.p-spMenu__body .c-listMenu > li,
.p-spMenu__body .c-listMenu a {
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.w-footer .w-footer__box:nth-child(1) {
  text-align: center;
  flex: 1;
}
.w-footer .w-footer__box:nth-child(1) .c-widget + .c-widget {
  margin-top: 0em;
}
.w-footer .w-footer__box:nth-child(1) .custom-html-widget {
  display: flex;
  justify-content: center;
}
.w-footer .w-footer__box:nth-child(1) #media_image-12 a {
  display: inline-block; /* 念のため */
  transition: opacity 0.4s ease;
}
@media (min-width: 768px) {
  .w-footer .w-footer__box:nth-child(1) {
    text-align: center;
    width: 100%;
  }
}
.w-footer .w-footer__box:nth-child(2) {
  flex: 0 0 80%;
  width: 100%;
  align-items: center;
}
.w-footer .w-footer__box:nth-child(2) .mega-nav {
  background: #2A4C3E;
  padding: 40px 2%;
  color: #A68B65;
}
.w-footer .w-footer__box:nth-child(2) .mega-nav a {
  color: #A68B65;
  text-decoration: none;
  font-weight: 600;
  display: inline-block;
  margin-bottom: 30px;
}
.w-footer .w-footer__box:nth-child(2) .mega-nav a:hover {
  color: #FCF9F2;
}
.w-footer .w-footer__box:nth-child(2) .mega-nav__grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 0;
}
.w-footer .w-footer__box:nth-child(2) .mega-nav__col {
  display: flex;
  flex-direction: column;
}
.w-footer .w-footer__box:nth-child(2) .mega-nav__sub {
  margin-top: 8px;
  padding-left: 0;
}
.w-footer .w-footer__box:nth-child(2) .mega-nav__sub li {
  list-style: none;
  margin-bottom: 6px;
  padding-left: 1.2em;
  position: relative;
}
.w-footer .w-footer__box:nth-child(2) .mega-nav__sub li::before {
  content: "—";
  position: absolute;
  left: 0;
  opacity: 0.8;
}
.w-footer .w-footer__box:nth-child(2) .mega-nav__sub li a {
  font-weight: 400;
}
.w-footer .w-footer__box:nth-child(2) .mega-nav {
  /* PCだけ2〜3カラムにしたくなったら */
}
@media (min-width: 990px) {
  .w-footer .w-footer__box:nth-child(2) .mega-nav__grid {
    grid-template-columns: repeat(4, 1fr);
    -moz-column-gap: 30px;
         column-gap: 30px;
  }
}
.w-footer .w-footer__box:nth-child(2) .menu {
  display: flex;
  border-left: 0;
  justify-content: flex-start;
}
.w-footer .w-footer__box:nth-child(2) .c-listMenu a {
  border-bottom: none;
}
.w-footer .w-footer__box:nth-child(2) .c-listMenu a .menu-item {
  width: 430px;
}
.w-footer .c-iconList a:hover {
  color: #f1630e;
}

@media (max-width: 765px) {
  .-col3 {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .-col3 #media_image-3 a .wp-image-20 {
    width: 55px;
    height: 48px;
  }
  .-col3 .menu {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
}
.l-footer__foot {
  padding: 0.5em 0;
}

/* ===============================
   SP用 メガナビ
=============================== */
@media screen and (max-width: 990px) {
  .mega-nav {
    background: #777;
    padding: 32px 6%;
    color: #fff;
  }
  .mega-nav a {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    display: inline-block;
    margin-bottom: 10px;
    text-align: left;
    width: 100%;
  }
  .mega-nav a:hover {
    color: #f1630e;
  }
  .mega-nav {
    /* グリッド解除 → 縦積み */
  }
  .mega-nav__grid {
    display: flex;
    flex-direction: column;
    row-gap: 14px;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
  }
  .mega-nav__col {
    display: flex;
    flex-direction: column;
  }
  .mega-nav {
    /* サービス配下 */
  }
  .mega-nav__sub {
    margin-top: 6px;
    padding-left: 0;
  }
  .mega-nav__sub li {
    list-style: none;
    margin-bottom: 6px;
    padding-left: 24px;
    position: relative;
  }
  .mega-nav__sub li::before {
    content: "—";
    position: absolute;
    left: 0;
    opacity: 0.7;
  }
  .mega-nav__sub li a {
    font-weight: 500;
    font-size: 0.9rem;
  }
}
.top #content {
  padding-top: 0em !important;
}

#main_visual {
  /* 画面高さ*/
}
#main_visual .p-mainVisual__inner {
  height: 107vh;
}
#main_visual .p-mainVisual__inner .p-mainVisual__textLayer {
  color: #fffdf6 !important;
}
@media (max-width: 765px) {
  #main_visual .p-mainVisual__textLayer {
    height: 80%;
  }
}
#main_visual .p-mainVisual__slideTitle {
  font-size: clamp(2rem, 4vw, 3rem);
  font-family: "Noto Sans JP", "MS PGothic", Arial, Osaka, sans-serif;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.03em;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.28);
}
#main_visual .p-mainVisual__slideText {
  font-size: clamp(1.1rem, 3vw, 2rem);
  font-family: "Noto Sans JP", "MS Pゴシック", "MS PGothic", Arial, Osaka, sans-serif;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.22);
}

/* スクロール*/
.c-plainBtn {
  bottom: 200px !important;
  opacity: 1;
}

/* 「section」======= About  ========　*/
.top_about {
  padding: 100px 0 !important;
}
.top_about .about__flex {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  margin: 0 auto 60px;
}
.top_about .about__flex .wp-block-image {
  width: 30% !important;
}
.top_about .about__flex .wp-block-image img {
  width: 80% !important;
}
@media (max-width: 765px) {
  .top_about .about__flex {
    align-items: center;
    gap: 50px;
    flex-direction: column-reverse;
    margin: 0 0 20px;
  }
  .top_about .about__flex .wp-block-image {
    width: 100% !important;
  }
  .top_about .about__flex .wp-block-image img {
    width: 80% !important;
  }
  .top_about .about__flex .wp-block-group {
    align-items: center;
  }
  .top_about .about__flex .wp-block-group .has-medium-font-size {
    text-align: center;
    width: 100% !important;
  }
}

.-sidebar-on .l-content .alignfull {
  left: 0;
  margin-bottom: 0;
}

/* 「section」=======   Concept -コンセプト-   ========*/
.top_concept {
  padding: 200px 4%;
}
.top_concept .concept_list {
  width: 100%;
  justify-content: space-between;
  margin: 0 auto;
}
.top_concept .concept_list__item {
  width: 32%;
  background: #fff;
  padding: 2% 1%;
  border-radius: 15px;
  border: 1px solid #f1f0f0;
  box-shadow: 0 16px 27px rgba(0, 0, 0, 0.06);
  align-items: flex-start;
}

@media (max-width: 767px) {
  .top_concept {
    padding: 0;
  }
  .top_concept .concept_list {
    width: 100%;
    justify-content: space-between;
    flex-direction: column;
    gap: 20px;
    margin: 0 auto;
  }
  .top_concept .concept_list__item {
    width: 100%;
    background: #fff;
    padding: 7% 5%;
    border-radius: 15px;
    border: 1px solid #f1f0f0;
    box-shadow: 0 16px 27px rgba(0, 0, 0, 0.06);
    align-items: flex-start;
  }
}
/* 「section」=======   Service -サービス-  ========  */
.top_service {
  padding: 0 4%;
}
.top_service .creative {
  display: flex;
  justify-content: center;
  gap: 50px;
  padding: 70px 4%;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.top_service .creative__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 100px;
}
.top_service .creative {
  margin: 0;
}
@media (max-width: 767px) {
  .top_service .creative__inner {
    flex-direction: column;
    gap: 50px;
    margin: 0;
  }
  .top_service .creative__inner .section-title p span {
    font-size: 10px !important;
  }
  .top_service .creative__inner .section-title span {
    font-size: 26px !important;
    letter-spacing: 0px;
  }
  .top_service .creative__inner img {
    max-width: 80%;
  }
}
.top_service .site {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 50px 0;
}
.top_service .site__list {
  width: 60%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 50px;
}
.top_service .site__list--img {
  width: 40%;
  padding: 8%;
  border-radius: 15px;
}
.top_service .site__list--img img {
  width: 60%;
}
.top_service .site__list--text {
  width: 60%;
}
@media (max-width: 767px) {
  .top_service .site {
    width: 100%;
    margin: 0;
    padding: 50px 4%;
  }
  .top_service .site__list {
    width: 100%;
    flex-direction: column;
  }
  .top_service .site__list--img {
    width: 80%;
  }
  .top_service .site__list--img img {
    width: 60%;
  }
  .top_service .site__list--img p {
    font-size: 13px;
  }
  .top_service .site__list--text {
    width: 100%;
  }
}
.top_service .graphic {
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}
.top_service .graphic .grid {
  width: 60%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 0 auto;
  gap: 20px;
  padding: 0 0 50px;
}
.top_service .graphic .grid__item {
  width: 100%;
  border-radius: 15px;
}
.top_service .graphic .grid__item .img_1 img {
  width: 50%;
  margin: 39px auto 10px;
}
.top_service .graphic .grid__item .img_2 img {
  width: 50%;
  margin: 39px auto 10px;
}
.top_service .graphic .grid__item .img_3 img {
  width: 50%;
  margin: 39px auto 10px;
}
.top_service .graphic .grid__item .img_4 img {
  width: 45%;
  margin: 60px auto 20px;
}
.top_service .graphic .grid__item .img_5 img {
  width: 40%;
  margin: 39px auto 15px;
}
.top_service .graphic .grid__item .img_6 img {
  width: 39%;
  margin: 43px auto 19px;
}
@media (max-width: 767px) {
  .top_service .graphic {
    padding: 0;
  }
  .top_service .graphic .grid {
    width: 100%;
    gap: 10px;
    padding: 0 12px 40px;
  }
  .top_service .graphic .grid__item {
    width: 100%;
    padding: 2% 0;
  }
  .top_service .graphic .grid__item p {
    font-size: 10px !important;
  }
  .top_service .graphic .grid__item .img_1 img,
  .top_service .graphic .grid__item .img_2 img,
  .top_service .graphic .grid__item .img_3 img {
    width: 60%;
    margin: 20px auto 8px;
  }
  .top_service .graphic .grid__item .img_4 img {
    width: 60%;
    margin: 27px auto 12px;
  }
  .top_service .graphic .grid__item .img_5 img {
    width: 50%;
    margin: 15px auto 10px;
  }
  .top_service .graphic .grid__item .img_6 img {
    width: 50%;
    margin: 15px auto 12px;
  }
}

/* 「section」=======   Price -料金-  ========  */
.top_price__block {
  width: 75%;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 15px;
  padding: 6% 4% !important;
}
.top_price__block--inner {
  width: 90%;
  display: flex;
  flex-direction: row !important;
  align-items: center;
  border-radius: 15px;
  justify-content: center;
  gap: 100px;
  border: 1px solid #A68B65;
  padding: 10% !important;
}

@media (max-width: 1170px) {
  .top_price__block--inner {
    flex-direction: column !important;
    gap: 0px;
  }
}
@media (max-width: 600px) {
  .top_price__block {
    width: 100%;
    padding: 12% 4% !important;
  }
  .top_price__block--inner .flex_left__title {
    font-size: 20px;
  }
  .top_price__block--inner .flex_left__price {
    text-align: center;
  }
  .top_price__block--inner .flex_left__price .swl-fz {
    font-size: 48px !important;
  }
  .top_price__block--inner .flex_left__price .u-fz-xl {
    font-size: 17px !important;
  }
  .top_price__block--inner .flex_right {
    font-size: 14px;
  }
}
/* SPで縦積みに切り替えたい場合（任意） */
@media (max-width: 768px) {
  .top_price_sp {
    align-items: center;
    padding: 20px 0 72px 16px;
  }
  .top_price_sp .section-title {
    padding: 155px 4% 20px;
  }
  .top_price_sp h4 {
    padding: 15px 0 30px;
  }
  .top_price_sp p {
    padding: 0;
  }
}
/* 「section」=======   WORKS -制作実績-  ========  */
.works__list {
  width: 100%;
}
.works__list .swell-block-box-menu__inner {
  flex-wrap: wrap;
  justify-content: center;
  gap: 2%;
}
.works__list div > :last-child {
  margin-bottom: 2% !important;
}
.works__list--item {
  width: 30% !important;
  border-radius: 15px;
  border: 1px solid #f1f0f0;
  margin: 0 0 2% !important;
  box-shadow: 0 16px 27px rgba(0, 0, 0, 0.06);
}
.works__list--item img:hover {
  border-radius: 0;
}
.works__list--item :hover {
  background-color: #DEEDE7 !important;
  border-radius: 15px;
}
.works__list--item span {
  margin: 0 0 15px;
}
.works .swell-block-box-menu__link {
  padding: 2em;
}

@media (max-width: 990px) {
  .works__list {
    width: 100%;
  }
  .works__list .swell-block-box-menu__inner {
    flex-wrap: nowrap;
    flex-direction: column;
  }
  .works__list .swell-block-box-menu__inner div > :last-child {
    margin-bottom: 0 !important;
  }
  .works__list--item {
    width: 100% !important;
    margin: 0 0 50px !important;
  }
}
/* 「section」=======   INDUSTRY -対応業種-  ========  */
.indstry .indstry_grid {
  width: 80%;
  margin: 0 auto;
}
.indstry .indstry_grid__item {
  border-radius: 15px;
}
.indstry .indstry_grid__item img {
  width: 50%;
}
.indstry .indstry_grid__item pre {
  text-align: center;
}
@media (max-width: 1000px) {
  .indstry .indstry_grid {
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
  }
  .indstry .indstry_grid__item {
    border-radius: 15px;
    padding: 10% 4%;
  }
  .indstry .indstry_grid__item .u-mb-20 {
    margin-bottom: 0.6em !important;
  }
  .indstry .indstry_grid__item img {
    width: 50%;
  }
  .indstry .indstry_grid__item h4 {
    font-size: 16px;
    margin-bottom: 0.6em !important;
  }
  .indstry .indstry_grid__item pre {
    padding: 0;
    font-size: 12px;
  }
}

/* 「section」=======   NEWS -お知らせ-  ========  */
.news__list {
  width: 80%;
  margin: 0 auto;
  gap: 20px;
}
.news__list .p-postList.-type-thumb {
  gap: 10px;
  align-items: center;
  justify-content: center;
}
.news__list .p-postList__item {
  width: 24.33333% !important;
  padding: 0;
  border: 1px solid #f1f0f0;
  border-radius: 15px;
  box-shadow: 0 16px 27px rgba(0, 0, 0, 0.06);
}
.news__list .p-postList__item .p-postList__thumb {
  border-radius: 15px;
}
.news__list .p-postList__thumb .c-postThumb__figure {
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: 15px;
}
.news__list .p-postList__thumb .c-postThumb__figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.news__list .p-postList__body {
  background: rgb(255, 255, 255);
  color: #A68B65;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 2em 4%;
  border-bottom-left-radius: 15px;
  border-bottom-right-radius: 15px;
}
.news__list__list {
  width: 80%;
  margin: 0 auto;
  gap: 20px;
}
.news__list__list .p-postList.-type-thumb {
  gap: 10px;
  align-items: center;
  justify-content: center;
}
.news__list__list .p-postList__item {
  width: 24.33333% !important;
  padding: 0;
  border: 1px solid #f1f0f0;
  border-radius: 15px;
  box-shadow: 0 16px 27px rgba(0, 0, 0, 0.06);
}
.news__list__list .p-postList__thumb .c-postThumb__figure {
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: 15px;
}
.news__list__list .p-postList__thumb .c-postThumb__figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.news__list__list .p-postList__body {
  background: rgb(255, 255, 255);
  color: #A68B65;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 2em 4%;
  border-bottom-left-radius: 15px;
  border-bottom-right-radius: 15px;
}
.news__list__list .c-postThumb__cat {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin: 12px 12px 0 0;
  border-radius: 50%;
  font-size: 8px;
  background-image: repeating-linear-gradient(270deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 6px, transparent 6px, transparent 12px);
}

.c-postThumb__cat {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin: 12px 12px 0 0;
  border-radius: 50%;
  font-size: 8px;
  background-image: repeating-linear-gradient(270deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 6px, transparent 6px, transparent 12px);
}

@media (max-width: 768px) {
  .news__list {
    width: 90%;
    margin: 0 auto;
    gap: 20px;
  }
  .news__list .p-postList.-type-thumb {
    gap: 10px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }
  .news__list .p-postList__item {
    width: 100% !important;
    padding: 0;
    border: 1px solid #f1f0f0;
    border-radius: 15px;
    box-shadow: 0 16px 27px rgba(0, 0, 0, 0.06);
  }
  .news__list .p-postList__thumb .c-postThumb__figure {
    aspect-ratio: 1/1;
    overflow: hidden;
    border-radius: 15px;
  }
  .news__list .p-postList__thumb .c-postThumb__figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
  }
  .news__list .p-postList__body {
    background: rgb(255, 255, 255);
    color: #A68B65;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 2em 4%;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
  }
  .news__list .c-postThumb__cat {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    margin: 12px 12px 0 0;
    border-radius: 50%;
    font-size: 8px;
    background-image: repeating-linear-gradient(270deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 6px, transparent 6px, transparent 12px);
  }
}
/* 「section」=======    PROFILE   ========  */
.profile__block {
  width: 100%;
  margin: 0 auto;
}
.profile__block .flex {
  flex-direction: row;
  align-items: center;
}
.profile__block .flex .textarea {
  width: 50%;
}
.profile__block .flex .textarea .wp-block-image {
  width: 100%;
}
.profile__block .flex .textarea .wp-block-image img {
  width: 60%;
  margin: 0;
}
.profile__block .flex .textarea p {
  width: 70%;
}
.profile__block .flex .history .swell-block-step {
  width: 100%;
}

@media (max-width: 990px) {
  .profile__block {
    width: 100%;
    margin: 0 auto;
  }
  .profile__block .flex {
    flex-direction: column;
    align-items: center;
  }
  .profile__block .flex .textarea {
    width: 100%;
    margin-bottom: 100px;
  }
  .profile__block .flex .textarea .wp-block-image {
    width: 100%;
  }
  .profile__block .flex .textarea .wp-block-image img {
    width: 60%;
    margin: 0 auto;
  }
  .profile__block .flex .textarea .u-mb-ctrl {
    text-align: center;
    padding: 0 0 10px;
  }
  .profile__block .flex .textarea p {
    width: 100%;
  }
  .profile__block .flex .history .swell-block-step {
    width: 100%;
  }
}
/* 「section」=======    ACTIVE   ========  */
.active .section-title2 {
  align-items: flex-start;
}
.active__list {
  width: 100%;
  margin: 0 auto;
  gap: 4%;
  padding: 0 !important;
  --swl-box_padding: 0 !important;
}
.active__list--item {
  width: 33%;
  border-radius: 15px;
}
.active__list--item img {
  width: 50%;
  margin: 0 auto 30px;
}
.active__list--item .item_text {
  padding: 15% 4%;
  text-align: center;
  border-bottom-left-radius: 15px;
  border-bottom-right-radius: 15px;
}
.active__list--item .item_text h3 {
  margin: 0 0 10px;
}
.active .wp-block-group {
  --swl-box_padding: 30px 0 0;
}

@media (max-width: 600px) {
  .active .section-title2 {
    align-items: flex-start;
  }
  .active__list {
    width: 100%;
    margin: 0 auto;
    flex-direction: column;
    gap: 80px;
    padding: 0 !important;
    --swl-box_padding: 0 !important;
  }
  .active__list--item {
    width: 100%;
  }
  .active__list--item img {
    width: 50%;
    margin: 0 auto 30px;
  }
  .active__list--item .item_text {
    padding: 15% 4%;
    text-align: center;
  }
  .active__list--item .item_text h3 {
    margin: 0 0 10px;
  }
  .active .wp-block-group {
    --swl-box_padding: 30px 0 0;
  }
}
.value_list {
  width: 100%;
  justify-content: space-between;
  margin: 0 auto;
}
.value_list__item {
  width: 32%;
  background: #fff;
  padding: 2% 1%;
  border-radius: 15px;
  border: 1px solid #f1f0f0;
  box-shadow: 0 16px 27px rgba(0, 0, 0, 0.06);
  align-items: flex-start;
}

@media (max-width: 768px) {
  .value_list {
    width: 100%;
    justify-content: space-between;
    flex-direction: column;
    gap: 20px;
    margin: 0 auto;
  }
  .value_list__item {
    width: 100%;
    background: #fff;
    padding: 7% 5%;
    border-radius: 15px;
    border: 1px solid #f1f0f0;
    box-shadow: 0 16px 27px rgba(0, 0, 0, 0.06);
    align-items: flex-start;
  }
  .mvv_text span {
    font-size: 20px !important;
  }
}
/* 「section」=======    FUNNEL   ========  */
@media (max-width: 768px) {
  .size_xs img {
    max-width: 100% !important;
  }
  .funnel_boldtext strong {
    font-size: 20px;
  }
}
/* 「section」=======    STRUCTURE   ========  */
.structure .section-title2 {
  align-items: flex-start;
}
.structure__list {
  gap: 100px;
}
.structure__list--item {
  width: 100%;
  flex-direction: row !important;
}
.structure__list--item .textarea {
  width: 50%;
  align-items: flex-start;
  border-top-left-radius: 15px;
  border-bottom-left-radius: 15px;
  padding: 1% 4%;
}
.structure__list--item .textarea h4 {
  margin: 0 0 30px !important;
}
.structure__list--item .wp-block-image {
  width: 50%;
}
.structure__list--item .wp-block-image img {
  height: 393px;
  width: 100%;
  border-top-right-radius: 15px;
  border-bottom-right-radius: 15px;
}

@media (max-width: 990px) {
  .structure__list {
    gap: 100px;
  }
  .structure__list--item {
    width: 100%;
    flex-direction: column-reverse !important;
    align-items: center;
  }
  .structure__list--item .textarea {
    width: 100%;
    align-items: flex-start;
    padding: 8% 3%;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    border-top-left-radius: 0;
    padding: 1% 4%;
  }
  .structure__list--item .textarea strong {
    font-size: 40px;
  }
  .structure__list--item .textarea h4 {
    margin: 0 0 30px !important;
  }
  .structure__list--item .wp-block-image {
    width: 100%;
  }
  .structure__list--item .wp-block-image img {
    height: auto;
    width: 100%;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    border-bottom-right-radius: 0;
  }
}
.action_type__title span {
  padding: 10px;
  border-radius: 8px;
}
.action_type__block {
  padding: 6% !important;
  border-radius: 15px;
}
.action_type__block--inner {
  padding: 6% !important;
  border-radius: 15px;
}
.action_type__block--inner .grid {
  display: grid !important;
  flex-direction: row;
  width: 100%;
}
.action_type__block--inner .grid__item {
  width: 100%;
  padding: 2% !important;
  border-radius: 15px;
}
.action_type__block--inner .grid__item .item-top {
  width: 100%;
  flex-direction: row;
  align-items: center;
  padding: 3% 0;
}
.action_type__block--inner .grid__item .item-top .wp-block-image {
  width: 30%;
}
.action_type__block--inner .grid__item .item-top .wp-block-image img {
  margin: 0 0 10px;
}
.action_type__block--inner .grid__item .item-top h5 {
  width: 70%;
}
.action_type__block--inner .grid__item .item-bottom {
  padding: 3em;
  border-bottom-right-radius: 15px;
  border-bottom-left-radius: 15px;
}

@media (max-width: 990px) {
  .action_type__title span {
    padding: 10px;
    border-radius: 8px;
    font-size: 0.8em;
  }
  .action_type__block {
    padding: 3% !important;
  }
  .action_type__block--inner {
    padding: 3% !important;
  }
  .action_type__block--inner .inner-text {
    font-size: 12px;
  }
  .action_type__block--inner .grid {
    display: grid !important;
    flex-direction: row;
    width: 100%;
  }
  .action_type__block--inner .grid__item {
    width: 100%;
    padding: 2% !important;
    border-radius: 15px;
  }
  .action_type__block--inner .grid__item .item-top {
    width: 100%;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 3% 0;
  }
  .action_type__block--inner .grid__item .item-top .wp-block-image {
    width: 100%;
  }
  .action_type__block--inner .grid__item .item-top .wp-block-image img {
    width: 30%;
    margin: 0 auto 10px;
  }
  .action_type__block--inner .grid__item .item-top h5 {
    width: 100%;
    font-size: 12px;
    text-align: center;
  }
  .action_type__block--inner .grid__item .item-bottom {
    padding: 6% 2%;
    font-size: 14px;
  }
}
@media (max-width: 500px) {
  .action_type__title {
    margin: 0 auto;
    text-align: center !important;
  }
  .action_type__block {
    padding: 4% !important;
  }
  .action_type__block--inner {
    padding: 6% 4% !important;
  }
  .action_type__block--inner .grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .has-text-align-center {
    font-size: 16px !important;
  }
}
/* 「section」=======   Service -サービス-  ========  */
.service {
  padding: 0 4%;
}
.service .creative {
  display: flex;
  justify-content: center;
  gap: 50px;
  padding: 70px 4%;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.service .creative__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 100px;
}
.service .creative {
  margin: 0;
}
@media (max-width: 767px) {
  .service .creative__inner {
    flex-direction: column;
    gap: 50px;
    margin: 0;
  }
  .service .creative__inner .section-title p span {
    font-size: 10px !important;
  }
  .service .creative__inner .section-title span {
    font-size: 26px !important;
    letter-spacing: 0px;
  }
  .service .creative__inner img {
    max-width: 80%;
  }
}
.service .site {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  padding: 50px 0;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}
.service .site__list {
  width: 60%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 50px;
}
.service .site__list--img {
  width: 40%;
  padding: 8%;
  border-radius: 15px;
}
.service .site__list--img img {
  width: 60%;
}
.service .site__list--text {
  width: 70%;
}
.service .site__list--text .more-btn {
  text-align: left;
}
@media (max-width: 990px) {
  .service .site {
    width: 100%;
    margin: 0;
    padding: 50px 6%;
  }
  .service .site__list {
    width: 100%;
    flex-direction: column;
  }
  .service .site__list--img {
    width: 100%;
    padding: 12% 2%;
  }
  .service .site__list--img img {
    width: 40%;
  }
  .service .site__list--img p {
    font-size: 13px;
  }
  .service .site__list--text {
    width: 100%;
  }
  .service .site__list--text .more-btn {
    text-align: center;
  }
}

@media (max-width: 768px) {
  .nayami .read_tile {
    font-size: 1.5rem !important;
  }
}

.features .features_inner {
  align-items: center;
  justify-content: space-between;
}
.features .features_inner .wp-block-image {
  width: 40%;
}
.features .features_inner .wp-block-image img {
  border-radius: 15px;
}
.features .features_inner__list {
  gap: 30px;
  width: 50%;
}
.features .features_inner__list--item {
  width: 100%;
  align-items: flex-start;
  border-radius: 15px;
  padding: 1% 4%;
}
.features .features_inner__list--item .textarea h4 {
  margin: 0 0 30px !important;
}

@media (max-width: 990px) {
  .features .features_inner {
    align-items: center;
    justify-content: space-between;
    flex-direction: column-reverse;
    gap: 20px;
  }
  .features .features_inner .wp-block-image {
    width: 100%;
  }
  .features .features_inner .wp-block-image img {
    width: 100%;
    border-radius: 15px;
  }
  .features .features_inner__list {
    gap: 20px;
    width: 100%;
  }
  .features .features_inner__list--item {
    width: 100%;
    align-items: flex-start;
    border-radius: 15px;
    padding: 1% 4%;
  }
  .features .features_inner__list--item h4 {
    text-align: left;
    margin: 0 0 30px !important;
  }
}
.service_price .service_price_flex {
  width: 100%;
  align-items: center;
  justify-content: center;
}
.service_price .service_price_flex__image {
  width: 50%;
}

@media (max-width: 990px) {
  .service_price .service_price_flex {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    align-content: center;
    justify-content: center;
  }
  .service_price .service_price_flex__image {
    width: 100%;
  }
  .service_price .service_price_flex__image img {
    width: 100%;
    padding: 0 2%;
  }
}
.flow .flow_flex {
  gap: 30px;
  width: 80%;
  margin: 0 auto;
  padding: 0;
  justify-content: center;
}
.flow .flow_flex .flow_flex_item {
  width: 33%;
  padding: 20px 0 50px;
  border-radius: 15px;
  background-color: #FFF !important;
  align-items: center;
  justify-content: flex-start;
}
.flow .flow_flex .flow_flex_item .step_num {
  width: 28%;
}
.flow .flow_flex .flow_flex_item .step_num img {
  width: 100%;
}
.flow .flow_flex .flow_flex_item__img {
  display: flex;
  width: 100%;
}
.flow .flow_flex .flow_flex_item__img img {
  width: 40%;
  margin: 0 auto;
}
.flow .flow_flex .flow_flex_item pre {
  padding: 0 5%;
  width: 100%;
}
.flow .flow_flex .flow_flex_item__bottom-img {
  margin: 30px 0 0 !important;
}
.flow .flow_flex .item1 img {
  width: 29%;
  margin: 0 auto;
}
.flow .flow_flex .item3 img {
  width: 36%;
  margin: 0 auto;
}
.flow .flow_flex .item6 img {
  width: 38%;
  margin: 0 auto;
}
.flow .flow_flex .gra img {
  width: 50%;
  margin: 0 auto;
}

@media (max-width: 990px) {
  .flow .flow_flex {
    gap: 30px;
    width: 100%;
    padding: 0;
    flex-direction: column;
    align-items: center;
  }
  .flow .flow_flex .flow_flex_item {
    width: 100%;
    padding: 60px 0;
    align-items: center;
    justify-content: center;
  }
  .flow .flow_flex .flow_flex_item .step_num {
    width: 28%;
    margin: 0 0 30px;
  }
  .flow .flow_flex .flow_flex_item .step_num img {
    width: 100%;
  }
  .flow .flow_flex .flow_flex_item__img {
    display: flex;
    width: 60%;
  }
  .flow .flow_flex .flow_flex_item__img img {
    width: 100%;
  }
  .flow .flow_flex .flow_flex_item pre {
    padding: 0 5%;
    width: 100%;
  }
  .flow .flow_flex .flow_flex_item__bottom-img {
    width: 100%;
    margin: 30px 0 0 !important;
  }
  .flow .flow_flex .item1 img {
    width: 70%;
    margin: 0 auto;
  }
  .flow .flow_flex .item3 img {
    width: 100%;
    margin: 0 auto;
  }
  .flow .flow_flex .item6 img {
    width: 70%;
    margin: 0 auto;
  }
}
.faq .section-title {
  align-items: center;
}
.faq .faq_list {
  width: 60%;
  margin: 0 auto;
}
.faq .faq_list__que .swell-block-accordion__title {
  background-color: #2A4C3E;
}
.faq .faq_list .swell-block-accordion__body {
  padding: 0;
  background-color: #FFF;
  border: 1px solid #2A4C3E;
}
.faq .faq_list .swell-block-accordion__body .ans {
  padding: 0.7em;
}
@media (max-width: 768px) {
  .faq .faq_list {
    width: 100%;
  }
}

aside {
  display: block;
  padding: 6% 2%;
  width: 40% !important;
}
aside .c-widget__title.-side {
  background-color: #A68B65 !important;
  color: #F0ECE2;
}

@media (max-width: 767px) {
  aside {
    display: block;
    padding: 6% 2%;
    width: 100% !important;
  }
  aside .c-widget__title.-side {
    background-color: #A68B65 !important;
    color: #F0ECE2;
  }
}
/* NEWS一覧ページ */
body .id_43 .l-fixHeader__logo {
  padding: 16px 22px;
}
body .id_43 aside {
  display: block;
  width: 40% !important;
}
@media (max-width: 767px) {
  body .id_43 aside {
    display: block;
    padding: 6% 2%;
    width: 100% !important;
  }
  body .id_43 aside .c-widget__title.-side {
    background-color: #A68B65 !important;
    color: #F0ECE2;
  }
}
body .id_43 .l-topTitleArea {
  display: block;
  min-height: 500px;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0em 0;
  margin: -114px 0 0;
  background-color: rgb(0, 0, 0);
}
body .id_43 .l-topTitleArea__body {
  width: 100% !important;
  display: flex;
  align-items: center;
  text-align: center;
  color: #A68B65;
  font-size: 54px;
  margin: 200px 0 0;
  flex-direction: column;
  align-items: flex-start;
}
body .id_43 .l-topTitleArea__body h1 {
  max-width: 100% !important;
  width: 100% !important;
}
body .id_43 .c-filterLayer.-texture-dot:after {
  background-color: rgb(0, 0, 0);
  opacity: 0.4;
}
body .id_43 #content .post_content {
  padding: 0;
}
body .id_43 .l-mainContent {
  width: 100% !important;
}
body .id_43 .l-content {
  padding: 0;
  gap: 50px;
  flex-wrap: nowrap;
}
body .id_43 .l-content .alignfull {
  margin: 0;
}
body .id_43 #content.l-content.l-container {
  max-width: 100% !important;
  margin: 0;
}
body .id_43 .l-container {
  max-width: 100% !important;
}

/* NEWSシングルページ */
.single .l-fixHeader__logo {
  padding: 16px 22px;
}
.single {
  color: #545454;
  background-color: #F0ECE2 !important;
}
.single .l-topTitleArea {
  display: block;
  min-height: 500px;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0em 0;
  margin: -114px 0 0;
  background-color: rgb(0, 0, 0);
}
.single .l-topTitleArea__body {
  width: 100% !important;
  display: flex;
  align-items: center;
  text-align: center;
  color: #A68B65;
  font-size: 54px;
  margin: 200px 0 0;
  flex-direction: column;
  align-items: flex-start;
}
.single .l-topTitleArea__body h1 {
  max-width: 100% !important;
  width: 100% !important;
}
.single .c-filterLayer.-texture-dot:after {
  background-color: rgb(0, 0, 0);
  opacity: 0.4;
}
.single #content .post_content {
  padding: 10%;
}
.single .l-mainContent {
  width: 100% !important;
}
.single .l-content {
  padding: 0;
  gap: 50px;
  flex-wrap: nowrap;
}
.single .l-content .alignfull {
  margin: 0;
}
.single #content.l-content.l-container {
  max-width: 100% !important;
  margin: 0;
}
.single .l-container {
  max-width: 100% !important;
}

.works-page__inner {
  border-radius: 15px;
  padding: 4% !important;
}
.works-page__inner .works-tab {
  border-radius: 15px;
  padding: 4% 4% 6%;
}
.works-page__inner .is-style-bb > .c-tabList {
  --the-tab-item-margin: 2em 0% 5em;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto !important;
  justify-content: space-between;
  gap: 20px;
}

.contact_block {
  border-radius: 50px;
}

@media (max-width: 990px) {
  .contact_block {
    border-radius: 30px;
  }
}
.contact-block {
  margin: 150px 0;
}
.contact-block__inner .line_block {
  width: 100%;
  padding: 8% 6%;
}
.contact-block .mail_form {
  border-radius: 50px;
  padding: 3%;
  margin: 150px 0;
}
.contact-block .mail_form__title span {
  padding: 0 0 15px 0;
  position: relative;
}
.contact-block .mail_form__title span ::after {
  content: "";
  position: absolute;
  background-color: #fcfcfc;
  height: 3px;
  width: 100%;
}
.contact-block .wpcf7-not-valid-tip {
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.08em;
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
  font-weight: 500;
  color: #000;
  color: #dc3232;
  display: block;
  margin: 5px 0 -30px;
}
.contact-block .wpcf7 {
  width: 100%;
  background-color: #FFF;
  border-radius: 50px;
  padding: 0%;
}
.contact-block .wpcf7 ._sp {
  padding: 20% 4%;
  border-radius: 30px;
}
.contact-block .wpcf7 .wpcf7-form {
  max-width: 2000px;
  width: 100%;
  margin: 0 auto;
}
.contact-block .wpcf7 .wpcf7-form .form-list {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: 0px 0 42.5px;
}
.contact-block .wpcf7 .wpcf7-form .form-list .label-content {
  width: 33.4%;
  height: 45px;
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: flex-start;
}
.contact-block .wpcf7 .wpcf7-form .form-list .label-content label {
  color: #656565 !important;
  cursor: pointer;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.08em;
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
  font-weight: 500;
  color: #000;
}
.contact-block .wpcf7 .wpcf7-form .form-list .label-content ._sp {
  width: 100%;
  margin: 0 0 5px;
}
.contact-block .wpcf7 .wpcf7-form .form-list .label-content .required {
  width: 47px;
  height: 24px;
  text-align: center;
  padding: 0;
  border-radius: 7px;
  background-color: #f0ece2;
  color: #A68B65 !important;
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.07em;
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
  font-weight: 400;
  color: #fff;
}
.contact-block .wpcf7 .wpcf7-form .form-list .label-content .optional {
  width: 47px;
  height: 24px;
  text-align: center;
  padding: 0;
  border-radius: 7px;
  color: #f0ece2 !important;
  background-color: #A68B65;
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.07em;
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
  font-weight: 400;
  color: #fff;
}
.contact-block .wpcf7 .wpcf7-form .form-list .input-content {
  max-width: 400px;
  width: 100%;
}
.contact-block .wpcf7 .wpcf7-form .form-list .input-content ._sp {
  max-width: 100%;
}
.contact-block .wpcf7 .wpcf7-form .form-list .input-content .inquiry-radio {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: -1px 0 0px -3px;
}
.contact-block .wpcf7 .wpcf7-form .form-list .input-content .inquiry-radio .wpcf7-list-item {
  color: #656565 !important;
  margin: 6px 0px 0px -1px;
  width: -moz-fit-content;
  width: fit-content;
  transition: 0.3s;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.08em;
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
  font-weight: 400;
  color: #000;
}
.contact-block .wpcf7 .wpcf7-form .form-list .input-content .inquiry-radio .wpcf7-list-item label {
  cursor: pointer;
}
.contact-block .wpcf7 .wpcf7-form textarea {
  width: 400px;
  height: 244px;
  padding: 12px;
  border-radius: 4px;
  font-size: 16px;
  background: #F4F2ED;
}
.contact-block .wpcf7 .wpcf7-form textarea ._sp {
  width: 100%;
}
.contact-block .wpcf7 .wpcf7-form textarea:focus {
  border-color: #A68B65;
  outline: none;
}
.contact-block .wpcf7 .wpcf7-form input[type=text],
.contact-block .wpcf7 .wpcf7-form input[type=email],
.contact-block .wpcf7 .wpcf7-form input[type=tel],
.contact-block .wpcf7 .wpcf7-form input[type=date] {
  max-width: 100%;
  width: 100%;
  height: 48px;
  padding: 12px;
  border-radius: 4px;
  font-size: 16px;
  background: #F4F2ED !important;
}
.contact-block .wpcf7 .wpcf7-form input[type=text]:focus,
.contact-block .wpcf7 .wpcf7-form input[type=email]:focus,
.contact-block .wpcf7 .wpcf7-form input[type=tel]:focus,
.contact-block .wpcf7 .wpcf7-form input[type=date]:focus {
  border-color: #A68B65;
  background: #fff;
  outline: none;
}
.contact-block .wpcf7 .wpcf7-form input[type=radio],
.contact-block .wpcf7 .wpcf7-form input[type=checkbox] {
  appearance: none; /* デフォルトを消す */
  -webkit-appearance: none;
  -moz-appearance: none;
  margin-right: 18px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #f6f3ef !important;
  position: relative;
  transition: all 0.2s ease;
}
.contact-block .wpcf7 .wpcf7-form input[type=radio]:hover,
.contact-block .wpcf7 .wpcf7-form input[type=checkbox]:hover {
  cursor: pointer;
  border-radius: 50%;
  border: 1px solid #223121;
}
.contact-block .wpcf7 .wpcf7-form input[type=radio]:checked,
.contact-block .wpcf7 .wpcf7-form input[type=checkbox]:checked {
  border-radius: 50%;
  background: #a79275 !important;
  border: 1px solid #f0ece2;
}
.contact-block .wpcf7 .wpcf7-form input[type=radio]:focus,
.contact-block .wpcf7 .wpcf7-form input[type=checkbox]:focus {
  border-radius: 50%;
  border: 1px solid #515151;
  outline: 2px solid rgba(241, 208, 180, 0.903);
  outline-offset: 3px;
}
.contact-block .wpcf7 .wpcf7-form .btn-wrapper {
  margin: 0 auto;
  text-align: center;
  width: 210px;
  height: 50px;
}
.contact-block .wpcf7 .wpcf7-form .btn-wrapper .contact-btn {
  max-width: 250px;
  width: 100%;
  height: 60px;
  border-radius: 34px;
  font-family: "Anton", sans-serif;
  color: #F0ECE2 !important;
  letter-spacing: 7px;
  border: 1px solid #F0ECE2;
  background-color: #A68B65;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 12px 24px -12px rgba(0, 0, 0, 0.2);
  opacity: 1;
  transition: background-color 0.4s ease, color 0.4s ease, opacity 0.4s ease;
}
.contact-block .wpcf7 .wpcf7-form .btn-wrapper .contact-btn:hover {
  color: #A68B65 !important;
  border: 1px solid #A68B65;
  background-color: #F0ECE2;
}
.contact-block .wpcf7 .wpcf7-form .btn-wrapper .cta-btn {
  position: relative;
  overflow: hidden;
  width: 210px;
  height: 200px;
  margin: 0 auto;
  color: #fff;
  letter-spacing: 3px;
  border: none;
  background: url("assets/img/STORY_PALETTES_image/SP_contact_orange.png") center/cover no-repeat;
}
.contact-block .wpcf7 .wpcf7-form .btn-wrapper .cta-btn:hover {
  color: rgb(1, 116, 216);
  letter-spacing: 3px;
  font-weight: bold;
  transition: opacity 0.5s ease;
}
.contact-block .wpcf7 form.invalid .wpcf7-response-output {
  border: 2px solid #ff8c00;
  color: #000;
}
.contact-block .wpcf7 form.sent .wpcf7-response-output {
  border-color: #2be321;
  color: #000;
}

@media (max-width: 990px) {
  .contact-block {
    margin: 150px 0;
  }
  .contact-block__inner .line_block {
    width: 100%;
    padding: 8% 3%;
  }
  .contact-block .mail_form {
    border-radius: 30px;
    padding: 3%;
    margin: 150px 0;
  }
  .contact-block .mail_form__title span {
    padding: 0 0 15px 0;
    position: relative;
  }
  .contact-block .mail_form__title span ::after {
    content: "";
    position: absolute;
    background-color: #fcfcfc;
    height: 3px;
    width: 100%;
  }
  .contact-block .wpcf7-not-valid-tip {
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.08em;
    font-family: "Noto Sans JP", "Noto Sans", sans-serif;
    font-weight: 500;
    color: #000;
    color: #dc3232;
    display: block;
    margin: 5px 0 -30px;
  }
  .contact-block .wpcf7 {
    background-color: #FFF;
    border-radius: 30px;
    padding: 20% 2%;
  }
  .contact-block .wpcf7 .wpcf7-form .form-list {
    margin: 0px 0 42.5px;
  }
  .contact-block .wpcf7 .wpcf7-form .form-list .label-content {
    width: 100%;
    height: 45px;
    margin: 0 0 5px;
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: flex-start;
  }
  .contact-block .wpcf7 .wpcf7-form .form-list .label-content label {
    cursor: pointer;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.08em;
    font-family: "Noto Sans JP", "Noto Sans", sans-serif;
    font-weight: 500;
    color: #000;
  }
  .contact-block .wpcf7 .wpcf7-form .form-list .input-content {
    max-width: 400px;
    width: 100%;
    max-width: 100%;
  }
  .contact-block .wpcf7 .wpcf7-form .form-list .input-content .inquiry-radio {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: -1px 0 0px -3px;
  }
  .contact-block .wpcf7 .wpcf7-form .form-list .input-content .inquiry-radio .wpcf7-list-item {
    margin: 6px 0px 0px -1px;
    width: -moz-fit-content;
    width: fit-content;
    transition: 0.3s;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.08em;
    font-family: "Noto Sans JP", "Noto Sans", sans-serif;
    font-weight: 400;
    color: #000;
  }
  .contact-block .wpcf7 .wpcf7-form .form-list .input-content .inquiry-radio .wpcf7-list-item label {
    cursor: pointer;
  }
  .contact-block .wpcf7 .wpcf7-form textarea {
    width: 100%;
  }
  .contact-block .wpcf7 .wpcf7-form input[type=text],
  .contact-block .wpcf7 .wpcf7-form input[type=email],
  .contact-block .wpcf7 .wpcf7-form input[type=tel],
  .contact-block .wpcf7 .wpcf7-form input[type=date] {
    max-width: 100%;
    width: 100%;
    height: 48px;
    padding: 12px;
    border-radius: 4px;
    font-size: 16px;
    background: #f6f3ef !important;
  }
  .contact-block .wpcf7 .wpcf7-form input[type=text]:focus,
  .contact-block .wpcf7 .wpcf7-form input[type=email]:focus,
  .contact-block .wpcf7 .wpcf7-form input[type=tel]:focus,
  .contact-block .wpcf7 .wpcf7-form input[type=date]:focus {
    border-color: #f1630e;
    background: #fff;
    outline: none;
  }
  .contact-block .wpcf7 .wpcf7-form input[type=radio],
  .contact-block .wpcf7 .wpcf7-form input[type=checkbox] {
    appearance: none; /* デフォルトを消す */
    -webkit-appearance: none;
    -moz-appearance: none;
    margin-right: 18px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #f6f3ef !important;
    position: relative;
    transition: all 0.2s ease;
  }
  .contact-block .wpcf7 .wpcf7-form input[type=radio]:hover,
  .contact-block .wpcf7 .wpcf7-form input[type=checkbox]:hover {
    cursor: pointer;
    border-radius: 50%;
    border: 1px solid #223121;
  }
  .contact-block .wpcf7 .wpcf7-form input[type=radio]:checked,
  .contact-block .wpcf7 .wpcf7-form input[type=checkbox]:checked {
    border-radius: 50%;
    background: #f1630e !important;
    border: 1px solid #223121;
    background-color: #f1630e; /* ブランドカラー */
  }
  .contact-block .wpcf7 .wpcf7-form input[type=radio]:focus,
  .contact-block .wpcf7 .wpcf7-form input[type=checkbox]:focus {
    border-radius: 50%;
    border: 1px solid #515151;
    outline: 2px solid rgba(241, 109, 2, 0.903);
    outline-offset: 3px;
  }
  .contact-block .wpcf7 .wpcf7-form .btn-wrapper {
    margin: 0 auto;
    text-align: center;
    /* Contact Form 7 の送信ボタン用 */
  }
  .contact-block .wpcf7 .wpcf7-form .btn-wrapper .btn-wood {
    display: flex;
    margin: 0 auto;
    width: 60%;
    height: 50px;
    background: url("../img/enixi_LP/木目背景２.png") center/cover no-repeat;
    box-shadow: 0 9px 0 var(--c-wood-edge);
    letter-spacing: 3px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    justify-content: center;
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 0.5em 1em;
    cursor: pointer;
    transition: transform 0.1s ease, box-shadow 0.1s ease;
  }
  .contact-block .wpcf7 .wpcf7-form .btn-wrapper .btn-wood:hover {
    box-shadow: 0 0 0 transparent !important;
    transform: translate3d(0, 4px, 0);
  }
  .contact-block .wpcf7 form.invalid .wpcf7-response-output {
    border: 2px solid #ff8c00;
    color: #000;
  }
  .contact-block .wpcf7 form.sent .wpcf7-response-output {
    border-color: #7DA87B;
    color: #000;
  }
}/*# sourceMappingURL=style.css.map */