@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* Googleフォントの読み込み */
body {
  font-family: "Noto Sans JP", sans-serif;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Noto Serif JP", serif;
}
.hannari {
  font-family: "Hannari", "Noto Serif JP", serif;
}
.en {
  font-family: "Cormorant Garamond", "Noto Serif JP", serif;
}

/* ロゴ（h1）にサイトタイトルを埋め込む */
#site-title {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/* === 画像処理 === */
.skip-lazy,
.skip-lazy.lazyload,
.skip-lazy.lazyaspectratio {
  opacity: 1 !important;
}

/* ========== 共通パーツ ========== */
h2.section-title {
  font-size: 2.75rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em !important;
  margin-bottom: 1.2rem;
}
p.section-sub-title {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

@media (max-width: 599px) {
  h2.section-title {
    font-size: 30px;
    text-align: center !important;
  }
  p.section-sub-title {
    font-size: 15px;
  }
}

/* ========== 共通ボタン ========== */
/* === 白ボタン === */
.btn-white a {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #8c5a56;
  padding: 1.125rem 2.2rem 1.125rem 2.2rem;
  background-color: #ffffff;
  border-radius: 0.25rem;
  width: 14.188rem;
  height: 3.75rem;
  border: 0.125rem solid #8c5a56;
  box-shadow: none;
  position: relative;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  transition:
    background-color 0.4s ease,
    color 0.4s ease,
    border-color 0.4s ease;
}
.btn-white a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.2rem;
  width: 0.6rem;
  height: 0.6rem;
  border-top: 0.125rem solid #8c5a56;
  border-right: 0.125rem solid #8c5a56;
  transform: translateY(-50%) rotate(45deg);
  transition: border-color 0.4s ease;
}
.btn-white a:hover {
  background-color: #8c5a56;
  color: #ffffff;
  border-color: #8c5a56;
  box-shadow: none;
}
.btn-white a:hover::after {
  border-top-color: #ffffff;
  border-right-color: #ffffff;
}

@media (max-width: 599px) {
  .btn-white {
    text-align: center;
  }
  .btn-white a {
    font-size: 16px;
    padding: 1.125rem 1.2rem 1.125rem 4.5rem;
    width: 90%;
  }
  .btn-white a::after {
    top: 52%;
    right: 5.4rem;
  }
}

/* === 黒ボタン === */
.btn-black a {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #f8f6f3;
  padding: 1.125rem 2.25rem;
  background-color: #2a2a28;
  border-radius: 0.25rem;
  width: 22.5rem;
  height: 3.75rem;
  border: 0.125rem solid #2a2a28;
  box-shadow: none;
  position: relative;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  transition:
    background-color 0.4s ease,
    color 0.4s ease,
    border-color 0.4s ease;
}
.btn-black a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.2rem;
  width: 0.6rem;
  height: 0.6rem;
  border-top: 0.125rem solid #ffffff;
  border-right: 0.125rem solid #ffffff;
  transform: translateY(-50%) rotate(45deg);
  transition: border-color 0.4s ease;
}
.btn-black a:hover {
  background-color: #ffffff;
  color: #2a2a28;
  box-shadow: none;
}
.btn-black a:hover::after {
  border-top-color: #2a2a28;
  border-right-color: #2a2a28;
}

@media (max-width: 599px) {
  .btn-black a {
    font-size: 16px;
    padding: 1.125rem 1rem;
    width: 91%;
  }
  .btn-black a::after {
    top: 53%;
    right: 1.2rem;
  }
}

/* === テキストボタン === */
p.btn-text a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.9;
  letter-spacing: 0.03em;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  text-decoration-thickness: 0.063rem;
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  transition: opacity 0.3s ease;
}
p.btn-text a::after {
  content: "";
  width: 2.5rem;
  height: 2.5rem;
  background-color: #2a2a28;
  border-radius: 0.25rem;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='9 18 15 12 9 6'></polyline></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.1rem;
  flex-shrink: 0;
}
p.btn-text a:hover {
  opacity: 0.8;
}
@media (max-width: 959px) {
  p.btn-text {
    text-align: center !important;
  }
}
@media (max-width: 599px) {
  p.btn-text a {
    font-size: 16px;
  }
}

/* === ブラウンボタン === */
.btn-brown a {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #f8f6f3;
  padding: 1.125rem 5rem;
  border-radius: 0.25rem;
  width: 17.563rem;
  height: 3.75rem;
  border: 0.125rem solid #ffffff;
  box-shadow: none;
  position: relative;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  transition:
    background-color 0.4s ease,
    color 0.4s ease,
    border-color 0.4s ease;
}
.btn-brown a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 4.9rem;
  width: 0.6rem;
  height: 0.6rem;
  border-top: 0.125rem solid #ffffff;
  border-right: 0.125rem solid #ffffff;
  transform: translateY(-50%) rotate(45deg);
  transition: border-color 0.4s ease;
}
.btn-brown a:hover {
  background-color: #ffffff;
  color: #8c5a56;
  border: 0.125rem solid #8c5a56;
  box-shadow: none;
}
.btn-brown a:hover::after {
  border-top-color: #8c5a56;
  border-right-color: #8c5a56;
}

@media (max-width: 599px) {
  .btn-brown a {
    font-size: 16px;
    padding: 1.125rem 7rem;
    width: 88%;
  }
  .btn-brown a::after {
    top: 53%;
    right: 6.2rem;
  }
}

/* ========== ローディング画面 ========== */
.loader-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100vw;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.loader-overlay img {
  width: 360px;
  opacity: 0;
  transform: scale(0.9);
  animation:
    logoFadeZoom 1.5s ease-out forwards,
    logoFadeOut 1.5s 1.5s ease-out forwards;
}
@media screen and (max-width: 959px) {
  .loader-overlay img {
    width: 180px;
  }
}
@keyframes logoFadeZoom {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes logoFadeOut {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(1);
  }
}
/* === トップページのみ、ローディング画像表示 === */
#body_wrap.home:not(.loaded) #header,
#body_wrap.home:not(.loaded) #fix_header,
#body_wrap.home:not(.loaded) #content {
  opacity: 0 !important;
}
#header,
#fix_header,
#content {
  transition: opacity 0.6s ease-out;
}

/* ========== ヘッダー ========== */
@media (min-width: 960px) {
  .l-header__inner.l-container {
    max-width: 100%;
    padding: 0rem 2.5rem;
  }

  .-series .l-header__logo {
    padding: 0.75rem 0;
  }

  .c-gnav > .menu-item > a .ttl {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.05em;
  }

  .c-gnav > .menu-item > a:after {
    bottom: 40px;
    background-color: #8c5a56 !important;
  }
  div#fix_header .c-gnav > .menu-item > a:after {
    bottom: 15px;
  }

  /* === お問い合わせボタン === */
  .header-btn a {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.05em;
    padding: 0.75rem 0.2rem;
    border-radius: 0.25rem;
    width: 10rem;
    height: 2.813rem;
    border: 0.063rem solid #ffffff;
    box-shadow: none;
    transition:
      background-color 0.4s ease,
      color 0.4s ease,
      border-color 0.4s ease;
  }
  .header-btn a:hover {
    background-color: #ffffff;
    color: #8c5a56;
    border-color: #8c5a56;
    box-shadow: none;
  }
}

@media (max-width: 959px) {
  .c-iconBtn {
    color: #2a2a28;
  }
}

/* ========== fvセクション ========== */
.top #content {
  padding-top: 0;
}
.fv-section {
  padding-top: 8.3rem !important;
  background: linear-gradient(180deg, #fbfaf5 0%, #f8f6f3 100%);
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.fv-section::after {
  content: "UNO\A CHIYO";
  white-space: pre-line;
  position: absolute;
  bottom: 4rem;
  right: -0.6rem;
  font-size: 11.25rem;
  font-family: "Cormorant Garamond", "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 0.73;
  letter-spacing: 0.03em;
  text-align: left;
  color: rgba(200, 200, 200, 0.15);
  z-index: -1;
  pointer-events: none;
}

.fv-section .swell-block-fullWide__inner {
  padding: 0 1rem;
}

.fv-img-title-group {
  background-color: #ffffff;
  padding: 0.9rem clamp(0.2rem, -3.5rem + 6.167vw, 2.05rem) 0.95rem
    clamp(0.2rem, -1.4rem + 2.667vw, 1rem);
  align-items: center;
  gap: clamp(0.5rem, -1.5rem + 3.333vw, 1.5rem);
  width: fit-content;
  border: 1px solid #ededed;
  border-left: none;
  border-radius: 0 6px 6px 0;
  margin-top: -9rem;
  margin-left: -2.5rem;
  position: relative;
  z-index: 2;
}
p.fv-img-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.03em;
  color: #ffffff;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4.313rem;
  height: 4.313rem;
  z-index: 1;
}
p.fv-img-title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4.313rem;
  height: 4.313rem;
  background-color: #8c5a56;
  border-radius: 50%;
  z-index: -1;
}

p.fv-img-text {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em;
}

