@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,200;0,300;1,200;1,300&family=Noto+Serif+JP:wght@200;300;400&display=swap');
/* トップページ：スマートフォンのWUTEC写真説明を読みやすく */
@media(max-width:767px){body#top .home-wutec__caption{font-size:12.5px!important;line-height:1.55!important;}}
/* === Global: PC/SP visibility toggle (exclude page-id-13558) === */
body:not(.page-id-13558) .pc { display: block !important; }
body:not(.page-id-13558) .spp { display: none !important; }

@media only screen and (max-width: 750px) {
  body:not(.page-id-13558) .pc { display: none !important; }
  body:not(.page-id-13558) .spp { display: block !important; }
}

/* === Global: tb01 table === */
table {
  border-collapse: collapse;
  width: 75%;
  margin: auto;
}
.tb01 th,
.tb01 td {
  padding: 4px;
  border: solid 1px #999999;
  text-align: left;
  box-sizing: border-box;
}
.tb01 th {
  background: #ff7bac;
  color: #fff;
}
@media screen and (max-width: 640px) {
  .tb01 .head { display: none; }
  .tb01 { width: 100%; }
  table.tb01 td {
    display: block;
    width: 100%;
    border-bottom: none;
  }
  table.tb01 td:first-child {
    background: #dcdcdc;
    color: #000;
  }
  table.tb01 td:before {
    content: attr(data-label);
    font-size: 1.2rem;
    color: #ff0000;
    display: block;
  }
  .tb01 tr:last-child { border-bottom: solid 1px #000; }
}

/* === Global: YouTube embed === */
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/* === Global: background-line heading === */
.background-line {
  font-family: 'Helvetica Neue', sans-serif;
  font-size: 1.5em;
  color: #444;
  position: relative;
  padding-bottom: 5px;
}
.background-line::after {
  content: "";
  display: block;
  width: 50px;
  height: 3px;
  background: #888;
  margin-top: 5px;
}

/* === Global: custom-underline === */
.custom-underline {
  text-decoration: underline;
  text-decoration-color: #888;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 3px;
}

/* === ZEH page: su-spoiler accordion === */
.su-spoiler-title {
  font-size: 28px !important;
  font-weight: bold;
}
.su-spoiler-content {
  font-size: 18px !important;
  line-height: 1.8;
}
.su-spoiler-title {
  display: block;
  background-color: #2a7ae2;
  color: #ffffff !important;
  padding: 14px 20px;
  margin: 10px 0;
  font-size: 18px !important;
  font-weight: bold;
  border-radius: 6px;
  box-shadow: 0 4px 6px rgba(0,0,0,0.1);
  cursor: pointer;
  border: none;
  transition: all 0.3s ease;
}
.zeh-buttons .su-spoiler-title {
  background: linear-gradient(to bottom, #f8e6d2, #f6c589) !important;
  color: #5c3a00 !important;
  font-size: 22px !important;
  font-weight: bold !important;
  padding: 16px 24px !important;
  border: 2px solid #d49b00 !important;
  border-radius: 10px !important;
  margin-bottom: 15px !important;
  box-shadow: 0 6px 0 #b37700, 0 6px 12px rgba(0,0,0,0.15) !important;
  text-shadow: 1px 1px 1px rgba(255,255,255,0.6);
  cursor: pointer !important;
  display: inline-block !important;
  transition: all 0.1s ease-in-out !important;
  width: 100%;
  max-width: 420px;
  text-align: center;
}
.zeh-buttons .su-spoiler-title:hover {
  transform: translateY(-2px) !important;
  background: linear-gradient(to bottom, #f6d5a4, #f4a54f) !important;
  box-shadow: 0 8px 0 #996600, 0 10px 16px rgba(0,0,0,0.25) !important;
}

/* === Gallery page: .gallery tag === */
.gallery {
  display: inline-block;
  border: 1px solid #ff7f50;
  padding: 2px 8px;
  font-size: 12px;
  border-radius: 0px;
  color: #ff7f50;
  margin-left: 10px;
}

/* === Global: lp-wrapper / lp-section === */
.lp-wrapper {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.lp-section {
  width: 100%;
  margin: 0;
  padding: 80px 0;
  box-sizing: border-box;
}
.lp-section.bg-light { background: #f9f9f9; }
.lp-section.bg-green { background: #f4f8f6; }

/* === Global: lp-section content width === */
.lp-section .lp-text,
.lp-section ul,
.lp-section h2 {
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
}

/* === Global: lp-wrapper h2 === */
.lp-wrapper h2 {
  all: unset;
  display: block;
  font-size: 1.8rem;
  color: #2E5E4E;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
  position: relative;
}
.lp-wrapper h2::after {
  content: "";
  display: block;
  margin: 12px auto 0;
  width: 80px;
  height: 4px;
  background: linear-gradient(to right, #f39c12, #f1c40f);
  border-radius: 2px;
}

/* === Global: design-comments card grid === */
.design-comments.flat-design {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 36px;
  margin-top: 40px;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
}
.design-comments.flat-design li {
  background: none;
  border-radius: 0;
  overflow: hidden;
  text-align: center;
}
.design-comments.flat-design .img-wrap img {
  width: 100%;
  display: block;
  transition: transform 0.4s ease, box-shadow 0.4s ease;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 3px;
  box-sizing: border-box;
}
@media (min-width: 769px) {
  .design-comments.flat-design .img-wrap:hover img {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(0,0,0,0.12);
  }
}
@media (max-width: 768px) {
  .lp-section .lp-text,
  .design-comments.flat-design {
    padding-left: 5%;
    padding-right: 5%;
    gap: 24px;
  }
}

/* === Global: feature-grid card === */
.feature-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
  margin: 40px auto;
  max-width: 1200px;
}
.feature-card {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 3px 10px rgba(0,0,0,0.08);
  transition: transform 0.2s;
}
.feature-card:hover { transform: translateY(-4px); }
.feature-card img { width: 100%; display: block; }
.feature-card .text {
  padding: 15px 20px;
  font-size: 0.95rem;
  line-height: 1.6;
  color: #333;
}
.feature-card .text strong {
  display: block;
  font-size: 1.05rem;
  color: #2E5E4E;
  margin-bottom: 8px;
}
@media (max-width: 768px) {
  .feature-grid { gap: 20px; }
}

/* === Global: hero-section full-width background === */
.hero-section {
  width: 100%;
  min-height: 400px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
}
.container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

/* === Global: modelhouse-lp body text === */
.modelhouse-lp h2 {
  font-size: 2rem;
  font-weight: 700;
  margin-top: 60px;
  margin-bottom: 25px;
  line-height: 1.4;
  color: #2E5E4E;
}
.modelhouse-lp h3 {
  font-size: 1.5rem;
  font-weight: 600;
  margin-top: 40px;
  margin-bottom: 20px;
  line-height: 1.5;
  color: #333;
}
.modelhouse-lp p {
  font-size: 1.1rem;
  line-height: 1.8;
  margin-bottom: 1.2em;
  color: #333;
}
.modelhouse-lp img.aligncenter {
  display: block;
  margin: 30px auto;
  max-width: 100%;
  height: auto;
}
.modelhouse-lp table {
  font-size: 1rem;
  line-height: 1.6;
  margin: 20px 0;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .modelhouse-lp h2 { font-size: 1.6rem; }
  .modelhouse-lp h3 { font-size: 1.3rem; }
  .modelhouse-lp p { font-size: 1rem; }
}

/* === UNVERIFIED: hero-north-kitanoda4 SP styles === */
@media screen and (max-width: 768px) {
  .hero-north-kitanoda4 { height: 50vh; }
  .hero-north-kitanoda4 .hero-overlay { padding: 20px 30px; max-width: 90%; }
  .hero-north-kitanoda4 h1 { font-size: 1.6rem; }
  .hero-north-kitanoda4 .price { font-size: 1.3rem; }
  .hero-north-kitanoda4 .catch { font-size: 0.9rem; }
  .hero-north-kitanoda4 .cta-btn { font-size: 1rem; padding: 8px 20px; }
}

/* === Global: .note superscript === */
.note {
  font-size: 0.65em;
  vertical-align: super;
  position: relative;
  top: -0.2em;
  line-height: 0;
}

/* === Global: page_box / entry-content body text size === */
body#top .mw1140 .page_box p,
body#top .mw1140 .page_box li,
body#top .entry-content p,
body#top .entry-content li,
body#top .lp-wrapper p,
body#top .lp-wrapper li,
body#top .lp-section .lp-text {
  font-size: 17px !important;
  line-height: 1.9 !important;
}
body#top .mw1140 .page_box h2,
body#top .lp-wrapper h2 {
  font-size: 1.9rem !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
}

/* === Global: password-protected form PC layout === */
@media (min-width: 992px) {
  .post-password-required .post-password-form,
  body:has(form[action*="postpass"]) form[action*="postpass"] {
    position: static;
    margin: 140px auto 120px;
    max-width: 720px;
    width: min(92%, 720px);
    box-sizing: border-box;
    padding: 24px 24px 20px;
    background: #fff;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0,0,0,.06);
    font-size: 16px;
    line-height: 1.6;
  }
}

/* === Global: password form input/submit === */
.post-password-required .post-password-form input[type="password"],
body:has(form[action*="postpass"]) form[action*="postpass"] input[type="password"] {
  display: block;
  width: 100%;
  height: 44px;
  padding: 0 12px;
  margin-bottom: 12px;
  border: 1px solid #c9ced6;
  border-radius: 8px;
  outline: none;
  box-sizing: border-box;
  transition: box-shadow .15s, border-color .15s;
}
.post-password-required .post-password-form input[type="password"]:focus,
body:has(form[action*="postpass"]) form[action*="postpass"] input[type="password"]:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 4px rgba(59,130,246,.15);
}
.post-password-required .post-password-form p,
form[action*="postpass"] p {
  display: block !important;
  margin: 0 0 12px !important;
}
.post-password-required .post-password-form input[type="submit"],
body:has(form[action*="postpass"]) form[action*="postpass"] input[type="submit"],
form[action*="postpass"] input[type="submit"] {
  position: static !important;
  inset: auto !important;
  float: none !important;
  display: block !important;
  width: 100% !important;
  height: 44px;
  margin: 12px 0 0 !important;
  border: 0;
  border-radius: 8px;
  cursor: pointer;
  background: #1a73e8;
  color: #fff;
  font-weight: 700;
  transition: opacity .15s, transform .02s;
}
.post-password-required .post-password-form input[type="submit"]:hover { opacity: .92; }
.post-password-required .post-password-form input[type="submit"]:active { transform: translateY(1px); }
.post-password-required form[action*="postpass"],
form[action*="postpass"] { position: static !important; }

/* === Global: tel link text display on PC === */
.pc-only { display: none; }
@media (min-width: 768px) {
  .pc-only { display: inline; }
  a.btn-deep[href^="tel:"] {
    background: none !important;
    color: inherit !important;
    padding: 0 !important;
    border: none !important;
    display: inline !important;
  }
}

/* === Global: modelhouse-hero common hero === */
.modelhouse-hero {
  width: 100%;
  height: 65vh;
  background: var(--hero-bg, none) center/cover no-repeat;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.modelhouse-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.35);
  z-index: 1;
}
.modelhouse-hero .hero-overlay {
  position: relative;
  z-index: 2;
  color: #fff;
  text-align: center;
  padding: 24px 36px;
  background: rgba(0,0,0,.45);
  border-radius: 10px;
  max-width: 520px;
  width: min(92%, 520px);
}
.modelhouse-hero h1 { font-size: 2rem; margin: 0 0 .5em; }
.modelhouse-hero .catch { font-size: 1.1rem; margin: .3em 0 .8em; }
.modelhouse-hero .cta-btn {
  display: inline-block;
  padding: 10px 24px;
  border-radius: 28px;
  background: #f39c12;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
}
.modelhouse-hero .price { font-size: 1.6rem; font-weight: 700; color: #FFD84C; margin: .3em 0 .6em; }
@media (max-width: 768px) {
  .modelhouse-hero { height: 50vh; }
  .modelhouse-hero .hero-overlay { padding: 16px 20px; max-width: 92%; }
  .modelhouse-hero .price { font-size: 1.3rem; }
}

/* === Chiyodadai modelhouse LP (page-id-13941): hero image === */
body.page-id-13941 {
  --hero-bg: url('https://auroral.jp/wpn/wp-content/uploads/2023/05/aurora-town-chiyodadai-hero-1.webp');
}

/* === /modelhouse/ archive: 2-column layout restore === */
.post-type-archive-modelhouse .mw840,
.post-type-archive-modelhouse .cards,
.post-type-archive-modelhouse .list {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}
.post-type-archive-modelhouse .box {
  width: calc(50% - 12px) !important;
  margin: 0 !important;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .post-type-archive-modelhouse .box { width: 100% !important; }
}

/* === Gallery page: gallery-hero banner === */
.gallery-hero-wrap {
  text-align: center;
  margin: 40px 0;
}
.gallery-hero-link img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  transition: transform 0.3s ease;
}
.gallery-hero-link img:hover { transform: scale(1.02); }
.gallery-cta a {
  display: inline-block;
  margin-top: 20px;
  padding: 14px 32px;
  background: #3C3C3C;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none;
  border-radius: 6px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
}
.gallery-cta a:hover { background: #000; transform: translateY(-3px); }

@media screen and (max-width: 768px) {
  .hero-overlay {
    display: block;
    max-width: 90%;
    margin: 0 auto;
  }
  .hero-overlay.fullwidth-on-sp { max-width: 100%; }
}

/* === Global: visually-hidden === */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(100%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* === Global: gift-banner === */
.gift-banner {
  background: linear-gradient(135deg, #ede0b5, #f5e8d2);
  padding: 4rem 2rem;
  display: block;
  width: 100%;
  box-sizing: border-box;
  min-height: 1px;
  overflow: hidden;
}
.gift-inner {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3rem;
  flex-wrap: wrap;
  background: rgba(255, 255, 255, 0.85) !important;
  padding: 2rem 3rem;
  border-radius: 1rem;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
}
.gift-image {
  flex: 0 0 200px;
  animation: float 3s ease-in-out infinite;
}
.gift-image img {
  width: 100%;
  height: auto;
  border-radius: 0.8rem;
}
.gift-text {
  flex: 1;
  animation: fadeInRight 1.5s ease-out forwards;
  opacity: 0;
}
.gift-title {
  font-size: 5.6rem;
  margin: 0 0 1rem;
  letter-spacing: 0.05em;
  color: #1a1a1a;
  font-weight: 700;
}
.gift-sub {
  font-size: 1.8rem;
  line-height: 1.9;
  color: #444;
  font-family: 'Noto Serif JP', serif;
  text-align: left !important;
}
@keyframes float {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-8px); }
}
@keyframes fadeInRight {
  0% { opacity: 0; transform: translateX(40px); }
  100% { opacity: 1; transform: translateX(0); }
}
@media (max-width: 767px) {
  .gift-banner { padding: 2rem 1.5rem !important; }
  .gift-image { flex: 0 0 120px !important; }
  .gift-title { font-size: 2rem !important; margin-bottom: 0.6rem !important; }
  .gift-sub { font-size: 1.2rem !important; line-height: 1.7 !important; }
  .gift-inner { padding: 1.5rem !important; gap: 1.5rem !important; }
}

/* === /bukken/ archive: 2-column layout === */
.list_area dl {
  display: inline-block !important;
  width: 48% !important;
  margin: 0 1% 20px 0 !important;
  vertical-align: top !important;
  box-sizing: border-box !important;
}
.list_area dl:nth-child(2n) { margin-right: 0 !important; }
@media only screen and (max-width: 750px) {
  .list_area dl {
    display: block !important;
    width: 100% !important;
    margin: 0 0 20px 0 !important;
  }
}

/* === single-bukken: heading color red === */
body.single-bukken h2,
body.single-bukken h3,
body.single-bukken h4,
body.single-bukken .read h2,
body.single-bukken .read h3 {
  color: #c0392b !important;
}
body.single-bukken *[style*="#5b7ce0"],
body.single-bukken *[style*="rgb(91, 124, 224)"],
body.single-bukken *[style*="color: #5"],
body.single-bukken *[style*="color:#5"] {
  color: #c0392b !important;
}

/* === single-bukken: button gold gradient === */
body.single-bukken .banner-button,
body.single-bukken .button,
body.single-bukken a.button,
.modelhouse-banner .banner-button {
  background: linear-gradient(135deg, #f7971e 0%, #ffd200 100%) !important;
  color: #333 !important;
}

/* === single-bukken: syuhentitle red gradient === */
body.single-bukken .syuhentitle {
  background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%) !important;
  color: #fff !important;
}

/* === bukken pages: ttl_uline underline remove === */
body.post-type-archive-bukken .ttl_uline::after,
body.single-bukken .ttl_uline::after {
  display: none !important;
}

/* === /recruit/ archive: 2-column layout === */
body .list_area.zenkaku .mw840 { display: block !important; }
body .list_area.zenkaku dl {
  display: inline-block !important;
  width: 48% !important;
  margin: 0 1% 20px 0 !important;
  vertical-align: top !important;
  box-sizing: border-box !important;
}
body .list_area.zenkaku dl:nth-child(2n) { margin-right: 0 !important; }
@media only screen and (max-width: 750px) {
  body .list_area.zenkaku dl {
    display: block !important;
    width: 100% !important;
    margin: 0 0 20px 0 !important;
  }
}

/* === Global: ttl_iruka heading === */
h2.ttl_iruka,
h2.tit_iruka {
  font-size: 2.8rem !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  text-align: center !important;
  margin: 20px auto !important;
  display: block !important;
}

/* === Global: modelhouse-wrapper grid === */
.modelhouse-wrapper {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
  gap: 32px;
  max-width: 1140px;
  margin: 0 auto;
  padding: 40px 20px;
}
.modelhouse-wrapper .box {
  background: #fff;
  border: 1px solid #ccc;
  padding: 20px;
  box-shadow: 0 0 8px rgba(0,0,0,0.05);
  box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .modelhouse-wrapper { grid-template-columns: 1fr; }
  .modelhouse-wrapper .box { width: 100% !important; }
}
/* 20260509追加 */
/* 投稿ページ限定 */
/* 投稿ページ */

body.is-single-post .txt h1.entry-title {
	font-size: 3.2rem !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	margin: 0 0 1em !important;
}

body.is-single-post .txt h2 {
	font-size: 2.6rem !important;
	line-height: 1.5 !important;
	font-weight: 700 !important;
	margin: 2.5em 0 1em !important;
	padding-bottom: .45em !important;
	border-bottom: 4px solid #0f8b8d !important;
}

body.is-single-post .txt h3 {
	font-size: 2.1rem !important;
	line-height: 1.5 !important;
	font-weight: 700 !important;
	margin: 2em 0 .8em !important;
	padding-bottom: .3em !important;
	border-bottom: 2px solid #0f8b8d !important;
}

body.is-single-post .txt p {
	font-size: 1.7rem !important;
	line-height: 1.9 !important;
	margin-bottom: 1.8em !important;
}

/* リスト共通（タブ・フッター統合） */

.tab-list,
.tab-list li,
.tab-list-item,
footer ul,
footer ol,
footer li,
.ft_right ul,
.ft_right ol,
.ft_right li {
	list-style: none !important;
	padding-left: 0 !important;
	margin-left: 0 !important;
	counter-reset: none !important;
}

/* SNS */

.ft_sns li::before,
.ft_sns li::after {
	content: none !important;
	display: none !important;
}

.ft_sns,
.ft_sns li {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.ft_sns a {
	text-decoration: none !important;
}

/* フッター見出し */

.ft_right h2 {
	font-size: 1.4rem !important;
	font-weight: 700 !important;
	line-height: 1.6 !important;
	margin: 0 0 10px !important;
	padding: 0 !important;
	border-bottom: 2px solid #0f8b8d !important;
}
body.is-single-post #top .detail_area_zenbaku .txt,
body.is-single-post #top .detail_area_zenbaku .txt p,
body.is-single-post #top .detail_area_zenbaku .txt li,
body.is-single-post #top .detail_area_zenbaku .txt div {
	color: #333333 !important;
}

body.is-single-post #top .detail_area_zenbaku .txt h1,
body.is-single-post #top .detail_area_zenbaku .txt h2,
body.is-single-post #top .detail_area_zenbaku .txt h3,
body.is-single-post #top .detail_area_zenbaku .txt h4,
body.is-single-post #top .detail_area_zenbaku .txt h5,
body.is-single-post #top .detail_area_zenbaku .txt h6 {
	color: #222222 !important;
}
/* ============================================================
   オプションページ - 刷新CSS
   コンセプト：建築の静謐さ × 空間への期待感
   ============================================================ */
/* --- CSS変数 --- */
body.is-single-post {
    --opt-gold:     #b89c50;
    --opt-gold-lt:  #d4b96a;
    --opt-dark:     #0e0e0e;
    --opt-mid:      #3a3a3a;
    --opt-gray:     #888;
    --opt-line:     rgba(184,156,80,0.25);
    --opt-bg:       #f9f8f6;
    --opt-white:    #ffffff;
    --ease-out:     cubic-bezier(0.16, 1, 0.3, 1);
}

/* --- ボディ --- */
body.is-single-post .opt_container {
    background-color: var(--opt-bg);
    background-image:
        radial-gradient(ellipse 80% 50% at 50% -10%, rgba(184,156,80,0.06) 0%, transparent 70%);
}

/* --- コンテナ全体 --- */
body.is-single-post .opt_container {
    font-family: 'Noto Serif JP', 'Yu Mincho', serif !important;
    position: relative;
}

/* --- メインビジュアル画像 --- */
@media screen and (min-width: 910px) {

body.is-single-post .opt_container .imanimage {
    margin: 0 auto 160px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    position: relative !important;
}

body.is-single-post .opt_container .imanimage::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        transparent 60%,
        rgba(249,248,246,0.6) 100%
    );
    pointer-events: none;
}

body.is-single-post .opt_container .imanimage img {
    transform: scale(1.02);
    transition: transform 8s var(--ease-out);
    display: block;
    width: 100%;
}

body.is-single-post .opt_container .imanimage:hover img {
    transform: scale(1.0);
}

/* --- メインタイトル --- */
body.is-single-post .opt_container h2.opt_main_title {
    font-family: 'Cormorant Garamond', 'Yu Mincho', serif !important;
    font-size: 72px !important;
    font-weight: 200 !important;
    font-style: italic !important;
    letter-spacing: 0.12em !important;
    color: var(--opt-dark) !important;
    margin-bottom: 24px !important;
    text-shadow: none !important;
    border: none !important;
    padding: 0 !important;
    line-height: 1.1 !important;
    position: relative !important;
}

body.is-single-post .opt_container h2.opt_main_title::before {
    content: '';
    display: block;
    width: 40px;
    height: 1px;
    background: var(--opt-gold);
    margin-bottom: 32px;
}

body.is-single-post .opt_container h2.opt_main_title::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background: linear-gradient(to right, var(--opt-line), transparent);
    margin-top: 40px;
    margin-bottom: 0;
}

/* --- リードテキスト --- */
body.is-single-post .opt_container .opt_lead {
    font-family: 'Noto Serif JP', 'Yu Mincho', serif !important;
    font-size: 17px !important;
    font-weight: 300 !important;
    line-height: 3.4 !important;
    color: var(--opt-mid) !important;
    max-width: 760px !important;
    margin: 60px auto 160px !important;
    text-align: justify !important;
    letter-spacing: 0.08em !important;
    position: relative !important;
}

body.is-single-post .opt_container .opt_lead::before {
    content: '\201C';
    font-family: 'Cormorant Garamond', serif;
    font-size: 120px;
    color: var(--opt-line);
    position: absolute;
    top: -40px;
    left: -50px;
    line-height: 1;
    pointer-events: none;
}

/* --- スペックボックス --- */
body.is-single-post .opt_container div.opt_spec_box {
    background: var(--opt-white) !important;
    border: none !important;
    padding: 80px 100px !important;
    margin-bottom: 160px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    position: relative !important;
    box-shadow:
        0 2px 4px rgba(0,0,0,0.03),
        0 20px 60px rgba(0,0,0,0.06) !important;
}

body.is-single-post .opt_container div.opt_spec_box::before {
    content: 'STORY';
    position: absolute;
    top: 32px;
    left: 50px;
    font-family: 'Cormorant Garamond', serif;
    font-size: 11px;
    font-weight: 300;
    letter-spacing: 0.4em;
    color: var(--opt-gold);
}

body.is-single-post .opt_container div.opt_spec_box::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 3px;
    height: 100%;
    background: linear-gradient(to bottom, var(--opt-gold), transparent);
}

