/*フォント適用（デフォルトでは見出し系とグローバルナビ（サブメニュー除く）に明朝、その他にゴシックを当ててます）*/
body{
	font-family: "FOT-セザンヌ ProN M";
}
h1 , h2 , h3 , h4 , h5 , h6 , b , strong , .smb-section__title ,  .p-global-nav a:not(.p-global-nav .c-navbar__submenu a){
	font-family: "FOT-セザンヌ Pro DB";
}
/*ヘッダーメニュー余白なくしてベタ付け*/
header.l-header .p-global-nav .c-navbar__item a:not(header.l-header .c-navbar__submenu a){
	padding-top:0;
	padding-bottom: 0;
	/*color:#fff;*/
}
header.l-header .p-global-nav .c-navbar__item:last-child a{
	/*padding-right: 0;*/
}

@media screen and (min-width: 1024px){
	header.l-header .l-header__content .c-fluid-container{
		/*padding-right: 0;*/
	}
}

/*ページヘッダーの高さ調整*/
@media screen and (min-width: 1024px){
	.c-page-header[data-has-image=true]{
		max-height:250px;
	}
}
@media screen and (max-width: 1023px){
	.c-page-header[data-has-image=true]{
		max-height:150px;
	}
}
/*ハンバーガーボタン調整用*/
.c-hamburger-btn .c-hamburger-btn__bar{
	height:2px;
	background-color:#ccc !important;
}
.c-hamburger-btn__bar:nth-of-type(2){
	height:2.5px;
}
.c-hamburger-btn[aria-expanded=true]>.c-hamburger-btn__bars>.c-hamburger-btn__bar:nth-of-type(2){
	background-color:initial !important;
}
.c-hamburger-btn__label{
	color:#ccc;
}

/*グローバルナビのフォントサイズ可変化　 ※狭めのPC幅でメニューが詰まる件の対策になります。ブレイクポイントやテキストサイズはサイトに合わせて変更してください。
可変化したタイミングでグローバルナビのデフォルトのフォントサイズ（アプデで変わるかも）を超えないように設定してます。*/
@media screen and (min-width: 1024px) and (max-width: 1200px){
	header.l-header .p-global-nav .c-navbar__item a:not(header.l-header .c-navbar__submenu a) {
		font-size: min(1.1vw, 14.2222px);
	}
}

/*フッターメニュー用デフォルトスタイル*/
@media screen and (min-width: 1024px){
	footer.l-footer .widget_nav_menu ul{
		display: grid;
		grid-template-columns: 1fr 1fr;
		row-gap: 10px;
	}
	footer.l-footer .widget_nav_menu li{
		margin-top: 0;
	}
}
/*フッターsns用デフォルトスタイル*/
footer.l-footer .f_sns{
	max-width: 350px;
	margin-left:0;
}
/*フッターサイド余白消し*/
footer.l-footer .c-fluid-container{
	padding-left:0;
	padding-right:0;
}

/*フッター上下パディング消し*/
footer.l-footer .l-footer-widget-area{
	padding-top:0;
	padding-bottom:0;
}

/*フッターセクションごとにできるマージンボトム消し*/
footer.l-footer .l-footer-widget-area__item.c-row__col{
	margin-bottom:0;
}


/*コピーライト用デフォルトスタイル*/
footer.l-footer .c-copyright{
	background-color:#111;
	color:#4a4a4a;
	margin-top: 47px;
}

/*トップコンテンツ上下余白消し*/
.home .l-contents .c-section{
	padding-top:0;
	padding-bottom:0;
}
/*コンテンツの上下余白消し（投稿と投稿の一覧ページを除く）*/
.l-contents .l-contents__inner:not(.archive .l-contents .l-contents__inner , .single .l-contents .l-contents__inner){
	padding-top: 0;
	padding-bottom: 0;
}
/*投稿のコメント機能トラックバック機能削除*/
.p-comments , .p-trackbacks{
	display:none;
}

/*スマホ時の見出しサイズ統一*/
@media screen and (max-width: 639px){
	.smb-section__title , h2.wp-block-heading , h3.wp-block-heading , .smb-media-text__title{
		font-size:23px;
	}
}