.fv-caption-img {
  padding-right: 5.5rem;
}

h2.fv-title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: normal;
  margin: 3.8rem 0 0.8rem;
}
p.fv-text {
  font-size: 1rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 2rem;
}

.fv-btn-group {
  gap: 0.95rem;
}

@media (max-width: 1290px) {
  .fv-btn-group {
    display: block !important;
  }
  .fv-section .btn-white,
  .fv-section .btn-black {
    text-align: start;
    margin-bottom: 1rem;
  }
}

@media (max-width: 959px) {
  .fv-section {
    padding-top: 3.3rem !important;
  }
  .fv-img-title-group {
    padding: 0.9rem 2.05rem 0.95rem 1rem;
    gap: 1.5rem;
    margin-left: -1rem;
  }
  .fv-img-column {
    padding: 0 0 3rem !important;
  }
  .fv-text-column {
    padding: 0 !important;
  }
  .fv-caption-img {
    padding-right: 0;
  }
}

@media (max-width: 599px) {
  .fv-section {
    padding-top: 4rem !important;
  }
  .fv-section::after {
    bottom: 10rem;
    right: -0.6rem;
    font-size: 8.25rem;
  }

  p.fv-img-text {
    font-size: 14px;
  }
  .fv-section .btn-white,
  .fv-section .btn-black {
    text-align: center;
  }

  h2.fv-title {
    font-size: 24px;
  }
  p.fv-text {
    font-size: 15px;
  }
}

/* ========== womanセクション ========= */
.woman-section {
  padding-top: 3.5rem !important;
  padding-bottom: 5rem !important;
  background: linear-gradient(180deg, #f8f6f3 0%, #ffffff 100%);
}

h2.woman-title {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em !important;
  margin-bottom: 4.4rem;
}

.woman-column {
  max-width: 1105px;
  margin-inline: auto;
  margin-bottom: 2.5rem;
}

p.woman-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 1.25rem;
  margin-bottom: 1.2rem;
}

.woman-caption-group {
  gap: 0.4rem;
  margin-bottom: 0.5rem;
}
p.woman-caption {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.03em;
  padding: 0.1rem 0.125rem 0.1rem 0.625rem;
  border-radius: 2.75rem;
  border: 0.063rem solid #5c5c58;
}

.woman-sub-title-group {
  justify-content: space-between;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem;
  background-color: #f8f6f3;
  border-radius: 0.25rem;
  width: clamp(28rem, 24rem + 6.667vw, 30rem);
  height: 3.375rem;
  margin-top: 2.5rem;
}
p.woman-sub-title {
  font-size: 1.25rem;
  font-family: "Hannari", "Noto Serif JP", serif;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
p.woman-sub-name {
  font-size: 0.75rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.04em;
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
}
p.woman-sub-name::before {
  content: "";
  width: 2.438rem;
  height: 0.063rem;
  background-color: #5c5c58;
  flex-shrink: 0;
}

@media (max-width: 1020px) {
  .woman-text-column {
    padding: 0 !important;
  }
}

@media (max-width: 959px) {
  .woman-sub-title-group {
    width: 70%;
  }
}

@media (max-width: 599px) {
  h2.woman-title {
    font-size: 22px;
  }
  p.woman-text {
    font-size: 15px;
    margin-bottom: 2rem;
  }
  .woman-caption-group {
    display: block !important;
  }
  p.woman-caption {
    font-size: 14px;
    width: fit-content;
    margin-bottom: 0.5rem !important;
  }

  .woman-sub-title-group {
    width: 100%;
    display: block !important;
    height: auto;
  }
  p.woman-sub-title {
    font-size: 18px;
  }
  p.woman-sub-name {
    font-size: 14px;
    width: 100%;
    justify-content: flex-end;
  }
}

/* ========== designセクション ========== */
.design-section {
  padding-top: 7.5rem !important;
  padding-bottom: 6.25rem !important;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.design-section::after {
  content: "WORKS\A &DESIGN";
  white-space: pre-line;
  position: absolute;
  top: -0.4%;
  right: -0.5%;
  font-size: 7.5rem;
  font-family: "Cormorant Garamond", "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 0.88;
  letter-spacing: 0.03em;
  text-align: left;
  color: rgba(200, 200, 200, 0.15);
  z-index: -1;
  pointer-events: none;
}

.design-title-column {
  margin-bottom: 5rem;
}

.caption-column {
  max-width: 1200px;
  margin-inline: auto;
}

.caption-title-group {
  align-items: flex-end;
  gap: 0.7rem;
  margin-bottom: 0.8rem;
}
h3.caption-title {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em !important;
}
p.caption-sub-title {
  font-size: 1rem;
  font-family: "Cormorant Garamond", "Noto Serif JP", serif;
  line-height: 1.8;
  letter-spacing: 0.04em;
}

p.caption-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

.box-text-group {
  align-items: center;
  gap: 1rem;
  justify-content: flex-end;
}
p.box-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.03em;
  color: #ffffff;
  padding: 0.3rem 0.9rem;
  background-color: #8c5a56;
  border-radius: 0.125rem;
  border: 0.063rem solid #8c5a56;
}
p.box-sub-text {
  font-size: 0.938rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

hr.design-line {
  margin: 6.15rem 0 2rem;
}

.kimono-column {
  margin-bottom: 2.5rem;
}

.magazine-column {
  margin-bottom: 2.6rem;
}

.wp-block-group.utilization-group {
  max-width: 1105px;
  margin-inline: auto;
  margin-top: 6.3rem;
  padding: 2.6rem 2.15rem 1.85rem 2rem;
  background-color: #f8f6f3;
  border-radius: 0.25rem;
  border: 0.063rem solid #ededed;
}
h4.utilization-title {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.46;
  letter-spacing: 0.04em !important;
  margin-bottom: 1.5rem;
}

.utilization-btn-group {
  align-items: center;
  justify-content: flex-end;
  gap: 2.65rem;
}

.utilization-btn-group .btn-black a {
  padding: 1.125rem 4.7rem;
  width: 17.3rem;
  height: 3.5rem;
}
.utilization-btn-group .btn-black a::after {
  right: 4.8rem;
}

@media (max-width: 959px) {
  .design-section::after {
    top: 0.6%;
  }
  .box-text-group {
    justify-content: flex-start;
  }

  .is-style-keep-ratio.swell-block-columns {
    flex-wrap: nowrap;
    overflow-x: auto;
  }
  .is-style-keep-ratio .swell-block-column {
    flex: 0 0 auto;
    width: auto !important;
  }
  .is-style-keep-ratio .swell-block-column img {
    height: 350px;
    width: auto;
    object-fit: contain;
    max-width: none;
  }

  .magazine-column {
    margin-bottom: 5rem;
  }

  h4.utilization-title {
    text-align: center !important;
  }
  .utilization-btn-group {
    justify-content: center;
  }
}

@media (max-width: 599px) {
  .design-section::after {
    top: 0.6%;
    font-size: 5.5rem;
  }
  h3.caption-title {
    font-size: 21px;
  }
  p.caption-sub-title {
    font-size: 14px;
  }
  p.caption-text {
    font-size: 15px;
  }
  p.box-text {
    font-size: 15px;
  }
  p.box-sub-text {
    font-size: 14px;
  }

  .is-style-keep-ratio .swell-block-column img {
    height: 200px;
  }

  .utilization-group {
    padding: 2.5rem 1.5rem !important;
  }

  .utilization-btn-group {
    display: block !important;
    text-align: center;
  }
  .utilization-btn-group p.btn-text {
    margin-bottom: 1.5rem;
  }
  .utilization-btn-group .btn-black a::after {
    right: 2.8rem;
  }
}

/* ========== managementセクション ========== */
.management-section {
  padding-top: 6.2rem !important;
  padding-bottom: 6.4rem !important;
  position: relative;
  z-index: 1;
}
.management-section::after {
  content: "LICENSE BUSINESS";
  position: absolute;
  top: -0.8%;
  right: -0.2%;
  font-size: clamp(6.9rem, 5.7rem + 2vw, 7.5rem);
  font-family: "Cormorant Garamond", "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 0.88;
  letter-spacing: 0.01em;
  text-align: left;
  color: rgba(200, 200, 200, 0.15);
  z-index: -1;
  pointer-events: none;
  white-space: nowrap;
}

.management-section h2.section-title {
  font-size: 2.5rem;
  line-height: 1.45;
  letter-spacing: 0.25em !important;
  writing-mode: vertical-rl;
  text-align: start !important;
}

p.management-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 0.8rem;
}

.management-box-group {
  padding: 1rem clamp(0.5rem, -2.5rem + 5vw, 2rem) 1.25rem
    clamp(0.5rem, -2.5rem + 5vw, 2rem);
  background-color: #ffffff;
  border-radius: 0.25rem;
  max-width: 740px;
  margin-bottom: 7.6rem;
}
p.management-box-title {
  font-size: 1rem;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 0.6rem;
}

.management-box-text-group {
  gap: 0.35rem;
}
p.management-box-text {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.03em;
  padding: 0.25rem 0.625rem;
  border-radius: 2.75rem;
  width: fit-content;
  height: 1.375rem;
  border: 0.063rem solid #8c5a56;
}

.management-section h3.caption-title {
  margin-bottom: 0.6rem;
}

.case-column {
  margin: 2.6rem 0 7.5rem;
}

h4.case-title {
  font-size: clamp(0.906rem, 0.469rem + 0.729vw, 1.125rem);
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em !important;
  margin: 1.1rem 0 0.5rem;
}
p.case-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.03em;
}