/* --- スペックコンテンツ --- */
body.is-single-post .opt_container div.spec_content {
    font-size: 14px !important;
    line-height: 3.2 !important;
    color: var(--opt-gray) !important;
    letter-spacing: 0.22em !important;
    column-count: 1 !important;
    text-align: left !important;
    font-weight: 300 !important;
}

/* --- 価格 --- */
body.is-single-post .opt_container p.opt_price {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 52px !important;
    font-weight: 200 !important;
    font-style: italic !important;
    margin-top: 48px !important;
    color: var(--opt-gold) !important;
    letter-spacing: 0.06em !important;
    position: relative !important;
}

body.is-single-post .opt_container p.opt_price::before {
    content: '';
    display: block;
    width: 24px;
    height: 1px;
    background: var(--opt-gold-lt);
    margin: 0 auto 24px;
}

} /* end min-width: 910px */

/* --- 画像アイテム（全幅共通） --- */
body.is-single-post .opt_container div.opt_image_item {
    margin-bottom: 120px !important;
    position: relative;
}

body.is-single-post .opt_container div.opt_image_item::after {
    content: '';
    position: absolute;
    bottom: -40px;
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    height: 40px;
    background: linear-gradient(to bottom, var(--opt-line), transparent);
}

body.is-single-post .opt_container div.opt_image_item img {
    width: 100% !important;
    height: auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow:
        0 4px 12px rgba(0,0,0,0.04),
        0 40px 80px rgba(0,0,0,0.08) !important;
    display: block !important;
    transition: transform 0.6s var(--ease-out), box-shadow 0.6s var(--ease-out) !important;
}

