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

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

/*共通 */

:root{
	--color_footer_bg:#ffffff!important;
	--color_main:#2c2c2c!important;
	--table-border-bottom:1px solid #2c2c2c!important;
	
}

.l-content{
	margin-bottom:0!important;
	padding-top:180px;
}

/* パンクズリスト非表示 */
div#breadcrumb {
    display: none;
}

/* 固定ページのタイトル(h1)非表示 */
.c-pageTitle__inner {
	display:none!important;
}

.montserrat{
  font-family: 'Montserrat', sans-serif;
  font-style: normal;
}

.noto-sans-jp {
  font-family: 'Noto Sans JP', sans-serif;
  font-style: normal;
}

.playfair-display-<uniquifier> {
  font-family: "Playfair Display", serif;
  font-weight: <weight>;
  font-style: normal;
}

p{
	font-size:17px;
	line-height:1.7;
	letter-spacing:0.12em;
	font-family:'Noto Sans JP', sans-serif;
	font-weight:normal;
	text-align:justify;
	color:#2c2c2c;
}

/* 下層ページmv */
h1.c-pageTitle{
	display:flex;
	flex-direction:column;
	font-family:'Noto Sans JP';
	font-size:50px;
	line-height:1.7;
	letter-spacing:0.2em;
	color:#2c2c2c;
	text-shadow:none;
	text-align:center!important;	
}

.id_152 .l-topTitleArea .l-topTitleArea__body h1.c-pageTitle{
	font-family: "Playfair Display", serif!important;
	font-weight:bold;
	font-style:italic;
}

.c-pageTitle__subTitle{
	font-family:"Noto Sans JP";
	text-shadow:none;
	font-style:normal!important;
	font-weight:normal;
	font-size:16px;
}

h2,.post_content h2{
	font-size:50px;
	line-height:1.7;
	letter-spacing:0.1em;
	font-family:'Montserrat',sans-serif;
	text-transform:uppercase;
	font-weight:bold;
}

.ttl_emph{
	font-size:35px;
	letter-spacing:0.1em;
	font-family:"Noto Sans JP";
	font-weight:bold;
	padding-bottom:50px;
	
}

[class*=is-style-btn_] { 
    --the-btn-color: #2c2c2c;
    --the-btn-color2: #2c2c2c;
} 

[class*=is-style-btn_] a {
	font-size:18px;
	font-weight:300!important;
	padding:17px 25px;
}

[class*=is-style-btn_] a ::after{
	content:"▶︎";
	padding-left:20px;
	font-size:12px;
}
.l-header{
	background:none!important;
	margin-bottom:-72px;
}

.l-header .l-header__inner{
	width:100%;
	max-width:1920px;
}

/* header_nav */
/* li ホバー時に a の背景と span の文字色も変更 */
.c-gnav > li:hover > a {
    background: #2c2c2c !important;
}

.c-gnav > li:hover > a .ttl {
    color: #ffffff !important;
}

/* navのb-storageの動きを停止 */
.c-gnav .sub-menu a:hover .ttl{
	left:0!important;
}

c-gnav > li:hover > a, .c-gnav > .-current > a {
	background:none!important;
}

.c-gnav .sub-menu {
    color: #ffffff;
	background:#2c2c2c!important;
	width:100%!important;
}	

.c-gnav .sub-menu a{
	padding-left:0;
	padding:0 20px 20px 20px;
	text-align:center;
}

.c-gnav .sub-menu a:before{
	display:none;
} 

.section_title::before,
.ceo_message::before,
.b_adv::before{
	content:"";
	width:130px;
	height:130px;
	background:url('https://demo-beaver.site/wp-content/uploads/2026/03/title_deco.svg');
	top:0;
	bottom:0;
	margin:auto 0 auto -30px;
}

.section_title::after{
	font-size:17px!important;
	font-weight:bold;
	line-height:1.7;
	letter-spacing:0.02em;
	vertical-align:middle;	
	margin:auto 0 auto 25px;
}
.works_title::after{
	content:"建築事例";	
}

.company_title::after{
	content:"会社概要";
}