.right-column {
  margin: 2.4rem 0 7.5rem;
}
.right-item {
  background-color: #ffffff;
  border-radius: 0.25rem;
  border: 0.063rem solid #ededed;
}
h4.right-title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em !important;
  margin-bottom: 0.6rem;
}
p.right-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.03em;
}

.right-spacer1,
.right-spacer2 {
  display: none;
}

@media screen and (max-width: 1363px) and (min-width: 960px) {
  .right-spacer1,
  .right-spacer2 {
    display: block;
  }
}
@media screen and (max-width: 985px) and (min-width: 960px) {
  .right-spacer1 {
    height: 3.3rem !important;
  }
}

.case-btn-group {
  align-items: center;
  justify-content: flex-end;
  gap: 2.6rem;
}

.case-btn-group .btn-black a {
  width: 21.7rem;
  height: 3.5rem;
}

@media (min-width: 960px) {
  .management-column .swell-block-columns__inner {
    align-items: flex-start;
  }
  .management-title-column {
    position: sticky;
    top: 120px;
  }
}

@media (max-width: 959px) {
  .management-section::after {
    top: -0.2%;
    font-size: 5.5rem;
  }
  .management-title-column {
    padding: 0 !important;
  }
  .management-section h2.section-title {
    writing-mode: horizontal-tb;
    text-align: left;
  }
  .management-box-group {
    padding: 1rem;
  }

  .case-column {
    margin-bottom: 5rem;
  }

  .case-column .swell-block-columns__inner {
    gap: 4rem;
  }

  h4.case-title {
    font-size: 1.125rem;
  }
  .case-btn-group {
    justify-content: center;
  }
}

@media (max-width: 599px) {
  .management-section::after {
    white-space: normal;
    width: 88vw;
    font-size: 5.5rem;
  }

  .management-section h2.section-title {
    font-size: 30px;
  }
  p.management-text {
    font-size: 15px;
  }
  p.management-box-title {
    font-size: 15px;
  }
  .management-box-text-group {
    display: block !important;
  }

  p.management-box-text {
    font-size: 14px;
    line-height: 1;
    margin-bottom: 0.5rem !important;
    height: auto;
  }

  h4.case-title {
    font-size: 18px;
  }
  p.case-text {
    font-size: 15px;
  }
  h4.right-title {
    font-size: 18px;
  }
  p.right-text {
    font-size: 14px;
  }

  .case-btn-group {
    display: block !important;
    text-align: center;
  }
  .case-btn-group p.btn-text.wp-block-paragraph {
    margin-bottom: 1.5rem;
  }
}

/* ========== newsセクション ========== */
.news-section {
  padding-top: 3.9rem !important;
}

.news-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
  margin-bottom: 3.7rem;
}

@media (min-width: 960px) {
  .news-section .p-postList__body {
    display: flex;
    align-items: baseline;
    gap: 1em;
  }
}

.news-section .-type-simple .p-postList__link {
  padding: 2.2em 0.25em 1.55em;
}
.news-section .p-postList__meta {
  gap: clamp(0rem, -1.9rem + 3.167vw, 0.95rem);
  flex-wrap: nowrap;
}
.news-section .p-postList.-type-simple {
  border-top: none;
}
.news-section time.c-postTimes__posted.icon-posted {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.02em;
}
.news-section .p-postList__meta :before,
.news-section .p-postList__meta :before {
  display: none;
}
.news-section span.p-postList__cat.u-thin.icon-folder {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.04em;
  color: #ffffff;
  padding: 0.1rem clamp(0.2rem, -1.8rem + 3.333vw, 1.2rem);
  background-color: #8c5a56;
  border-radius: 0.125rem;
  border: 0.063rem solid #8c5a56;
  opacity: 1;
}

.news-section .p-postList__body {
  gap: 1.6rem;
}
.news-section h3.p-postList__title {
  font-size: 0.875rem !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  letter-spacing: 0.02em !important;
}

@media (max-width: 959px) {
  .news-title-column,
  .news-item-column {
    padding: 0 !important;
  }
  .news-section h2.section-title {
    margin-bottom: 0;
  }
  .news-section .p-postList__meta {
    gap: 0.95rem;
  }
  .news-section span.p-postList__cat.u-thin.icon-folder {
    padding: 0.25rem 1.25rem;
  }
  .news-section .p-postListWrap.news-list {
    margin-bottom: 3rem;
  }
}

@media (max-width: 599px) {
  .news-section h2.section-title {
    font-size: 24px;
  }
  .news-section time.c-postTimes__posted.icon-posted,
  .news-section span.p-postList__cat.u-thin.icon-folder {
    font-size: 14px;
  }
  .news-section h3.p-postList__title {
    font-size: 15px !important;
  }
}

/* ========== instagramセクション ========== */
.instagram-section {
  padding-top: 1.85rem !important;
  padding-bottom: 4.95rem !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8f6f3 40%);
}

.instagram-section h2.section-title {
  font-size: 1.75rem;
  margin-bottom: 1.7rem;
}

div#sb_instagram {
  padding-bottom: 1.75rem !important;
}

@media (max-width: 959px) {
  .instagram-section p.btn-text {
    text-align: center;
  }
}

@media (max-width: 599px) {
  .instagram-section h2.section-title {
    font-size: 24px;
  }
}

/* =========== ctaセクション =========== */
.cta-section {
  padding-top: 2.55rem !important;
  padding-bottom: 3.8rem !important;
}

.cta-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
}

@media (max-width: 959px) {
  .cta-section h2.section-title {
    font-size: 24px;
    text-align: center !important;
  }
  .cta-section p.section-sub-title {
    text-align: center;
  }
  .btn-brown {
    text-align: center !important;
  }
}

/* ========== footerセクション ========== */
.top #content {
  margin-bottom: 0;
}
#before_footer_widget {
  margin-top: 0;
}

.footer-section {
  padding-top: 3.7rem !important;
  padding-bottom: 3.7rem !important;
}

ul.footer-link-list {
  gap: 0.89rem;
}
li.footer-link-list-item a {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.05em;
}
li.footer-link-list-item a:hover {
  opacity: 0.8;
}

p.footer-name {
  font-size: 0.875rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.03em;
  margin-bottom: 0.5rem;
}
p.footer-address,
p.footer-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.03em;
}
.footer-icon {
  margin-bottom: 3rem;
}
.footer-icon a:hover {
  opacity: 0.8;
}

hr.footer-line {
  margin: 2.3rem 0 1.7rem;
}

p.privacy-link {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: normal;
}
p.privacy-link a:hover {
  opacity: 0.8;
}

p.footer-sub-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.03em;
}
p.footer-sub-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.03em;
  margin-bottom: 0.2rem;
}
p.footer-copy {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.03em;
}

footer#footer {
  display: none;
}

@media screen and (max-width: 1374px) and (min-width: 960px) {
  .footer-logo-column {
    --clmn-w--pc: 49% !important;
  }
  .footer-menu-column {
    --clmn-w--pc: 18% !important;
  }
  .footer-address-column {
    --clmn-w--pc: 33% !important;
  }
}

@media screen and (max-width: 959px) {
  p.privacy-link,
  p.footer-sub-text,
  p.footer-copy {
    text-align: center !important;
  }
}

@media screen and (max-width: 599px) {
  .footer-logo img {
    width: 150px !important;
  }
  li.footer-link-list-item a {
    font-size: 14px;
  }
  p.footer-name {
    font-size: 14px;
  }
  p.footer-address,
  p.footer-text,
  p.privacy-link,
  p.footer-sub-text,
  p.footer-copy {
    font-size: 13px;
  }
}

/* ========== ページTOPへ戻るボタン ========== */
#pagetop {
  background-color: transparent;
  background-image: url("https://unochiyo.site/wp-content/uploads/2026/06/Frame-626007-1.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 2.5rem;
  height: 2.5rem;
  border: none;
  box-shadow: none;
  padding: 0;
  border-radius: 0;
  opacity: 1;
}
#pagetop .c-fixBtn__icon {
  display: none;
}
#pagetop:hover {
  background-color: transparent !important;
  opacity: 0.8;
}

@media screen and (max-width: 599px) {
  #pagetop {
    width: 46px;
    height: 66px;
  }
}

/* ========== ドロワーメニュー ========== */
.c-widget__title.-spmenu {
  display: none;
}