body.is-single-post .opt_container div.opt_image_item img:hover {
    transform: translateY(-4px) !important;
    box-shadow:
        0 8px 24px rgba(0,0,0,0.06),
        0 60px 100px rgba(0,0,0,0.12) !important;
}

/* ============================================================
   スマホ用スタイル（909px以下）
   ============================================================ */
@media screen and (max-width: 909px) {

body.is-single-post .opt_container .imanimage {
    margin: 0 auto 48px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    position: relative !important;
}

body.is-single-post .opt_container .imanimage::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        transparent 60%,
        rgba(249,248,246,0.6) 100%
    );
    pointer-events: none;
}

body.is-single-post .opt_container .imanimage img {
    display: block;
    width: 100%;
}

/* --- メインタイトル（スマホ） --- */
body.is-single-post .opt_container h2.opt_main_title {
    font-family: 'Cormorant Garamond', 'Yu Mincho', serif !important;
    font-size: 36px !important;
    font-weight: 200 !important;
    font-style: italic !important;
    letter-spacing: 0.08em !important;
    color: var(--opt-dark) !important;
    margin-bottom: 16px !important;
    text-shadow: none !important;
    border: none !important;
    padding: 0 16px !important;
    line-height: 1.2 !important;
    position: relative !important;
}

body.is-single-post .opt_container h2.opt_main_title::before {
    content: '';
    display: block;
    width: 28px;
    height: 1px;
    background: var(--opt-gold);
    margin-bottom: 20px;
}