/* top page */
.c-gnav>.menu-item>a .ttl {
    font-size: 16px;
    color: #2c2c2c;
    font-family: 'Noto Suns JP',sans-serif;
	line-height:1.7;
	letter-spacing:0.01em;
}

li.c-iconList__item.-instagram a {
    display: inline-block;
    width: 31px;  /* アイコンのサイズ */
    height: 31px;
    background-image: url('https://demo-beaver.site/wp-content/uploads/2026/03/instagram_icon.svg');
    background-size: contain;
    background-repeat: no-repeat;
    text-indent: -9999px; /* swell insta_icon非表示*/
}

/*swell_insta_icon非表示  */
li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-1043 {
    display: none;
}

.l-topTitleArea{
	height:600px;
}
.catch_copy{
	font-size:79px;
	line-height:1.7;
	letter-spacing:0.02em;
	writing-mode:vertical-rl;
	font-weight:bold;
}

.catch_copy span{
	font-size:70px;
}

.hero_inner{
	position: relative;
    z-index: 1;
}

.hero_inner .wp-block-columns{
	padding-top:150px;
	padding-bottom:190px;
}

.hero_innner .swell-block-fullWide__inner{
	padding-right:0 !important;
	padding-left:0;
}
.right_column {
  flex: 1; /* 右カラムの幅 */
  display: flex;
  justify-content: center; /* 横中央 */
  align-items: center;     /* 縦中央 */
}

.hero_bg {
  position: relative;
}

/* heroとconcept_ctaのmarginをなくすため */
.post_content>*{
	margin-bottom:0;
} 

/* 流れるテキスト */
.marquee {
	overflow:hidden;
	position:absolute;
	bottom:10%;
}

.marquee_wrapper{
	display:flex;
	animation:marquee-scroll 20s linear infinite;
}

.marquee span {
  flex-shrink:0;
  white-space:nowrap;  /* 改行禁止 */	
  letter-spacing: 0.1em;
  font-weight:300;	
}

@keyframes marquee-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ビーバーの家づくり */
.concept_cta{
	position:relative;
	padding:140px 0!important;
}

