.l-contents__inner:last-child {
    padding-bottom: 0;
}

.c-meta__item--author {
	display: none;
}

/* 基本設定 */
.pt_0{
	padding-top:0!important;
}
.pt_10{
	padding-top:10px!important;
}
.pb_0{
	padding-bottom:0!important;
}
.pb_10{
	padding-bottom:10px!important;
}
.mt_0{
	margin-top:0!important;
}
.mb_0{
	margin-bottom:0!important;
}
.mr_0{
	margin-right: 0!important;
}
.ml_0{
	margin-left: 0!important;
}
.mt_10{
	margin-top:10px!important;
}
.mb_10{
	margin-bottom:10px!important;
}
.z_0 {
    z-index: 0;
}
.z_1 {
    z-index: 1;
}
.p_ab{
	position: absolute;
}
.p_rel{
	position: relative;
}
.d_flex{
	display:flex;
}
.d_flex.f_wrap {
    flex-wrap: wrap;
}
.inline_b{
	display:inline-block;
}
.js_sb{
	justify-content:space-between;
}
.js_fs{
	justify-content:flex-start;
}
.of_hd{
	overflow: hidden;
}
.smb-panels__item__action>a:focus:after {
    outline: none;
    outline-offset: 0px;
}
.tate{
	writing-mode: vertical-rl;
}
/* 基本設定 終わり*/
/* アイコン */
.svg-inline--fa {
    margin-right: 4px;
}

.c-page-top .svg-inline--fa {
    margin-right: 0;
}

 .p-global-nav--hover-extend-underline .c-navbar__item.cta:hover>a:after {
    width: 0;
}
/* アイコン 終わり*/

/* グローバルナビ */
 .l-1row-header .c-fluid-container {
    padding-right: 0;
}
[data-scrolled=false] .l-header--sticky-overlay-colored-lg .p-global-nav .c-navbar__item>a {
    color: #fff;
} 
ul#menu-g_nav {
    height: 100px;
}
.p-global-nav .c-navbar__item[aria-haspopup=true]:before{
	display : none;
}
li.g_nav_sab {
    border-bottom: 1px solid #ffffff80;
}
.p-global-nav .c-navbar__item.header_cta>a:hover {
    opacity: 0.9;
    transition: 0.5s;
}

@media(max-width:1280px){
	[data-scrolled=false] .l-header--sticky-overlay-colored-lg .p-global-nav .c-navbar__item>a {
    color: #fff;
    padding-right: 15px;
    padding-left: 15px;
}
}
@media (min-width: 1024px) and (max-width:1280px){
.l-1row-header__branding {
    max-width: 250px;
}	
}
/*@media (max-width: 1024px){
	ul#menu-sp_nav{
		display: flex;
		flex-wrap: wrap;
		max-width: 780px;
		margin-left: auto;
		margin-right: auto;
		justify-content: space-between;
	}
	ul#menu-sp_nav li {
    width: 48%;
    font-size: 1rem;
}*/
ul#menu-sp_nav li.w_100 {
    width: 100%;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
	position: relative;
}
	ul#menu-sp_nav li.w_100::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
}ul#menu-sp_nav li.sp_menu_cta {
    text-align: center;
    background-color: #fff;
    color:var(--wp--preset--color--sm-accent);
}
	ul#menu-sp_nav li.sp_menu_cta.tel {
    font-family: 'EB Garamond';
    font-size: 1.4rem;
}
		ul#menu-sp_nav li.sp_menu_cta.con {
    font-family: 'Zen Antique Soft';
    font-size: 1.2rem;
}
ul#menu-sp_nav li.sp_menu_cta {
    text-align: center;
    background-color: #fff;
    color:var(--wp--preset--color--sm-accent);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	padding: 20px 10px;
	line-height: 1;
}
	ul#menu-sp_nav li.sp_menu_cta a svg {
    display: block;
    margin-right: 0;
    width: 100%;
	font-size: 1.1rem;
		margin-bottom: 7px;
}
}  
/* グローバルナビ終わり */
/* 下層ページヘッダー */
/*.c-page-header {
    background-color: #ddd;
}
.c-page-header[data-has-image=true] {
    height: unset;
}*/
.c-page-header[data-has-image=true] .c-page-header__content {
    color: unset;
}
/*.c-page-header__bgimage>img, 
.c-page-header__bgimage>picture>img{
	display: none;
}*/

/* プライバシーポリシー 
#privacy h3 {
    margin-bottom: 10px !important;
    padding-left: 10px;
    border-left: solid 3px var(--wp--preset--color--sm-accent);
    font-weight: 700;
}*/

/*--- お問い合わせフォーム ---*/
/* SP版の確認画面ボタンボタン余白 */
.smf-action .smf-button-control__control 
{ margin-bottom: 20px; }

/* 投稿(シンプル)のSPレスポンシブ */
@media screen and (max-width: 639px) {
    .c-entries--simple .c-entry-summary__content {
        display: block;
    }

    .c-entries--simple .c-entry-summary__figure {
        float: inherit;
        width: 100%;
        margin-bottom: 20px;
    }
}



/*
#####################
	common
#####################
*/
html {
	overflow-x: clip;
}
body {
	font-family: "hiragino-kaku-gothic-pron", sans-serif;
	font-style: normal;
	letter-spacing: 0.1em;
	font-feature-settings: "palt";
}