body.is-single-post .opt_container h2.opt_main_title::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background: linear-gradient(to right, var(--opt-line), transparent);
    margin-top: 24px;
}

/* --- リードテキスト（スマホ） --- */
body.is-single-post .opt_container .opt_lead {
    font-family: 'Noto Serif JP', 'Yu Mincho', serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 2.8 !important;
    color: var(--opt-mid) !important;
    max-width: 100% !important;
    margin: 32px 0 64px !important;
    padding: 0 20px !important;
    text-align: justify !important;
    letter-spacing: 0.06em !important;
    position: relative !important;
}

body.is-single-post .opt_container .opt_lead::before {
    content: '\201C';
    font-family: 'Cormorant Garamond', serif;
    font-size: 72px;
    color: var(--opt-line);
    position: absolute;
    top: -20px;
    left: 12px;
    line-height: 1;
    pointer-events: none;
}

/* --- スペックボックス（スマホ） --- */
body.is-single-post .opt_container div.opt_spec_box {
    background: var(--opt-white) !important;
    border: none !important;
    padding: 52px 24px 40px !important;
    margin: 0 0 64px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    position: relative !important;
    box-shadow:
        0 2px 4px rgba(0,0,0,0.03),
        0 12px 32px rgba(0,0,0,0.06) !important;
}

body.is-single-post .opt_container div.opt_spec_box::before {
    content: 'STORY';
    position: absolute;
    top: 20px;
    left: 24px;
    font-family: 'Cormorant Garamond', serif;
    font-size: 10px;
    font-weight: 300;
    letter-spacing: 0.4em;
    color: var(--opt-gold);
}

body.is-single-post .opt_container div.opt_spec_box::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 3px;
    height: 100%;
    background: linear-gradient(to bottom, var(--opt-gold), transparent);
}

/* --- スペックコンテンツ（スマホ） --- */
body.is-single-post .opt_container div.spec_content {
    font-size: 13px !important;
    line-height: 2.8 !important;
    color: var(--opt-gray) !important;
    letter-spacing: 0.14em !important;
    column-count: 1 !important;
    text-align: left !important;
    font-weight: 300 !important;
}

/* --- 価格（スマホ） --- */
body.is-single-post .opt_container p.opt_price {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 36px !important;
    font-weight: 200 !important;
    font-style: italic !important;
    margin-top: 32px !important;
    color: var(--opt-gold) !important;
    letter-spacing: 0.06em !important;
    position: relative !important;
    text-align: center !important;
}

body.is-single-post .opt_container p.opt_price::before {
    content: '';
    display: block;
    width: 20px;
    height: 1px;
    background: var(--opt-gold-lt);
    margin: 0 auto 20px;
}

/* --- 画像アイテム（スマホ） --- */
body.is-single-post .opt_container div.opt_image_item {
    margin-bottom: 60px !important;
}

body.is-single-post .opt_container div.opt_image_item::after {
    bottom: -24px;
    height: 24px;
}

body.is-single-post .opt_container div.opt_image_item img {
    box-shadow:
        0 4px 12px rgba(0,0,0,0.04),
        0 20px 40px rgba(0,0,0,0.08) !important;
}

} /* end max-width: 909px */