/*共通系*/
@media screen and (max-width: 1023px){
	.sp_40Width{
		max-width:40%;
	}
	.sp_60WidthLeft{
		max-width:60%;
		margin-left:0 !important;
	}
	.sp_60Width{
		max-width:60%;
	}
	.sp_80Width{
		max-width:80%;
	}
	.sp_80WidthLeft{
		max-width:80%;
		margin-left:0 !important;
	}
	.sp_center_img img{
		margin:0 auto !important;
	}
	.sp_textLeft{
		text-align:left;
	}
}
@media screen and (min-width: 640px) and (max-width: 1023px){
	.tb_wrap{
		flex-direction:column;
	}
}
/*ヘッダー*/
.l-header{
	/*background-color:#000;*/
}
.l-header{
	padding-top: 40px;
	padding-bottom:40px;
}
.p-drop-nav{
	background-color:#fff;
	padding-top: 20px;
    padding-bottom: 20px;
}
.c-hamburger-btn__label{
	display:none;
}
.c-hamburger-btn .c-hamburger-btn__bar{
	background-color:#fff;
	height:1px;
}
@media screen and (min-width: 1024px){
	.home .l-header{
		height:150px;
	}
	.l-header__content , .l-1row-header , .l-header .c-fluid-container , .l-header .c-fluid-container  > .c-row{
		height:100%;
	}
	.l-header__content .c-fluid-container > .c-row > .c-row__col:nth-child(2){
		/*align-self:start;*/
	}
	.c-site-branding__title .custom-logo{
		min-width:190px;
	}
	.l-header__content .c-row >.c-row__col:first-child{
		padding-left: 5%;
		flex-basis:35%;
	}
	.l-header__content .c-row >.c-row__col:nth-child(2){
		flex-basis:65%;
	}
	.l-header__content .p-global-nav > .c-navbar{
		justify-content: end;
		gap:15px;
	}
	.h-contents-navs{
		display: flex;
		gap: 25px;
	}
	.l-header__content .c-fluid-container > .c-row > .c-row__col:has(.h-contents-navs){
		align-self:baseline;
	}
	.l-header__content .c-fluid-container > .c-row > .c-row__col:has(.h-contents-navs) .l-1row-header__content{
		padding-top:0 !important;
	}
	.l-header__content .c-fluid-container > .c-row > .c-row__col:has(.p-global-nav){
		margin-top:10px;
	}
	.h-nav-icon a{
		display:inline-block;
		width:100%;
		height:100%;
	}
	.h-nav-icon img{
		min-width:50px;
		scale:1.2;
	}
}
@media screen and (max-width: 1023px){
	.l-header{
		padding-top:15px;
		padding-bottom:15px;
	}
	.c-site-branding__title .custom-logo{
		width:29vw !important;
		max-width:120px;
	}
}
/*フッター*/
.fo_cta_btns .smb-btn{
	border-width:1.5px !important;
	padding-top:17px !important;
	padding-bottom:17px !important;
}
.footer_list{
	list-style:none;
	padding-left:0;
}
.footer_list li a , .footer_link_text a , .footer_add a{
	text-decoration:none;
	color:#fff;
}
.footer_list li a:hover , .footer_link_text a:hover , .footer_add a:hover{
	text-decoration:underline;
}
.footer_link_text a , .footer_add a{
	color:#fff;
}
.footer-copy{
	text-align:left;
}
@media screen and (max-width: 1023px){
	.fo_cta_btns .wp-block-snow-monkey-blocks-btn{
		flex-basis:100%;
	}
	.fo_cta_btns .smb-btn{
		width:100%;
	}
	.c-copyright{
		margin-top:29px !important;
		color:#989898 !important;
		background-color:#000 !important;
	}
	
}
@media screen and (min-width: 1024px){
	.c-copyright{
		display:none;
	}
}

/*トップ*/
.staff-card__name{
	font-size:19px;
}
.staff-card__position{
	margin-bottom:10px;
}
.top_staff .spider__arrow{
	border: 1px solid #fff;
    border-radius: 100%;
}
.top_news .c-entry-summary__term{
	display:none;
}
.top_news .c-entry-summary__meta{
	margin-top:8px;
}
.top_staff .c-entry-summary__header{
	display:none;
}
.member_items .c-entries-carousel__item > a{
	pointer-events: none;
	cursor: default;
}
.top_main_slider{
	background-color:#000;
}