.p-spMenu__body::before {
  content: "";
  display: block;
  width: 100px;
  height: 55px;
  margin: 0 auto;
  background: url("https://unochiyo.site/wp-content/uploads/2026/06/5d1b14e5f9a6117cb5b7ce4eb46eb274.png")
    no-repeat center / contain;
  margin-bottom: 3rem;
  position: relative;
  z-index: 10;
}

/* ==============================
        下層ページ共通パーツ
=============================== */
/* === 余白の調整 === */
.page-id-13 h1.c-pageTitle,
.page-id-15 h1.c-pageTitle,
.page-id-17 h1.c-pageTitle,
.page-id-19 h1.c-pageTitle,
.page-id-23 h1.c-pageTitle,
.page-id-25 h1.c-pageTitle,
.blog h1.c-pageTitle {
  display: none;
}
.page-id-13 .l-content,
.page-id-15 .l-content,
.page-id-17 .l-content,
.page-id-19 .l-content,
.page-id-23 .l-content {
  padding-top: 0;
  margin-bottom: 0;
}
.page-id-25 .l-content,
.blog .l-content {
  padding-top: 0;
}
.page-id-13 .post_content,
.page-id-15 .post_content,
.page-id-17 .post_content,
.page-id-19 .post_content,
.page-id-23 .post_content,
.page-id-25 .post_content,
.blog .post_content {
  margin-top: 0;
}

/* === パン屑リスト === */
@media screen and (min-width: 960px) {
  .page-id-13 div#breadcrumb,
  .page-id-15 div#breadcrumb,
  .page-id-17 div#breadcrumb,
  .page-id-19 div#breadcrumb,
  .page-id-23 div#breadcrumb,
  .page-id-25 div#breadcrumb,
  .blog div#breadcrumb {
    padding-top: 2.95rem;
  }
  .page-id-13 ol.p-breadcrumb__list.l-container,
  .page-id-15 ol.p-breadcrumb__list.l-container,
  .page-id-17 ol.p-breadcrumb__list.l-container,
  .page-id-19 ol.p-breadcrumb__list.l-container,
  .page-id-23 ol.p-breadcrumb__list.l-container,
  .page-id-25 ol.p-breadcrumb__list.l-container,
  .blog ol.p-breadcrumb__list.l-container {
    padding: 0 3.3rem;
    gap: 0.8rem;
  }
}

.page-id-13 .p-breadcrumb__list li:first-child a,
.page-id-15 .p-breadcrumb__list li:first-child a,
.page-id-17 .p-breadcrumb__list li:first-child a,
.page-id-19 .p-breadcrumb__list li:first-child a,
.page-id-23 .p-breadcrumb__list li:first-child a,
.page-id-25 .p-breadcrumb__list li:first-child a,
.blog .p-breadcrumb__list li:first-child a {
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.page-id-13 .p-breadcrumb__text .__home:before,
.page-id-15 .p-breadcrumb__text .__home:before,
.page-id-17 .p-breadcrumb__text .__home:before,
.page-id-19 .p-breadcrumb__text .__home:before,
.page-id-23 .p-breadcrumb__text .__home:before,
.page-id-25 .p-breadcrumb__text .__home:before,
.blog .p-breadcrumb__text .__home:before {
  display: none;
}
.page-id-13 .p-breadcrumb__list li:last-child span.p-breadcrumb__text,
.page-id-15 .p-breadcrumb__list li:last-child span.p-breadcrumb__text,
.page-id-17 .p-breadcrumb__list li:last-child span.p-breadcrumb__text,
.page-id-19 .p-breadcrumb__list li:last-child span.p-breadcrumb__text,
.page-id-23 .p-breadcrumb__list li:last-child span.p-breadcrumb__text,
.page-id-25 .p-breadcrumb__list li:last-child span.p-breadcrumb__text,
.blog .p-breadcrumb__list li:last-child span.p-breadcrumb__text {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.04em;
  color: #999690;
  opacity: 1 !important;
}

/* ==============================
   宇野千代について(.page-id-13)
============================== */
/* ========== about-fvセクション ========== */
.about-fv-section {
  padding-top: 2rem !important;
  padding-bottom: 0 !important;
  position: relative;
  overflow: visible;
  z-index: 1;
}
.about-fv-section::after {
  content: "UNO\A CHIYO";
  white-space: pre-line;
  position: absolute;
  bottom: -1%;
  left: -0.3%;
  font-size: 7.5rem;
  font-family: "Cormorant Garamond", "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 0.78;
  letter-spacing: 0.03em;
  text-align: left;
  color: rgba(200, 200, 200, 0.15);
  z-index: -1;
  pointer-events: none;
}

p.about-fv-title {
  font-size: 2.75rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin-bottom: 0;
}
p.about-fv-sub-title {
  font-size: 1.25rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.04em;
  margin-bottom: 2rem;
}

p.about-fv-text {
  font-size: clamp(1.156rem, 0.719rem + 0.729vw, 1.375rem);
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em;
  margin-bottom: 3.7rem;
}

.about-fv-table1,
.about-fv-table2 {
  --table-border: none;
}

.about-fv-table1 tr td,
.about-fv-table1 tr th,
.about-fv-table2 tr td,
.about-fv-table2 tr th {
  padding: 0.27em 0.75em;
  border-bottom: 1px solid #ededed;
}

.about-fv-table1 td:nth-child(1),
.about-fv-table2 td:nth-child(1) {
  font-size: 0.875rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em;
  width: 35% !important;
  text-align: justify;
  color: #5c5c58;
}
.about-fv-table2 td:nth-child(1) {
  width: 35.5% !important;
}

.about-fv-table1 td:nth-child(2),
.about-fv-table2 td:nth-child(2) {
  font-size: 0.875rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: justify;
}

@media screen and (max-width: 1287px) {
  .about-fv-text-column {
    padding-right: 0 !important;
  }
}

@media screen and (max-width: 1265px) {
  .about-fv-table2 td:nth-child(1) {
    width: 41.5% !important;
  }
}

@media screen and (max-width: 959px) {
  .about-fv-section::after {
    bottom: 0%;
    left: 48%;
  }

  .about-fv-text-column,
  .about-fv-img-column {
    padding: 0 !important;
  }
  p.about-fv-text {
    margin-bottom: 2rem;
  }
  .about-fv-img {
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 959px) and (min-width: 600px) {
  .about-fv-img img {
    max-width: 70%;
    margin-inline: auto;
  }
}

@media screen and (max-width: 599px) {
  .about-fv-section::after {
    font-size: 6.5rem;
    bottom: 0%;
    left: 25%;
  }
  p.about-fv-title {
    font-size: 35px;
  }
  p.about-fv-sub-title {
    font-size: 16px;
  }
  p.about-fv-text {
    font-size: 18px;
  }
  .about-fv-table1 td:nth-child(1),
  .about-fv-table1 td:nth-child(2) {
    font-size: 15px;
    padding-left: 0;
  }
}

/* ========== aboutセクション ========== */
.about-section {
  padding-top: 5.3rem !important;
  position: relative;
  z-index: 1;
  overflow: hidden;
  background-image:
    url("https://unochiyo.site/wp-content/uploads/2026/07/bg-img01.svg"),
    url("https://unochiyo.site/wp-content/uploads/2026/07/bg-img02.svg"),
    linear-gradient(180deg, #f8f6f3 0%, #ffffff 80%);
  background-position:
    right 1.5%,
    left bottom;
  background-repeat: no-repeat, no-repeat;
  background-size:
    494px auto,
    182px auto,
    100% 100%;
}

.about-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
  margin-bottom: 3.7rem;
}

.about-column1,
.about-column3 {
  max-width: 1110px;
  margin-inline: auto;
  margin-bottom: 0;
}

p.about-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 1.9rem;
}

.about-column2 {
  margin-bottom: 4.8rem;
}

.swell-block-column.swl-has-mb--s.about-img-column3 {
  margin-top: -17.3rem !important;
}

@media screen and (max-width: 1210px) {
  .swell-block-column.swl-has-mb--s.about-img-column3 {
    margin-top: -12.3rem !important;
  }
}

@media screen and (max-width: 1060px) {
  .swell-block-column.swl-has-mb--s.about-img-column3 {
    margin-top: -7.3rem !important;
  }
}
@media screen and (max-width: 1005px) {
  .swell-block-column.swl-has-mb--s.about-img-column3 {
    margin-top: -4.3rem !important;
  }
}

@media screen and (max-width: 959px) and (min-width: 600px) {
  .about-img img {
    max-width: 70%;
    margin-inline: auto;
  }
}

@media screen and (max-width: 959px) {
  .about-section {
    background-size:
      450px auto,
      135px auto,
      100% 100%;
  }

  .about-column1 .swell-block-column:nth-child(1),
  .about-column3 .swell-block-column:nth-child(1) {
    order: 2;
  }
  .about-column1 .swell-block-column:nth-child(2),
  .about-column3 .swell-block-column:nth-child(2) {
    order: 1;
  }

  .about-text-column1,
  .about-text-column2,
  .about-img-column2,
  .about-text-column3 {
    padding: 0 !important;
  }
  .about-column1,
  .about-column2 {
    margin-bottom: 5rem;
  }
  .swell-block-column.swl-has-mb--s.about-img-column3 {
    margin-top: 0 !important;
  }
}

@media screen and (max-width: 599px) {
  p.about-text {
    font-size: 15px;
  }
  .about-section {
    background-size:
      280px auto,
      85px auto,
      100% 100%;
  }
}

/* ========== chronologyセクション ==========*/
.chronology-section {
  padding-top: 6.5rem !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8f6f3 100%);
}