/* --- フェードイン アニメーション --- */
@keyframes opt-fadein {
    from {
        opacity: 0;
        transform: translateY(24px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

body.is-single-post .opt_container .imanimage,
body.is-single-post .opt_container h2.opt_main_title,
body.is-single-post .opt_container .opt_lead,
body.is-single-post .opt_container div.opt_spec_box,
body.is-single-post .opt_container div.opt_image_item {
    animation: opt-fadein 1.2s var(--ease-out) both;
}

body.is-single-post .opt_container h2.opt_main_title { animation-delay: 0.1s; }
body.is-single-post .opt_container .opt_lead        { animation-delay: 0.2s; }
body.is-single-post .opt_container div.opt_spec_box { animation-delay: 0.3s; }
body.is-single-post .opt_container div.opt_image_item:nth-child(1) { animation-delay: 0.1s; }
body.is-single-post .opt_container div.opt_image_item:nth-child(2) { animation-delay: 0.2s; }
body.is-single-post .opt_container div.opt_image_item:nth-child(3) { animation-delay: 0.3s; }

.shorts_wrap{
    width:100%;
    max-width:400px;
    margin:40px auto;
    aspect-ratio:9 / 16;
}

.shorts_wrap iframe{
    width:100% !important;
    height:100% !important;
    display:block;
    border:none;
}
.halloween-fv {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.halloween-fv img {
  display: block;
  width: 100%;
  height: auto;
}

/* === トップページ改修・第1段階 === */
body#top > h1{font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif!important}
body#top .main_overlay_text{font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif!important}
body#top .main_overlay_sub{font-weight:400!important}
body#top .main_overlay_name{font-weight:300!important}
body#top > h1{margin:0;padding:8px 20px 10px;font-size:14px;font-weight:500;line-height:1.6;letter-spacing:.035em;text-align:center}
body#top .main_overlay_sub,
body#top .main_overlay_name{font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif!important;text-align:center;text-wrap:balance}
body#top .main_overlay_sub{letter-spacing:.2em}
body#top .main_overlay_name{letter-spacing:.1em}
body#top .home-wutec__copy{align-items:center!important;text-align:center!important}
body#top .home-wutec__period,
body#top .home-wutec__button{align-self:center!important}
@media(max-width:750px){
 body#top > h1{padding-inline:18px;font-size:clamp(13px,3.7vw,14px)!important;line-height:1.65;letter-spacing:.015em;word-break:keep-all;overflow-wrap:normal}
 body#top .main_overlay_sub{font-size:clamp(14px,4vw,16px)!important;line-height:1.6}
 body#top .main_overlay_name{font-size:clamp(22px,6.2vw,25px)!important;line-height:1.55}
 body#top .home-wutec__title{font-size:17px!important;white-space:nowrap}
 body#top .home-wutec__title strong{font-size:28px!important}
}

/* === トップページ PROPERTY：エディトリアルカード === */
body#top .property{background:transparent!important;background-image:none!important;padding:104px 0 112px!important;overflow:hidden}
body#top .property:before,
body#top .property:after{display:none!important}
body#top .property .mw1140{max-width:1120px!important}
body#top .property .ttl_index{margin:0 auto 54px!important;color:#262a2a!important;font-family:"Noto Serif JP","Yu Mincho",serif!important;font-size:17px!important;font-weight:300!important;letter-spacing:.18em!important;text-align:center!important}
body#top .property .ttl_bigblue{display:block!important;margin-bottom:5px!important;color:#183d3d!important;font-family:"Cormorant Garamond","Times New Roman",serif!important;font-size:68px!important;font-weight:300!important;line-height:.95!important;letter-spacing:.08em!important}
body#top .property ul.clearfix{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:38px 30px!important;margin:0!important;padding:0!important;list-style:none!important}
body#top .property ul.clearfix li{float:none!important;width:auto!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:0 18px 40px rgba(22,31,29,.20)!important;overflow:hidden!important;transition:transform .45s ease,box-shadow .45s ease!important}
body#top .property ul.clearfix li:hover{transform:translateY(-5px)!important;box-shadow:0 25px 52px rgba(22,31,29,.27)!important}
body#top .property ul.clearfix li a{position:relative!important;display:block!important;width:100%!important;aspect-ratio:4/3!important;overflow:hidden!important;color:#fff!important;text-decoration:none!important;background:#1d2928!important}
body#top .property ul.clearfix li a:after{content:""!important;position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(to bottom,rgba(8,17,16,0) 38%,rgba(8,17,16,.18) 57%,rgba(8,17,16,.90) 100%)!important;pointer-events:none!important}
body#top .property ul.clearfix li img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important;border:0!important;box-shadow:none!important;filter:saturate(.88) contrast(1.02)!important;transition:transform .65s ease,filter .65s ease!important}
body#top .property ul.clearfix li a:hover img{transform:scale(1.035)!important;filter:saturate(1) contrast(1.04)!important}
body#top .property ul.clearfix li h3{position:absolute!important;left:24px!important;right:22px!important;bottom:54px!important;z-index:2!important;margin:0!important;padding:0!important;color:#fff!important;background:none!important;text-shadow:0 2px 12px rgba(0,0,0,.42)!important;font-family:"Noto Serif JP","Yu Mincho",serif!important;font-size:17px!important;font-weight:400!important;line-height:1.5!important;letter-spacing:.025em!important;text-align:center!important}
body#top .property ul.clearfix li h3 .t_b_sub{display:block!important;margin-top:5px!important;color:#fff!important;font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif!important;font-size:12px!important;font-weight:500!important;line-height:1.5!important;letter-spacing:.13em!important;text-align:center!important;text-shadow:0 2px 10px rgba(0,0,0,.5)!important}
body#top .property ul.clearfix li p{position:absolute!important;left:25px!important;right:20px!important;bottom:20px!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin:0!important;padding:0!important;border:0!important;color:rgba(255,255,255,.92)!important;text-shadow:0 2px 10px rgba(0,0,0,.55)!important;font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif!important;font-size:11px!important;font-weight:400!important;line-height:1.6!important;letter-spacing:.07em!important;text-align:center!important}
body#top .property ul.clearfix li p:before{content:""!important;position:relative!important;left:auto!important;top:auto!important;flex:0 0 auto!important;width:8px!important;height:8px!important;border:1.5px solid #fff!important;border-radius:50% 50% 50% 0!important;transform:rotate(-45deg)!important;box-sizing:border-box!important;filter:drop-shadow(0 1px 3px rgba(0,0,0,.5))!important}
body#top .property ul.clearfix li p:after{display:none!important}
body#top .property .link_btn_index{margin-top:64px!important;text-align:center!important}
body#top .property .link_btn_index a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:270px!important;padding:17px 34px!important;border:1px solid #183d3d!important;background:transparent!important;color:#183d3d!important;font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif!important;font-size:13px!important;letter-spacing:.12em!important;transition:.3s ease!important}
body#top .property .link_btn_index a:hover{background:#183d3d!important;color:#fff!important}
@media(max-width:750px){
 body#top .property{padding:70px 0 78px!important}
 body#top .property .mw1140{width:auto!important;margin-inline:22px!important}
 body#top .property .ttl_index{margin-bottom:38px!important;font-size:14px!important}
 body#top .property .ttl_bigblue{font-size:48px!important}
 body#top .property ul.clearfix{grid-template-columns:1fr!important;gap:30px!important}
 body#top .property ul.clearfix li a{aspect-ratio:4/3!important}
 body#top .property ul.clearfix li h3{left:20px!important;right:18px!important;bottom:51px!important;font-size:clamp(14px,4.2vw,17px)!important;line-height:1.5!important;letter-spacing:.015em!important;white-space:nowrap!important}
 body#top .property ul.clearfix li h3 .t_b_sub{font-size:11px!important}
 body#top .property ul.clearfix li p{left:21px!important;right:17px!important;bottom:18px!important;font-size:11px!important}
 body#top .property .link_btn_index{margin-top:46px!important}
 body#top .property .link_btn_index a{width:100%!important;min-width:0!important;box-sizing:border-box!important}
}

/* スマホH1：区切り線を使わず二行表示 */
@media(max-width:750px){
 body#top>h1{font-size:0!important;line-height:0!important}
 body#top>h1:before,
 body#top>h1:after{display:block;font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif;font-size:14px;font-weight:500;line-height:1.65;letter-spacing:.015em;text-align:center;white-space:nowrap}
 body#top>h1:before{content:"河内長野市で建てる高性能な注文住宅なら"}
 body#top>h1:after{content:"アローラル三共住販株式会社"}
}

/* 建築実例：絞り込み後もカード間隔を均等に保つ */
#works-list{
 display:grid!important;
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
 column-gap:15px!important;
 row-gap:15px!important;
}
#works-list .works-item{
 width:auto!important;
 margin:0!important;
}
#works-list .works-item.works-hidden{display:none!important}
@media(max-width:750px){
 #works-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* === トップページ：セクション文字組み統一 === */
body#top .topics .slide-index li p{
 text-align:center!important;
 text-wrap:balance;
 line-height:1.75!important;
}
body#top .aurora-entry-links__body{
 align-items:center!important;
 text-align:center!important;
}
body#top .aurora-entry-links__copy,
body#top .aurora-entry-links__detail,
body#top .aurora-entry-links__cta{
 width:100%;
 text-align:center!important;
 text-wrap:balance;
}
body#top .pickup ul.clearfix li h3,
body#top .pickup ul.clearfix li p{
 text-align:center!important;
 text-wrap:balance;
}
body#top .pickup ul.clearfix li p{
 margin-left:auto!important;
 margin-right:auto!important;
}
body#top .instagram-feed-section>p{
 max-width:760px;
 margin-left:auto!important;
 margin-right:auto!important;
 text-align:center!important;
 text-wrap:balance;
 line-height:1.9;
}
@media(max-width:750px){
 body#top .topics .slide-index li p{padding-inline:14px!important}
 body#top .aurora-entry-links__copy,
 body#top .aurora-entry-links__detail{line-height:1.8!important}
 body#top .pickup ul.clearfix li h3,
 body#top .pickup ul.clearfix li p{padding-inline:14px!important}
 body#top .instagram-feed-section>p{padding-inline:20px!important;line-height:1.85}
}


/* === トップページ：セクション文字組み統一 === */
body#top .topics .slide-index li p{
 text-align:center!important;
 text-wrap:balance;
 line-height:1.75!important;
}
body#top .aurora-entry-links__body{
 align-items:center!important;
 text-align:center!important;
}
body#top .aurora-entry-links__copy,
body#top .aurora-entry-links__detail,
body#top .aurora-entry-links__cta{
 width:100%;
 text-align:center!important;
 text-wrap:balance;
}
body#top .pickup ul.clearfix li h3,
body#top .pickup ul.clearfix li p{
 text-align:center!important;
 text-wrap:balance;
}
body#top .pickup ul.clearfix li p{
 margin-left:auto!important;
 margin-right:auto!important;
}
body#top .instagram-feed-section>p{
 max-width:760px;
 margin-left:auto!important;
 margin-right:auto!important;
 text-align:center!important;
 text-wrap:balance;
 line-height:1.9;
}
@media(max-width:750px){
 body#top .topics .slide-index li p{padding-inline:14px!important}
 body#top .aurora-entry-links__copy,
 body#top .aurora-entry-links__detail{line-height:1.8!important}
 body#top .pickup ul.clearfix li h3,
 body#top .pickup ul.clearfix li p{padding-inline:14px!important}
 body#top .instagram-feed-section>p{padding-inline:20px!important;line-height:1.85}
}


/* === トップページ：INFORMATION以降の書体統一 === */
body#top .information .ttl_index,
body#top .pickup .ttl_index,
body#top .instagram-feed-section .ttl_index{
 font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif!important;
 font-weight:300!important;
 letter-spacing:.18em!important;
}
body#top .information .ttl_bigblue,
body#top .pickup .ttl_bigblue,
body#top .instagram-feed-section .ttl_bigblue{
 font-family:"Cormorant Garamond","Times New Roman",serif!important;
 font-weight:300!important;
 letter-spacing:.08em!important;
}
body#top .pickup ul.clearfix li h3{
 font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif!important;
 font-weight:400!important;
 letter-spacing:.06em!important;
}
body#top .information .tab-list,
body#top .information .tab-contents,
body#top .pickup ul.clearfix li p,
body#top .instagram-feed-section>p,
body#top footer{
 font-family:"Noto Sans JP","Zen Kaku Gothic New",sans-serif!important;
}


/* === トップページ：TOPICSの書体統一 === */
body#top .topics .ttl_index{
 font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif!important;
 font-weight:300!important;
 letter-spacing:.18em!important;
 text-align:center!important;
}
body#top .topics .ttl_bigblue{
 font-family:"Cormorant Garamond","Times New Roman",serif!important;
 font-weight:300!important;
 letter-spacing:.08em!important;
}
body#top .topics .slide-index li p{
 font-family:"Noto Sans JP","Zen Kaku Gothic New",sans-serif!important;
 font-weight:400!important;
}