h2, h3, h4 {
	font-family: "Shippori Mincho", serif;
	writing-mode: vertical-rl;
	font-weight: 300;
	letter-spacing: 0.2em;
	font-feature-settings: initial;
}
h2 {
	font-size: clamp(18px, 2vw, 26px);
}
.mincho {
	font-family: "Shippori Mincho", serif;
}
.en {
	font-family: brandon-grotesque, sans-serif;
}
a, a img {
	transition: transform 0.3s ease, opacity 0.3s ease !important;
	overflow: hidden;
}
a:hover.smb-btn {
	background-color: #80996d;
}
a:hover, a:hover img {
	opacity: 0.6;
}
a:hover img:not(.custom-logo, footer img) {
	transform: scale(1.2);
}
.smb-btn {
	font-size: clamp(12px, 1.2vw, 16px);
}
.horizontal {
	writing-mode: horizontal-tb;
	letter-spacing: 0.1em;
}
.vertical {
	writing-mode: vertical-rl;
	font-feature-settings: initial;
}
span.num_beside {
	text-orientation: upright;
}
span.num_beside2 {
	text-combine-upright: all;
	padding-bottom: .7rem;
}
.tel-txt {
	font-size: clamp(30px, 3vw, 38px);
	font-weight: 500;
	margin: 0;
	line-height: 1.2;
	text-align: center;
}
.tel-txt span {
	font-size: 70%;
}
.smb-btn, .smf-action .smf-button-control__control {
	border-radius: calc(infinity * 1px);
}
.btn-star {
	position: relative;
}
:is(.btn-star, .smf-action .smf-button-control__control)::after {
    content: '';
	background: url(/wp-content/uploads/2026/08/star.svg) center / contain no-repeat;
    position: absolute;
    top: 10px;
    right: 10px;
	width: 13px;
	height: 12px;
}
.wp-block-button__link {
	font-weight: 700;
}
.wp-block-button__link::before {
	mask: url(/wp-content/uploads/2026/08/star.svg) center / contain no-repeat !important;
	background-color: currentColor !important;
	width: 13px !important;
	height: 12px !important;
}
.wp-block-button__link::after {
	height: 2px !important;
}
.row-reverse {
	flex-direction: row-reverse;
}
.green_enclosed, .pink_enclosed {
	font-weight: 700;
	padding: .5rem 1rem;
	border: 1px solid;
	border-radius: calc(infinity * 1px);
	width: fit-content;
	background-color: #fff;
}
.green_enclosed {
	border-color: #5a6c4b;
}
.pink_enclosed {
	border-color: #e794b7;
}
.mosaic {
	opacity: 0;
	filter: blur(12px);
	transform: scale(1.02);
}
.mosaic.is-visible {
	animation: mosaicReveal 1.2s ease-out forwards;
}
@keyframes mosaicReveal {
  0% {
    opacity: 0;
    filter: blur(12px);
    transform: scale(1.02);
  }
  60% {
    opacity: 1;
    filter: blur(4px);
  }
  100% {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
}
ul.list-mark {
	list-style: none;
	padding: 0;
}
ul.list-mark li {
	position: relative;
	padding-left: 40px;
}
ul.list-mark li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 26px;
	height: 23px;
	background: url("/wp-content/uploads/2026/08/list-icon.svg") center / contain no-repeat;
}
.sub-heading-green {
	border: 1px solid var(--wp--preset--color--sm-sub-accent);
	background-color: #fff;
	color: var(--wp--preset--color--sm-sub-accent);
	font-size: 0.875rem;
	border-radius: 999px;
	padding: .2rem 1rem;
	display: inline-block;
}
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
	text-shadow: none;
	text-align: left;
	font-size: 1rem;
	font-family: "Shippori Mincho", serif;
}



/*
#####################
	header
#####################
*/
.l-header--sticky-lg {
	box-shadow: none;
}
.c-row {
	margin: 0;
}
.c-row>.c-row__col {
	padding: 0;
}
.c-site-branding__title {
	width: 15vw;
}
.c-navbar__item {
	align-items: center;
}
.p-global-nav .c-navbar__item>a {
	font-size: clamp(6px, 1vw, 13px);
	padding-left: 1vw;
	padding-right: 1vw;
}
.p-global-nav .c-navbar__item.header_cta > a,
.p-global-nav .c-navbar__item.header_cta > a > span {
	display: block;
}
.p-global-nav .c-navbar__item.header_cta > a {
	color: #fff;
	text-align: left;
}
.p-global-nav .c-navbar__item.header_cta p {
	font-weight: 700;
	text-align: center;
}
.p-global-nav .c-navbar__item.header_cta span.sub_txt {
	font-size: clamp(8px, 2vw, 11px);
	font-weight: 300;
	line-height: 1.2;
	display: inline-block;
}
.p-global-nav .c-navbar__item.header_cta.tel {
	background-color:var(--wp--preset--color--sm-sub-accent);
	transition: opacity 0.3s ease;
}
.p-global-nav .c-navbar__item.header_cta.tel p {
	font-size: clamp(16px, calc(13px + 0.8vw), 20px);
}
.p-global-nav .c-navbar__item.header_cta.contact {
	background-color:var(--wp--preset--color--sm-accent);
	transition: opacity 0.3s ease;
}
.p-global-nav .c-navbar__item.header_cta.tel:hover,
.p-global-nav .c-navbar__item.header_cta.contact:hover {
	opacity: 0.6;
}
.p-global-nav .c-navbar__item.header_cta.contact p {
	font-size: 1rem;
}
.p-global-nav--hover-extend-underline .header_cta.c-navbar__item>a:after {
	content: none;
}
/*　ドロワーナビゲーション
-------------------------------------*/
.u-invisible-lg-up {
	margin-right: 3%;
}
.c-drawer .c-hamburger-btn__bar {
	background-color: #80996d;
}
.c-drawer {
	background-color: #fff;
	color: var(--wp--preset--color--sm-accent);
}
.c-drawer__inner {
	padding-left: 10vw;
	padding-right: 10vw;
}
.c-drawer a {
	color: var(--wp--preset--color--sm-accent);
	font-size: 16px;
}
.c-drawer__menu img {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	display: block;
}
.c-drawer__menu .sub_txt {
	display: block;
	text-align: center;
	font-size: 13px;
}
.c-hamburger-btn__label,
.c-drawer__toggle {
	display: none;
}
.c-drawer[aria-hidden="false"] .c-drawer__submenu {
	display: block;
	height: auto;
	visibility: visible;
}
.c-drawer__subitem {
	padding-bottom: 0;
}
.c-drawer__menu .menu-item-93,
.c-drawer__menu img {
	margin-bottom: 2rem;
}
.c-drawer__menu .menu-item-93 a {
	    background-color: var(--wp--preset--color--sm-accent);
    border-radius: calc(infinity * 1px);
    text-align: center;
    padding: .5rem 0;
    color: #fff;
}
.c-drawer__menu .tel-txt {
	margin-bottom: .5rem;
}