.chronology-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
}

.chronology-item-column {
  border-bottom: 1px solid #ededed;
  padding-bottom: 0.55rem;
  margin-left: -0.8rem;
  margin-right: -0.8rem;
  padding-left: 0.8rem;
  padding-right: 0.8rem;
  margin-bottom: 0.6rem;
}

p.chronology-year {
  font-size: 0.938rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: justify;
}
p.chronology-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

@media (min-width: 960px) {
  .chronology-section .swell-block-columns,
  .chronology-section-container {
    align-items: flex-start !important;
  }
  .chronology-title-column {
    position: sticky !important;
    top: 120px;
    height: fit-content;
  }
}

@media screen and (max-width: 1082px) {
  .chronology-title-column {
    --clmn-w--pc: 15% !important;
  }
  .chronology-item {
    --clmn-w--pc: 85% !important;
    padding: 0 !important;
  }
}

@media screen and (max-width: 959px) {
  .chronology-item-column {
    padding: 0 0 1rem 0 !important;
  }
  .chronology-img-item {
    padding: 0 !important;
  }
  .chronology-item-column .swell-block-columns__inner {
    gap: 0;
  }
  .chronology-img img {
    margin-top: 1rem;
  }
  .chronology-year-item,
  .chronology-year-item2 {
    padding-bottom: 0 !important;
  }
}

@media screen and (max-width: 599px) {
  .chronology-item-column {
    padding: 0 1rem 1rem 1rem !important;
  }
  .chronology-year-item,
  .chronology-year-item2 {
    padding: 0 !important;
  }
  p.chronology-year {
    font-size: 14px;
  }
  p.chronology-text {
    font-size: 15px;
  }

  .chronology-img img {
    max-width: 70%;
    margin-inline: auto;
  }
}

/* ========== expressionセクション ========== */
.expression-section {
  padding-top: 6.6rem !important;
  background: linear-gradient(180deg, #f8f6f3 0%, #ffffff 100%);
}

.expression-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
}

.expression-title-column {
  margin-bottom: 4.9rem;
}

.expression-title-group {
  align-items: baseline;
  gap: 0.8rem;
  margin-bottom: 0.6rem;
}
h3.expression-title {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em !important;
  margin-bottom: 0.8rem;
}
p.expression-sub-title {
  font-size: 1rem;
  font-family: "Cormorant Garamond", "Noto Serif JP", serif;
  line-height: 1.8;
  letter-spacing: 0.04em;
  margin-bottom: 0.6rem;
}
p.expression-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 0.7rem;
}

.expression-column1 {
  margin-bottom: 3.75rem;
}
.expression-column2 {
  margin-bottom: 3.7rem;
}

.expression-column3 h3.expression-title {
  font-size: 1.375rem;
  margin-bottom: 0.3rem;
}
.expression-column3 p.expression-sub-title {
  margin-bottom: 0.8rem;
}

@media screen and (max-width: 1190px) {
  .expression-text-column {
    padding: 0 1rem !important;
  }
}

@media screen and (max-width: 959px) {
  .expression-text-column,
  .expression-img-column {
    padding: 0 !important;
  }
  .expression-title-column {
    margin-bottom: 2rem;
  }
  .expression-column2 .swell-block-column:nth-child(1) {
    order: 2;
  }
  .expression-column2 .swell-block-column:nth-child(2) {
    order: 1;
  }
  .expression-column1,
  .expression-column2,
  .expression-column3 {
    margin-bottom: 5rem;
  }
}

@media screen and (max-width: 959px) and (min-width: 600px) {
  .expression-img img {
    max-width: 70%;
    margin-inline: auto;
  }
}

@media screen and (max-width: 599px) {
  h3.expression-title {
    font-size: 21px;
    margin-bottom: 0;
  }
  p.expression-sub-title {
    font-size: 14px;
  }
  p.expression-text {
    font-size: 15px;
  }
}

/* =========== btnセクション ========== */
.btn-section {
  padding-top: 3.3rem !important;
  padding-bottom: 6.15rem !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8f6f3 40%);
}

.btn-column-group {
  background-color: #ffffff;
  border-radius: 0.25rem;
  border: 0.063rem solid #ededed;
}

.btn-section h2.section-title {
  font-size: 1.125rem;
  letter-spacing: 0.02em !important;
  margin-bottom: 0;
}

hr.btn-line {
  margin: 0.3rem 0 0.4rem;
}

p.btn-caption {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 1.3rem;
}

@media screen and (max-width: 1081px) {
  .btn-img-column {
    padding-left: 3rem !important;
  }
  .btn-text-column {
    padding-right: 3rem !important;
  }
}

@media screen and (max-width: 959px) {
  .btn-column .swell-block-column:nth-child(1) {
    order: 2;
    padding: 1rem 2rem 3rem !important;
  }
  .btn-column .swell-block-column:nth-child(2) {
    order: 1;
    padding: 3rem 2rem 0 !important;
  }
  .btn-section h2.section-title {
    text-align: center !important;
  }
  p.btn-caption {
    margin-bottom: 2rem;
  }
}

@media screen and (max-width: 959px) and (min-width: 600px) {
  .btn-img img {
    max-width: 70%;
    margin-inline: auto;
  }
}

@media screen and (max-width: 599px) {
  .btn-text-column {
    padding: 3rem 1rem !important;
  }

  .btn-section h2.section-title {
    font-size: 20px;
  }
  p.btn-caption {
    font-size: 15px;
  }

  .btn-img-column {
    padding: 0 1rem 3rem !important;
  }
}

/* ==============================
     会社概要(.page-id-15)
============================== */
/* ========== under-titleセクション ========== */
.under-title-section {
  padding-top: 2.1rem !important;
  padding-bottom: 1.3rem !important;
  position: relative;
  overflow: visible;
  z-index: 1;
}
.under-title-section::after {
  content: "COMPANY";
  position: absolute;
  bottom: -1.2rem;
  right: -0.5rem;
  font-size: 7.5rem;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  line-height: 0.88;
  letter-spacing: 0.03em;
  text-align: left;
  color: rgba(200, 200, 200, 0.15);
  z-index: -1;
  pointer-events: none;
}

.under-title-section p.about-fv-sub-title {
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.02em;
  margin: 0.4rem 0 2.5rem;
}

@media screen and (max-width: 599px) {
  .under-title-section::after {
    bottom: -1.4rem;
    right: 0;
    font-size: 4.5rem;
  }
  .under-title-section p.about-fv-sub-title {
    font-size: 16px;
  }
}

/* ========== company-fvセクション ========== */
.company-fv-section {
  padding-top: 1.2rem !important;
  padding-bottom: 7rem !important;
}
.company-fv-section .swell-block-fullWide__inner {
  padding: 0 1rem;
}

.company-fv-section .about-fv-column {
  max-width: 1280px;
  margin-inline: auto;
  margin-bottom: 0.9rem;
}

.company-fv-section p.about-fv-text {
  font-size: 1.75rem;
  margin-bottom: 2.8rem;
}
p.about-fv-sub-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 2rem;
  padding-left: 0.6rem;
}
p.about-fv-name {
  font-size: 1.125rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

.company-fv-column {
  max-width: 1345px;
  margin-inline: auto;
}

@media screen and (max-width: 1200px) {
  .about-fv-img-column {
    padding-left: clamp(1rem, -10.7rem + 19.5vw, 6.85rem) !important;
  }
  .company-fv-right-item {
    padding-top: clamp(2.5rem, -5.5rem + 13.333vw, 6.5rem) !important;
    padding-left: clamp(8rem, -7.2rem + 25.333vw, 15.6rem) !important;
  }
}

@media screen and (max-width: 959px) {
  .company-fv-section.swell-block-fullWide.has-bg-img {
    background-position: 193%;
    padding-bottom: 0rem !important;
  }

  .about-fv-img-column,
  .company-fv-left-item,
  .company-fv-right-item {
    padding: 0 !important;
  }
  .company-fv-section .about-fv-column {
    margin-bottom: 5rem;
  }
  .company-fv-column {
    margin-top: 4rem;
  }
}

@media screen and (max-width: 599px) {
  .company-fv-section.swell-block-fullWide.has-bg-img {
    background-position: 133%;
  }

  .company-fv-section p.about-fv-text {
    font-size: 20px;
    margin-bottom: 1.2rem;
  }
  p.about-fv-sub-text {
    font-size: 15px;
    padding-left: 0;
  }
  p.about-fv-name {
    font-size: 15px;
  }
}

/* ========== under-managementセクション ========== */
.under-management-section {
  padding-top: 5.3rem !important;
  background: linear-gradient(180deg, #f8f6f3 0%, #ffffff 80%);
}

.under-management-title-column {
  margin-bottom: 3.6rem;
}

.under-management-group {
  max-width: 955px;
  margin-inline: auto;
}

p.under-management-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

.under-management-section h3.caption-title {
  margin: 2.6rem 0 1.2rem;
}

.under-management-item {
  background-color: #f8f6f3;
  border-radius: 0.25rem;
  border: 0.063rem solid #ededed;
}

h4.under-management-item-title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em !important;
  margin-bottom: 0.6rem;
}
p.under-management-item-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.03em;
}