/* === トップページFV：写真上テキストの可読性 === */
body#top .main_overlay_text{
 z-index:1001!important;
}
body#top .main_overlay_sub,
body#top .main_overlay_name{
 color:#fff!important;
 -webkit-text-stroke:.45px rgba(9,22,22,.62);
 paint-order:stroke fill;
 text-shadow:
  0 1px 2px rgba(0,0,0,.95),
  0 3px 10px rgba(0,0,0,.82),
  0 0 24px rgba(0,0,0,.58)!important;
}
body#top .main_overlay_sub{
 font-weight:500!important;
 letter-spacing:.16em!important;
}
body#top .main_overlay_name{
 font-weight:400!important;
 letter-spacing:.075em!important;
}
@media(max-width:750px){
 body#top .main_overlay_sub{
  font-size:clamp(15px,4.2vw,17px)!important;
  line-height:1.65!important;
  letter-spacing:.13em!important;
 }
 body#top .main_overlay_name{
  font-size:clamp(25px,7vw,28px)!important;
  line-height:1.48!important;
  letter-spacing:.055em!important;
 }
 body#top .main_overlay_sub,
 body#top .main_overlay_name{
  -webkit-text-stroke:.5px rgba(8,20,20,.68);
  text-shadow:
   0 1px 2px rgba(0,0,0,.98),
   0 3px 9px rgba(0,0,0,.88),
   0 0 20px rgba(0,0,0,.62)!important;
 }
}

/* === PC右端追尾メニュー：写真付きコンパクトCTA === */
@media(min-width:751px){
 body#top .fl_contact.pc{
  top:50%!important;
  right:0!important;
  bottom:auto!important;
  width:148px!important;
  height:auto!important;
  transform:translateY(-50%)!important;
  z-index:1000!important;
  overflow:hidden!important;
  border-radius:3px 0 0 3px!important;
  box-shadow:0 12px 30px rgba(16,31,29,.24)!important;
 }
 body#top .fl_contact.pc table,
 body#top .fl_contact.pc tbody,
 body#top .fl_contact.pc tr,
 body#top .fl_contact.pc th{
  display:block!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
 }
 body#top .fl_contact.pc a{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  padding:142px 0 0!important;
  overflow:hidden!important;
  border:1px solid rgba(17,57,55,.2)!important;
  background-color:#173b3b!important;
  background-image:url("https://auroral.jp/wpn/wp-content/uploads/2026/09/tracking-menu-modelhouse-dining.jpg")!important;
  background-position:38% top!important;
  background-repeat:no-repeat!important;
  background-size:auto 142px!important;
  color:#fff!important;
  text-decoration:none!important;
  box-sizing:border-box!important;
  transition:filter .3s ease,transform .3s ease!important;
 }
 body#top .fl_contact.pc a:hover,
 body#top .fl_contact.pc a:focus-visible{
  filter:brightness(1.06)!important;
  transform:translateX(-4px)!important;
 }
 body#top .fl_contact.pc a:before{
  content:""!important;
  position:absolute!important;
  top:110px!important;
  left:0!important;
  z-index:1!important;
  width:100%!important;
  height:32px!important;
  background:linear-gradient(to bottom,rgba(23,59,59,0),#173b3b)!important;
 }
 body#top .fl_contact.pc a:after{
  content:"HOUSE CONSULTATION"!important;
  display:block!important;
  padding:0 10px 14px!important;
  color:rgba(255,255,255,.76)!important;
  font-family:"Cormorant Garamond","Times New Roman",serif!important;
  font-size:8px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-align:center!important;
  white-space:nowrap!important;
 }
 body#top .fl_contact.pc span.pc{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:14px 12px 11px!important;
  color:#fff!important;
  font-size:0!important;
  line-height:1!important;
  writing-mode:horizontal-tb!important;
  text-align:center!important;
  box-sizing:border-box!important;
 }
 body#top .fl_contact.pc span.pc:before{
  content:"見学予約\A資料請求"!important;
  display:block!important;
  margin-bottom:8px!important;
  color:#fff!important;
  font-family:"Noto Serif JP","Yu Mincho",serif!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1.55!important;
  letter-spacing:.04em!important;
  white-space:pre-line!important;
  text-shadow:0 1px 6px rgba(0,0,0,.35)!important;
 }
 body#top .fl_contact.pc span.pc:after{
  content:"お問い合わせ  →"!important;
  display:block!important;
  padding-top:8px!important;
  border-top:1px solid rgba(255,255,255,.28)!important;
  color:rgba(255,255,255,.92)!important;
  font-family:"Noto Sans JP","Zen Kaku Gothic New",sans-serif!important;
  font-size:10px!important;
  font-weight:500!important;
  line-height:1.5!important;
  letter-spacing:.04em!important;
  white-space:nowrap!important;
 }
}


/* === トップページ：建築実例・お客様の声 タイポグラフィ === */
body#top .aurora-entry-links__title{
 font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif!important;
 font-weight:400!important;
 line-height:1.5!important;
 letter-spacing:.08em!important;
 text-wrap:balance;
}
body#top .aurora-entry-links__copy{
 font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif!important;
 font-weight:400!important;
 line-height:1.8!important;
 letter-spacing:.045em!important;
 text-wrap:balance;
}
body#top .aurora-entry-links__detail{
 font-family:"Noto Sans JP","Zen Kaku Gothic New",sans-serif!important;
 font-weight:400!important;
 line-height:1.8!important;
 letter-spacing:.025em!important;
 text-wrap:balance;
}
body#top .aurora-entry-links__cta{
 font-family:"Noto Sans JP","Zen Kaku Gothic New",sans-serif!important;
 font-weight:500!important;
 letter-spacing:.08em!important;
}
@media(max-width:750px){
 body#top .aurora-entry-links__title{letter-spacing:.06em!important}
 body#top .aurora-entry-links__copy{letter-spacing:.025em!important}
 body#top .aurora-entry-links__detail{letter-spacing:.01em!important}
}


/* === 共通フッター：エディトリアル刷新 2026-09-22 === */
body#top .bg_dark_pc{
 position:relative!important;
 isolation:isolate!important;
 display:grid!important;
 place-items:center!important;
 width:100%!important;
 min-height:clamp(430px,42vw,560px)!important;
 padding:78px 24px!important;
 overflow:hidden!important;
 background:
  linear-gradient(90deg,rgba(12,39,36,.78),rgba(12,39,36,.54) 52%,rgba(12,39,36,.68)),
  url("https://auroral.jp/wpn/wp-content/uploads/2026/09/auroral-footer-cta-blue-hour.webp") center 58%/cover no-repeat!important;
 color:#fff!important;
 box-sizing:border-box!important;
}
body#top .bg_dark_pc::after{
 content:""!important;
 position:absolute!important;
 inset:18px!important;
 z-index:-1!important;
 border:1px solid rgba(255,255,255,.24)!important;
 pointer-events:none!important;
}
body#top .bg_dark_pc .ft01.pc{
 display:block!important;
 position:relative!important;
 width:100%!important;
 margin:0!important;
 padding:0!important;
 background:none!important;
}
body#top .bg_dark_pc .ft01::before{
 content:"家族のこれからを\A アローラホームと"!important;
 display:block!important;
 margin:0 auto 46px!important;
 color:#fff!important;
 font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif!important;
 font-size:clamp(38px,4.2vw,62px)!important;
 font-weight:400!important;
 line-height:1.42!important;
 letter-spacing:.08em!important;
 text-align:center!important;
 white-space:pre-line!important;
 text-shadow:0 3px 22px rgba(0,0,0,.34)!important;
}
body#top .bg_dark_pc .mw1140{
 width:min(760px,100%)!important;
 min-width:0!important;
 max-width:none!important;
 margin:0 auto!important;
 padding:0!important;
}
body#top .bg_dark_pc ul{
 display:grid!important;
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 gap:16px!important;
 width:100%!important;
 margin:0!important;
 padding:0!important;
 list-style:none!important;
}
body#top .bg_dark_pc li{
 float:none!important;
 width:auto!important;
 margin:0!important;
 padding:0!important;
 list-style:none!important;
}
body#top .bg_dark_pc .btn_ft01,
body#top .bg_dark_pc .btn_ft02{margin:0!important;padding:0!important;background:none!important}
body#top .bg_dark_pc a{
 display:flex!important;
 flex-direction:column!important;
 align-items:center!important;
 justify-content:center!important;
 min-height:86px!important;
 padding:15px 24px!important;
 border:1px solid rgba(255,255,255,.72)!important;
 background:rgba(247,244,238,.94)!important;
 color:#123f3b!important;
 font-family:"Cormorant Garamond","Times New Roman",serif!important;
 font-size:18px!important;
 font-weight:600!important;
 line-height:1.25!important;
 letter-spacing:.14em!important;
 text-align:center!important;
 text-decoration:none!important;
 box-shadow:0 12px 32px rgba(0,0,0,.13)!important;
 transition:background .2s ease,color .2s ease,transform .2s ease!important;
}
body#top .bg_dark_pc a em{
 display:block!important;
 margin-bottom:5px!important;
 color:inherit!important;
 font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif!important;
 font-size:13px!important;
 font-style:normal!important;
 font-weight:600!important;
 line-height:1.5!important;
 letter-spacing:.08em!important;
}
body#top .bg_dark_pc a:hover{background:#123f3b!important;color:#fff!important;transform:translateY(-2px)!important}
body#top .bg_dark_pc a:focus-visible{outline:3px solid #fff!important;outline-offset:4px!important}