@media screen and (min-width: 1024px){
	.about_section .c-container , .about_section .smb-section__inner{
		position:initial !important;
	}
	.about_Image{
		position: absolute;
		right: 0;
		top: 0;
		width: 35%;
		margin: 0 !important;
	}
	.what-we-do_section {
	  position: relative;
	}

	.what-we-do_section::before {
	  content: "";
	  position: absolute;
	  top: 0;
	  left: 50%;
	  transform: translateX(-50%);

	  width: 100%;
	  max-width: 990px; /* ← ここを調整すればワイド感を制御できる */
	  height: 100%;

	  background: #000;
	  z-index: 1;
	}
	.what-we-do_section .smb-section__inner{
		z-index:2;
	}
	.what-we-do_section::after{
		content: "";
	  position: absolute;
	  top: 0;
	  left: 0;

	  width: 50%;
	  height: 100%;

	  background: #000;
	  z-index: 1;
	}
	.what-we-do_right{
		flex-basis:max-content !important;
	}
	.what-we-do_columns{
		justify-content:space-between;
	}
	.top_staff .c-entries-carousel .spider__slide{
		max-width:calc(1 / 4 * 100% - var(--entries--carousel--gap) / 1.5);
	}
	.top_staff .c-entry-summary__figure:before{
		padding-top:100% !important;
	}
	.top_data_items{
		max-width:85%;
	}
	.top_interview_left{
		align-content:center;
		padding-left:80px;
	}
	.spider__arrow[data-direction=prev]{
		left:-80px;
	}
	.spider__arrow[data-direction=next]{
		right:-80px;
	}
	.top_news .c-entries{
		--entries--item-width: 25%;
	}
	.top_news .c-entry-summary__figure::before{
		padding-top:100%;
	}
	.top_photo_columns .wp-block-cover{
		aspect-ratio:96/61;
	}

}
@media screen and (max-width: 1023px){
	.view_more_btn{
		width:100% !important;
		text-align:center;
	}
	.view_more_btn img{
		max-width:60% !important;
		margin:0 auto !important;
	}
	.about_section{
		padding-top:0 !important;
	}
	.about_section .c-container{
		padding-left:0 !important;
		padding-right:0 !important;
	}
	.about_box{
		padding:55px 20px !important;
	}
	.top_photo_columns{
		gap:0 !important;
	}
	.top_photo_columns .wp-block-column{
		margin-top:0 !important;
	}
	.photo_cover img{
		object-position:85% 50%;
	}
	.top_staff .spider__arrow{
		top:25%;
	}
	.top_staff .c-entry-summary__figure:before{
		padding-top:100% !important;
	}
	.spider__arrow[data-direction=prev]{
		left:-10px;
	}
	.spider__arrow[data-direction=next]{
		right:-10px;
	}
	.top_data_image img{
		aspect-ratio: 480 / 261;
		object-fit: cover;
	}
	.top_interview_sec{
		padding-top:0 !important;
	}
	.news_title{
		max-width:34%;
	}
	.top_under_image{
		
	}
}
@media screen and (min-width: 640px) and (max-width: 1023px){
	.what-we-do_section .view_more_btn{
		max-width:400px;
	}
}


/*エントランストップ*/
.entrance_wrapper{
	background-color:#000;
	color:#fff;
	display:flex;
}
.entrance_bg{
	position:absolute;
	z-index:0;
}
.entrance_bg img{
	width:100%;
}

.entrance_bg::after{
	content:"";
	position:absolute;
	inset:0;
	background:rgba(0,0,0,0.5);
}
.entrance_item{
	min-width:0;
	position:relative;
	overflow:hidden;
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	text-align:center;
	transition:flex 0.4s ease;
	left:0 !important;
}
.entrance_item a{
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	z-index:2;
}
.entrance_item_text{
	margin-top:15px;
}
.entrance_item .logo_Img{
	width: auto;
    align-content: center;
}
.logo_Img,
.entrance_item_text{
	position:relative;
	z-index:1;
}
@media screen and (min-width: 1024px){
	.entrance_bg{
		width:50vw;
	}
	.entrance_item{
		flex:1;
		height:calc(100vh - 150px);
	}
	.entrance_item:hover{
		flex:2;
	}
	.entrance_item .logo_Img{
		height: 85px;
	}
	.entrance_item_kurogo .entrance_bg{
		bottom:-100px;
	}
}
@media screen and (max-width: 1023px){
	.entrance_wrapper{
		flex-direction:column;
	}
	.entrance_item{
		flex:1;
		aspect-ratio: 2 / 1;
		left:0 !important;
		background-size: cover;
        background-position: 50% 70%;
	}
	.logo_Img img{
		max-width:70%;
	}
	.entrance_item_text{
		margin-top:10px  !important;
		font-size:12px !important;
	}
	.entrance_item_kurogo .entrance_bg{
		bottom:-70px;
	}
	.entrance_bg{
		display:none;
	}
	.entrance_item_corporation{
		display:none;
	}
}
/* HERO BLUR+HOVER (2026-08-25) PCのみぼかし→hover解除。SPは.entrance_bg非表示で対象外=くっきり */
@media screen and (min-width:1024px){
	.entrance_bg img{
		filter: blur(2px);
		transform: scale(1.06);
		transition: filter .55s ease, transform .55s ease;
		will-change: filter, transform;
	}
	.entrance_item:hover .entrance_bg img{
		filter: blur(0);
		transform: scale(1);
	}
	.entrance_bg::after{
		transition: background .55s ease;
	}
	.entrance_item:hover .entrance_bg::after{
		background: rgba(0,0,0,0.34);
	}
}
/* END HERO BLUR+HOVER */

/* HERO FIT (2026-08-25) 背景を縦横比に依存せずカラム全面にフィット（横長画像でも上下の隙間なし） */
@media screen and (min-width:1024px){
	.entrance_bg{
		top:0; left:0; width:100%; height:100%;
	}
	.entrance_item_kurogo .entrance_bg{
		top:0; bottom:0;
	}
	.entrance_bg img{
		width:100%; height:100%; object-fit:cover;
	}
}
/* END HERO FIT */

/* KUROGOロゴのサイズ調整 (2026-08-26) 左右(279/247px)に対し中央が201pxで小さかったため拡大 */
@media screen and (min-width:1024px){
	.entrance_item_kurogo .logo_Img img{
		width: 280px;
		height: auto;
	}
}