@media screen and (max-width: 959px) {
  .under-management-group {
    margin-bottom: 4rem;
  }
}

@media screen and (max-width: 599px) {
  .under-management-title-column {
    margin-bottom: 2rem;
  }

  .under-management-section h2.section-title {
    font-size: 28px;
  }

  p.under-management-text {
    font-size: 15px;
  }
  h4.under-management-item-title {
    font-size: 18px;
  }
  p.under-management-item-text {
    font-size: 15px;
  }
}

/* ========== overviewセクション ========== */
.overview-section {
  padding-top: 4.4rem !important;
}

.overview-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
}

.overview-table {
  --table-border: none;
}

.overview-table td:nth-child(1) {
  font-size: 0.938rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em;
  color: #5c5c58;
  width: 28% !important;
  border-top: 1px solid #ededed;
}

.overview-table td:nth-child(2) {
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.02em;
  border-top: 1px solid #ededed;
  padding: 1.21em 0.75em;
}

@media screen and (max-width: 1108px) {
  .overview-table-column {
    padding: 0 !important;
  }
  .overview-table td:nth-child(1) {
    width: 27% !important;
  }
}

@media screen and (max-width: 959px) {
  .overview-table td:nth-child(1) {
    width: 100% !important;
    padding-left: 0;
    padding-bottom: 0;
  }
  .overview-table td:nth-child(2) {
    border-top: none;
    padding-top: 0;
    padding-left: 0;
  }
}

@media screen and (max-width: 599px) {
  .overview-table td:nth-child(1),
  .overview-table td:nth-child(2) {
    font-size: 15px;
  }
}

/* ========== relationshipセクション ========== */
.relationship-section {
  padding-top: 4rem !important;
  padding-bottom: 6.2rem !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8f6f3 40%);
}

.relationship-group {
  padding: 3.75rem clamp(4rem, -4rem + 13.333vw, 8rem);
  background-color: #ffffff;
  border-radius: 0.25rem;
  border: 0.063rem solid #ededed;
}

.relationship-section h2.section-title {
  font-size: 1.375rem;
  letter-spacing: 0.04em !important;
  margin-bottom: 2.5rem;
}

p.relationship-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 3.75rem;
}

.relationship-column {
  margin-bottom: 1.25rem;
}

h3.relationship-column-title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em !important;
  border-bottom: 1px solid #ededed !important;
  width: 96%;
  padding-bottom: 0.35rem !important;
  margin-bottom: 0.3rem;
}

p.relationship-column-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 1.3rem;
}

@media screen and (max-width: 959px) {
  .relationship-column .swell-block-column:nth-child(1) {
    order: 2;
  }
  .relationship-column .swell-block-column:nth-child(2) {
    order: 1;
  }

  p.relationship-column-text {
    margin-bottom: 2.5rem;
  }

  .relationship-column {
    margin-bottom: 5rem;
  }

  h3.relationship-column-title {
    text-align: center !important;
    width: 100%;
  }
}

@media screen and (max-width: 959px) and (min-width: 600px) {
  p.relationship-column-text {
    text-align: center;
  }
}

@media screen and (max-width: 599px) {
  .relationship-group {
    padding: 3rem 1rem;
  }
  .relationship-section h2.section-title {
    font-size: 20px;
  }
  p.relationship-text {
    font-size: 15px;
  }

  h3.relationship-column-title {
    font-size: 18px;
  }
  p.relationship-column-text {
    font-size: 15px;
  }

  .relationship-section p.btn-text a {
    font-size: 13px;
  }
}

/* ==============================
    作品とデザイン(.page-id-17)
============================== */
/* ========== under-titleセクション(.page-id-17) =========== */
.page-id-17 .under-title-section::after {
  content: "WORKS\00000a & DESIGN";
  white-space: pre-wrap;
  position: absolute;
  bottom: -3.7rem;
  right: -0.4rem;
  font-size: 7.5rem;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  line-height: 0.88;
  letter-spacing: 0.03em;
  text-align: left;
  color: rgba(200, 200, 200, 0.15);
  z-index: -1;
  pointer-events: none;
}

@media screen and (max-width: 599px) {
  .page-id-17 .under-title-section::after {
    font-size: 5rem;
  }
}

/* ========== company-fvセクション(.page-id-17) =========== */
.page-id-17 .company-fv-section {
  padding-top: 3.2rem !important;
  padding-bottom: 7.2rem !important;
  background: linear-gradient(180deg, #f8f6f3 0%, #ffffff 80%);
}
.page-id-17 .company-fv-section .about-fv-column {
  max-width: 1355px;
  margin-inline: auto;
}

.page-id-17 .about-fv-text-column {
  padding-left: clamp(0rem, -4.2rem + 7vw, 2.1rem) !important;
}

.page-id-17 .company-fv-section h2.about-fv-text {
  font-size: 2rem;
  letter-spacing: 0.05em;
  margin-bottom: 1.1rem;
}
.page-id-17 p.about-fv-sub-text {
  padding-left: 0;
}

@media screen and (max-width: 1047px) {
  .page-id-17 .about-fv-text-column {
    --clmn-w--pc: 42% !important;
  }
  .page-id-17 .about-fv-img-column {
    --clmn-w--pc: 58% !important;
  }
}

@media screen and (max-width: 599px) {
  .page-id-17 .company-fv-section h2.about-fv-text {
    font-size: 24px;
  }
}

hr.literature-line,
hr.literature-line2 {
  max-width: 1275px;
  margin: 2.45rem auto 2.3rem;
}

.literature-column {
  max-width: 1300px;
  margin-inline: auto;
  margin-bottom: 2.7rem;
}

h3.literature-contents-title {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em !important;
  margin-bottom: 0;
}
p.literature-contents-sub-title,
p.literature-contents-sub-title2 {
  font-size: 1rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 2rem;
}
p.literature-contents-sub-title2 {
  margin-bottom: 0.65rem;
}

.literature-contents-caption-group {
  gap: 0.5rem;
  margin-bottom: 2rem;
}
p.literature-contents-caption {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.03em;
  padding: 0.1rem 0.5rem;
  border-radius: 2.75rem;
  border: 0.063rem solid #8c5a56;
  width: fit-content;
  margin-bottom: 2rem;
}

p.literature-contents-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

@media screen and (max-width: 959px) {
  .literature-column {
    margin-top: 4rem;
  }

  .literature-item {
    margin-bottom: 4rem !important;
  }

  .literature-contents-column .swell-block-column:nth-child(1) {
    order: 2;
    padding: 0 !important;
  }
  .literature-contents-column .swell-block-column:nth-child(2) {
    order: 1;
    padding: 0 !important;
  }

  hr.literature-line2 {
    display: none;
  }
}

@media screen and (max-width: 599px) {
  h3.literature-contents-title {
    font-size: 20px;
  }
  p.literature-contents-sub-title,
  p.literature-contents-sub-title2 {
    font-size: 14px;
  }
  p.literature-contents-caption {
    font-size: 14px;
  }

  p.literature-contents-text {
    font-size: 15px;
  }
}

/* ========== fashionセクション ========== */
.fashion-section {
  padding-top: 2.5rem !important;
}
.fashion-section .swell-block-fullWide__inner {
  padding: 0 1rem;
}

.fashion-column {
  max-width: 1365px;
  margin-inline: auto;
}

.fashion-section h2.section-title {
  font-size: 2rem;
}
p.fashion-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 0.6rem;
}
.fashion-column .fashion-text-item {
  padding-right: clamp(1rem, -13rem + 23.333vw, 8rem) !important;
}

hr.fashion-line {
  max-width: 1280px;
  margin: 3.7rem auto 3rem;
}

.fashion-column2,
.fashion-column3 {
  max-width: 1105px;
  margin-inline: auto;
}

h3.fashion-title {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em !important;
  margin-bottom: 0;
}
p.fashion-sub-title {
  font-size: 1rem;
  font-family: "Noto Serif JP", sans-serif;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 2rem;
}

hr.fashion-line2 {
  max-width: 1280px;
  margin: 2.95rem auto 3rem;
}

@media screen and (max-width: 1070px) {
  .fashion-column2 .fashion-text-item {
    padding-top: 0.8rem !important;
  }
}
@media screen and (max-width: 998px) {
  .fashion-column3 .fashion-text-item {
    padding-top: 0rem !important;
  }
}