body#top .ft_link_area{
 margin:0!important;
 padding:78px 0 32px!important;
 background:#123f3b!important;
 color:#f7f4ee!important;
}
body#top .ft_link_area,
body#top .ft_link_area *{box-sizing:border-box!important}
body#top .ft_link_area .mw1140{min-width:0!important}
body#top .ft_link_area .ft_logo img{filter:brightness(0) invert(1)!important;opacity:.94!important}
body#top .ft_link_area :where(.ft_address,.odenwadeno,.ft_fax,p,small){color:rgba(247,244,238,.78)!important}
body#top .ft_link_area .ft_tel03 a{color:#fff!important}
body#top .ft_link_area .ft_right h2{
 margin-bottom:15px!important;
 padding-bottom:10px!important;
 border-bottom:1px solid rgba(233,211,164,.42)!important;
 color:#e9d3a4!important;
 font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif!important;
 font-size:18px!important;
 font-weight:500!important;
 line-height:1.5!important;
 letter-spacing:.07em!important;
}
body#top .ft_link_area a{color:rgba(255,255,255,.82)!important;text-decoration:none!important}
body#top .ft_link_area a:hover{color:#fff!important;text-decoration:underline!important;text-underline-offset:4px!important}
body#top .ft_link_area .copyright{
 margin-top:44px!important;
 padding-top:22px!important;
 border-top:1px solid rgba(255,255,255,.14)!important;
 color:rgba(255,255,255,.52)!important;
 text-align:center!important;
}

@media(max-width:750px){
 body#top .bg_dark_pc{
  min-height:530px!important;
  padding:70px 20px!important;
  background-position:58% center!important;
 }
 body#top .bg_dark_pc::after{inset:12px!important}
 body#top .bg_dark_pc .ft01::before{
  margin-bottom:34px!important;
  font-size:clamp(32px,9.4vw,42px)!important;
  line-height:1.48!important;
  letter-spacing:.045em!important;
 }
 body#top .bg_dark_pc ul{grid-template-columns:1fr!important;gap:12px!important}
 body#top .bg_dark_pc a{width:100%!important;min-height:78px!important;font-size:16px!important}
 body#top .ft_link_area{padding:54px 22px 24px!important;text-align:center!important}
 body#top .ft_link_area>.mw1140{width:100%!important;min-width:0!important;margin:0!important;padding:0!important}
 body#top .ft_link_area .ft_left{float:none!important;width:100%!important;margin:0 auto!important}
 body#top .ft_link_area .odenwadeno{font-size:13px!important;letter-spacing:.08em!important}
 body#top .ft_link_area .ft_tel03{display:flex!important;justify-content:center!important;align-items:center!important}
 body#top .ft_link_area .copyright{margin-top:32px!important;font-size:11px!important;line-height:1.8!important}
}