/*
#####################
	top
#####################
*/
/*　MV　*/
.top-mv_block {
	height: calc(100vh - 100px);
}
.smb-spider-slider__figure-wrapper img {
	width: auto;
	height: calc(100vh - 100px);
	object-fit: cover;
}
.top-mv_info-column,
.top-mv_img-column,
.top-concept_block {
	position: relative;
}
.top-mv_info-column {
	padding-top: 6vh;
}
.top-mv_info-column:before,
.l-footer:before {
	content: 'HOSHINO';
	writing-mode: vertical-rl;
	color: #f5f7f3;
	font-size: 10vw;
	font-family: "brandon-grotesque", sans-serif;
	font-weight: 100;
	font-style: normal;
	position: absolute;
	left: 78%;
	top: 5%;
	z-index: -1;
	height: 100vh;
}
:is(.top-mv_block, .top-concept_block) h2 {
	font-size: clamp(20px, 2vw, 32px);
	font-weight: 700;
}
.top-mv_block h3 {
	font-size: clamp(13px, 1.5vw, 21px);
}
.top-mv_info-box {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 22vw;
}
.top-mv_info-box p {
	font-size: clamp(13px, 1.1vw, 16px);
}
:is(.top-mv_info-box, .top-cta2_info-box) .tel-txt {
	font-size: clamp(20px, 2.3vw, 42px);
}
a.top-mv_subsidy-box {
	position: absolute;
	background: linear-gradient(0deg, #343f2c 30%, transparent 45%),
		url(/wp-content/uploads/2026/08/consultation_img01.jpg) bottom center / 120% no-repeat;
    bottom: 50px;
    right: 50px;
	width: 25vw;
	aspect-ratio: 4 / 3;
	z-index: 2;
	box-shadow: 0 0 8px gray;
	color: #fff;
	padding: 2vw;
	text-decoration: none;
}
a:hover.top-mv_subsidy-box {
	opacity: 0.6;
}
.top-mv_subsidy-box h3 {
	padding-top: 55%;
	font-weight: 700;
	font-size: clamp(10px, 1.1vw, 21px);
	letter-spacing: 0.05em;
}
.top-mv_subsidy-box h3.btn-star:after {
	top: 12vw;
	right: -10px;
}
.top-mv_subsidy-box p {
	margin-top: 0;
	font-size: clamp(10px, 1vw, 16px);
	letter-spacing: 0.05em;
}
.work-column.wp-block-latest-posts.is-grid {
	gap: 0;
}
.work-column li {
	position: relative;
	padding: 0;
}
.work-column .c-entry-summary__header {
	margin-bottom: 0;
}
.work-column h3 {
	font-family: "Shippori Mincho", serif;
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	background: linear-gradient(0deg, #0006, #0000);
	display: block;
	width: 100%;
	padding: 1rem;
	writing-mode: horizontal-tb;
	letter-spacing: 0.1em;
}
/*　星野建設の家づくり　*/
:is(.top-concept_block, .concept-mv_img-box) figure {
	position: absolute;
}
:is(.top-concept_block, .concept-mv_img-box) img {
	min-height: 100%;
	object-fit: cover;
}
.top-concept_img01,
.concept-mv_img01 {
	aspect-ratio: 1 / 1;
	left: 0;
	top: 100px;
	width: clamp(110px, 25vw, 345px);
}
.top-concept_img02,
.concept-mv_img02 {
	aspect-ratio: 5 / 3;
	left: 25%;
	bottom: -450px;
	width: clamp(343px, 32vw, 515px);
}
.top-concept_img03,
.concept-mv_img03 {
	aspect-ratio: 1 / 1;
	right: 0;
	bottom: -20vh;
	width: clamp(150px, 25vw, 200px);
}
/*　星野建設ができること　*/
.top-service_panel {
	color: #fff !important;
	position: sticky !important;
	top: 0;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
}
.panel1 { z-index:1; }
.panel2 { z-index:2; }
.panel3 { z-index:3; }
.top-service_panel h3 {
	font-size: 1.75rem;
	font-weight: 700;
}
.top-service_panel p {
	text-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
}
/*　補助金活用のご案内　*/
.top-subsidy_block {
	border: 1px solid #5a6c4b;
	padding: 1rem;
	max-width: 1100px;
}
.top-subsidy_inner-block {
	background: linear-gradient(to left, #f9fbf7 45%, transparent 57%), 
		url(/wp-content/uploads/2026/08/consultation_img01.jpg) center left -5rem / 72% no-repeat;
	padding: 5rem 2rem 4rem;
	border: none;
}
.top-subsidy_box {
	background-color: rgba(90, 108, 75, 0.8);
	position: relative;
	color: #fff;
	padding: 2rem 1.5rem 1.5rem;
	margin-left: 25vw !important;
}
.top-subsidy_box .green_enclosed {
	position: absolute;
	top: -1rem;
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
}
.top-subsidy_title {
	font-size: clamp(16px, 2.8vw, 26px);
	font-weight: 700;
}
.top-subsidy_inner-block {
	position: relative;
	transition: transform 0.4s ease;
}
.top-subsidy_inner-block:hover {
	transform: scale(1.01);
}
.top-subsidy_box .pink_enclosed {
	font-size: clamp(14px, 1.1vw, 16px);
	white-space: nowrap;
}
/*　CTA　*/
.top-cta_block {
	overflow: hidden;
}
.top-cta_info-box {
	border-top: 1px solid #80996d;
	border-bottom: 1px solid #80996d;
	width: 90%;
	margin-left: auto !important;
	margin-right: 0 !important;
}
.top-cta_info-box h2 {
	font-size: clamp(16px, 2vw, 21px);
	font-weight: 700;
}
.top-cta_img-box,
.top-flow_column {
	position: relative;
}
.top-cta_img-box p {
	position: absolute;
	top: 1vw;
	right: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: clamp(14px, 0.8vw, 16px);
	font-weight: 700;
	width: clamp(100px, 15vw, 178px);
	aspect-ratio: 1 / 1;
	background-color: #fff;
	border: 1px solid #e7b7cb;
	border-radius: calc(infinity * 1px);
	z-index: 0;
	line-height: 1.4;
	letter-spacing: 0.05em;
}
.top-cta_img-box img {
	position: relative;
	z-index: 2;
	margin-top: 1rem;
	width: 70%;
}
/*　スタッフ　*/
.staff_block .spider__canvas {
	gap: 5rem !important;
}
.staff_block img {
	width: 120%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
}
.staff_block h3 {
	font-size: clamp(18px, 1.8vw, 28px);
	font-weight: 700;
}
.staff_block h4 {
	font-size: 1rem;
	font-weight: 700;
}
/*　現場ブログ　*/
.top-blog_block ul {
	border-bottom: 1px solid #80996d;
}
.top-blog_block ul li {
	margin: 0 !important;
	border-top: 1px solid #80996d;
}
.top-blog_block .wp-block-columns {
	margin-bottom: 0;
}
.top-blog_block h5 {
	font-size: 1.125rem;
	font-weight: 300;
}
.top-blog_block :is(time, p),
.top-column_block p {
	font-size: 0.875rem;
}
/*　竣工までの流れ　*/
.flow-icon_box {
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 70px;
	max-width: 70px;
	border-radius: 50%;
	padding: 0;
}
.flow-icon_box svg {
	aspect-ratio: 1 / 1;
	width: 45%;
	height: 45%;
	margin: 0 !important;
}
.top-flow_column .wp-block-column {
	padding-left: 0;
	padding-right: 0;
}
.top-flow_column::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	height: 2px;
	background: #80996d;
	z-index: -1;
}
.top-flow_column p {
	font-size: clamp(14px, 1.5vw, 18px);
}
/*　CTA2　*/
.top-cta2_box {
	padding-right: 13vw;
	background: linear-gradient(rgba(90, 108, 75, 0.75), rgba(90, 108, 75, 0.75)),
		linear-gradient(90deg, transparent 0%, transparent 30%, #80996d 45%),
		url(/wp-content/uploads/2026/08/consultation_img01.jpg) left -10vw center / 70% no-repeat, #80996d;
	background-blend-mode: normal;
}
.top-cta2_box h3 {
	font-size: clamp(18px, 2vw, 24px);
	font-weight: 700;
	width: fit-content;
	border-top: 1px solid #80996d;
	border-bottom: 1px solid #80996d;
	padding: .5rem 1rem;
}
.top-cta2_info-box {
	background-color: rgba(355, 355, 355, 0.8);
	padding: 3rem 0;
}
.top-cta2_box ul li {
	font-size: clamp(14px, 1.5vw, 18px);
	margin-top: 1.2rem;
}
.top-cta2_box .smb-btn {
	padding-left: 4vw;
	padding-right: 4vw;
}
/*　施工対応エリア　*/
.top-area_block > div {
	border: 1px solid #80996d;
	padding: 3rem 40% 3rem 3rem;
	background: url("/wp-content/uploads/2026/08/map.png") top -10rem right -21rem / 100% no-repeat;
	margin-bottom: 10rem;
}
.top-area_block h3 {
	font-size: 1.5rem;
	border-bottom: 1px solid #e5e5e5;
	padding-bottom: .5rem;
}



/*
#####################
	page
#####################
*/
.l-contents__inner:first-child {
	padding-top: 0;
}
.page .c-entry__header {
	display: none;
}
.page-mv_block,
.page-mv_main-box,
.concept-mv_img-box {
	position: relative;
}
.page-mv_main-box img {
	width: 100%;
}
h2.page-main_copy {
	font-size: clamp(20px, 4vw, 60px);
	position: absolute;
	top: 30vw;
	right: 12vw;
	z-index: 2;
	height: 1000px;
}
.page-mv_main-box h3 {
	font-size: clamp(18px, 2.5vw, 28px);
	font-weight: 700;
}
.grid_block .wp-block-group {
	display: flex;
	flex-direction: column;
	justify-content: center;
	aspect-ratio: 1 / 1;
	counter-increment: item;
	position: relative;
	margin-bottom: 1.5rem;
}
.grid_block .wp-block-group::before,
.flow-main_box h3::before {
	content: counter(item, decimal-leading-zero);
	font-size: clamp(70px, 5vw, 100px);
	font-style: italic;
	font-family: brandon-grotesque, sans-serif;
	font-weight: 100;
	color: #edc1d4;
	position: absolute;
	left: 2%;
	top: -2rem;
	line-height: 1;
}
:is(.grid_block, .grid2_block) h3 {
	font-size: clamp(16px, 1.5vw, 21px);
	font-weight: 700;
	line-height: 1.5;
}
.page-cta_block h2 {
	font-weight: 700;
}
.sub-info_box h4 {
	font-size: 1.5rem;
	border-bottom: 1px solid #e5e5e5;
	padding-bottom: .7rem;
}
.underline_ttl {
	font-weight: 700;
}
.underline_ttl::after {
	content: '';
	display: block;
	width: 40px;
	height: 3px;
	background-color: #80996d;
	margin-top: .6rem;
}
.anchor-link_block .wp-block-group {
	gap: 0;
}
.anchor-link_block p + p::before {
	content: "｜";
	margin: 0 20px;
}
.anchor-link_block p a {
	text-decoration: none;
}


/*　事業内容
-------------------------------------*/
.marquee__block {
	overflow: hidden;
}
.marquee__track {
	display: flex;
	flex-wrap: nowrap;
	width: max-content;
	will-change: transform;
	animation: marquee-scroll 70s linear infinite;
}
.marquee__track.marquee--reverse {
	animation-direction: reverse;
}
.marquee__item {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
}
.marquee__item img {
	width: 570px;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	display: block;
	flex-shrink: 0;
}
@keyframes marquee-scroll {
	from { transform: translateX(0); }
	to { transform: translateX(calc(-1 * var(--marquee-width))); }
}
.service-main_box h2,
.service-subsidy_box h3 {
	font-weight: 700;
}
:is(.service01, .service03) p,
.concept-comfort_p {
	padding-right: 35%;
}
.service02 p {
	padding-left: 35%;
}
.service-subsidy_column div:nth-child(2) {
	margin-left: -1px;
}
:is(.service-subsidy_box, .recruit-preferred_block) ul {
	columns: 2;
}

/*　新築・注文住宅
-------------------------------------*/
.custom-mv_column {
	margin-top: 8rem;
}
.custom-mv_column p {
	width: 35%;
	margin: 14vw 1.5rem 0;
}
.custom-mv_img01 {
	width: clamp(80px, 25vw, 160px);
	margin: 2rem 0 0 !important;
}
.custom-mv_img02 {
	width: clamp(180px, 25vw, 370px);
	margin: 19vw 0 0 !important;
}
.custom-mv_img02 img {
	aspect-ratio: 4 / 2.7;
	object-fit: cover;
}
.custom-6point_block {
	counter-reset: item;
}
.custom-6point_block p {
	margin-right: 0 !important;
	margin-bottom: 3rem !important;
	font-size: clamp(15px, 1.5vw, 18px);
}
.custom-6point_block .grid_block img {
	max-width: 100px;
	max-height: 100px;
	min-width: 70px;
	min-height: 70px;
	aspect-ratio: 1 / 1;
}
.panel-info_column .c-row {
	gap: 6%;
}
.panel-info_column .c-row>.c-row__col {
	padding-left: 0 !important;
	max-width: 47%;
	margin-bottom: 5rem;
}
.panel-info_column h3 {
	font-weight: 700;
}
.panel-info_column :is(p, li) {
	font-size: clamp(13px, 1vw, 14px);
}
.panel-info_column p {
	padding-right: 1.5rem;
	text-align: justify;
}

/*　リフォーム・リノベーション
-------------------------------------*/
.reform-mv_img01 {
	width: clamp(110px, 25vw, 225px);
	margin: 5rem 0 0 !important;
}
.reform-mv_p {
	width: 45vw;
	max-width: 450px;
	position: absolute;
	bottom: 9vw;
	left: 23vw;
}
.reform-mv_img02 {
	position: absolute;
	width: clamp(280px, 35vw, 405px);
	left: 40vw;
	bottom: -14rem;
}
:is(.reform-menu_block, .comfort-menu_block) .wp-block-media-text__media img {
	aspect-ratio: 16 / 10;
	object-fit: cover;
}
:is(.reform-menu_block, .comfort-menu_block) .wp-block-media-text__content {
	padding: 0 3vw !important;
}
.reform-menu_block h3 {
	font-size: 1.75rem;
	font-weight: 700;
}
.sme-badge {
	color: var(--smb-section--color);
	font-weight: 300;
	border-radius: 0;
	margin: 0 1rem 1rem 0;
}
/*.reform-case_column .smb-panels__item__figure>img {
	aspect-ratio: 3 / 4;
	object-fit: cover;
}
.reform-case_column .smb-panels__item__body {
	padding: .5rem 0 0;
	text-align: left;
}
.reform-case_column .smb-panels__item {
	box-shadow: none;
}
.reform-case_column .c-row {
	gap: 5%;
}
.reform-case_column .c-row>.c-row__col {
	padding-left: 0 !important;
	max-width: 30%;
	margin-bottom: 5rem;
}*/

/*　星野建設の家づくり
-------------------------------------*/
.concept-mv_img01 {
	top: -20rem;
}
.concept-ingenuity_block h3 {
	padding-top: 4rem;
}
.concept-ingenuity_block .grid_block p {
	font-size: clamp(13px, 1vw, 14px);
}
.concept-comfort_block :is(h2, h3) {
	font-weight: 700;
}
.drawing_box {
	aspect-ratio: 1 / 1;
	display: flex;
	position: relative;
}
.drawing_box img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.drawing_box p {
	position: absolute;
	left: 3%;
	bottom: 3%;
	margin: 0;
}
.drawing_box:first-child {
	margin-top: 8rem;
}
/*　竣工までの流れ
-------------------------------------*/
.flow_block {
	display: grid;
	grid-template-columns: 200px 1fr;
	gap: 50px;
	counter-reset: item;
}
.flow-menu_column {
	position: sticky;
	top: 10rem;
	align-self: start;
}
.flow-menu_column a {
	display: block;
	padding: 8px 0 8px 15px;
	font-size: 0.938rem;
	text-decoration: none;
	border-left: 2px solid var(--wp--preset--color--sm-sub-accent);
	transition: color 0.2s, border-color 0.2s;
}
.flow-menu_column a.is-active {
	color: #80996d;
	font-weight: 700;
	border-left-color: #80996d;
}
.flow-menu_column ol {
	list-style: none;
	counter-reset: item;
	padding-left: 0;
}
.flow-menu_column ol li {
	counter-increment: item;
	position: relative;
	padding-left: 2.5em;
}
.flow-menu_column ol li::before {
	content: counter(item, decimal-leading-zero);
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	font-family: brandon-grotesque, sans-serif;
	font-size: 1.313rem;
	font-weight: 400;
	color: #80996d;
	line-height: 1;
}
.flow-main_box {
	border: 1px solid #80996d;
	padding: 2rem;
	counter-increment: item;
	margin-bottom: 5rem;
}
.flow-main_box h3::before {
	position: relative;
	font-size: 52px;
	top: .5rem;
	left: 0;
	margin-right: 1.5rem;
}

/*　補助金について
-------------------------------------*/
.subsidy-main_block p {
	font-size: 0.875rem;
}
.subsidy-main_box h4 {
	border: 1px solid #e794b7;
	background-color: #fff;
	color: #e794b7;
	font-size: 1rem;
	border-radius: 999px;
	padding: .4rem 2rem;
	width: fit-content;
	font-family: "hiragino-kaku-gothic-pron", sans-serif;
	font-weight: 700;
	margin: -3rem auto 2rem !important;
}
.subsidy-main_box .grid_block .wp-block-group::before {
	content: none;
}
.smb-accordion__item__body:not(.editor-styles-wrapper .smb-accordion__item__body, .customize-control-sidebar_block_editor .smb-accordion__item__body) {
	display: block;
	padding-top: 0;
	padding-bottom: 0;
	height: 0;
	opacity: 0;
	overflow: hidden;
	transition: padding .2s ease-out, height .2s ease-out, opacity .2s;
}
.smb-accordion .smb-accordion__item__control:checked+.smb-accordion__item__title+.smb-accordion__item__body {
	padding: var(--_padding1);
	height: auto;
	opacity:1;
}
.wp-block-snow-monkey-blocks-accordion {
	border-bottom: 1px solid #e5e5e5;
	padding-bottom: 2rem;
}
.smb-accordion__item {
	border-top: 1px solid #e5e5e5;
}
.smb-accordion__item__title {
    color: var(--smb-section--color);
    background-color: var(--smb-accordion-item--color);
	font-size: 1.125rem;
	padding-top: 2rem;
}
.smb-accordion__item__body p {
	padding-left: 2rem;
	padding-right: 1rem;
	text-align: justify;
}
:root :where(.smb-accordion.is-style-snow-monkey-144107) > .smb-accordion__item > .smb-accordion__item__title::before {
	font-family: brandon-grotesque, sans-serif;
	font-size: 30px;
	font-weight: 500;
	color: #e794b7;
	margin-top: -.5rem;
}
:root :where(.smb-accordion.is-style-snow-monkey-144107) > .smb-accordion__item > .smb-accordion__item__title > .smb-accordion__item__title__icon::before {
	background-color: #80996d;
	width: 15px;
	height: 15px;
}

/*　採用情報
-------------------------------------*/
.anchor-link_block .is-layout-grid p {
	padding: 0;
	margin: .7rem 0 !important;
	line-height: 1;
}
.anchor-link_block .is-layout-grid p + p:not(:nth-child(6)) {
	border-left: 1px solid var(--wp--preset--color--sm-text);
}
.anchor-link_block .is-layout-grid p + p::before {
	content: none;
}
.recruit-work_block .grid_block .wp-block-group {
    justify-content: flex-start;
    aspect-ratio: auto;
    padding-top: 5rem;
}
.recruit-work_block .grid_block h3 {
	line-break: strict;
}
.recruit-work_block .grid_block p {
	font-size: 0.875rem;
	margin-top: 1rem;
}
.recruit-beginner_box {
	padding: 2.5vw;
}
.recruit-beginner_box h3 {
	font-size: clamp(16px, 2vw, 24px);
	font-weight: 700;
	position: relative;
	width: fit-content;
}
.recruit-beginner_box h3::before,
.recruit-beginner_box h3::after {
	position: absolute;
	bottom: 0;
}
.recruit-beginner_box h3::before {
	content: '＼';
	left: -3rem;
}
.recruit-beginner_box h3::after {
	content: '／';
	right: -3rem;
}
.recruit-requirements_block .grid_block .wp-block-group {
	background-color: rgba(245, 247, 253, 0.3);
}
:is(.recruit-requirements_block, .recruit-ideal_block) .grid_block .wp-block-group p {
	font-size: clamp(16px, 1.5vw, 18px);
	font-weight: 700;
}
:is(.recruit-requirements_block, .recruit-ideal_block) .wp-block-group::before {
	content: none;
}
.recruit-ideal_block .grid_block .wp-block-group {
	padding: 0;
}
.recruit-requirements_block img {
	filter: blur(2px);
}
.recruit-preferred_block ul li {
	font-size: clamp(16px, 1.3vw, 18px);
	font-weight: 700;
	background-color: #f9fbf7;
	padding: 1rem 1rem 1rem 3.5rem;
}
.recruit-preferred_block ul li::before {
	left: 3%;
}
.form_block h3 {
	font-size: clamp(18px, 2vw, 28px);
}



/*
#####################
	blog
#####################
*/
.c-entry__header, :is(.page-id-23, .privacy-policy) .c-entry__header {
	display: block;
}
.c-entry__title {
	font-family: "Shippori Mincho", serif;
	font-weight: 300;
	letter-spacing: 0.2em;
	padding: 5rem 0 3rem;
}
.single h1.c-entry__title {
	padding-bottom: 1rem;
	font-weight: 700;
}
h2.c-entry-summary__title {
	writing-mode: horizontal-tb;
	letter-spacing: 0.1em;
	font-size: 1.125rem;
	font-weight: 700;
}
.c-entry-summary__meta {
	justify-content: flex-start;
	margin-top: 0;
	font-weight: 300;
	color: #888888;
}
.c-entry-summary__figure {
	margin-bottom: 0;
}
.c-entry-summary__content {
	font-size: 0.875rem;
	color: #888888;
}
.archive .c-meta__item--published,
.c-meta__item--modified {
	display: none;
}
.single .c-entry__body img {
	max-width: 60%;
	margin-left: auto;
	margin-right: auto;
}
.p-related-posts__title.c-entry-aside__title,
.c-entries--panel h3 {
	writing-mode: horizontal-tb;
	letter-spacing: 0.1em;
}
.p-related-posts__title.c-entry-aside__title {
	margin-top: 10rem;
}



/*
#####################
	form
#####################
*/
.smf-form--simple-table .smf-item:not(:last-child) {
	border-bottom: 1px solid #e5e5e5;
}
.smf-form--simple-table .smf-item__col--label {
	flex: 0 0 20em;
	max-width: 20em;
}
.smf-item__label {
	margin-top: var(--_margin-2);
	margin-right: 1rem;
}
.smf-item__col.smf-item__col--label {
	display: flex;
	align-items: flex-start;
}
.smf-action {
	text-align: center;
}
.smf-action .smf-button-control__control {
	background-image: none;
	background-color: var(--accent-color);
	border: none;
	padding: .7rem 5rem;
	color: white;
	margin-top: 2rem;
}
.smf-checkbox-control__control {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.smf-checkbox-control__control:checked + .smf-checkbox-control__label::before {
	content: "\f00c";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 20px;
	color: #e794b7;
}
.smf-checkbox-control__label::before {
    content: '';
    display: inline-block;
    width: 27px;
    height: 27px;
    border: 1px solid #e794b7;
    border-radius: 50%;
    background-color: #fff;
    transition: all 0.3s ease;
    position: relative;
    text-align: center;
    line-height: 27px;
	margin-right: 1rem;
}
.smf-form .smf-text-control__control {
	width: 30vw;
}
.smf-form .smf-text-control__control, .smf-form .smf-textarea-control__control {
	border: none;
	border-radius: 0;
}
.smf-item__description {
	background-color: var(--wp--preset--color--sm-accent);
	width: fit-content;
	color: #fff;
	padding: .1rem .5rem;
	font-size: 0.75rem;
}
.smf-button-control__control[data-action="back"] {
	background-color: #6d6c6b;
}
input.smf-checkbox-control__control {
	display: none !important;
}
.smf-checkbox-control__label {
	display: flex;
}



/*
#####################
	footer
#####################
*/
.l-footer {
	border: none;
	padding-bottom: 8rem;
	position: relative;
	margin-top: 5rem;
}
.l-footer:before {
	content: 'HOSHINO HOSHINO';
	font-size: 14vw;
	writing-mode: horizontal-tb;
	left: -1%;
	top: 45%;
	overflow: hidden;
	white-space: nowrap;
}
.l-footer-widget-area .widget_nav_menu .sub-menu {
	display: block !important;
	border: none;
	margin-top: 0;
}
.l-footer-widget-area .widget_nav_menu .sub-menu li {
	padding-left: 1rem;
}
.l-footer-widget-area .widget_nav_menu .sub-menu li::before {
	content: '-';
}
.l-footer-widget-area .widget_nav_menu .menu-item-has-children > .children-expander,
.c-copyright {
	display: none;
}
.l-footer-widget-area .c-row {
	gap: 5rem;
	flex-wrap: nowrap;
}
.l-footer-widget-area img {
	width: 275px;
}



/*************************** レスポンシブ開始　***************************/

/*　PC 〜1024px
-------------------------------------*/
@media (width <= 1024px) {
	html { font-size: clamp(14px, 1.1vw, 16px); }
	body { font-size: 1rem; }
	
	.top-cta2_box {
		padding-right: 0 !important;
		background: linear-gradient(rgba(90, 108, 75, 0.75), rgba(90, 108, 75, 0.75)),
			linear-gradient(90deg, transparent 0%, transparent 50%, #80996d 65%),
			url(/wp-content/uploads/2026/08/consultation_img01.jpg) left -10vw center / cover no-repeat, #80996d;
	}
	.custom-mv_column {
		flex-wrap: wrap !important;
	}
	.custom-mv_column p {
		width: 65%;
	}
	.reform-mv_p {
		left: 30vw;
	}
	.concept-ingenuity_block .grid_block .wp-block-group {
		padding-top: 3rem;
	}
	.concept-ingenuity_block h3 {
		padding-top: 0;
	}
	.form_block {
		padding-left: 5vw;
		padding-right: 5vw;
	}
}

/*　タブレット大 782px〜1023px
-------------------------------------*/
@media (width >= 781px) and (width <= 1023px) {
	.c-drawer__menu img {
		width: 50%;
	}
	.c-site-branding__title {
		width: 20vw;
	}
	.top-subsidy_inner-block {
		background-size: cover;
	}
	.top-cta_img-box p {
		right: -1rem;
		margin: 0;
	}
	.top-cta_img-box img {
		width: 95%;
	}
	.staff_block {
		width: 95%;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.top-flow_column .wp-block-column .flow-icon_box {
		min-width: 60%;
		max-width: 65%;
	}
	.top-cta2_box {
		background: linear-gradient(rgba(90, 108, 75, 0.75), rgba(90, 108, 75, 0.75)),
			url(/wp-content/uploads/2026/08/consultation_img01.jpg) right center / cover no-repeat;
	}
	.l-footer-widget-area .c-row {
		flex-wrap: wrap !important;
	}
}

/*　タブレット小 〜781px
-------------------------------------*/
@media (width <= 781px) {
	.sme-hidden-sm {
		display: none !important;
    }
	.top-mv_info-column {
		position: absolute;
		z-index: 2;
		top: 5%;
		right: 5%;
		height: 70%;
		padding-top: 0;
		width: 35vw;
	}
	.top-mv_block h2,
	.top-mv_info-column h3 {
		background-color: #fff;
		padding: .8rem .1rem;
		letter-spacing: 0.1em;
	}
	.top-mv_info-box {
		background: rgba(255, 255, 255, 0.25);
		backdrop-filter: blur(15px);
		-webkit-backdrop-filter: blur(15px);
		padding: 1rem;
		width: 100%;
	}
	.smb-btn--full {
		width: 96%;
		margin-left: 2%;
		margin-right: 2%;
	}
	a.top-mv_subsidy-box {
		width: 33vw;
	}
	.top-subsidy_inner-block {
		background: url(/wp-content/uploads/2026/08/consultation_img01.jpg) center / cover no-repeat;
		padding: 3rem 1rem 2rem;
	}
	.top-subsidy_box {
		margin-left: 0 !important;
	}
	.top-cta_info-box {
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.top-cta_info-box .smb-buttons {
		justify-content: center;
	}
	.top-cta_block .wp-block-columns {
		gap: 0;
	}
	.top-cta_img-box p {
		right: 15vw;
		width: 178px;
		margin: 0;
	}
	.top-cta_img-box img {
		width: 30%;
		margin: auto;
	}
	.staff_block {
		width: 95%;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.top-flow_column::before {
		top: 0;
		left: 30%;
		width: 2px;
		height: 100%;
		transform: translateX(-50%);
	}
	.top-flow_column .wp-block-column {
		display: flex;
		align-items: center;
		padding-top: 1rem;
		padding-bottom: 1rem;
	}
	.top-flow_column .wp-block-column p {
		writing-mode: horizontal-tb;
		letter-spacing: 0.1em;
		margin: 0 1rem !important;
	}
	.flow-icon_box {
		width: 10%;
	}
	.top-flow_column .wp-block-column .flow-icon_box {
		margin: 0 1rem !important;
	}
	.top-cta2_box {
		background: linear-gradient(rgba(90, 108, 75, 0.75), rgba(90, 108, 75, 0.75)),
			url(/wp-content/uploads/2026/08/consultation_img01.jpg) center / cover no-repeat;
	}
	.l-footer-widget-area .c-row {
		flex-wrap: wrap !important;
	}
	.page-mv_main-box > figure:first-child > img {
		aspect-ratio: 16 / 7 !important;
	}
	h2.wp-block-post-title {
		writing-mode: horizontal-tb;
		letter-spacing: 0.1em;
		padding-left: 5vw;
	}
	.custom-mv_column {
		margin-left: 5vw !important;
	}
	.concept-mv_img01 {
		top: -40rem;
	}
	.concept-mv_p, .flow-mv_p {
		margin-top: 13rem !important;
	}
	.concept-mv_img03 {
		bottom: -30vh;
	}
	.concept-ingenuity_block h3 {
		writing-mode: horizontal-tb;
		letter-spacing: 0.1em;
		text-align: center;
	}
	.drawing_box:first-child {
		margin-top: 0;
	}
	.drawing_box {
		margin-left: 10% !important;
		margin-right: 10% !important;	
	}
	.about-message_img-column {
		padding-left: 20% !important;
		padding-right: 20% !important;	
	}
	.flow-mv_p, .subsidy-mv_p {
		padding-right: var(--_container-margin-right);
		padding-left: var(--_container-margin-left);
	}
	.flow-menu_column {
		position: relative;
		top: 0;
	}
	.recruit-mv_txt {
		margin-right: 60% !important;
	}
}

/*　スマホ 〜430px
-------------------------------------*/
@media (width <= 430px) {
	th, td {
		width: 100% !important;
		display: block;
	}
	.c-site-branding__title {
		width: 35vw;
	}
	a.top-mv_subsidy-box {
		bottom: 20px;
		right: 20px;
		width: 50vw;
	}
	.top-mv_info-column {
		right: 14%;
	}
	.top-mv_info-box {
		width: 50vw;
	}
	.top-mv_info-box p {
		line-height: 1.2;
	}
	.top-mv_info-column {
		width: auto;
	}
	.work-column .wp-block-latest-posts__featured-image img {
		aspect-ratio: 16 / 9;
	}
	.top-cta_img-box p {
		right: 5vw;
		width: 37vw;
		margin-top: -1.5rem !important;
	}
	.top-cta_img-box img {
		width: 50%;
	}
	.top-service_panel {
		position: relative !important;
	}
	.top-area_block > div {
		padding: 2rem 2rem 60%;
		background-position: bottom -5rem left;
		background-size: 120%;
		margin-bottom: 6rem;
	}
	.top-cta2_box .smb-btn {
		padding-left: 2rem;
		padding-right: 2rem;
	}
	:is(.service01, .service03) p, .concept-comfort_p {
		padding-right: 5%;
	}
	.service02 p {
		padding-left: 5%;
	}
	:is(.service-subsidy_box, .recruit-preferred_block) ul {
		columns: 1;
	}
	h2.page-main_copy {
		top: 50vw;
	}
	.grid_block {
		grid-template-columns: 1fr !important;
		margin-left: 5% !important;
		margin-right: 5% !important;
	}
	.panel-info_column {
		margin-left: 10% !important;
		margin-right: 10% !important;	
	}
	.panel-info_column .c-row>.c-row__col {
		max-width: 100%;
	}
	.reform-mv_img01 {
		margin: -1rem 0 0 !important;
	}
	.reform-mv_p {
		width: 90%;
		max-width: 100%;
		position: relative;
		bottom: 0;
		left: 0;
		margin-top: 25vw;
	}
	.reform-mv_img02 {
		left: auto;
		bottom: -16rem;
		right: 0;
	}
	.reform-case_column .c-row>.c-row__col {
		max-width: 47.5%;
	}
	.flow-main_box .smb-section__body > .wp-block-group {
		flex-direction: column;
		gap: 0;
	}
	.flow-main_box h3 {
		display: flex;
		align-items: center;
		margin-top: 1rem !important;
		line-height: 1.2;
	}
	.flow-main_box h3::before {
		width: 35%;
		margin-right: 0;
		margin-top: -1rem;
	}
	.anchor-link_block .is-layout-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.anchor-link_block .is-layout-grid p + p:nth-child(odd) {
		border: none;
	}
	.anchor-link_block .is-layout-grid p + p:nth-child(6) {
		border-left: 1px solid var(--wp--preset--color--sm-text);
	}
	.grid2_block {
		grid-template-columns: 1fr;
	}
	.recruit-mv_txt {
		margin-right: 40% !important;
	}
	.recruit-area_block p {
		margin-top: 0 !important;
	}
	.recruit-beginner_box h3::before,
	.recruit-beginner_box h3::after {
		content: none;
	}
	:is(.recruit-requirements_block, .recruit-ideal_block) .grid_block {
		margin-left: 15% !important;
		margin-right: 15% !important;
	}
	.smf-form .smf-text-control__control {
		width: 75vw;
	}
	.page-mv_block figure.concept-mv_img01:first-child img {
		aspect-ratio: 1 / 1 !important;
	}
}

/*　画面の高さが700px以下
-------------------------------------*/
@media (max-height: 700px) {
	.top-mv_block,
	.smb-spider-slider__figure-wrapper img {
		height: 45rem;
	}
	.top-mv_info-box {
		bottom: 2rem;
	}
}