@media screen and (max-width: 959px) {
  .fashion-column .swell-block-column:nth-child(1) {
    order: 2;
  }
  .fashion-column .swell-block-column:nth-child(2) {
    order: 1;
  }

  .fashion-column3 .swell-block-column:nth-child(1) {
    order: 2;
  }
  .fashion-column3 .swell-block-column:nth-child(2) {
    order: 3;
  }

  .fashion-column3 .swell-block-column:nth-child(3) {
    order: 1;
  }

  .fashion-text-item,
  .fashion-img-item {
    padding: 0 !important;
  }
}

@media screen and (max-width: 599px) {
  p.fashion-text {
    font-size: 15px;
  }
  h3.fashion-title {
    font-size: 20px;
  }
  p.fashion-sub-title {
    font-size: 14px;
  }
}

/* ========== messageセクション ========== */
.message-section {
  padding-top: 7.85rem !important;
  padding-bottom: 4rem !important;
  background: linear-gradient(180deg, #f8f6f3 0%, #ffffff 100%);
}

.message-title-item {
  padding-left: clamp(0rem, -10.2rem + 17vw, 5.1rem) !important;
}

@media (min-width: 1130px) and (max-width: 1600px) {
  .message-title-item {
    position: relative;
  }
}

@media screen and (max-width: 1380px) {
  .message-title-item {
    --clmn-w--pc: 20% !important;
  }
  .message-img-item {
    --clmn-w--pc: 80% !important;
  }
  .swell-block-columns.message-slider-column {
    --clmn-w--pc: clamp(50.313rem, 31.563rem + 31.25vw, 59.688rem) !important;
  }
}
@media screen and (max-width: 1150px) {
  .message-title-item {
    --clmn-w--pc: 15% !important;
  }
  .message-img-item {
    --clmn-w--pc: 85% !important;
  }
}
@media screen and (max-width: 1050px) {
  .message-title-item {
    --clmn-w--pc: 10% !important;
  }
  .message-img-item {
    --clmn-w--pc: 90% !important;
  }
}

@media (min-width: 960px) {
  .message-section h2.section-title {
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    display: inline-block;
    height: auto;
    font-size: 2.5rem;
    line-height: 1.25;
    letter-spacing: 0.25em !important;
  }
}
.message-column {
  margin-bottom: 1.9rem;
}

.text-slider-column .swell-block-columns__inner {
  margin-left: clamp(1.5rem, -32.9rem + 57.333vw, 18.7rem) !important;
}

.text-slider-column .c-scrollHint {
  margin-right: 1rem;
}

.text-slider-item {
  background-color: #f8f6f3;
  border-radius: 0.25rem;
}
p.slider-text {
  font-size: 1rem;
  font-family: "HannariMincho", serif;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: 0.05em;
  margin-bottom: 1.45rem;
}

@media screen and (max-width: 599px) {
  .text-slider-column .swell-block-columns__inner {
    margin-left: 1rem !important;
  }
  .text-slider-item {
    padding: 2.5rem 1.5rem !important;
  }
  p.slider-text {
    font-size: 15px;
  }
}

/* ==============================
   ライセンスについて(.page-id-19)
=============================== */
.page-id-19 .under-title-section {
  position: relative;
  overflow: visible;
  z-index: 1;
}
.page-id-19 .under-title-section::after {
  content: "LICENSE\00000a BUSINESS";
  white-space: pre-wrap;
  position: absolute;
  bottom: -2rem;
  right: -0.5rem;
  font-size: 7.5rem;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  line-height: 0.88;
  letter-spacing: 0.03em;
  text-align: left;
  color: rgba(200, 200, 200, 0.15);
  z-index: -1;
  pointer-events: none;
}

.page-id-19 .under-title-section p.about-fv-sub-title {
  margin: 0.4rem 0 0rem;
}

@media screen and (max-width: 959px) {
  .page-id-19 .under-title-section::after {
    font-size: 6.5rem;
  }
}
@media screen and (max-width: 599px) {
  .page-id-19 .under-title-section::after {
    bottom: 0rem;
    right: 0rem;
    font-size: 5.5rem;
  }
}

/* ========== costセクション ========== */
.cost-section {
  padding-top: 3.8rem !important;
}

.cost-right-item {
  padding-left: clamp(0rem, -7rem + 11.667vw, 3.5rem) !important;
}

.cost-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
  margin: 3.8rem 0 2.4rem;
}

.cost-text-group {
  padding-right: clamp(0rem, -14rem + 23.333vw, 7rem);
}
p.cost-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 2rem;
}

@media screen and (max-width: 959px) and (min-width: 600px) {
  .cost-left-img img {
    max-width: 70%;
    margin-inline: auto;
  }
}

@media screen and (max-width: 959px) {
  .cost-left-item,
  .cost-img-left-column,
  .cost-img-right-column {
    padding: 0 !important;
  }

  .cost-spacer {
    display: none;
  }

  .cost-right-item {
    display: flex;
    flex-direction: column;
  }
  .cost-section h2.section-title {
    order: 1;
    margin-bottom: 1.5rem;
  }
  .cost-text-group {
    order: 2;
  }
  .cost-img-column {
    order: 3;
    padding-top: 3rem;
  }
}

@media screen and (max-width: 599px) {
  .cost-section h2.section-title {
    font-size: 26px;
  }
  p.cost-text {
    font-size: 15px;
  }
}

/* ========== originalセクション ========== */
.original-section {
  padding-top: 5.2rem !important;
  padding-bottom: 6.15rem !important;
}

.original-section h2.section-title {
  font-size: 2.5rem;
  line-height: 1.45;
  letter-spacing: 0.25em !important;
}

@media (min-width: 960px) {
  .original-section h2.section-title {
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    display: inline-block;
    text-align: start;
  }
}

p.original-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

.original-img-column {
  margin: 5rem 0 0.8rem;
}

h3.original-title {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em !important;
  margin: 0 0 0.7rem;
}

.original-img-column2 {
  margin: 3.8rem 0 0.7rem;
}

.original-img {
  margin-bottom: 0.8rem;
}

.original-section .utilization-group {
  margin-top: 5rem;
  padding: 2.6rem 2.05rem 1.85rem 1.8rem;
  background-color: #ffffff;
}
.original-section h4.utilization-title {
  margin-bottom: 0.35rem;
}

.original-section .utilization-group p.original-text {
  margin-bottom: 1.3rem;
}

@media (min-width: 960px) {
  .original-column .swell-block-columns__inner {
    align-items: flex-start;
  }
  .original-title-item {
    position: sticky;
    top: 120px;
  }
}

@media screen and (max-width: 959px) {
  .original-title-item {
    padding: 0 !important;
  }
}

@media screen and (max-width: 599px) {
  .original-section h2.section-title {
    font-size: 26px;
  }
  p.original-text {
    font-size: 15px;
  }
  h3.original-title {
    font-size: 18px;
  }

  .original-section .utilization-group {
    padding: 2.5rem 1.5rem;
  }
}

/* ========== licenseセクション ========== */
.license-section {
  padding-top: 6.3rem !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8f6f3 100%);
}

.license-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
  margin-bottom: 0.6rem;
}
p.license-sub-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

hr.license-line {
  margin: 3.7rem 0 3.8rem;
}

h3.license-title {
  font-size: clamp(0.875rem, 0.375rem + 0.833vw, 1.125rem);
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em !important;
  margin: 1.5rem 0 0.5rem;
}
p.license-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.03em;
}

@media screen and (max-width: 959px) {
  p.license-sub-text {
    text-align: start !important;
  }
  h3.license-title {
    font-size: 1.125rem;
  }
}

@media screen and (max-width: 599px) {
  .license-section h2.section-title {
    font-size: 26px;
  }
  p.license-sub-text {
    font-size: 15px;
  }
  hr.license-line {
    margin: 2rem 0 3rem;
  }
  h3.license-title {
    font-size: 18px;
  }
  p.license-text {
    font-size: 15px;
  }
}

/* ========== exampleセクション ========== */
.example-section {
  padding-top: 6.4rem !important;
}

.example-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
}

p.example-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.021em;
  text-align: justify;
}

.example-item {
  background-color: #ffffff;
  border-radius: 0.25rem;
}

hr.example-line {
  margin: 3.75rem 0;
}

h3.example-contents-title {
  font-size: clamp(1.219rem, 0.906rem + 0.521vw, 1.375rem);
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em !important;
  margin-bottom: 0.1rem;
}
p.example-contents-sub-title {
  font-size: 1rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.02em;
  margin-bottom: 1.8rem;
}
p.example-contents-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

@media screen and (max-width: 1000px) {
  .example-title-item {
    --clmn-w--pc: 30% !important;
  }
  .example-text-item {
    --clmn-w--pc: 70% !important;
  }
}

@media screen and (max-width: 959px) {
  .example-title-item,
  .example-text-item {
    padding: 0 !important;
  }

  .example-item {
    padding: 3rem 2rem !important;
  }

  h3.example-contents-title {
    font-size: 1.375rem;
  }
}