/* ビーバーの家づくり ぼかし*/
.concept_cta::before{
	display:block;
	height:150px!important;
	top:auto!important;
	bottom:-22px;
	background-position:bottom;
	background:url(http://demo-beaver.site/wp-content/uploads/2026/03/268ab2316f935e8753f8a6b4350fd626.png)repeat-x;
		
}

.concept_title{
	font-size:50px;
	font-weight:bold;
	line-height:1.7;
	letter-spacing:0.02em;
}

.concept_column{
	max-width:1200px;
	margin:70px auto 0!important;
}


.concept_img img{
	max-width:600px;
}

.concept_text{
	margin-bottom:30px;
}

/* B-storage */
.b_adv_txt{
	margin-bottom:200px;
}

.b_adv_name{
	display:flex;
	font-size:20px;
	letter-spacing:0.04em;
	line-height:2.5;
	margin-bottom:0!important;
	margin-top:50px!important;
}

.b_adv_name::before{
	display:block;
	content:"";
	background:url(https://demo-beaver.site/wp-content/uploads/2026/04/B-storage.svg);
	background-repeat:no-repeat;
	background-position:bottom;
	width:165px;
	height:42px;
	margin-right:10px;	
}

.b_adv_img .wp-block-image img {
	max-width:850px!important;
}

.b_adv_inner{
	max-width:1600px!important;
	margin-right:0!important;
	margin-left:auto!important;
	gap:65px!important;
}

/* openhouse */

.txt_animation{
	display:flex;
	overflow:hidden;
    -webkit-text-stroke: 1px #2c2c2c; 
    max-width:1600px;	
    position: static;
	margin:0 auto;
	transform: translateY(-50%);
}

.txt_animation span{
	display:block;
	transform: translate(0, 105%);
	transition:transform cubic-bezier(0.4, 0, 1, 1) 0.5s;
	margin-right:15px;
}

.txt_animation span:nth-child(4){
	margin-right:40px;
}

.txt_animation span.appear{
	transform:translate(0, 0); 	
}

/* フルワイドにposition:relativeはついている */
.openhouse_bg{
	position:relative;
	margin:210px 0 170px;
}

.openhouse_left p{
	color:#ffffff;
}
.openhouse_column{
	max-width:1600px;
	margin:0 auto;
	padding:40px 0 160px;
	gap:105px!important;
}

.openhouse_title{
	display:inline-block;
	font-size:40px;
	font-weight:bold;
	letter-spacing:0.05em;
	border:solid 1px #ffffff;
	padding:5px 10px;
	margin-bottom:30px;	
}

.openhouse_day{
	font-size:70px;
	letter-spacing:0.02em;
	font-weight:bold;
	margin-bottom:15px;
}

.openhouse_day::after{
	content:"(日)";
	font-size:50px;
	letter-spacing:0.02em;		
}

.openhouse_txt{
	margin-bottom:40px;
	width:80%;
}

.openhouse_place,.openhouse_time{
	font-size:30px;
	font-weight:bold;
	letter-spacing:0.02em;
}

.openhouse_place{
	margin-bottom:15px;
}

.openhouse_time{
	margin-bottom:30px;
}

.openhouse_place::after{
	content:"（ご住所は予約後にお知らせします。）";
	font-size:20px;
	letter-spacing:0.02em;
	font-weight:300;	
}

.works_inner{
	max-width:1550px;
	margin-left:auto;
	margin-right:0!important;
}
.works_slider{
	margin:85px 0;
}


.catch_txt{
	font-size:35px;
	letter-spacing:0.02em;
	font-weight:bold;
	text-align:justify;
}

.works_txt{
	width:120%;	
}

.company_wrapper{
	margin-top:200px!important;
}

.company_column{
	max-width:1600px;
}

.company_right{
	display:flex;
	width:40%;
}

.companyu_left img{
	width:60%;
}

.company_group{
	max-width:60%;
}

.company_title{
	margin-bottom:10px!important;
}
.company_txt{
	margin-bottom:25px!important;
}

.beaver_img{
	width:224px;
	margin-left:30px;
}

/* contact-top */

.contact_wrapper{
	padding:80px auto;
	margin-top:180px!important;
}

.contact_inner{
	max-width:1200px!important;
	width:100%;
	margin:0 auto;
	padding:80px 195px!important;
}

.alignfull>.wp-block-cover__inner-container>*, .alignfull>.wp-block-group__inner-container>*, .swell-block-fullWide__inner>*{
	margin-bottom:0!important;
}

.contact_txt{
	margin-bottom:30px!important;
}

.contact_column{
	gap:0!important;
}

.contact_left{
	text-align:center;
}

.contact_btn{
	display:flex;
	align-items:center;
	justify-content:space-between;
}

.contact_btn::before{
	content:"";
	display:block;
	border:1px solid #2c2c2c;
	width:1px;
	height:95px;	
}

.contact_btn a{
	padding:17px 40px!important;
}

.contact_tel{
	display:inline-flex;
	align-items:center;
	font-size:24px;
	font-weight:bold;
	letter-spacing:0.2em;
}

.contact_tel::before{
	content:"";
	display:block;
	width:35px;
	height:35px;
    margin-right:10px;
	background:url(https://demo-beaver.site/wp-content/uploads/2026/03/mynaui_telephone.svg)
}

.contact_hours{
	font-size:15px;
	letter-spacing:0.12em;
}

/* フッターナビの縦線を削除 */
.l-fotter{
	max-width:100%!important;
}

/* フッターナビの縦線を削除 */
.l-footer__nav li:first-child a,
.l-footer__nav a {
	border-left: 0;
	border-right: 0;
}

.footer_logo img{
	display:block;
	margin:0 auto 30px;
	max-width:227px;
	
}

.footer_address p {
	font-size:14px;
	letter-spacing:0.05em;
	text-align:center;
}

.l-container .copyright{
	width:100vw!important;
	color:#fff;
	padding:30px ;
	background:#2c2c2c;
	margin-left: calc(50% - 50vw);
}

.l-footer__nav{
	padding-bottom:80px;
}

/* 消し込み */
.w-footer__box{
	padding-top:0;
}

/* コピーライトのpadding消し込み */
.l-footer__foot, .l-footer__widgetArea {
	padding-bottom:0!important;
}


/*****ビーバーの家づくり*****/

.about_txt{
	padding-bottom:120px;
}

.about_concept_ttl{
	font-size:30px;
	line-height:1.7;
	letter-spacing:0.02em;
	font-weight:bold;
	text-align:center;
}

.about_concept_ttl::before{
	background:url(https://demo-beaver.site/wp-content/uploads/2026/02/We-Build-to-Hear-Your-Thanks.svg);
	background-size: cover; 
	background-repeat:no-repeat;
	background-position:center;
	width:100%;	
}

.post_content .wp-block-cover__inner-container .concept_ttl{
	text-align:center;
	margin-top:40px!important;
}

.wp-block-cover .wp-block-cover__image-background{
	object-fit:contain!important;
}

/*****会社概要*****/
.ceo_inner .wp-block-columns{
	gap:80px!important;
}
.message_from_ceo{
	max-width:1600px!important;
	margin-left:auto;
	margin-right:0!important;
}

h3.ceo_message,
h3.company_pr,
h3.b_adv{
	font-size:40px;
	letter-spacing:0.02em;
}

.ceo_txt{
	margin-top:40px;
	margin-bottom:20px;
}

.ceo_name{
	font-size:24px;
	letter-spacing:0.01em;
	font-weight:bold;
}

.ceo_name::before{
	content:"代表取締役";
	font-size:20px;
	font-weight:normal;
	padding-right:15px;
}

.staff_ttl_deco{
	max-width:800px;
	margin:150px auto 60px;
}

.post_content .wp-block-cover__inner-container .staff_ttl{
	margin-top:40px!important;
	
}
.staff_ttl{
	text-align:center;
}
.staff_wrapper{
	margin-bottom:180px;
}

.staff_wrapper .swell-block-columns__inner{
	row-gap:100px!important;
}

.member_position{
	font-size:13px;
	letter-spacing:0.02em;
	margin-bottom:5px;
}

.staff_name{
	font-size:20px;
	letter-spacing:0.01em;
	font-weight:bold;
	margin-bottom:10px;
}

.company_pr{
	margin:180px auto 90px!important;
}

/* デフォルトの枠線を非表示 */
.wp-block-table{
	--table-border:none!important;	
	max-width:800px;
	margin:0 auto 180px;
}	
	
.wp-block-table td {
    border-bottom: var(--table-border-bottom);
    padding:40px 110px 40px 20px;	
}


/*****ビーバーだより*****/
/* ウィジェットのフッター直前 */
.blog_contact{
	width:100%!important;
	max-width:1920px!important;
	margin:0 auto;
}

/* contactを中央にするために、既存のコードを上書き */
.-sidebar-on .swell-block-fullWide__inner .alignfull {
     margin:0 auto!important;
     width:100%!important;
    }

.p-profileBox,
.wp-block-search,
#block-6 .wp-block-group{
	border:1px solid #2c2c2c!important;
	
} 

#block-6 .wp-block-group{
	padding-top:35px;
	padding-bottom:35px;
}

.p-articleThumb__img {
    width: 500px;
	border:1px solid #d9d9d9!important;
}

.p-postList__thumb.c-postThumb,
.p-pickupBanners__item .c-bannerLink, .p-postList__thumb {
	border:1px solid #d9d9d9!important;
}

.category{
	font-size:20px!important;
	text-transform:capitalize!important;
	text-align:center;
}

.c-listMenu a {
    border-bottom: 1px solid #d9d9d9!important;
    width: 80%;
    margin: 0 auto;
}

h2.p-postList__title {
	font-size:17px;
	font-family:'Noto Sans JP', sans-serif;
	font-weight:normal!important;
}

time.c-postTimes__posted.icon-posted{
	font-family:'Noto Sans JP',sans-serif;
	color:#7d7777;
}

.p-profileBox__text,
.p-profileBox__name,
.cat-item a{
	font-family:'Noto Sans JP',sans-serif;
	font-weight:normal;
}