/* フッター：ロゴ・SNS・スマホ余白（確定版） */
body#top .ft_link_area .ft_logo{box-sizing:border-box!important;padding-bottom:16px!important;}
body#top .ft_link_area .ft_logo a{display:inline-flex!important;width:100%!important;box-sizing:border-box!important;align-items:center!important;padding:0!important;background:transparent!important;border-radius:0!important;}
body#top .ft_link_area .ft_logo img{display:block!important;width:100%!important;height:auto!important;filter:none!important;}
body#top .ft_link_area .ft_sns img.pc{display:none!important;}
body#top .ft_link_area .ft_sns img.mo{display:block!important;width:46px!important;height:46px!important;object-fit:contain!important;}
body#top .ft_link_area .ft_sns li,body#top .ft_link_area .ft_sns li a,body#top .ft_link_area .ft_sns li:last-child,body#top .ft_link_area .ft_sns li:last-child a,body#top .ft_link_area .ft_sns li:last-child img.mo{width:46px!important;min-width:46px!important;height:46px!important;}
@media(max-width:767px){body#top .ft_link_area{padding-top:0!important;}body#top .ft_link_area .ft_logo.pc{display:block!important;width:min(290px,100%)!important;box-sizing:border-box!important;padding-top:48px!important;margin:0 auto!important;}body#top .ft_link_area .ft_logo img{width:100%!important;height:auto!important;}}

/* トップページ：分譲地セクションの波形を整理 */
body#top .bg_naname>.bg_ougi_ue01,body#top .bg_naname>.bg_ougi_shita01{display:none!important;}
body#top .bg_naname{box-sizing:border-box!important;padding:72px 0 80px!important;}
@media(max-width:767px){body#top .bg_naname{padding:48px 0 56px!important;}}


/* スマホ：PICK UPカードの意図しない中点を除去 */
@media(max-width:767px){body#top .pickup ul,body#top .pickup li{list-style:none!important;}body#top .pickup li::marker{content:""!important;font-size:0!important;}}


/* トップページ：Instagram背景・余白（確定版） */
body#top .instagram-feed-section{box-sizing:border-box!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;clip-path:none!important;padding:72px 30px 80px!important;}
body#top .instagram-feed-section .ttl_index{margin:0 0 24px!important;}
body#top .instagram-feed-section .FeedLayout__wrapper{background:transparent!important;background-color:transparent!important;}
@media(max-width:767px){body#top .instagram-feed-section{padding:52px 18px 60px!important;}body#top .instagram-feed-section .ttl_index{margin:0 0 18px!important;}}

/* トップページ：最後の波形を上側と同じ流れへ統一 */
body#top .bg_nami_shita01{transform:scaleX(-1)!important;transform-origin:center center!important;}


/* 共通フッターCTA：モデルハウス実写 2026-09-23 */
body#top .bg_dark_pc{background:linear-gradient(90deg,rgba(12,39,36,.74),rgba(12,39,36,.50) 52%,rgba(12,39,36,.65)),url("https://auroral.jp/wpn/wp-content/uploads/2026/09/20260327_161642.jpg") center 54%/cover no-repeat!important;}
@media(max-width:750px){body#top .bg_dark_pc{background:linear-gradient(rgba(12,39,36,.72),rgba(12,39,36,.68)),url("https://auroral.jp/wpn/wp-content/uploads/2026/09/20260327_161642.jpg") 52% center/cover no-repeat!important;}}


/* 共通フッターCTA：写真を主役にした二領域レイアウト 2026-09-23 */
body#top .bg_dark_pc{display:grid!important;grid-template-columns:54% 46%!important;place-items:stretch!important;min-height:540px!important;padding:0!important;background:#123f3b!important;}
body#top .bg_dark_pc::before{content:""!important;display:block!important;grid-column:1!important;grid-row:1!important;min-height:540px!important;background:url("https://auroral.jp/wpn/wp-content/uploads/2026/09/20260327_161642.jpg") center center/cover no-repeat!important;}
body#top .bg_dark_pc::after{display:none!important;}
body#top .bg_dark_pc .ft01.pc{grid-column:2!important;grid-row:1!important;align-self:center!important;box-sizing:border-box!important;padding:44px clamp(28px,4.2vw,66px)!important;}
body#top .bg_dark_pc .ft01::before{margin-bottom:34px!important;font-size:clamp(32px,3vw,45px)!important;}
body#top .bg_dark_pc .mw1140{width:100%!important;}
body#top .bg_dark_pc ul{grid-template-columns:1fr!important;gap:12px!important;}
body#top .bg_dark_pc a{min-height:74px!important;}
@media(max-width:750px){body#top .bg_dark_pc{grid-template-columns:1fr!important;min-height:0!important;}body#top .bg_dark_pc::before{grid-column:1!important;grid-row:1!important;width:100%!important;min-height:0!important;aspect-ratio:4/3!important;background-position:center center!important;}body#top .bg_dark_pc .ft01.pc{grid-column:1!important;grid-row:2!important;padding:38px 20px 44px!important;}body#top .bg_dark_pc .ft01::before{margin-bottom:28px!important;font-size:clamp(30px,8.5vw,38px)!important;}body#top .bg_dark_pc a{min-height:72px!important;}}

/* PC追尾メニューとCTAの重なりを避ける */
@media(min-width:1101px){body#top .bg_dark_pc .ft01.pc{padding-left:40px!important;padding-right:180px!important;}body#top .bg_dark_pc .ft01::before{font-size:clamp(31px,2.7vw,39px)!important;letter-spacing:.045em!important;}}
@media(min-width:751px) and (max-width:1100px){body#top .bg_dark_pc{grid-template-columns:1fr!important;min-height:0!important;}body#top .bg_dark_pc::before{grid-column:1!important;grid-row:1!important;min-height:0!important;aspect-ratio:16/9!important;}body#top .bg_dark_pc .ft01.pc{grid-column:1!important;grid-row:2!important;padding:42px 8vw 52px!important;}body#top .bg_dark_pc .mw1140{max-width:660px!important;}body#top .bg_dark_pc .ft01::before{font-size:40px!important;}}

/* 共通フッターCTA：室内写真に控えめな陰影 */
body#top .bg_dark_pc::before{background:linear-gradient(rgba(10,27,26,.16),rgba(10,27,26,.16)),url("https://auroral.jp/wpn/wp-content/uploads/2026/09/20260327_161642.jpg") center center/cover no-repeat!important;}

/* 共通フッターCTA：写真の明るさを維持し、境界だけに陰影 */
body#top .bg_dark_pc::before{background:url("https://auroral.jp/wpn/wp-content/uploads/2026/09/20260327_161642.jpg") center center/cover no-repeat!important;box-shadow:inset -24px 0 28px rgba(10,27,26,.14)!important;}
@media(max-width:750px){body#top .bg_dark_pc::before{box-shadow:inset 0 -16px 22px rgba(10,27,26,.12)!important;}}

/* 共通フッターCTA：中央配置と織り目柄 2026-09-23 */
body#top .bg_dark_pc{display:flex!important;align-items:center!important;justify-content:center!important;min-height:470px!important;padding:72px 24px!important;background:#123f3b repeating-linear-gradient(135deg,rgba(255,255,255,.055) 0 1px,transparent 1px 28px)!important;}
body#top .bg_dark_pc::before{display:none!important;}
body#top .bg_dark_pc::after{display:block!important;inset:18px!important;border:1px solid rgba(255,255,255,.18)!important;}
body#top .bg_dark_pc .ft01.pc{display:block!important;width:min(800px,100%)!important;margin:0 auto!important;padding:0!important;}
body#top .bg_dark_pc .ft01::before{margin-bottom:40px!important;font-size:clamp(38px,4vw,54px)!important;letter-spacing:.07em!important;}
body#top .bg_dark_pc .mw1140{width:100%!important;}
body#top .bg_dark_pc ul{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
@media(max-width:750px){body#top .bg_dark_pc{min-height:0!important;padding:70px 20px 76px!important;}body#top .bg_dark_pc::after{inset:12px!important;}body#top .bg_dark_pc .ft01::before{margin-bottom:32px!important;font-size:clamp(31px,8.6vw,39px)!important;}body#top .bg_dark_pc ul{grid-template-columns:1fr!important;gap:12px!important;}}

/* 共通フッターCTA：背景の斜め柄を撤去 */
body#top .bg_dark_pc{background:#123f3b!important;background-image:none!important;}

/* PAGE TOP：白い台座を外し、ブランドのイルカと吹き出しに */
body#top a.pagetop{width:140px!important;height:140px!important;right:12px!important;bottom:32px!important;background:url("https://auroral.jp/common/img/logo.png") 12px 41px/700px 101px no-repeat!important;filter:drop-shadow(0 5px 8px rgba(0,0,0,.16))!important;}
body#top a.pagetop img,body#top .ft_new_top img{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;}
body#top a.pagetop::before,body#top .ft_new_top a::before{content:"ページの上へ"!important;position:absolute!important;top:0!important;left:50%!important;transform:translateX(-50%)!important;white-space:nowrap!important;padding:7px 10px!important;border:1px solid #72a9a4!important;border-radius:15px!important;background:#f7f4ee!important;color:#123f3b!important;font-family:"Noto Sans JP","Yu Gothic",sans-serif!important;font-size:12px!important;font-weight:700!important;line-height:1.3!important;letter-spacing:.03em!important;box-shadow:0 3px 9px rgba(0,0,0,.12)!important;}
body#top a.pagetop::after,body#top .ft_new_top a::after{content:""!important;position:absolute!important;top:30px!important;left:50%!important;transform:translateX(-50%)!important;border-left:6px solid transparent!important;border-right:6px solid transparent!important;border-top:7px solid #f7f4ee!important;}
@media(max-width:750px){body#top .ft_new_top{width:110px!important;height:120px!important;top:-61px!important;left:0!important;right:0!important;margin:0 auto!important;}body#top .ft_new_top a{position:relative!important;display:block!important;width:110px!important;height:120px!important;background:url("https://auroral.jp/common/img/logo.png") 9px 39px/560px 80px no-repeat!important;filter:drop-shadow(0 3px 5px rgba(0,0,0,.14))!important;}body#top .ft_new_top a::before{font-size:11px!important;padding:6px 8px!important;}body#top .ft_new_top a::after{top:27px!important;}}

/* PAGE TOP：ロゴ文字が見えないようイルカの表示範囲を調整 */
body#top a.pagetop{width:100px!important;background-position:18px 41px!important;}
@media(max-width:750px){body#top .ft_new_top{width:88px!important;}body#top .ft_new_top a{width:88px!important;background-position:12px 39px!important;}}

/* PAGE TOP：イルカ全体を収める最終調整 */
body#top a.pagetop{width:110px!important;background-position:8px 43px!important;background-size:560px 81px!important;}

/* PAGE TOP：社名の文字が入らない幅で切り出す */
body#top a.pagetop{width:80px!important;}

/* PAGE TOP：指定の透過イルカ画像に差し替え */
body#top a.pagetop{background-image:url("https://auroral.jp/wpn/wp-content/uploads/2026/09/iruka.png")!important;background-size:80px 80px!important;background-position:center 40px!important;background-repeat:no-repeat!important;}
@media(max-width:750px){body#top .ft_new_top a{background-image:url("https://auroral.jp/wpn/wp-content/uploads/2026/09/iruka.png")!important;background-size:76px 76px!important;background-position:center 39px!important;background-repeat:no-repeat!important;}}

/* PAGE TOP：PCで追尾メニューと中心を揃える */
@media(min-width:751px){body#top a.pagetop{right:34px!important;}}

/* PAGE TOP：吹き出し表記を英語に統一 */
body#top a.pagetop::before,body#top .ft_new_top a::before{content:"PAGE TOP"!important;letter-spacing:.12em!important;}

/* Instagram：白い面を水色の背景に重ねる */
body#top .instagram-feed-section{position:relative!important;z-index:2!important;background:#fff!important;box-shadow:0 14px 32px rgba(18,63,59,.12)!important;transform:translateY(32px)!important;}
@media(max-width:750px){body#top .instagram-feed-section{transform:translateY(18px)!important;box-shadow:0 8px 20px rgba(18,63,59,.1)!important;}}

/* Instagram：PCでは下の余白を広げ、波形との重なりを解消 */
@media(min-width:751px){body#top .instagram-feed-section{transform:none!important;padding-bottom:128px!important;}}

/* Instagram：PCで白い面と波形の間に水色の余白を確保 */
@media(min-width:751px){body#top .instagram-feed-section{margin-bottom:64px!important;}}

/* PICK UP：ACFの登録順に表示 */
body#top .pickup ul.clearfix{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:stretch!important;}
/* PAGE TOP dolphin faces inward; keep the label readable. */
body#top a.pagetop,
body#top .ft_new_top a { transform: scaleX(-1) !important; }
body#top a.pagetop::before,
body#top .ft_new_top a::before { transform: translateX(-50%) scaleX(-1) !important; }

/* FAQ layout refinement | 2026-09-25 | FAQ page only */
main:has(.faq_area) .kasou_main02 { display: none; }
.faq_area { background: #f7f8f6; padding: 54px 0 82px; }
.faq_area .mw1140 { width: min(100% - 40px, 1060px); max-width: 1060px; padding: 0; }
.faq_area .ttl_iruka { margin-bottom: 22px; }
.faq_area .read { max-width: 820px; margin: 0 auto 38px; padding-bottom: 0; color: #374447; font-size: 18px; line-height: 1.85; text-align: center; }
.faq_area .listbox { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 14px; padding: 0 0 44px; }
.faq_area .listbox a { float: none; display: flex; align-items: center; width: auto; min-height: 68px; padding: 14px 18px; border: 1px solid #dce3df; background: #fff; color: #284449; font-size: 16px; line-height: 1.55; text-decoration: none; }
.faq_area .listbox a:hover, .faq_area .listbox a:focus-visible { border-color: #66928b; background: #edf3f0; text-decoration: underline; text-underline-offset: 3px; }
.faq_area .faqbox h3 { padding-top: 40px; padding-bottom: 16px; font-size: 22px; line-height: 1.55; scroll-margin-top: 100px; }
.faq_area .faqbox .txt { color: #354044; font-size: 17px; line-height: 1.85; }
.faq_area .faqbox .htmlbox { padding-top: 12px; }
@media (max-width: 700px) {
  .faq_area { padding: 38px 0 60px; }
  .faq_area .mw1140 { width: calc(100% - 30px); }
  .faq_area .read { margin-bottom: 28px; font-size: 16px; line-height: 1.8; }
  .faq_area .listbox { grid-template-columns: minmax(0, 1fr); gap: 8px; padding-bottom: 30px; }
  .faq_area .listbox a { min-height: 58px; padding: 12px 15px; font-size: 15px; }
  .faq_area .faqbox h3 { padding-top: 32px; font-size: 19px; line-height: 1.55; }
  .faq_area .faqbox .txt { font-size: 16px; line-height: 1.8; }
}