@media screen and (max-width: 599px) {
  .example-section h2.section-title {
    font-size: 26px;
  }
  p.example-text {
    font-size: 15px;
  }

  .example-item {
    padding: 2rem 1rem !important;
  }

  h3.example-contents-title {
    font-size: 18px;
  }
  p.example-contents-sub-title {
    font-size: 14px;
  }
  p.example-contents-text {
    font-size: 15px;
  }
}

/* ========== flowセクション ========== */
.flow-section {
  padding-top: 6.3rem !important;
  padding-bottom: 5.1rem !important;
}

.flow-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
}

.flow-number-group {
  gap: 1.25rem;
}

p.flow-number {
  font-size: 1.5rem;
  font-family: "Noto Serif JP", serif;
  line-height: 1;
  color: #ffffff;
  background-color: #2a2a28;
  border-radius: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.125rem;
  height: 3.125rem;
  flex-shrink: 0;
}
h3.flow-title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em !important;
  margin-bottom: 0.5rem;
}

p.flow-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

hr.flow-line {
  margin: 1.9rem 0 2rem;
}

.flow-column {
  margin-bottom: 3.25rem;
}

.flow-section .btn-black a {
  padding: 1.125rem 4.7rem;
  height: 3.5rem;
}
.flow-section .btn-black a::after {
  right: 4.85rem;
}

@media screen and (max-width: 959px) {
  .flow-title-item {
    padding: 0 0 1rem !important;
  }
  .flow-text-item {
    padding: 0 !important;
  }

  .flow-section .btn-black {
    text-align: center !important;
  }
}

@media screen and (max-width: 599px) {
  .flow-section h2.section-title {
    font-size: 26px;
  }
  .flow-number-group {
    gap: 0.8rem;
  }
  p.flow-number {
    font-size: 18px;
    width: 2.5rem;
    height: 2.5rem;
  }
  h3.flow-title {
    font-size: 18px;
  }
  p.flow-text {
    font-size: 15px;
  }
  .flow-section .btn-black a {
    padding: 1.125rem 3.7rem;
    height: 3.75rem;
  }
  .flow-section .btn-black a::after {
    right: 3.85rem;
  }
}

/* ========== faqセクション ========== */
.faq-section {
  padding-top: 6.3rem !important;
  padding-bottom: 6.4rem !important;
}

.faq-section h2.section-title {
  font-size: 1.75rem;
  letter-spacing: 0.04em !important;
}

.faq-title-group {
  align-items: baseline;
  gap: 1.3rem;
}

p.faq-sub-title {
  font-size: 1.125rem;
  font-family: "Noto Serif JP", serif;
  line-height: 1.4;
}
h3.faq-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.02em !important;
}

.faq-text-group {
  align-items: baseline;
  gap: 1.3rem;
}
p.faq-sub-text {
  font-size: 1.125rem;
  font-family: "Noto Serif JP", serif;
  line-height: 1.4;
}
p.faq-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
}

hr.faq-line {
  margin: 1.6rem 0 2.55rem;
}

@media screen and (max-width: 959px) {
  .faq-text-item {
    padding: 0 !important;
  }
}

@media screen and (max-width: 599px) {
  .faq-section h2.section-title {
    font-size: 26px;
  }

  .faq-title-group,
  .faq-text-group {
    gap: 0.5rem;
  }

  p.faq-sub-title,
  p.faq-sub-text {
    font-size: 18px;
  }
  h3.faq-title,
  p.faq-text {
    font-size: 15px;
  }
}

/* ==============================
      お問い合わせ(.page-id-23)
============================== */
/* ========== under-titleセクション(.page-id-17) =========== */
.page-id-23 .under-title-section::after {
  content: "CONTACT";
  white-space: pre-wrap;
  position: absolute;
  bottom: 0;
  right: -0.4rem;
  font-size: 7.5rem;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  line-height: 0.88;
  letter-spacing: 0.03em;
  text-align: left;
  color: rgba(200, 200, 200, 0.15);
  z-index: -1;
  pointer-events: none;
}

@media screen and (max-width: 599px) {
  .page-id-23 .under-title-section::after {
    font-size: 5rem;
  }
}

.foam-group {
  max-width: 950px;
  margin-inline: auto;
  margin-bottom: 5rem;
  background-color: #fff;
  border-radius: 0.25rem;
}
hr.foam-line {
  margin: 1.5rem 0;
}
li.foam-group-link-text a {
  border-bottom: 1px solid #8c5a56;
}
li.foam-group-link-text a:hover {
  opacity: 0.8;
}

/* プログレストラッカー */
ol.smf-progress-tracker {
  margin-bottom: 3rem;
}
.smf-progress-tracker__item[aria-current="true"]
  .smf-progress-tracker__item__number {
  background-color: #8c5a56;
}
.smf-progress-tracker__item[aria-current="true"]
  .smf-progress-tracker__item__text {
  color: #8c5a56;
}

/* 項目余白 */
.wp-block-snow-monkey-forms-item.smf-item {
  margin-bottom: 2rem;
}

input.smf-text-control__control {
  width: 23.5%;
}

p.foam-text {
  margin-top: 3rem;
}
p.foam-text a {
  border-bottom: 1px solid #8c5a56;
}
p.foam-text a:hover {
  opacity: 0.8;
}

/* Turnstile全体を中央寄せ */
.snow-monkey-forms-turnstile {
  display: flex;
  justify-content: center;
}

/* 確認ボタン */
.smf-action {
  text-align: center;
  margin-top: 3rem;
}
.smf-action .smf-button-control__control {
  width: 17.563rem;
  height: 3.75rem;
  padding: 1.125rem 1rem;
  border: 1px solid #8c5a56;
  border-radius: 0.25rem;
  background: #8c5a56;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    border-color 0.2s ease;
  background-image: none !important;
  box-shadow: none !important;
}
.smf-action .smf-button-control__control[disabled] {
  color: #fff;
}

.smf-action .smf-button-control__control:hover {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  color: #8c5a56 !important;
  box-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
}

@media (max-width: 959px) {
  .page-id-23 .under-title-section::after {
    bottom: 0.5rem;
  }

  .foam-group {
    padding: 2rem 1.5rem;
  }
  input.smf-text-control__control {
    width: 36.5%;
  }
  .smf-action {
    flex-direction: column !important;
  }
  .smf-action .smf-button-control + .smf-button-control {
    margin-left: 0;
  }
  button.smf-button-control__control {
    margin-bottom: 1rem;
  }
}

@media screen and (max-width: 599px) {
  .page-id-23 .under-title-section::after {
    bottom: 1rem;
  }
  .foam-group {
    padding: 1.5rem 1rem;
  }
  .smf-select-control,
  select.smf-select-control__control,
  input.smf-text-control__control {
    width: 100%;
  }
  .smf-action .smf-button-control__control {
    font-size: 16px;
  }
}

/* ==============================
        お知らせ(.blog)
============================== */
/* ========== under-titleセクション(.page-id-17) =========== */
.blog .under-title-section::after {
  content: "NEWS";
  white-space: pre-wrap;
  position: absolute;
  bottom: 0;
  right: -0.4rem;
  font-size: 7.5rem;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  line-height: 0.88;
  letter-spacing: 0.03em;
  text-align: left;
  color: rgba(200, 200, 200, 0.15);
  z-index: -1;
  pointer-events: none;
}

@media screen and (max-width: 599px) {
  .blog .under-title-section::after {
    font-size: 5rem;
  }
}

.blog time.c-postTimes__posted.icon-posted:before,
.single .c-categoryList:before,
.single time.c-postTimes__modified.icon-modified:before,
.single .p-breadcrumb__text .__home:before,
.archive time.c-postTimes__posted.icon-posted:before,
.archive .c-pageTitle__subTitle,
.archive .p-breadcrumb__text .__home:before {
  display: none;
}

/* ========== プライバシーポリシー(.page-id-25) ========== */
.page-id-25 .under-title-section {
  position: relative;
  overflow: visible;
  z-index: 1;
}
.page-id-25 .under-title-section::after {
  content: "PRIVACY\00000a POLICY";
  white-space: pre-wrap;
  position: absolute;
  bottom: -1rem;
  right: -0.4rem;
  font-size: 7.5rem;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  line-height: 0.88;
  letter-spacing: 0.03em;
  text-align: left;
  color: rgba(200, 200, 200, 0.15);
  z-index: -1;
  pointer-events: none;
}

li.privacy-text a {
  border-bottom: 1px solid #8c5a56;
}
li.privacy-text a:hover {
  opacity: 0.8;
}

@media (max-width: 959px) {
  .page-id-25 .under-title-section::after {
    font-size: 6rem;
  }
}

@media screen and (max-width: 599px) {
  .page-id-25 .under-title-section::after {
    font-size: 4.5rem;
  }
  .page-id-25 p.about-fv-title {
    font-size: 32px;
  }
}
